《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于Mega128和WiFi的電氣設(shè)備無(wú)線監(jiān)控系統(tǒng)
基于Mega128和WiFi的電氣設(shè)備無(wú)線監(jiān)控系統(tǒng)
2014年微型機(jī)與應(yīng)用第23期
王 磊,,趙曉軍,,張鵬遠(yuǎn),霍曉東
(河北大學(xué) 電子信息工程學(xué)院,,河北 保定 071002)
摘要: 為了解決人員流動(dòng)監(jiān)測(cè)設(shè)備運(yùn)行狀態(tài)的信息滯后問(wèn)題,,減少因此而帶來(lái)的損失,,提出了一種基于Mega128單片機(jī)和WiFi的電氣設(shè)備無(wú)線監(jiān)控系統(tǒng)。根據(jù)設(shè)備正常運(yùn)行和非正常運(yùn)行時(shí)的工作電流的不同,,通過(guò)電流互感器檢測(cè)其工作電流,,進(jìn)而判斷其工作狀態(tài)。最后Mega128將檢測(cè)到的結(jié)果經(jīng)WiFi模塊傳送至Internet服務(wù)器,,并在監(jiān)控界面上顯示,。經(jīng)過(guò)實(shí)驗(yàn),該系統(tǒng)能夠?qū)Χ鄠€(gè)設(shè)備的使用情況進(jìn)行監(jiān)測(cè),,用戶能通過(guò)監(jiān)測(cè)網(wǎng)站網(wǎng)頁(yè)讀取設(shè)備的使用信息并長(zhǎng)期保存,。
Abstract:
Key words :

  摘 要: 為了解決人員流動(dòng)監(jiān)測(cè)設(shè)備運(yùn)行狀態(tài)的信息滯后問(wèn)題,減少因此而帶來(lái)的損失,,提出了一種基于Mega128單片機(jī)和WiFi的電氣設(shè)備無(wú)線監(jiān)控系統(tǒng),。根據(jù)設(shè)備正常運(yùn)行和非正常運(yùn)行時(shí)的工作電流的不同,通過(guò)電流互感器檢測(cè)其工作電流,,進(jìn)而判斷其工作狀態(tài),。最后Mega128將檢測(cè)到的結(jié)果經(jīng)WiFi模塊傳送至Internet服務(wù)器,,并在監(jiān)控界面上顯示。經(jīng)過(guò)實(shí)驗(yàn),,該系統(tǒng)能夠?qū)Χ鄠€(gè)設(shè)備的使用情況進(jìn)行監(jiān)測(cè),,用戶能通過(guò)監(jiān)測(cè)網(wǎng)站網(wǎng)頁(yè)讀取設(shè)備的使用信息并長(zhǎng)期保存。

  關(guān)鍵詞: 無(wú)線監(jiān)控,;Mega128,;WiFi

0 引言

  隨著我國(guó)經(jīng)濟(jì)實(shí)力的增長(zhǎng)和科學(xué)技術(shù)的進(jìn)步,越來(lái)越多的智能化,、自動(dòng)化設(shè)備應(yīng)用于家庭和工廠企業(yè),,為人們的生活服務(wù),為企業(yè)節(jié)省人力,,提高產(chǎn)能,,創(chuàng)造更大的效益。這些設(shè)備平時(shí)并不需要時(shí)刻有人操作,,但是一旦這些設(shè)備出現(xiàn)異常,,必然會(huì)對(duì)人們的生活帶來(lái)不便,為企業(yè)的利益帶來(lái)?yè)p失,。為此,,設(shè)計(jì)了基于單片機(jī)采集和WiFi傳輸?shù)碾姎庠O(shè)備無(wú)線監(jiān)控系統(tǒng),用于對(duì)這些設(shè)備的工作狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè),,并且當(dāng)監(jiān)測(cè)到設(shè)備出現(xiàn)異常時(shí),,可控制繼電器使設(shè)備斷電,以避免造成不必要的損失,。

  本文介紹了自主開發(fā)的基于Mega系列單片機(jī)系統(tǒng)和WiFi傳輸?shù)臒o(wú)線監(jiān)控系統(tǒng)的設(shè)計(jì)方案,。該方案采用Mega128單片機(jī)搭建設(shè)備的現(xiàn)場(chǎng)監(jiān)控模塊,通過(guò)WiFi模塊實(shí)現(xiàn)單片機(jī)和Internet服務(wù)器之間的通信,。本文對(duì)系統(tǒng)的整體結(jié)構(gòu),、硬件結(jié)構(gòu)、軟件結(jié)構(gòu)的設(shè)計(jì)做了介紹,。通過(guò)實(shí)驗(yàn)測(cè)試,,結(jié)果表明,本設(shè)計(jì)方案具有很好的準(zhǔn)確性和可靠性,。

1 系統(tǒng)總體設(shè)計(jì)

  本監(jiān)控系統(tǒng)由單片機(jī)監(jiān)控模塊,、WiFi傳輸模塊、監(jiān)測(cè)網(wǎng)站三部分組成,。監(jiān)控系統(tǒng)的整體結(jié)構(gòu)如圖1所示,。

001.jpg

  該系統(tǒng)以Mega128單片機(jī)和WiFi模塊為基礎(chǔ),所完成的主要功能是實(shí)現(xiàn)設(shè)備工作狀態(tài)的遠(yuǎn)程監(jiān)測(cè)。單片機(jī)監(jiān)控模塊可以檢測(cè)到設(shè)備的運(yùn)行,、關(guān)閉,、異常等狀態(tài),,并記錄各狀態(tài)發(fā)生改變的時(shí)刻,。檢測(cè)到的設(shè)備狀態(tài)信息以及相應(yīng)的設(shè)備編號(hào)將通過(guò)WiFi模塊實(shí)時(shí)傳送到Internet數(shù)據(jù)庫(kù)并在監(jiān)測(cè)網(wǎng)站的網(wǎng)頁(yè)上顯示。為防止服務(wù)器斷電異常無(wú)法接受數(shù)據(jù)而導(dǎo)致數(shù)據(jù)丟失,,本設(shè)計(jì)添加了EEPROM用于存儲(chǔ)單片機(jī)采集到的信息,,使服務(wù)器在斷電恢復(fù)后可以調(diào)取。此外,,本設(shè)計(jì)還添加了硬件報(bào)警設(shè)計(jì)和監(jiān)測(cè)網(wǎng)站網(wǎng)絡(luò)報(bào)警設(shè)計(jì),。一旦設(shè)備出現(xiàn)異常狀態(tài),單片機(jī)監(jiān)控模塊將在設(shè)備現(xiàn)場(chǎng)發(fā)出警報(bào),,并控制繼電器使設(shè)備斷電,,同時(shí)監(jiān)測(cè)網(wǎng)站的Web網(wǎng)頁(yè)界面上設(shè)置的報(bào)警提示也將發(fā)出警報(bào),提示工作人員及時(shí)發(fā)現(xiàn)異常設(shè)備并采取措施,,從而減少經(jīng)濟(jì)損失,。多個(gè)監(jiān)控模塊的單片機(jī)都工作在多機(jī)通信模式,配合多個(gè)WiFi模塊,,可以實(shí)現(xiàn)對(duì)多個(gè)電氣設(shè)備使用情況的監(jiān)控,。

2 系統(tǒng)硬件設(shè)計(jì)

  系統(tǒng)硬件由Mega128單片機(jī)芯片、電流互感器,、DS1302時(shí)間芯片,、24C512 EEPROM、WiFi模塊組成,。系統(tǒng)的硬件結(jié)構(gòu)如圖2,。

002.jpg

  Mega128是一款高性能、高配置,、低功耗的8位微處理器,,此微處理器工作在16 MHz時(shí)性能高達(dá)16 MIPS,而且大部分指令都能在一個(gè)時(shí)鐘周期之內(nèi)完成[1],。工作電壓范圍2.7 V~5.5 V,,可以和WiFi模塊共同使用5 V的電源供電。同時(shí),,其自帶10位ADC(模數(shù)轉(zhuǎn)換接口),,以便對(duì)采集到的數(shù)據(jù)進(jìn)行模數(shù)轉(zhuǎn)換[2]。Mega128的特點(diǎn)足以為系統(tǒng)提供可靠的性能,。

  出于簡(jiǎn)化設(shè)計(jì)和降低成本的考慮,,為將設(shè)備的運(yùn)行、關(guān)閉、異常等狀態(tài)轉(zhuǎn)換成單片機(jī)能夠采集的狀態(tài)量,,本設(shè)計(jì)選用了電流互感器,,采集設(shè)備的電流信號(hào)。由于設(shè)備在運(yùn)行,、關(guān)閉,、異常等不同狀態(tài)時(shí),其工作電流是不同的,,所以可先用電流互感器檢測(cè)出設(shè)備的工作電流,,然后將其轉(zhuǎn)換成電壓信號(hào),再經(jīng)放大整流后得到平穩(wěn)的直流電壓信號(hào),,通過(guò)Mega128單片機(jī)自帶的10位ADC(模數(shù)轉(zhuǎn)換接口)對(duì)得到的直流電壓信號(hào)進(jìn)行采集并轉(zhuǎn)換為數(shù)字信號(hào)存儲(chǔ)到單片機(jī)上,,通過(guò)對(duì)單片機(jī)的編程對(duì)不同的狀態(tài)設(shè)定相應(yīng)的閾值,便可實(shí)現(xiàn)狀態(tài)量的采集,。

  Mega128檢測(cè)到狀態(tài)量的變化后,,需要讀取的時(shí)間信息來(lái)自時(shí)間芯片DS1302。DS1302是一種帶RAM的低功耗的實(shí)時(shí)時(shí)鐘電路,,可以對(duì)年,、月、日,、時(shí),、分、秒進(jìn)行計(jì)時(shí)[3],。配備后備電源后,,即便主電源關(guān)閉,Ds1302也能夠保證持續(xù)地記錄時(shí)間,。為保證數(shù)據(jù)不會(huì)丟失,,將Mega128檢測(cè)到的狀態(tài)信息及時(shí)間信息存入EEPROM中,EEPROM選擇ATMEL公司的24C512芯片,,它內(nèi)部有64 KB的存儲(chǔ),,分為512頁(yè),地址范圍為0000~ffffH[4],。

  WiFi模塊選用的是海凌科電子推出的低成本嵌入式UART-ETH-WiFi(串口-以太網(wǎng)-無(wú)線網(wǎng))模塊HLK-RM04,。該模塊是基于通用串行接口的符合網(wǎng)絡(luò)標(biāo)準(zhǔn)的嵌入式模塊,內(nèi)置TCP/IP協(xié)議棧,,能夠?qū)崿F(xiàn)用戶串口,、以太網(wǎng)、無(wú)線網(wǎng)(WiFi)3個(gè)接口之間的轉(zhuǎn)換,。

3 系統(tǒng)軟件設(shè)計(jì)

  本監(jiān)控系統(tǒng)的軟件部分包括設(shè)備現(xiàn)場(chǎng)監(jiān)控模塊軟件,、WiFi模塊配置和監(jiān)測(cè)網(wǎng)站的設(shè)計(jì),。其中WiFi模塊無(wú)需編程,只需對(duì)WiFi模塊進(jìn)行初始化并配置成客戶端模式,,設(shè)置遠(yuǎn)程服務(wù)器IP,、端口號(hào),與Internet服務(wù)器連接,。WiFi模塊的配置如圖3所示,。

003.jpg

  3.1 單片機(jī)監(jiān)控模塊程序設(shè)計(jì)

  首先是單片機(jī)提取設(shè)備工作狀態(tài)的狀態(tài)量。Mega128單片機(jī)上自帶的10位ADC(模數(shù)轉(zhuǎn)換接口)對(duì)通過(guò)硬件電路處理過(guò)的直流電壓信號(hào)進(jìn)行采集并將其轉(zhuǎn)換為數(shù)字信號(hào)存儲(chǔ)到單片機(jī)上,,由于設(shè)備工作狀態(tài)的不同,,其工作電流將不同,采集到的電壓信號(hào)也將不同,,所以最終存儲(chǔ)到單片機(jī)上的數(shù)字信號(hào)也不同。只要測(cè)出采集到的不同工作狀態(tài)對(duì)應(yīng)的電壓范圍便可設(shè)定閾值,,單片機(jī)通過(guò)這幾個(gè)閾值對(duì)設(shè)備的工作狀態(tài)進(jìn)行判定,,當(dāng)設(shè)備的工作狀態(tài)發(fā)生變化時(shí)DS1302記錄其時(shí)間,此時(shí)將工作狀態(tài)的判定結(jié)果和記錄的時(shí)間發(fā)送至Internet服務(wù)器,,同時(shí)將其存儲(chǔ)到EEPROM中,。若服務(wù)器出現(xiàn)異常斷電,將無(wú)法接收數(shù)據(jù),,待其恢復(fù)后可通過(guò)單片機(jī)調(diào)取EEPROM中存儲(chǔ)的斷電期間的數(shù)據(jù),。此外,當(dāng)檢測(cè)到設(shè)備出現(xiàn)異常狀態(tài)時(shí),,單片機(jī)需對(duì)警報(bào)器發(fā)出信號(hào)令其報(bào)警,。單片機(jī)監(jiān)控模塊程序流程如圖4。

004.jpg

  單片機(jī)檢測(cè)到狀態(tài)量信號(hào)發(fā)生變化后,,便開始了一次“記錄”時(shí)間的過(guò)程,。首先單片機(jī)通過(guò)SPI總線的形式讀取當(dāng)下DS1302中記錄的時(shí)間,包括年,、月,、日、星期,、時(shí),、分、秒,,這些信息都寄存在DS1302內(nèi)部相關(guān)的寄存器中,。單片機(jī)與DS1302傳輸數(shù)據(jù)之前要先寫入相應(yīng)的控制字——讀取或者寫入,以及讀寫的地址,。不僅如此,,單片機(jī)每次與DS1302通信都要經(jīng)過(guò)嚴(yán)格的“握手程序”,。Mega128讀取DS1302中的時(shí)間數(shù)據(jù),只需要按照相應(yīng)的通信原則讀取其內(nèi)部相應(yīng)地址的寄存器即可,。與之類似,,Mega128對(duì)24C512進(jìn)行讀取或者寫入數(shù)據(jù)操作時(shí)也需要先寫入相應(yīng)的控制字,讀寫其內(nèi)部的相應(yīng)地址空間所存儲(chǔ)的數(shù)據(jù),,并且同樣在每次通信的過(guò)程中進(jìn)行嚴(yán)格的“握手程序”,。

  如果監(jiān)測(cè)網(wǎng)站要調(diào)取歷史記錄,當(dāng)Mega128接收到監(jiān)測(cè)網(wǎng)站通過(guò)WiFi模塊傳來(lái)的指令,,如設(shè)備編號(hào),、所要讀取信息的日期,Mega128根據(jù)接收到的設(shè)備編號(hào)確定是否與本機(jī)號(hào)相符,。如果編號(hào)符合,,則根據(jù)所要讀取信息的日期查詢符合條件的數(shù)據(jù)并讀取出來(lái),然后將數(shù)據(jù)依次通過(guò)串口發(fā)送出去,。

  3.2 監(jiān)測(cè)網(wǎng)站的設(shè)計(jì)

  監(jiān)測(cè)網(wǎng)站發(fā)送和接收數(shù)據(jù)是通過(guò)SOCKET套接字與WiFi模塊進(jìn)行傳輸?shù)?。監(jiān)測(cè)網(wǎng)站主要由網(wǎng)站監(jiān)測(cè)前臺(tái)、Windows服務(wù)程序和數(shù)據(jù)庫(kù)三部分組成,。如圖5所示,。

005.jpg

  網(wǎng)站監(jiān)測(cè)前臺(tái)是使用ASP開發(fā)平臺(tái)采用C#語(yǔ)言編寫的B/S模式的網(wǎng)站,它主要通過(guò)SQL語(yǔ)句實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),。Windows服務(wù)程序是ASP開發(fā)平臺(tái)編寫的C/S模式的軟件,,它通過(guò)SOCKET套接字來(lái)接收現(xiàn)場(chǎng)WiFi設(shè)備傳來(lái)的現(xiàn)場(chǎng)設(shè)備的信息,并使用SQL語(yǔ)句存入數(shù)據(jù)庫(kù)中[5],。這里采用SQL server2005數(shù)據(jù)庫(kù),,數(shù)據(jù)庫(kù)把從WiFi接收來(lái)的分類數(shù)據(jù)儲(chǔ)存起來(lái),使前臺(tái)網(wǎng)站能夠?qū)崟r(shí)訪問(wèn)更新的數(shù)據(jù),。

4 實(shí)驗(yàn)結(jié)果

  本實(shí)驗(yàn)以學(xué)校實(shí)驗(yàn)室的電氣設(shè)備作為實(shí)驗(yàn)對(duì)象,,對(duì)不同實(shí)驗(yàn)室的不同設(shè)備進(jìn)行編號(hào),同時(shí)進(jìn)行監(jiān)測(cè),。實(shí)驗(yàn)表明該系統(tǒng)能夠?qū)Χ鄠€(gè)設(shè)備的運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè),,并且該系統(tǒng)具有良好的穩(wěn)定性。因?yàn)閷?shí)驗(yàn)條件所限并未對(duì)設(shè)備出現(xiàn)異常狀態(tài)的情況進(jìn)行試驗(yàn),,所以未能驗(yàn)證系統(tǒng)對(duì)設(shè)備出現(xiàn)異常狀態(tài)的反應(yīng),。監(jiān)測(cè)信息在監(jiān)測(cè)網(wǎng)站網(wǎng)頁(yè)上的顯示如圖6所示。

006.jpg

5 結(jié)束語(yǔ)

  本文論述了基于單片機(jī)信號(hào)采集和WiFi傳輸?shù)脑O(shè)備無(wú)線監(jiān)控系統(tǒng)的軟,、硬件設(shè)計(jì)方法,,利用單片機(jī)對(duì)設(shè)備的運(yùn)行情況進(jìn)行監(jiān)測(cè),并通過(guò)WiFi模塊進(jìn)行數(shù)據(jù)傳輸,,最后由監(jiān)測(cè)網(wǎng)站用戶界面將信息顯示給用戶,。經(jīng)過(guò)實(shí)驗(yàn),,該方案能夠?qū)崿F(xiàn)設(shè)備運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)測(cè),并且檢測(cè)到的信息可長(zhǎng)期存儲(chǔ)在服務(wù)器中,,解決了管理人員流動(dòng)監(jiān)測(cè)設(shè)備的滯后性,,同時(shí)節(jié)約了成本。

參考文獻(xiàn)

  [1] 霍宏偉,牛延超,黃吉瑩. ATmega 128/2560 系列單片機(jī)原理與高級(jí)應(yīng)用[M]. 北京:中國(guó)林業(yè)出版社, 2006.

  [2] 張軍. AVR單片機(jī)應(yīng)用開發(fā)典型實(shí)例[M]. 北京:中國(guó)電力出版社, 2005.

  [3] 姚德法,張洪林. 串行時(shí)鐘芯片DS1302的原理與使用[J]. 信息技術(shù)與信息化, 2006(1):92-94.

  [4] 楊學(xué)昭,馬彥霞,薛立. AT24C512存儲(chǔ)器在無(wú)線抄表器中的應(yīng)用[J]. 中原工學(xué)院學(xué)報(bào), 2004(4):5-7,13.

  [5] 張躍廷,許文武,王小科. C#數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)完全手冊(cè)[M]. 北京:人民郵電出版社, 2006.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。