基于嵌入式系統(tǒng)在電網(wǎng)遠(yuǎn)程監(jiān)控中的應(yīng)用
2.4 液晶顯示
液晶顯示器采用CM12864型LCD,液晶模塊經(jīng)數(shù)據(jù)總線(xiàn)接收LPC2131發(fā)送的指令和數(shù)據(jù),存入內(nèi)部的數(shù)據(jù)存儲(chǔ)器中,從而實(shí)現(xiàn)所需信息的顯示。為了獲得友好的界面和便捷的使用,液晶顯示采用漢字顯示方式,從字模軟件中獲取漢字代碼,再將每個(gè)漢字的代碼記錄在CAT1025中,在使用時(shí)跳去。由于LPC2131大多GPIO是復(fù)用口,需要在使用前對(duì)L/O口進(jìn)行設(shè)置。圖7為L(zhǎng)PC2131與CM12864的連接框圖。本文引用地址:http://www.ex-cimer.com/article/149263.htm
3 電網(wǎng)遠(yuǎn)程監(jiān)控的實(shí)現(xiàn)
本文所設(shè)計(jì)的電網(wǎng)遠(yuǎn)程監(jiān)控系統(tǒng)采用客戶(hù)一服務(wù)器分布式網(wǎng)絡(luò)接口,遠(yuǎn)程監(jiān)控主機(jī)(服務(wù)器端)通過(guò)Internet連接到電網(wǎng)監(jiān)測(cè)儀(客戶(hù)端),實(shí)現(xiàn)電網(wǎng)的遠(yuǎn)程監(jiān)控。
3.1 客戶(hù)/服務(wù)器機(jī)制
針對(duì)電網(wǎng)遠(yuǎn)程監(jiān)控系統(tǒng)的特點(diǎn),將電網(wǎng)監(jiān)測(cè)儀設(shè)置為客戶(hù)端,遠(yuǎn)程監(jiān)控主機(jī)設(shè)置為服務(wù)器端。服務(wù)器端24小時(shí)不問(wèn)斷地監(jiān)聽(tīng)來(lái)自客戶(hù)端的連接請(qǐng)求,建立連接后進(jìn)行TCP數(shù)據(jù)傳輸。圖8為基于TCP協(xié)議的客戶(hù)/服務(wù)器機(jī)制。
客戶(hù)端首先申請(qǐng)?zhí)捉幼执蜷_(kāi)通信信道,并連接到服務(wù)器所在主機(jī)保留的端口,該端口對(duì)應(yīng)服務(wù)器的TCP進(jìn)程;隨后向服務(wù)器發(fā)出請(qǐng)求報(bào)文并等待接收應(yīng)答;最后從服務(wù)器收到最終應(yīng)答結(jié)果,或在不再請(qǐng)求時(shí)關(guān)閉信道并終止客戶(hù)端進(jìn)程。
服務(wù)器端首先申請(qǐng)?zhí)捉幼执蜷_(kāi)通信通道,通知本地主機(jī)在某一保留端口接受客戶(hù)端請(qǐng)求;一旦接收到客戶(hù)端的請(qǐng)求,便啟動(dòng)新進(jìn)程處理用戶(hù)請(qǐng)求,同時(shí)釋放舊進(jìn)程以響應(yīng)新的客戶(hù)請(qǐng)求,一旦服務(wù)完成,便關(guān)閉新進(jìn)程與客戶(hù)的通信鏈路;如果不想響應(yīng)客戶(hù)端的請(qǐng)求,則關(guān)閉服務(wù)器進(jìn)程。
3.2 實(shí)時(shí)監(jiān)控系統(tǒng)
遠(yuǎn)程監(jiān)控主機(jī)(服務(wù)器端)的網(wǎng)絡(luò)通訊程序采用VB編寫(xiě),使用MFC Winsock類(lèi)添加網(wǎng)絡(luò)通信能力。遠(yuǎn)程監(jiān)控主機(jī)的IP地址為192.168. 1.100,監(jiān)控程序端口號(hào)8000,所有網(wǎng)絡(luò)上的電網(wǎng)監(jiān)測(cè)儀都與該服務(wù)器監(jiān)控程序建立連接,傳輸數(shù)據(jù)。此時(shí)監(jiān)控程序的運(yùn)行狀態(tài)為監(jiān)聽(tīng)連接,等待各個(gè)電網(wǎng)監(jiān)測(cè)儀(客戶(hù)端)設(shè)備的連接請(qǐng)求。當(dāng)某個(gè)電網(wǎng)監(jiān)測(cè)儀與服務(wù)器端監(jiān)控程序建立連接之后,就開(kāi)始進(jìn)行傳輸數(shù)據(jù)。
3.3 歷史數(shù)據(jù)查詢(xún)
若服務(wù)器端要求獲得電網(wǎng)的實(shí)時(shí)參數(shù),客戶(hù)端在上傳實(shí)時(shí)數(shù)據(jù)時(shí)將數(shù)據(jù)存儲(chǔ)到客戶(hù)端的數(shù)據(jù)庫(kù),同時(shí)服務(wù)器端將接收到的數(shù)據(jù)存放在自己的數(shù)據(jù)庫(kù)中,形成歷史數(shù)據(jù)庫(kù),供查詢(xún)、決策參考及故障分析。
遠(yuǎn)程監(jiān)控系統(tǒng)的SQL Server數(shù)據(jù)庫(kù)采用ADO API技術(shù),用ADO的Connection對(duì)象實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接,用Recordset對(duì)象實(shí)現(xiàn)對(duì)數(shù)據(jù)記錄的訪問(wèn),用Command對(duì)象來(lái)實(shí)現(xiàn)SQL查詢(xún),用Error對(duì)象控制數(shù)據(jù)交換時(shí)發(fā)生的錯(cuò)誤。
評(píng)論