摘 要: 傳統(tǒng)的路燈管理和維護(hù)采用人工巡查的方式,效率低下,費(fèi)時(shí)費(fèi)力。城市智能路燈控制系統(tǒng)借助無線傳感器和GPRS,實(shí)現(xiàn)對路燈實(shí)時(shí)控制和檢測。系統(tǒng)采用C/S結(jié)構(gòu),以PC為客戶端,通過GPRS無線通信方式接入服務(wù)器終端,實(shí)現(xiàn)基站與客戶終端的連接。PC客戶端通過處理數(shù)據(jù)來提醒用戶基站存在的異常和手動(dòng)控制基站。實(shí)驗(yàn)測試表明,系統(tǒng)運(yùn)行正確,穩(wěn)定可靠。
關(guān)鍵詞: 智能路燈;基站;服務(wù)器;PC終端;GPRS
0 引言
城市路燈系統(tǒng)是現(xiàn)代城市建設(shè)中重要的組成部分,它服務(wù)于交通安全和人們的出行、休閑及生活,美化了城市容貌。目前,國內(nèi)大多數(shù)城市的路燈控制系統(tǒng)采用“全夜燈恒照度”的模式,其能源利用率低、資源浪費(fèi)大。路燈分布在城市道路的每個(gè)角落,自然或者人為的損壞時(shí)常發(fā)生,由于其分布廣泛,給路燈的管理、維護(hù)工作帶來極大的困難。路燈管理部門多采用上路巡查的辦法來發(fā)現(xiàn)故障、排除故障,不僅反應(yīng)遲緩,且費(fèi)時(shí)費(fèi)力費(fèi)錢,很難滿足高“亮燈率”的管理要求,也遠(yuǎn)遠(yuǎn)落后于現(xiàn)代化道路照明的需要[1-3]。
本文設(shè)計(jì)的智能路燈控制系統(tǒng)將無線傳感網(wǎng)絡(luò)與現(xiàn)有移動(dòng)通信網(wǎng)絡(luò)相結(jié)合,整個(gè)智能路燈控制系統(tǒng)由無線傳感網(wǎng)絡(luò)(WSN)、移動(dòng)通信網(wǎng)絡(luò)、服務(wù)器、計(jì)算機(jī)控制中心等部分組成。無線傳感器網(wǎng)絡(luò)負(fù)責(zé)路燈運(yùn)行狀態(tài)數(shù)據(jù)的收集和路燈的亮度控制,而移動(dòng)通信網(wǎng)絡(luò)將相關(guān)數(shù)據(jù)在基站和網(wǎng)絡(luò)服務(wù)器間傳輸[4-5]。計(jì)算機(jī)控制中心監(jiān)控全部路燈的運(yùn)行,對整個(gè)區(qū)域的光能進(jìn)行合理優(yōu)化,以減少電能消耗。
1 智能路燈控制系統(tǒng)總體設(shè)計(jì)
基于WSN的智能路燈控制系統(tǒng)由路燈控制節(jié)點(diǎn)、路燈協(xié)調(diào)器、遠(yuǎn)程終端控制系統(tǒng)組成,系統(tǒng)各部分連接圖如圖1所示。
路燈控制節(jié)點(diǎn)安裝在每個(gè)路燈上,其與路燈協(xié)調(diào)器通過無線傳輸方式連接,多個(gè)路燈協(xié)調(diào)器及其所管轄的路燈控制節(jié)點(diǎn)組成了整個(gè)無線傳感器網(wǎng)絡(luò)(WSN)。整個(gè)智能路燈控制系統(tǒng)通過部署在無線網(wǎng)絡(luò)節(jié)點(diǎn)上的傳感器采集路燈運(yùn)行過程中的光照強(qiáng)度、周圍溫度等狀態(tài)信息,并通過nRF905芯片的無線傳輸方式將路燈運(yùn)行狀態(tài)信息傳送至路燈協(xié)調(diào)器,路燈協(xié)調(diào)器負(fù)責(zé)對信息進(jìn)行分類、計(jì)算、轉(zhuǎn)化等初步分析。路燈協(xié)調(diào)器與GPRS模塊直接相連,經(jīng)GPRS網(wǎng)絡(luò)將路燈運(yùn)行狀態(tài)信息儲(chǔ)存至網(wǎng)絡(luò)服務(wù)器。遠(yuǎn)程終端控制系統(tǒng)的操作人員只需登錄Internet運(yùn)行路燈控制程序即可了解路燈運(yùn)行過程中的相關(guān)信息,同時(shí)將對路燈進(jìn)行相關(guān)操作的控制信息發(fā)送到無線網(wǎng)絡(luò)節(jié)點(diǎn),進(jìn)而控制運(yùn)行中的每一盞路燈。
1.1 GPRS通信方式
GPRS是基于GSM的移動(dòng)分組數(shù)據(jù)業(yè)務(wù),在現(xiàn)有GSM網(wǎng)絡(luò)基礎(chǔ)上疊加的一個(gè)新網(wǎng)絡(luò),可為用戶提供端到端的、廣域無線IP連接。GPRS是一項(xiàng)無線高速數(shù)據(jù)傳輸技術(shù),以分組交換技術(shù)為基礎(chǔ),用戶通過GPRS可在移動(dòng)狀態(tài)下使用各種高速數(shù)據(jù)業(yè)務(wù)。
本系統(tǒng)采用GPRS無線通信方式。各個(gè)無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)處采集的信息通過無線方式(nRF905芯片)傳輸?shù)铰窡魠f(xié)調(diào)器,在路燈協(xié)調(diào)器的微處理器中進(jìn)行分析、計(jì)算、轉(zhuǎn)化等信息處理,處理后的信息傳送至GPRS模塊等待發(fā)送出去,并利用GPRS網(wǎng)絡(luò)將處理后的信息傳輸至網(wǎng)絡(luò)服務(wù)器并存儲(chǔ),其過程如圖2所示。
1.2 路燈控制節(jié)點(diǎn)
路燈控制節(jié)點(diǎn)是系統(tǒng)重要組成部分,安裝在每個(gè)路燈上,其不僅能接受來自控制中心的命令對該節(jié)點(diǎn)路燈進(jìn)行控制和檢測,還能通過溫度和光傳感組成的傳感器電路采集外界自然環(huán)境狀態(tài)信息,經(jīng)STC52(MCU)處理傳感器電路采集的信息,進(jìn)而由自適應(yīng)調(diào)光電路實(shí)現(xiàn)路燈的自動(dòng)控制。其結(jié)構(gòu)框圖如圖3所示。
2 軟件設(shè)計(jì)
該智能路燈控制系統(tǒng)以PC為客戶端,在軟件開發(fā)中使用Net Framework 4.0搭建應(yīng)用開發(fā)環(huán)境進(jìn)行系統(tǒng)開發(fā),使用VS2010和C#語言開發(fā)應(yīng)用程序,其框架圖如圖4所示,主要包含PC服務(wù)終端模塊和PC客戶端模塊兩個(gè)部分。
PC服務(wù)終端模塊主要功能是為基站和客戶終端建立聯(lián)系,以及提供一些能夠自動(dòng)處理的功能。它包含數(shù)據(jù)收發(fā)和數(shù)據(jù)處理兩個(gè)模塊,數(shù)據(jù)收發(fā)模塊負(fù)責(zé)數(shù)據(jù)的網(wǎng)絡(luò)傳輸和識(shí)別;數(shù)據(jù)處理模塊處理終端的數(shù)據(jù)請求和邏輯請求,對遠(yuǎn)程基站進(jìn)行控制,這些控制信息將由用戶界面交互得到,同時(shí)還具備數(shù)據(jù)異常處理功能。
PC客戶端的主要功能有數(shù)據(jù)收發(fā)、數(shù)據(jù)處理和界面交互。其中數(shù)據(jù)處理是終端的核心,用戶通過界面交互了解到基站的相關(guān)信息,從而手動(dòng)控制基站。此外,終端軟件本身具備通過數(shù)據(jù)處理來提醒用戶基站存在的異常(比如路燈損壞等)的功能。
2.1 PC服務(wù)終端軟件設(shè)計(jì)
PC服務(wù)終端的基本原理是:建立一個(gè)專用的接收連接主服務(wù),在接收到連接后建立一個(gè)專用的處理數(shù)據(jù)邏輯的數(shù)據(jù)處理服務(wù),這個(gè)處理服務(wù)將接收和處理來自客戶終端的獲取和控制請求[6]。該部分的實(shí)現(xiàn)主要由以下函數(shù)構(gòu)成:
public void Run()//處理客戶端請求
public Socket Accept()//建立數(shù)據(jù)服務(wù)功能
On Start Server()//提供開關(guān)服務(wù)器服務(wù)接口
流程圖如圖5所示。
主要工作流程如下:
?。?)服務(wù)端程序啟動(dòng),并開啟數(shù)據(jù)監(jiān)聽程序。系統(tǒng)采用TCP協(xié)議進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)傳輸,所以對運(yùn)行監(jiān)聽程序的服務(wù)器要求有對外獨(dú)立的可供訪問的IP地址,本系統(tǒng)的對外IP是210.40.16.55,開放端口為7777。由于監(jiān)聽程序?qū)⑻幱谝恢毖h(huán)監(jiān)聽狀態(tài),如果該監(jiān)聽程序在界面UI線程中運(yùn)行,將會(huì)導(dǎo)致UI反應(yīng)遲鈍,故將監(jiān)聽程序放到一個(gè)新的線程中運(yùn)行。
(2)當(dāng)監(jiān)聽程序接收到連接后,為改連接開啟一個(gè)數(shù)據(jù)處理服務(wù)。連接來源有三種:基站、PC客戶端以及手機(jī)終端。之后建立一個(gè)數(shù)據(jù)處理服務(wù)程序,并將其放到一個(gè)新的線程中去運(yùn)行。
?。?)在數(shù)據(jù)處理服務(wù)開啟后,它將一直處于數(shù)據(jù)接收狀態(tài),并預(yù)處理數(shù)據(jù)接收,直到數(shù)據(jù)接收完畢。該部分的功能主要是數(shù)據(jù)接收功能。本文制定的網(wǎng)絡(luò)傳輸協(xié)議包括基站與服務(wù)端的協(xié)議、PC客戶終端與服務(wù)器的網(wǎng)絡(luò)協(xié)議、手機(jī)客戶終端與服務(wù)器的網(wǎng)絡(luò)協(xié)議。
?。?)將接收到的數(shù)據(jù)轉(zhuǎn)換成系統(tǒng)數(shù)據(jù)轉(zhuǎn)換器,數(shù)據(jù)轉(zhuǎn)換器保存需有數(shù)據(jù)的類型以及真正需要交互的數(shù)據(jù)。
?。?)根據(jù)轉(zhuǎn)換器得到處理類型,不同處理類型作相應(yīng)的處理并發(fā)回客戶終端。如果發(fā)送成功,程序?qū)⒗^續(xù)回到步驟(3),如果發(fā)送過程出現(xiàn)異?;蜻B接斷開等情況時(shí),數(shù)據(jù)處理接聽程序?qū)⒔Y(jié)束。
2.2 PC客戶端軟件設(shè)計(jì)
PC客戶端的工作原理是:建立一個(gè)數(shù)據(jù)處理監(jiān)聽程序不停地監(jiān)聽由界面交互產(chǎn)生的數(shù)據(jù)處理命令,并根據(jù)處理命令與服務(wù)器進(jìn)行交互,提交相應(yīng)的命令和控制[7-8]。該部分的實(shí)現(xiàn)主要由以下函數(shù)構(gòu)成:
Private void Window_Loaded(object sender,RoutedEventArgs e)//初始化UI界面
Private void btn_Click(object sender,Routed Event Args e)
//建立界面與服務(wù)器交互
Void Timer_Elapsed(object sender,System.Timers.Elapsed Event Args e)//定時(shí)向服務(wù)請求更新數(shù)據(jù)
Void run()//與終端保持?jǐn)?shù)據(jù)接收,處理數(shù)據(jù)請求
Void command(string cmd,object data)
//命令組織發(fā)送接口
Void CloseAll(bool isturnon)//控制所有燈泡信息開關(guān)
主要工作流程為:
?。?)程序開啟,連接服務(wù)器。通過固定的服務(wù)器IP:210.40.16.55,端口7777連接到遠(yuǎn)程服務(wù)器。
?。?)連接成功,建立數(shù)據(jù)處理程序,與服務(wù)器進(jìn)行交互,定時(shí)系統(tǒng)開啟。其中包括數(shù)據(jù)的接收預(yù)處理、數(shù)據(jù)處理程序開啟、定時(shí)命令提交系統(tǒng)三個(gè)部分。數(shù)據(jù)網(wǎng)絡(luò)傳輸是基于TCP協(xié)議,通過預(yù)處理可以得到數(shù)據(jù)轉(zhuǎn)換器。定時(shí)命令提交系統(tǒng)中會(huì)定時(shí)向系統(tǒng)服務(wù)器提交由交互界面產(chǎn)生的控制命令。
?。?)響應(yīng)或提交處理命令。該部分是客戶終端的核心部分,針對不同的數(shù)據(jù)處理請求相應(yīng)的操作。用戶界面交互產(chǎn)生對服務(wù)器的控制信息,控制信息發(fā)送給服務(wù)器并得到響應(yīng)后獲取到SET請求,再解析數(shù)據(jù)轉(zhuǎn)換器中基站信息,檢查基站更新數(shù)據(jù),如發(fā)現(xiàn)異常信息,界面交互提醒用戶,最后更新到本地?cái)?shù)據(jù)緩存,界面刷新,從而達(dá)到同步顯示的目的。用戶可以根據(jù)同步顯示的信息或系統(tǒng)提醒的異常信息向客戶終端提交相應(yīng)的用戶處理請求,這些請求最終轉(zhuǎn)換成基站信息,然后通過CONTROL請求發(fā)送給服務(wù)器,從而實(shí)現(xiàn)客戶終端對遠(yuǎn)程基站的實(shí)時(shí)監(jiān)控與控制。PC客戶端程序流程圖如圖6所示。
3 系統(tǒng)測試
(1)服務(wù)端運(yùn)行結(jié)果
服務(wù)端運(yùn)行結(jié)果如圖7所示。從圖7中可以看到整個(gè)連接的過程:
?、賳?dòng)服務(wù)器程序;
?、诜?wù)端程序接收到PC終端連接;
?、鄯?wù)端程序接收到基站連接。
接下來服務(wù)端程序就可以處理PC終端請求并發(fā)回基站。
?。?)PC終端運(yùn)行測試結(jié)果
當(dāng)路燈運(yùn)行故障時(shí),PC客戶端錯(cuò)誤消息窗口給出錯(cuò)誤提醒,如圖8所示。從圖8可以看到,3號(hào)燈出現(xiàn)故障,系統(tǒng)初步判定是光敏電阻出現(xiàn)異常。
圖9顯示了PC客戶端工作的界面,系統(tǒng)建立連接并可以正常進(jìn)行數(shù)據(jù)通信。路燈控制節(jié)點(diǎn)接收來自控制中心的命令對該節(jié)點(diǎn)路燈進(jìn)行控制和檢測。如圖9所示,當(dāng)1、2號(hào)節(jié)點(diǎn)亮度不足時(shí),終端發(fā)出指令調(diào)節(jié)1、2號(hào)節(jié)點(diǎn)的亮度,直至達(dá)到所需亮度。另外,可以很直觀地看到3號(hào)燈出現(xiàn)故障并報(bào)警,同時(shí)系統(tǒng)初步判定是光敏電阻處出現(xiàn)異常。
4 結(jié)論
本文設(shè)計(jì)的城市智能路燈控制系統(tǒng)將無線傳感器技術(shù)與GPRS無線通信技術(shù)相結(jié)合,由無數(shù)個(gè)路燈節(jié)點(diǎn)、多個(gè)中心節(jié)點(diǎn)(基站)、服務(wù)器和手機(jī)/PC客戶端組成。各個(gè)部分通過通信介質(zhì)傳達(dá)控制命令,實(shí)現(xiàn)遠(yuǎn)程控制路燈。經(jīng)實(shí)驗(yàn)測試,本系統(tǒng)不僅可以對故障路燈進(jìn)行遠(yuǎn)程監(jiān)控和定位,還可以通過移動(dòng)或PC終端實(shí)現(xiàn)對路燈亮度的調(diào)節(jié),大大提高了路燈管理水平和服務(wù)質(zhì)量,實(shí)現(xiàn)了合理照明、美化照明及安全照明的理念。
參考文獻(xiàn)
[1] 項(xiàng)新建.城鎮(zhèn)路燈智能控制系統(tǒng)的研究[J].儀器儀表學(xué)報(bào),2006,27(6):194-197.
[2] 賀一鳴,王崇貴,劉進(jìn)宇.智能路燈控制系統(tǒng)設(shè)計(jì)與應(yīng)用研究[J].現(xiàn)代電子技術(shù),2010(1):207-210.
[3] 黎洪生,劉蘇斂,胡冰,等.基于無線通信網(wǎng)絡(luò)的智能路燈節(jié)能系統(tǒng)[J].計(jì)算機(jī)工程,2009,35(14):190-192.
[4] 宋成艷,李揚(yáng),梅運(yùn)華.基于無線通信的城市路燈監(jiān)控管理系統(tǒng)[J].微計(jì)算機(jī)信息,2007,23(21):19-20.
[5] 張偉,王宏剛,程培溫.基于GPRS的智能路燈遠(yuǎn)程監(jiān)控系統(tǒng)的研究[J].計(jì)算機(jī)測量與控制,2010,18(9):2104-2106.
[6] 劉三梅,程韜波,胡戰(zhàn)虎.基于GPRS/WEBGIS路燈節(jié)能監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(1):187-189.
[7] 張艷,趙衍娟,楊眉.基于WSN技術(shù)的路燈控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].東北電力大學(xué)學(xué)報(bào),2011,31(1):84-87.
[8] 胡開明,李躍忠,盧偉華.智能路燈節(jié)能控制器的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,32(9):143-145.