ABB RAPID 程序以及指令
什么是RAPID
RAPID 是 ABB 机器人使用的编程语言,RAPID程序架构:
- 示意图1:

- 示意图2:

- 示意图3:

- 所有ABB机器人都自带两个系统模块:USER,BASE;根据机器人应用不同,有些机器人会配备相应应用的系统模块。建议不要对任何自动生成的系统模块进行修改;
- 机器人的程序存储器是由程序模块(Program Module)与系统模块(System Module)组成;
- 机器人程序存储器中,只允许存在一个主程序main;
- 所有例行程序与程序数据,无论存在于哪个模块,全部被系统共享;
- 所有例行程序与程序数据,除特殊定义外,名称必须是唯一的;
- 机器人的应用程序一般由三部分组成:程序数据,一个主程序main,和几个例行程序。主程序可以理解为一个特殊的例行程序,是机器人程序运行的开始,控制机器人程序流程;
RAPID程序编辑
打开ABB菜单后,单击程序编辑器,查看RAPID程序:

单击例行程序,查看例行程序列表:

切换到*模块列表:

- CallPos: 例行程序
- CurrentPos: 功能
- MAIN: 主程序
- tIOControl: 中断程序
程序模块有2个:CalibData,Module1.系统模块有3个:BASE,LINKEDM,user:

程序编辑界面:

常用RAPID指令:
运动指令单独章节说明
| 指令类型 | 指令 | 说明 |
|---|---|---|
| 赋值指令 | := | Data:=Value |
| 流程控制指令 | ProCall | 添加指令/ProCall/调用例行程序 |
| 流程控制指令 | IF | IF…ELSEIF |
| 流程控制指令 | TEST | TEST…CASE |
| 流程控制指令 | WHILE | WHILE…DO |
| 输入输出指令 | DO | 机器人输出信号 1(High) 0(Low),需在系统参数中定义 |
| 输入输出指令 | DI | 机器人输入信号 1(High) 0(Low),需在系统参数中定义 |
| 输入输出指令 | Set | Set do1; (signaldo) 置位1 |
| 输入输出指令 | Reset | Reset do1; (signaldo) 复位0 |
| 输入输出指令 | PulseDO | PulseDO do1; 输出一个长度为0.2s的脉冲信号,[\PLength]-参变量,(num),长度:0.001s-2000s |
| 输入输出指令 | WaitDI | WaitDI di1,1; 等待一个输入信号达到规定状态,[\MaxTime],单位s,超出后停止.[\TimeFlag],bool数据,超出后执行下一条指令,MaxTime内得到信号,逻辑量置为FALSE. 超过MaxTime,逻辑量置为TRUE |
| 计时指令 | ClkReset | ClkReset clock1; (clock),将1个机器人时钟复位 |
| 计时指令 | ClkStart | ClkStart clock1; 开启一个机器人时钟,开始计时 |
| 计时指令 | ClkStop | ClkStop clock1; 将机器人时钟关闭,停止计时,但仍保持时钟数据至复位 |
| 通信指令 | TPErase | 示教器显示屏清屏指令 |
| 通信指令 | TPWrite | TPWrite string |
| 设置指令 | WaitTime | WaitTime 5; 机器人等待5s,此时程序运行停止 |
| 设置指令 | VelSet | VelSet 100,5000; 机器人运行速率100%,机器人最大速度5000mm/s, 每个机器人运动指令都有一个运行速度,执行VelSet后,实际运行速度为两者乘积,且不超过最大运行速度 |
| 设置指令 | AccSet | AccSet 100, 100; 机器人加速度100%,加速度坡度100% |
| 设置指令 | GripLoad | GripLoad load0; 设置机器人当前负载 |
参变量
以运动指令MoveL为例:
1 |
|
| 变量 | 说明 |
|---|---|
| [\Conc] | 协作运动开关(switch) |
| ToPoint | 目标点,默认为*(robotarget) |
| Speed | 运行速度数据 (speeddata) |
| [\V] | 特殊运行速度m/s (unm) |
| [\T] | 运行时间控制s (unm |
| Zone | 动行转角数据 (zonedata) |
| [\Z] | 特殊运行转角mm (num) |
| [\Inpos] | 动行停止点数据 (stoppointdata) |
| Tool | 工具中心点 (TCP) (tooldata) |
| [\Wobj] | 工件坐标系 (wobjdata) |
| [\Corr] | 修正目标点开关 (switch) |
选中指令:

然后再单击一次指令,并选择可选变量:

然后选择可以使用的参变量:

选择使用的参变量会出现在上一级界面的参变量列表中,供使用以及修改值:

Offs功能介绍
MoveL Offs(p1,100,50,0),v100...
Offs(p1,100,50,0)表示一个距离p1点X轴偏差量为100mm,Y轴偏差量为50mm,Z轴偏差量为0的点。函数Offs()的坐标方向与机器人Wobj坐标系一致。
选中目标点进入修改界面:

在功能选项卡里,会自动列出与所选参数类型相同的全部功能:

Summary
手动模式下才可以编辑程序。