3. 多机器人系统建模
多机器人节拍平衡的第一步,不是急着跑仿真,而是把“物理产线”在ROBOGUIDE里搭成一个可信的数字模型。单台机器人建模只关心本体、工具和工件坐标系;多机器人系统则多出四类关键信息:机器人数量与布局、外部轴归属、机器人组与协作关系、共享工作空间。这四类信息决定了后续节拍统计时,每台机器人是否被正确计时、是否会发生干涉、协作动作是否被识别为同一任务链。
一、添加多台机器人:从“单机”到“站位”
在ROBOGUIDE中新建Workcell后,通过 Robot 菜单的 Add Robot 逐台添加机器人。每台机器人需要指定型号、软件版本、控制柜类型和安装方式(落地、倒挂、壁挂、导轨)。多机器人建模时,建议按“站位”命名,而不是默认的 Robot1/Robot2,例如 R1_Weld_L、R2_Weld_R、R3_Handling,这样在后续节拍报表和干涉检查中能直接对应工位。
添加时有两个容易忽略的参数:机器人基座标(Base Frame)和初始关节角。基座标决定机器人在世界坐标系中的位置,必须与现场布局图一致;初始关节角影响仿真起始姿态,若设置不当,第一段运动会出现“绕远路”的假节拍。示例:某双机焊接工作站,R1基座标设为 X=0, Y=0, Z=0, Rx=0, Ry=0, Rz=0,R2设为 X=2500, Y=0, Z=0, Rz=180°,表示两台机器人面对面布置,间距2.5米。这是示例参数,实际应以布局图为准。
二、分配外部轴:让机器人“长在”导轨或变位机上
外部轴(External Axis)在多机器人系统中通常指行走轴、变位机、旋转台等。ROBOGUIDE中通过 Add External Axis 添加,再在机器人属性里把外部轴“挂”到对应机器人上。关键点是归属关系:一台机器人可以带多个外部轴,但一个外部轴在同一时刻只能属于一个运动组。若两台机器人共用一条行走导轨,应把导轨定义为独立外部轴,再通过机器人组或协调运动实现共享,而不是简单复制两份。
外部轴配置需要设置行程范围、速度上限、减速比和耦合方式。示例:行走轴行程 0~4000 mm,最大速度 1500 mm/s,减速比 1:50。若机器人安装在行走轴上,机器人的基座标会随外部轴位置变化,此时应使用“外部轴+机器人”的耦合运动组,否则仿真中机器人会“脱离”导轨。分配完成后,建议手动点动外部轴,观察机器人是否跟随移动,这是验证归属关系是否正确的最直接方法。
三、定义机器人组与协作关系
机器人组(Robot Group)是把若干机器人、外部轴组合成一个逻辑运动单元。ROBOGUIDE中可在 Robot Group 对话框里勾选成员,并设置组内运动优先级。协作关系则进一步描述组内机器人如何配合,常见有三类:同步协作(两台机器人同时焊接同一工件两侧)、互锁协作(一台进入共享区时另一台必须退出)、主从协作(从动机器人跟随主动机器人轨迹)。
定义协作关系时,必须明确进入/退出共享区的判断条件。示例:设定R1和R2的共享区为一个长方体区域,当R1的TCP进入该区域时,R2的使能信号被置为“等待”,直到R1退出。这个逻辑在ROBOGUIDE中可通过 Interference Check 配合 I/O 信号实现。若只画了共享区但没有绑定互锁信号,仿真中两台机器人会“穿模”,节拍结果也不可信。
四、设置共享工作空间与干涉检查
共享工作空间是多个机器人可能同时到达的空间交集。设置方法:在 Interference Check 中新建一个 Zone,用长方体或圆柱体圈定范围,再把需要监测的机器人TCP或本体加入该Zone。ROBOGUIDE会在仿真中实时检测,一旦两个对象同时进入,就触发报警或停止。建议把共享区边界留出50~100 mm安全余量,因为仿真中的TCP位置与实际机器人存在微小偏差。
共享工作空间设置完成后,应做一次“空跑验证”:让所有机器人按各自程序运行,观察是否出现误报警。若误报警频繁,说明共享区划得过大或互锁条件过严;若完全不报警,则要检查是否漏加了机器人本体。验证通过后,再进入节拍统计,否则多机器人节拍会因干涉停机而虚高。
五、一个可复用的建模配置示例
以下为双机焊接+搬运工作站的建模配置片段,可作为同类项目的起点。参数为示例值,实际需按现场布局和机器人型号调整。
Workcell: Line_A_Cell
Robot1: R1_Weld_L | Model: R-2000iC/165F | Base: X=0, Y=0, Z=0, Rz=0
Robot2: R2_Weld_R | Model: R-2000iC/165F | Base: X=2500, Y=0, Z=0, Rz=180
Robot3: R3_Handling| Model: M-710iC/50 | Base: X=1250, Y=-800, Z=0, Rz=90
ExternalAxis E1: TravelTrack | Stroke: 0~4000 mm | Speed: 1500 mm/s | Owner: Group_Weld
ExternalAxis E2: Positioner | Range: -180~180 deg | Speed: 90 deg/s | Owner: Group_Weld
RobotGroup Group_Weld: Members = R1_Weld_L, R2_Weld_R, E1
Coordination:
R1 <-> R2 : Interlock (SharedZone_Weld)
R3 -> Group_Weld : Handshake (PartReady)
SharedZone SharedZone_Weld:
Type: Box
X: 1000~1800 mm
Y: -300~300 mm
Z: 200~900 mm
Margin: 80 mm
Monitor: R1.TCP, R2.TCP, R1.Body, R2.Body
Action: Stop + Alarm
把上述配置逐项填入ROBOGUIDE后,先单独运行R1、R2、R3的程序,确认各自轨迹无误;再运行机器人组,观察互锁信号是否按预期触发;最后开启共享区监测,做一次完整节拍仿真。若三台机器人在共享区附近出现等待,说明互锁生效;若等待时间过长,则需要调整共享区边界或重新分配任务,这正是后续节拍平衡要处理的核心问题。