在工业自动化控制领域,人机界面(HMI)与变频器的高效通讯一直是现场工程师关注的重点技术。这个案例展示了国产主流触摸屏品牌MCGS昆仑通泰如何通过Modbus RTU协议与三菱变频器建立稳定通讯,实现参数读写和运行控制。
这种方案的价值在于:首先,它打破了进口HMI设备的价格垄断,国产触摸屏成本仅为进口品牌的1/3到1/2;其次,Modbus RTU作为工业领域最通用的串行通讯协议,其兼容性使得不同厂商设备能够互联互通;最后,三菱变频器在中小型制造业中保有量巨大,这个案例具有广泛的参考意义。
通讯硬件采用RS485两线制连接方式,接线时需要特别注意:
注意:三菱FR-D700系列变频器的通讯端子标识为SDA/SDB,与常规A+/B-标注不同,实际接线时SDA对应A+,SDB对应B-
变频器侧关键参数(以FR-D720S为例):
| 参数编号 | 参数名称 | 设置值 | 说明 |
|---|---|---|---|
| Pr.117 | 站号 | 1 | 范围1-247,不能重复 |
| Pr.118 | 通讯速率 | 192 | 对应19200bps |
| Pr.119 | 数据长度/停止位 | 8 | 8位数据+1位停止位 |
| Pr.120 | 奇偶校验 | 2 | 偶校验 |
| Pr.121 | 通讯重试次数 | 9999 | 无限制重试 |
| Pr.122 | 通讯校验时间 | 9999 | 无超时断开 |
| Pr.549 | 协议选择 | 1 | Modbus RTU模式 |
触摸屏侧配置步骤:
三菱变频器采用特殊的Modbus寄存器映射规则,与常规设备不同:
常用功能码对应关系:
关键参数地址换算:
变频器参数Pr.XXX对应的Modbus地址为:
例如:
三菱变频器采用16位有符号整数表示频率参数:
状态字bit位定义:
code复制Bit0:运行中(1=运行)
Bit1:正转/反转(0=正转)
Bit3:故障(1=故障)
Bit5:频率到达(1=到达设定值)
在MCGS中需要建立以下关键变量:
| 变量名称 | 类型 | 寄存器地址 | 数据类型 | 备注 |
|---|---|---|---|---|
| Run_Cmd | 读写 | 0000H | 16位整数 | 启动命令 |
| Set_Freq | 读写 | 0001H | 16位整数 | 频率设定值(×100) |
| Actual_Freq | 只读 | 0002H | 16位整数 | 实际输出频率 |
| Status_Word | 只读 | 0030H | 16位整数 | 状态字 |
| Fault_Code | 只读 | 0031H | 16位整数 | 故障代码 |
启动/停止控制脚本:
vb复制' 正转启动
If Start_Button = 1 Then
Run_Cmd = 1 ' 写入1启动正转
End If
' 停止控制
If Stop_Button = 1 Then
Run_Cmd = 0 ' 写入0停止运行
End If
' 频率设定
Set_Freq = Frequency_Set * 100 ' 转换为变频器格式
状态监控脚本:
vb复制' 运行状态显示
If (Status_Word And &H0001) > 0 Then
Running_Lamp = 1 ' 运行指示灯亮
Else
Running_Lamp = 0
End If
' 故障报警处理
If (Status_Word And &H0008) > 0 Then
Alarm_Message = "故障代码:" + Str$(Fault_Code)
Alarm_Trigger = 1
End If
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 通讯超时 | 波特率设置不一致 | 检查双方通讯参数 |
| 接线极性反接 | 调换A+/B-线序 | |
| 数据读写错误 | 站号冲突 | 确认变频器Pr.117设置唯一 |
| 寄存器地址计算错误 | 检查地址换算公式 | |
| 偶发性通讯中断 | 未接终端电阻 | 长距离时接入120Ω电阻 |
| 电磁干扰 | 检查屏蔽层接地,远离动力线 |
通讯间隔设置:
数据包优化技巧:
异常处理机制:
vb复制' 在MCGS循环脚本中添加通讯状态检测
If Device1_Status <> 0 Then ' 通讯异常
Retry_Counter = Retry_Counter + 1
If Retry_Counter > 3 Then
System_Reset() ' 触发系统复位
End If
Else
Retry_Counter = 0
End If
通过设置不同站号,可实现单触摸屏控制多台变频器:
典型轮询逻辑:
vb复制' 在MCGS定时脚本中实现轮询控制
Select Case Polling_Index
Case 0
Device1_Active = 1 ' 激活设备1通讯
' 读取设备1数据...
Case 1
Device2_Active = 1 ' 激活设备2通讯
' 读取设备2数据...
' ...更多设备
End Select
Polling_Index = (Polling_Index + 1) Mod Device_Count
当系统中有PLC时,可采用两种架构:
触摸屏直连模式:
PLC中转模式:
structured复制// PLC Modbus通讯指令示例
LD M8000 // 运行常ON
MOV H1117 D100 // 准备读取Pr.117
RS2P K1 K0 D100 K1 K500 // 发送读取命令
实际项目中,我们发现在纺织机械控制系统中,采用触摸屏直连变频器+PLC联锁的方案最为可靠。触摸屏负责工艺参数设置和状态显示,PLC处理安全逻辑和急停控制,这种架构既保证了操作灵活性,又确保了系统安全性。