【關鍵詞】微信小程序;智能家居;管理系統
隨著物聯網技術的快速發展,智能家居行業迅速發展,目前市場上已經出現了許多基于物聯網技術的智能家居產品。智能家居管理系統是以物聯網技術為基礎,實現對家庭中各種電器設備的智能化控制,具有較高的實用性、易用性和穩定性。目前市場上已經出現了許多基于微信小程序的智能家居產品,但這些產品都具有一定的局限性。本文為優化當前市場上已有的智能家居系統,設計了一種基于微信小程序的智能家居管理系統。該系統借助微信小程序,實現對家庭中各類電器設備的實時監測、遠程操控,以及信息管理等功能,不僅可以使用戶擺脫各種智能家居產品對網絡環境的依賴,而且能提高用戶生活質量,降低用戶使用成本,具有較大的社會意義和實用價值。
智能家居管理系統是一個面向家庭用戶的智能控制系統,其功能主要包括家庭電器設備的管理、遠程控制和信息管理。系統設計過程主要遵循了模塊化、可擴展、高可靠度和高可用性等原則[1]。
根據系統的功能需求,在總體框架設計方面,系統采用了兩層架構,包含用戶界面層和業務邏輯層。用戶界面部分將手機微信小程序安裝于用戶移動終端,實現人機互動。業務邏輯層提供與數據庫交互的接口,通過數據庫訪問層可以直接訪問后臺數據庫,部署于云服務器。
基于微信小程序的智能家居管理系統應用TCP/IP協議,通過HttpPost方式,與自主開發云服務實現數據交互[2]。
在這個系統中,自主開發的云服務接口發揮著至關重要的作用。
GetDeviceValue函數接口是獲取智能家居設備狀態信息的核心,其設計充分考慮了智能家居虛擬仿真系統以及實際智能家居實訓系統的需求。通過該接口,系統可以精確地獲取傳感器所采集的數據,包括溫度、濕度、光照強度等環境參數,以及控制設備的當前狀態,如開關狀態、亮度等級等。這些信息為系統的智能控制和決策提供了重要依據。

SetDeviceValue函數接口則是實現智能家居設備精確操控的關鍵,通過該接口,可以向云服務發送控制指令;云服務再向智能家居虛擬仿真系統發送控制指令,實現對各類控制設備如燈、風扇、窗簾、門等的精確操控[3],例如根據環境參數的實時變化,自動調節燈光亮度、風扇轉速等,為用戶提供更加舒適、節能的居住環境。
應用微信小程序設計的智能家居管理系統,確保了數據的準確傳輸和設備的有效控制,為系統的穩定運行提供了有力保障。微信小程序設計的移動應用具有廣泛的應用前景和重要的實踐價值,通過精準獲取設備狀態信息和精確控制設備操作,它為用戶提供了更加便捷、舒適、節能的智能家居體驗,如圖1所示。
微信小程序的設計目的是方便用戶使用,小程序不需要下載安裝,打開微信即可使用。與APP相比,微信小程序具有高度的靈活性,用戶通過搜索名稱或關鍵詞即可快速找到自己所需的服務。此外,微信小程序還可以與微信進行無縫連接,用戶掃描二維碼即可連接到小程序[4]。
本系統在微信上進行開發,有三個方面原因:一是開發成本較低;二是可以利用微信客戶端直接訪問服務端,無需下載APP;三是微信用戶基數大,用戶可以憑借掃一掃的方式接入服務端。針對上述考慮,系統采用了以小程序為載體的方案。本系統以中職物聯網專業“智能家居管理系統”實訓項目為例,設計一款微信小程序,供中職物聯網專業學生參考學習。
1.項目需求
某用戶擁有一套別墅,為提升居住品質,計劃進行智能家居改造,為實現家居管理的便捷性與高效性,將采用微信小程序開發一款移動應用。此應用將為用戶提供查詢家居環境數據、接收消防及安防警報,并實現對家居燈光、窗簾、風扇、門鎖等設備的遠程控制。

教學環節采用“智能家居虛擬仿真系統”來模擬搭建家居環境,以便更直觀地展示智能家居系統的運作原理及操作流程。以下是具體的空間布局及家居設備配置情況,包括模擬輸入(Analog Input, AD)傳感器、數字輸入(Digital Input, DI)傳感器和數字輸出(Digital Output, DO)控制設備配置。如表1所示。
通過以上配置,用戶能夠體驗到智能家居帶來的便捷與舒適;同時在教學過程中,幫助學生深入了解智能家居系統的構建與應用。“智能家居虛擬仿真系統”配置如圖2所示。
2.界面原圖設計
根據項目任務的具體要求,本研究應用專業的UI原圖設計工具(如Figma、Sketch等)對小程序的界面進行精心設計,在設計過程中,遵循簡潔明了、易于操作的原則,確保用戶能夠輕松理解和使用界面;考慮到家居環境的多樣性,根據房間的不同類型對界面進行劃分。每個房間板塊將展示與該房間相關的傳感器數據、圖標以及名稱等信息,以便用戶能夠直觀地了解各個房間的狀態和情況。通過這種設計方式,本研究希望為用戶提供一款功能齊全、操作便捷的小程序界面,以提升用戶的使用體驗和滿意度。
3.自定義件設計
微信小程序允許開發者自定義組件,以便在多個頁面或組件中復用。自定義組件可以提高代碼的可維護性和復用性,使開發過程更加高效。由于在“智能家居管理系統”中,傳感器和控制設備高頻重復出現,本研究設計了一個模塊設備自定義組件iotDevice,顯示傳感器相關數據、圖標,實現控制設備的開關控制;同時,根據項目需求創建了“模塊設備”自定義組件,使開發者可以根據需要擴展和完善自定義組件的功能和樣式。
4. JavaScript腳本設計
為了更準確地描述傳感器和控制設備,本研究在自定義的IotDevice組件中,詳細定義了傳感器的五個核心屬性,包括:用于標識傳感器名稱的“name”屬性、用于指定云端變量名稱的“cloudName”屬性、用于表明傳感器類型的“type”屬性、用于可視化展示傳感器圖標的“icon”屬性,以及用于實時顯示傳感器設備數值的“value”屬性。這些屬性的精確定義,有助于提升組件的易用性和功能性。

自定義組除了包含傳感器外,還涵蓋了燈光、窗簾、門鎖、風扇等控制設備。為確保這些設備的正常運行與精確控制,需對其開、關功能進行明確定義,并設定相應的切換事件。具體而言,當控制設備的value被設定為1時,設備將處于開啟狀態;而當其值被設定為0時,設備則切換至關閉狀態。通過這樣的設定,用戶能夠實現對這些控制設備的精準操控,以滿足個性化需求。
5. iotDevice組件界面設計
根據智能家居設備的不同type,自定義組件iotDevice根據不同類型顯示不同方式與風格樣式。具體而言,研究對于AD傳感器,采用了明確的顯示布局,包括name的明確標注、icon的直觀展示以及value的精確顯示[5];對于DI傳感器,則突出顯示了標題和圖標,并根據其值的狀態,分別采用紅色圖標(value為1)和灰色圖標(value為0)表示;對于DO控制設備,設計了包含標題、圖標以及滑動開關的顯示界面,以綠色圖標表示開啟狀態,灰色圖標表示關閉狀態。通過上述設計,研究為用戶提供了更為直觀、易用的智能家居設備信息顯示與控制體驗。界面效果如圖 3所示。

AD、DI以及DO傳感控制設備組件均采取卡片式布局設計。在界面中,研究使用i標記清晰地展示傳感控制設備的圖標,并利用類{{icon}}的樣式特性來區分不同種類的圖標,在card-context中僅顯示AD傳感器的數值,而DI傳感器和DO控制設備不展示具體的數值。為了更直觀地展示DI傳感器和DO控制設備的狀態,研究在wx:if條件判斷中,根據這些設備的不同值來動態地顯示不同顏色的圖標;對于DO控制設備,需要綁定onChanges事件,以便實現對其開、關狀態的有效控制。上述設計旨在提升用戶體驗,確保用戶能夠方便、準確地控制和管理傳感控制設備。
6.功能設計
基于“智能家居管理系統”原始界面,本系統從用戶在“智能家居虛擬仿真系統”構建的家居環境中,加載出客廳、廚房、書房、臥室、花園、衛生間等各個空間,隨后在這些空間內加載并集成相應的傳感器和控制設備。實現上述功能需在JavaScript文件中定義房間數組以及模塊設備數組,通過wx:request方法從虛擬仿真系統中獲取房間數據以及模塊設備數據;接著,在wxml文件中運用wx:for指令進行數據的遍歷渲染:首先渲染出各個空間,然后在每個空間內部再次運用wx:for指令渲染出對應的模塊設備。
通過上述方式,本系統能夠準確地加載并展示用戶在虛擬仿真系統中搭建的智能家居環境,實現家居空間的智能化管理與控制[5]。
7.實現效果
研究通過應用自定義的iotDevice組件,從虛擬仿真系統加載房間、傳感器、控制設備,自動生成房間面板,實現了溫度、光照、煙霧等傳感器數據的顯示[6],以及燈、門鎖、窗簾、風扇等控制設備的遠程控制,如圖4所示。

在當今時代,科技飛速發展,智能家居已經逐漸成為現代生活的一部分,為人們帶來了前所未有的便利。本研究探討了一種創新的實現方式——基于微信小程序的智能家居管理系統。通過這一平臺,用戶能夠更加便捷、高效地管理和控制家庭中的智能設備。通過整合現代科技手段,基于微信小程序的智能家居管理系統打造了一個高效、便捷、安全的智能家居環境,讓科技真正服務于生活,提升人們的生活質量。同時,這種開發模式能給物聯網專業的微信小程序初學者提供有效參考。