臺(tái)州職業(yè)技術(shù)學(xué)院電氣信息學(xué)院 蔣開(kāi)偉 孫凌杰
隨著經(jīng)濟(jì)的飛速發(fā)展和人們物質(zhì)生活水平的不斷提高,人們對(duì)家居環(huán)境也提出了更高的要求?;ヂ?lián)網(wǎng)技術(shù)、控制技術(shù)、通信技術(shù)的進(jìn)步使得家居設(shè)備的系統(tǒng)化、網(wǎng)絡(luò)化和智能化控制成為可能,尤其是近年來(lái)物聯(lián)網(wǎng)技術(shù)的發(fā)展進(jìn)一步推動(dòng)“智能家居”的概念變成現(xiàn)實(shí)。智能家居(Smart Home),利用各種先進(jìn)的技術(shù)和設(shè)施實(shí)現(xiàn)對(duì)家庭的綜合性管理和控制,從而改善了人類(lèi)的居住環(huán)境。和普通的住宅相比,智能家居具有很多優(yōu)點(diǎn),與人類(lèi)的生活密切相關(guān)。
智能家居為用戶(hù)提供更高效、快捷的控制方式,不僅提高用戶(hù)的生活樂(lè)趣,也為家庭日常生活減少一些不必要的能耗。在當(dāng)前大力提倡環(huán)保的背景下,智能家居能很好的踐行節(jié)能環(huán)保、低碳生活的倡導(dǎo),伴隨著人們對(duì)生活質(zhì)量要求的不斷提高,將智能家居應(yīng)用于家庭住宅中是時(shí)代發(fā)展的潮流,未來(lái)智能家居也將步入尋常百姓家中,由此可見(jiàn)開(kāi)發(fā)出一款高性?xún)r(jià)比的智能家居控制系統(tǒng)對(duì)加快智能家居的推廣和普及具有重要意義。
在智能家居發(fā)展的過(guò)程中,總是不斷涌現(xiàn)出各種新的技術(shù),比如現(xiàn)在流行的各種無(wú)線(xiàn)通信技術(shù),就被引入了智能家居領(lǐng)域,“無(wú)線(xiàn)家居”的家居理念應(yīng)運(yùn)而生。常見(jiàn)的無(wú)線(xiàn)家居方式有:藍(lán)牙、Zigbee、WiFi。其中以Zigbee和WiFi的方式應(yīng)用最為廣泛。研究了基于Zigbee技術(shù)的智能家居系統(tǒng),基于WiFi技術(shù)設(shè)計(jì)系統(tǒng)。指出智能家居系統(tǒng)的關(guān)鍵技術(shù)為基于嵌入式的智能家居網(wǎng)關(guān),并給出了最新的“云+端”智能家居模式。
本文將以近年來(lái)流行的機(jī)智云平臺(tái)作為系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的切入點(diǎn),該平臺(tái)不僅提供了可靠的云平臺(tái),還為開(kāi)發(fā)者提供強(qiáng)大的技術(shù)支持,極大地縮小了開(kāi)發(fā)成本和開(kāi)發(fā)周期。
本設(shè)計(jì)旨在實(shí)現(xiàn)通過(guò)手機(jī)應(yīng)用程序遠(yuǎn)程或本地控制家里的電燈、插座、紅外遙控電器的開(kāi)關(guān),設(shè)置空調(diào)溫度值,以及實(shí)時(shí)監(jiān)測(cè)室內(nèi)的信息,如溫濕度等。
系統(tǒng)的總體設(shè)計(jì)如圖1所示。不難看出,智能網(wǎng)關(guān)是整個(gè)設(shè)計(jì)的核心,它起著承上啟下的作用,一端通過(guò)2.4G無(wú)線(xiàn)通信方式連接各個(gè)控制模塊,另一端通過(guò)WiFi方式接入家庭無(wú)線(xiàn)路由器繼而連接到英特網(wǎng)上,以實(shí)現(xiàn)手機(jī)端遠(yuǎn)程控制。此時(shí)橋接無(wú)線(xiàn)路由和手機(jī)端的是云平臺(tái)。當(dāng)手機(jī)和智能網(wǎng)關(guān)連接到同一個(gè)無(wú)線(xiàn)路由器,即處在同一個(gè)局域網(wǎng)時(shí),則手機(jī)端的控制無(wú)需借助云端就應(yīng)該可以直接和智能網(wǎng)關(guān)進(jìn)行通信。
圖1 總體設(shè)計(jì)
我們將控制模塊分成三大類(lèi):紅外遙控類(lèi),監(jiān)測(cè)報(bào)警類(lèi)以及強(qiáng)電控制類(lèi)。其中,紅外遙控類(lèi)顧名思義控制家用遙控器;監(jiān)測(cè)類(lèi)是將信息上報(bào)給手機(jī)端;而強(qiáng)電類(lèi)則需要處理強(qiáng)電相關(guān)的控制。因此,整個(gè)智能家居控制系統(tǒng)包括:手機(jī)控制端、智能網(wǎng)關(guān)控制器、紅外遙控控制模塊、監(jiān)測(cè)報(bào)警控制模塊、強(qiáng)電控制模塊等。
由于篇幅限制以及各個(gè)模塊的設(shè)計(jì)相對(duì)較為簡(jiǎn)單,我們后續(xù)的設(shè)計(jì)主要圍繞著智能網(wǎng)關(guān)部分。
本系統(tǒng)的主控制芯片選擇的是:STM32F103CBT6。STM32F-103CBT6是中等容量增強(qiáng)型微處理器,基于ARM Cortex-M3 32位RISC內(nèi)核,工作在72MHZ的工作頻率下。芯片內(nèi)部具有20K字節(jié)高速存儲(chǔ)器,閃存高達(dá)128K字節(jié)。該芯片具有體積小、成本低、功能強(qiáng)大等特點(diǎn),采用LQFP48封裝,價(jià)格上與常見(jiàn)的8位、16位單片機(jī)接近,擁有完全滿(mǎn)足需求的48個(gè)增強(qiáng)I/O端口和豐富的外設(shè)。包含USB、CAN、2個(gè)ADC、7個(gè)定時(shí)器、9個(gè)通信接口,其中3個(gè)全雙工串行接口。 STM32F103CBT6工作于-40°C至85°C的溫度范圍,供電電壓2.0V至3.6V,芯片具有省電模式,這種模式能提高設(shè)備在缺電的特殊環(huán)境下的生存能力。
主控芯片是本系統(tǒng)的核心,它要與WiFi模塊和NRF24L01無(wú)線(xiàn)通信模塊進(jìn)行通信,其中WiFi模塊是其和云平臺(tái)或手機(jī)端通信的紐帶,而NRF24L01將協(xié)助完成和其他終端模塊通信。
WiFi模組采用的是樂(lè)鑫ESP8266模塊。ESP8266在較小尺寸封裝中集成了業(yè)界領(lǐng)先的 在較小尺寸封裝中集成了業(yè)界領(lǐng)先的Tensilica L106超低功耗32位微型MCU,帶有16位精簡(jiǎn)模式,主頻支持80MHz 和160MHz,支持RTOS,集成WiFi MAC/BB/RF/PA/LNA,板載天線(xiàn)。支持標(biāo)準(zhǔn)的 IEEE802.11 b/g/n協(xié)議,完整的TCP/IP 協(xié)議棧。用戶(hù)可以使該模塊為現(xiàn)有的設(shè)備添加聯(lián)網(wǎng)功能,也可以構(gòu)建獨(dú)立的絡(luò)控制器。ESP8266是高性能無(wú)線(xiàn) SOC,以最低成本提供最大實(shí)用性,為WiFi功能嵌入其他系統(tǒng)提供了無(wú)限可能。
值得注意的是,它只能檢測(cè)到2.4G頻段的WiFi信號(hào),此外它支持USART等通信接口,為物聯(lián)網(wǎng)這種低流量的應(yīng)用場(chǎng)合作了優(yōu)化。本設(shè)計(jì)的主控芯片與WiFi模組采用USART通信方式進(jìn)行數(shù)據(jù)同步。由于把貼片封裝的WiFi模組直接焊接在電路板上,所以在加上了相應(yīng)的0歐電阻,為了以后能夠進(jìn)行升級(jí)所用。
在智能家居控制系統(tǒng)中,用戶(hù)要想通過(guò)手機(jī)控制具體的功能模塊,還需要通過(guò)智能網(wǎng)關(guān)將信息下發(fā)至該功能模塊。本設(shè)計(jì)使用的無(wú)線(xiàn)通信模塊是NRF24L01+,與主控芯片的通訊采用SPI的方式。
除了上述幾個(gè)主要電路之外,還有一個(gè)比較重要的就是供電電路。由于系統(tǒng)中的STM32,NRF24L01+,WIFI模組都需要在3.3V的電壓下才能正常工作,這些芯片和模塊對(duì)電源的質(zhì)量要求較高,尤其是對(duì)穩(wěn)定性的要求。因此選用了AMS1117穩(wěn)壓芯片,它具有線(xiàn)性穩(wěn)壓、紋波小、穩(wěn)定等特點(diǎn)。
根據(jù)本系統(tǒng)的設(shè)計(jì),依照傳統(tǒng)的開(kāi)發(fā)方式,需要分別在手機(jī)端開(kāi)發(fā)APP、WiFi模組通信協(xié)議、STM32單片機(jī)軟件以及在各位模塊上開(kāi)發(fā)對(duì)應(yīng)的處理程序。而采用機(jī)智云平臺(tái)后這些工作量將大大減少,甚至不用。
我們首先在機(jī)智云官網(wǎng)上創(chuàng)建產(chǎn)品,此時(shí)將分配到Product Key和Product Secret,其中Product Key是WiFi模組和云端正確通信的基礎(chǔ),Product Secret參數(shù)是手機(jī)APP和服務(wù)器對(duì)接時(shí)所使用的參數(shù)。
在創(chuàng)建產(chǎn)品過(guò)程中,首先需要做的是創(chuàng)建數(shù)據(jù)點(diǎn),根據(jù)這些數(shù)據(jù)點(diǎn)以及Product Key和Product Secret,機(jī)智云能自動(dòng)生成手機(jī)APP和MCU的程序框架,我們僅需添加相應(yīng)的驅(qū)動(dòng)程序。與此同時(shí),ESP8266模組的固件我們也可以直接下載得到,無(wú)需自行開(kāi)發(fā)。這些便利給開(kāi)發(fā)者帶來(lái)極大好處。
數(shù)據(jù)點(diǎn)即設(shè)備產(chǎn)品的功能的抽象,用于描述產(chǎn)品功能及其參數(shù)。創(chuàng)建數(shù)據(jù)點(diǎn)后,設(shè)備與云端通訊的數(shù)據(jù)格式即可確定,設(shè)備、機(jī)智云可以相互識(shí)別設(shè)備與機(jī)智云互聯(lián)互通的數(shù)據(jù)。
數(shù)據(jù)點(diǎn)定義基本內(nèi)容可分為顯示名稱(chēng),標(biāo)識(shí)名,讀寫(xiě)類(lèi)型,數(shù)據(jù)類(lèi)型及備注。根據(jù)設(shè)計(jì),強(qiáng)電模塊涉及的有插座電源控制、燈電源,該數(shù)據(jù)為開(kāi)關(guān)量;紅外遙控模塊涉及空調(diào)開(kāi)關(guān)和調(diào)溫,其中空調(diào)開(kāi)關(guān)為布爾值,溫度設(shè)定為數(shù)值型;檢測(cè)報(bào)警模塊包括室內(nèi)溫濕度的監(jiān)測(cè),均為數(shù)值型。
WiFi模組在第一次連接到WiFi路由器時(shí)需要輸入用戶(hù)名和密碼,由于所使用的模組沒(méi)有輸入和先顯示界面,沒(méi)法直接做上述操作。ESP8266模組提供了兩種入網(wǎng)方式:SoftAP和AirLink。在SoftAp模式中,模組將自己從工作站模式切換到接入點(diǎn)模式,此時(shí),手機(jī)可以連接到該模組,輸入用戶(hù)名和密碼,便將信息傳送給模組,得到上述信息后,模組重新切換到工作站模式,并連接到相應(yīng)的接入點(diǎn)上。而在AirLink模式下,模組會(huì)不斷接收特定編碼的WiFi廣播包,該廣播包是由手機(jī)在連接可用的WiFi網(wǎng)絡(luò)后,通過(guò)指定的App發(fā)送編碼后的WiFi網(wǎng)絡(luò)的SSID和密碼廣播,設(shè)備接收到之后自動(dòng)嘗試連接此WiFi網(wǎng)絡(luò),連接成功即配置完成。
完成入網(wǎng)方式選擇的對(duì)應(yīng)配置函數(shù)為gizwitsSetMode,參數(shù)為WIFI_SOFTAP_MODE和WIFI_AIRLINK_MODE。
這里,我們通過(guò)短按和長(zhǎng)按按鍵來(lái)觸發(fā)WiFi入網(wǎng)模式。短按時(shí)進(jìn)入SoftAp模式,長(zhǎng)按則進(jìn)入AirLink模式。無(wú)論哪種模式,配置成功后,LED燈都亮起。
在智能家居控制過(guò)程中,云端/APP發(fā)送過(guò)來(lái)的控制事件經(jīng)由智能網(wǎng)關(guān)下發(fā)至智能家居模塊,而網(wǎng)關(guān)端與控制型協(xié)議相關(guān)的函數(shù)調(diào)用關(guān)系。各函數(shù)說(shuō)明如下。
protocolIssuedProcess:該函數(shù)被gizwitsHandle調(diào)用,接收來(lái)自云端或app端下發(fā)的相關(guān)協(xié)議數(shù)據(jù)。ACTION_CONTROL_DEVICE:進(jìn)行“控制型協(xié)議”的相關(guān)處理。gizDataPoint2Event:根據(jù)協(xié)議生成“控制型事件”,并進(jìn)行相應(yīng)數(shù)據(jù)類(lèi)型的轉(zhuǎn)化轉(zhuǎn)換。
gizwitsEventProcess:根據(jù)已生成的“控制型事件”進(jìn)行相應(yīng)處理(包括相應(yīng)的驅(qū)動(dòng)函數(shù))。
借助于機(jī)智云的虛擬設(shè)備,分別調(diào)試手機(jī)APP和云端,以及云端和網(wǎng)關(guān)端的通訊。
文中提出了一種基于機(jī)智云平臺(tái)的智能家居控制系統(tǒng),實(shí)現(xiàn)手機(jī)APP控制常用家居設(shè)備的功能。該系統(tǒng)的核心為智能網(wǎng)關(guān)部分,它承接著云平臺(tái)或手機(jī)端與各個(gè)智能家居模塊的信息中轉(zhuǎn)功能。其中MCU采用價(jià)格低廉、功能強(qiáng)大的STM32單片機(jī)。通訊方式采用較為成熟和常見(jiàn)的WiFi以及2.4G無(wú)線(xiàn)方式。此外,借助于機(jī)智云的強(qiáng)大功能,極大地減小開(kāi)發(fā)復(fù)雜度、縮短開(kāi)發(fā)周期,進(jìn)而降低整個(gè)系統(tǒng)的成本,為該系統(tǒng)應(yīng)用推廣奠定了基礎(chǔ)。