一種基于ZigBee的城市照明監(jiān)控系統(tǒng)網(wǎng)關節(jié)點設計
3 網(wǎng)關節(jié)點軟件設計
本文引用地址:http://m.butianyuan.cn/article/256538.htm3.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內(nèi)核屬于搶占式,最多可以處理64個任務,每個任務相對獨立,都有超時函數(shù),時間用完后交出MCU使用權。μC/OSII系統(tǒng)架構如圖7所示。
為了使所設計的網(wǎng)關程序?qū)崟r性更強、運行穩(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)關設計提供了很好的參考,具有較高的實際應用價值。
pa相關文章:pa是什么
評論