作者 | 主题 |
---|---|
WWCWWC 至圣 经验值:71760 发帖数:8032 精华帖:145 |
楼主 2019-11-01 09:59:02
主题:200smart PLC与富士温控器实现modbus rtu通讯1 200smart PLC与富士温控器实现modbus rtu通讯1 近期,因富士PXF9系列温控器升级换代,原系列已经停产了。新的PXF9系列在参数及功能显示各方面均较老版本有了较大的提升。我司诸多的温度控制方式,大多采用西门子300cpu + cp340模块下挂几十个富士温控器实现温度记录及控制的。 为尽快熟悉新款富士温控器用modbus rtu通讯参数及原理,手头上又没有300的cpu及cp340通讯模块,今天就这个通讯模式用200 smart PLC做一下验证。 器材: 1) 西门子200 smart PLC,机型:SR30; 2) 富士温控器,机型:PXF 9AEY2-FWM00; 3) 若干导线及DP插头连接通讯,以太网线连接PC至PLC。 首先根据验证需要,给温控器上电,设置modbus rtu从站通讯参数:CH9通道设置 1) 设置从站地址:8(ST No)参数号:761 2) 设置通讯频率:9600 bps、无效验(none)参数号:762、763 3) 响应开始间隔时间:默认1(20mS)参数号:764 4) 最大站点号:默认0,设置为31参数号:768 程序:因为需要验证多个modbus rtu功能码地址状态,在Addr管脚用变量地址替换(起始地址码40007开始验证,读取P参数)。 初始化控制位及地址: 主站modbus rtu初始化: 轮询MSG指令: 写入SV值: 将程序编译,保持后下载到plc,检测与温控器的通讯连接正确,全部上电测试: 当将10进制数100的数据通过M0.5写入VW10 = 100后(地址码40003),观察富士温控器的温度数据为4,并将modbus rtu地址码,写入32001由VD100传送给VD104,得到实际的PV值,22: 由VW10发送100的数据给富士温控器,由VD1004指定的通讯地址32001,读取富士温控器的PV值22到VW12,通讯OK!测试完毕。 测试过程中容易出现错误小结: 1) 在调用2个(或多个)MSG指令控制(触发)位时,初始化控制位是必须的(程序网络1)内容,规避报警6; 2) 在调用MSG指令前,提前写好各管脚参数; 3) 正确连接好通讯管(针)脚,确保通讯正常,PLC侧RS-485:3+/8-,而富士温控器标设的RS485端子正好与PLC侧相反;3+ → 26#、8- → 25#; 4) 关于SV的PLC侧设置值1/25的倍数关系,通讯码40003测试了几个数据均呈这个比例算法(数据大于13进位1),将通讯码改为42003工业值后,为实际数据; 5) 新版富士温控器modbus rtu地址码中出现了内部值与工业值的概念,经测试为工业值为实际工程值,内部值为通讯数据值(需要换算); 6) 富士温控器某一些参数设置后需要重新上电初始化操作。 上述验证是对新款富士温控器的一些简单参数设置、读取验证,供应用者参考。 |