摘è¦abstract:本文通éŽè‰¾é»˜ç”ŸPLCå’Œå¤šè‡ºè®Šé »å™¨çµ„ç¶²é€šä¿¡æŽ§åˆ¶ç·¨ç¨‹ï¼ˆä»¥MODBUSå”è°æ–¹å¼ï¼‰ç‚ºä¾‹ï¼Œèªªæ˜ŽPLCå’Œå¤šè‡ºè®Šé »å™¨ç¶²çµ¡æŽ§åˆ¶çš„é€šä¿¡ç¨‹åºçš„è¨è¨ˆæ–¹æ³•。
1 引言
隨著PLCæŠ€è¡“çš„ä¸æ–·ç™¼å±•ï¼Œè¶Šä¾†è¶Šé¡¯ç¤ºå…¶å¼·å¤§çš„æ ¸å¿ƒæŽ§åˆ¶åŠŸèƒ½ï¼ŒPLC和其他è¨å‚™ä¹‹é–“的連接已經從比較煩瑣的傳統I/Oæ–¹å¼å‘è¶Šä¾†è¶Šå—æ¡è¿Žçš„簡潔先進的通信方å¼éŽæ¸¡ï¼Œä¸åƒ…為è¨è¨ˆè€…節çœäº†å¤§é‡çš„ç¡¬ä»¶æˆæœ¬ï¼Œæ›´èƒ½ç‚ºé 程控制,組網æä¾›äº†å¯èƒ½ï¼Œä½¿æŽ§åˆ¶ç³»çµ±æ›´åŠ ç„¡ç¸«åœ°èžç‚ºä¸€é«”。本文主è¦é€šéŽè‰¾é»˜ç”ŸPLCå’Œå¤šè‡ºè®Šé »å™¨çµ„ç¶²é€šä¿¡ï¼ˆä»¥MODBUSå”è°æ–¹å¼ï¼‰ç‚ºä¾‹ï¼Œèªªæ˜ŽPLCå’Œå¤šè‡ºè®Šé »å™¨ç¶²çµ¡æŽ§åˆ¶çš„é€šä¿¡ç¨‹åºçš„è¨è¨ˆæ–¹æ³•。
2ã€MODBUSå”è°ç°¡è¦ä»‹ç´¹
Modbuså”è°ç”±ç¾Žåœ‹è‘—åçš„MODICONå…¬å¸æå‡ºï¼Œé€šéŽæ¤å”è°ï¼ŒæŽ§åˆ¶å™¨ç›¸äº’ä¹‹é–“ã€æŽ§åˆ¶å™¨ç¶“ç”±ç¶²çµ¡ï¼ˆä¾‹å¦‚ä»¥å¤ªç¶²ï¼‰å’Œå…¶å®ƒè¨å‚™ä¹‹é–“å¯ä»¥é€šä¿¡ï¼Œä¸åŒå» 商生產的控制è¨å‚™å¯ä»¥é€£æˆå·¥æ¥ç¶²çµ¡ï¼Œé€²è¡Œé›†ä¸ç›£æŽ§ï¼Œå®ƒå·²ç¶“æˆç‚ºä¸€é€šç”¨å·¥æ¥æ¨™æº–。控制器通信使用主—從技術,å³åƒ…一è¨å‚™ï¼ˆä¸»è¨å‚™ï¼‰èƒ½åˆå§‹åŒ–傳輸(查詢)。其它è¨å‚™ï¼ˆå¾žè¨å‚™ï¼‰æ ¹æ“šä¸»è¨å‚™æŸ¥è©¢æä¾›çš„æ•¸æ“šä½œå‡ºç›¸æ‡‰å應。典型的主è¨å‚™ï¼šIPC,HMI,PLCç‰ï¼›å…¸åž‹çš„從è¨å‚™ï¼šå„種儀表,PLCï¼Œè®Šé »å™¨ç‰ã€‚主è¨å‚™å¯å–®ç¨å’Œå¾žè¨å‚™é€šä¿¡ï¼Œä¹Ÿèƒ½ä»¥å»£æ’æ–¹å¼å’Œæ‰€æœ‰å¾žè¨å‚™é€šä¿¡ã€‚如果單ç¨é€šä¿¡ï¼Œå¾žè¨å‚™è¿”回一消æ¯ä½œç‚ºå›žæ‡‰ï¼Œå¦‚æžœæ˜¯ä»¥å»£æ’æ–¹å¼æŸ¥è©¢çš„,則ä¸ä½œä»»ä½•回應。Modbuså”è°å»ºç«‹äº†ä¸»è¨å‚™æŸ¥è©¢å’Œå¾žè¨å‚™å›žæ‡‰çš„æ ¼å¼ï¼šè¨å‚™ï¼ˆæˆ–廣æ’)地å€ã€åŠŸèƒ½ä»£ç¢¼ã€æ‰€æœ‰è¦ç™¼é€çš„æ•¸æ“šã€éŒ¯èª¤æª¢æ¸¬åŸŸã€‚Modbuså”è°åŒæ™‚支æŒRTU模å¼å’ŒASCII模å¼ï¼ŒRTU模å¼å°æ‡‰çš„å¹€æ ¼å¼å¦‚下:(ASCII模å¼ä»‹ç´¹çœç•¥ï¼‰

更詳細的說明請查閱MODBUSå”è°çš„æœ‰é—œè³‡æ–™ï¼ˆæˆ–登陸網站 www.modbus.org
http://www.modbus.org)。
3ã€è‰¾é»˜ç”ŸPLC集æˆçš„MODBUSå”è°åŠŸèƒ½
艾默生EC20系列PLC的通信å£COM 1集æˆäº†MODBUS主站å”è°ï¼Œ 在編程時先在編程軟件的系統塊里進行è¨ç½®å…·é«”如下:系統塊—>“通信å£â€èœå–®â€”>“通信å£1åƒæ•¸è¨ç½®â€èœå–®â€”> é¸â€œMODBUSå”è°â€â€”> 進行“MODBUSè¨ç½®â€â€”> é€²è¡Œé€šä¿¡åƒæ•¸å’Œï¼ˆä¸»æ¨¡å¼ï¼‰ç«™è™Ÿç‰è¨ç½®å³å¯ã€‚
ç„¶åŽåˆ©ç”¨MODBUS指令進行編程————MODBUS (S1) (S2)(S3)å„åƒæ•¸å«ç¾©å¦‚下:
S1 指定的通訊通é“;
S2 ç™¼é€æ•¸æ“šèµ·å§‹åœ°å€;
S3 接收數據起始地å€;
MODBUS指令發é€éŽç¨‹ä¸ï¼Œè‡ªå‹•åŠ ä¸Šæ‰€éœ€çš„èµ·å§‹å—ç¬¦ï¼ŒçµæŸå—ç¬¦å’Œæ ¡é©—å’Œï¼›ç™¼é€çš„æ•¸æ“šï¼Œä¸éœ€è¨å®šç™¼é€çš„æ•¸æ“šé•·åº¦ï¼Œç³»çµ±æœƒæ ¹æ“šåŠŸèƒ½ç¢¼è‡ªå‹•æŒ‰ç³»çµ±å…§éƒ¨è¨å®šé•·åº¦é€²è¡Œç™¼é€ã€‚
2個é‡è¦çš„通信標志:SM135—— MODBUS的通訊æˆåŠŸæ¨™å¿—ä½ï¼Œé€šè¨ŠæˆåŠŸæ™‚ç½®ä½,䏿œƒè‡ªå‹•復ä½ï¼Œæ‰€ä»¥åœ¨ç™¼é€æ•¸æ“šçš„æ™‚候è¦é€²è¡Œä¸€æ¬¡å¾©ä½ï¼›SM136—MODBUS的通信錯誤標志ä½ï¼Œé€šä¿¡éŒ¯èª¤ï¼ˆåŒ…括從è¨å‚™æ²’有回應)時置ä½ï¼Œä¸æœƒè‡ªå‹•復ä½ï¼Œæ‰€ä»¥åœ¨æŽ¥æ”¶æ•¸æ“šçš„æ™‚候è¦é€²è¡Œä¸€æ¬¡å¾©ä½ï¼›
4ã€è‰¾é»˜ç”Ÿè®Šé »å™¨é€šä¿¡å”è°
艾默生公å¸ç”Ÿç”¢çš„EVç³»åˆ—è®Šé »å™¨éƒ½é›†æˆMODBUSå”è°ï¼Œä¸”æä¾›RS232Cå’ŒRS485通信å£ä¾›ç”¨æˆ¶é¸æ“‡ï¼Œæ‰€ä»¥é€šéŽPLCå’Œè®Šé »å™¨é€šä¿¡çš„æ–¹å¼å®ŒæˆæŽ§åˆ¶æ¯”較簡單經濟,而且顯得系統比較高檔,下é¢ç°¡å–®ä»‹ç´¹å…¶å”è°ï¼š
1.支æŒMODBUS RTUå’ŒASCIIæ ¼å¼ï¼›
2.åƒæ•¸çš„MODBUSå”è°åœ°å€å½±å°„è¦å‰‡ï¼šè®Šé »å™¨çš„åŠŸèƒ½ç¢¼åƒæ•¸ã€æŽ§åˆ¶åƒæ•¸å’Œç‹€æ…‹åƒæ•¸éƒ½æ˜ 射為Modbus的讀寫寄å˜å™¨ã€‚è®Šé »å™¨åŠŸèƒ½ç¢¼çš„çµ„è™Ÿæ˜ å°„ç‚ºå¯„å˜å™¨åœ°å€çš„高å—ç¯€ï¼Œçµ„å…§ç´¢å¼•æ˜ å°„ç‚ºå¯„å˜å™¨åœ°å€çš„低å—ç¯€ã€‚è®Šé »å™¨çš„æŽ§åˆ¶åƒæ•¸å’Œç‹€æ…‹åƒæ•¸å‡è™›æ“¬ç‚ºè®Šé »å™¨åŠŸèƒ½ç¢¼çµ„ã€‚åŠŸèƒ½ç¢¼çµ„è™Ÿèˆ‡å…¶æ˜ å°„çš„å¯„å˜å™¨åœ°å€é«˜å—ç¯€çš„å°æ‡‰é—œç³»å¦‚下:F0組:0x00ï¼›F1組:0x01ï¼›F2組:0x02ï¼›F3組:0x03ï¼›F4組:0x04ï¼›F5組:0x05ï¼›F6組:0x06ï¼›F7組:0x07ï¼›F8組:0x08ï¼›F9組:0x09ï¼›FA組:0x0Aï¼›Fb組:0x0Bï¼›FC組:0x0Cï¼›Fd組:0x0Dï¼›FE組:0x0Eï¼›FF組:0x0Fï¼›FH組:0x10ï¼›FL組:0x11ï¼›Fn組:0x12ï¼›FP組:0x13ï¼›FU組:0x14ï¼›è®Šé »å™¨æŽ§åˆ¶åƒæ•¸çµ„:0x32ï¼›è®Šé »å™¨ç‹€æ…‹åƒæ•¸çµ„:0x33ã€‚ä¾‹å¦‚è®Šé »å™¨åŠŸèƒ½ç¢¼åƒæ•¸F3.02的寄å˜å™¨åœ°å€ç‚º0x302ï¼Œè®Šé »å™¨åŠŸèƒ½ç¢¼åƒæ•¸FF.01的寄å˜å™¨åœ°å€ç‚º0xF01。
3.支æŒçš„功能碼如下:

4.具體的å”è°ä»‹ç´¹è«‹åƒè€ƒè‰¾é»˜ç”Ÿè®Šé »å™¨ç”¨æˆ¶æ‰‹å†Šï¼›
5 ç¨‹åºæµç¨‹åœ–
主è¨å‚™å°å¾žè¨å‚™çš„æ¶ˆæ¯æŸ¥è©¢å‘½ä»¤ä¸»è¦åˆ†ç‚º2大類,連續命令åºåˆ—和隨機命令åºåˆ—。
連續命令åºåˆ—: 主è¨å‚™éœ€è¦å®šæ™‚或連續å‘從è¨å‚™ç™¼é€çš„命令åºåˆ—.特點是周期性,連續性.如PLCå°è®Šé »å™¨è®€å–é‹è¡Œé »çއ命令,é‹è¡Œç‹€æ…‹å‘½ä»¤ç‰ã€‚
隨機命令åºåˆ—: 主è¨å‚™ä¸å®šæ™‚或隨機å‘從è¨å‚™ç™¼é€çš„命令åºåˆ—.特點是ä¸å®šæ™‚性,隨機性.如PLCå°è®Šé »å™¨çš„å•ŸåœæŽ§åˆ¶,æ”¹å¯«é »çŽ‡æˆ–å…¶ä»–åƒæ•¸ç‰ã€‚

5ã€ç¨‹åºæ¸…單:( å程åºå’Œä¸»ç¨‹åº )
本程åºä¸»è¦ä»‹ç´¹1臺EC20PLC(作為主站)按照MODBUSå”è°ç¶²çµ¡å°3è‡ºè®Šé »å™¨ï¼ˆå¾žç«™è™Ÿåˆ†åˆ¥æ˜¯2,3,4)進行通信控制的簡單范例,本例ä¸ï¼š
連續命令åºåˆ— 包括å°2,3,4è™Ÿè®Šé »å™¨çš„é‹è¡Œé »çŽ‡çš„è®€å–ï¼›
隨機命令åºåˆ— 包括å°2,3,4è™Ÿè®Šé »å™¨é€²è¡Œå•Ÿå‹•ï¼Œåœæ¢ï¼Œæ›´æ”¹é »çŽ‡çš„å‘½ä»¤æ“作;
aï¼‰â€œè®Šé »å™¨æ£è½‰â€åç¨‹åºæ¸…單如下:
//主程åºä¸ç”¨M1993作為å„發é€è¼”助使能,主è¦ç”¨äºŽ MODBUSæŒ‡ä»¤çš„ä¸Šå‡æ²¿è§¸ç™¼ç„¡å…¶ä»–用
LD LM0 //ä½è¼¸å…¥åƒæ•¸åž‹â€”發é€è¼”助使能
RST SM135 //復使ˆåŠŸæ¨™å¿—
RST SM136 //復ä½å¤±æ•—標志
LD SM0 //é‹è¡Œæ¨™å¿—
MOV Z0 V9 //ä¿å˜Z0值到V9
LD SM0 //é‹è¡Œæ¨™å¿—
MOV V0 V10 //從機地å€
MOV 16#6 V11 //功能碼
MOV 16#32 V12 //寄å˜å™¨åœ°å€é«˜å—節
MOV 16#0 V13 //寄å˜å™¨åœ°å€ä½Žå—節
MOV 1 V14 //寫入數據高å—節
MOV 16#C7 V15 //寫入數據低å—節
//ä»¥ä¸‹æŠŠç™¼é€æ•¸æ“šè½‰ç§»åˆ°D7940-D7945里
LD SM0
MOV 0 Z0
LD SM0
FOR 6
LD SM0
MOV V10Z0 D7940Z0
LD SM0
INC Z0
NEXT
//ç™¼é€æŽ¥æ”¶æ•¸æ“š,數據放在D7970é–‹å§‹å€åŸŸ
LD LM0
MODBUS 1 D7940 D7970
RST LM0 //馬上復ä½ç™¼é€è¼”助使能
//ç„¡è«–æˆåŠŸå¤±æ•—éƒ½é‚„åŽŸZ0值
//當然這里çœç•¥äº†éŒ¯èª¤å ±å‘Šçš„處ç†
LD SM135
OR SM136
EU //ä¸Šå‡æ²¿
MOV V9 Z0
b) â€œåœæ©Ÿâ€å程åºï¼ˆçœç•¥ï¼‰
c) “è¨å®šé »çއâ€å程åºï¼ˆçœç•¥ï¼‰
d) “讀å–é‹è¡Œé »çއâ€å程åºï¼ˆçœç•¥ï¼‰
e) ä¸»ç¨‹åºæ¸…å–®:
//******以下為通信é‚輯處ç†éƒ¨åˆ†ï¼Šï¼Šï¼Šï¼Šï¼Šï¼Š
LD SM1 //é‹è¡Œç¬¬ä¸€å‘¨æœŸè„ˆæ²–
//***這里çœç•¥äº†æª¢æŸ¥å¾žæ©Ÿæº–備好å¦çš„環節***
//***程åºé‡Œè¨è¨ˆäº†3個連續命令åºåˆ—***
RST M6 //復ä½é€£çºŒå‘½ä»¤åºåˆ—1使能標志
RST M7 //復ä½é€£çºŒå‘½ä»¤åºåˆ—2使能標志
RST M8 //復ä½é€£çºŒå‘½ä»¤åºåˆ—3使能標志
ED //䏋陿²¿
//ç½®ä½é€£çºŒå‘½ä»¤åºåˆ—1使能標志,以開始第1æ¢é€£çºŒå‘½ä»¤åŸ·è¡Œ
SET M6
//***程åºé‡Œè¨è¨ˆäº†å…±9個隨機命令åºåˆ—***
//åªè¦æœ‰è‡³å°‘1個隨機命令, // M1000=ON,表示有隨機命令ç‰å¾…,é€™æ¨£åœ¨é€£çºŒå‘½ä»¤åˆ‡æ›æ™‚優先執行隨機命令系列.
LD M0 //隨機命令åºåˆ—1使能標志
OR M1 //隨機命令åºåˆ—2使能標志
OR M2 //隨機命令åºåˆ—3使能標志
OR M3 //隨機命令åºåˆ—4使能標志
OR M4 //隨機命令åºåˆ—5使能標志
OR M5 //隨機命令åºåˆ—6使能標志
OR M9 //隨機命令åºåˆ—7使能標志
OR M10 //隨機命令åºåˆ—8使能標志
OR M11 //隨機命令åºåˆ—9使能標志
SET M1000
//所有隨機命令都處ç†å®ŒæˆåŽ, M1000=OFF,表示隨機命令完æˆ,則連續命令å¯ä»¥æ£å¸¸åˆ‡æ›ã€‚
LDI M0
ANI M1
ANI M2
ANI M3
ANI M4
ANI M5
ANI M9
ANI M10
ANI M11
RST M1000
//任何1å€‹é€£çºŒå‘½ä»¤æœªå®Œæˆæ™‚,M1001=ONï¼Œæ¨™å¿—é€£çºŒå‘½ä»¤åœ¨é€²è¡Œï¼Œå¦‚æžœæœ‰éš¨æ©Ÿå‘½ä»¤å¿…é ˆç‰å¾…。
LD M6
OR M7
OR M8
SET M1001
//連續命令處于切æ›ç‹€æ…‹æ™‚,M1001=OFF,標志連續命令完æˆï¼Œå¦‚果有隨機命令å¯ä»¥é€²è¡Œã€‚
LDI M6
ANI M7
ANI M8
RST M1001
//æ¯1個連續命令完æˆä¸”無隨機命令ç‰å¾…時,啟動延時T0 100MS,以便切æ›ä¸‹1個連續命令執行
LD M100 //連續命令1å®Œæˆæ¨™å¿—
OR M101 //連續命令2å®Œæˆæ¨™å¿—
OR M102 //連續命令3å®Œæˆæ¨™å¿—
ANI M1000
TON T0 1 //啟動延時T0 100MS
//******************************************
//**********以下為3個連續命令åºåˆ—**********
//調用“讀å–é‹è¡Œé »çއâ€å程åº-2#ç«™ï¼Œé »çŽ‡å˜åœ¨D1000里;
//通信æˆåŠŸæˆ–å¤±æ•—éƒ½å¾©ä½é€£çºŒå‘½ä»¤åºåˆ—1使能標志M6ï¼ŒåŒæ™‚ç½®ä½å®Œæˆæ¨™å¿—M100,以便進行切æ›ã€‚當然這里çœç•¥äº†å¤±æ•—的處ç†å程åºï¼›
//延時T0時間åŽï¼ŒåŸ·è¡Œé€£çºŒå‘½ä»¤2åºåˆ—,置ä½é€£çºŒå‘½ä»¤2åºåˆ—使能標志M7ï¼›
LD M6 //連續命令åºåˆ—1使能
MPS
EU
SET M1993 //發é€å‰ç½®ä½ç™¼é€è¼”助標志
MRD
CALL 讀å–é‹è¡Œé »çއ 2 M1993 D1000
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½ï¼Œé »çŽ‡å˜æ”¾åœ°å€
MPP
LD SM135
OR SM136
ANB
RST M6
SET M100
LD T0
AND M100
EU
RST M100 //復ä½é€£çºŒå‘½ä»¤1å®Œæˆæ¨™å¿—
SET M7
//調用“讀å–é‹è¡Œé »çއâ€å程åº-3#ç«™ï¼Œé »çŽ‡å˜åœ¨D1001里;
//通信æˆåŠŸæˆ–å¤±æ•—éƒ½å¾©ä½é€£çºŒå‘½ä»¤åºåˆ—2使能標志M7ï¼ŒåŒæ™‚ç½®ä½å®Œæˆæ¨™å¿—M101,以便進行切æ›ã€‚當然這里çœç•¥äº†å¤±æ•—的處ç†å程åºï¼›
//延時T0時間åŽï¼ŒåŸ·è¡Œé€£çºŒå‘½ä»¤3åºåˆ—,置ä½é€£çºŒå‘½ä»¤3åºåˆ—使能標志M8ï¼›
LD M7 //連續命令2åºåˆ—使能
MPS
EU
SET M1993 //發é€å‰ç½®ä½ç™¼é€è¼”助標志
MRD
CALL 讀å–é‹è¡Œé »çއ 3 M1993 D1001
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½ï¼Œé »çŽ‡å˜æ”¾åœ°å€
MPP
LD SM135
OR SM136
ANB
RST M7 //復ä½ä½¿èƒ½æ¨™å¿—
SET M101 //ç½®ä½å®Œæˆæ¨™å¿—
LD T0
AND M101
EU
RST M101 //復ä½é€£çºŒå‘½ä»¤2å®Œæˆæ¨™å¿—
SET M8 //ç½®ä½é€£çºŒå‘½ä»¤3使能標志
//調用“讀å–é‹è¡Œé »çއâ€å程åº-4#ç«™ï¼Œé »çŽ‡å˜åœ¨D1002里
//通信æˆåŠŸæˆ–å¤±æ•—éƒ½å¾©ä½é€£çºŒå‘½ä»¤åºåˆ—3使能標志M8ï¼ŒåŒæ™‚ç½®ä½å®Œæˆæ¨™å¿—M102,以便進行切æ›ã€‚當然這里çœç•¥äº†å¤±æ•—的處ç†å程åºï¼›
//延時T0時間åŽï¼Œé‡æ–°åŸ·è¡Œé€£çºŒå‘½ä»¤1åºåˆ—,置ä½é€£çºŒå‘½ä»¤1åºåˆ—使能標志M6ï¼›
LD M8 //連續命令3åºåˆ—使能
MPS
EU
SET M1993
MRD
CALL 讀å–é‹è¡Œé »çއ 4 M1993 D1002
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½ï¼Œé »çŽ‡å˜æ”¾åœ°å€
MPP
LD SM135
OR SM136
ANB
RST M8
SET M102
LD T0
AND M102
EU
RST M102
SET M6
//******************************************
//**********以下是9個隨機命令åºåˆ—***********
//9個隨機命令æ€è·¯éƒ½ä¸€æ¨£ï¼›
//隨機命令使能標志置ä½åŽï¼Œè‹¥é€£çºŒå‘½ä»¤è™•于切æ›ç‹€æ…‹ï¼Œå‰‡å¯é€²å…¥ç™¼é€ç‹€æ…‹ï¼Œå¦å‰‡åªæœ‰ç‰å¾…ï¼›
//ç™¼é€æ™‚先置ä½ç™¼é€è¼”助ä½M1993,調用å程åºé€²è¡Œç™¼é€å’ŒæŽ¥æ”¶ï¼›
//無論通信æˆåŠŸæˆ–å¤±æ•—éƒ½å¾©ä½å„自的隨機命令使能標志,當然這里ä»ç„¶çœç•¥äº†é€šä¿¡éŒ¯èª¤è™•ç†ç¨‹åºï¼›
//如果所有的隨機命令都完æˆï¼Œå‰‡éš¨æ©Ÿå‘½ä»¤ç‰å¾…標志M1000=OFFï¼›
//èª¿ç”¨â€œé »çŽ‡è¨å®šâ€å程åº-2#ç«™
LD M9 //隨機命令åºåˆ—7使能標志
ANI M1001 //判斷連續命令處于切æ›ç‹€æ…‹æ™‚
MPS
EU
SET M1993 //ç½®ä½ç™¼é€è¼”助ä½
MRD
CALL é‹é »è¨å®š 2 D1100 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œè¨å®šé »çŽ‡ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M9 //復ä½éš¨æ©Ÿå‘½ä»¤åºåˆ—7使能標志
//èª¿ç”¨â€œé »çŽ‡è¨å®šâ€å程åº-3#ç«™
LD M10 //隨機命令åºåˆ—8使能標志
ANI M1001 //判斷連續命令處于切æ›ç‹€æ…‹æ™‚ï¼›
MPS
EU
SET M1993 //ç½®ä½ç™¼é€è¼”助ä½
MRD
CALL é‹é »è¨å®š 3 D1101 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œè¨å®šé »çŽ‡ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M10
//èª¿ç”¨â€œé »çŽ‡è¨å®šâ€å程åº-4#ç«™
LD M11 /隨機命令åºåˆ—9使能標志
ANI M1001
MPS
EU
SET M1993
MRD
CALL é‹é »è¨å®š 4 D1102 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œè¨å®šé »çŽ‡ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M10
//調用“æ£è½‰é–‹æ©Ÿâ€å程åº-2#ç«™
LD X11 //開機按æ‰
EU
SET M0 //隨機命令åºåˆ—1使能標志
LD M0
ANI M1001
MPS
EU
SET M1993
MRD
CALL æ£è½‰é–‹æ©Ÿ 2 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M0
//調用“æ£è½‰é–‹æ©Ÿâ€å程åº-3#ç«™
LD X12 //開機按æ‰
EU
SET M1 //隨機命令åºåˆ—2使能標志
LD M1
ANI M1001
MPS
EU
SET M1993
MRD
CALL æ£è½‰é–‹æ©Ÿ 3 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M1
//調用“æ£è½‰é–‹æ©Ÿâ€å程åº-4#ç«™
LD X13 //開機按æ‰
EU
SET M2 //隨機命令åºåˆ—3使能標志
LD M2
ANI M1001
MPS
EU
SET M1993
MRD
CALL æ£è½‰é–‹æ©Ÿ 4 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M2
//èª¿ç”¨â€œåœæ©Ÿâ€å程åº-2#ç«™
LD X14 //åœæ©ŸæŒ‰æ‰
EU
SET M3 //隨機命令åºåˆ—4使能標志
LD M3
ANI M1001
MPS
EU
SET M1993
MRD
CALL åœæ©Ÿ 2 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M3
//èª¿ç”¨â€œåœæ©Ÿâ€å程åº-3#ç«™
LD X15 //åœæ©ŸæŒ‰æ‰
EU
SET M4 //隨機命令åºåˆ—5使能標志
LD M4
ANI M1001
MPS
EU
SET M1993
MRD
CALL åœæ©Ÿ 3 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M4
//èª¿ç”¨â€œåœæ©Ÿâ€å程åº-4#ç«™
LD X16 //åœæ©ŸæŒ‰æ‰
EU
SET M5 //隨機命令åºåˆ—6使能標志
LD M5
ANI M1001
MPS
EU
SET M1993
MRD
CALL åœæ©Ÿ 4 M1993
//åƒæ•¸æ³¨é‡‹ï¼šç«™åœ°å€ï¼Œç™¼é€è¼”助ä½
MPP
LD SM135
OR SM136
ANB
RST M5
6ã€ç¨‹åºèªªæ˜Žï¼š
例程è¨è¨ˆæ™‚實際在連續命令åºåˆ—切æ›çš„é–“éš™åœç•™äº†100MS的時間,這就是說程åºä¸çš„連續åºåˆ—æ˜¯é–“æ‡æ€§çš„;如果è¦é‡‡ç”¨éžé–“æ‡æ€§çš„連續åºåˆ—,把ä¸é–“的延時部分去掉就å¯ä»¥äº†ã€‚
7ã€çµè«–
本例程所闡述的通信åºåˆ—é‚輯處ç†çš„æ–¹æ³•在ç†è€…çš„ä¸€äº›é …ç›®ä¸å¾—到實際應用,效果也é”åˆ°é æœŸè¨æƒ³ï¼Œé‹è¡Œæ¯”較穩定,這種PLC通éŽé€šä¿¡çš„æ–¹å¼å°å¤šè‡ºè®Šé »å™¨é€šä¿¡çš„æ–¹æ³•åœ¨å¯¦éš›æ‡‰ç”¨ä¸æœ‰å¾ˆå¤§çš„åƒè€ƒåƒ¹å€¼ï¼Œä¸åƒ…èƒ½å¤ å……åˆ†åˆ©ç”¨EMERSON PLCå’Œè®Šé »å™¨çš„ç¡¬ä»¶è³‡æºé”åˆ°ç¯€çœæˆæœ¬çš„目的,而且更易于進行整個系統的整åˆã€‚
8ã€åƒè€ƒæ›¸ç›®ï¼š
艾默生EC20PLC編程åƒè€ƒæ‰‹å†Š
艾默生EC20PLC編程軟件工具手冊
艾默生EV1000è®Šé »å™¨ç”¨æˆ¶æ‰‹å†Šï¼ˆMODBUSå”è°æ–¹å¼ï¼‰