发个故事也是一波三折,刚都快写完了,360浏览器崩溃,写的东西全没了,无奈,只能重新来过。 12年自动化专业毕业后,留在了一个钢厂工作,首先接触的便是西门子的plc,接触的协议自然也是profibus DP、MPI、PPI、TCP/IP等与西门子相关的协议,对于MODBUS,仅仅停留在听说过,好像很厉害的层面上,一次偶然的机会,接触到了MODBUS协议,项目是300PLC通过PB-B-MODBUS总线桥(北京鼎实)与MODBUS从站通讯,PLC选择的是西门子CPU313-2DP,从站设备是一台加气机,主站CPU需要读取加气机的状态字及流量温度压力等数据,同时需要给控制字给加气机。由于之前没有接触过MODBUS协议及产品,再通读了网上的协议及PB-B-MODBUS总线桥的产品介绍之后便开始了测试。 1.首先,毫无疑问,需要进行硬件组态的配置:在安装完总线桥的GSD文件后,很轻松完成了组态;
上图显示的是加气机设备MODBUS协议的一小部分,以LNG出口温度为例,对每个数据进行解释,0x0035、0x0036指的是寄存器号,2指的是寄存器数目,int 32指的是数据类型,0.001指的是单位,R指的是只读,综合上述,我们知道了LNG出口温度这个数据存储在40000+53(16进制35转换)-1=40052开始的两个字中,PLC读取数据之后需要除以1000以得到正确数值
|
电工学习网 ( )
GMT+8, 2023-3-26 20:06