基于ZigBee和Android的智能移動監(jiān)控系統(tǒng)設(shè)計
信息處理與控制子系統(tǒng)是在Android智能移動平臺上研發(fā)的。Android智能平臺體系從上到下由應(yīng)用程序、應(yīng)用程序框架、外部庫、Andr oid運行時庫、硬件抽象層HAL(Hardware Abstraction Laycr)和Linux內(nèi)核組成。
Android智能移動平臺的研發(fā)需要借助Eclipse、NDK和JNI等工具和方法。信息處理與控制子系統(tǒng)的MVC模式如圖8所示。本文是按MVC模式研發(fā)信息處理與控制子系統(tǒng)的。
Android應(yīng)用程序的設(shè)計必須要遵循單線程模型。當(dāng)Android應(yīng)用程序啟動時,Android系統(tǒng)會同時啟動一個對應(yīng)的主線程即UI線程,用于處理與用戶界面UI(User Interface)相關(guān)的事件。UI線程不是線程安全的。
此設(shè)計需要將環(huán)境信息實時地顯示在Android應(yīng)用程序上,同時需要及時地將用戶操作轉(zhuǎn)換成用戶命令發(fā)送至信息采集與傳輸子系統(tǒng)。岡此,為了避免阻塞UI線程,設(shè)計了一個守候線程并采用了基于zbHandler的消息傳遞機制。UI線程和守候線程的關(guān)系如圖9所示。
守候線程是借助于本地方法獲取Linux底層驅(qū)動環(huán)境信息的。信息處理與控制子系統(tǒng)中的本地方法被封裝在一個名為ZigBeeJni的類中,其定義如下:
結(jié)語
本文研究了基于ZigBee網(wǎng)絡(luò)和Android智能移動平臺的監(jiān)控系統(tǒng)的設(shè)計。經(jīng)過嚴(yán)格的測試,本系統(tǒng)能夠完成對環(huán)境信息的實時監(jiān)測,并能及時地響應(yīng)用戶發(fā)出的各種控制命令,系統(tǒng)的設(shè)計達到了預(yù)期的目標(biāo)。
本文研究了基于ZigBee網(wǎng)絡(luò)和Android智能移動平臺的監(jiān)控系統(tǒng)的設(shè)計。經(jīng)過嚴(yán)格的測試,本系統(tǒng)能夠完成對環(huán)境信息的實時監(jiān)測,并能及時地響應(yīng)用戶發(fā)出的各種控制命令,系統(tǒng)的設(shè)計達到了預(yù)期的目標(biāo)。
更多關(guān)于ZigBee技術(shù)的資訊,歡迎訪問與非網(wǎng)ZigBee技術(shù)專區(qū)
評論