李敦勇 劉正云



智能家居是以住宅為平臺,利用綜合布線技術、網絡通信技術、安全防范技術、自動控制技術、音視頻技術等將與家居生活有關的設施集成,構建高效的住宅設施與家庭日程事務的管理系統。
設計一個智能家居模型的學習課題源于學生對智能家居的好奇,智能家居作為一個新興事物,其內部原理、技術實現等大家都不太了解。因此,本項目試圖從門禁系統這一“小斑”的設計與實現去引導學生知“全豹”。該項目不僅可以幫助學生理解和應用所學的軟硬件知識和技術,而且還滲透了物聯網技術的運用,真正培養了學生自主探究學習的意識和能力。
● 門禁系統的工作原理
在設計門禁系統之前,首先得理清門禁系統的工作原理。門禁系統兼具傳統與智能兩種家居功能,簡單來說它既可以通過手動開關來實現門的開關功能(傳統的),也可以通過SIoT服務器平臺來實現手機遠程讀取門的狀態以及控制門的開關的功能(智能的)。門禁系統工作原理如圖1所示。
● 門禁系統的硬件實現
本項目所需硬件清單如下表所示。
第一步:設計并使用廢棄的紙板制作智能家具的外觀模型。
第二步:將掌控板插在掌控板擴展板上,將三個按鈕分別連在掌控板擴展板的P8、P13、P16針腳上,將舵機接在P1針腳,連接電源給本套裝置供電。
第三步:在軟件實現成功之后,將外觀模型進行組裝,并將掌控板+擴展板、電池盒、按鈕和舵機等固定在房子內部。
● 門禁系統的軟件實現
門禁系統的軟件實現主要包含三個部分:一是MQTT服務器的架設,為后期消息的發送及訂閱提供保障;二是掌控板端的程序編寫,實現掌控板與SIoT平臺的消息互通;三是手機APP的部署,完成手機的遠程控制。
1.架設SIoT服務器
下載SIoT軟件壓縮包,解壓后雙擊運行。在整個實驗過程中服務器保持運行狀態。從運行界面可知該服務器的IP地址為192.168.8.112。在手機部署階段可通過訪問該服務器的IP地址(如http://192.168.8.112:8080)實現消息的查閱及發送。
2.編寫掌控板端程序
(1)編程實現單純按鈕控制門禁開關
根據門的位置及連接的方式,確定舵機安裝方式。使用Mind+編程,實現P8針腳連接的按鈕被按下時,舵機轉動到10度,門打開;P16針腳連接的按鈕被按下時,舵機轉動90度,門關閉。
(2)編程實現SIoT平臺控制門禁開關
在簡單控制程序的基礎上加入MQTT服務器的內容,使掌控板端通過無線,連接上之前一直打開著的SIoT平臺,需要注意的是,程序中的Wi-Fi應與SIoT處于同一個局域網之內。
3.部署手機APP
通過訪問http://app.gzjkw.net進行APP inventor的在線編程。
(1)組件設計
整個界面主要由1個標簽(設置其文本為“讀取狀態……”)、2個按鈕(開門、關門)、2個非可視組件Web客戶端和計時器組成。
(2)邏輯設計
根據SIoT的WebAPI功能,首先,每隔1秒訂閱一次最新消息。使用計時器指令實現訪問SIoT服務器網址,并獲得文本,將返回的數據存放在“響應內容”中。其次,通過對“響應內容”的處理,提取所需內容,進行邏輯判斷,程序如圖2所示。最后,編程實現APP通過“開門”“關門”按鈕完成消息的發送,具體編程如圖3所示。
● 拓展提升
完成硬件和代碼后,就可以開始測試了:按下智能家居模型以及手機APP上的相應按鈕,門可以實現打開、關閉功能;手機APP上也可以及時傳回門禁系統的開閉狀態。該模型利用SIoT物聯網平臺實現了遠程控制,也讓學生了解到了智能家居的基本原理及實現方法。
當然對于這個項目,個人覺得還可以作一些拓展:
第一,項目的SIoT物聯網平臺是建立在局域網內的,其實也可以建立在整個廣域網中,那將實現跨網訪問與交互,其應用領域也將會更廣闊。
第二,手機端的控制是利用SIoT服務器的WebAPI功能,通過手機APP的Web客戶端發起請求來實現手機的遠程控制。除此之外,也可以利用計算機的網頁端等其他多種方式來實現。
● 結語
設計智能家居模型是一個非常適合中小學的研究項目,其價值是將傳統開關門方式與現代科技結合,通過動手造物的形式,讓學生深入理解現代門禁系統可能的實現方法,進而對智能家居有深刻而又具體的認識。SIoT的出現與普及,讓物聯網平臺的學習門檻越來越低,學生利用掌控板和MQTT協議,完全能夠做出可以真正應用于生活中的智能裝置,如將學校創客空間的某些設備改造為遠程控制。