在很多場合,我們需要對距離很遠(yuǎn)的控制器進(jìn)行監(jiān)測。當(dāng)距離在幾千米的情況下,我們可以使用有線連接,比如采用Profibus-DP總線連接。但當(dāng)距離有幾百千米,甚至更遠(yuǎn)的情況下,采用上述連接方式的花費(fèi)將會是驚人的,所以多采用廉價的電話通信進(jìn)行數(shù)據(jù)傳輸。
2 .方案比較
通常情況下,每臺控制器通過一臺Modem和一條電話線連接到遠(yuǎn)程PC。遠(yuǎn)程PC與每臺控制器之間占用一條通信線路,所以每次只能與一臺控制器進(jìn)行數(shù)據(jù)通信。該方案監(jiān)控系統(tǒng)如圖1。
圖1 控制器與遠(yuǎn)程PC通信方案一
在該方案下,每個控制器占用一個電話號碼資源、一條電話線路和一臺Modem。遠(yuǎn)程PC通過電話線與每個控制器分別連接,當(dāng)需要與某個控制器進(jìn)行數(shù)據(jù)通信時,通過撥號連接該控制器,進(jìn)行數(shù)據(jù)通信。在這種情況下,如果有多個控制器需要與遠(yuǎn)程PC通信,將會占用多條電話線路。遠(yuǎn)程PC不可能同時與多臺控制器進(jìn)行數(shù)據(jù)通信,只能依次輪詢撥號每個控制器,不僅Modem每次建立連接會耗費(fèi)大量的時間,而且浪費(fèi)大量的通信費(fèi)用。
針對以上方案存在的弊端,本文提出一種新的方案,只采用1條電話線路和一臺Modem,即可實(shí)現(xiàn)遠(yuǎn)程PC與所有的控制器進(jìn)行數(shù)據(jù)通信。
該方案監(jiān)控系統(tǒng)如圖2:
圖2 控制器與遠(yuǎn)程PC通信方案二
現(xiàn)場的控制器作為Modbus從站(可能是RS232接口的,也可能是RS485接口的,若是RS232接口,可以通過一個很便宜的轉(zhuǎn)換設(shè)備將RS232轉(zhuǎn)換成RS485),將所有的控制器掛接到485總線上,Modbus主站采用和利時公司HOLLiAS LM系列PLC的40點(diǎn)CPU模塊LM3108。LM3108的RS485口掛接到485總線上,LM3108通過RS485口采用Modbus協(xié)議將各個控制器內(nèi)需要讀取的數(shù)據(jù)分別讀取上來,存儲在PLC對應(yīng)的地址中。
LM3108的RS232接口與Modem連接,Modem通過電話線與遠(yuǎn)程PC連接。當(dāng)撥號建立連接后,遠(yuǎn)程PC與LM3108之間撥號連通以后同樣采用Modbus協(xié)議,此時遠(yuǎn)程PC作為Modbus主站,LM3108的RS232口作為Modbus從站,遠(yuǎn)程PC只需要取得PLC中相對應(yīng)的地址中的數(shù)據(jù)即可。
PLC與遠(yuǎn)程PC建立連接可以采用兩種方式:
1)PLC主動呼叫遠(yuǎn)程PC,可以在PLC中設(shè)定時間,或者設(shè)定某個觸發(fā)條件,當(dāng)條件滿足時主動呼叫遠(yuǎn)程PC建立連接,進(jìn)行通信。
2)遠(yuǎn)程PC主動呼叫PLC,遠(yuǎn)程監(jiān)控人員根據(jù)需要撥號,以采集各控制器的數(shù)據(jù)。
3. 具體案例
3.1 設(shè)備選型
1)PLC——LM3108
該P(yáng)LC具備1個RS232端口和1個RS485端口,兩者均可實(shí)現(xiàn)自由口通訊,可實(shí)現(xiàn)Modbus從站和Modbus主站功能。LM3108本體帶有24點(diǎn)DI和16點(diǎn)DO,具有8k的自由存儲空間,完全可以滿足該方案的要求。
2)調(diào)制解調(diào)器——具備RS232接口的普通56K調(diào)制解調(diào)器。
3)遠(yuǎn)程PC
具備上位撥號并支持Modbus主協(xié)議軟件的PC機(jī),比如裝有和利時公司SmartPro軟件的PC機(jī)。
3.2 LM3108與Modem硬件連接
需要2個9針的公頭,連接線纜定義如圖3:
圖3 LM3108與Modem連接線
LM3108連接針頭1, Modem與PC之間的連接線的PC端接針頭2,將兩個9針頭的2、3、5直連,針頭2的1、7、8短接,4、6短接。
3.3 LM3108與Modem軟件設(shè)置
LM3108提供RS232口Modbus從站功能塊(SET_LOCAL_ADDRESS)、RS232口通訊參數(shù)設(shè)置功能塊(Reset_COMM_PRMT)、RS232口通訊自由口參數(shù)設(shè)置功能塊(Set_COMM_PRMT)、RS232口通訊自由口數(shù)據(jù)發(fā)送功能塊(COMM_SEND)、RS232口通訊自由口數(shù)據(jù)接收功能塊(COMM_RECEIVE)。
物理連接PLC與Modem后,若采用遠(yuǎn)程PC主動呼叫PLC,只需編程調(diào)用SET_LOCAL_ADDRESS和Reset_COMM_PRMT這兩個功能塊即可,PLC側(cè)無需再作其它 設(shè)置。
若采用PLC主動呼叫遠(yuǎn)程PC,則需要RS232口在自由通訊方式下使用COMM_SEND與COMM_RECEIVE同Modem進(jìn)行會話。
PLC主動呼叫遠(yuǎn)程PC的程序流程圖如圖4:
圖4 PLC主動呼叫遠(yuǎn)程PC程序流程圖
3.4 應(yīng)用效果
本文介紹的方案已經(jīng)成功應(yīng)用于國內(nèi)外中央空調(diào)遠(yuǎn)程監(jiān)控系統(tǒng),從幾套系統(tǒng)近一年的運(yùn)行情況來看,系統(tǒng)質(zhì)量可靠、運(yùn)行穩(wěn)定、運(yùn)行效果良好。相對傳統(tǒng)方案,本文介紹的方案節(jié)省了大量電纜和硬件設(shè)備,具有較好的性價比,得到客戶的好評。
4 結(jié)束語
本文介紹了使用小型PLC作為中轉(zhuǎn),實(shí)現(xiàn)遠(yuǎn)程PC服務(wù)器與多臺現(xiàn)場設(shè)備之間的通信方案,并詳細(xì)說明了其關(guān)鍵設(shè)備PLC的軟硬件設(shè)置。該設(shè)計(jì)方案不僅可以應(yīng)用于中央空調(diào)監(jiān)控系統(tǒng),也可廣泛應(yīng)用于其它行業(yè)的類似監(jiān)控系統(tǒng),具有廣闊的應(yīng)用前景。