项目-----------硬件:PS 307 5A / CPU 315-2PN/DP CP341(带硬狗),IM153 ET200M
项目要求-----对3台变频器使用Modbus_RTU通讯控制(已查阅变频器说明书通讯部分,支持Modbus_RTU通讯)其启动、停止、故障复位、频率给定、采集实时频率、输出电流
对17台电机综合保护器(支持RS485通讯)使用Modbus_RTU通讯控制,通过保护器控制电机的启动、停止、故障、过流、和电机实时电流信号。
S7-300为主站;变频器、电机综合保护器为从站
现在疑惑的地方:通过阅读《CP340 /CP341 /CP440/ CP441编程及通信》觉得应该使用FB8发送一个数据块(如DB1)止从站,这个DB1数据块中有从站的地址,主站的功能码、从站的寄存器起始地址、要读取的从站寄存器个数。
可是我在查阅变频器的通讯部分时,变频器也有其自己的功能码,和每个功能码的意义
现摘录如下:
功能码3-------读取N个寄存器 (N最大16)
功能码6-------改写单个寄存器,掉电保存
功能码8-------回路测试
功能码16-----改写N个寄存器,掉电保存(N最大16)
功能码23----读/写N个寄存器(N最大16)
在《以用于 PtP CP MODBUS 协议RTU 格式 S7 的 SIMATIC 可加载驱动程序为主站操作说明》中也有S7系统的功能码。主站和从站的功能码应该怎样协调使用
听说用CP341的硬狗和只用CP341不用硬狗的通讯编程是不一样的,买硬狗时光盘上有特殊的发送和接收功能块,和PtP CP341中的FB8、FB7不同,是这样的吗?
本人第一次使用Modbus_RTU做主、从通讯,现在脑子觉得云里雾里,请个各位前辈有时间,针对这个项目和提的问题,做些指点!谢谢