智能家居監(jiān)控原型系統(tǒng)設計
在主控制器硬件設備基礎上,對Linux系統(tǒng)進行裁剪、修改及交叉編譯,生成合適的嵌入式Linux操作系統(tǒng)。在操作系統(tǒng)基礎之上,再移植嵌入式Web服務器軟件。針對主控制器的2個主要任務,分別編寫循環(huán)監(jiān)測程序和CGI腳本予以實現(xiàn)。圖4所示為主控制器軟件結(jié)構(gòu)。本文引用地址:http://m.butianyuan.cn/article/159900.htm
循環(huán)監(jiān)測程序從串口發(fā)送命令,通過家庭無線網(wǎng)絡傳遞至終端節(jié)點,終端節(jié)點接收命令,并在讀取傳感器數(shù)據(jù)或執(zhí)行控制操作之后發(fā)送返回數(shù)據(jù),循環(huán)監(jiān)測程序再由串口讀取返回數(shù)據(jù)。若返回數(shù)據(jù)異常,主控制器將向另外一個串口發(fā)送命令,而與該串口相連的TC35模塊則會根據(jù)命令執(zhí)行相應操作,如向某個手機號發(fā)出報警短信。圖5為循環(huán)監(jiān)測程序流程圖。
CGI(通用網(wǎng)關(guān)接口)定義了Web服務器與CGI腳本之間的接口標準。由于用戶能傳遞不同的參數(shù)給CGI腳本,所以CGI技術(shù)使得客戶端和服務器之間具有交互性。在主控制器接收到手機發(fā)送的HTTP請求之后,腳本程序?qū)⒘⒖虉?zhí)行,利用CGI標準接口函數(shù)來提取URL中附帶的參數(shù)并由串口發(fā)送相應命令。圖6所示為CGI腳本程序流程圖。
循環(huán)采集程序和CGI腳本程序的區(qū)別是,前者是隨著系統(tǒng)開機自動啟動并不斷循環(huán)執(zhí)行,且只負責監(jiān)測各傳感器數(shù)據(jù),而后者只有在接到手機的HTTP請求時,才會立即執(zhí)行一次,可以獲取傳感器的監(jiān)測數(shù)據(jù)或者執(zhí)行對家庭設備的控制。
評論