時間:2008-08-18 10:06:00來源:ronggang
摘 要:本文介紹了Modbus的控制網(wǎng)絡及協(xié)議特點,著重分析Modbus ACSII模式的消息幀組成、校驗碼的計算及主要的功能。并對利用Modbus協(xié)議實現(xiàn)遠程無線通信的有關(guān)要點作了說明。
關(guān)鍵詞:Modbus網(wǎng)絡;Modbus協(xié)議;LRC校驗碼;無線數(shù)傳modem;半雙工
1 引言
利用數(shù)傳無線電臺進行遠程通信可以通過多種編程方法來實現(xiàn)。但是如果在通信可靠性、兼容性和組網(wǎng)的靈活性方面有要求,那么就不是一般通信程序能實現(xiàn)的。最好是能利用一個現(xiàn)成的、應用最廣泛的、可靠性較高的、通信效率較好的、實現(xiàn)較容易的、經(jīng)過充分實踐證明的通用通信協(xié)議來完成。Modbus協(xié)議正是完全符合上述要求的諸多通信協(xié)議中的一種。
Modbus協(xié)議是由美國可編程控制器制造商莫迪康(Modicon Inc.)公司出品的一種應用于工業(yè)通信和分布式控制系統(tǒng)的協(xié)議?,F(xiàn)已被眾多的硬件廠商所支持,已經(jīng)成為一通用工業(yè)標準。通過此協(xié)議,控制器之間、控制器經(jīng)由網(wǎng)絡(例如以太網(wǎng))和其它設(shè)備之間可以通信。由于Modbus協(xié)議完全公開、實現(xiàn)簡單、硬件要求低、可靠性好等特點,已成為構(gòu)建低速網(wǎng)絡(數(shù)據(jù)采集、儀表等)通信的最佳選擇。
2 Modbus協(xié)議
2.1 協(xié)議簡介
Modbus協(xié)議通信使用主—從技術(shù),即僅有一臺設(shè)備(主設(shè)備)能初始化傳輸(查詢)。其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)作出相應回應。圖1是Modbus協(xié)議的詢問應答環(huán)路。典型的主設(shè)備:主機和可編程儀表。典型的從設(shè)備:可編程控制器。
圖1 主從查詢——回應周期表
主設(shè)備發(fā)送的一個含有指定編址的請求報文到通訊線路上;從設(shè)備則從通訊線路上檢測報文是否含有自身編址。如果報文編址與自身編址相同則接收此報文進行處理。從機報文處理的過程是,如果報文正確,則按報文要求執(zhí)行任務,然后再將正確的回應報文返回給發(fā)送者;否則只返回一個錯誤信息報文給發(fā)送者。
Modbus協(xié)議上允許1臺主機和至多247臺從機。只有主機才能啟動事務處理程序。事務處理可以是應答式(只對一臺從機尋址),亦可是廣播式(無應答,對所有從機尋址)。事務處理程序由詢問和應答幀組成,或由一個廣播幀組成。
Modbus協(xié)議提供兩種傳輸模式供用戶選擇。一種模式是ASCII(美國標準信息交換代碼),另一種模式是RTU(遠程終端設(shè)備)。這兩種模式從實現(xiàn)通信的功能上看是完全一樣的。ASCII模式主要優(yōu)點是字符發(fā)送的時間間隔可達到1秒而不產(chǎn)生錯誤,較為適用于長距離、低速率的通信應用(如無線電臺通信等)。RTU模式則較為適用于短距離、高速率的通信應用。在控制系統(tǒng)中應用較多。
由于本文主要是利用Modbus協(xié)議的ASCII模式來實現(xiàn)無線通信。因此著重介紹Modbus協(xié)議的ASCII模式。
2.2 ASCII模式格式
使用ASCII模式,消息以冒號(:)字符(ASCII碼 3AH)開始,以回車換行符結(jié)束(ASCII碼 0DH,0AH)。
其它域可以使用的傳輸字符是十六進制的0...9,A...F。網(wǎng)絡上的設(shè)備不斷偵測“:”字符,當有一個冒號接收到時,每個設(shè)備都解碼下個域(地址域)來判斷是否發(fā)給自己的。
一個典型消息幀如下所示:
圖2 ASCII消息幀
起始位字段表示一幀報文的開始。
地址碼字段表示接收主機報文的從機地址。用戶必須設(shè)置每臺從機的地址。
功能碼字段通知從站應執(zhí)行何種功能。
數(shù)據(jù)字段含有從機執(zhí)行某項具體功能的信息,或含有從機應答詢問的信息,這些信息可以是數(shù)值、地址參數(shù)或范圍。
校驗碼字段是用來檢查通訊報文有無錯誤。
2.3 LRC校驗
ASCII模式采用LRC方法進行錯誤校驗。具體為:
A、LRC域檢測了消息域中除開始的冒號及結(jié)束的回車換行號外的內(nèi)容。
B、LRC域是一個包含一個8位二進制值的字節(jié)。LRC值由傳輸設(shè)備來計算并放到消息幀中,接收設(shè)備在接收消息的過程中計算LRC,并將它和接收到消息中LRC域中的值比較,如果兩值不等,說明有錯誤。
C、LRC方法是將消息中的8Bit的字節(jié)連續(xù)累加,丟棄了進位。
LRC簡單函數(shù)如下:
static unsigned char LRC(auchMsg,usDataLen)
unsigned char *auchMsg ; /* 要進行計算的消息 */
unsigned short usDataLen ; /* LRC 要處理的字節(jié)的數(shù)量*/
{ unsigned char uchLRC = 0 ; /* LRC 字節(jié)初始化 */
while (usDataLen——) /* 傳送消息 */
uchLRC += *auchMsg++ ; /* 累加*/
return ((unsigned char)(-((char_uchLRC))) ;
}
3 功能描述
3.1功能概述
Modbus協(xié)議總共有24種功能。其中主要的有8種,分別如圖3所示:
圖3 Modbus協(xié)議主要功能
Modbus協(xié)議原意是為了實現(xiàn)可編程控制器的高效聯(lián)網(wǎng)通信。在此8種功能中其通信功能有所重復。有考慮到實現(xiàn)的簡易性,在無線通信應用中,其實只需功能04及功能16即可。
3.2 讀輸入寄存器組(功能碼04)
例如:讀8號從機的寄存器組。起始地址是30123,寄存器個數(shù)是2個的報文格式如圖4所示:
讀輸入寄存器組詢問報文:
讀輸入寄存器組應答報文:
圖4 讀輸入寄存器組報文格式
3.3 寫多個寄存器(功能碼16)
本功能可以修改控制器內(nèi)多個寄存器的內(nèi)容,不用的高位必須置0。本功能碼支持廣播模式(即從機地址為0)。例如:將08從機的40210、40211寄存器置成0835h和0312h的報文如圖5所示。
寫多個寄存器詢問報文:
寫多個寄存器應答報文:
圖5寫多個寄存器報文格式
4 Modbus協(xié)議在無線通信中的實現(xiàn)
4.1 Modbus口與無線數(shù)傳modem口的連接
Modbus口及無線數(shù)傳modem口均采用標準9芯串行口方式,使用其中部分引腳。如圖6所示
圖6 Modbus口與無線數(shù)傳modem口的連接
4.2 通信方式的全雙工轉(zhuǎn)半雙工
Modbus本身屬于半雙工的通信協(xié)議,而無線數(shù)傳modem一般只能工作于半雙工方式。無線數(shù)傳modem工作時,當RTS控制線為低電平,modem處于發(fā)送狀態(tài),將TXD的信號以載波的方式發(fā)送出去;當RTS控制線為高電平時,則modem處于接收狀態(tài),將接到的載波信號經(jīng)檢波后送回Modbus口。
如果所有的主從設(shè)備均采用半雙工方式通信時則用Modbus協(xié)議實現(xiàn)無線通信較為容易。然而如果在整個通信網(wǎng)絡中有部分從機采用全雙工方式工作時,則必須將此部分從機的通信機制改為半雙工。
例如一個遠程主機與一個以Modicon TSX SCP 111通信卡為從機的PLC進行 Modbus無線通信時,就必須在Modicon TSX SCP 111側(cè)增加一塊全雙工轉(zhuǎn)半雙工卡。原因,Modicon TSX 111無論RXD是否存在有用信號均在每個通信周期均使CTS出現(xiàn)一次低電平(使電臺發(fā)射),擾亂了正常的通信。
5 結(jié)論
湛江市自來水公司寸金加壓站無人值守控制系統(tǒng)就是利用上述方法成功地實現(xiàn)了遠程無線遙控加壓站的機泵操作。實踐證明:運用Modbus協(xié)議來實現(xiàn)無線通信,使得通信可靠,系統(tǒng)結(jié)構(gòu)簡單,擴展性好,能滿足多數(shù)工程的實際需要。
參考文獻:
[1] MODICON, Inc., Industrial Automation Systems 《Modicon Modbus Protocol Reference Guide》,June 1996
[2] 陳柏金,通過串行口訪問Modbus現(xiàn)場控制網(wǎng)絡,微計算機信息2003.1.
標簽:
中國傳動網(wǎng)版權(quán)與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.wangxinlc.cn)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責任。
相關(guān)資訊
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測節(jié)拍...
2025-03-31
應用案例 | 使用宏集TELE監(jiān)控繼電器監(jiān)控...
2025-03-26
激光閃耀 智慧引領(lǐng) | WISE MASER 黑武士...
2025-03-20