ABBaJABB机器人高级编程
ABB[a]-J-8ABB机器人高级编程
8.1任务目标
?掌握ABB机器人RAPID高级编程方法。
?掌握常用的RAPID程序指令。
8.2任务实施
8.2.1事件程序EventRoutine
Event Routine是使用RAPID指令编写的例行程序去响应系统事件的功能。
比如在系统启动时,检查IO输入信号的状态,就可通过Event Routine来完成。
要注意的是,在Event Routine中不能有移动指令,也不能有太复杂的逻辑判断,防止程序死循环,影响系统的正常运行。
下面我们就以响应系统事件POWER_ON为例子,进行此功能的说明。
任务描述:编写rEvent例行程序,打印“Start OK”字样,如果在开启后屏幕上显示,则说明这个例行程序与POWER_ON系统事件关联。
MultiTasking就是在有一个在前台运行用于控制机器人逻辑运算和运动的RAPID程序的同时,后台还有与前台并行运行的RAPID程序,也就是我们所说的多任务程序了。
*系统需要623-1 MultiTasking选项。
多任务程序最多可以有20个不带机器人运动指令的后台并行的RAPID程序。多任务程序可用于机器人与PC之间不间断的通讯处理,或作为一个简单的PLC进行逻辑运算。后台的多任务程序在系统启动的同时就开始连续的运行,不受机器人控制状态的影响。
多任务程序——任务间数据通讯的方法:
◆任务间是可以通过程序数据进行数据的交换。
◆在需要数据交换的任务中建立存储类型为可变量而且名字相同的程序数据。
◆在一个任务中修改了这个数据的数值,在另一个任务中名字相同的数据也会随之更新。
8.2.3错误处理ErrorHandle
在RAPID程序执行的过程中,为了提高运行的可靠性,减少人为干预,对一些简单的错误(如WAITDI)进行自我处理。
除了系统的出错处理。也可以根据控制的需要,定制对应的出错处理。
*错误处理中最好不要放运动指令
8.2.4TCP轨迹限制加减速度的设定
我们可以对机器人运动轨迹的加减速度进行限制来满足一些特殊应用的需要。如机器人搬运高温液态金属进行浇注的动作,为了防止液体的溢出,这个时候我们就需要对加减速度进行限定。
示例:
?PathAccLim FALSE, FALSE;
TCP的加减速度被设定为最大值(一般默认情况)
?PathAccLim TRUE \AccMax:=4, TRUE \DecelMax:=4;
TCP的加减速度被限定在4m/s2
?MoveL p1, v1000, fine, tool0;
?PathAccLim TRUE\AccMax:=4, FALSE; 加速度被限定为4m/s2
?MoveL p2, v1000, z30, tool0;
?MoveL p3, v1000, fine, tool0;
?PathAccLim FALSE,FALSE; TCP的加减速度被设定为最大值
限制值最小只能设定为0.5m/s2
8.2.5WorldZone区域监控功能的使用
WorldZone是用于控制机器人在进入一个指定区域后停止或输出一个信号。
应用实例:
?当两个机器人协同运动时设定保护区域。
?在压铸机的开/合模区设定为WorldZone。
?机器人进入了指定区域后,输出信号给外围设备。
?通过定义AB两点的位置来确定进行监控的区域。
?可以定义的WorldZone形状:矩形、圆柱形、关节位置型。
WorldZone监控的是当前的TCP的坐标值,监控的坐标区域是基于当前使用的工件坐标WOBJ和工具坐标TOOLDATA的。一定要使用Event Routine的POWER_ON在启动系统的时候运行一次,就会开始自动监控了。
8.2.6限定单轴运动范围的操作
目的:因为工作环境或控制的需要,我们有时候会对单个轴进行运动范围的限定。
方法:我们可以对单轴的上限和下限值进行设定。设定的数据以弧度的方式进行表达。(1弧度约等于57.3度)。
注意:对单轴限定后,会使机器人的可到达范围变小。
为了简化控制和对整个系统的一体化控制,我们通常会遇到以下的这种情况:操作员直接从人机界面直接调出机器人要执行的RAPID 例行程序。
要实现这样的操作的设定方法: ? 人机界面将程序编号发给PLC 。 ? PLC 将编号发到机器人的组输入端。 ? 编写对应的RAPID 程序。
8.3知识链接-常用
RAPID 程序指令与功能表
ABB 机器人提供了丰富的RAPID 程序指令,方便了大家对程序的编制,同时也为复杂应用的实现提供了可能。以下就按照RAPID 程序指令、功能的用途进行了一个分类,并对每个指令的功能作一个说明,如需对指令的使用与参数进行详细的了解,可以查看ABB 机器人随机光盘说明书中的详细说明。 8.3.1程序执行的控制 1.2.
3.停
变量
8.3.2指令 1.赋值指3.4.5.
6.
8.3.3 1.
2.
3.
4.
5.
6.
7.
8.3.4运动控制1.
2.
3.
4.
* 5.
6.
7.
8.
注:这些功能需要选项“Path recovery”配合
9.
注:这些功能需要选项“Conveyor tracking”配合10.
注:这些功能需要选项“Sensor synchronization”配合11.
注:此功能需要选项“Collision detection”配合
12.
8.3.5
1.
2.
3.IO
8.3.6通信功能1.
2.
8.3.7
1.
2.
8.3.8系统相关的指令1.
8.3.9数学运算1.
2.