ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

AGV工控机外设接口全解析:从针脚定义到接线实操

AGV工控机外设接口全解析:从针脚定义到接线实操 1. 一台 AGV 到底要挂多少外设先看它的身体结构一台 AGV 小车看着就是个会跑的底盘但真把它拆开你会发现它本质上是一台长了轮子的工控机。我在现场调试过几台不同品牌的潜伏式 AGV从最朴素的磁条导航到激光 SLAM 导航外设数量差别很大但核心架构是相通的主控工控机 运动控制 传感器阵列 通信模块 供电系统。这五块拼起来接口数量轻松突破二三十个。为什么 AGV 对外设和接口这么敏感因为它要在没有人干预的环境里连续跑十几个小时任何一个接口松动、一根线接触不良都可能让整台车停在产线中间。我见过最典型的一次故障一台 AGV 在转弯时突然急停排查了半天最后发现是编码器线束的屏蔽层在拖链里被磨破信号受干扰导致位置反馈跳变。这种问题在实验室里永远复现不了只有跑够里程才会暴露。所以这篇文章我想干一件事拿一台典型的国产工控机当样本把它在 AGV 上要接的外设一个一个数清楚顺便把每个接口的类型、针脚、注意事项都讲透。适合正在做 AGV 电气设计、嵌入式开发或者准备自己攒一台 AGV 底盘的朋友参考。不管你是刚入行的嵌入式工程师还是做了几年想补全系统视角的老手应该都能从里面找到点有用的东西。2. 核心外设清单与接口类型拆解2.1 先列清单一台标准 AGV 的外设构成我按功能把 AGV 外设分成五类这样后面讲接口的时候不容易乱。以下是一台典型激光 SLAM 潜伏式 AGV 的配置磁导航版本会少掉激光雷达和部分视觉但接口逻辑一样。功能分类外设名称典型接口数量运动控制驱动轮电机驱动器CAN / RS4852运动控制转向电机驱动器CAN / RS4851-2运动控制编码器A/B/Z 差分2-3感知激光雷达以太网 / USB1-2感知避障传感器超声/红外RS485 / IO4-8感知防跌落传感器IO / RS4854感知视觉相机USB / 以太网0-2交互触摸屏 / 指示灯USB / RS232 / IO1-2交互急停按钮 / 安全触边安全 IO2-4通信无线模块以太网 / USB / MiniPCIe1通信充电桩对接RS485 / IO1供电电池管理 BMSCAN / RS4851供电DC-DC 模块端子若干数一下光是信号类接口就有二十多个再加上电源端子一台 AGV 的线束复杂度不亚于一台小型设备。这也是为什么 AGV 电气图纸往往要画好几页而且必须标注每个接口的针脚定义。2.2 工控机侧接口从哪来国产工控机在 AGV 上用得很多常见形态是无风扇嵌入式工控机尺寸大概 200×150×60mm 这个量级功耗控制在 15-30W。它本身自带的接口通常包括2-4 个千兆以太网口有的带 POE4-6 个 USB 口2.0 和 3.0 混合2-4 个 RS232/RS485 串口DB9 或端子1-2 个 CAN 口部分型号需要扩展HDMI / VGA 显示输出若干 GPIO但 AGV 实际需要的外设数量往往超过工控机原生接口所以通常还要加扩展板卡或 USB 转串口模块。这里就有一个关键取舍是用工控机原生串口还是用 USB 转串口我的经验是运动控制相关的串口尽量用原生因为 USB 转串口在电磁干扰大的电机环境里容易掉线而原生串口的时序更稳定。感知类、交互类的外设可以用 USB 转成本低、灵活。2.3 为什么接口选型这么讲究很多人觉得接口就是个插头能插上就行。但在 AGV 上接口选型直接决定了系统的可靠性。举几个我踩过的坑CAN 还是 RS485电机驱动器两种都支持但 CAN 总线在多节点、长距离、抗干扰方面明显更好。一台 AGV 上如果有 3 个以上驱动器我基本都选 CAN。RS485 更适合点对点的传感器比如 BMS 和充电桩通信。以太网还是 USB 接激光雷达早期雷达多用 USB现在主流都走以太网。以太网的优点是带宽大、传输距离远、支持多雷达组网而且工控机原生网口多。USB 的问题是线缆长度受限一般不超过 5 米在 AGV 这种走线长的场景里很吃亏。IO 是干接点还是湿接点急停、安全触边这类安全信号必须用干接点或者安全继电器不能直接接普通 GPIO。这是安全规范的要求也是实际经验——普通 IO 在电机启停瞬间容易被干扰误触发。3. 关键接口的针脚定义与实操要点3.1 RS422/RS485 接口针脚定义与接线热词里有人搜工控机的 rs422 接口 针脚定义图这个确实是个高频问题。工控机上的 DB9 串口如果是 RS422/RS485 模式针脚定义和标准 RS232 完全不同。以常见的 DB9 公头为例针脚RS232 定义RS422 定义RS485 定义1DCDTX-—2RXDTXA3TXDRXB4DTRRX-—5GNDGNDGND6DSR——7RTS——8CTS——9RI——注意不同厂家的工控机针脚定义可能不一样一定要查具体型号的手册。我见过有人直接按标准图接线结果 TX 和 TX- 接反通信死活不通查了一下午。RS485 接线相对简单A 接 A、B 接 B、GND 接 GND但要注意终端电阻——总线两端各接一个 120Ω 电阻中间节点不接。提示RS485 的 A/B 标注在不同设备上可能相反有的标 A B-有的标 D D-。接之前先用万用表量一下空闲时的差分电压正常应该在 200mV 以上。3.2 CAN 总线接口与终端电阻CAN 在 AGV 上主要接电机驱动器和 BMS。标准 CAN 是两根线 CAN_H 和 CAN_L加上 GND。工控机如果原生带 CAN一般是端子或者 DB9。DB9 的 CAN 定义常见是2 脚 CAN_L7 脚 CAN_H3 脚 GND。CAN 总线的终端电阻是必须的总线两端各 120Ω中间节点不接。我遇到过一台 AGV 通信时好时坏最后发现是终端电阻只接了一端另一端漏了。CAN 总线在 500kbps 速率下总线长度不要超过 100 米AGV 内部走线一般几米完全够用。3.3 编码器接口A/B/Z 差分信号编码器是运动控制里最容易被忽视但最关键的接口。增量式编码器输出 A、B、Z 三路信号差分输出的话就是 A、A-、B、B-、Z、Z- 六根线加上电源和地一共八根。接线要点屏蔽层单端接地一般接在工控机侧不要两端都接否则形成地环路。线缆要用双绞屏蔽线A 和 A- 必须双绞B 和 B- 双绞Z 同理。走线远离电机动力线至少保持 10cm 以上距离交叉时尽量垂直交叉。我踩过的坑有一次编码器线和大电流电机线捆在一起走结果 AGV 一加速编码器就丢脉冲位置漂移。后来把线分开走问题立刻消失。这个经验值 10cm 是保守的条件允许的话越远越好。3.4 以太网接口与激光雷达激光雷达走以太网是现在的主流。工控机的千兆网口直接接雷达配置一个静态 IP 就行。但要注意网线要用工业级屏蔽网线普通网线在拖链里弯折几次就断芯。雷达的 IP 和工控机要在同一网段但不要和无线模块的网段冲突。如果雷达支持 POE确认工控机网口是否支持 POE 供电不支持的话要加 POE 注入器。有的雷达用 USB 转以太网这种方案我不太推荐多一层转换就多一个故障点。能用原生网口就用原生。4. 从电气图纸到实际接线完整实操流程4.1 先画电气图纸别急着接线热词里agv 电气图纸是个高频搜索说明很多人卡在这一步。我的建议是接线之前一定要有一份完整的电气图纸至少包含系统框图工控机、驱动器、传感器、电源之间的关系。接口分配表每个外设接哪个口针脚怎么定义。线束图每根线的规格、长度、颜色、走向。电源分配图24V、12V、5V 各供哪些设备电流多大。画图工具用 EPLAN 或者 AutoCAD Electrical 都行小项目用 Visio 也能凑合。关键是接口分配表要写清楚不然后面调试的时候自己都忘了哪根线接哪。4.2 电源分配与线径计算AGV 一般用 24V 或 48V 锂电池。电源分配要算清楚每个设备的电流然后选线径。举个例子工控机12V/3A通过 DC-DC 从 24V 转激光雷达12V/1A驱动器24V/5A 峰值传感器24V/0.5A总电流大概 10A 左右24V 主回路用 1.5mm² 线就够了。但驱动器这种大电流设备要单独走线不要和传感器共用一根电源线否则电机启停时电压波动会影响传感器。线径选择有个简单公式铜线每平方毫米载流量约 5-8A取决于散热条件。1.5mm² 走 10A 没问题但如果是拖链里长期弯折建议留 30% 余量。4.3 接线顺序与注意事项接线顺序我一般这样安排先接电源主电源、DC-DC、各设备供电接完先量电压确认无误再上电。再接通信CAN、RS485、以太网接完用万用表量通断。最后接信号编码器、IO、传感器。上电前检查所有接口插紧没有短路电源极性正确。注意第一次上电一定要用限流电源或者串一个保险丝防止接错烧设备。我见过有人直接把 24V 接到 5V 设备上冒烟了才发现。4.4 调试阶段从通信到运动上电之后调试顺序也很重要先调通信用串口助手或者 CAN 分析仪确认每个设备都能通信。再调传感器看雷达数据、超声数据是否正常。然后调电机先手动给一个小速度看电机转不转、方向对不对。最后调运动整机联调跑路径。这个顺序的好处是每一步都能独立验证出问题容易定位。如果一上来就整机联调出了问题根本不知道是哪一层。5. 常见问题与排查技巧实录5.1 通信类问题速查表现象可能原因排查方法串口不通针脚接反、波特率不对量电压、换线、查手册CAN 通信时好时坏终端电阻缺失、线缆干扰补电阻、换屏蔽线以太网丢包网线质量差、IP 冲突换工业网线、查 IP编码器丢脉冲屏蔽层接地不对、线缆干扰单端接地、分开走线USB 设备掉线供电不足、干扰加有源 HUB、换原生口5.2 几个我踩过的坑坑一USB 转串口在电机启动时掉线。这个问题困扰了我很久后来发现是 USB 线没有屏蔽电机启动的电磁干扰通过 USB 线耦合进去。换成带屏蔽的 USB 线问题解决。所以 AGV 上所有 USB 线都要用屏蔽线尤其是靠近电机的。坑二RS485 总线接太多设备通信变慢。RS485 理论上可以接 32 个节点但实际接十几个之后通信延迟就明显了。如果设备多建议分多条总线或者改用 CAN。坑三激光雷达和无线模块 IP 冲突。这个很隐蔽因为两个设备单独测试都正常一起上就有一个不通。后来查 IP 才发现是网段冲突。建议做一张 IP 分配表所有网络设备都登记。坑四急停按钮接普通 IO误触发。急停必须接安全继电器或者安全 IO 模块普通 IO 在电机干扰下会误触发。这个不是功能问题是安全问题不能省。5.3 嵌入式开发者的视角如果你是从嵌入式转过来做 AGV 的有几个思维要转变实验室里跑通不等于现场能用。AGV 的电磁环境比实验室恶劣得多所有接口都要按工业级标准做。接口不是越多越好。每多一个接口就多一个故障点能用总线复用的就复用。文档比代码重要。AGV 是多人协作的项目接口定义、线束图、调试记录都要写清楚不然后面维护的人会很痛苦。6. 接口扩展与未来趋势6.1 什么时候需要扩展接口工控机原生接口不够用的时候有几种扩展方案USB 转串口成本低适合传感器、交互设备。MiniPCIe 扩展卡可以扩展 CAN、串口、网口稳定性好。以太网转 CAN/串口网关适合分布式架构设备离工控机远的时候用。IO 扩展模块通过 RS485 或者以太网扩展 IO适合传感器多的场景。我的建议是运动控制相关的接口尽量用原生或者 PCIe 扩展感知和交互类可以用 USB 转。这样在成本和可靠性之间取一个平衡。6.2 接口标准化与模块化现在 AGV 行业有个趋势是接口标准化比如统一用 M12 航空插头统一 CAN 总线协议。这对集成商来说是好事换一个雷达不用重新接线。但标准化也有代价就是灵活性降低。我的看法是内部接口可以灵活对外接口尽量标准化这样既保证开发效率又方便维护。6.3 给新手的建议如果你刚开始做 AGV我的建议是先从磁导航的简单车型入手外设少、接口简单容易跑通。等熟悉了再上激光 SLAM外设多了问题也多了但经验积累更快。接口这块多查手册、多量电压、多记录这三个习惯能帮你省下大量调试时间。最后分享一个我自己的习惯每台 AGV 调试完我都会把接口分配表、线束图、调试记录整理成一个文档存在项目文件夹里。下次维护或者做同款车的时候直接翻出来用效率高很多。这个习惯看起来麻烦但长期来看非常值。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进