面向智能家居的嵌入式傳感網網關的研究與設計
4.4 人機接口模塊的設計
人機接口使用的是項目中使用的觸摸屏是240×320 TFT彩屏LCD。該模塊主要設計以下4個菜單供用戶操作:文件菜單,查詢菜單,報警菜單和管理菜單。這部分的設計使用Qt設計。Qt是一個跨平臺的C++圖形用戶界面庫,由挪威TrollTech公司開發(fā),目前包括Qt/X11、基于Framebuffer的Qt/Embedded、快速開發(fā)工具Qt Designer以及國際化工具Qt Linguist等。Qt的良好封裝機制使其模塊化程度非常高,可重用性較好,對于用戶來說非常的方便。Qt API和開發(fā)工具對所有支持平臺都是一致的,從而可以進行獨立于平臺的程序開發(fā)和配置。它使得跨平臺軟件編程直觀、簡易和方便。
本文所有的可視化界面都是通過Qt自帶的工具Qt designer設計,它是一個可視化的界面設計工具,對于其每個組件內部的關系通過編寫代碼來實現。
網關登陸界面主要用于用戶登陸信息的輸入,包括用戶名和密碼。用戶正確輸入用戶名和密碼之后,就可以進入網關的主界面,如圖6所示,可以看到,這里有4個菜單,當點擊每一個菜單分別進入相應的功能界面,例如點擊文件菜單,可進入配置文件的編輯界面。在此界面上可以修改網關系統(tǒng)的配置文件。這個界面具有一般文件界面的所有功能。這幾個界面都比較簡單,比較容易實現。在此重點介紹監(jiān)控界面的設計。本文引用地址:http://m.ptau.cn/article/150878.htm
監(jiān)控界面是該系統(tǒng)用戶界面的主要部分。它主要是查看目前家里的環(huán)境信息。和這相關的文件有query.ui,ui_query.h,query.h,query.cpp等,其中query.ui是Qt Designer設計的主界面函數,如圖7所示。Ui_query.h是moc編譯器產生的函數。本文中需要的函數一般都在query.h,query.cpp中得到體現和實現,主要包括信息的查詢,這里既可以查看一段時間內家庭內的環(huán)境信息,也可以輸入查詢日期,查詢某天的數據信息。根據需求,設計的主要實現函數為:
這些槽函數是根據按鈕要實現的具體功能而設計的。具體實現在query.cpp中。
通過這部分的設計,實現了網關的人機界面部分??梢詫νㄟ^此網關系統(tǒng)對家庭信息進行查詢。
4.5 報警功能
該網關的報警功能主要是網關主控制器通過操作串口來操作GSM模塊,使用AT指令來完成。在該網關中,報警功能實現當家庭網絡中的信息超過某一閾值時,發(fā)送報警信息。
5 結語
本文立足于WSN和Internet,GSM異構互聯研究,針對WSN與Internet,GSM互聯的網絡接入要求,完成了基于ARM9的家庭網關系統(tǒng)的研究與設計。從硬件平臺上來說,提供了豐富的接口以便不同網絡的接入,從軟件平臺來說,實現了用戶對家庭網關的訪問,通過用戶可操作的人機界面來對家庭內的環(huán)境信息進行查詢。當家庭內某一項環(huán)境信息超標時,通過使用AT指令控制GSM模塊來向用戶發(fā)送報警短信。
評論