基于ZigBee和Android的智能移動(dòng)監(jiān)控系統(tǒng)設(shè)計(jì)
1.2軟件結(jié)構(gòu)
信息采集與傳輸子系統(tǒng)軟件架構(gòu)如圖4所示。信息采集與傳輸子系統(tǒng)的軟件系統(tǒng)設(shè)計(jì)是基于OSAL操作系統(tǒng)的。用戶任務(wù)和ZDO等ZigBee系統(tǒng)任務(wù)一起在OSAL操作系統(tǒng)的調(diào)度下運(yùn)行,其調(diào)度機(jī)制基于優(yōu)先級(jí),用戶任務(wù)的優(yōu)先級(jí)是最低的。
信息采集與傳輸子系統(tǒng)軟件架構(gòu)如圖4所示。信息采集與傳輸子系統(tǒng)的軟件系統(tǒng)設(shè)計(jì)是基于OSAL操作系統(tǒng)的。用戶任務(wù)和ZDO等ZigBee系統(tǒng)任務(wù)一起在OSAL操作系統(tǒng)的調(diào)度下運(yùn)行,其調(diào)度機(jī)制基于優(yōu)先級(jí),用戶任務(wù)的優(yōu)先級(jí)是最低的。
信息處理與控制子系統(tǒng)軟件部分的主體是Android應(yīng)用程序。該Android應(yīng)用程序?qū)崟r(shí)地顯示環(huán)境信息并及時(shí)地響應(yīng)用戶的觸摸操作。Android應(yīng)用程序的運(yùn)行需要底層Linux硬件驅(qū)動(dòng)等的支持。本子系統(tǒng)的軟件架構(gòu)如圖5所示。
2系統(tǒng)關(guān)鍵技術(shù)和實(shí)現(xiàn)
2.1信息采集與傳輸子系統(tǒng)
信息采集與傳輸子系統(tǒng)中的關(guān)鍵技術(shù)有很多,這里主要介紹ZigBee協(xié)議。ZigBee協(xié)議從上到下由應(yīng)用層APS、網(wǎng)絡(luò)層NWK、媒體訪問控制層MAC和物理層PHY組成。應(yīng)用層的主要功能與信息采集與傳輸密切相關(guān)。網(wǎng)絡(luò)層的功能包括配置設(shè)備、路由發(fā)現(xiàn)和維護(hù),確保數(shù)據(jù)能安全、有效地傳輸?shù)侥康脑O(shè)備。媒體訪問控制層控制著設(shè)備接入無線信道的時(shí)間和方法,確保數(shù)據(jù)鏈路的可靠性。物理層主要實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收,完成信道的評(píng)估和射頻信號(hào)能量的測(cè)量等。本課題物理層工作在2.4GHz的ISM頻段,調(diào)制方式為O-QPSK.ZigBee協(xié)議數(shù)據(jù)傳遞流程如圖6所示。
2.1信息采集與傳輸子系統(tǒng)
信息采集與傳輸子系統(tǒng)中的關(guān)鍵技術(shù)有很多,這里主要介紹ZigBee協(xié)議。ZigBee協(xié)議從上到下由應(yīng)用層APS、網(wǎng)絡(luò)層NWK、媒體訪問控制層MAC和物理層PHY組成。應(yīng)用層的主要功能與信息采集與傳輸密切相關(guān)。網(wǎng)絡(luò)層的功能包括配置設(shè)備、路由發(fā)現(xiàn)和維護(hù),確保數(shù)據(jù)能安全、有效地傳輸?shù)侥康脑O(shè)備。媒體訪問控制層控制著設(shè)備接入無線信道的時(shí)間和方法,確保數(shù)據(jù)鏈路的可靠性。物理層主要實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收,完成信道的評(píng)估和射頻信號(hào)能量的測(cè)量等。本課題物理層工作在2.4GHz的ISM頻段,調(diào)制方式為O-QPSK.ZigBee協(xié)議數(shù)據(jù)傳遞流程如圖6所示。
應(yīng)用層數(shù)據(jù)從一個(gè)ZigBee設(shè)備發(fā)送到另一個(gè)ZigBee設(shè)備,它是一個(gè)層層封裝,然后層層解析的過程。從應(yīng)用層來看,信息采集與傳輸子系統(tǒng)中存在信息采集節(jié)點(diǎn)和網(wǎng)關(guān)節(jié)點(diǎn)兩種設(shè)備。信息采集系統(tǒng)與傳輸子系統(tǒng)的Profile ID為INFO_GATH ER_PRF.信息采集結(jié)點(diǎn)和網(wǎng)關(guān)節(jié)點(diǎn)的端點(diǎn)號(hào)均被配置成INFO_GATHER_EPT.信息采集與傳輸子系統(tǒng)的兩種數(shù)據(jù)類型如圖7所示。信息采集節(jié)點(diǎn)和網(wǎng)關(guān)節(jié)點(diǎn)之間存在兩種數(shù)據(jù)的交互:環(huán)境信息數(shù)據(jù)和用戶命令數(shù)據(jù)。信息采集結(jié)點(diǎn)向網(wǎng)關(guān)節(jié)點(diǎn)發(fā)送環(huán)境信息數(shù)據(jù)時(shí)采用的簇ID為ENV_INFO_CLU,網(wǎng)關(guān)節(jié)點(diǎn)向信息采集節(jié)點(diǎn)傳達(dá)用戶命令時(shí)使用的簇ID為USR_CMD_CLU.Profile ID號(hào)、端點(diǎn)號(hào)和簇ID都是ZigBee協(xié)議定義的重要的配置信息,請(qǐng)參見ZigBee協(xié)議。
環(huán)境信息數(shù)據(jù)和用戶命令數(shù)據(jù)最終都將填充到類型為aflncomingMSGPacket_t的結(jié)構(gòu)體中,其定義如下:
評(píng)論