工业机器人曲面轨迹仿真及实现

(整期优先)网络出版时间:2023-09-22
/ 3

工业机器人曲面轨迹仿真及实现

周炜

上海灵铭机器人科技有限公司,上海市闵行区,201101

摘要:本设计以ABB1200机器人系统路径规划为研究对象,基于RobotStudio软件的离线编程功能,导入SolidWorks绘制的圆柱体模型,在RobotStudio软件中使用曲面投影和自动路径规划等功能创建机器人曲面轨迹路径,对软件生成的相应程序进行调试和模拟仿真,实现夹具末端始终保持在曲面上沿着法线方向线性运动。并将调试好的程序加载至实际的ABB机器人工作站中,通过更改机器人的工具坐标和工件坐标,并在调试之后能够按照相应的路线进行运作。实现工业机器人曲面仿真在实际机器人当中的应用。

关键词:RobotStudio;离线编程;曲面轨迹路径;模拟仿真

1 引言

Robot Studio 软件是 ABB 公司专门开发的工业机器人离线编程软件,具有能将SolidWorks 模型导入、离线编程、仿真调试、路径自动规划等功能。本次研究采用SolidWorks 软件对工件进行三维建模,并将模型导入 RobotStudio 6.08 软件中建立相应的坐标系,结合 RobotStudio 软件的自动路径和模拟仿真功能,实现机器人沿着曲面法线方向路径运动的离线编程,并将程序通过网线导入实际的 IRB1200 机器人当中进行测试。

2曲面轨迹路径离线编程和路径程序调试

2.1模型搭建

由于RobotStudio软件的建模功能比较难使用,因此改成使用SolidWorks软件来进行建模,SolidWorks是一个基于Windows系统来创建的建模软件,其操作界面与平常使用的Windows的风格基本一致,因而具有使用简单、操作方便的特点。通过使用SolidWorks工作站中的拉伸功能来建立圆柱体的三维模型,鼠标左键点击界面最上方的“文件”,选择新建那一选项,然后点击最左边的那个零件,进入界面后,在界面左上角选择“草图”,然后根据需求选择对应的图形进行建模,点击“特征”选项,使用界面内的“拉伸凸台/基体”的选项。在左边界面栏中可以更改对应的参数,这一步中设立好相应的圆柱体高度和半径后,点击键盘上的回车键即可生成对应的三维模型,如图1所示。圆柱体的高度及半径应根据ABB机器人的臂长来设定,圆柱体的直径不能太长,高度不能太高,否则机器人很可能无法到达目标点。本次实验使用的工件模型为一个直径30mm,高为60mm的圆柱体。以及一个长为290mm,宽为210mm,高为115mm的长方体底座。如图2所示,建模完成之后将模型转换成RobotStudio能够识别的.STEP文件,导入RobotStudio后进行工作站的布局。并通过从布局配置好相应的机器人系统,如图3所示

图1 圆柱体建模

图2 矩形建模

图3机器人从布局配置

2.2工件坐标系的建立

创建好机器人系统后就把相应的夹具同步到RAPID和工作站中,建立相应的工件坐标,工件坐标的建立如下:通过RobotStudio“控制器”菜单中的“示教器”工具来创建,点击“示教器”工具,从左上角的列表中选择“手动操作”,在工件坐标一栏内里面选择新建一个工件坐标系,点击“编辑”下的“定义”,并点击目标方法的向下尖号,在打开的窗口中选择“三点”。按照三点法设置工件坐标。把工具移动到圆柱上对应的点位,这里由于圆柱上面在实际当中不好设立工件坐标,所以在圆柱体下面加了一个长方体模型,在长方体的顶面选取其中一个顶点,然后在示教器中点击“修改位置”按钮即可,同样方法设置其余两个点。当然还可以使用“建模”里面“框架”选项里面的三点创建框架来建立工件坐标系。输入的坐标通过选择捕捉末端点选项来实现,在捕捉到相应的目标点后,右下角会有相应的坐标,将其输入到对应空白处即可,如图4所示

4工件坐标系建立

2.3曲线轨迹的生成方法

生成曲线轨迹的方法有两种:一种是通过现场调试很多个点,再用MoveJ以及MoveL指令来实现,这种方法不仅耗时间,而且还要耗费很大的精力,精度要求高的还需要买一些昂贵的设备来辅助校准;另一种就是通过离线编程生成相应的路径,再导入实际当中的机器人,最后经过简单的调试即可。本设计使用的是第二种方法,由于RobotStudio的自动路径功能只能捕捉边缘的点或者线段,为此要在曲面上做往返运动轨迹,首先要在平面上方创建往复轨迹,通过使用RobotStudio里面的多线段功能来实现,轨迹的宽度和长度根据模型的大小来设定。建立好轨迹之后,使用修改曲线里面的曲线投影功能,将轨迹投影到曲面上,如图5所示,这样,就能清晰的在圆柱表面上看到曲线。

图5 曲面轨迹生成

2.4机器人轨迹创建

曲面上有了轨迹之后就能被RobotStudio软件里面的选择曲线功能给捕捉到了,所以在此处只需使用RobotStudio自动路径里的"曲线捕捉"选项捕捉要编程的曲线,并选择"动路径"的功能,并把所有的曲面轨迹按照相应的方向选择好,如6所示。同时在近似值参数选项选择圆弧运动,以便减少调试的目标点,同时圆弧运动也能使机器人的运动轨迹更加流畅一点,然后点击创建即可。接下来选中所有的目标点,单击鼠标右键,然后选中里面的“修改目标”选项,选中里面的“设定表面法线方向”功能,此时机器人的夹具末端便可以根据相应的功能完成轨迹运动了。如图7所示。

图6曲线路径生成

图7沿法线方向运动功能的创建

本次设计之所以要求机器人沿着法线方向运动,保证目标点的Z轴方向与工件表垂直。是因为在实际使用当中,当机器人对物体表面进行超声检测的时候,沿着法线方向运动才能保证探头经过的每个目标点都能够检查到,而且能够保证探头与目标点之间的接触面积相同,这样的检测结果更加精确。当然,一开始生成的目标点并不是马上就能使用的,有些目标点机器人难以到达,在运行途中可能会经过机器人的“奇点”,所以要改变该每个目标点的工具姿态。更改方式是单击路径和目标点栏,找到工件坐标点例如“Workobject_2”,单击鼠标右键选择“修改目标”里的“旋转”,之后将打开旋转窗口。在旋转窗口中,一般需要设定旋转的值,在右侧选择旋转围绕的坐标轴(x,y,z),此坐标轴为工具坐标轴,设置旋转值后,点击“应用”按钮即可改变角度。

根据焊接点调整工具角度,并且保证机器人能够到达。如图2.4.3所示。检查无误后,在下方的“路径与步骤”一栏中,在目标程序Module1/Path_20上单击鼠标右键,选中自动配置功能,机器人便会依次到达路径内的每个目标点并进行相关的轴配置。

当相应的目标点通过自动配置好后。里面的目标点没有红色警告显示就表示配置成功了,如图2.4.4所示。图中的黄色警告表示机器人运行过程中有可能会达不到目标点,但是通过仿真运行能够看到机器人的每一个目标点都能够完整的到达,因此不需要担心图中出现的黄色警告。

图8机器人曲面轨迹路径姿态

图9机器人曲面轨迹路径生成

2.5程序解析

在曲面路径上的目标点的相应程序都生成之后,将其同步到RAPID当中,在工具栏中的RAPID中便能找到相应的模块及程序,编辑好的离线程序可以直接下载到真实控制器中,无需翻译即可直接应用。其主程序结构为:

PROCmain()//主程序

Path_20;//调用的程序

ENDPROC//结束主程序

具体解析如下:

MODULEModule1

CONSTrobtargetTarget_10:=[[-10,0,-43.588130908],[0,-0.53108764 9,0,0.847316888],[0,0,0,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+0

9]];

CONSTrobtargetarget_20:=[[-100.000120543,0,-99.998949155],[0,0.

000001068,0,1],[0,0,-1,1],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]

]......//机器人在运动过程中各点的姿态信息。

LOCAL PROC Path_20()

MoveJ Target_340,v20,z5,MyTool\WObj:=Workobject_2;

MoveC Target_350,Target_360,v20,z5,MyTool\WObj:=Workobject_2;

MoveL Target_370,v20,z5,MyTool\WObj:=Workobject_2;//以下省略。

在上述语句当中:MoveJ 表示关节运动指令,机器人的 TCP 从原点运动到目标点位“Target_340”的路径不一定是直线,不易在运动过程中出现关节轴进入机器奇点的问题。V20表示TCP移动的速度为20mm/s,z5表示转弯区数据是5mm,MyTool\WObj:=Workobject_2表示使用的工具坐标系数据是MyTool里面的所有参数,WObj为工件坐标系,Workobject_2表示使用的工件坐标系数据为Workobject_2里面设置的参数。后面语句当中的MoveL指令也是表示线性运动的指令,即TCP在2个目标点之间的运动轨迹为直线,一般应用在焊接、涂胶等对路径要求较高的场合。而MoveC指令则表示机器人通过中间点以圆弧移动方式运动至目标点,当前点、中间点与目标点3点决定一段圆弧,机器人运动状态可控制,运动路径保持唯一。用在曲面运动会比较合适。因为进入第一个目标点的时候不需要走直线,所以第一个点使用MoveJ指令方便更好的进去初始点,而后面的机器人运动需要严格的执行,防止并且为了有更好的效果以及减少调试工作,所以使用MoveL指令和MoveC指令结合以更好的达到实际效果,使夹具在运行过程中保持与工件的平行,防止发生碰撞。

2.6程序模拟仿真和导入

程序调试好以后,右击Module1/Path_40,选择同步到RAPID选项,将工作站同步到虚拟控制器中,保证虚拟控制器中的数据与工作站数据一致。然后在“仿真”功能选项卡的“仿真设定”中调用Path_40路径,单击“播放”按钮,这时机器人就按之前设定路径进行运动。如图10所示。在仿真过程中,规划好机器人运动路径后,需验证当前运动路径是否会产生干涉,检测路径规划的合理性[9]。不符合则继续修改Workobject_2中的目标点,修改到当目标符合后。把对应的模块保存好。以便后续的导入。

图10程序模拟仿真

导入程序之前,得先了解整个机器人系统,完整的机器人系统是由机器人、控制台以及示教器这三样东西组成的。控制台是机器人系统中的核心组件,它是机器人的全部信息处理和对机械手的控制的中心,所以把程序导入控制台,就能让机器人按照程序进行相应的操作。而将电脑与控制台连接的方式是通过网线连接,将电脑的网线接口与控制台延伸出来的网线相连接之后,在电脑上把 IP 地址更改成与机器人内部资料所给的一致。然后在电脑上的 RobotStudio 软件内的文件栏中选中“在线”,在控制台的信息能够在 RobotStudio 的软件内显示出来之后,控制台与电脑便成功连接上去了。连接成功之后在控制器栏选择“请求写权限”,在示教器那里同意之后便能够将写好的模块导入机器人当中,之后就是设立好实际机器人当中的工具坐标和工件坐标,最后就到调试程序的步骤了。需要注意的是,实际中机器人使用的工具以及工件应尽量保持与仿真中的一致,这样才能保证误差最小。达到最理想的效果。如果不一致的话,目前的解决办法之一就是根据实际需要设计好夹具模型,并将相应的模型文件导入 ABB 软件中,然后在软件内使用该夹具进行仿真。或进行现场调试,更改一些点的位置,把误差较大的点进行校准,以达到理想状态。还有需要注意的问题是,在机器人开始运行后先不要着急把工件立刻放上去,先等机器人运行完一遍,确定夹具末端不会与工件发生碰撞之后,再把工件放上去,然后再进行调试即可。

3结语

本研究通过软件 SolidWorks 进行工件建模并导入 RobotStudio 软件中,实现了模型的建立,设计了曲面轨迹路径的生成方法,实现了机器人夹具末端沿物体表面法线方向运动的过程。效果良好。

参考文献

[1]方伟.工业机器人离线编程与仿真软件开发[D].武汉:华中科技大学,2019.

[2]刘甘霖.RobotStudio建模功能在机器人项目中的应用研究,内燃机与配件[J].2020,(07):264-265.