1摘要
在實際的工控應用中,RS485總線上經(jīng)常會掛接多個設備,不同的設備的廠商可能不一致,一旦出現(xiàn)問題,就很難解耦是誰的問題。本文解釋一種簡單的問題解耦方法,即學即精通。
2問題描述
工業(yè)現(xiàn)場應用最多的總線就是RS485,RS485用到最多的協(xié)議就是modbus-rtu,不同的廠家都通過該總線和協(xié)議進行數(shù)據(jù)交互。這也存在一個問題,不同的廠家的,不同的技術人員水平參差不齊,一旦系統(tǒng)出現(xiàn)問題,互相之間的扯皮自然少不了。
例如下圖中的系統(tǒng),一個主機帶4個從機,數(shù)據(jù)無法讀取到,問題的解耦還是比較棘手。有沒有一種簡單的方案,引入一個裁判,能夠簡單快速解耦是哪一方的問題。
3知識科普
關于使用RS485的現(xiàn)場,需要先了解以下的知識:
1) 90%以上的RS485通信之間使用的是modbus-rtu協(xié)議,該協(xié)議全球通用;
2) RS485標準電平全球通用,只要標注為RS485都可以互相連接,RS485輸出的電平是0~5V,是通過總線上A-B的差值判斷邏輯1還是邏輯0,A-B>0標示為邏輯1,A-B<0標示為邏輯0。
3) modbus-rtu 數(shù)據(jù)幀由地址、功能碼、數(shù)據(jù)和校驗組成,不同的功能碼的數(shù)據(jù)字節(jié)數(shù)不同。
Modbus RTU協(xié)議數(shù)據(jù)幀是沒有起始符和結束符,所以兩個數(shù)據(jù)幀之間需要靠時間間隔來區(qū)分。協(xié)議中規(guī)定信息幀發(fā)送至少要有3.5個字符時間的停頓間隔。即在一個數(shù)據(jù)幀的最后一個字符傳輸完成之后,需要至少3.5個字符時間的停頓標定數(shù)據(jù)幀的結束,一個新的數(shù)據(jù)幀可在此停頓之后開始。
如果一個新消息在小于3.5個字符時間內接著前個消息開始,接受的設備將認為它是前一數(shù)據(jù)幀的延續(xù),這將導致CRC校驗出錯。同時整個數(shù)據(jù)幀必須作為一連續(xù)的流傳輸。如果在幀完成之前有超過1.5字符時間的停頓時間,接受設備將刷新不完整的數(shù)據(jù)幀從而認為存在丟包現(xiàn)象。
那么一個字符是什么呢,他由1個bit起始位,8bit數(shù)據(jù)位,1個bit奇偶校驗位(或者沒有檢驗位,停止位變成2個),1個bit停止位組成,在發(fā)送時從起始位開始。
4Mthings簡介
Mthings主要是模擬Modbus設備,可以配置為主和從設備。
2) 模擬仿真Modbus設備軟件,支持Modbus從機被動讀寫功能。
3) 支持多設備、多通道并發(fā)運行,無設備個數(shù)限制。
4) 支持持久化數(shù)據(jù)配置、無菜單設計,操作友好。
5) 支持MODBUS-RTU、MODBUS-ASCII、MODBUS-TCP。
6) 支持串口、TCP客戶端、TCP服務器(可接入多客戶端)、UDP單播。
7) 支持全鏈路報文監(jiān)控、存儲、分析。
8)支持豐富的鏈路丟包統(tǒng)計方法。
9) 支持數(shù)據(jù)曲線錄波,統(tǒng)計數(shù)據(jù)極值和均值,并可導出所有數(shù)據(jù)。
10) 支持MODBUS數(shù)據(jù)配置模板導入導出。
11) 支持多種變化數(shù)據(jù)模擬方法。
12)支持數(shù)據(jù)二次加工,界面呈現(xiàn)原始真實數(shù)據(jù)。
13) 支持良好的非標協(xié)議適配。
14) 性能優(yōu)異,支持接入> 500設備節(jié)點,超20K數(shù)據(jù)點。
15) 永久免費,免安裝,中文。
5解耦舉例
我以PLC和HMI通信為例,假設兩者無法正常通信,需要一個中間的裁判判定問題出在誰。解耦的步驟如下。
1) 將安裝有Mthings的PC使用USB轉485模塊和PLC連接。如下圖
2)本次實驗要做的是通過電腦模擬RS485主站,PLC作為從站,使用Modbus-RTU協(xié)議。PLC端的配置如下:
3) Mthings配置PC為主機,地址和上述的PLC保持一致。
4) 配置串口的波特率信息,和PLC保持一致。
5) 配置需要訪問的寄存器地址。地址是plc真實的地址。
6)可以批量讀取PLC的數(shù)據(jù),或者雙擊“數(shù)值”即可以訪問PLC,如下圖,訪問PLC的數(shù)據(jù)為123,和第一步的plc中的數(shù)據(jù)保持一致。這就證明了,PLC作為從站,是正常的,如何hmi和plc無法通信,則問題可以解耦到hmi身上。
6總結延伸
本文接受的使用mthings解耦RS485通信中的modbus通信故障方法,可以快速解耦和定位問題,對于用戶幾乎無需對modbus協(xié)議的知識,使用該工具有兩個好處:
1) 基本是配置式,用戶無需對modbus協(xié)議有較深的理解;
2) 可以利用pc機(或者筆記本)模擬主機和從機,可以快速解耦各個廠商之間的問題。
審核編輯:湯梓紅
-
RS485
+關注
關注
39文章
1142瀏覽量
82137 -
MODBUS
+關注
關注
28文章
1760瀏覽量
76834 -
總線
+關注
關注
10文章
2866瀏覽量
87984 -
RTU
+關注
關注
0文章
404瀏覽量
28620 -
解耦
+關注
關注
0文章
40瀏覽量
11887
原文標題:【避坑指南】使用Mthing工具解耦Modbus問題
文章出處:【微信號:創(chuàng)易棧,微信公眾號:創(chuàng)易棧】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論