日韩A级毛片一区二区三区,麻豆影院,最新热门高清电影,好看的电视剧免费在线观看-wwwxxx污在线-com.www成人小视频-99自拍国语露脸无码

與西門子PLC實現(xiàn)Modbus-RTU通信實例

發(fā)布時間:2019-5-27    查看:11197

一、準備工具及材料

1.臺式電腦一臺,筆記本電腦一臺;

2.西門子200smart PLC一臺,

3.多功能電表DW9L-RC38DS9LDS7L一臺,溫控表TE系列一臺,

4.儀表說明書及通訊協(xié)議,

5.9針接口通訊線一根,

6.USB轉(zhuǎn)RS485轉(zhuǎn)換器一臺,

7.電源線,網(wǎng)線、網(wǎng)絡(luò)交換機等。


二、軟件安裝

軟件名稱:STEP 7-MicroWIN SMART,可從西門子網(wǎng)站下載。

三、梯形圖編程

1.主要編程思路

       PLC使用自帶的RS485接口與儀表進行通信連接,PLC作為主站,儀表為從站,使用標準Modbus-RTU通訊協(xié)議。調(diào)用編程軟件自帶的Modbus協(xié)議庫,實現(xiàn)與儀表的數(shù)據(jù)通信。

2MBUS_CTRL MBUS_MSG 指令介紹

       本示例使用單個主站及 MBUS_CTRL MBUS_MSG 指令。同一理念對使用第二個主站及 MB_CTRL2 MB_MSG2 指令的示例同樣適用。

 

3.電力儀表通信協(xié)議:

4.梯形圖編程

(1)設(shè)置PLC型號



(2)設(shè)置庫存儲器的地址分配(系統(tǒng)已分配VB0~VB285用于modbus通信使用,我們就從VB286開始)


(3)編輯符號表


(4)編輯狀態(tài)圖表


(5)編制第一、二段:置位標志位及通訊初始化:波特率Baud=9600,Parity=0無校驗,Port=0集成CPU內(nèi)RS485口,Timeout從站響應超時50msDone初始化完成返回"TURE",Error輸出錯誤結(jié)果。



(6)程序3-4:當MBUS_CTRL初始化完成后,M0.0 從關(guān)閉變?yōu)榻油〞r,延時T33=10mS時間后,置位第一條 MBUS_MSG 指令的啟用標志 (M2.0)=1。


(7)程序5讀第一臺從機設(shè)備,地址1,型號DW9LDS9LDS7L。當?shù)谝粋€啟用標志 (M2.0) 接通后,調(diào)用 MBUS_MSG 指令。只需為啟用該指令的第一次掃描設(shè)置 First 參數(shù)。該指令會對從站(Slave =1) 的 12個保持寄存器執(zhí)行讀取 (RW = 0) 操作。

      Modbus 主站對 Modbus 從站的12個保持寄存器執(zhí)行讀操作(A、B、C相電壓值)。

       PLC 會從儀表地址為 416385 0x4000)開始的保持寄存器中讀取到CPU內(nèi)部,并保存在以VB300 開始的12個字節(jié) V 存儲器中。

        讀0x4000開始的A相電壓值,需將0x4000轉(zhuǎn)換為十進制數(shù)0x4000→16384,再用400001+16384=416385。

       讀取的數(shù)據(jù)存放在 CPU 中的 VB300-VB311中;VB300,301,302,303對應A相電壓;VB304,305306,307對應B相電壓;VB308,309,310,311對應C相電壓。因為電壓值是雙字節(jié)存放,所以用VD300地址讀取A相電壓,VD304地址讀取B相電壓,VD308地址讀取C相電壓。


M0.4為啟動輪詢,將通信設(shè)備進行反復讀寫操作。



(8)程序6:第一條 MBUS_MSG 指令完成后("完成"(Done) 位從 0 變?yōu)?/span> 1),會清除第一條 MBUS_MSG 指令的啟用標志,然后設(shè)置第二條 MBUS_MSG 指令的啟用標志。


(9)程序7:第二次輪詢,讀電能值參數(shù):讀第一臺設(shè)備的頻率參數(shù)。第二個啟用標志 (M2.1) 接通時,調(diào)用第二條 MBUS_MSG 指令。只需為啟用該指令的第一次掃描設(shè)置 First 參數(shù)。該指令會對從站 1 2 個保持寄存器執(zhí)行讀取 (RW = 0) 操作。數(shù)據(jù)從 Modbus 從站中的地址 4164370x4034) 讀取,并復制到 CPU 中的 VB400 - VB4034 個字節(jié)VD400)。

(10)程序8-9:第二次讀數(shù)據(jù)輪詢結(jié)束,復位相關(guān)參數(shù)。



(11)程序10-11:輪詢讀第二臺設(shè)備,讀從機地址2的溫控表測量值參數(shù)。 MBUS_MSG 指令完成("完成"(Done) 位從 0 變?yōu)?/span> 1)后,清除 MBUS_MSG 指令的啟用標志。


(12)VW406中的值寫入溫控表SV設(shè)定值中。


四、編譯及程序下載


五、在線測試

     

六、串口監(jiān)控:在電腦上用USB轉(zhuǎn)RS485轉(zhuǎn)換器連接到RS485接線端上,監(jiān)控PLC與儀表的通信收發(fā)報文:

桦甸市| 乐至县| 高邑县| 东城区| 西乌珠穆沁旗| 深泽县| 高密市| 溧阳市| 通道| 东阿县| 鄂伦春自治旗| 大姚县| 渑池县| 黄骅市| 梁平县| 滦南县| 毕节市| 靖西县| 凤台县| 永仁县| 平顺县| 长宁县| 普兰店市| 铜川市| 山西省| 河池市| 道孚县| 盖州市| 长沙市| 犍为县| 甘谷县| 运城市| 宜良县| 秦安县| 留坝县| 平泉县| 灵璧县| 白城市| 海兴县| 阳西县| 灵璧县|