引言
路燈和景觀燈是城市夜晚一道亮麗的風景線,,也是城市中必需的公用照明設施。城市照明監(jiān)控系統(tǒng)是一種監(jiān)測與控制的集成系統(tǒng),。一套高效的城市照明監(jiān)控系統(tǒng)可以節(jié)省大量的人力物力,。但目前,我國城市照明監(jiān)控技術還比較落后,,存在很多問題,。主要表現(xiàn)在目前的城市照明燈光大多采用分散手控和時控的方式,即在路燈配電箱中安裝定時器,,按預定的時間自行開/關燈,,當季節(jié)變化時需要人工干預來調整開關時間;而有些景觀燈開關通常是人工手動控制方法,即根據(jù)開關燈時間表由值班人員手動進行開,、關燈操作?,F(xiàn)行的城市照明監(jiān)控系統(tǒng)既不能及時調整開/關燈的時間,又無法及時反映照明設施的運行情況,,并且故障率高,、維修困難[1]。
基于ZigBee的城市照明監(jiān)控系統(tǒng)可以很好地解決這些問題,,它采用了GPRS[2]和ZigBee[3]技術,,不但可以采用電感降功率和電子整流器無級變功率等方法來節(jié)省路燈的用電量,還可以實時檢測并控制照明設施狀態(tài),。本文主要闡述照明監(jiān)控系統(tǒng)中網(wǎng)關[45]節(jié)點的軟硬件設計方案,。
1 照明監(jiān)控系統(tǒng)架構
基于ZigBee技術的城市照明監(jiān)控系統(tǒng)采用“監(jiān)控中心—網(wǎng)關節(jié)點—單燈測控節(jié)點”的三層結構,通過GPRS的技術將監(jiān)控中心的城市照明控制系統(tǒng)軟件和網(wǎng)關節(jié)點聯(lián)系起來,,而網(wǎng)關節(jié)點又通過ZigBee路燈網(wǎng)絡將路燈的數(shù)據(jù)信息發(fā)送到相關的路燈節(jié)點,。城市照明監(jiān)控系統(tǒng)的架構如圖1所示。
圖1 城市照明監(jiān)控系統(tǒng)架構
圖1中的路燈節(jié)點1至N通過網(wǎng)絡協(xié)議實現(xiàn)了路燈通信的網(wǎng)絡結構,,每個網(wǎng)關節(jié)點作為該條道路的主控節(jié)點,。通過GPRS通信技術和ZigBee技術的結合,可以將路燈的狀態(tài)信息發(fā)送到中心服務器,,并存入數(shù)據(jù)庫中,。監(jiān)控中心通過對服務器的數(shù)據(jù)庫進行操作就可以實現(xiàn)對路燈狀態(tài)的監(jiān)測和控制,。
2 網(wǎng)關節(jié)點硬件設計
2.1 網(wǎng)關節(jié)點硬件架構
本設計的網(wǎng)關節(jié)點主要由主控芯片MCF52223、GPRS通信模塊,、宏電H7710 DTU,、ZigBee通信模塊MC13213[6]、EEPROM模塊AT24C256,、液晶顯示模塊,、按鍵以及應用程序等組成。網(wǎng)關節(jié)點的體系結構如圖2所示,。
圖2 網(wǎng)關節(jié)點體系結構
2.2 主控芯片
主控芯片采用了Freescale公司生產(chǎn)的Codefire系列32位單片機MCF52223,。該芯片不僅擁有UART、I2C,、SPI、USB接口,,還有A/D轉換接口,、定時器接口等。它具有穩(wěn)定性好,、可靠性高,、接口豐富等優(yōu)點,可大大簡化外圍硬件電路設計,,降低設計成本與復雜度,。它主要用來采集和處理從路燈節(jié)點上傳的狀態(tài)信息,并通過接收監(jiān)控中心發(fā)送的監(jiān)控命令對ZigBee網(wǎng)絡路燈節(jié)點進行監(jiān)控操作,。
2.3 GPRS模塊
GPRS模塊采用宏電的H7710 DTU模塊,,它是基于GPRS移動通信數(shù)據(jù)通信網(wǎng)路的終端產(chǎn)品??蔀橛脩籼峁└咚?、永遠在線、透明數(shù)據(jù)傳輸?shù)奶摂M專用數(shù)據(jù)通信網(wǎng)絡,。同時擁有RS232/422/485及TTL電平接口,,適用于環(huán)境惡劣的各種工業(yè)監(jiān)控、交通管理,、氣象等應用場合,,易于集成。
H7710 DTU屬智能性數(shù)據(jù)通信終端,,安裝設置完成后,,接入用戶數(shù)據(jù)源即可使用。正常運行時無需用戶介入,,且H7710正常運行時,,無需日常維護,。在許多嵌入式應用環(huán)境下通常只需通過數(shù)據(jù)中心發(fā)送檢測和維護信息來確認終端是否正常運行。用戶只需將數(shù)據(jù)送入H7710 DTU的串口,,或者通過串口接收H7710 DTU傳輸來的命令幀進行解析,。
本設計方案中H7710 DTU通過UART1與MCF52223芯片進行通信,H7710 DTU與MCF52223的接口電路如圖3所示,。MAX3232是H7710DTU的外圍電路連接芯片,。其中,TXD1為MCF52223的UART1發(fā)送數(shù)據(jù)引腳,,RXD1為UART1接收數(shù)據(jù)引腳,,DIN為串行數(shù)據(jù)輸入端引腳。
圖3 H7710 DTU與MCF52223接口電路
2.4 ZigBee通信模塊
ZigBee通信模塊采用Freescale公司生產(chǎn)的2.4 GHz射頻芯片MC13213,。它采用Freescale公司的低電壓,、低功耗HCS08核心,并帶有嵌入式閃存,、10位模/數(shù)轉換器,、低壓中斷和鍵盤中斷等功能。MC13213支持專用點到點,,簡單星形以及MASH網(wǎng)絡,,采用Figure 8 Wireless Zstack的符合ZigBee標準的網(wǎng)絡。MC13213最小系統(tǒng)電路如圖4所示,。
圖4 MC13213最小系統(tǒng)電路
為了增加ZigBee的通信距離,,在已有MC13211內部集成的射頻模塊的基礎上增加了功率放大器、低噪聲放大器,、射頻收發(fā)開關等IC,。最終經(jīng)實測,ZigBee模塊的通信距離可以達到500 m左右,,完全可以滿足本設計方案中照明監(jiān)控的要求,。此外,ZigBee通信模塊與主控芯片MCF52223之間亦是通過串口進行通信,,本設計方案中采用的是MCF52223的UART0,。
2.5 EEPROM模塊
AT24C256是Atmel公司生產(chǎn)的256 Kb串行電可擦的可編程只讀存儲器。它采用8引腳雙排式封裝,,具有結構緊湊,、存儲容量大等特點,特別適用于具有大容量數(shù)據(jù)存儲要求的數(shù)據(jù)采集系統(tǒng),。本設計方案中需要存儲大量的單燈節(jié)點上傳的路燈狀態(tài)信息,,需要通過I2C總線與AT24C256進行通信,將路燈狀態(tài)信息存儲于其中,。
2.6 液晶屏顯示模塊
液晶屏采用帶中文字庫的LCD12864液晶顯示屏,,它包括4位/8位并行,、2線或3線串行的多種接口方式,內部含有國標一級,、二級簡體中文字庫的點陣圖形液晶顯示模塊,。其顯示分辨率為128×64,內置8 192個16×16點漢字和128個16×8點ASCII字符集,。利用該模塊靈活的接口方式和簡單,、方便的操作指令,可構成全中文人機交互圖形界面,??梢燥@示8×4行16×16點陣的漢字,也可完成圖形顯示,,工作時低電壓低功耗,。由該模塊構成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結構或顯示程序都要簡潔得多,。
圖5 液晶顯示主控界面
本設計方案液晶顯示的主控界面如圖5所示,。可使用上下鍵選擇菜單,,使用OK鍵確認。
3 網(wǎng)關節(jié)點軟件設計
3.1 基本任務實現(xiàn)
MCF52223主要實現(xiàn)接收ZigBee無線傳感網(wǎng)絡主控節(jié)點傳輸?shù)臄?shù)據(jù),,然后通過GPRS發(fā)送到中心服務器,。同時對于中心服務器發(fā)送的一些控制命令進行處理,并通過串口傳輸?shù)綗o線傳感網(wǎng)絡主控節(jié)點中,。此外還包括一些LCD顯示,、按鍵、I2C總線的操作,。MCF52223主控程序流程如圖6所示,。
3.2 μC/OSII系統(tǒng)移植
μC/OSII作為一個源代碼公開的操作系統(tǒng),在具體應用中穩(wěn)定可靠,,可擴展性強,,功能強大,并且支持uIP,、 TCP/IP協(xié)議棧,、μC/GUI等。μC/OSII內核屬于搶占式,,最多可以處理64個任務,,每個任務相對獨立,都有超時函數(shù),,時間用完后交出MCU使用權,。μC/OSII系統(tǒng)架構如圖7所示,。
為了使所設計的網(wǎng)關程序實時性更強、運行穩(wěn)定性更高,、擴展性更強,,將μC/OSII操作系統(tǒng)移植到MCF52223上。其移植步驟如下:
① 設置與處理器及編譯器相關的代碼(OS_CPU.H),。OS_CPU.H包括了用#define定義的與處理器相關的常量,、宏和類型定義。不同的編譯器會使用不同的字節(jié)長度來表示同一數(shù)據(jù)類型,,所以要定義一系列數(shù)據(jù)類型以確保移植的正確性,。
② 處理器相關部分匯編實現(xiàn)OS_CPU_A.ASM函數(shù)的修改。要求用戶編寫4個匯編語言函數(shù):OSStartHighRdy(),、OSCtxSw(),、OSIntCtxSw()、OSTickISR(),。
③ 用C語言實現(xiàn)與處理器任務相關的函數(shù)OS_CPU_C.C,。μC/OS_II的移植要求用戶編寫6個簡單的C函數(shù):OSTaskStkInit()、OSTaskCreateHook(),、OSTaskDelHook(),、OSTaskSwHook()、OSTaskStatHook(),、OSTimeTickHook(),。
圖6 MCF52223主控程序流程
圖7 μC/OSII系統(tǒng)架構
當μC/OSII系統(tǒng)移植完成后,添加網(wǎng)關節(jié)點實現(xiàn)的基本任務,,包括網(wǎng)關與GPRS模塊通信任務;網(wǎng)關與ZigBee模塊通信任務;液晶屏顯示任務;按鍵任務;I2C總線存儲任務,。
結語
在蘇州科技園的某條道路上對20個景觀燈安裝了單燈測控節(jié)點,組成單燈ZigBee無線傳感器網(wǎng)絡,,而后在道路電控柜中安裝了所設計的網(wǎng)關,,最后通過監(jiān)控中心的上位機軟件進行了測試。經(jīng)實際運行,,該系統(tǒng)可以很好地達到預期的效果,,該網(wǎng)關方案較好地解決了ZigBee無線傳感器網(wǎng)絡與監(jiān)控中心之間的數(shù)據(jù)傳輸問題。此外,,雖然該網(wǎng)關設計方案是以照明監(jiān)控系統(tǒng)為依托的,,但為類似的無線傳感器網(wǎng)絡的網(wǎng)關設計提供了很好的參考,具有較高的實際應用價值,。