FASTSUITE 数字孪生工站实践
===
## 课前准备
在```教学资源```文件夹中有本次课程中需要使用到的教程资源
### 课程目标
- 学习使用FASTSUITE软件基础功能,完成:
- 布局搭建
- 离线编程
- 程序下载与UR程序上传
- 体验建立数字孪生工站
## 一、软件使用介绍

- 软件的界面共分为了十一个部分,课程中需要使用的功能与模块会进行逐一讲解。
- 电脑桌面上Training文件夹中包含有课程所需的模型、文件等
- E2Resource文件夹中包含有教程所需的已经建立好的资源
- Model文件夹中包含教程所需的模型文件
- Result文件夹中包含最终创建的场景结果,供离线编程一节使用
### 鼠标
- 在软件内使用鼠标左键点选或拖动物体,右键打开二级菜单,二级菜单的内容会随着不同的功能区而改变。具体的使用会在使用中逐一讲解。
- 按住滚轮中键,可以移动视角
-
- 旋转滚轮中键,可以缩放视角
-
- 按住滚轮中键与鼠标右键,可以旋转视角
-
## 二、资源创建
**在课程中由于时间原因,资源的创建仅作展示,会提供最后制作完成的文件,如果有疑问或赶不上课堂制作速度可以在课后进行解答或继续尝试实作**
**如果在操作过程中软件有卡顿,请不要连续点击鼠标,Windows会错误将软件识别为卡死并提示退出,此时更容易闪退。**
- 首先,打开下载的压缩包中Resource文件夹,其中包含的为创建本场景需要的模型文件
### 周边资源
- 周边资源的目的是尽可能的还原现场设备,没有运动轴,不需要定义加工轨迹或加工点。
- 在软件中将界面切换到资源创建:
- 
1. Item桌子
- 导入Model文件夹的Table.stp文件
- 选择左侧菜单栏的第二项,此时软件界面会出现一个可操作的坐标系,鼠标放在坐标系中心点击右键,选择点选功能,点击点取端点,此时将鼠标放置在其中一个桌腿边线之上,会看到在桌腿的末端出现一个绿色点,单击左键可以将坐标系转换到桌腿的位置
- 再次右键点击坐标系的中心,选择右下角的其他,选择看起来像桌子图标的附属品,完成资源的坐标系创建。此时会将资源的子类机械接口,即粘贴点在同一个位置创建。粘贴点的作用会在下一节中解释。
- 此时创建的资源具有一个基础坐标系,在软件中需要将和它相关的几何特征添加到资源之中。选择左侧菜单栏的第三项,此时可以左键选择几何物体,按住Ctrl可以多选,或者使用框选来一次选择多个。完成选择之后在几何体上点击鼠标右键,点击左上角的别针图案,最后点击刚才创建的资源坐标系。
- 最后,点击右方工具栏第一个,更改资源名称,并保存文件。
1. 资源间的装配
- 导入Model文件夹的Trolly.stp文件
- 与上一节中相同,创建推车的资源,或者跳过创建的步骤,直接在E2Resource文件夹中导入一个Trolly.cenres文件
- - 选择软件中的布局规划工作台:
- 
- 左键点击一次桌子模型,其会变为高亮,并显示一个坐标系,中心点为绿色,此时代表可以对他进行移动
- 按照视频所示的方式将推车和桌子放置在同一个高度的装配位置
- 确定位置之后,切换至资源创建工作台,并选择推车资源。在默认界面中此时桌子会变成半透明状态,无法进行交互,并且无法点选其坐标。
- 打开右下角的过滤器,将右上角的活跃化要素选项打开,并确保接口的图标亮起,就可以重新看到桌子的状态,包括其坐标系上的粘贴点。
- 选择工具栏左侧的创建接口按键,在空白处点击右键,并选择菜单中心的坐标系按钮,此时可以呼出操作坐标系,并在桌子的粘贴点处点击左键,可以将坐标系移动至粘贴点处。
- 在坐标系中心点击右键,选择创建新接口,创建新的父类接口。此时地板上会创建一个父类接口,可以与桌子的子类接口互动。
- 切换到布局规划工作台后,拖动桌子,会发现它和之间有一根黄色的连线,当出现黄色的连线时松开鼠标左键,资源会自动粘贴到父类连接点上。
- 所有资源的粘贴点创建方式均类似,课程中不再表述
### 工具
- 工具是编程需要的重要资源,在机器人末端没有安装执行器时,会将机器人自身的末端作为工具坐标系。在机器人资源创建之初就已经做好了粘贴点,所以工具的安装会自动延展机器人的工具坐标系,在软件中无需重复进行工具的定义。
-
- 首先导入工具的资源,由于本场景中工具与机器人间存在一个连接器,工具基坐标的位置并不需要特别注意,可以使用默认的坐标系位置创建工具资源。在创建资源的界面中选择外部设备-工具。
- 首先将工具的基础几何体关联到基坐标中,由于工具拥有两个运动副,需要进行运动的部分暂时不需要进行几何关联。(选中的多余部分可以按住Ctrl再点鼠标左键取消选择)
- 点击左侧工具栏第二个按键,将坐标系通过点选指令,点取圆心,看清绿色点的位置,将坐标系放置在几何体的中心。
- 此时右键点击工具需要进行平动的坐标方向,选择左下角的平动关节,此时会创建一个平动的关节轴。
- 切换到外形关联指令,为了防止错误选择已经关联外形的几何体,可以双击已经完成创建的几何体,此时会整体选择前一步中创建的几何特征,右键点击几何体,选择次级菜单中的隐藏指令,将其隐藏
- 框选平动运动的几何特征,并取消选择需要旋转运动的几何体,在选中的几何体上点击右键,点击几何体关联,并点击上一步中创建的平动关节轴。
- 此时在空白处点击鼠标右键,点击切换隐藏,可以看到隐藏起来的几何特征。再次双击,选择取消隐藏,再点击空白处选择取消隐藏,可以将所有几何体带回显示空间。
- 在完成平动轴创建之后,点击右侧菜单栏第二项,可以调整此时平动轴的位置,拖动位置信息可以观察其控制的几何体位置。
- 重新切换到创建资源选项,隐藏不需要的几何体,在螺丝刀的中心创建一个旋转坐标系(步骤如上文所述,只是平动轴改为旋转轴)
- 关联最后的几何体,此时螺丝刀的中心可以根据平动轴运动,并可以独立运动,调整其运动范围从而完成创建与工具行为相同的资源。
### 工件
**本次课程中使用的为以加工点为基准的工件,软件除了可以进行点的定义之外更擅长进行加工路径的创建,即线或面,如果您对此功能感兴趣请在课程后进行咨询或继续尝试实作。**
-
- 首先,导入model/Workpiece文件夹中的文件Workpiece.STEP
- 加工点的创建方式有两种,第一种为手动创建,第二种为导入。
- 首先尝试手动创建,按照与创建资源相同的步骤,点击创建工件后,右键坐标系的中心点,点击加号创建一个工件,关联其坐标系,并选择第四项进行路径创建。
- 在工具栏中选择第一个选项,在空白处呼出坐标系,将坐标系通过点取指令放置在圆心的位置。点击坐标系的中心点,点击加号,在此处创建一个加工点。
- 坐标系的具体位置信息可以通过鼠标左键点选坐标系中心跳出的窗口查看,可以通过修改数字来调整位置、旋转角度等。
- 一个以加工点为基准的工件通常具有非常多的点,如果手动进行创建效率非常低下。所以软件可以有第二种方式导入加工点。
- 首先重新打开一个界面,导入工件的模型,但不要创建工件。
- 在上方文件栏中选择导入,选择workpiece文件夹中的xml文件,点击确定。此时软件会生成以xml文件中的点位为基准的一个工件,但是工件并没有几何模型,仅有加工点点位。
- 选择导入的工件的基准坐标系,如果无法进行点选可以框选,在选中后左侧的工具栏会显示为可操作。此时将工件的几何模型与其坐标系相关联,就可以将几何特征和加工点的相对位置确定,完成工件的创建。
在了解资源创建之后,我们将进行布局的创建和离线编程,最终进行程序的下载上传和数字孪生的建立。
## 三、创建布局
### 导入文件
**如果在操作过程中软件有卡顿,请不要连续点击鼠标,Windows会错误将软件识别为卡死并提示退出,此时更容易闪退。**
-
- FASTSUITE软件拥有自己的组件库管理功能,也可以直接拖动文件至软件界面中导入。
- 首先打开软件,将界面切换至布局规划工作台:
- 
- 将资源导入软件界面中,按照视频所示顺序,将资源一一导入并根据连接点创建场景,粘贴点在资源创建之时已经建立完成,最终结果为可编程的布局。
- 最终进行编程的场景仍然需要对布局进行部分信号联通与修正,由于时间问题不做展示。最终可以编程的场景已经放在result文件夹中。
## 四、离线编程
-
### 编程
- 重新打开在result文件夹中保存的cendoc文件,并在连接器设定中将VRC选择为软件内置的模拟器。
- 切换到离线编程工作台,控制器的默认配置为UR机器人的VRC连接器,需要将其软件内置的仿真。注意这一步,如果在切换内置仿真之前点击了开始仿真按钮,软件将卡死在对VRC连接器的寻址程序中。
- 在离线编程时,首先需要对机器人进行工艺的定义。选择左侧工具栏第二个按键,右键点击机器人几何体(注意,点击工具或资源无法进行定义),在次级菜单中选择工艺包,拧紧工艺。
- 由于模拟仿真的特性,机器人可以在任意的初始位置开始其仿真运动,机器人的初始位置和第一个运动点就显得尤为重要,并且可以在多种情境下进行模拟。例如需要知道机器人在不同程序之间进行切换时的轨迹是否存在碰撞关系,就可以设置不同的程序初始状态进行仿真,从而了解多个程序之间机器人运行状态。
- 现在,离线编程的前期准备已经完成。点击左侧工具栏中的路径编程按键,开始对路径点进行编辑。在对多个点位进行编辑的时候,可以通过拖拉进行多个点位的编程,也可以按住Ctrl键来进行逐一选择,可以自我发挥机器人需要编程的图案。
### 标定
系统误差,随机误差,相差,误差的存在是加工过程中无法避免的环节,而我们创建的布局并不能保证与现场的情况相符。在本课程中使用的工件拥有一个12x30,孔径为4mm的阵列,因为没有外部传感器比如激光、触碰感应的辅助,定位精度需要依靠机器人的精度和工件摆放准确度。一般在生产中,机器人的编程大部分由手动示教完成,不需要考虑工件摆放位置的因素;而在离线编程中,我们需要将虚拟环境中的布局和现场的布置对齐,这个过程我们叫做标定。标定一共有三个步骤:
1. 校准机器人TCP点来缩小测量发生的相差;
2. 固定现场工件和机器人,调整虚拟环境中工件相对位置来缩小随机误差;
3. 使用加工需要的机器人来进行相对位置校准来缩小系统误差。
#### 校准机器人TCP
大部分的机器人制造商在控制器中集成了TCP的设定,一般的做法是使用机器人工具末端和某个固定的尖点对齐,通过多个机器人角度的逼近来拟合TCP的具体坐标。为得到TCP位置的平移和旋转的转移矩阵,需要至少三个不同的逼近点来进行转移矩阵的运算。UR机器人的控制器提供了四个点的校准方式,可以进一步的消除误差,而部分机器人也提供更多点位的校准。在课程中四个点位信息已经可以提供足够精确的机器人信息。
#### 工件相对位置调整
与TCP的标定相同,工件的标定也需要基于三个点位的坐标,不同的是三个点位坐标的标定并不是同一个,而是在现场选择三个工件上的点,再选择这三个点对应模型上的点。三点标定的原理可以简单解释为:由于误差一定存在,每个现场测量点位的数值和虚拟环境中工件点位的数值一定存在或多或少的偏差,在现场点和模型点之间就可以进行一个连线。第一个现场点位和模型点位之间的连线可以确定一维的偏移,第二个现场点位和模型点位之间的连线可以与一维偏移确定一个面,第三个点位和模型之间的连线与之配合,可以确定工件在三维空间中的位置变化。
#### 实际机器人和工件的标定
在现场进行工件的三个点的标定。需要注意的是,由于在该工站工作时机器人工具一定会保持垂直,为了保证我们在标定时能够最小限度的消除系统误差,可以保持机器人的工具位置与工件面垂直,再进行工件的标定。我们只需要考虑工件的位置坐标,不需要旋转坐标,所以工具在标定时无需进行不同旋转角度的测量。
### 校准
- 现场标定完成的数据可以手动输入到软件中,也可以建立一个pts文件,软件可以导入点位信息。pts文件的开头一行需要标注点位信息单位,在软件中一般使用毫米mm;第二行开始填入三个测量点的点位信息,顺序分别是x,y,z的坐标,以分号作为分隔,换行时无需输入分号。文件中提供了模板的```Points.pts```文件。
- 打开软件的离线编程界面,选择左侧工具栏第二个,在工件上点击右键并点选3点定位。在跳出窗口中首先选择第二个,调整点位参照的基础坐标,确保选择的是UR机器人基座的B0坐标系,之后点击导入点位,选择刚才创建的pts文件,此时软件会基于机器人基坐标位置创建三个测量点,显示为白色并且点位上方标注了测量顺序数字。
- 此时软件会自动跳转到校准的第二部分选择点,此时对测量点的点取需要对应pts文件中点的顺序。例如,第一个点为工件的左上角,则在点取位置的时候选择左上角,需要在看到绿色点出现在正确位置的时候点击鼠标左键。
- 完成三个点的选取后,工件会跳出一个Caliplug1的粘贴点,则代表校准完成。这个**粘贴点和机器人基坐标**之间的偏移就是虚拟环境中工件和实际工件位置的偏移。
- 接下来移动工件,切换到布局工作台,在空白处点击鼠标左键呼出坐标系,将他与校准的粘贴点重合,之后右键点击工件,并选择移动按钮,再回到粘贴点出的坐标系,右键点击中心点并选择点取命令,点取坐标系,之后点击机器人的基坐标。这样就可以把工件按照标定的偏移移动到其实际位置。
- 完成移动后切换至离线编程工作台,此时不要进行任何操作,需要首先刷新或新创建一个程序的初始状态,否则程序会回到最开始建立的状态,就需要重新进行一次移动。为了能够了解工件不同位置机器人的工作状态也可以多保存几个初始状态,在仿真时可以进行比较。
- 至此,工件的校准完成。如果再校准前已经完成了编程,此时的程序会自动适配工件的新位置,并自动计算机器人的运行。
## 五、虚拟调试 / 数字孪生
FASTSUITE软件提供了许多机器人的虚拟调试接口,只要制造商软件的接口开放,软件就可以连接其仿真界面并获取其中信息。由于VRC的设置与URsim软件的使用需要预先配置环境,与UR机器人自身的沟通也需要通过TCP/IP端口并需要配置,本次课程中的虚拟调试至数字孪生部分为演示。如果您需要更好的了解该过程,可以在课后与我们联系。