返回主站|会员中心|保存桌面

ABB机器人配件服务中心    

ABB机器人配件|机器人配件

联系方式
  • 联系人:方经理
  • 电话:13073017555
  • 邮件:gzws26@126.com
新闻分类
首页 > 新闻中心 > 机器人做从站时,如何与主站进行数据交换?
新闻中心
机器人做从站时,如何与主站进行数据交换?
发布时间:2026-10-31        浏览次数:0        返回列表

CC-link 是循环周期通讯,主站(三菱 PLC)掌管总线时序;机器人从站只被动按周期收发固定映射好的位 (RY/RX)、字 (RWw/RWr),没有主动发起读写的权限,所有交换都是主站轮询、周期刷新。

记住方向(非常容易搞反)

  • RY:主站 → 从站(PLC 发给机器人,位信号)

  • RWw:主站 → 从站(PLC 发给机器人,16 位字)

  • RX:从站 → 主站(机器人发给 PLC,位信号)

  • RWr:从站 → 主站(机器人发给 PLC,16 位字)三菱電機 ...

你的 IRB6700 IRC5+DSQC378B:DSQC378 本质是 CC-link ↔ DeviceNet 网关;机器人内部看到的是 DeviceNet 的 Group Input / Group Output,网关自动和 CC-link 的 RY/RX、RWw/RWr 一一对应转发。

一、数据交换完整流向

  1. PLC 主站侧(GX Works2)网络参数里添加远程设备站,设置站号、波特率、占用站数(1 站 = 32bit RY+32bit RX + 最多 4 字 RWw+4 字 RWr)。 PLC 软元件自动链接:

    • RY 映射到 PLC 的 Y 点:Yxxx → RY → 机器人 DI/GI

    • RX 映射到 PLC 的 X 点:机器人 DO/GO → RX → Xxxx

    • RWw 映射到 PLC 的 W(或 D):Dxxx → RWw → 机器人 Group Input 字

    • RWr 映射到 PLC 的 W(或 D):机器人 Group Output 字 → RWr → Dxxx

  2. DSQC378 网关转发(透明)网关收到 CC-link 的 RY/RWw,转成 DeviceNet 输入给机器人;机器人输出的 GO,网关打包成 RX/RWr 上 CC-link 总线。 机器人RAPID 程序不能直接读写 RY/RX/RWw/RWr,只能读写 ABB 这边映射好的 Signal(DI/DO / GI/GO)。

  3. 机器人 IRC5 / RobotStudio I/O 映射

    DSQC378B 限制:单站最大 32bit GI、32bit GO,最多 4 个输入字、4 个输出字;如果点数不够,就设置占用 2/4 站。

    • GI(Group Input):对应 PLC 下发 RY+RWw(启动信号、程序号、目标位置、模式指令、复位)

    • GO(Group Output):对应 上传给 PLC RX+RWr(就绪、运行、故障位、故障码、当前位置、完成标记)

示例信号分配

表格

CC-link方向ABB 信号用途
RY0PLC→机器人diStart启动
RY1PLC→机器人diReset故障复位
RY2~RY7PLC→机器人giProgNo(6bit)程序编号
RWw0PLC→机器人giPosXX 坐标(缩放后)
RWr0机器人→PLCgoFaultCode故障代码
RX0机器人→PLCdoReady机器人就绪
RX1机器人→PLCdoComplete动作完成
RX2机器人→PLCdoFault故障报警
  1. RAPID 里怎么读写交换数据RAPID 只操作本地 Signal,底层总线刷新由控制器 + 网关自动周期完成:

MODULE MainModule
   ! 等待PLC下发启动信号
   PROC RunRobot()
       IF diStart AND doReady THEN
           MoveJ pTarget, v1000, fine, tool0;
           Set doComplete;  ! 完成位上传PLC
           goFaultCode := 0;
       ENDIF
       IF diReset THEN
           Reset doFault;
           goFaultCode := 0;
       ENDIF
       ! 检测机器人故障,上传故障码
       IF ERR_NUM <> 0 THEN
           Set doFault;
           goFaultCode := ERR_NUM;
       ENDIF
   ENDPROC
ENDMODULE

 总线是周期刷新,RAPID 读取 GI 不是实时读总线,读的是控制器 I/O 缓存;输出 GO 也是写到缓存,在下一个总线周期发给 PLC。

二、OmniCore 版本 IRB6700(3066-2 CC-link IE Field Basic 从站)

这个方案没有网关,原生 CC-link IE 以太网:

  1. RobotStudio I/O Engineering 导入 ABB 的 CSP + 描述文件;

  2. 在 I/O 系统添加 CC-link IE Slave,定义输入块(PLC→机器人)、输出块(机器人→PLC);

  3. 同样映射成 ABB Signal(DI/DO/GA);

  4. GX Works3 导入同一份 CSP+,主站组态,分配 RX/RY/RWw/RWr;

  5. 数据方向规则和上面完全一致,只是载体变成以太网 UDP 循环报文,带宽更大(最大 288 字节入、288 字节出)。

三、通讯握手逻辑

CC-link 只是传输通道,必须做握手应答,防止信号丢包、重复触发:

  1. PLC 下发 diStart=ON

  2. 机器人收到后,判断就绪,执行动作,置 doBusy=ON(回传给 PLC)

  3. 动作跑完,机器人置 doComplete=ON,doBusy=OFF

  4. PLC 收到 doComplete 后,复位 diStart=OFF

  5. 机器人检测到 diStart OFF,复位 doComplete,一轮交互结束

故障:机器人检测异常 → doFault=ON + RWr 上传故障码;PLC 收到故障后,下发 diReset 复位。

四、常见坑

  1. 方向搞反:很多人把 RWr/RWw 写反,PLC 读不到机器人数据;记住:RWr = Robot Write to Master(机器人发给主站);RWw = Master Write to Robot(主站写给机器人)

  2. DSQC378B 拨码站号、波特率,必须和 GX Works 里主站配置完全一致

  3. 字数据是 16 位,浮点数要拆成高低两个字,PLC 和机器人约定缩放比例

  4. 不要用瞬时通讯(报文)做机器人实时控制;机器人做从站只适合循环周期性 I/O + 寄存器交换,瞬时读写一般不用

五、排错顺序

  1. 看 DSQC378B 的 link 灯:常亮 = 总线正常;闪烁 / 熄灭 = 总线、站号、波特率不匹配

  2. RobotStudio 在线看 GI/DI 有没有跟随 PLC 变化 → 判断下行

  3. PLC 监控 X、D 寄存器,看 RX、RWr 是否跟随 GO 变化 → 判断上行

  4. 握手时序、互锁在 PLC 和 RAPID 两边都要写,不要只靠总线信号。

收缩
  • QQ咨询

  • 电话咨询

  • 13073017555
  • 添加微信客服