時間:2011-07-25 11:49:43來源:xuliyuan
在傳統(tǒng)的集中監(jiān)控系統(tǒng)中,一般通過Modem 或E1 等進(jìn)行數(shù)據(jù)傳輸。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和網(wǎng)絡(luò)在各行各業(yè)的普及,通過網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程監(jiān)控和遠(yuǎn)程數(shù)據(jù)采集成為一種最經(jīng)濟(jì)最可靠的方式。但由于網(wǎng)絡(luò)跟傳統(tǒng)通訊方式的工作模式和工作原理相比具有更好的優(yōu)勢,因此為了充分發(fā)揮網(wǎng)絡(luò)通訊的優(yōu)勢,基于網(wǎng)絡(luò)的遠(yuǎn)程監(jiān)控和遠(yuǎn)程數(shù)據(jù)采集可以采用一些更加高效和可靠的軟件設(shè)計方案。本文以下以深圳市宇泰科技有限公司生產(chǎn)的串口服務(wù)器為例,對于網(wǎng)絡(luò)的遠(yuǎn)程監(jiān)控和遠(yuǎn)程數(shù)據(jù)采集的系統(tǒng)設(shè)計方案進(jìn)行一些探討。
首先我們了解一下串口服務(wù)器的功能串口服務(wù)器是一個RS232 與TCP/IP 的協(xié)議轉(zhuǎn)換器在集中監(jiān)控系統(tǒng)中的應(yīng)用方案。它提供RS232 到網(wǎng)絡(luò)和網(wǎng)絡(luò)到RS232 的透明數(shù)據(jù)傳輸串口服務(wù)器,向上提供10M 以太網(wǎng)接口向下提供1 個標(biāo)RS232串行口內(nèi)部集成。 ARP,IP,ICMP,TCP,UDP,DHCP,SOCK5 等協(xié)議支持網(wǎng)關(guān)和代理服務(wù)器。
C2000 Plus S232/1 TW 有三種工作模式:
1. 作為TCP 服務(wù)器轉(zhuǎn)換器在指定的TCP 端口上監(jiān)聽平臺程序的連接請求
2. 作為TCP客戶端轉(zhuǎn)換器上電時主動向平臺程序請求連接
3. 自動方式轉(zhuǎn)換器一般工作在TCP 服務(wù)器模式。
當(dāng)轉(zhuǎn)換器收到串口數(shù)據(jù)時,自動切換到TCP 客戶端模式轉(zhuǎn)換器向平臺程序,請求連接并將數(shù)據(jù)傳送到平臺。傳送完后轉(zhuǎn)換器自動切換回TCP 服務(wù)器模式監(jiān)控中心。應(yīng)用程序可以通過三種方式和串口服務(wù)器轉(zhuǎn)換器進(jìn)行數(shù)據(jù)通訊
1.使用Socket(套接字)
2.本公司提供的ActiveX 控件SockServer.ocx 3.虛擬串口
一系統(tǒng)結(jié)構(gòu)使用
串口服務(wù)器的基于網(wǎng)絡(luò)的遠(yuǎn)程監(jiān)控和遠(yuǎn)程數(shù)據(jù)采集的系統(tǒng)結(jié)構(gòu)如下:
監(jiān)控平臺負(fù)責(zé)與現(xiàn)場設(shè)備通訊接收各種現(xiàn)場設(shè)備信息和控制現(xiàn)場
設(shè)備并把經(jīng)過處理后的數(shù)據(jù)保存到數(shù)據(jù)庫數(shù)據(jù)服務(wù)器運行數(shù)據(jù)
庫系統(tǒng)同時通過WEB 服務(wù)器向數(shù)據(jù)查詢終端提供數(shù)據(jù)數(shù)據(jù)查
詢終端通過瀏覽器或?qū)S貌樵児ぞ卟樵兯枰男畔?br />二軟件設(shè)計方案
由于監(jiān)控中心應(yīng)用程序可以通過三種方式和串口服務(wù)器轉(zhuǎn)換器進(jìn)行,數(shù)據(jù)通訊本文以使用控件SockServer.ocx 與串口服務(wù)器通訊為例說明平臺軟件的設(shè)計方案使用Windows Socket 與串口服務(wù)器通訊與使用控件與串口服務(wù)器通訊可以采用相同的軟件設(shè)計方案:
一. 首先監(jiān)控中心軟件要能識別現(xiàn)場設(shè)備現(xiàn)場設(shè)備必須具有一個唯一的標(biāo)識一般來講可以采用以下三種方式標(biāo)識現(xiàn)場設(shè)備
1 使用串口服務(wù)器的MAC 地址標(biāo)識現(xiàn)場設(shè)備該方式只適用于使用控件的情況
2 使用現(xiàn)場設(shè)備自己的序列號該序列號對于每個現(xiàn)場設(shè)備必須是唯一的這種方式可以同時適用于使用控件和使用Win Socket的情況
3 使用串口服務(wù)器 的IP 地址標(biāo)識現(xiàn)場設(shè)備但這樣要求每個現(xiàn)場設(shè)備分配一個固定的IP 地址這樣做在很多情況下會帶來網(wǎng)絡(luò)資源浪費和網(wǎng)絡(luò)管理及維護(hù)的困難一般不推薦使用此方式這種方式可以同時適用于使用控件和使用Win Socket 的情況
二.在傳統(tǒng)的遠(yuǎn)程監(jiān)控和分布式數(shù)據(jù)采集細(xì)途中一般采用主機(jī)輪詢的方式進(jìn)行數(shù)據(jù)通訊。這樣做的目的主要是為了解決總線和資源如串口Modem 競爭的問題。但總線和資源競爭的問題在網(wǎng)絡(luò)環(huán)境中已經(jīng)不存在了,因此在網(wǎng)絡(luò)條件下完全可以采用基于事件驅(qū)動的更加高效的通訊方式。具體來說就是串口服務(wù)器和平臺軟件建立TCP 連接的過程中將平臺軟件作為TCP 服務(wù)器時與平臺軟件連接的串口服務(wù)器設(shè)置為TCP 客戶端的工作方式。平臺軟件在指定TCP 端口上被動的等待串口服務(wù)器的連接,請求串口服務(wù)器上電時主動向監(jiān)控平臺請求建立TCP 連接。
監(jiān)控平臺軟件在收到連接請求后,建立TCP 連接并且連接。一旦建立除非監(jiān)控平臺軟件主動要求斷開連接,否則連接一直保持。這樣可以保證監(jiān)控平臺軟件和串口服務(wù)器之間的數(shù)據(jù)通訊管道一直存在。由于TCP 連接建立后,如果不進(jìn)行數(shù)據(jù)通訊它不占用任何網(wǎng)絡(luò)資源。因此采用這種方式不但可以保證用戶程序和串口服務(wù)器之間的通訊,可以時實進(jìn)行而且不會增加任何網(wǎng)絡(luò)負(fù)擔(dān)。由于監(jiān)控平臺軟件和串口服務(wù)器之間的TCP 連接一直存在,因此現(xiàn)場設(shè)備如果有數(shù)據(jù)需要傳送到監(jiān)控平臺時,它隨時可以與監(jiān)控平臺進(jìn)行通訊。即使有兩個或多個現(xiàn)場設(shè)備同時向監(jiān)控平臺發(fā)送數(shù)據(jù),也不會造成任何問題。因為監(jiān)控平臺與每個串口服務(wù)器的TCP 連接都分別由不同的Win Socket 進(jìn)行管理,當(dāng)某個TCP 連接收到數(shù)據(jù)時相應(yīng)的Win Socket 會通過接收數(shù)據(jù)事件通知平臺軟件進(jìn)行數(shù)據(jù)處理。當(dāng)同時從幾個連接收到數(shù)據(jù)時,這些TCP 連接相對應(yīng)的WinSocket 會分別產(chǎn)生接收數(shù)據(jù)事件,這些事件進(jìn)入平臺軟件的事件隊列由平臺軟件分別進(jìn)行處理。當(dāng)監(jiān)控平臺有數(shù)據(jù)需要傳送到現(xiàn)場設(shè)備時,監(jiān)控平臺隨時可以向現(xiàn)場設(shè)備發(fā)送數(shù)據(jù)而不必理會其它現(xiàn)場設(shè)備和平臺軟件的通訊狀態(tài)。通過這種基于事件驅(qū)動方式,設(shè)計的遠(yuǎn)程監(jiān)控系統(tǒng)當(dāng)現(xiàn)場設(shè)備產(chǎn)生報警信息時現(xiàn)場設(shè)備可以立即將這個信息傳送到監(jiān)控平臺,而不必等到監(jiān)控平臺輪詢到該現(xiàn)場設(shè)備時才傳送,這樣就大大提高了系統(tǒng)的響應(yīng)速度。特別是當(dāng)系統(tǒng)中現(xiàn)場設(shè)備數(shù)量較大時,效果更加明顯。同時由于避免了輪詢點名系統(tǒng)中網(wǎng)絡(luò)通訊的數(shù)據(jù)量大大減少節(jié)約了網(wǎng)絡(luò)帶寬,也就意味著節(jié)約了網(wǎng)絡(luò)資源和網(wǎng)絡(luò)投資(雖然點名時傳送的數(shù)據(jù)很少但在網(wǎng)絡(luò)通訊中即使只有一個字節(jié)的有效數(shù)據(jù)它產(chǎn)生的一個以太網(wǎng)數(shù)據(jù)包也超過512 字節(jié)因為不足512個字節(jié)時協(xié)議自動用無用數(shù)據(jù)填充而在輪詢點名的系統(tǒng)中會產(chǎn)生大量的這種數(shù)據(jù)包使網(wǎng)絡(luò)的效率下降)。
三. 平臺軟件基于事件驅(qū)動時的通訊處理流程如下
1 通過串口服務(wù)器的MAC 地址標(biāo)識設(shè)備將串口服務(wù)器的工作方式設(shè)置成TCP 客戶端
2 通過現(xiàn)場設(shè)備序列號標(biāo)示設(shè)備將串口服務(wù)器的工作方式設(shè)置成TCP 客戶端
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
相關(guān)資訊