西门子smart 200 rtu方式通讯四台三菱E700变频器资料 硬件:smart plc.三菱E700变频器,mcgs触摸屏(电脑仿真也可) 功能:指针写法,通过modbus rtu方式,实现对E700变频器通讯控制和监控。 有正反转,停止,频率给定,运行状态,运行频率,电压,电流的监控。 效果:反应快,反馈及时,无迟滞。 易复制,也支持其他支持rtu通讯的设备,并且易修改。 想增加更多台也很方便,程序留有余地,易修改。 包括触摸屏和plc程序,教程,接线和参数设置。
刚做完一个用西门子S7-200 SMART通过Modbus RTU同时操控四台三菱E700的项目,实测反馈速度在200ms以内。分享几个关键点:
一、硬件配置骚操作
变频器参数要改这几个:
Pr.117=1(站号1)
Pr.118=192(波特率19200)
Pr.119=0(8位数据)
Pr.120=2(偶校验)
Pr.121=9999(超时不报警)
RS485接线注意:
PLC端3+接所有变频器的S+,8-接所有S-,总线末端第一个和最后一个变频器要并120Ω电阻(实测没加电阻通讯距离超10米就抽风)
二、PLC程序核心——指针轮询大法
用指针轮询四台设备,比传统写法省了75%代码量:
//初始化
MOVB 16#09, SMB30 //19200/偶校验
MOVD &VB1000, AC1 //数据存储起始指针
//轮询核心代码
Network1:
LD SM0.0
FOR VW10, 1, 4 //循环4次对应4台设备
Network2:
LD SM0.0
MOVB VB10, MB_ADDR //站号存入
+I 1, VB10 //站号自增
//发送读取命令
MBUS_MSG:EN
MBUS_MSG:First=1
MBUS_MSG:Slave=VB10
MBUS_MSG:RW=0 //0=读取
MBUS_MSG:Addr=8193 //运行状态地址
MBUS_MSG:Count=6 //连续读6个寄存器
MBUS_MSG:DataPtr=*AC1
+I 12, AC1 //每台设备预留12字节存储空间
//频率给定示例(带超时保护)
TON T37, 50 //50ms超时
A T37
MOVW 4000, VW2000 //40.00Hz转成4000
三、MCGS触摸屏骚操作
在设备窗口直接绑定V区地址:
正反转按钮 → V1000.0/V1000.1
频率输入框 → VW2000
运行频率显示 → VD1012(浮点转换用!HexToFloat())
重点:在屏上做通讯心跳检测,用V5000做心跳寄存器,PLC每200ms+1,屏上设置数值变更触发报警。实测比单纯用通讯超时检测更灵敏。
四、扩展性设计
要新增设备只需:
- 修改FOR循环次数
- 调整数据存储区偏移量
- 复制粘贴报文处理程序块
寄存器地址对应表做成结构体形式:
运行状态 → 偏移+0
输出频率 → 偏移+2
电压值 → 偏移+4
电流值 → 偏移+6
五、避坑指南
- 三菱的电压值返回的是10倍值,要除以10再显示
- 写频率时遇到E.PUE错误,要把Pr.160设为0(开放参数写入)
- 用状态字第0位判断运行状态更可靠,比用实际转速判断更及时
完整程序包已整理好,包含接线图/参数表/注释完整的程序文件。需要的老铁评论区见~