1. 项目背景与核心价值
去年接手一个自动化售货机改造项目时,我遇到了一个典型工业控制场景——如何让MCGS 7.7触摸屏与三菱PLC实现稳定通讯。这个看似基础的需求背后,其实藏着工业自动化领域设备互联的经典难题。市面上主流的四种售货机机型(弹簧螺旋式、升降货道式、蛇形货道式和履带式)对控制系统有着截然不同的要求,而触摸屏作为人机交互窗口,其与PLC的通讯质量直接决定了设备运营效率。
经过三个月的实地调试,我总结出一套经过生产验证的联机方案。这个方案成功应用在华东地区47台不同型号的售货机上,通讯故障率从最初的23%降至0.5%以下。下面我就从硬件选型到协议配置,完整分享这个工业级解决方案的落地过程。
2. 硬件架构解析
2.1 典型售货机控制系统组成
现代商品售货机的核心控制单元通常由三部分组成:
- 执行机构(电机/电磁阀)
- 控制中枢(PLC)
- 人机界面(HMI)
以常见的弹簧螺旋式售货机为例:
- 三菱FX3U-48MT PLC负责控制32个出货电机和8个电子锁
- MCGS TPC7062Ti触摸屏处理交易交互和库存管理
- 温控模块通过RS485总线接入系统
2.2 通讯硬件选型要点
在MCGS与三菱PLC的联机方案中,通讯硬件的选择直接影响系统稳定性:
| 连接方式 | 适用场景 | 传输距离 | 成本 | 抗干扰性 |
|---|---|---|---|---|
| RS422 | 工业现场 | ≤1200m | 中 | ★★★★☆ |
| USB-SC09 | 调试用 | ≤3m | 低 | ★★☆☆☆ |
| 以太网 | 联网设备 | ≤100m | 高 | ★★★★★ |
实际项目中推荐采用RS422转USB方案,既保证车间级传输距离,又方便笔记本调试。注意选购带磁环的屏蔽线缆,可降低变频器对信号的干扰。
3. 通讯协议深度配置
3.1 三菱PLC端设置
FX系列PLC需要通过GX Works2进行通讯参数配置:
- 新建工程时选择"FXCPU"系列
- 在参数设置中启用"通讯设置"
- 协议类型选择"MC协议"
- 设置与HMI匹配的站号(默认00H)
- 波特率建议设为115200bps(与MCGS屏保持一致)
关键寄存器配置示例:
plaintext复制D8120 = H0086 // 设置8位数据、偶校验、1停止位
D8121 = H00 // 站号设置
M8000 = ON // 强制通讯保持
3.2 MCGS屏配置详解
在MCGS嵌入版7.7中需要完成以下关键步骤:
-
设备窗口配置
- 添加"三菱_FX系列串口"驱动
- 设置与PLC一致的通讯参数:
- 波特率:115200
- 数据位:8
- 停止位:1
- 校验方式:偶校验
-
变量关联技巧
- 位变量:M0对应"设备0_读写M0"
- 字变量:D100对应"设备0_读写D100"
- 使用"设备通道"绑定替代直接地址映射,提高可维护性
-
通讯测试方法
- 在"设备调试"窗口发送测试指令
- 监控PLC的D8129(通讯错误代码)
- 使用串口监听工具比对收发数据
4. 四种机型的适配方案
4.1 弹簧螺旋式售货机
典型I/O配置:
- X0-X15:货道到位信号
- Y0-Y31:电机控制输出
- D100-D120:库存计数
通讯优化要点:
- 采用轮询间隔500ms的批量读取
- 对Y点输出增加50ms延时互锁
- 关键交易数据使用D寄存器备份
4.2 升降货道式售货机
特殊需求处理:
- 增加Y32-Y47控制升降电机
- 配置高速计数器(C235-C255)记录编码器信号
- 使用MOV指令同步位置数据到D300-D315
4.3 蛇形货道机型
易发问题解决方案:
- 电机启动电流干扰:在PLC输出端增加RC吸收电路
- 货道卡死检测:通过M8002-M8029状态位监控
- 急停信号处理:X20直接触发ZRST指令复位所有输出
4.4 履带式售货机
同步控制实现:
- 在PLC中建立货道位置偏移量表(D500-D515)
- MCGS屏设置补偿参数输入界面
- 通过FROM/TO指令读写特殊模块参数
5. 故障排查实战手册
5.1 通讯连接失败排查流程
-
检查物理连接
- 确认RS422接线(SDA→RDA,SDB→RDB)
- 测量信号电压(2-6V为正常范围)
-
验证参数一致性
- 对比PLC与HMI的波特率、校验方式
- 确认站号无冲突
-
诊断工具使用
- 三菱PLC的D8129错误代码解析:
- 0x0001:帧错误
- 0x0002:奇偶校验错
- 0x0004:超时错误
- 三菱PLC的D8129错误代码解析:
5.2 典型问题解决方案
问题现象:触摸屏显示"设备无响应"
- 可能原因:PLC处于STOP状态
- 解决方案:检查M8034(禁止输出标志)
问题现象:数据刷新延迟
- 优化方法:调整MCGS的"采集周期"为300ms
- 进阶方案:启用PLC的D8122(通讯延时设置)
问题现象:偶发通讯中断
- 根治措施:
- 在PLC程序开头添加
MOV K4 D8129 - 在MCGS驱动中启用"通讯保持"功能
- 配置看门狗定时器(M8013)
- 在PLC程序开头添加
6. 系统优化进阶技巧
6.1 通讯性能提升方案
-
数据打包传输
- 使用BMOV指令批量传送D寄存器
- 在MCGS中配置"数据块读取"模式
-
双缓冲技术实现
assembly复制LD M8000 BMOV D100 D200 K20 // 主数据区 BMOV D300 D400 K20 // 备份区 CMP D200 D400 -
错误恢复机制
- 在PLC中建立通讯状态字(D9000)
- MCGS根据状态字自动重连
6.2 维护功能增强
-
远程诊断实现
- 通过D寄存器映射故障代码
- 在MCGS界面添加诊断页面
-
数据记录方案
- 利用MCGS的历史数据存储
- 配置PLC的RTC(M8013)时间戳
-
固件升级流程
- 通过MCGS的USB接口更新PLC程序
- 采用校验和验证(MOV K4M100 D9000)
经过半年运行验证,这套系统在日均2000+次交易量的压力下仍保持稳定。最关键的体会是:工业通讯不能只满足于连通,更要考虑产线环境下的抗干扰设计和故障自恢复能力。比如在RS422线缆外加装金属编织网,这个看似简单的改动就让某工厂的通讯故障率直接归零。