该案例是西门子PLC 200Smart与200Smart通信程序的梯形图实例。
一、实现的功能:
(1) 主站读取从站的VW10---VW20六个字,存入主站的VW0—VW10。
(2) 主站读取从站的MB4MB5存入主站的MB4MB5。
(3) 主站把VD30写到从站的VD50
分析说明
1、该案例有3个读写功能要完成,由于MODBUS通信某一时间只能有一条 MBUS_MSG 指令处于激活状态,因此需要轮询通信。
2、由于MBUS_MSG指令不能使用M存储器,因此需先在从站编写M区传送到V区程序,再通过通信把V区数据读入到主站,主站再编写V区传送到M区指令,完成从站的M区数据到主站的M区。
3、VD传送是4个字节,2个字
从站程序
由于从站是以VB10为起始地址,因此VB40VB41对应的MODBUS
地址为[(40-10)+2]/2=16,为40016。
从站的VD50(VB50-VB54)对应的MODBUS地址为40021
从站编写完程序后,注意要分配库存储器
主站程序
从站起始地址是VW10,对应40001地址
40016地址对应VW40,读到VW200