試驗(yàn)站遠(yuǎn)程監(jiān)控系統(tǒng)網(wǎng)絡(luò)接口的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
遠(yuǎn)程監(jiān)控系統(tǒng)廣泛應(yīng)用于工業(yè)遠(yuǎn)程監(jiān)控、智能樓宇、安防監(jiān)控和網(wǎng)絡(luò)家電等方面,通過(guò)遠(yuǎn)程監(jiān)控,技術(shù)人員無(wú)須親臨現(xiàn)場(chǎng)就可以方便控制和掌握儀器、設(shè)備的運(yùn)行狀態(tài)及各種參數(shù),方便地利用本地豐富的軟硬件資源對(duì)遠(yuǎn)程對(duì)象進(jìn)行過(guò)程控制。
由于試驗(yàn)數(shù)據(jù)在導(dǎo)線傳輸過(guò)程中容易受到電磁干擾和產(chǎn)生衰減,特別是處于運(yùn)動(dòng)狀態(tài)的設(shè)備或被隔離區(qū)域內(nèi)設(shè)備的數(shù)據(jù)測(cè)量,敷設(shè)信號(hào)傳輸線將十分不便,而且安裝與維護(hù)比較麻煩。針對(duì)這種情況,我們?cè)O(shè)計(jì)了一種新型的無(wú)線數(shù)據(jù)傳輸網(wǎng)絡(luò)接口方案,可以克服傳統(tǒng)有線數(shù)據(jù)傳輸存在的弊端。
方案選擇
1 遠(yuǎn)程監(jiān)控系統(tǒng)信號(hào)傳輸?shù)幕疽?/P>
大型的試驗(yàn)站多為自動(dòng)測(cè)試系統(tǒng),其試驗(yàn)參數(shù)由各種變送器、變換器及測(cè)量?jī)x器等測(cè)量所得。有些數(shù)據(jù)需要現(xiàn)場(chǎng)監(jiān)控,但大多數(shù)測(cè)量數(shù)據(jù)需要傳輸?shù)皆囼?yàn)間,由試驗(yàn)人員監(jiān)控并處理、分析波形、繪制特性曲線并生成報(bào)表??傮w來(lái)說(shuō),信號(hào)傳輸有如下幾種要求。
● 傳輸數(shù)據(jù)通道及精度滿足試驗(yàn)標(biāo)準(zhǔn)要求。
● 傳輸響應(yīng)速度快。
● 運(yùn)行穩(wěn)定可靠性高。
● 可實(shí)現(xiàn)網(wǎng)絡(luò)信息化管理。
2 現(xiàn)狀分析及方案確定
基于以上要求,國(guó)內(nèi)外目前可采用的無(wú)線傳輸方式有以下幾種方案。
● 數(shù)傳電臺(tái)遠(yuǎn)程監(jiān)控方案:它可采用編碼方式完成軟擴(kuò)頻或是硬件擴(kuò)頻以滿足數(shù)據(jù)傳輸?shù)囊?,但系統(tǒng)造價(jià)比較昂貴;數(shù)據(jù)傳輸可靠性低;維護(hù)困難。
● 基于CDPD網(wǎng)絡(luò)的遠(yuǎn)程監(jiān)控方案:在簡(jiǎn)易再開發(fā)應(yīng)用中,產(chǎn)品硬件部份造價(jià)太高;覆蓋范圍太小,無(wú)法應(yīng)用于試驗(yàn)站可能存在的偏僻地帶。
● 基于GSM-SMS模塊無(wú)線數(shù)據(jù)監(jiān)測(cè)系統(tǒng)方案:具備網(wǎng)絡(luò)覆蓋面廣、用戶綜合投資小、運(yùn)營(yíng)費(fèi)用少,數(shù)據(jù)傳輸安全可靠等諸多優(yōu)點(diǎn),對(duì)于解決監(jiān)控采集點(diǎn)分散、覆蓋面廣、監(jiān)控點(diǎn)移動(dòng)、實(shí)時(shí)性要求較低的監(jiān)控采集系統(tǒng)具有無(wú)可比擬的優(yōu)勢(shì),但受到公網(wǎng)業(yè)務(wù)開通狀況及信號(hào)覆蓋范圍的影響較大,受系統(tǒng)及網(wǎng)絡(luò)運(yùn)行情況影響,不可控因素較大。
我們提出一種基于無(wú)線數(shù)據(jù)傳輸和以太網(wǎng)絡(luò)相結(jié)合的監(jiān)控系統(tǒng)單片機(jī)網(wǎng)絡(luò)接口,把監(jiān)控系統(tǒng)中的智能控制單元擴(kuò)展到網(wǎng)絡(luò)上,嵌入TCP/IP協(xié)議的單片機(jī)數(shù)據(jù)通信系統(tǒng),使試驗(yàn)人員可以通過(guò)網(wǎng)絡(luò)主機(jī)或因特網(wǎng)了解并控制遠(yuǎn)程設(shè)備。在TCP/IP協(xié)議和STC89C5x系列單片機(jī)及C51開發(fā)環(huán)境的基礎(chǔ)上進(jìn)行系統(tǒng)、程序構(gòu)架的設(shè)計(jì),利用TCP/IP協(xié)議中的TCP、IP及簡(jiǎn)單的應(yīng)用層協(xié)議實(shí)現(xiàn)單片機(jī)之間以及單片機(jī)和上位機(jī)之間的網(wǎng)絡(luò)互連。這樣既提高了數(shù)據(jù)傳輸?shù)乃俣?,又保證了傳輸?shù)恼_性,同時(shí)還擴(kuò)展了數(shù)據(jù)傳輸?shù)挠行ё饔冒霃健?/P>
網(wǎng)絡(luò)接口的構(gòu)成
無(wú)線傳輸系統(tǒng)網(wǎng)絡(luò)接口的控制器采用8位單片機(jī)+精簡(jiǎn)TCP/IP協(xié)議棧方案??傮w方案結(jié)構(gòu)如圖1所示。
圖1 無(wú)線傳輸系統(tǒng)網(wǎng)絡(luò)接口的總體方案
儀器儀表或控制設(shè)備經(jīng)過(guò)RS232/RS485接口連接無(wú)線傳輸模塊,發(fā)射與接收數(shù)據(jù)。無(wú)線傳輸?shù)牧硪欢私?jīng)過(guò)TTL連接單片機(jī),單片機(jī)再通過(guò)8位數(shù)據(jù)總線連接RTL8019AS,網(wǎng)絡(luò)控制器用RJ45接口與以太網(wǎng)連接。通過(guò)無(wú)線傳輸和以太網(wǎng),儀器儀表或控制設(shè)備和遠(yuǎn)程監(jiān)控主機(jī)或Internet建立了網(wǎng)絡(luò)連接,利用遠(yuǎn)程主機(jī)上的監(jiān)控軟件可以讀取儀器儀表的數(shù)據(jù),了解控制設(shè)備的工作狀態(tài),根據(jù)采集到的數(shù)據(jù)進(jìn)行分析并對(duì)現(xiàn)場(chǎng)設(shè)備進(jìn)行控制。
系統(tǒng)組成
在工業(yè)測(cè)控系統(tǒng)中,多種儀器儀表測(cè)量的現(xiàn)場(chǎng)數(shù)據(jù)通過(guò)無(wú)線傳輸裝置無(wú)線發(fā)送,在監(jiān)控主機(jī)(PC)端通過(guò)無(wú)線傳輸裝置無(wú)線接收數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行記錄、分析、存儲(chǔ),實(shí)現(xiàn)信息化管理。
處于儀器儀表端的無(wú)線傳輸裝置接收的是PC發(fā)送過(guò)來(lái)的命令數(shù)據(jù)幀,無(wú)線發(fā)送的是從儀器儀表上讀取到的電量和非電量數(shù)據(jù)。處于監(jiān)控主機(jī)端的無(wú)線傳輸裝置接收的是儀器儀表端發(fā)送過(guò)來(lái)的數(shù)據(jù)或參數(shù),而發(fā)送的是讀取數(shù)據(jù)、參數(shù)或?qū)憛?shù)命令。
1 硬件接口電路設(shè)計(jì)
網(wǎng)絡(luò)接口的設(shè)計(jì)采用STC89C52RC來(lái)控制以太網(wǎng)芯片RTL8019AS進(jìn)行數(shù)據(jù)的傳輸。
① RTL8019AS的工作方式
RTL8019AS支持三種工作方式:第一種為跳線方式,I/O基址和中斷由跳線決定;第二種為即插即用方式,由軟件自動(dòng)配置相應(yīng)的參數(shù);第三種為免跳線方式,I/O和中斷由外接的93C46的內(nèi)容決定。
RTL8019AS采用哪種工作方式由第65腳JP決定,JP是輸入引腳,當(dāng)它為低電平時(shí)(其他引腳也是這樣,懸空的輸入引腳的電平為低電平,里面有一個(gè)100kΩ的下拉電阻),RTL8019AS工作在第二種和第三種方式下,需要使用93C46芯片;當(dāng)JP接高電平(接到Vcc或通過(guò)一個(gè)10kΩ的電阻上拉),RTL8019AS工作在第一種方式下,不需要使用93C46。通常使用的計(jì)算機(jī)一般采用即插即用方式和免跳線方式,但本設(shè)計(jì)的外設(shè)不經(jīng)常插拔,所以不支持即插即用的功能,也未使用93C46存儲(chǔ)以太網(wǎng)控制器參數(shù)(由微處理器初始化時(shí)設(shè)定),而是采用易于控制的跳線方式。這時(shí)芯片的地址由85,84,82,81(IOS3...IOS0)幾個(gè)引腳決定,如表1所示。
表1 I/O基址的選擇
在本系統(tǒng)中將IS03...IS00設(shè)置為0000,對(duì)應(yīng)的I/O Base為300H。
② RTL8019AS的網(wǎng)絡(luò)接口方式
RTL8019AS的網(wǎng)絡(luò)接口類型由PL0,PL1引腳決定,如表2所示。
表2 網(wǎng)絡(luò)媒介選擇
在本設(shè)計(jì)中采用PL1=0,PL0=0,即第一種自動(dòng)檢測(cè)方式,RTL8019AS會(huì)自動(dòng)檢測(cè)媒介是同軸電纜還是雙絞線。
RTL8019AS與以太網(wǎng)的接口采用無(wú)屏蔽雙絞線RJ45接口,中間需要接一個(gè)網(wǎng)絡(luò)隔離變壓器,也稱為發(fā)送/接收濾波器,用來(lái)把信號(hào)變成平衡信號(hào)傳輸,防止電涌,以減少共模干擾,提高傳輸效率。
本設(shè)計(jì)中使用的隔離變壓器是GROUP TEK的20F001N。在具體的連接中信號(hào)地線要通過(guò)一個(gè)10nF的電容接到電源地上,在20F001N的輸出口上必須加上一個(gè)200Ω的電阻來(lái)抑止輸入8019AS的電壓大小,這也是一種保護(hù)措施。
以太網(wǎng)控制器的外圍布線還包括RJ45接口以及LED指示燈的連接,其具體的連接原理圖如圖2所示。
圖2 以太網(wǎng)芯片RTL8019AS外圍電路原理圖
③ 單片機(jī)與RTL8019AS的連接
本設(shè)計(jì)中采用跳線方式,將65腳JP接高電平當(dāng)系統(tǒng)上電復(fù)位后,在RSTDRV下降沿,8019AS將讀入各個(gè)跳線引腳的狀態(tài),寫入系統(tǒng)配置寄存器中,作為系統(tǒng)默認(rèn)的初始配置。
各跳線引腳連接:RQS0~I(xiàn)RQS2(78~80腳)為中斷口,本設(shè)計(jì)中采用查詢方式,所以中斷口選擇沒有影響;IOS0~I(xiàn)OS3(81、82、84、85腳)為I/O基地址選擇,用于選擇I/O口的起始地址,要使其全部置低電平,則起始地址從300H開始,地址總線連接必須與此相一致;PL0、PL1(74、77腳)為網(wǎng)絡(luò)介質(zhì)類型選擇,本系統(tǒng)中設(shè)為“00”,表示進(jìn)行連接檢測(cè);BS0~BS4(67、69、71、72腳)用于BROM容量與基地址選擇,本系統(tǒng)中沒有連接BROM,只要將BS4、BS3設(shè)為低電平,就可禁止BROM。
由上所述可知,各跳線引腳全部配置為低電平即可。芯片引腳內(nèi)部接有100kΩ的下拉電阻,所以當(dāng)引腳懸空時(shí),本身就默認(rèn)為低電平,因而也可將這些引腳懸空,在相關(guān)電路設(shè)計(jì)和軟件設(shè)計(jì)中應(yīng)注意要與這些跳線引腳配置相一致。
數(shù)據(jù)與地址總線連接:采用8位數(shù)據(jù)總線,將96腳IOCS16B接27kΩ下拉電阻即可使8019AS工作于8位數(shù)據(jù)總線方式。系統(tǒng)數(shù)據(jù)總線與SD0~SD7連接。8019AS內(nèi)部寄存器和存儲(chǔ)器的讀寫地址為00H~1FH,只需要5根地址線就能進(jìn)行選擇。但在系統(tǒng)跳線配置中已將起始地址設(shè)為300H,因而在地址選通時(shí),還必須令地址線SA8、SA9為“1”。
其他還包括對(duì)晶振的連接,以及電源和地的連接。
2 TCP/IP協(xié)議棧的總體設(shè)計(jì)
該網(wǎng)絡(luò)的最終目的是實(shí)現(xiàn)網(wǎng)絡(luò)節(jié)點(diǎn)上任意兩點(diǎn)之間的數(shù)據(jù)通信,但是設(shè)計(jì)一個(gè)對(duì)所有可能的通信模式均是有效的、完整的、全面的協(xié)議是不可能實(shí)現(xiàn)的,于是將通信問題劃分成小塊,并為每個(gè)小塊設(shè)計(jì)單獨(dú)的協(xié)議,這樣使得每種協(xié)議變得容易設(shè)計(jì)、分析、執(zhí)行和測(cè)試。一方面,每種協(xié)議應(yīng)該處理其他協(xié)議沒有處理的通信問題,以免重復(fù)工作。另一方面,設(shè)計(jì)的協(xié)議應(yīng)該能夠共享數(shù)據(jù)結(jié)構(gòu)和信息,以提高執(zhí)行效率。當(dāng)然最重要的是各個(gè)協(xié)議之間能夠很好的協(xié)同工作,不能將每種協(xié)議設(shè)計(jì)成孤立的協(xié)議,這就需要將他們?cè)O(shè)計(jì)成一個(gè)相互支持、相互補(bǔ)充的系統(tǒng),系統(tǒng)中的每種協(xié)議解決一部分通信問題,而所有的協(xié)議便能解決所有可能的網(wǎng)絡(luò)通信問題。
本系統(tǒng)網(wǎng)絡(luò)接口采用以太網(wǎng)接口,所以協(xié)議棧遵循TCP/IP模型來(lái)設(shè)計(jì)??紤]到系統(tǒng)的程序空間極為有限,所以設(shè)計(jì)時(shí)對(duì)標(biāo)準(zhǔn)協(xié)議棧進(jìn)行了簡(jiǎn)化,通過(guò)選擇合適的協(xié)議,可以降低對(duì)處理器硬件資源的需求。例如,由于對(duì)可靠性要求較高,可以只選擇使用TCP協(xié)議,而不使用不可靠的UDP協(xié)議。另外,對(duì)于己經(jīng)選擇使用的協(xié)議,在具體實(shí)現(xiàn)時(shí)也進(jìn)行了適當(dāng)?shù)暮?jiǎn)化,保留其中必須具備的部分,以節(jié)約程序空間和執(zhí)行時(shí)間。同時(shí)保證系統(tǒng)的可靠性與安全性,遵循分層設(shè)計(jì)思想和模塊化設(shè)計(jì)方法,各協(xié)議由對(duì)應(yīng)的模塊實(shí)現(xiàn),模塊對(duì)外提供接口函數(shù)供主程序調(diào)用,精簡(jiǎn)的TCP/IP協(xié)議棧如圖3所示。
圖3 TCP/IP協(xié)議棧
網(wǎng)絡(luò)接口層是TCP/IP模型的最底層,由RTL8019AS的驅(qū)動(dòng)程序來(lái)完成基本功能。RTL8019AS的驅(qū)動(dòng)程序負(fù)責(zé)將單片機(jī)傳輸?shù)絀nternet上的數(shù)據(jù)封裝成以太網(wǎng)數(shù)據(jù)包的格式發(fā)送,以及將網(wǎng)絡(luò)上傳來(lái)的數(shù)據(jù)包進(jìn)行分析使其進(jìn)入上一層的協(xié)議處理程序。
網(wǎng)絡(luò)層的功能則由ARP(地址解析協(xié)議)、IP(網(wǎng)際協(xié)議)和ICMP(因特網(wǎng)控制報(bào)文協(xié)議)協(xié)議共同完成。ARP協(xié)議能夠判斷數(shù)據(jù)幀中的目的地址是否與本地IP地址相同,如果相同則接收數(shù)據(jù)幀,否則將數(shù)據(jù)幀拋棄。而IP是TCP/IP協(xié)議棧最為核心的協(xié)議,所有的網(wǎng)絡(luò)層和運(yùn)輸層的數(shù)據(jù)都是以IP數(shù)據(jù)報(bào)格式傳輸。ICMP允許主機(jī)或路由器報(bào)告差錯(cuò)情況和提供有關(guān)異常情況的報(bào)告。
圖4 數(shù)據(jù)的封裝過(guò)程
系統(tǒng)需要傳輸?shù)臄?shù)據(jù)通過(guò)在每個(gè)協(xié)議層添加頭部信息,最后封裝成為以太網(wǎng)數(shù)據(jù)包,在物理網(wǎng)絡(luò)上進(jìn)行傳輸,數(shù)據(jù)的封裝過(guò)程如圖4所示。
結(jié)論
對(duì)于工業(yè)控制領(lǐng)域,嵌入式Internet設(shè)備將測(cè)控網(wǎng)與Internet互連,由此實(shí)現(xiàn)測(cè)控網(wǎng)和信息網(wǎng)的統(tǒng)一。在這樣構(gòu)成的網(wǎng)絡(luò)中,傳統(tǒng)儀器設(shè)備充當(dāng)著網(wǎng)絡(luò)中獨(dú)立節(jié)點(diǎn)的角色,信息可跨越網(wǎng)絡(luò)傳輸至所及的任何領(lǐng)域,實(shí)時(shí)、動(dòng)態(tài)(包括遠(yuǎn)程)的在線測(cè)控成為現(xiàn)實(shí)。