RAPID程序示例及自动运行

示例程序控制要求

机器人先到达一个设定的点,然后在另外两个设定的目标点之间来回走3遍。

建立程序模块与例行程序

  1. 打开程序编辑器,如果提示不存在程序,先单击取消进入模块列表:
    20210707075530

  2. 通过文件/新建模块,新建一个名为Module1,类型为Program的模块:
    20210707080220

  3. 单击显示模块
    20210707080728

  4. 单击例行程序,通过文件菜单,新建例行程序:
    20210707081055

  5. 建立一个主程序,名称为main,确定:
    20210707081604

建立程序数据

  1. 新建一个类型为robtarget的程序数据,注意,如果看不到这个数据类型,切换视图全部数据类型
    20210707082341

  2. 新建第一个目标运动位置数据,命令为p10,范围全局,存储类型为常量(实际默认就是这个设定,这可能也是RAPID内置如此多的数据类型的原因吧:方便示教器操作):
    20210707083117

  3. 将手臂移动到一个初始位置,在示教器中单击编辑修改此位置数据(建议配合RobotStudio仿真环境测试,见dusty@之前的文章):
    20210707090956

  4. 再新建3个目标位置数据 p20,p30:
    20210707091419

  5. 再新建一个数字类型num的数据,并设定为全局可变:
    20210707092503

    Note

  • 不同的数据类型是分类放到不同的数据列表中的,同一个列表界面新建的默认是同一种数据类型,要到数据类型列表中选择num;
  • 区分变量与可变量;

添加指令

  1. 在主程序main中添加一行赋值指令:

    1
    ncount := 0;

    20210707093759

    单击EXP,编辑,选择仅限选定内容
    20210707094343

  2. 继续添加两条运动指令 MoveJ:
    20210707095405

    添加指令后,直接点击要修改的位置进行修改。

  3. 添加循环语句WHILE,条件判断语句IF,ELSE:
    20210707100315

    注意,添加ELSE是点击IF后再弹出的界面添加。

  4. 最终的程序:
    20210707101334

    WaitTime相当于Arduino的delay,1的单位是秒;

  5. 运行程序:
    20210707104438

    • 切换到自动模式;
    • 在自动生成川口,将PP(指针)移至Main;
    • 点击运行按钮;
    • 运行结束点击停止按钮;

Note:

示教器的界面最多可以同时打开6个串口,在下方可以方便切换。

  1. 实际效果:
    ABB RAPID DEMO1

Summary

  1. 模块Module是RAPID的灵魂,先建立Module,再在其下建立例行程序main和程序数据,程序数据是在编辑例行程序的时候会用到的参数;
  2. PP函数指针指向Main,依顺序运行RAPID程序,直到结束;