CANopen、EtherCAT 还是 RS-485|AGV 驱动与举升模组的控制接口选型
要点
- CANopen 是大多数 AGV 的务实首选:几个驱动器和执行器、更新速率适中、驱动配置文件成熟(CiA 402)、接线简单。
- EtherCAT 适合需要多轴严格同步、很短周期或节点很多的场景,前提是车辆控制器已有 EtherCAT 主站,多花的成本才值得。
- RS-485 只是物理层。它便宜、稳健,常配合 Modbus RTU 用于简单的点对点或多点控制,但没有标准的驱动配置文件,集成工作量会转移到你的软件里。
- 对举升模组而言,总线速度很少是决定因素,更重要的是位置或速度指令、限位与故障反馈、抱闸控制,以及与车辆控制器的兼容性。
车辆到底需要总线做什么?
在 AGV 或 AMR 上,快速控制环(电流、转矩、速度)在每个驱动器内部运行。现场总线主要传递设定值(速度或位置目标)、状态(实际速度、位置、温度、故障)和配置。轮速指令的更新周期通常在 1–10 ms 左右。决定接口的三个问题:
- 车上有多少节点:两个行走驱动、一个转向电机、一个举升、一个电池管理系统?
- 有没有轴需要严格同步运动,例如四个转向轮按同一运动学模型协调?
- 你的车辆控制器或 PLC 已经支持哪些接口?
三种方案一览
| CANopen | EtherCAT | RS-485(通常为 Modbus RTU) | |
|---|---|---|---|
| 是什么 | 建立在 CAN 之上的应用层(CiA 301);驱动配置文件为 CiA 402 | 实时工业以太网 | 差分串行物理层;协议另行选择 |
| 典型速率 | 最高 1 Mbit/s | 100 Mbit/s | 9.6 kbit/s 到数 Mbit/s,设备上常用 19.2–115.2 kbit/s |
| 拓扑 | 带终端电阻的线型总线 | 线型、树型或星型,无需交换机 | 带终端电阻的多点总线 |
| 同步性 | SYNC 报文,精度有限 | 分布式时钟,亚微秒级抖动 | 默认无,主站依次轮询 |
| 标准驱动配置文件 | 有,CiA 402 | 有,EtherCAT 上的 CiA 402(CoE) | 无,各厂家寄存器不同 |
| 主站硬件 | CAN 接口,常见 | EtherCAT 主站(软件或硬件) | 任意串口 |
| 适合 | 多数有若干节点的 AGV | 高性能或多轴车辆 | 简单、成本敏感的控制 |
CANopen 实践要点
CANopen 规范了设备如何描述自己(对象字典)、如何交换过程数据(PDO)、如何读写配置(SDO),以及如何监测网络(NMT 与心跳)。驱动配置文件 CiA 402 定义了轮廓速度、轮廓位置和循环同步等工作模式,车辆控制器可以用同一套指令驱动不同厂家的设备。
- 速率与长度。经典 CAN 最高规定到 1 Mbit/s,速率越高可用总线越短。CiA 的指导值大致是:1 Mbit/s 约 25 m,500 kbit/s 约 100 m,250 kbit/s 约 250 m。多数车辆足够短,可用 500 kbit/s 或 1 Mbit/s。
- 终端电阻。总线两端各接 120 Ω 终端电阻,避免长分支。
- 帧大小。经典 CAN 帧最多 8 字节数据,足够传输速度或位置设定值和一个状态字。
- 应索取的文件。EDS 文件,以及所支持的 CiA 402 模式清单。只说"支持 CAN"而不支持 CANopen 的设备,不能与标准 CANopen 主站配合。
EtherCAT 实践要点
EtherCAT 中,主站发出一个数据帧,依次穿过每个设备。每个设备在帧经过时读取自己的输出数据并插入输入数据,整个网络一次性完成更新。分布式时钟让设备同步到优于 1 微秒。
- 什么时候值得。多轴协调运动、很短的周期(可远低于 1 ms)和大量节点。
- 需要什么。车辆控制器中的 EtherCAT 主站,以及耐振动连接器的屏蔽以太网线缆。与 CAN 相比,主站软件和工具会增加成本和学习成本。
- 驱动配置文件。多数伺服驱动器在 EtherCAT 上提供 CiA 402(CoE),应用逻辑可以与 CANopen 相近。
- 应索取的文件。设备的 ESI 文件。
RS-485 实践要点
RS-485 描述的是双绞线上的差分信号。它传输距离远(低速时可达约 1,200 m)、抗干扰能力强,多点总线可连接多个设备。多数低成本执行器在 RS-485 上使用 Modbus RTU:主站一次轮询一个设备,所以总延迟随节点数增加,轮询设计成了你软件的一部分。没有标准驱动配置文件,每个厂家的寄存器都不同。
RS-485 适合单个举升执行器或规模小、速度慢的系统。车辆上有多个需要同时指令的驱动器时,CANopen 或 EtherCAT 的扩展性更好。
举升模组需要另一份检查清单
举升通常是行程固定的慢速点到点运动。对于 匠元滚珠丝杠举升模组(提供 RS-485、CANopen 或 EtherCAT 接口)这类产品,要确认:
- 指令是目标位置、速度还是简单的升/降?控制器是否需要位置反馈?
- 限位开关和越程如何上报?
- 谁控制抱闸?掉电时抱闸如何动作?
- 模块报告哪些故障码,如何清除?
- 举升与行走是否共用总线?如果共用,请核对与安全相关信号的总线负载和延迟。
如果有安全功能需要停止举升,应使用硬接线 STO 输入这类专用安全通道,而不是普通的现场总线指令。参见AGV 驱动轮 STO 指南。
移动车辆上的接线与电磁兼容
- CAN 和 RS-485 用屏蔽双绞线,EtherCAT 用屏蔽以太网线。
- 屏蔽层统一接地处理,信号线远离电机和电池动力线。
- 使用带锁紧、耐振动的连接器,例如 M12。
- 提前规划热插拔与诊断:心跳或看门狗监测,以及向车辆控制器清晰上报故障。
简易决策指南
- 车辆控制器已有 EtherCAT 主站,且需要多轴同步运动?选 EtherCAT。
- 有若干节点,希望以适中成本实现厂家无关的集成?选 CANopen。
- 只有一两个简单设备,不需要配置文件?RS-485 可能就够了。
- 拿不准?请向供应商确认具体料号上可用的接口,因为不同型号的选项并不相同。
常见问题
CANopen 就是 CAN 吗?
不是。CAN 定义物理层和数据链路层,CANopen 是建立在 CAN 之上的高层协议,增加了对象字典、PDO、SDO、网络管理和设备配置文件。使用私有 CAN 协议的设备不会自动兼容 CANopen。
对 AGV 来说 EtherCAT 比 CANopen 快很多吗?
EtherCAT 的带宽和同步性好得多,但 1–10 ms 的常规轮速指令环路用不上这些。优势体现在轴数多、同步要求高的场景。
一台车上可以混用接口吗?
可以。很多车辆驱动器用 CANopen,传感器或电池管理系统用另一种接口。需要规划连接它们的网关或控制器。
匠元机器人的产品提供哪些接口?
接口取决于产品和型号。滚珠丝杠举升模组提供 RS-485、CANopen 和可选 EtherCAT。请把料号或需求发给我们,我们来确认。