摘è¦: 通éŽç¾å ´ç¸½ç·šCAN-bus,å¯ä»¥å°‡å¤šé”數å臺的ä¸/å°åž‹PLC è¯ç¶²ï¼Œæ§‹æˆä¸€å€‹æ™ºèƒ½PLC ç¶²çµ¡ï¼›åŒæ™‚,主控制器å¯ä»¥èˆ‡æŒ‡å®šçš„é 程PLC 實ç¾é 程é…ç½®ã€æŽ§åˆ¶é€šä¿¡ï¼Œä»¥åŠå¯¦ç¾çµ„態環境ä¸çš„æ‡‰ç”¨ã€‚
é—œéµè©ž:ç¨‹åºæŽ§åˆ¶å™¨PLC; ç¾å ´ç¸½ç·šCAN-bus; 虛擬串å£; CAN232MB 轉æ›å™¨; PC-CAN 接å£å¡
1 PLC 特點與PLC 網絡
å¯ç·¨ç¨‹æŽ§åˆ¶å™¨ç°¡ç¨±PLC(Programmable Logic Controllerï¼‰ï¼Œæ˜¯ä¸€ç¨®æ•¸å—æŽ§åˆ¶å°ˆç”¨é›»å計算機,它使用了å¯ä¿®æ”¹çš„程åºå˜å„²å™¨å„²å˜æŒ‡ä»¤ï¼ŒåŸ·è¡Œè«¸å¦‚é‚輯ã€é †åºã€è¨ˆæ™‚ã€è¨ˆæ•¸èˆ‡æ¼”ç®—ç‰åŠŸèƒ½ï¼Œå¹¶é€šéŽæ¨¡æ“¬å’Œæ•¸å—輸入ã€è¼¸å‡ºç‰åŠŸèƒ½çµ„ä»¶ï¼ŒæŽ§åˆ¶å„種機械或工作程åºã€‚長期以來,PLC一直在å„個行æ¥çš„è‡ªå‹•åŒ–æŽ§åˆ¶é ˜åŸŸå¾—åˆ°å»£æ³›çš„ä½¿ç”¨ï¼Œç‚ºå„ç¨®å„æ¨£çš„自動化è¨å‚™æä¾›äº†éž??煽康目刂茟谩?
PLC 系統的工作任務相å°ç°¡å–®ï¼Œä¸”需è¦å‚³è¼¸çš„æ•¸æ“šé‡ä¸€èˆ¬ä¸æœƒå¤ªå¤§ï¼Œæ‰€ä»¥å¸¸è¦‹çš„PLCç³»çµ±ç‚ºä¸€å±¤ç¶²çµ¡çµæ§‹ã€‚PLC 一般應用在å°åž‹è‡ªæŽ§å ´æ‰€ï¼Œæ¯”如è¨å‚™çš„æŽ§åˆ¶æˆ–少釿¨¡æ“¬é‡çš„æŽ§åˆ¶åŠè¯éŽ–ã€‚å°èŒƒåœçš„集ä¸å¼æŽ§åˆ¶ç’°å¢ƒæ˜¯PLC 發æ®åŠŸèƒ½çš„æœ€ä½³èˆžè‡ºã€‚
ç›®å‰ï¼Œåªæœ‰å°‘é‡åž‹è™Ÿçš„PLC é›†æˆæœ‰ä»¥å¤ªç¶²Ethernet 或ç¾å ´ç¸½ç·šCAN-bus 通訊接å£ï¼Œåƒ¹æ ¼ä¹Ÿè¼ƒæ˜‚貴;一般常見PLC 型號沒有隨本機集æˆé€šè¨ŠåŠŸèƒ½ï¼Œä¸ä¾¿äºŽçµ„建多臺PLC æ§‹æˆçš„ä¸åž‹æŽ§åˆ¶ç¶²çµ¡ã€‚但是,隨著應用技術的發展,經常會出ç¾ä¸€äº›æ‡‰ç”¨å ´åˆï¼Œåœ¨é¢ç©è¼ƒå¤§çš„范åœå…§ï¼Œéœ€è¦n 臺PLC å”åŒå®Œæˆä¸€å€‹ç³»çµ±çš„ç¶œåˆæŽ§åˆ¶ã€‚æ¤æ™‚ï¼ŒåŽŸæœ‰é›†ä¸æŽ§åˆ¶çš„å–®ä¸€PLC 控制方案就顯得無å¯å¥ˆä½•,PLC 網絡的需求也應é‹è€Œç”Ÿã€‚
本文æå‡ºäº†ä¸€ç¨®åŸºäºŽç¾å ´ç¸½ç·šCAN-bus çš„PLC ç¶²çµ¡æ–¹æ¡ˆï¼Œèƒ½å¤ å°å¤šè‡ºè¯ç¶²çš„PLC 實ç¾é 程é…ç½®ã€æ•¸æ“šé€šä¿¡ï¼Œå¹¶èƒ½å¤ åœ¨æŠ•å…¥è¼ƒä½Žç¡¬ä»¶æˆæœ¬çš„基礎上,實ç¾è‰¯å¥½çš„系統é‹è¡Œæ€§èƒ½ã€‚這個方案也充分發æ®äº†ç¾å ´ç¸½ç·šCAN-bus 的通信特點:實時ã€å¯é ã€é«˜é€Ÿã€é è·é›¢ã€æ˜“ç¶è·ç‰ã€‚æ¤æ–¹æ¡ˆæ˜¯ç¾å ´ç¸½ç·šæŠ€è¡“èˆ‡é›†ä¸æŽ§åˆ¶æŠ€è¡“çš„æœ‰æ©Ÿçµåˆï¼Œè¯ç¶²åŽçš„PLC 網絡å¯ä»¥æ§‹æˆä¸€å€‹æ€§èƒ½å„ªç§€çš„DCS 系統;用戶在åŒä¸€å€‹ä¸»æŽ§åˆ¶å™¨ä¸Šå¯ä»¥é ç¨‹ç›£æŽ§ã€æ”¹è®Šä»»ä½•一臺è¯ç¶²PLC çš„ç¨‹åºæˆ–狀態。
2 PLC 網絡的幾種方å¼
通用PLC 一般都會æä¾›1~2 個RS-232 標準或RS-485 標準的通訊端å£ï¼Œç”¨äºŽèˆ‡å…¶ä»–控制è¨å‚™æˆ–主控制器PC 通訊;這些集æˆçš„é€šè¨Šç«¯å£æ”¯æŒè‡ªè¡Œè¦å®šçš„通訊å”è°ï¼Œæˆ–者Modbuså”è°ï¼Œå¯¦ç¾PLC è¨å‚™çš„通訊與é…置。構建PLC 網絡,å³åˆ©ç”¨PLC 本機的這一類通訊端å£ï¼Œå°‡å…¶æ“´å±•æˆç‚ºèƒ½å¤ 與多臺è¨å‚™è¯ç¶²ï¼Œå¯¦ç¾å¤šé»žé€šè¨Šçš„ç¾å ´ç¸½ç·šCAN-bus 通訊接å£ã€‚
æ ¹æ“šç¶²çµ¡ä¸ä¸»æŽ§åˆ¶å™¨çš„ä¸åŒï¼ŒPLC 網絡å¯ä»¥åˆ†ç‚ºä»¥ä¸‹æ–¹å¼ï¼š
â—多臺PLC è¯ç¶²ï¼Œå„PLC 地ä½å¹³ç‰ï¼Œå¯å¤–æ“´HMI 人機界é¢ã€‚
â—多臺PLC è¯ç¶²ï¼Œç”±1 臺工控PC 作為主控制器與æ“作界é¢ã€‚
下é¢å°‡åˆ†åˆ¥æè¿°ï¼Œå¾žæ‡‰ç”¨å€åˆ¥ã€ç¡¬ä»¶é…ç½®ã€è»Ÿä»¶è¨ç½®ç‰æ–¹é¢åŠ ä»¥èªªæ˜Žã€‚
2.1 多臺PLC 串行è¯ç¶²
通éŽä¸€å€‹RS-232/RS-485 轉CAN-bus 網關進行信號轉æ›ï¼Œç¨ç«‹PLC 就具有了ç¾å ´ç¸½ç·šCAN-bus 通訊接å£ã€‚多臺具有ç¾å ´ç¸½ç·šCAN-bus 通訊接å£çš„PLC 之間相互連接,å³å¯ä»¥çµ„建PLC 網絡。
æ¯ä¸€è‡ºé€£æŽ¥PLC 單元的RS-232/RS-485 轉CAN-bus 網關都å¯ä»¥è¨å®šä¸€å€‹ç¨ç«‹çš„è¨å‚™ID號,長度為11 使ˆ–29 ä½ï¼Œç”¨ä½œç‚ºè©²PLC 單元的地å€ã€‚æ¯ä¸€è‡ºè¯ç¶²çš„PLC å–®å…ƒåœ¨ç™¼é€æ•¸æ“šæ™‚ï¼Œå¯è¨å®šåœ¨æ•¸æ“šæµä¸è‡ªå‹•æ·»åŠ æœ¬åœ°ç¶²é—œçš„è¨å‚™ID 號;åŒç†ï¼Œæ¯ä¸€è‡ºPLC 單元在接收數據時,å¯è¨å®šç”±ç¶²é—œæª¢æŸ¥æ•¸æ“šæµä¸çš„è¨å‚™ID 號,自動接收符åˆè¦æ±‚的數據。
通éŽä¸Šè¿°æ–¹å¼çµ„建的PLC 網絡,å„臺PLC 地ä½å¹³ç‰ï¼Œä»»ä½•一臺PLC å‡å¯ä»¥ä¸»å‹•發起數據通訊,由CAN-bus 網關起硬件自動仲è£ä½œç”¨ï¼Œä¿éšœæ¯ä¸€æ¬¡é€šè¨Šçš„æ•¸æ“šä¸ä¸Ÿå¤±ï¼›ç¶²çµ¡ä¸çš„PLC 數é‡ä¸å—é™åˆ¶ï¼Œæ•¸ç™¾ã€ä¸Šåƒè‡ºPLC 都å¯ä»¥é€£æŽ¥åœ¨åŒä¸€ç¾å ´ç¸½ç·šCAN-bus 網絡ä¸ã€‚åŒæ™‚,這個PLC 網絡ä¸é‚„å¯ä»¥é€£æŽ¥å…·æœ‰CAN-bus 通訊接å£çš„HMI 人機界é¢ï¼Œæˆ–由其ä¸ä¸€è‡ºPLC通éŽå…¶ä»–的串行通訊端å£é€£æŽ¥HMI 人機界é¢ã€‚
這種方å¼å»ºç«‹çš„PLC 網絡如圖 1 所示。
[align=center]

圖 1 多臺PLC 串行è¯ç¶²[/align]
采用這種方å¼çµ„建PLC ç¶²çµ¡ï¼Œèˆ‡é¸æ“‡é›†æˆCAN-bus 通訊功能的PLC è¨å‚™ç›¸æ¯”ï¼Œå…·æœ‰æ›´åŠ éˆæ´»çš„ç³»çµ±æ“´å±•èƒ½åŠ›ï¼Œä¹Ÿèƒ½å¤ ç²å¾—更好的性價比。
2.2 多臺PLC 與工控PC 并行è¯ç¶²
工控PC èƒ½å¤ æ·±å…¥åœ°é…åˆPLC å» å•†æä¾›çš„å„ç¨®è»Ÿä»¶ï¼Œå¾žè€Œå¯¦ç¾æ›´å¤šå¼·å¤§çš„功能,比如系統é…ç½®ã€äººæ©Ÿç•Œé¢ã€çµ„態開發ç‰ï¼Œåœ¨PLC é ˜åŸŸçš„ä½œç”¨ä¹Ÿè¶Šä¾†è¶Šä¸å¯æˆ–缺。通常,工控PC與單臺PLC 通éŽ1 個串å£é€£æŽ¥é€šè¨Šï¼Œå¯¦ç¾å„種擴展功能;但串å£çš„通訊è·é›¢ã€ç¯€é»žæ•¸é‡éƒ½å—åˆ°äº†ä¸²å£æœ¬èº«çš„æ€§èƒ½é™åˆ¶ã€‚比如,RS-232 標準åªå¯ä»¥å¯¦ç¾â€œé»žï¼é»žâ€é€šè¨Šï¼ŒRS-485/422æ¨™æº–èƒ½å¤ å¯¦ç¾32 個節點以內的通訊,但通訊è·é›¢ã€æŠ—干擾能力都比較弱,并ä¸èƒ½å¤ 滿足實際工æ¥ç¾å ´å¤šè‡ºPLC è¯ç¶²æ‡‰ç”¨çš„需求。
工控PC å…§ç½®PC-CAN 接å£å¡ï¼Œå¯ä»¥å»ºç«‹èµ·1 æ¢æˆ–者多æ¢ç¾å ´ç¸½ç·šCAN-bus 網絡,并通éŽé€£æŽ¥åœ¨CAN-bus 網絡ä¸çš„網關RS-232/RS-485 轉CAN-bus 轉æ›å™¨ï¼Œå€ŸåŠ©äºŽCAN-bus 網絡é…套的“虛擬串å£â€è»Ÿä»¶ï¼Œå»ºç«‹å¤šé”2047 個標準的串行通訊端å£ï¼Œå¾žè€Œé€£æŽ¥å¤šé”2047æ¢ä¸²è¡Œç¶²çµ¡ã€‚也就是說,å¯ä»¥åœ¨åŒ1 æ¢æ™®é€šé›™çµžç·šä¸Šé€£æŽ¥å¤šé”2047 臺PLC è¨å‚™ï¼Œå·¥æŽ§PC訪å•連接在這æ¢CAN-bus 網絡上的PLC è¨å‚™ï¼Œä¹Ÿèˆ‡æ“作標準串å£å®Œå…¨ä¸€è‡´ã€‚這種方å¼å¯ä»¥å……分發æ®å·¥æŽ§PC 的作用,通訊效率也比較高。
通éŽå·¥æŽ§PC 組建多臺PLC ç¶²çµ¡çš„ç³»çµ±çµæ§‹å¦‚圖 2 所示。按這一種方å¼çš„建立PLC ç¶²
çµ¡çš„é€šè¨Šæ•ˆçŽ‡è¼ƒé«˜ï¼Œæ‡‰ç”¨éˆæ´»ï¼Œæ˜¯ä¸€èˆ¬PLC 網絡建è¨çš„ä¸»æµæ–¹å‘。
[align=center]

圖 2 多臺PLC 與工控PC 并行è¯ç¶²[/align]
3 PLC 網絡的硬件組æˆèˆ‡é€£æŽ¥
建立PLC 網絡,除了實ç¾å…·é«”功能的PLC è¨å‚™ï¼Œé‚„需è¦ä¸€äº›å»ºç«‹ç¾å ´ç¸½ç·šCAN-bus網絡的è¨å‚™ï¼Œä¸»è¦æœ‰RS-232 轉CAN-bus 網關ã€PC-CAN 接å£å¡ç‰ã€‚下é¢å°‡ç°¡è¦ä»‹ç´¹ä¸€ä¸‹é€™äº›è¨å‚™ã€‚
3.1 RS-232 轉CAN-bus 網關
CAN232MB 轉æ›å™¨å³ä¸€ç¨®å¸¸ç”¨åž‹è™Ÿçš„RS-232 轉CAN-bus 網關。
CAN232MB 轉æ›å™¨é›†æˆæœ‰1 個RS-232 通é“ã€1 個CAN-bus 通é“,å¯ä»¥å¾ˆæ–¹ä¾¿åœ°é€£æŽ¥åˆ°PLC è¨å‚™çš„RS-232 標準通訊端å£ï¼Œä½¿PLC è¨å‚™å…·æœ‰èˆ‡ç¾å ´ç¸½ç·šCAN-bus 網絡通訊的能力。CAN232MB 轉æ›å™¨æä¾›ä¸‰ç¨®å·¥ä½œæ¨¡å¼â€”â€”é€æ˜Žè½‰æ›ã€é€æ˜Žå¸¶æ¨™è˜è½‰æ›ã€Modbus å”è°è½‰æ›ï¼Œåˆ†åˆ¥å¯ä»¥æ”¯æŒä¸åŒé€šè¨Šå”è°çš„PLC è¨å‚™ã€‚
CAN232MB 轉æ›å™¨çš„RS-232 é€šé“æ”¯æŒå¤šç¨®é€šè¨Šæ³¢ç‰¹çŽ‡ï¼ŒèŒƒåœæ˜¯600bps~115200bps。CAN-bus é€šé“æ”¯æŒåœ‹éš›ä¸»æµçš„15 種標準通訊波特率,也支æŒç”¨æˆ¶è‡ªå®šç¾©æ³¢ç‰¹çŽ‡ï¼Œæ³¢ç‰¹çŽ‡èŒƒåœç‚º5Kbps~1Mbps。CAN232MB 轉æ›å™¨å…§è¨1024 å—節的數據緩沖å€ï¼›ä¸€èˆ¬å·¥ä½œæ¨¡å¼ä¸ï¼Œç”¨æˆ¶å¯ä»¥è»Ÿä»¶è¨å®šCAN232MB 轉æ›å™¨çš„CAN-bus 通訊波特率為RS-232 波特率的2 å€ä»¥ä¸Šï¼Œç”¨ä»¥ä¿è‰å¤§æ‰¹é‡æ•¸æ“šå‚³è¼¸æ™‚數據緩沖å€ä¸è‡´æº¢å‡ºã€‚
通éŽPC é…置軟件,CAN232MB 轉æ›å™¨å¯è¨å®šä¸€å€‹ç¨ç«‹çš„11 使ˆ–29 ä½è¨å‚™ID 號,å¯ä»¥ç”¨ä½œç‚ºè©²ç¶²é—œæ‰€é€£æŽ¥PLC è¨å‚™çš„地å€ç·¨è™Ÿï¼Œå¹¶å°å¾€ä¾†ä¸²å£çš„æ•¸æ“šæµåŠ ä»¥æ¨™æ³¨æˆ–è˜åˆ¥ã€‚
CAN232MB 轉æ›å™¨æ»¿è¶³å·¥æ¥ç´šæº«åº¦èŒƒåœï¼ˆ-40℃~+85â„ƒï¼‰ï¼Œå…§ç½®ç¡¬ä»¶é›™çœ‹é–€ç‹—ï¼Œèƒ½å¤ åœ¨æƒ¡åŠ£çš„å·¥ä½œç’°å¢ƒä¸é€£çºŒé‹è¡Œã€‚
[align=center]

圖 3 CAN232MB 轉æ›å™¨[/align]
å°äºŽåªé›†æˆæœ‰RS-485/422 通訊端å£çš„PLC è¨å‚™ï¼Œå¯ä»¥é¸æ“‡RS-485 轉CAN-bus 網關;類似的產å“型號有CAN485MB 轉æ›å™¨ï¼ŒåŸºæœ¬åŠŸèƒ½èˆ‡CAN232MB 轉æ›å™¨ä¸€è‡´ã€‚
3.2 PC-CAN 接å£å¡
工控PC 內置或外接PC-CAN 接å£å¡ï¼Œå¯ä»¥ä»¤å·¥æŽ§PC 具有ç¾å ´ç¸½ç·šCAN-bus 通訊接å£ï¼Œå¾žè€Œæˆç‚ºCAN-bus 網絡ä¸çš„一個主è¦åŠŸèƒ½ç¯€é»žã€‚
æ ¹æ“šèˆ‡PC 連接方å¼çš„ä¸åŒï¼ŒPC-CAN 接å£å¡å¯ä»¥åˆ†ç‚ºå¾ˆå¤šç¨®ä¸åŒçš„類型,常見的型號有PCI-CAN 接å£å¡ã€ISA-CAN 接å£å¡ã€PC104-CAN 接å£å¡ã€USBCAN 接å£å¡ã€ä»¥å¤ªç¶²è½‰CAN 接å£å¡ï¼Œç‰ç‰ã€‚æ ¹æ“šåž‹è™Ÿçš„ä¸åŒï¼ŒåŒä¸€å€‹PC-CAN 接å£å¡å¯ä»¥é›†æˆ1~4 個CAN-bus通é“,åŒä¸€PC å¯ä»¥é€£æŽ¥å¤šé”8 塊PC-CAN 接å£å¡ï¼Œå¾žè€Œå¯ä»¥ä½¿åŒä¸€è‡ºPC 連接多個ç¾å ´ç¸½ç·šCAN-bus 網絡。
PC-CAN 接å£å¡ä¸€èˆ¬éƒ½æä¾›æœ‰å¼·å¤§çš„軟件支æŒï¼Œå…¶ä¸åŒ…括CAN-bus 測試工具ã€å¤šèªžè¨€ç‰ˆæœ¬ï¼ˆVC++ã€VBã€Delphiã€C++Builder)的API 開發例程,也æä¾›æœ‰æ”¯æŒçµ„態開發的OPC æœå‹™å™¨è»Ÿä»¶ï¼Œæ–¹ä¾¿ç”¨æˆ¶é‡å°ä¸åŒçš„產å“é …ç›®é–‹ç™¼å…·é«”çš„æ‡‰ç”¨ç¨‹åºã€‚å¦å¤–,支æŒå·¥æŽ§PC 與多臺PLC è¯ç¶²çš„â€œè™›æ“¬ä¸²å£æœå‹™å™¨â€è»Ÿä»¶å¯ä»¥ä»¤ç”¨æˆ¶åœ¨ä¸ç”¨ä¿®æ”¹åŽŸæœ‰PC è»Ÿä»¶çš„åŸºç¤Žä¸Šï¼Œé–‹ç™¼æ–°é …ç›®çš„å¯¦éš›æ‡‰ç”¨ã€‚
æ ¹æ“šä¸åŒçš„æ‡‰ç”¨å ´åˆã€åƒæ•¸éœ€æ±‚,å¯ä»¥æœ‰å¤šç¨®ä¸åŒåž‹è™Ÿçš„PC-CAN 接å£å¡é©ç”¨ã€‚圖 4為一些經常使用的PC-CAN 接å£å¡ã€‚
[align=center]

圖 4 常見型號的PC-CAN 接å£å¡[/align]
3.3 通訊附件
通訊電纜是ç¾å ´ç¸½ç·šCAN-bus 網絡的é‡è¦çµ„件。通訊電纜的åˆç†é¸æ“‡ï¼Œå°CAN-bus 網絡的通訊è·é›¢ä¹Ÿæœ‰éžå¸¸é‡è¦çš„影響。
使用國標AWG18(截é¢ç©ç‚ºÎ¦0.75 mm2)的普通雙絞線作為CAN-bus 網絡的通訊電纜,一般å¯ä»¥ä¿è‰åœ¨1Km è·é›¢ä¸‹å¯¦ç¾å¯é 通訊;使用截é¢ç©ç‚ºÎ¦1.5 mm2 的普通雙絞線,則å¯ä»¥é”到6~7Km 的通訊è·é›¢ã€‚通常,隨通訊è·é›¢çš„åŠ é•·ï¼Œéœ€è¦é©ç•¶åŠ å¤§é€šè¨Šé›»çºœç·šçš„æˆªé¢ç©ã€‚
ç¾å ´ç¸½ç·šCAN-bus ç¶²çµ¡åœ¨å¸ƒç·šæ™‚ï¼Œå¿…é ˆæ³¨æ„終端電阻的連接。主干線的最é å…©ç«¯å¿…é ˆå„連接一個120Ω 的終端電阻,å°äºŽä¸»å¹²ç·šä¸Šçš„其它任何CAN-bus 節點è¨å‚™ï¼Œå‰‡ä¸ç”¨æŽ¥çµ‚端電阻;如果使用了CANbridge 網橋分割æˆå¤šå€‹ç‰©ç†ç¨ç«‹çš„CAN-bus åç¶²ï¼ŒåŒæ¨£è¦åœ¨æ¯å€‹CAN-bus å網的最é å…©ç«¯å„æŽ¥ä¸€å€‹120Ω 的終端電阻。
å¦å¤–,CAN-bus 網絡的分支線ä¸å®œéŽé•·ï¼Œå»ºè°æ¯ä¸€æ¢é€£æŽ¥PLC è¨å‚™çš„分支線長度å°äºŽ3 米;為ä¿éšœå¯é 的連接,分支線宜采用焊接或緊密絞接的方å¼ï¼Œä»¥ä¿éšœCAN-bus 網絡ä¸çš„ç‰æ•ˆé˜»æŠ—ä¸è¶…出å…許的范åœã€‚
4 PLC 網絡的軟件é…置與è¨ç½®
連接PLC è¨å‚™çš„RS-232 轉CAN-bus 網關需è¦é…置一些é‹è¡Œåƒæ•¸ï¼Œä»¥ä¿éšœPLC 網絡ä¸çš„æ¯ä¸€è‡ºPLC è¨å‚™éƒ½å¯ä»¥æ£å¸¸é‹è¡Œã€‚é…ç½®åƒæ•¸åŒ…括網關的é‹è¡Œæ–¹å¼ã€RS-232 通訊波特率ã€CAN-bus 通訊波特率ã€è¨å‚™ID 號ç‰ã€‚
我們以組建一個OMRON å…¬å¸å¤šè‡ºPLC è¨å‚™çš„PLC 網絡為例,詳細說明å„功能軟件的é…ç½®éŽç¨‹ã€‚
4.1 RS232 轉CAN-bus 網關的é…ç½®
å°‡CAN232MB 轉æ›å™¨çš„CFG 引腳與GND å¼•è…³çŸæŽ¥ï¼ŒCAN232MB å³é€²å…¥é…置方å¼ï¼Œå¯ä»¥é€šéŽéš¨æ©Ÿå…‰ç›¤çš„PC é…置軟件è¨ç½®å·¥ä½œåƒæ•¸ã€‚
æ ¹æ“šOMRON å…¬å¸PLC è¨å‚™çš„RS-232 ç«¯å£æ•¸æ“šæ ¼å¼ï¼ŒCAN232MB 轉æ›å™¨æ‡‰æŒ‰ä»¥ä¸‹æ¥é©Ÿé€²è¡Œé…置。
1. é…ç½®ç¶²é—œçš„æ•¸æ“šè½‰æ›æ–¹å¼ï¼Œå¦‚圖 5 所示。
[align=center]

圖 5 é…ç½®ç¶²é—œçš„è½‰æ›æ–¹å¼[/align]
è½‰æ›æ¨¡å¼ç‚ºâ€œé›™å‘逿˜Žè½‰æ›â€æ–¹å¼ï¼Œé€æ˜Žè½‰æ›å³æ„味著兩種通訊接å£çš„æŽ¥æ”¶æ•¸æ“šä¸ä½œä»»ä½•修改的傳éžçµ¦å°æ–¹é€šé“。
2. é…置網關的串å£é€šä¿¡æ ¼å¼ï¼Œå¦‚圖 6 所示。
[align=center]

圖 6 é…置網關的串å£é€šè¨Šåƒæ•¸[/align]
æ ¹æ“šPLC è¨å‚™çš„RS-232 åƒæ•¸ï¼Œè¨å®šRS-232 通é“çš„æ³¢ç‰¹çŽ‡åƒæ•¸ï¼›ç¤ºä¾‹ä¸ç‚º9600bps,與PLC çš„é‹è¡Œåƒæ•¸ä¸€è‡´ã€‚
3. é…置網關的CAN é€šä¿¡åƒæ•¸ï¼Œå¦‚圖 7 所示。
[align=center]

圖 7 é…置網關的CAN-bus é€šè¨Šåƒæ•¸[/align]
CAN 通é“çš„æ³¢ç‰¹çŽ‡ä¸»è¦æ˜¯è€ƒæ…®CAN-bus 網絡的最é 通信è·é›¢ï¼›å¦å¤–,CAN-bus ç¶²çµ¡ä¸æ‰€æœ‰è¨å‚™çš„CAN-bus é€šè¨Šæ³¢ç‰¹çŽ‡å¿…é ˆä¸€è‡´ï¼Œä¹Ÿèˆ‡PC-CAN 接å£å¡çš„æ³¢ç‰¹çއè¨ç½®ä¸€è‡´ã€‚
ç™¼é€æ¨™è˜ç¬¦è¨ç½®ç‚ºåå…進制的0x03 值,表示網關發é€çš„CAN-bus æ¨™æº–å ±æ–‡ID 為0x03å€¼ï¼›éŽæ¿¾é©—收碼è¨ç½®æˆ0x03 值,表示網關åªèƒ½æŽ¥æ”¶å ±æ–‡ID 為0x03 çš„æ¨™æº–å ±æ–‡ã€‚ç•¶ä½¿ç”¨è™›æ“¬ä¸²å£é€šè¨Šæ–¹å¼æ™‚,這兩個è¨ç½®å€¼å¿…é ˆç‚ºåŒä¸€å€‹å€¼ã€‚注æ„,這里的數值0x03 與下一æ¥é…ç½®è™›æ“¬ä¸²å£æ™‚的虛擬串å£è™Ÿè¨ç½®ä¸€è‡´ã€‚也就是說,該網關è¨å‚™æ‰€æ˜ 射的虛擬串å£è™Ÿå¿…é ˆç‚ºCOM3。åŒç†ï¼Œè¨ç½®ç‚º0x04 值的網關è¨å‚™æ‰€å°æ‡‰çš„虛擬串å£è™Ÿç‚ºCOM4,以æ¤é¡žæŽ¨ã€‚
4. è¨ç½®å¥½åƒæ•¸åŽï¼Œé»žæ“Šâ€œå¯«é…ç½®â€æŒ‰éˆ•,如圖 8 所示。
[align=center]

圖 8 æˆåŠŸå¯«å…¥ç¶²é—œçš„é…ç½®åƒæ•¸[/align]
ç„¶åŽï¼ŒåŽ»é™¤é€£æŽ¥åœ¨CFG 引腳與GND 引腳之間的çŸè·¯ç·šï¼Œçµ¦CAN232MB 轉æ›å™¨é‡æ–°ä¸Šé›»ï¼Œä½¿å‰›æ‰çš„é…ç½®åƒæ•¸ç”Ÿæ•ˆã€‚網關CAN232MB 轉æ›å™¨çš„è¨ç½®å³å‘Šå®Œæˆã€‚
4.2 虛擬串å£çš„é…ç½®
在多臺PLC 與工控PC 并行è¯ç¶²çš„æ‡‰ç”¨å ´åˆï¼Œé€šéŽè™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶ï¼Œå·¥æŽ§PC å¯ä»¥æ²¿ç”¨æ¨™æº–串å£é€šè¨Šçš„æ–¹å¼ï¼Œè¨ªå•連接在CAN-bus 網絡ä¸çš„å„臺PLC è¨å‚™ã€‚
4.2.1 è™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶
è™›æ“¬ä¸²å£æœå‹™å™¨ï¼Œé¡§åæ€ç¾©ï¼Œé€šéŽé‹è¡Œæ¤è™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶ï¼Œå¯ä»¥åœ¨PC 上構建一個或多個虛擬串å£ã€‚這些虛擬串å£çš„æ“ä½œå’ŒçœŸå¯¦ä¸²å£æ“ä½œä¸€æ¨£ï¼Œåªæ˜¯åœ¨ç”¨æˆ¶èª¿ç”¨è™›æ“¬ä¸²å£çš„軟件內部,PC é€šéŽæ‰€é€£æŽ¥çš„PC-CAN 系列接å£å¡æŠŠä¸²å£é€šè¨Šæ•¸æ“šå‚³è¼¸åˆ°CAN-bus 網絡,并且由連接在CAN-bus 網絡ä¸çš„RS-232 轉CAN-bus 網關(例如CAN232MB 轉æ›å™¨ï¼‰ï¼Œå†æ¬¡å°‡CAN-bus 數據å†è½‰æˆRS-232 䏲壿•¸æ“šï¼Œé€™æ¨£å°±å¯¦ç¾äº†PC å’Œé 程串å£ä¹‹é–“çš„ç„¡ç¸«é€æ˜ŽéŠœæŽ¥ï¼Œä½¿é 程虛擬串å£çš„æ“ä½œèˆ‡æ‡‰ç”¨çœ‹èµ·ä¾†èˆ‡æœ¬åœ°ä¸²å£æ²’什么ä¸åŒã€‚一般情æ³ä¸‹ï¼ŒPC 串å£ç¨‹åºå‡ç´šåˆ°æ“作é ç¨‹è™›æ“¬ä¸²å£æ™‚,基本無需進行任何修改,åªéœ€æ”¹è®Šè»Ÿä»¶æ“作的串å£è™Ÿå³å¯ã€‚
è™›æ“¬ä¸²å£æœå‹™å™¨çš„軟件功能如下所列:
1. æ”¯æŒæ“作系統Win2000/XP/2003ï¼›
2. 坿·»åŠ å¤šé”2047 個虛擬串å£ï¼›
3. å¯ä»¥å‹•æ…‹æ·»åŠ è¨å‚™æ˜ 射到任æ„已安è£çš„虛擬串å£ä¸Šï¼Œä¹Ÿå¯ä»¥å‹•æ…‹åˆªé™¤æ˜ å°„åˆ°ä»»æ„虛擬串å£ä¸Šçš„è¨å‚™ï¼›
4. å¯ä¿å˜ç•¶å‰é…置到文件ä¸ï¼›
5. å¯è¨ç½®æœå‹™å™¨å•Ÿå‹•æ¢ä»¶ï¼ˆæ¯”如開機自啟動),也å¯ä»¥è¨ç½®å•Ÿå‹•時的默èªé…置。
è™›æ“¬ä¸²å£æœå‹™å™¨çš„æ‡‰ç”¨å¦‚圖 9 所示。
[align=center]

圖 9 用于CAN çš„è™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶[/align]
4.2.2 虛擬串å£è»Ÿä»¶è¨ç½®
由于OMRON å…¬å¸ç³»åˆ—PLC è¨å‚™çš„串å£é€šè¨Šæ ¼å¼ï¼ˆ7/2/1/Even)與通常的PC 軟件串å£é€šè¨Šæ ¼å¼ï¼ˆ8/1/1/None)有所å€åˆ¥ï¼Œå·¥æŽ§PC 需è¦é‹è¡Œç”¨å°ˆé–€ç”¨äºŽOMRON å…¬å¸PLC çš„è™›æ“¬ä¸²å£æœå‹™å™¨â€œZVComCANMgr(for OMRON PLC)â€è»Ÿä»¶ã€‚具體按以下æ¥é©Ÿï¼Œåœ¨PC ä¸Šé€²è¡Œè™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶çš„è¨ç½®ã€‚
1. 點擊“文件â€èœå–®ï¼Œæ–°å»ºä¸€é …é…置;é…置文件命å為OMRON_PLC,如圖 10 所示。
[align=center]

圖 10 新建一個é…置文件[/align]
2. 建立虛擬串å£ï¼Œå¦‚圖 11 所示。
[align=center]

圖 11 建立虛擬串å£çš„æ“ä½œ[/align]
å»ºç«‹è™›æ“¬ä¸²å£æ™‚ï¼Œé¦–å…ˆé¸æ“‡éœ€è¦å‰µå»ºçš„è™›æ“¬ä¸²å£æ•¸é‡ã€‚åœ¨â€œè™›æ“¬ä¸²å£æ•¸â€å³é‚Šçš„下拉框ä¸ï¼Œé¸æ“‡éœ€è¦å»ºç«‹çš„è™›æ“¬ä¸²å£æ•¸é‡ï¼Œå€¼ç‚º0~2047,其ä¸é¸æ“‡0 表示ä¸å»ºç«‹è™›æ“¬ä¸²å£ã€‚如圖11 所示,列表數值為“10â€è¡¨ç¤ºé¸æ“‡å»ºç«‹10 個虛擬串å£è¨å‚™ã€‚åœ¨â€œè™›æ“¬ä¸²å£æ•¸â€è¨ç½®å®ŒæˆåŽï¼Œä¸‹ä¸€æ¥é»žæ“Šâ€œå‰µå»ºè™›æ“¬è™›æ“¬ä¸²å£â€æŒ‰éˆ•ï¼›PC å³è‡ªå‹•åŠ è¼‰é©…å‹•ï¼Œå®Œæˆè™›æ“¬ä¸²å£è¨å‚™çš„æ·»åŠ éŽç¨‹ã€‚這時,用戶å¯å¾žè¨ˆç®—機的è¨å‚™åˆ—è¡¨ä¸æŸ¥æ‰¾åˆ°é€™äº›æ–°å¢žçš„虛擬串å£è¨å‚™ï¼Œå¦‚圖 12 所示。
[align=center]

圖 12 è¨å‚™åˆ—è¡¨ä¸æ–°å»ºçš„虛擬串å£è¨å‚™[/align]
3. æ˜ å°„ç«¯å£ï¼Œå¦‚圖 13 所示。
虛擬串å£å»ºç«‹ä¹‹åŽï¼Œåœ¨â€œæœªæ˜ 射串å£â€åˆ—表ä¸é¡¯ç¤ºPC 已創建的虛擬串å£è™Ÿã€‚æ¤æ™‚ï¼Œé»žæ“Šâ€œæ·»åŠ â€ï¼ˆç”¨äºŽæ·»åŠ å–®å€‹è™›æ“¬ä¸²å£ï¼‰æˆ–â€œæ‰¹é‡æ·»åŠ â€ï¼ˆç”¨äºŽæ·»åŠ æ‰€æœ‰çš„è™›æ“¬ä¸²å£ï¼‰ï¼Œå°‡æŒ‡å®šçš„虛擬串å£èˆ‡CAN-bus 網絡æ†ç¶å±¬æ€§ï¼Œå¹¶æ·»åŠ åˆ°â€œå·²æ˜ å°„ä¸²å£â€åˆ—表ä¸ã€‚
[align=center]



圖 13 æ·»åŠ åˆ°â€œå·²æ˜ å°„ä¸²å£â€[/align]
4. 啟動æœå‹™å™¨ï¼Œå¦‚圖 14 所示。
在“æœå‹™â€èœå–®ä¸å•Ÿå‹•è™›æ“¬ä¸²å£æœå‹™å™¨ï¼Œå°±å¯ä»¥ä½¿å·²æ˜ 射的虛擬串å£èƒ½å¤ æ£å¸¸é€šè¨Šã€‚
[align=center]

圖 14 å•Ÿå‹•è™›æ“¬ä¸²å£æœå‹™å™¨[/align]
è™›æ“¬ä¸²å£æœå‹™å™¨çš„å•Ÿå‹•åƒæ•¸å¯ç”±ç”¨æˆ¶è¨ç½®ï¼Œæ–¹ä¾¿ç³»çµ±çš„æ—¥å¸¸ç®¡ç†èˆ‡é‹è¡Œï¼Œå¦‚圖 15 所示。
[align=center]

圖 15 è¨ç½®æœå‹™å™¨çš„ç³»çµ±åƒæ•¸[/align]
4.2.3 虛擬串å£çš„æ¸¬è©¦
PC é‹è¡Œè™›æ“¬ä¸²å£æœå‹™å™¨ä¹‹åŽï¼Œä¾¿åœ¨è¨å‚™åˆ—表ä¸å¤šå‡ºäº†ä¸€çµ„虛擬串å£ï¼›è™›æ“¬ä¸²å£çš„編號一般會從COM3 é–‹å§‹ï¼Œå…·é«”ç·¨è™Ÿæœƒå–æ±ºäºŽPC 機的硬件é…置。
å¯ä»¥ä½¿ç”¨è¶…ç´šçµ‚ç«¯è»Ÿä»¶ï¼Œå°æ–°å»ºçš„虛擬串å£é€²è¡Œé€šä¿¡æ¸¬è©¦ã€‚å°‡1 臺測試PC(標è˜A 機)的標準串å£é€£æŽ¥åˆ°CAN232MB 轉æ›å™¨çš„RS-232 端å£ï¼Œåœ¨å¦1 臺é‹è¡Œè™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶çš„æ¸¬è©¦PC(標è˜B 機)建立一æ¢CAN-bus 網絡并連接到CAN232MB 轉æ›å™¨çš„CAN 端å£ã€‚
首先,è¨ç½®å¹¶å•Ÿå‹•è™›æ“¬ä¸²å£æœå‹™å™¨ã€‚é ç¨‹çš„è™›æ“¬ä¸²å£æŒ‰ä»¥ä¸‹æ¥é©Ÿé€²è¡Œæ¸¬è©¦ï¼š
第一æ¥ï¼ŒA 機和B 機都打開超級終端軟件,è¨ç½®æ‰€é€£æŽ¥çš„串å£å±¬æ€§ï¼Œä¾‹å¦‚將通訊波特率è¨ç‚º9600bpsã€æ•¸æ“šä½8ã€ç„¡å¥‡å¶æ ¡é©—ã€åœæ¢ä½1ã€ç„¡æµæŽ§åˆ¶ï¼›é€™äº›åƒæ•¸è¦èˆ‡CAN232MB轉æ›å™¨çš„é…ç½®åƒæ•¸ä¸€è‡´ã€‚
第二æ¥ï¼Œä¸²è¡Œç™¼é€å—符測試。在A 機的超級終端窗å£ä¸éµå…¥ä¸€äº›å—符,在B 機的超級終端窗å£ä¸å°‡æœƒçœ‹åˆ°é€™äº›å—符的出ç¾ã€‚å之,在B 機的超級終端窗å£ä¸éµå…¥ä¸€äº›å—符,在A機的超級終端窗å£ä¸ä¹Ÿæœƒå‡ºç¾åŒæ¨£å…§å®¹çš„å—符。
[align=center]

圖 16 虛擬串å£çš„串行發é€å—符測試[/align]
第三æ¥ï¼Œç™¼é€æ–‡ä»¶æ¸¬è©¦ã€‚點擊A 機的超級終端軟件èœå–®â€œå‚³é€â†’ç™¼é€æ–‡ä»¶â€¦â€ï¼Œå³å¯ä»¥ç™¼é€æŒ‡å®šçš„æ–‡ä»¶åˆ°B 機,文件ä¿å˜åœ¨B 機的默èªç›®éŒ„ä¸ï¼›å之亦然。
[align=center]

圖 17 虛擬串å£çš„ä¸²è¡Œç™¼é€æ–‡ä»¶æ¸¬è©¦[/align]
有關虛擬串å£çš„詳細說明,å¯ä»¥åƒè€ƒè™›æ“¬ä¸²å£æœå‹™å™¨çš„è»Ÿä»¶å¹«åŠ©åŠæŠ€è¡“æ–‡æª”ã€Šæ§‹å»ºCAN-bus 網絡ä¸çš„虛擬串å£ã€‹ã€‚
5 應用實例
在一個實際的油田控制系統ä¸ï¼Œéœ€è¦ç”±è¶…éŽ32 臺PLC 組建一個ä¸åž‹PLC 網絡。æ¯ä¸€è‡ºPLC 用于控制一套工作井站的ç¾å ´è¨å‚™ã€‚é¸ç”¨PLC 型號為OMRON å…¬å¸CPM2A ç³»åˆ—ï¼Œä¸æ”¯æŒç¾å ´ç¸½ç·šCAN-bus ç¶²çµ¡ï¼Œä½†é›†æˆæœ‰1 個RS-232 通訊端å£ã€‚單臺PLC 之間的最大è·é›¢è¶…éŽäº†10Km è·é›¢ï¼Œä½†é€™å€‹æ²¹ç”°æŽ§åˆ¶ç³»çµ±è¦æ±‚èƒ½å¤ åœ¨åŒä¸€å€‹ä¸»æŽ§åˆ¶å™¨ä¸Šï¼Œå°æ¯ä¸€è‡ºç¾å ´çš„PLC 實時監控。由于å„個ç¾å ´PLC 工作點è·é›¢å¾ˆé ,主控制器PC ä¸å¯èƒ½å¯¦ç¾æ¯ä¸€è‡ºPLCè¨å‚™çš„å–®ç¨é›»çºœé€£æŽ¥ã€‚å› æ¤ï¼Œå°‡å„臺PLC è¨å‚™é€šéŽç¾å ´ç¸½ç·šCAN-bus 網絡連接,組建一個地å€èŒƒåœå…§çš„PLC 網絡,從而實ç¾PLC é 程ç¶è·ã€æ•¸æ“šå¯¦æ™‚ç›£æŽ§ï¼Œæ—¢èƒ½å¤ å¤§å¤§æé«˜ç³»çµ±çš„ç®¡ç†æ•ˆçŽ‡ï¼Œä¹Ÿå¯ä»¥æœ‰æ•ˆåœ°é™ä½Žç¶²çµ¡å»ºè¨æˆæœ¬ã€‚
井站的PLC è¨å‚™é›†æˆæœ‰1 個RS-232 串行通訊端å£ï¼Œé€šéŽCAN232MB 轉æ›å™¨é€£æŽ¥åˆ°ç¾å ´ç¸½ç·šCAN-bus 網絡。主控制器PC å…§ç½®1 塊PC-CAN 接å£å¡ï¼Œåž‹è™Ÿç‚ºPCI-9840 接å£å¡ï¼Œå¯ä»¥ä½¿PC æˆç‚ºCAN-bus 網絡ä¸çš„ç¯€é»žï¼Œèƒ½å¤ åŒæ™‚管ç†4 路物ç†ç¨ç«‹çš„CAN-bus 網絡。
5.1 CAN-bus 網絡的相關概念
ç¾å ´ç¸½ç·šCAN-bus ç¶²çµ¡çš„æ‹“æ’²çµæ§‹ä¸€èˆ¬ä½¿ç”¨ç›´ç·šçµæ§‹ï¼Œå¦‚圖 18 所示。所有CAN-busè¨å‚™ç¯€é»žé€šéŽçŸåˆ†æ”¯ç·šé€£æŽ¥è‡³CAN-bus 網絡的主干線;çŸåˆ†æ”¯ç·šä¸å®œéŽé•·ï¼Œä¸€èˆ¬å¿…é ˆå°äºŽ3~6 ç±³ã€‚å¦‚æžœå› ç¶²çµ¡å¸ƒç·šã€åœ°ç†ç’°å¢ƒç‰å› ç´ ï¼Œéœ€è¦æ”¹è®ŠCAN-bus ç¶²çµ¡çš„æ‹“æ’²çµæ§‹ï¼Œå‰‡å¯ä»¥é€šéŽCANbridge 網橋或CANHub 集線器。
[align=center]

圖 18 CAN-bus ç¶²çµ¡çš„æ‹“æ’²çµæ§‹[/align]
在CAN-bus 網絡布線ä¸ï¼Œå¿…é ˆæ³¨æ„終端電阻的連接。CAN-bus 主干線的最é å…©ç«¯å¿…é ˆå„端接一個120Ω 的終端電阻;主干線上的其它任何CAN-bus 節點則ä¸ç”¨é€£æŽ¥çµ‚端電阻。
è¨å®šç‚º5Kbps 波特率時,使用截é¢ç©ç‚ºÎ¦1.5 mm2 的普通雙絞線,CAN-bus 總線至少å¯ä»¥é”到6~7Km 的通訊è·é›¢ã€‚通常,隨著通訊è·é›¢çš„åŠ é•·ï¼Œéœ€è¦é©ç•¶åŠ å¤§é€šè¨Šé›»çºœç·šçš„æˆªé¢ç©ã€‚通信è·é›¢èˆ‡æ³¢ç‰¹çŽ‡çš„é—œç³»å¦‚åœ– 19 所示。
[align=center]

圖 19 CAN-bus 網絡的波特率與通訊è·é›¢çš„關系[/align]
隨著網絡ä¸CAN-bus 節點數é‡çš„å¢žåŠ ï¼Œæœ€å¤§é€šè¨Šè·é›¢æœƒæœ‰æ‰€é™ä½Žï¼ŒåŒä¸€æ¢CAN-bus 網絡ä¸çš„節點數é‡é”到100 個時,最大通訊è·é›¢è‡³å°‘會減少20%å·¦å³ã€‚通éŽåœ¨CAN-bus 網絡的åˆç†ä½ç½®å®‰è£CANbridge 網橋,就å¯ä»¥ä½¿CAN-bus 網絡延長1 å€çš„通訊è·é›¢ï¼Œå¹¶å¯ä»¥å¢žåŠ é€£æŽ¥1 å€çš„CAN-bus 節點數目。
5.2 PLC 串行通訊å”è°
OMRON å…¬å¸CPM 系列ä¸å°åž‹PLC çš„ä¸²è¡Œé€šè¨Šä½¿ç”¨â€œå‘½ä»¤ï¼æ‡‰ç”â€é€šä¿¡æ–¹å¼ï¼Œå·¥æŽ§PC å¯é€šéŽå°ä¸²å£ç·¨ç¨‹çš„æ–¹å¼èˆ‡CPM 系列PLC å¯¦ç¾æ•¸æ“šé€šä¿¡ã€‚PC 與PLC 實ç¾ä¸€æ¬¡æ•¸æ“šäº¤æ›çš„éŽç¨‹ï¼Œå³å‚³è¼¸çš„命令和應ç”之數據總和稱為一幀,一幀最多å¯åŒ…å«131 個數據å—符。OMRON å…¬å¸PLC 采用HOSTLINK 通訊å”è°ã€‚
5.2.1 HOSTLINK å‘½ä»¤å¹€æ ¼å¼
PC 機éµå¾ªHOSTLINK å‘½ä»¤å¹€çš„æ ¼å¼ï¼Œå‘PLC 發é€å‘½ä»¤ã€‚HOSTLINK 命令幀如圖 20所示。
[align=center]

圖 20 OMRON å…¬å¸PLC å‘½ä»¤å¹€æ ¼å¼[/align]
HOSTLINK 命令幀的è¦å®šå¦‚下:
â—@ç¬¦è™Ÿå¿…é ˆç½®äºŽæ¯å€‹å‘½ä»¤çš„é–‹é ï¼›
â—ç¯€é»žè™Ÿï¼Œç”¨ä¾†è¾¨è˜æ¯ä¸€è‡ºPLC 的節點地å€ï¼›
â—讀/寫,指明PLC 的哪個寄å˜å™¨å–®å…ƒï¼Œä¾‹è®€å¯«IR/SR 倿™‚它的è˜åˆ¥ç¢¼è¨ç½®åˆ†åˆ¥ç‚ºRRå’ŒWR,讀寫DM å€åˆ†åˆ¥ç‚ºRD å’ŒWD。
â—FCS,è¨ç½®å…©å—ç¬¦çš„å¹€æª¢æŸ¥é †åºç¢¼ï¼Œæ˜¯ä¸€å€‹è½‰æ›æˆ2 個ASCII å—符的8 使•¸æ“šï¼Œé€™8 使•¸æ“šç‚ºå¾žå¹€é–‹å§‹åˆ°æ£æ–‡çµæŸï¼ˆå³FCS 之å‰ï¼‰æ‰€æœ‰æ•¸æ“šåŸ·è¡Œâ€œç•°æˆ–â€æ“ä½œçš„çµæžœã€‚
â—終æ¢ç¬¦è¨ç½®â€œï¼Šâ€å’Œå›žè»Šå…©å—ç¬¦ï¼Œè¡¨ç¤ºå‘½ä»¤çµæŸã€‚
HOSTLINK 命令幀å¯ä»¥æœ‰æœ€å¤š131 個å—符長。一個ç‰äºŽæˆ–大于132 å—ç¬¦çš„å‘½ä»¤å¿…é ˆåˆ†æˆè‹¥å¹²å¹€ã€‚命令分段,使用回車定界符(CHR $(13))。
5.2.2 HOSTLINK 應ç”å¹€æ ¼å¼
PLC å°äºŽæŽ¥æ”¶åˆ°çš„æ£ç¢ºå‘½ä»¤å¹€ï¼Œéƒ½æœƒçµ¦äºˆæ•¸æ“šéŸ¿æ‡‰ï¼Œç™¼é€HOSTLINK 應ç”å¹€ï¼Œæ ¼å¼å¦‚圖 21 所示。
[align=center]

圖 21 OMRON å…¬å¸PLC 應ç”å¹€æ ¼å¼[/align]
è˜åˆ¥ç¢¼ã€æ£æ–‡å–決于PLC æŽ¥æ”¶åˆ°çš„ä¸Šä½æ©Ÿè¯çµå‘½ä»¤ï¼ŒçµæŸå—表示命令完æˆçš„ç‹€æ…‹ï¼ˆå³æ˜¯å¦æœ‰éŒ¯èª¤ç™¼ç”Ÿï¼‰ï¼Œç•¶æ‡‰ç”幀的長度超éŽ132 å—ç¬¦ï¼Œå®ƒå¿…é ˆåˆ†æˆè‹¥å¹²å¹€ã€‚
çµæŸå—是應ç”å¹€ä¸è¡¨ç¤ºPLC 應ç”的信æ¯ã€‚ä¾‹çµæŸå—代碼為00 表示æ£å¸¸çµæŸï¼Œ13 表示FCS 錯誤,14 è¡¨ç¤ºæ ¼å¼éŒ¯èª¤ï¼Œ15 表示入å£ç¢¼æ•¸æ“šéŒ¯èª¤ï¼Œ18 表示幀長度錯誤,A3 è¡¨ç¤ºå‚³è¼¸æ•¸æ“šæ™‚å› FCS 錯誤引起終æ¢ï¼ŒA8 è¡¨ç¤ºå‚³è¼¸æ•¸æ“šæ™‚ï¼Œå› å¹€é•·åº¦éŒ¯èª¤å¼•èµ·çµ‚æ¢ã€‚
5.3 PLC 與網關CAN232MB 的連接
CPM 系列PLC 集æˆ1 個RS-232 串行通訊端å£ï¼Œé‡‡ç”¨DB9 å”åž‹æ’座;CAN232MB 轉æ›å™¨é›†æˆ1 個RS-232 串行通訊端å£ï¼Œä¹Ÿé‡‡ç”¨DB9 å”åž‹æ’座。
按下é¢çš„連接方法,å¯ä»¥å¿«é€Ÿåˆ¶ä½œCPM 系列PLC 與網關CAN232MB 之間連接的通信電纜;æ¤é€šè¨Šé›»çºœä¹Ÿå¯ç”¨äºŽPC 與OMRON å…¬å¸PLC ä¹‹é–“é€šè¨Šã€‚åˆ¶ä½œææ–™åŒ…括兩個DB9 é‡åž‹ç›´è…³é€£æŽ¥å™¨ï¼Œ3 æ ¹ç´°å°Žç·šï¼Œå°‘é‡ç„ŠæŽ¥å·¥å…·ã€‚
[align=center]

圖 22 DB9 é‡é€£æŽ¥å™¨å’Œå¼•腳定義[/align]
串行通信電纜一端連接CAN232MB 轉æ›å™¨ï¼Œå¦ä¸€ç«¯é€£æŽ¥CPM 系列PLC。注æ„,通訊電纜的兩個DB9 端å£ä¸å¯äº’æ›ã€‚通訊電纜的連接示æ„如圖 23 所示。
[align=center]

圖 23 PLC 通信電纜的引腳連接[/align]
5.4 CXP 軟件與PLC 通訊
CXP 軟件是OMRON å…¬å¸CPM 系列PLC 的集æˆé–‹ç™¼ç’°å¢ƒã€‚這里,將通éŽCXP 軟件與PLC 的串行通訊功能,å°å»ºç«‹çš„虛擬串å£é€²è¡Œæ¸¬è©¦ï¼Œé©—è‰PLC 網絡的å¯é 性。
打開CX-Programmer è»Ÿä»¶ï¼Œé¸æ“‡ä¸€å€‹é€šä¿¡ç«¯å£ã€‚ä¾‹å¦‚ï¼Œé¸æ“‡å‰›æ‰ç”±è™›æ“¬ä¸²å£æœå‹™å™¨è»Ÿä»¶å»ºç«‹çš„串å£COM3,如圖 24 所示。
[align=center]



圖 24 在CXP 軟件ä¸é¸æ“‡PLC 通信端å£[/align]
點擊“PLCâ€èœå–®çš„“自動在線â€é …目,CXP è»Ÿä»¶æœƒè‡ªå‹•æŸ¥æ‰¾å°æ‡‰çš„PLC 類型。一旦通éŽCOM3 與PLC æˆåŠŸå»ºç«‹äº†é€šè¨Šé€£æŽ¥ï¼Œå°±å¯ä»¥å°PLC é€²è¡Œç·¨ç¨‹ã€æ“¦é™¤ã€èª¿è©¦ç‰æ“作;這與使用標準串å£COM1ã€COM2 çš„æ“作方å¼å®Œå…¨ä¸€è‡´ï¼Œå¦‚圖 25 所示。
[align=center]

圖 25 通éŽè™›æ“¬ä¸²å£å°PLC 進行é 程é…ç½®[/align]
5.5 PLC 與網關CAN485MB 的連接
OMRON å…¬å¸çš„CXP 軟件å¯ä»¥åœ¨ä¸€å€‹RS-485 標準的串行通訊端å£ä¸Šé€£æŽ¥å¤šé”32 臺CPM2A 系列PLC è¨å‚™ï¼›æ¯è‡ºPLC è¨å‚™éƒ½éœ€è¦é å…ˆè¨å®šä¸€å€‹å”¯ä¸€çš„5 ä½åœ°å€ç·¨è™Ÿï¼Œç”¨äºŽåœ¨RS-485 網絡ä¸å€åˆ†å„臺PLC è¨å‚™ã€‚
RS-485 標準是一種多點網絡通訊方å¼ã€‚按照å‰é¢æè¿°çš„æ–¹å¼ï¼Œé€šéŽç¶²é—œCAN485MB 轉æ›å™¨ï¼Œå¯ä»¥å»ºç«‹ä¸€å€‹ç¬¦åˆRS-485 標準的虛擬串å£ã€‚CPM2A 系列PLC å¯ä»¥å€ŸåŠ©äºŽRS-232轉RS-485 電平轉æ›å™¨ï¼Œå¾—到一個RS-485 標準的通訊端å£ã€‚多臺é è¨åœ°å€ç·¨è™Ÿçš„PLC å¯ä»¥é€šéŽRS-485 串行通訊方å¼è¯ç¶²ï¼Œå¹¶èˆ‡CAN485MB 轉æ›å™¨çµ„æˆ1~32 個節點ã€1Km è·é›¢èŒƒåœå…§ã€RS-485 標準的PLC ç¶²çµ¡ã€‚ç¶²çµ¡çµæ§‹å¦‚圖 26 所示。
[align=center]

圖 26 由網關CAN485MB 組建å°åž‹PLC 網絡[/align]
按上述方å¼ï¼Œæ•´å€‹åœ°å€çš„PLC 網絡å¯ä»¥ç”±å¤šå€‹ç¶²é—œCAN485MB 轉æ›å™¨æ§‹å»ºé¢æˆï¼Œè€Œæ¯ä¸€å€‹ç¶²é—œCAN485MB 轉æ›å™¨éƒ½å¯ä»¥çµ„建一個RS-485 標準的å°åž‹PLC 網絡構æˆã€‚這樣,就å¯ä»¥å½¢æˆå¤§åž‹çš„æ˜Ÿå½¢PLC 網絡。
5.6 PLC 網絡的組態開發
通éŽç¶²é—œCAN232MB 轉æ›å™¨æˆ–CAN485MB 轉æ›å™¨å¯ä»¥å»ºç«‹å¤šå€‹è™›æ“¬ä¸²å£ï¼Œç”¨äºŽé€£æŽ¥PLC è¨å‚™ã€‚虛擬串å£çš„æ“ä½œæ–¹å¼èˆ‡PC 標準串å£å®Œå…¨ç›¸åŒã€‚
通常的組態環境(例如昆侖通態MCGSã€çµ„態王KingView ç‰ï¼‰éƒ½å¯ä»¥æŒ‰ä¸²è¡Œé€šè¨Šè¨å‚™é©…å‹•çš„æ–¹å¼æ”¯æŒOMRON å…¬å¸PLC è¨å‚™çš„開發。如果組態環境å¯ä»¥æ”¯æŒæŒ‰å¤šä¸²å£æ–¹å¼æ“´å±•的多臺PLC è¨å‚™ï¼ŒåŒæ¨£ä¹Ÿå¯ä»¥æ”¯æŒåŸºäºŽç¾å ´ç¸½ç·šCAN-bus ç¶²çµ¡çš„è™›æ“¬ä¸²å£æ–¹å¼æ§‹å»ºçš„串行PLC 網絡。
éœ€è¦æ³¨æ„的是,串行PLC 網絡基于ç¾å ´ç¸½ç·šCAN-bus 而構建,æ¯ä¸€æ¢å‘½ä»¤å¹€/響應幀都需è¦ä¸€å®šçš„傳輸時間。例如,當CAN-bus 總線的通訊波特率è¨ç½®ç‚º10Kbps 時,傳輸30 å—節的命令幀至少約需60mS å‚³è¼¸æ™‚é–“ï¼›åŠ ä¸ŠéŸ¿æ‡‰å¹€çš„å»¶é²ï¼ŒPLC 網絡ä¸çš„任何一臺PLC 與工控PC 需è¦ç´„150mS æ‰èƒ½å¤ 執行1 次完整的通訊éŽç¨‹ã€‚這一時間å³å–®è‡ºPLC 通訊周期。按æ¤åƒæ•¸è¨ˆç®—,當使用1 æ¢ç¾å ´ç¸½ç·šCAN-bus 網絡,建立有30 臺PLC è¨å‚™æ§‹æˆçš„PLC 網絡時,工控PC ä¸»å‹•æŸ¥è©¢ä¸€éæ‰€æœ‰PLC è¨å‚™çš„狀態,大概需è¦èŠ±è²»ç´„30 å€çš„單臺PLC 通訊周期。應用組態環境開發PLC ç¶²çµ¡æ™‚ï¼Œç”¨æˆ¶å¿…é ˆé‡è¦–網絡的通訊延é²å› ç´ ï¼Œå¹¶åœ¨çµ„æ…‹ç’°å¢ƒä¸è¨ç½®ç›¸é—œçš„å®šæ™‚åƒæ•¸ï¼›å¦å‰‡ï¼Œå¯èƒ½æœƒå°Žè‡´çµ„態環境ä¸èƒ½å¤ æ£å¸¸é‹è¡Œã€‚
我們å¯ä»¥é€šéŽä¸€äº›æ–¹æ³•來æé«˜PLC ç¶²çµ¡çš„éŸ¿æ‡‰é€Ÿåº¦ã€‚è§£æ±ºæ–¹æ³•ä¹‹ä¸€æ˜¯å¢žåŠ CAN-bus 網絡的數é‡ï¼Œç”±æ¤æ¸›å°‘æ¯ä¸€å€‹CAN-bus 網絡ä¸çš„PLC è¨å‚™æ•¸é‡ï¼›å¦å¤–,æé«˜CAN-bus 網絡的通訊波特率也å¯ä»¥ç²å¾—相åŒçš„æ•ˆæžœï¼Œå®ƒçš„代價是會縮çŸCAN-bus 網絡的通訊è·é›¢ã€‚
6 çµæŸèªž
本文介紹的實例“通éŽç¾å ´ç¸½ç·šCAN-bus 網絡å°å¤šè‡ºPLC 進行è¯ç¶²æŽ§åˆ¶â€å·²ç¶“通éŽäº†å¯¦éš›é …目的é‹è¡Œè€ƒé©—,ç¾å ´ä½œæ¥çš„網絡長度é”到7Km 以上。在系統的實際é‹è¡Œä¸ï¼Œç¾å ´ç¸½ç·šCAN-bus çš„ç©©å®šæ€§ã€æŠ—å¹²æ“¾èƒ½åŠ›å¾—åˆ°å……åˆ†çš„é«”ç¾ã€‚åœ¨é€™å€‹å·¥ç¨‹é …ç›®ä¸ï¼Œä¸éœ€è¦æ”¹è®ŠåŽŸæœ‰çš„PC 控制平臺,å¯ä»¥å°‡ç¾æœ‰æŽ§åˆ¶è¨å‚™ç„¡ç¸«åœ°åµŒå…¥å…ˆé€²çš„ç¾å ´ç¸½ç·šç¶²çµ¡ï¼Œæ§‹æˆæ–°ä¸€ä»£çš„DCSåˆ†å¸ƒå¼æŽ§åˆ¶ç³»çµ±ã€‚æ–¹æ¡ˆä»¥è¼ƒä½Žçš„æˆæœ¬æŠ•入,æ›å–了ç¾å ´è‡ªå‹•化網絡的大跨度æå‡ã€‚在煤礦é 傳ã€é›»åŠ›é€šä¿¡ã€çŸ³æ²¹é‡‡é›†ç‰è¡Œæ¥ï¼Œè©²æ–¹æ¡ˆéƒ½æœ‰è‘—å»£æ³›çš„å¸‚å ´ï¼Œè¼ƒé«˜çš„æ‡‰ç”¨åƒ¹å€¼ã€‚
[align=center]

圖 27 å…‹æ‹‰ç‘ªä¾æ²¹ç”°çš„å°åž‹PLC 網絡[/align]