該案例是西門子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個字
從站程序
MB4\5先傳送到時V區,才能實現通信
由于從站是以VB10為起始地址,因此VB40VB41對應的MODBUS
地址為[(40-10)+2]/2=16,為40016。
從站的VD50(VB50-VB54)對應的MODBUS地址為40021
從站編寫完程序后,注意要分配庫存儲器
主站程序
從站起始地址是VW10,對應40001地址
40016地址對應VW40,讀到VW200