4. 多机器人工作站建立与系统定义
在RobotStudio中建立多机器人工作站,核心不是把多台机器人“摆进同一个场景”,而是让它们进入同一个控制器系统,并在系统层面明确每台机器人属于哪个运动组、以什么方式参与运动。RobotStudio的MultiMove功能允许一个IRC5或OmniCore控制器同时管理多台机器人,这些机器人共享同一个控制柜、同一个安全回路和同一套I/O资源,但各自拥有独立的运动任务或协同任务。理解这一点,是后续配置独立运动与协同运动的前提。
一、创建多机器人工作站的基本流程
启动RobotStudio后,选择“新建工作站”,从机器人库中依次拖入所需机器人型号。例如,一个典型的两机器人协同工作站可以选用两台IRB 2600,或者一台IRB 4600配合一台IRB 1200。拖入第一台机器人时,软件会提示创建系统;此时不要急于完成,而是继续拖入第二台机器人,再统一创建系统。若先为第一台机器人创建了单机器人系统,后续再添加第二台时就需要通过“从布局创建系统”重新生成,否则第二台机器人只能作为几何体存在,无法参与运动控制。
创建系统时,在“新建系统”对话框中需要关注几个关键选项:系统名称、RobotWare版本、控制柜型号以及是否启用MultiMove。MultiMove选项通常以“MultiMove”或“MultiMove Option”的形式出现在RobotWare选项中。若未勾选该选项,系统创建后只能识别一台机器人作为运动主体,其余机器人无法被运动指令驱动。因此,在系统定义阶段就应确认MultiMove授权已包含在RobotWare许可中。
二、定义机器人组与运动任务
系统创建完成后,在“控制器”选项卡下打开“配置”资源管理器,可以看到“Motion”主题下的“Robot”和“Task”配置。每台机器人对应一个机械单元(Mechanical Unit),而每个机械单元需要绑定到一个运动任务(Motion Task)。在MultiMove系统中,通常采用以下两种任务组织方式:
- 独立运动模式:每台机器人拥有独立的运动任务,例如T_ROB1、T_ROB2,各自执行自己的RAPID程序,互不干涉。这种方式适合两台机器人工作区域分离、节拍独立的情况。
- 协同运动模式:多台机器人共享同一个运动任务,例如T_ROB1中同时包含两台机器人的运动指令,通过协调指令(如WaitSyncTask、SyncMoveOn)实现同步运动。这种方式适合搬运、装配等需要两台机器人同时托举同一工件的场景。
在RobotStudio的“机器人组”设置中,可以通过“控制器”菜单下的“机器人组”对话框查看当前系统中已定义的机器人组。每个机器人组对应一个运动任务,组内可以包含一个或多个机械单元。若需要将两台机器人配置为协同运动,应将它们加入同一个机器人组,并在RAPID程序中通过协调指令控制。
三、独立运动与协同运动的配置要点
独立运动模式的配置相对直接:在“配置”中为每台机器人分配独立的运动任务,然后在RAPID编辑器中分别为T_ROB1和T_ROB2编写程序。例如,T_ROB1负责从传送带取件,T_ROB2负责将工件放入夹具。两台机器人可以通过共享的I/O信号或WorldZone进行互锁,但运动本身是异步的。这种模式下,每台机器人的运动指令只影响自身,不会因另一台机器人的运动而改变轨迹。
协同运动模式则需要更细致的配置。首先,在“机器人组”中将两台机器人加入同一个运动任务,例如都归入T_ROB1。然后,在RAPID程序中使用协调指令。常用的协调指令包括:
- SyncMoveOn:开启同步运动,后续的运动指令将等待所有参与同步的机器人到达同步点后再继续。
- SyncMoveOff:关闭同步运动,恢复各机器人独立执行。
- WaitSyncTask:等待指定同步任务中的所有机器人到达该点。
一个典型的协同搬运程序结构如下:
MODULE MainModule
! 两台机器人分别移动到抓取点
MoveJ pPick1, v500, fine, tool1;
MoveJ pPick2, v500, fine, tool2;
! 开启同步,等待双方就位
SyncMoveOn MySyncTask, 1;
WaitSyncTask MySyncTask, 1;
! 协同抬升工件
MoveL pLift1, v200, z10, tool1;
MoveL pLift2, v200, z10, tool2;
! 协同移动到放置点
MoveL pPlace1, v300, fine, tool1;
MoveL pPlace2, v300, fine, tool2;
! 关闭同步
SyncMoveOff MySyncTask;
ENDMODULE
需要注意的是,协同运动中的运动指令必须成对出现,且两台机器人的运动速度、加速度和转弯区参数需要协调设置。若一台机器人使用fine终止点,另一台使用z10转弯区,可能导致同步点判断不一致。建议在协同段内统一使用fine或统一使用相同的转弯区半径。
四、系统备份与恢复
多机器人系统的备份比单机器人系统更复杂,因为需要同时保存控制器系统、机器人配置、RAPID程序和I/O配置。在RobotStudio中,可以通过“控制器”菜单下的“备份”功能创建系统备份。备份内容包括:
- 系统参数(System Parameters):包含机器人组、运动任务、I/O配置等。
- RAPID程序(RAPID Programs):所有模块和程序。
- 控制器配置(Controller Configuration):包括EIO、SIO、MOC等配置文件。
备份文件通常以“.rsbackup”或文件夹形式保存。恢复时,在“控制器”菜单中选择“恢复”,指向备份文件即可。恢复过程中需要注意:若目标控制器的RobotWare版本与备份时不一致,可能出现配置不兼容。此时应优先恢复系统参数和RAPID程序,再手动调整版本差异部分。
对于协同运动系统,恢复后应重点检查以下内容:机器人组是否完整、运动任务绑定是否正确、协调指令的同步任务号是否一致、工具坐标系和工作对象坐标系是否已恢复。建议在恢复后执行一次单步运行,观察两台机器人在同步点是否同时到达,以验证系统恢复的完整性。
系统备份检查清单(示例):
- 备份前确认所有机器人处于停止状态,无未保存的程序修改。
- 备份文件命名包含日期和系统版本,例如“MultiMove_2R_20250612_RW6.15”。
- 恢复后检查“机器人组”对话框,确认每台机器人已绑定到正确的运动任务。
- 恢复后检查“配置”中的“Motion”主题,确认Mechanical Unit与Task的映射关系未丢失。
- 执行一次协同运动测试程序,观察SyncMoveOn后的同步点是否正常触发。
在实际工程中,多机器人工作站的建立往往需要反复调整机器人组和运动任务配置。建议在完成系统定义后,先以独立运动模式验证每台机器人的基本运动功能,再切换到协同运动模式进行联调。这样可以将问题定位在单机层面还是协同层面,减少调试复杂度。