1. 项目背景与需求解析
在工业自动化控制系统中,PLC与变频器之间的稳定通讯是实现产线智能化的基础环节。这次我参与的橡胶生产线改造项目,核心需求是通过台达DVP-EH3系列PLC同时控制3台三菱E700变频器,实现电机转速的精确调节和运行状态监控。这种多设备组网方案在纺织、包装等行业的生产线速度协同控制中非常典型。
项目难点在于:EH3本体只自带一个RS485接口,而三菱E700的通讯协议对时序要求严格,必须解决单端口多设备轮询时的响应冲突问题。经过实测,采用Modbus RTU协议配合自定义轮询算法,最终实现了3台变频器1秒内的数据刷新周期,完全满足产线实时控制需求。
2. 硬件连接与参数配置
2.1 通讯物理层搭建
采用标准的RS485总线拓扑结构,使用2芯屏蔽双绞线(AWG18)连接所有设备。具体接线要点:
- PLC的RS485接口(COM2)的S+/S-分别对应变频器的PU接口的2/5号端子
- 总线两端需接入120Ω终端电阻
- 每台变频器的站号通过参数Pr.117~Pr.124设置(分别设为1/2/3)
关键提示:三菱E700的PU接口内部已集成120Ω电阻,需通过Pr.549参数启用(设置为0或1对应不同接线方式)
2.2 变频器关键参数设置
每台E700需要统一配置以下参数:
plaintext复制Pr.79 = 2 // 操作模式设为通讯控制
Pr.338 = 1 // 通讯启动指令有效
Pr.339 = 1 // 通讯速度指令有效
Pr.340 = 0 // 停止指令选择
Pr.549 = 0 // 终端电阻设置(根据实际接线选择)
3. PLC程序开发要点
3.1 通讯指令编写
使用台达PLC的MODBUS指令库,关键程序段示例:
st复制// 初始化通讯端口
MOV H81 D1120 // COM2: 9600bps,8,N,1
MOV K3 D0 // 重试次数=3
// 轮询1号变频器
MOV K1 D100 // 站号
MOV H03 D101 // 功能码(读保持寄存器)
MOV K100 D102 // 起始地址(实际频率)
MOV K1 D103 // 读取长度
DMOVR D100 K4 // 发送请求
3.2 多设备轮询策略
采用状态机方式实现轮询调度:
- 定义设备轮询队列数组(D200~D202存储站号)
- 使用定时中断(每300ms触发)切换当前设备
- 通过M1929标志位判断通讯完成状态
- 错误处理时自动跳过当前设备进入下一轮
4. 调试问题全记录
4.1 典型故障现象与处理
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| 通讯超时 | 终端电阻未启用 | 检查Pr.549设置 |
| 数据错误 | 波特率不匹配 | 确认PLC与变频器Pr.117一致 |
| 偶发断连 | 线路干扰 | 更换屏蔽线并单点接地 |
4.2 实测性能优化
通过调整以下参数提升稳定性:
- 将变频器的通讯等待时间(Pr.121)从默认100ms改为20ms
- PLC的通讯超时(D1121)设为150ms
- 在程序中加入通讯错误次数统计(超过5次触发报警)
5. 系统集成注意事项
- 上电顺序:先启动变频器再接通PLC,避免初始化冲突
- 防干扰措施:
- 通讯线远离动力线30cm以上
- 在PLC侧加装信号隔离器
- 维护模式切换:
- 通过HMI设置维护标志位
- 程序自动切换为单设备调试模式
这套方案经过三个月连续运行验证,通讯成功率保持在99.98%以上。对于需要扩展更多变频器的场景,建议增加RS485中继器或改用CAN总线架构。实际接线时有个小技巧:用万用表测量总线AB线间电阻,正常值应在60Ω左右(两个120Ω电阻并联),这个快速检测方法帮我们节省了大量调试时间。
