時間:2008-08-18 10:06:00來æºï¼šronggang
摘 è¦ï¼šæœ¬æ–‡ä»‹ç´¹äº†Modbus的控制網絡åŠå”è°ç‰¹é»žï¼Œè‘—é‡åˆ†æžModbus ACSII模å¼çš„æ¶ˆæ¯å¹€çµ„æˆã€æ ¡é©—碼的計算åŠä¸»è¦çš„功能。并å°åˆ©ç”¨Modbuså”è°å¯¦ç¾é 程無線通信的有關è¦é»žä½œäº†èªªæ˜Žã€‚
é—œéµè©žï¼šModbus網絡;Modbuså”è°;LRCæ ¡é©—ç¢¼;無線數傳modem;åŠé›™å·¥
1 引言
利用數傳無線電臺進行é 程通信å¯ä»¥é€šéŽå¤šç¨®ç·¨ç¨‹æ–¹æ³•來實ç¾ã€‚但是如果在通信å¯é 性ã€å…¼å®¹æ€§å’Œçµ„ç¶²çš„éˆæ´»æ€§æ–¹é¢æœ‰è¦æ±‚ï¼Œé‚£ä¹ˆå°±ä¸æ˜¯ä¸€èˆ¬é€šä¿¡ç¨‹åºèƒ½å¯¦ç¾çš„ã€‚æœ€å¥½æ˜¯èƒ½åˆ©ç”¨ä¸€å€‹ç¾æˆçš„ã€æ‡‰ç”¨æœ€å»£æ³›çš„ã€å¯é 性較高的ã€é€šä¿¡æ•ˆçŽ‡è¼ƒå¥½çš„ã€å¯¦ç¾è¼ƒå®¹æ˜“çš„ã€ç¶“éŽå……分實è¸è‰æ˜Žçš„通用通信å”è°ä¾†å®Œæˆã€‚Modbuså”è°æ£æ˜¯å®Œå…¨ç¬¦åˆä¸Šè¿°è¦æ±‚的諸多通信å”è°ä¸çš„一種。
Modbuså”è°æ˜¯ç”±ç¾Žåœ‹å¯ç·¨ç¨‹æŽ§åˆ¶å™¨åˆ¶é€ 商莫迪康(Modicon Inc.)公å¸å‡ºå“的一種應用于工æ¥é€šä¿¡å’Œåˆ†å¸ƒå¼æŽ§åˆ¶ç³»çµ±çš„å”è°ã€‚ç¾å·²è¢«çœ¾å¤šçš„ç¡¬ä»¶å» å•†æ‰€æ”¯æŒï¼Œå·²ç¶“æˆç‚ºä¸€é€šç”¨å·¥æ¥æ¨™æº–ã€‚é€šéŽæ¤å”è°ï¼ŒæŽ§åˆ¶å™¨ä¹‹é–“ã€æŽ§åˆ¶å™¨ç¶“ç”±ç¶²çµ¡ï¼ˆä¾‹å¦‚ä»¥å¤ªç¶²ï¼‰å’Œå…¶å®ƒè¨å‚™ä¹‹é–“å¯ä»¥é€šä¿¡ã€‚由于Modbuså”è°å®Œå…¨å…¬é–‹ã€å¯¦ç¾ç°¡å–®ã€ç¡¬ä»¶è¦æ±‚低ã€å¯é 性好ç‰ç‰¹é»žï¼Œå·²æˆç‚ºæ§‹å»ºä½Žé€Ÿç¶²çµ¡ï¼ˆæ•¸æ“šé‡‡é›†ã€å„€è¡¨ç‰ï¼‰é€šä¿¡çš„æœ€ä½³é¸æ“‡ã€‚
2 Modbuså”è°
2.1 å”è°ç°¡ä»‹
Modbuså”è°é€šä¿¡ä½¿ç”¨ä¸»—從技術,å³åƒ…有一臺è¨å‚™ï¼ˆä¸»è¨å‚™ï¼‰èƒ½åˆå§‹åŒ–傳輸(查詢)。其它è¨å‚™ï¼ˆå¾žè¨å‚™ï¼‰æ ¹æ“šä¸»è¨å‚™æŸ¥è©¢æä¾›çš„æ•¸æ“šä½œå‡ºç›¸æ‡‰å›žæ‡‰ã€‚圖1是Modbuså”è°çš„è©¢å•æ‡‰ç”環路。典型的主è¨å‚™ï¼šä¸»æ©Ÿå’Œå¯ç·¨ç¨‹å„€è¡¨ã€‚典型的從è¨å‚™ï¼šå¯ç·¨ç¨‹æŽ§åˆ¶å™¨ã€‚
圖1 主從查詢——回應周期表
主è¨å‚™ç™¼é€çš„䏀個嫿œ‰æŒ‡å®šç·¨å€çš„è«‹æ±‚å ±æ–‡åˆ°é€šè¨Šç·šè·¯ä¸Š;從è¨å‚™å‰‡å¾žé€šè¨Šç·šè·¯ä¸Šæª¢æ¸¬å ±æ–‡æ˜¯å¦å«æœ‰è‡ªèº«ç·¨å€ã€‚å¦‚æžœå ±æ–‡ç·¨å€èˆ‡è‡ªèº«ç·¨å€ç›¸åŒå‰‡æŽ¥æ”¶æ¤å ±æ–‡é€²è¡Œè™•ç†ã€‚å¾žæ©Ÿå ±æ–‡è™•ç†çš„éŽç¨‹æ˜¯ï¼Œå¦‚æžœå ±æ–‡æ£ç¢ºï¼Œå‰‡æŒ‰å ±æ–‡è¦æ±‚執行任務,然åŽå†å°‡æ£ç¢ºçš„å›žæ‡‰å ±æ–‡è¿”å›žçµ¦ç™¼é€è€…;å¦å‰‡åªè¿”回一個錯誤信æ¯å ±æ–‡çµ¦ç™¼é€è€…。
Modbuså”è°ä¸Šå…許1臺主機和至多247è‡ºå¾žæ©Ÿã€‚åªæœ‰ä¸»æ©Ÿæ‰èƒ½å•Ÿå‹•事務處ç†ç¨‹åºã€‚事務處ç†å¯ä»¥æ˜¯æ‡‰ç”å¼ï¼ˆåªå°ä¸€è‡ºå¾žæ©Ÿå°‹å€ï¼‰ï¼Œäº¦å¯æ˜¯å»£æ’å¼ï¼ˆç„¡æ‡‰ç”ï¼Œå°æ‰€æœ‰å¾žæ©Ÿå°‹å€ï¼‰ã€‚事務處ç†ç¨‹åºç”±è©¢å•和應ç”幀組æˆï¼Œæˆ–由一個廣æ’幀組æˆã€‚
Modbuså”è°æä¾›å…©ç¨®å‚³è¼¸æ¨¡å¼ä¾›ç”¨æˆ¶é¸æ“‡ã€‚ä¸€ç¨®æ¨¡å¼æ˜¯ASCII(美國標準信æ¯äº¤æ›ä»£ç¢¼ï¼‰ï¼Œå¦ä¸€ç¨®æ¨¡å¼æ˜¯RTU(é 程終端è¨å‚™ï¼‰ã€‚這兩種模å¼å¾žå¯¦ç¾é€šä¿¡çš„功能上看是完全一樣的。ASCII模å¼ä¸»è¦å„ªé»žæ˜¯å—符發é€çš„æ™‚é–“é–“éš”å¯é”到1秒而ä¸ç”¢ç”ŸéŒ¯èª¤ï¼Œè¼ƒç‚ºé©ç”¨äºŽé•·è·é›¢ã€ä½Žé€ŸçŽ‡çš„é€šä¿¡æ‡‰ç”¨ï¼ˆå¦‚ç„¡ç·šé›»è‡ºé€šä¿¡ç‰ï¼‰ã€‚RTU模å¼å‰‡è¼ƒç‚ºé©ç”¨äºŽçŸè·é›¢ã€é«˜é€ŸçŽ‡çš„é€šä¿¡æ‡‰ç”¨ã€‚åœ¨æŽ§åˆ¶ç³»çµ±ä¸æ‡‰ç”¨è¼ƒå¤šã€‚
ç”±äºŽæœ¬æ–‡ä¸»è¦æ˜¯åˆ©ç”¨Modbuså”è°çš„ASCII模å¼ä¾†å¯¦ç¾ç„¡ç·šé€šä¿¡ã€‚å› æ¤è‘—é‡ä»‹ç´¹Modbuså”è°çš„ASCII模å¼ã€‚
2.2 ASCIIæ¨¡å¼æ ¼å¼
使用ASCII模å¼ï¼Œæ¶ˆæ¯ä»¥å†’號(:)å—符(ASCII碼 3AH)開始,以回車æ›è¡Œç¬¦çµæŸï¼ˆASCII碼 0DH,0AH)。
其它域å¯ä»¥ä½¿ç”¨çš„傳輸å—符是åå…進制的0...9,A...F。網絡上的è¨å‚™ä¸æ–·åµæ¸¬“:”å—符,當有一個冒號接收到時,æ¯å€‹è¨å‚™éƒ½è§£ç¢¼ä¸‹å€‹åŸŸï¼ˆåœ°å€åŸŸï¼‰ä¾†åˆ¤æ–·æ˜¯å¦ç™¼çµ¦è‡ªå·±çš„。
一個典型消æ¯å¹€å¦‚下所示:
圖2 ASCII消æ¯å¹€
èµ·å§‹ä½å—æ®µè¡¨ç¤ºä¸€å¹€å ±æ–‡çš„é–‹å§‹ã€‚
地å€ç¢¼å—æ®µè¡¨ç¤ºæŽ¥æ”¶ä¸»æ©Ÿå ±æ–‡çš„å¾žæ©Ÿåœ°å€ã€‚ç”¨æˆ¶å¿…é ˆè¨ç½®æ¯è‡ºå¾žæ©Ÿçš„地å€ã€‚
åŠŸèƒ½ç¢¼å—æ®µé€šçŸ¥å¾žç«™æ‡‰åŸ·è¡Œä½•種功能。
æ•¸æ“šå—æ®µå«æœ‰å¾žæ©ŸåŸ·è¡ŒæŸé …具體功能的信æ¯ï¼Œæˆ–嫿œ‰å¾žæ©Ÿæ‡‰ç”è©¢å•的信æ¯ï¼Œé€™äº›ä¿¡æ¯å¯ä»¥æ˜¯æ•¸å€¼ã€åœ°å€åƒæ•¸æˆ–范åœã€‚
æ ¡é©—ç¢¼å—æ®µæ˜¯ç”¨ä¾†æª¢æŸ¥é€šè¨Šå ±æ–‡æœ‰ç„¡éŒ¯èª¤ã€‚
2.3 LRCæ ¡é©—
ASCII模å¼é‡‡ç”¨LRCæ–¹æ³•é€²è¡ŒéŒ¯èª¤æ ¡é©—ã€‚å…·é«”ç‚ºï¼š
Aã€LRC域檢測了消æ¯åŸŸä¸é™¤é–‹å§‹çš„冒號åŠçµæŸçš„回車æ›è¡Œè™Ÿå¤–的內容。
Bã€LRC域是一個包å«ä¸€å€‹8ä½äºŒé€²åˆ¶å€¼çš„å—節。LRC值由傳輸è¨å‚™ä¾†è¨ˆç®—并放到消æ¯å¹€ä¸ï¼ŒæŽ¥æ”¶è¨å‚™åœ¨æŽ¥æ”¶æ¶ˆæ¯çš„éŽç¨‹ä¸è¨ˆç®—LRC,并將它和接收到消æ¯ä¸LRC域ä¸çš„值比較,如果兩值ä¸ç‰ï¼Œèªªæ˜Žæœ‰éŒ¯èª¤ã€‚
Cã€LRC方法是將消æ¯ä¸çš„8Bitçš„å—ç¯€é€£çºŒç´¯åŠ ï¼Œä¸Ÿæ£„äº†é€²ä½ã€‚
LRC簡單函數如下:
static unsigned char LRC(auchMsg,usDataLen)
unsigned char *auchMsg ; /* è¦é€²è¡Œè¨ˆç®—çš„æ¶ˆæ¯ ï¼Š/
unsigned short usDataLen ; /* LRC è¦è™•ç†çš„å—節的數é‡ï¼Š/
ï½› unsigned char uchLRC = 0 ; /* LRC å—節åˆå§‹åŒ– */
while (usDataLen——) /* 傳逿¶ˆæ¯ */
uchLRC += *auchMsg++ ; /* ç´¯åŠ ï¼Š/
return ((unsigned char)(-((char_uchLRC))) ;
ï½
3 功能æè¿°
3.1功能概述
Modbuså”è°ç¸½å…±æœ‰24種功能。其ä¸ä¸»è¦çš„æœ‰8種,分別如圖3所示:
圖3 Modbuså”è°ä¸»è¦åŠŸèƒ½
Modbuså”è°åŽŸæ„æ˜¯ç‚ºäº†å¯¦ç¾å¯ç·¨ç¨‹æŽ§åˆ¶å™¨çš„高效è¯ç¶²é€šä¿¡ã€‚在æ¤8種功能ä¸å…¶é€šä¿¡åŠŸèƒ½æœ‰æ‰€é‡å¾©ã€‚有考慮到實ç¾çš„簡易性,在無線通信應用ä¸ï¼Œå…¶å¯¦åªéœ€åŠŸèƒ½04åŠåŠŸèƒ½16å³å¯ã€‚
3.2 讀輸入寄å˜å™¨çµ„(功能碼04)
例如:讀8號從機的寄å˜å™¨çµ„ã€‚èµ·å§‹åœ°å€æ˜¯30123,寄å˜å™¨å€‹æ•¸æ˜¯2å€‹çš„å ±æ–‡æ ¼å¼å¦‚圖4所示:
讀輸入寄å˜å™¨çµ„è©¢å•å ±æ–‡ï¼š
讀輸入寄å˜å™¨çµ„應ç”å ±æ–‡ï¼š
圖4 讀輸入寄å˜å™¨çµ„å ±æ–‡æ ¼å¼
3.3 寫多個寄å˜å™¨ï¼ˆåŠŸèƒ½ç¢¼16)
本功能å¯ä»¥ä¿®æ”¹æŽ§åˆ¶å™¨å…§å¤šå€‹å¯„å˜å™¨çš„內容,ä¸ç”¨çš„高ä½å¿…é ˆç½®0。本功能碼支æŒå»£æ’模å¼ï¼ˆå³å¾žæ©Ÿåœ°å€ç‚º0)。例如:將08從機的40210ã€40211寄å˜å™¨ç½®æˆ0835hå’Œ0312hçš„å ±æ–‡å¦‚åœ–5所示。
寫多個寄å˜å™¨è©¢å•å ±æ–‡ï¼š
寫多個寄å˜å™¨æ‡‰ç”å ±æ–‡ï¼š
圖5寫多個寄å˜å™¨å ±æ–‡æ ¼å¼
4 Modbuså”è°åœ¨ç„¡ç·šé€šä¿¡ä¸çš„實ç¾
4.1 Modbuså£èˆ‡ç„¡ç·šæ•¸å‚³modemå£çš„連接
Modbuså£åŠç„¡ç·šæ•¸å‚³modemå£å‡é‡‡ç”¨æ¨™æº–9èŠ¯ä¸²è¡Œå£æ–¹å¼ï¼Œä½¿ç”¨å…¶ä¸éƒ¨åˆ†å¼•腳。如圖6所示
圖6 Modbuså£èˆ‡ç„¡ç·šæ•¸å‚³modemå£çš„連接
4.2 通信方å¼çš„全雙工轉åŠé›™å·¥
Modbus本身屬于åŠé›™å·¥çš„通信å”è°ï¼Œè€Œç„¡ç·šæ•¸å‚³modem一般åªèƒ½å·¥ä½œäºŽåŠé›™å·¥æ–¹å¼ã€‚無線數傳modem工作時,當RTS控制線為低電平,modem處于發é€ç‹€æ…‹ï¼Œå°‡TXD的信號以載波的方å¼ç™¼é€å‡ºåŽ»;ç•¶RTS控制線為高電平時,則modem處于接收狀態,將接到的載波信號經檢波åŽé€å›žModbuså£ã€‚
如果所有的主從è¨å‚™å‡é‡‡ç”¨åŠé›™å·¥æ–¹å¼é€šä¿¡æ™‚則用Modbuså”è°å¯¦ç¾ç„¡ç·šé€šä¿¡è¼ƒç‚ºå®¹æ˜“ã€‚ç„¶è€Œå¦‚æžœåœ¨æ•´å€‹é€šä¿¡ç¶²çµ¡ä¸æœ‰éƒ¨åˆ†å¾žæ©Ÿé‡‡ç”¨å…¨é›™å·¥æ–¹å¼å·¥ä½œæ™‚ï¼Œå‰‡å¿…é ˆå°‡æ¤éƒ¨åˆ†å¾žæ©Ÿçš„通信機制改為åŠé›™å·¥ã€‚
例如一個é 程主機與一個以Modicon TSX SCP 111通信å¡ç‚ºå¾žæ©Ÿçš„PLC進行 Modbusç„¡ç·šé€šä¿¡æ™‚ï¼Œå°±å¿…é ˆåœ¨Modicon TSX SCP 111å´å¢žåŠ ä¸€å¡Šå…¨é›™å·¥è½‰åŠé›™å·¥å¡ã€‚åŽŸå› ï¼ŒModicon TSX 111ç„¡è«–RXD是å¦å˜åœ¨æœ‰ç”¨ä¿¡è™Ÿå‡åœ¨æ¯å€‹é€šä¿¡å‘¨æœŸå‡ä½¿CTS出ç¾ä¸€æ¬¡ä½Žé›»å¹³ï¼ˆä½¿é›»è‡ºç™¼å°„),擾亂了æ£å¸¸çš„通信。
5 çµè«–
湛江市自來水公å¸å¯¸é‡‘åŠ å£“ç«™ç„¡äººå€¼å®ˆæŽ§åˆ¶ç³»çµ±å°±æ˜¯åˆ©ç”¨ä¸Šè¿°æ–¹æ³•æˆåŠŸåœ°å¯¦ç¾äº†é ç¨‹ç„¡ç·šé™æŽ§åŠ å£“ç«™çš„æ©Ÿæ³µæ“作。實è¸è‰æ˜Žï¼šé‹ç”¨Modbuså”è°ä¾†å¯¦ç¾ç„¡ç·šé€šä¿¡ï¼Œä½¿å¾—通信å¯é ï¼Œç³»çµ±çµæ§‹ç°¡å–®ï¼Œæ“´å±•性好,能滿足多數工程的實際需è¦ã€‚
åƒè€ƒæ–‡ç»ï¼š
[1] MODICON, Inc., Industrial Automation Systems 《Modicon Modbus Protocol Reference Guide》,June 1996
[2] 陳æŸé‡‘,通éŽä¸²è¡Œå£è¨ªå•Modbusç¾å ´æŽ§åˆ¶ç¶²çµ¡ï¼Œå¾®è¨ˆç®—機信æ¯2003.1.
標簽:
上一篇:ABB MASTER系統在軋鋼自控系...
下一篇:微能WIN-V63çŸ¢é‡æŽ§åˆ¶è®Šé »å™¨åœ¨...
ä¸åœ‹å‚³å‹•網版權與å…è²¬è²æ˜Žï¼šå‡¡æœ¬ç¶²æ³¨æ˜Ž[來æºï¼šä¸åœ‹å‚³å‹•ç¶²]的所有文å—ã€åœ–片ã€éŸ³è¦–å’Œè¦–é »æ–‡ä»¶ï¼Œç‰ˆæ¬Šå‡ç‚ºä¸åœ‹å‚³å‹•ç¶²(www.siyutn.com)ç¨å®¶æ‰€æœ‰ã€‚如需轉載請與0755-82949061è¯ç³»ã€‚任何媒體ã€ç¶²ç«™æˆ–å€‹äººè½‰è¼‰ä½¿ç”¨æ™‚é ˆæ³¨æ˜Žä¾†æºâ€œä¸åœ‹å‚³å‹•ç¶²â€ï¼Œé•å者本網將追究其法律責任。
本網轉載并注明其他來æºçš„稿件,å‡ä¾†è‡ªäº’è¯ç¶²æˆ–æ¥å…§æŠ•稿人士,版權屬于原版權人。轉載請ä¿ç•™ç¨¿ä»¶ä¾†æºåŠä½œè€…ï¼Œç¦æ¢æ“…自篡改,é•è€…è‡ªè² ç‰ˆæ¬Šæ³•å¾‹è²¬ä»»ã€‚
相關資訊