4. ABB机器人I/O配置与信号映射

在ABB机器人产线协同控制中,机器人本体与PLC之间的信息交换几乎全部依赖I/O信号完成。机器人通过DSQC系列I/O板卡采集按钮、传感器、夹具到位等输入信号,并输出启动、夹紧、放行等控制指令;PLC则通过现场总线或硬接线方式与这些信号建立映射。RobotStudio中的I/O配置,本质上就是建立“物理板卡—逻辑信号—PLC地址”三者之间的对应关系。如果这一层映射不清晰,后续无论程序逻辑多么完善,都会出现信号错位、动作不响应或误触发等问题。

一、DSQC I/O板卡的类型与安装位置

ABB机器人常用的DSQC I/O板卡包括DSQC 652(数字量16入16出)、DSQC 653(数字量16入16出,带继电器输出)、DSQC 651(模拟量输入)等。以DSQC 652为例,它通常安装在机器人控制柜内的PCI插槽或DeviceNet总线上,通过总线地址(如10、11、12)被系统识别。在RobotStudio的“Controller”选项卡中,进入“I/O System”后,可以看到“Industrial Network”和“Device”两个层级。DSQC 652作为DeviceNet从站设备,需要先配置总线类型、节点地址和波特率,再添加具体的数字量输入输出信号。

配置时需要注意:同一总线上的节点地址不能重复,波特率需与PLC侧一致。例如,若PLC侧DeviceNet波特率为500 kbps,机器人侧也必须设置为500 kbps,否则总线无法正常通信。节点地址通常通过板卡上的拨码开关设定,RobotStudio中填写的地址必须与拨码开关实际值一致。

二、数字量输入输出的定义方法

在RobotStudio中定义数字量信号时,需要为每个信号指定名称、类型、分配到的板卡和通道号。例如,定义一个名为“di_FixtureReady”的数字量输入信号,类型为Digital Input,分配到DSQC 652板卡的通道0,表示夹具到位信号。再定义一个名为“do_ClampOn”的数字量输出信号,类型为Digital Output,分配到同一板卡的通道0,表示夹紧指令。

信号命名建议采用“方向_功能_状态”的格式,如“di_PartPresent”“do_RobotHome”“di_EStopOK”等,便于在程序中快速识别。通道号必须与板卡实际接线端子一一对应,不能随意填写。例如DSQC 652的输入通道0对应端子X1的1脚,输出通道0对应端子X2的1脚,这些对应关系在板卡手册中有明确标注。

ABB机器人I/O信号映射关系图 ABB机器人控制柜 DSQC 652 板卡 节点地址:10 波特率:500 kbps 16路输入 / 16路输出 DeviceNet 从站 机器人侧信号 di_FixtureReady di_PartPresent di_EStopOK do_ClampOn do_RobotHome do_CycleStart PLC 控制器 PLC 地址映射 I0.0 ← di_FixtureReady I0.1 ← di_PartPresent I0.2 ← di_EStopOK Q0.0 → do_ClampOn Q0.1 → do_RobotHome PLC侧信号 I0.0 夹具到位 I0.1 工件检测 I0.2 急停正常 Q0.0 夹紧指令 Q0.1 机器人原点 Q0.2 循环启动 DeviceNet 总线 输入信号映射 输出信号映射 交叉引用检查 信号名唯一 · 通道不冲突 · 地址一致 输入信号 输出信号 总线连接

三、与PLC地址的对应关系

机器人侧信号定义完成后,需要与PLC侧的I/O地址建立对应关系。这种对应关系通常有两种实现方式:一种是硬接线方式,即机器人DSQC板卡的输出端子直接连接到PLC的输入模块,PLC的输出模块连接到机器人板卡的输入端子;另一种是现场总线方式,如DeviceNet、PROFINET或EtherNet/IP,机器人作为从站,PLC作为主站,通过总线数据区进行映射。

以DeviceNet为例,PLC侧需要配置扫描器(Scanner),将机器人从站的输入数据映射到PLC的输入区(如I0.0~I1.7),将PLC的输出数据映射到机器人从站的输出区(如Q0.0~Q1.7)。在RobotStudio中,可以通过“I/O System”下的“Signal”列表查看每个信号的分配情况,并通过“Cross Connection”功能检查信号是否被重复分配或遗漏。

假设一个典型工位:机器人夹具到位信号“di_FixtureReady”对应PLC的I0.0,工件检测信号“di_PartPresent”对应I0.1,急停正常信号“di_EStopOK”对应I0.2;机器人输出“do_ClampOn”对应PLC的Q0.0,“do_RobotHome”对应Q0.1,“do_CycleStart”对应Q0.2。这些对应关系需要在PLC程序和机器人程序中保持一致,任何一侧修改都必须同步更新。

四、交叉引用检查与常见问题

交叉引用检查是I/O配置中容易被忽视但非常关键的一步。在RobotStudio中,可以通过“Cross Reference”功能查看每个信号在程序中的使用位置,确认是否存在以下问题:信号被重复定义、信号分配到了不存在的板卡通道、信号名称拼写不一致、PLC地址与机器人信号方向相反等。

常见问题包括:将输入信号误定义为输出信号,导致PLC无法读取机器人状态;通道号填写错误,例如将输入通道0写成通道16,而DSQC 652只有16个输入通道(0~15);总线地址与拨码开关不一致,导致整个板卡无法通信。排查时,可以先在RobotStudio的“I/O System”中查看板卡状态是否为“Running”,再逐个检查信号分配,最后通过“Simulate”功能模拟信号变化,观察PLC侧是否收到正确数据。

实用检查清单:
  • DSQC板卡节点地址与拨码开关一致,波特率与PLC侧一致。
  • 每个信号名称唯一,方向(输入/输出)正确。
  • 通道号在板卡有效范围内,且未与其他信号冲突。
  • PLC地址与机器人信号一一对应,方向匹配。
  • 交叉引用中无未使用信号或重复分配信号。
  • 模拟测试时,信号变化能在PLC侧正确反映。

完成上述配置后,建议在RobotStudio中执行一次完整的信号模拟:手动置位“di_FixtureReady”,观察PLC侧I0.0是否变为TRUE;强制“do_ClampOn”为TRUE,观察PLC侧Q0.0是否输出。只有输入输出双向都能正确映射,才能进入下一步的程序联调。I/O配置虽然基础,但它决定了机器人与PLC之间“对话”的准确性,是产线协同控制能否稳定运行的第一道关口。