在實際的工業(yè)自動化設(shè)備應(yīng)用中,各種通信是必不可少的,比如PN通訊、S7通信、MODBUS TCP通信、MODBUS通信等等;而使用最廣的實屬MODBUS通信了,畢竟MODBUS是一款公開、免費、通用的通信協(xié)議;可往往很多時候在工業(yè)現(xiàn)場進行設(shè)備調(diào)試時,偶爾會無故導(dǎo)致通信失敗或根本通信不上,而此時借用一個調(diào)試工具來進行測試到底可能存在的因素在哪;其次,作為初學(xué)者而言,想學(xué)習(xí)MODBUS通信,在不增加通信儀表的情況下也可以借助調(diào)工具進行測試學(xué)習(xí)。
下面通過西門子200SMART PLC作為MODBUS主站,借助調(diào)試工具作從站進行通信測試。
通信任務(wù)如圖1所示。

圖1:數(shù)據(jù)交互示意圖
硬件準備:
RS485轉(zhuǎn)USB接頭一個、RS485公頭一個、電纜線2根,如圖2所示;PC電腦一臺、200SMART一臺、通信網(wǎng)線一根。CPU本體端口引腳說明如圖3所示。

圖2:USB轉(zhuǎn)串口硬件

圖3:串口引腳說明
通信指令:西門子200SMART庫指令自動集成MODBUS通訊庫指令,根據(jù)不同的端口調(diào)用不同的庫指令本示例會用到的2條主站指令,圖4為主站初始化指令;圖5為主站數(shù)據(jù)讀寫指令。

圖4:主站初始化指令

圖5:主站數(shù)據(jù)讀寫指令
實施步驟:
1.在SMART側(cè)調(diào)用MODBUS主站庫指令進行編程,如圖6/7所示。

圖6:主站數(shù)據(jù)讀寫程序

圖7:主站數(shù)據(jù)讀寫程序
2.通信程序編寫完成后需要分配286個V存儲區(qū)用于內(nèi)部運算,如圖8所示。

圖8:分配庫存儲器
3.下載程序后進行測試,需要把圖2的硬件USB一端插在電腦端,RS485公頭插在CPU本體串口上面;插接好后在電腦管理器中查看具體的COM口。

圖9:端口號查看
4.打開Modsim32調(diào)試軟件,在連接設(shè)置中選擇與圖9匹配的端口6,如圖10所示;選擇連接端口后會彈出協(xié)議參數(shù)設(shè)置對話框,如圖11所示。需要注意,通信參數(shù)務(wù)必和初始化指令的參數(shù)一致才行。

圖10:連接設(shè)置

圖11:設(shè)置通信參數(shù)
5.在圖10中的“文件”菜單中選擇新建,device ID表示從站地址,設(shè)置為2。
第一組數(shù)據(jù)讀取從站40001(VW300-VW308)開始的連續(xù)5個字的數(shù)據(jù)放在主站VW200開始的5個字中,在調(diào)試軟件中分別在40001連續(xù)的5個字里面寫數(shù)據(jù),則在200SMART這邊監(jiān)控VW200-VW208的數(shù)據(jù)是一樣的,如圖12所示。

圖12:數(shù)據(jù)交換
第二組數(shù)據(jù)主站I0.0連續(xù)8個位的狀態(tài)寫給從站Q0.0連續(xù)的8個位,當強制I0.2和I0.4時,從站0003 0005的狀態(tài)1;如圖13所示。

圖13:數(shù)據(jù)交換
第三組讀取從站QB6的數(shù)據(jù)存在主站VB210中,在調(diào)試軟件中分別把Q6.0 Q6.1置位為1,在SMART側(cè)VB210的數(shù)據(jù)為3,如圖14所示。

圖14:數(shù)據(jù)交換
第四組讀取從站AIW18的數(shù)據(jù)存在主站VW212中,在調(diào)試軟件中把30010設(shè)置為457的值后,在SMART側(cè)VW212的數(shù)據(jù)為457,如圖15所示。

圖15:數(shù)據(jù)交換
-
plc
+關(guān)注
關(guān)注
5051文章
14606瀏覽量
487060 -
通信
+關(guān)注
關(guān)注
18文章
6393瀏覽量
140072 -
MODBUS
+關(guān)注
關(guān)注
28文章
2457瀏覽量
83277
原文標題:MODBUS通信異常?調(diào)試助手來幫忙
文章出處:【微信號:gkongbbs,微信公眾號:工控論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
工業(yè)通信的“超級翻譯官”Modbus轉(zhuǎn)Profinet如何讓稱重設(shè)備實現(xiàn)語言自由
請教labview 的opc server 和外部的modbus slave 通信失敗的后續(xù)處...
航天天盾(DCS)異常監(jiān)測與應(yīng)急恢復(fù)解決方案
航天天盾(DCS)異常監(jiān)測與應(yīng)急恢復(fù)解決方案
請問OMAPL138平臺上有實現(xiàn)MODBUS設(shè)備方協(xié)議的解決方案嗎?
亞信AX58200 EtherCAT轉(zhuǎn)Modbus TCP網(wǎng)關(guān)解決方案介紹視頻
使用40K的內(nèi)部時鐘發(fā)現(xiàn)計時異常的解決方案
核間通信(IPC)解決方案
Modbus的應(yīng)用及解決方案
基于Modbus TCP協(xié)議實現(xiàn)PC機與PLC的串行通信
基于ARM處理器的高效異常處理解決方案
Modbus轉(zhuǎn)Profinet解決方案,輕松搭建工業(yè)通信“橋梁”
MODBUS通信異常解決方案
評論