资讯动态

ARMxy模块化工业控制器:一台设备取代PLC、网关与工控机

发布时间:2026/10/1 15:02:21 来源:尧图企业网站定制
前几天在储能项目现场调设备机柜里整整齐齐摆了三件东西一台中端 PLC 负责和 BMS 联动、做联锁逻辑一台工业网关把 Modbus、CAN 报文翻译成 OPC UA 上送给 EMS还有一台无风扇工控机跑组态软件和本地数据库。三台设备三个品牌三个调试工具联调那几天我几乎是在三个软件之间来回切。当时我就在心里反复问一个问题这个活儿真的一定要三台设备才能干完吗答案其实是否定的。现在市面上已经有一类 ARMxy 模块化工业控制器一台设备就能把 PLC、网关、工控机这三个角色接过去。这也是我这段时间在实际项目里反复验证过的事今天把这套思路和落地细节完整写出来给正在做储能站控或者自动化产线改造的朋友一个参考。1. 传统PLC 网关 工控机三件套的真实成本1.1 三台设备的分工控制、翻译、上位看似清晰实则割裂先捋清楚三件套各自是干嘛的。PLC 负责现场侧的实时逻辑读 DI、写 DO、跑 PID、做联锁梯形图或者 ST 写进去扫描周期毫秒级这是它的强项。网关负责协议翻译现场仪表走 Modbus RTU数控系统走 OPC UA老设备走串口、走 CAN网关把这些五花八门的协议统一转成 Modbus TCP 或者 OPC UA让上位机能听懂。工控机负责上位这一层组态画面、历史数据库、云端 MQTT 上送、远程运维入口本质就是一台工业环境的 PC跑 Windows 或者 Linux。这套分工本身没什么错绝大多数项目也是这么做的但实际用起来非常割裂。我经手的项目里最典型的场景就是三台设备分属三个供应商、三套调试软件电气工程师管 PLC自动化工程师配网关上位机开发管工控机出了问题互相推。数据链路上也是三级跳PLC 采集的数据先给网关网关做地址映射工控机再从网关轮询或者收订阅。每一级都要做一次格式转换、一次点位映射链路一长排障就变成猜谜。1.2 三件套在现场的具体痛点联调、排障、备件、空间联调阶段的坑最多。网关的地址映射表和 PLC 的程序注释对不齐工控机组态里绑的变量和网关导出的点表对不上这种事我在每个项目里几乎都能遇到一次。有一次储能项目BMS 那边给的寄存器表是电池厂家自己整理的表格里的地址偏移写错了网关工程师照着配了一个下午上位机里读出来的 SOC 永远跳跃在 0 和 100 之间最后是我拿着 Modbus 调试软件一条条报文对比才发现厂家的地址表少加了一个偏移量。排障的链条也长。数据丢了是 PLC 没读上来还是网关没转对还是工控机取数频率太高导致超时三台设备日志各记各的没有统一的时间戳和 trace 机制。备件库存也是三份PLC 一个牌子、网关一个牌子、工控机又是一个牌子每个都得留备件。盘柜空间更是肉眼可见的浪费——三台设备加起来一个 1200mm 高的柜子光理线就占了一半空间散热风扇一装柜内温度照样压不住。这些问题累积到后面就是成本。2. ARMxy 的模块化设计一台设备如何分饰三角2.1 主控IO通信板卡盘柜里的乐高组合ARMxy 这类模块化工业控制器的硬件结构简单说就是积木式。它不像传统 PLC 那样 CPU 模块加一堆 IO 模块堆在一起也不是工控机那种整机形态而是把主控、IO、通信接口拆成了独立的功能板卡按项目需求拼装。主控模块是核心典型配置是 4 核 A53 甚至 A72 的 ARM 处理器2GB 到 4GB 内存16GB 或者 32GB 的 eMMC跑 Linux 系统通信模块提供多路 RS485、RS232、CAN、双千兆以太网有无线需求的还可以加 4G、5G、Wi-Fi 板IO 模块则按点数来DI、DO、AI、AO 都能配DI 有 PNP 和 NPN 可选DO 有晶体管和继电器两种驱动AI 支持 4-20mA、0-10V也有直接接 PT100、热电偶的版本。模块之间通过内部总线插接整体做成 DIN 导轨安装。这和传统 PLC 的安装方式差不多但区别在于ARMxy 的主控就是一台微型 Linux 计算机IO 侧又保留了 PLC 级别的工业接口。实际用起来的感觉是它把能跑复杂软件的盒子和能接工业信号的盒子合成了一个。我在储能项目里装的就是主控加一块 24 路 DI、16 路 DO、8 路 AI 的混合 IO 板再加一块双 RS485、双 CAN 的通信板整个盘柜占用比原来三件套小了大概一半。2.2 当 PLC 用IEC 61131-3 软 PLC 和硬实时的边界在哪ARMxy 能不能当真正的 PLC 用这是很多人第一反应想问的问题。答案是可以但要分清场景。它通过内置的软 PLC 运行时常见的是 CODESYS 一类的 IEC 61131-3 运行时支持梯形图、ST、FBD 这些标准语言普通的中小型逻辑控制、PID 调节、联锁保护写起来和传统 PLC 没什么两样。但硬实时能力上ARM 处理器跑 Linux 再叠一层软 PLC扫描周期通常会比传统硬 PLC 慢一些。传统中端 PLC 的毫秒级确定性循环在毫秒到几十毫秒级别大多数储能站控逻辑、暖通联动、产线顺序控制完全够用如果是给伺服做插补运算、高频编码器计数这种微秒级动作那就不合适。我自己的判断标准是逻辑复杂度不高、控制周期在 10ms 以上、没有安全认证要求的项目ARMxy 完全可以替代中小型 PLC涉及安全回路、高速运动控制的项目老老实实保留硬 PLC。值得说一句的是有些 ARMxy 方案在 IO 板卡上加了 FPGA 或者 MCU 做底层预处理比如高速计数、PWM 输出、编码器接口是在板卡层面直接完成的不占用主控的 Linux 调度这样把一部分硬实时的要求下沉到了硬件层。选型的时候如果项目里有高速计数或者脉冲输出需求要专门确认板卡型号是不是带 FPGA 辅助的版本别只看主控 CPU 参数。2.3 当网关用Modbus/OPC UA/MQTT 的翻译逻辑很多人分不清工业网关和家用路由器这里顺便说一下工业网关干的活是协议翻译路由器只是三层转发完全是两个东西。ARMxy 作为网关最大的好处是协议栈是开放的软件层而不是固化在专用网关里的死配置。它原生支持 Modbus RTU/TCP、OPC UA、MQTT常见的 PLC 协议也有驱动比如西门子 S7 协议、三菱 FX 系列、台达、汇川这些还有电力上常见的 IEC 60870-5-104。协议翻译的底层逻辑是数据点映射。你在配置界面或者是配置文件里建一个点位表指定每个点的来源协议、寄存器地址、数据类型、缩放系数再指定它要发布到哪个目标协议。比如从一台 RS485 上的温控器读 Modbus 保持寄存器 40001把一个 UINT16 的温度值映射成一个 OPC UA 节点同时以 10 秒周期发布到 MQTT 主题。整个过程不用写一行代码。和传统专用网关比ARMxy 的优势在于可以同时并发轮询多个从站、多协议并行而且转换规则能随时改不用烧录固件。2.4 当工控机用容器、Python、Web 组态的落地方式ARMxy 卸下 PLC 和网关的活之后剩下的上位机角色完全可以靠它的 Linux 环境承担。它支持 Docker 容器可以在上面跑 Node-RED、Python 脚本、数据库服务甚至部署一个轻量级的 Web 组态。我用过的方式是采集的数据落到本地 SQLite 或者时序数据库里做短期缓存同时写一个 Python 服务把重点点位以 MQTT 上送云端监控平台另外再用一个 Web 组态容器做了个机柜内环境监控页面现场运维人员用浏览器直接打开省掉了传统组态软件的授权费。工控机角色的一个关键点是存储。传统工控机用的是固态硬盘容量大但连续写容易磨损ARMxy 用 eMMC容量相对小但工业级 eMMC 的寿命按小时写入量来算做常规的分钟级历史数据缓存完全没问题。如果项目要求存大量历史曲线建议外扩一个工业 SSD 或者把历史数据直接上送云端别在本地把 eMMC 写爆。3. 储能项目实战BMS/PCS 采集到 EMS 上送的完整链路3.1 储能站控的典型架构和 ARMxy 的接线角色储能站控项目里传统方案长这样BMS 电池簇通过 CAN 总线或者 RS485 把电压、温度、SOC、SOH 发给本地控制器PCS 储能变流器通过 Modbus TCP 接收功率调度指令空调、消防、门禁、温湿度这些动环设备各自有信号接口分散在机柜各个角落上层 EMS 系统再从控制器这边取数做能量调度和站级监控。用 ARMxy 替代之后角色重新划分BMS 的 CAN/RS485 线直接进 ARMxy 的通信板PCS 的以太网线直接进主控的网口空调和消防的开关量、模拟量进 IO 板动环传感器走 RS485 或者 AI 采集。ARMxy 在这里同时干三件事一是跑逻辑比如电池温度过高时切断 PCS、启动风机、触发消防告警二是做协议汇聚把所有设备的数据统一成 OP C UA 或者 MQTT三是当站控本地节点存数据、跑边缘规则。原来需要一个站控屏加一个网关加一个 PLC 组合的事现在一台设备接完。3.2 建点位表和 Modbus 寄存器映射的实操细节储能项目里最耗时间的往往不是接硬件而是核对 BMS 厂家给的寄存器表。我手上一个项目的 BMS 协议节选大概长这样实际地址做过脱敏处理数据项从站地址寄存器地址数据类型比例/单位备注SOC140001 (0x0000)UINT160.1%读保持寄存器SOH140002 (0x0001)UINT160.1%读保持寄存器总电压140003-40004FLOAT 高低字V32位浮点总电流140005-40006FLOAT 高低字A放电为正最高单体温度140010UINT160.1℃可映射告警告警字140020UINT16bit 映射按位解析拿到这种表第一步不是急着在 ARMxy 里配而是先用 Modbus 调试工具比如 Modbus Poll直接读一次验证地址和数据类型对不对。很多厂家表里写地址 40001实际报文里的寄存器偏移是 0x0000这个对应关系要弄清楚否则数据读出来驴唇不对马嘴。Modbus RTU 读报文的格式也要心里有数。读从站 1、起始地址 0x0000、连续读 6 个保持寄存器的请求帧是01 03 00 00 00 06后面跟两位 CRC 校验按工具自动计算附加。从站返回的报文是地址、功能码、字节数、数据、CRC。我在前面提到的那个地址表错误就是靠逐帧对比报文定位的所以我现在做项目时无论 ARMxy 配置界面多方便第一步一定先用裸报文工具确认物理链路是通的。3.3 数据上送OPC UA Server 和 MQTT JSON 配置要点数据采集进来之后上送是另一个关卡。储能站控系统里EMS 通常要求 OPC UA 接口因为 OPC UA 自带信息模型和订阅机制比 Modbus 这种裸数据交互规范得多。ARMxy 上跑一个 OPC UA Server把刚才建的 Modbus 点位映射成 UA 节点EMS 那边用 UaExpert 或者 SDK 直接订阅就行。OPC UA 配置里最容易出问题的是安全策略和证书。UA 客户端连不上服务器十有八九是安全策略不匹配或者是证书没信任。项目初期如果不强制加密可以先把 Security Policy 设为 NoneUsername 认证先空着跑通了再加上正式生产环境再开 Basic256Sha256 的签名加密并且把两边的证书互相导入。别一上来就把安全策略拉到最高级那只会让你多花一个下午排查证书错误。MQTT 上送则是另一条路适合对接云平台。我常用的 JSON 格式大概是这样的{ device: ESS-01, ts: 1741660800, soc: 78.5, soh: 96.2, total_voltage: 790.4, total_current: -152.3, max_cell_temp: 34.2, alarm: 0 }关键点是时间戳。如果你把数据传到云端但时间戳是错的那整条数据曲线就废了。下面第 6.2 节我会专门说单机时钟漂移的问题这里先埋个伏笔ARMxy 上送数据前必须确认系统时间是准的最简单的方式是让它定期从 NTP 服务器校时现场没外网的话从 EMS 或上层平台同步时间也是一种办法。4. 自动化产线改造拆掉机床、传感器、机械臂之间的协议围墙4.1 老产线的协议孤岛问题自动化产线改造最头疼的不是设备本身而是设备之间不说话。老产线里西门子 S7-200 SMART 控制一台压机三菱 FX3U 管一条输送线台达变频器在角落转汇川的伺服走另一套协议数控机床又只有厂家私有接口。这些设备各自的数据都是孤岛管理层想看 OEE、稼动率、产量根本取不出来。以前改造的做法是加网关给每台 PLC 配一个协议转换器把 S7、FX 系列的口统统转成 Modbus TCP再统一接到一台数据采集服务器上。复杂而且每加一台设备就要加一台网关成本线性增长。ARMxy 在这种场景下的价值在于它可以一台同时对接多种 PLC 协议。比如我做过的一条产线ARMxy 通过 S7 协议读西门子 PLC 的 DB 块通过串口 Modbus RTU 读三菱侧的数据再通过网口 Modbus TCP 读变频器和伺服的状态然后统一清洗、变成点位、上送 MES。原来墙上挂一排网关的事情现在一柜子就能解决。4.2 协议采集中台 逻辑下沉一个具体改造片段举一个具体的改造片段。有一台老压机温度、压力信号进了它自己的 PLC但产线要求把温度数据也要上送 MES并且现场要加一个保护逻辑温度超过 80℃ 时切断冷却水泵的接触器。原有 PLC 不支持改程序厂家加密了以前的做法是外挂一个温控表再从温控表拉线给 PLC 一个输入点绕得很。用 ARMxy 就简单了。ARMxy 通过 Modbus RTU 从压机 PLC 的只读寄存器里把温度值取出来前提是这台 PLC 开放了只读寄存器给上位机在内部把它映射成一个模拟量点位做两步处理第一把这个点通过 MQTT 上送 MES第二写一个简单的逻辑规则数值大于 80℃ 时把 ARMxy 的 DO 板卡上的那一路继电器输出置位直接断开冷却水泵。数据采集、协议翻译、逻辑联动、上行通信全部在 ARMxy 内部闭环不需要改老设备也不需要外挂温控表。这里要强调一下先确认老 PLC 是否开放端口和寄存器这个前提。实际项目中有些老设备的程序加密、通信参数被锁死那 ARMxy 再强大也没辙。所以做改造前一定要先从设备厂家或现场维护人员那里拿到通信参数权限这是整个方案能不能落地的第一道门槛。4.3 机械臂和伺服的接入脉冲、Modbus TCP、EtherCAT 怎么选热搜词里有个PLC 管理六轴机械臂伺服这个点我很想说一下。接机械臂和伺服技术选型上要先把控制层级分清。如果是控制六轴机械臂的轨迹机械臂本体一般有自己的控制器你要做的是通过 Modbus TCP 或者 OPC UA 把目标坐标、速度、加速度发给机械臂控制器由它内部做插补。这种场景下ARMxy 当网关和逻辑协调器完全够因为轨迹规划不在 ARMxy 里跑。如果是单纯控制伺服电机就要看是走脉冲还是走总线。脉冲方式最简单用 ARMxy 的高速 DO 板卡发脉冲和方向信号适合定位精度要求不太高、轴数少的场景。总线方式里 EtherCAT 比较主流但要特别注意ARMxy 必须选带 EtherCAT 主站功能并且有实时补丁的版本否则总线周期抖动会直接体现在伺服响应上。我个人的底线是单轴定位、速度控制可以用脉冲多轴协同、插补、同步要求高的项目要么选带 EtherCAT 主站的专用 ARMxy 板卡要么干脆用传统 PLC 运动控制器别拿一台普通 ARM 主控硬扛。5. 降本增效的经济账硬件单价只是一部分5.1 典型项目报价对比三件套 vs ARMxy很多采购决策者只看硬件单价这是不够的。我把一个中型储能站控和数据采集项目的典型成本列成一张表给你一个直观对比基于我接触过的多级代理和公开渠道价格取大致区间不代表具体合同价成本项传统三件套方案ARMxy 单机方案控制侧中端 PLC CPU 24DI/16DO 模块约 8000-15000 元主控模块约 3000-5000 元IO 扩展额外模拟量模块约 2000-4000 元IO 板卡约 1000-3000 元网关工业协议网关约 3000-8000 元通信板卡约 1000-2000 元上位机无风扇工控机约 4000-8000 元组态软件授权约 5000-12000 元无需额外硬件Web 组态容器免费合计约 1.6-4.5 万元约 0.5-1.2 万元别只看单价还要看交付范围。传统方案里组态软件的授权费往往最容易被忽略而 ARMxy 方案里的 Web 组态、OPC UA Server、MQTT Broker 这些服务在 Linux 里以容器方式跑授权成本趋近于零。仅这一项一个大项目下来就能省出一台设备的钱。5.2 盘柜、功耗、调试、备件上的隐性成本硬件之差只是表面隐性成本其实更值得算。盘柜方面三件套是三台设备框架、三套电源模块、一摞通信电缆ARMxy 是一片导轨式的模块组柜体尺寸至少缩小三分之一接线量和端子数也显著下降。功耗方面三件套加起来 60W 到 100W 很正常ARMxy 的典型功耗在 5W 到 15W 之间户外柜或者分布式站点里这就省了散热设计和 UPS 容量。调试成本更明显。传统三件套电气、自动化、上位机三类工程师各管一段沟通成本极高。ARMxy 用一套配置界面加一套命令行/Web 管理台就能覆盖全部功能一个工程师从头跟到尾联调时间我实测能压缩 30% 到 50%。备件方面更不用说了一种型号的备件压力比三种型号小得多。长期看这类模块化设备固件升级是统一 OTA不用像以前那样分别给 PLC、网关、工控机做软件维护运维成本也是下降的。5.3 什么场景不要选 ARMxy 替代话不能说满ARMxy 不是万能替换。我把它不能替代的场景列清楚避免你踩坑。第一涉及功能安全SIL的回路比如安全门锁、急停链、光栅逻辑这些必须用通过安全认证的安全 PLCARMxy 这类通用控制器做不了。第二超大点数、超复杂的 DCS 级控制项目比如几十个 PID 回路的大型过程控制硬 PLC 或 DCS 的成熟生态和冗余机制更可靠。第三高速高精运动控制前面说过多轴插补、微秒级同步老老实实用专业运动控制器。第四客户指定品牌 PLC 的项目比如招标文件明确要求西门子、三菱、汇川某型号那就别拿 ARMxy 去竞标那是自讨没趣。6. 选型和上手的避坑指南6.1 选型前一定要做的四件事第一件先把 IO 点位表理清楚。DI 多少路、是 PNP 还是 NPN 输入DO 多少路、要晶体管还是继电器输出AI 是 4-20mA 还是 PT100AO 有没有。这些信息直接决定你选哪几块 IO 板少了后补很麻烦多了浪费钱。第二件把通信协议清单列出来。现场有多少 RS485 从站、多少 CAN 节点、几个以太网口要接有没有 PROFINET、EtherCAT 这类实时总线需求这决定主控和通信板卡的选型。第三件评估算力需求。如果只是数据采集和逻辑控制4 核 A53 的低配主控就够如果要跑容器、跑 Python 算法、做视频分析就得选带 NPU 的高配版本。第四件看环境要求。工作温度范围、供电电压是不是宽压、EMC 等级什么标准这些都是工业现场的基本门槛没必要为省几块钱选一个场景不匹配的型号。6.2 现场调试最常见的五类故障和解决思路Modbus 通信不上先查从站地址冲突和终端电阻。RS485 总线上多个从站地址重复或者末端 120Ω 终端电阻没接就会出现时通时断的怪问题。处理办法很简单先用调试工具单独连每一台设备读点确认单独能通再挂总线挂上总线后逐段测。别一上来就怀疑 ARMxy 配置90% 的串口问题出在物理层。AI 读取数值跳动重点查信号隔离和接地。4-20mA 的模拟量最容易受变频器干扰建议用隔离型变送器或者加信号隔离器AI 板卡选带光电隔离的型号。如果现场强电和弱电共槽走线怎么调理都有波动。OPC UA 客户端连不上服务器先查安全策略和证书信任这个我在 3.3 里提过项目初期用 None 策略跑通再升级加密。掉电后数据丢失这个问题我在很多软 PLC 和 Linux 方案里都见过和热搜里FX3U 的 D0-D8 普通寄存器断电不保持要通过 PLC 参数设置是同一个道理。ARMxy 里如果用软 PLC需要把断电保持的变量配置到保持区如果应用逻辑是 Python 写的就要周期性把关键值写入配置文件或数据库而不是只放在内存里。别等断电了才发现状态丢了。单机时间不准确原因很简单设备没联网NTP 用不了靠主板 RTC 晶振跑晶振频率漂移加上 RTC 电池衰减一天慢几秒都算正常。处理方案能上外网就配 NTP不能上外网就从上层平台定期授时对时间敏感的数据上送项目建议选带硬件 RTC 和温度补偿的版本或者外接 GPS/北斗授时模块。这个问题看着小但在储能项目里时间戳错乱会导致整个调度曲线不可用一定要当回事。PID 温控波动大先不要盲目调参数。先查传感器采样周期和执行机构的死区。采样周期太长、PID 输出变化落在调节阀死区里系统就会来回震荡。实践经验是先把采样周期缩小到和过程时间常数匹配P 值调小一点再让系统跑一个自整定流程比手调靠谱得多。ARMxy 里如果跑软 PLC 的 PID 功能块通常有自整定接口先用起来再根据温控曲线的超调量做二次微调。最后说一点个人体会。ARMxy 这类模块化工业控制器并不是要把 PLC、网关、工控机这三个品类消灭而是用一台设备覆盖掉那些场景大量重复、技术含量并不在硬件分工上的需求。在我经手的储能站控和老产线改造项目里它确实是性价比最高的一档选择。如果你正准备上一个以数据采集和中小规模控制逻辑为主的项目我建议你先列一张 IO 点位表和协议清单把 ARMxy 和传统三件套的方案放到一起比价你很快就会发现传统方案有多臃肿。真等到联调阶段体会到一个软件管到底的省心通常就回不去了。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑