三菱FX3U PLC FX3U_485BD自由口跟23个上海众晨Z2000变频器通讯,读运行电流,写入设定频率;读RKC RD700温控表温度值,读电能表正向有功功率;程序简洁明了,注释详细。 单PLC程序,适合初学者入门。
在自动化控制领域,PLC与多种设备进行通讯以实现复杂的数据交互是常见需求。今天咱就来讲讲三菱FX3U PLC 通过FX3U_485BD模块以自由口模式和23个上海众晨Z2000变频器、RKC RD700温控表以及电能表进行通讯的实战案例,重点实现读取变频器运行电流、写入设定频率,读取温控表温度值以及电能表正向有功功率。这个单PLC程序很适合初学者入门。
硬件连接
首先,得把硬件都接好。将FX3U_485BD模块安装到三菱FX3U PLC 上,然后通过485总线把PLC与23个上海众晨Z2000变频器、RKC RD700温控表以及电能表连接起来。要注意485总线的A、B线别接反咯,不然通讯可就出问题啦。
通讯协议分析
上海众晨Z2000变频器
上海众晨Z2000变频器通常使用Modbus RTU协议。读取运行电流和写入设定频率都得遵循这个协议规定的功能码。比如读取运行电流一般用功能码03H,写入设定频率用功能码06H 。
RKC RD700温控表
RKC RD700温控表一般也支持Modbus RTU协议,读取温度值同样按照其对应的功能码和寄存器地址来操作。
电能表
电能表也是基于Modbus RTU协议通讯,正向有功功率的读取也遵循其特定的功能码和寄存器地址。
PLC程序编写
初始化部分
LD M8000 // 运行监控常开触点,PLC运行时一直ON MOV K9600 D8120 // 设置通讯波特率为9600bps MOV K0 D8121 // 设置通讯站号为0 MOV K1 D8129 // 设置通讯超时时间为100ms(这里K1代表100ms ) SET M8161 // 设置为8位数据模式,无校验,1位停止位这部分程序是对通讯参数进行初始化设置。M8000是运行监控常开触点,只要PLC运行它就一直闭合。通过MOV指令设置通讯波特率(D8120 )、通讯站号(D8121 )、通讯超时时间(D8129 ),SET指令设置数据模式为8位数据,无校验,1位停止位。
读取变频器运行电流
LD X0 // 假设启动读取变频器电流的按钮接在X0 MOV K1 D100 // 变频器站号设为1,这里站号可根据实际情况调整 MOV K4300 D101 // 运行电流寄存器地址 MOV K1 D102 // 读取1个寄存器 MOV K3 D103 // 功能码03H,读取保持寄存器 CALL P100 // 调用通讯子程序这里用LD指令判断启动按钮X0是否按下,按下后通过MOV指令设置变频器站号、运行电流寄存器地址、读取寄存器个数以及功能码,最后调用通讯子程序P100 。
写入变频器设定频率
LD X1 // 假设启动写入变频器频率的按钮接在X1 MOV K1 D110 // 变频器站号设为1 MOV K4200 D111 // 设定频率寄存器地址 MOV D200 D112 // 要写入的设定频率值存放在D200 ,这里可根据实际需求更改 MOV K6 D113 // 功能码06H,写单个寄存器 CALL P100 // 调用通讯子程序同样,通过LD指令判断按钮X1 ,设置好站号、寄存器地址、要写入的值和功能码后调用通讯子程序。
读取温控表温度值
LD X2 // 假设启动读取温控表温度的按钮接在X2 MOV K2 D120 // 温控表站号设为2 MOV K3000 D121 // 温度值寄存器地址 MOV K1 D122 // 读取1个寄存器 MOV K3 D123 // 功能码03H CALL P100 // 调用通讯子程序这里和读取变频器电流类似,只是针对温控表设置站号、寄存器地址等参数。
读取电能表正向有功功率
LD X3 // 假设启动读取电能表功率的按钮接在X3 MOV K3 D130 // 电能表站号设为3 MOV K4000 D131 // 正向有功功率寄存器地址 MOV K2 D132 // 读取2个寄存器 MOV K3 D133 // 功能码03H CALL P100 // 调用通讯子程序也是通过按钮触发,设置好电能表相关参数后调用通讯子程序。
通讯子程序P100
P100: LD M8122 // 发送请求标志 MOV D100 D20 // 站号 MOV D101 D21 // 起始寄存器地址 MOV D102 D22 // 读取/写入寄存器个数 MOV D103 D23 // 功能码 RS D20 D0 D30 D1 // 执行通讯 RET在通讯子程序里,先判断发送请求标志M8122 ,然后将设置好的站号、寄存器地址等参数传到指定寄存器,最后通过RS指令执行通讯。
总结
通过以上步骤,我们实现了三菱FX3U PLC与多个设备的通讯,能方便地读取和写入数据。对于初学者来说,这是一个很好的入门案例,希望大家在实践中不断掌握PLC通讯的技巧,开发出更复杂、更实用的自动化控制系统。
三菱FX3U PLC FX3U_485BD自由口跟23个上海众晨Z2000变频器通讯,读运行电流,写入设定频率;读RKC RD700温控表温度值,读电能表正向有功功率;程序简洁明了,注释详细。 单PLC程序,适合初学者入门。