胥建鵬,楊澤偉,牛熠,許元
(東莞城市學(xué)院,廣東東莞,523419)
近些年來,伴隨著物聯(lián)網(wǎng)技術(shù)、嵌入式技術(shù)、集成電路技術(shù)和AI 人工智能技術(shù)的飛速發(fā)展,逐漸改變著各行業(yè)、各領(lǐng)域的工作方式和生產(chǎn)方式,極大程度上有力推動社會生產(chǎn)力的發(fā)展與提高。在此背景下,全世界各國紛紛投入大量的人力、物力和財(cái)力進(jìn)行相關(guān)關(guān)鍵技術(shù)的研發(fā)與突破。其中,語音識別、無線通信技術(shù)和智能傳感器作為最基本、最常見的關(guān)鍵技術(shù),經(jīng)過多年努力,取得了長足發(fā)展,已經(jīng)日漸成熟,并在各領(lǐng)域得到廣泛應(yīng)用,從而也催生了智能家居系統(tǒng)的出現(xiàn)。
以前,家居環(huán)境和辦公場所中使用的各種電器設(shè)備,大多數(shù)都是采用傳統(tǒng)開關(guān)實(shí)現(xiàn)控制,在很多種情況下,這種控制方式具有一定的不足和局限性。比如,對老人和行動不方便的人,在使用家用設(shè)備的時(shí)候,存在諸多困難和不便。以智能家居系統(tǒng)為代表的物聯(lián)網(wǎng)技術(shù)的發(fā)展與應(yīng)用,為此類問題提供了一種很好的解決方案。智能家居系統(tǒng)的出現(xiàn)和發(fā)展,讓設(shè)備控制方式向智能、便捷的語音交互、APP 控制方向發(fā)展,人們利用手機(jī)APP 或者語音識別技術(shù),就可以對各種家用設(shè)備實(shí)現(xiàn)便捷、精確的控制,從此擺脫了以往傳統(tǒng)機(jī)械式開關(guān)控制的局限性,更加體現(xiàn)出便捷化和人性化,為人們提供一個安全、舒適的生活、辦公環(huán)境[1]。
智能家居語音控制系統(tǒng)硬件結(jié)構(gòu)框圖如圖1 所示。其中,由DHT11 溫濕度模塊、物理按鍵、麥克風(fēng)+語音識別模塊以及手機(jī)+ONE NET 云平臺+ESP8266 無線通信模塊組成系統(tǒng)的輸入電路端;由舵機(jī)、OLED 顯示屏、LED 燈和繼電器等模塊組成系統(tǒng)的輸出電路端。各模塊的功能描述如下:
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
(2)物理按鍵電路:通過物理按鍵電路,可以實(shí)現(xiàn)對日歷、時(shí)間和溫度閾值的設(shè)定。
(3)麥克風(fēng)+語音識別模塊:接收和識別語音控制信號,并將其轉(zhuǎn)換成為STM32 主控芯片能夠識別的控制命令。
(4)手機(jī)+ONE NET 云平臺+ESP8266 無線通信模塊:手機(jī)APP 端可以通過ESP8266 無線通信模塊對各聯(lián)網(wǎng)設(shè)備進(jìn)行控制。同時(shí),STM32 主控芯片通過ESP8266 無線通信模塊把傳感器采集的數(shù)據(jù)上傳到ONE NET 云平臺,并在手機(jī)APP 端可以實(shí)時(shí)查看。
(1) 舵機(jī)模塊:可以通過語音、手機(jī)APP、物理按鍵來控制舵機(jī)的啟停,進(jìn)而實(shí)現(xiàn)對家居環(huán)境和辦公環(huán)境中窗簾的控制。
(2)OLED 顯示屏:將傳感器采集的溫濕度信息以及DS1302 模塊的時(shí)間、日期信息進(jìn)行實(shí)時(shí)的可視化顯示。
(3)LED 室內(nèi)燈:模擬室內(nèi)燈光的亮滅,可以對STM32 主控芯片識別的語音和手機(jī)APP 的控制命令進(jìn)行亮滅響應(yīng)。
(4) LED 報(bào)警燈:正常情況下,燈是熄滅的,當(dāng)溫度超過設(shè)定的閾值時(shí),燈會點(diǎn)亮,起報(bào)警作用。
(5)繼電器模塊:模擬室內(nèi)降溫裝置,如風(fēng)扇或空調(diào)的開關(guān),可以對STM32 主控芯片識別的語音和手機(jī)APP 的控制命令進(jìn)行啟停響應(yīng)。
試驗(yàn)于2014年3月~10月在甘肅省天??h哈溪鎮(zhèn)友愛科技示范園區(qū)進(jìn)行。該試驗(yàn)地位于祁連山東段北麓綠洲區(qū),海拔1450m,土壤為山地栗鈣土,屬冷溫帶干旱區(qū)。年均氣溫7.7℃,≥10℃的積溫3300℃,年均日照2945.3h,極端最高氣溫40.0℃,最低氣溫-29.5℃,無霜期180d,年均降水量358.4mm。
DS1302 時(shí)鐘模塊是一種串行接口的實(shí)時(shí)時(shí)鐘,這個芯片的內(nèi)部具有可編程的日歷時(shí)鐘和31 個字節(jié)的靜態(tài)RAM[2]。DS1302 時(shí)鐘模塊硬件接線圖如圖2 所示。
圖2 DS1302 時(shí)鐘模塊硬件接線圖
其中,DS1302 的RST 引腳連接在單片機(jī)的PA6 引腳,用于DS1302 使能芯片,在讀寫數(shù)據(jù)期間,必須為高電平;I/O 引腳連接單片機(jī)的PA5 引腳,三線接口時(shí)的雙向數(shù)據(jù)線;SCLK 時(shí)鐘引腳連接單片機(jī)的PA4 引腳,其作用是控制數(shù)據(jù)的輸入、輸出,當(dāng)系統(tǒng)使能時(shí)鐘模塊之后,SCLK 給上升沿,將數(shù)據(jù)寫入單片機(jī),隨后SCLK 給下降沿,將數(shù)據(jù)讀出。
ESP8266 是一款面向物聯(lián)網(wǎng)的高性價(jià)比、高度集成的Wi-Fi 模塊,是目前物聯(lián)網(wǎng)通信中應(yīng)用非常廣泛的模塊。它最大的功能是可以打開Wi-Fi 和連接Wi-Fi,可以將設(shè)備和互聯(lián)網(wǎng)連接到云平臺[3],進(jìn)而對連接設(shè)備實(shí)現(xiàn)無線控制。ESP8266 硬件接線圖如圖3 所示。
圖3 ESP8266 硬件接線圖
其中,ESP8266 的1 號引腳RX 接單片機(jī)的串口2 的TX引腳,ESP8266的8號引腳TX接單片機(jī)串口2的RX引腳,即與STM32 主控芯片數(shù)據(jù)收發(fā)端進(jìn)行交叉連接實(shí)現(xiàn)串口數(shù)據(jù)的發(fā)送和接收。
舵機(jī)是一種常見的“伺服機(jī)構(gòu)”,根據(jù)控制信號執(zhí)行做出響應(yīng),沒有收到控制信號時(shí),轉(zhuǎn)子靜止不動;接收到控制信號時(shí),轉(zhuǎn)子立即轉(zhuǎn)動。SG90 舵機(jī)具有快速響應(yīng)、高精度、可靠性高等優(yōu)點(diǎn),可以滿足各種精密控制的需求。SG90 舵機(jī)硬件接線圖如圖4 所示。
圖4 SG90 舵機(jī)硬件接線圖
其中,SG90 舵機(jī)的1 號引腳為VCC 電源引腳;2 號引腳為接地引腳;3 號引腳為PWM 控制信號輸入端。
0.96 寸OLED 顯示屏具有高亮度、低功耗和可視效果好等特點(diǎn)。它具有多個控制指令,可以控制OLED 的亮度、對比度、開關(guān)升壓電路等。此外,因?yàn)樗僮鞣奖?,功能豐富,在工業(yè)控制領(lǐng)域得到廣泛應(yīng)用。OLED 顯示模塊硬件接線圖如圖5 所示。
圖5 OLED 顯示模塊硬件接線圖
其中,OLED 顯示屏的1 號引腳為接地引腳;2 號引腳為電源引腳;其他兩個引腳分別為SCL 和SDA,分別與STM32 主控芯片的PB6 和PB7 連接,用普通的GPIO 口的拉高和拉低動作來模擬I2C 的硬件時(shí)序來實(shí)現(xiàn)傳輸數(shù)據(jù)。
LD3320 是有ICRoute 公司設(shè)計(jì)生產(chǎn)的語音識別芯片。該芯片集成了語音識別處理器和AD、DA 轉(zhuǎn)換器、麥克風(fēng)接口、聲音輸出接口等。所以在設(shè)計(jì)電路的時(shí)候基本不需要太多的芯片就可以實(shí)現(xiàn)語言識別功能[4]。語音識別處理器會從數(shù)字信號中提取語音特征,與預(yù)先訓(xùn)練好的語音模型進(jìn)行匹配,語音模型是一種統(tǒng)計(jì)模型,它記錄了各種語音指令的語音特征,能夠識別出用戶所說的語音指令這些特征包括聲音的基頻、頻率、能量等信息[10],語音識別模塊硬件接線圖如圖6 所示。
圖6 語音識別模塊硬件接線圖
其中,LD3320 語音識別模塊的RX 引腳接STM32 主控芯片的PA9 引腳,TX 引腳接STM32 主控芯片的PA10 引腳,當(dāng)用戶對麥克風(fēng)說出關(guān)鍵詞之后,LD3320 將接收到的語音控制信號完成轉(zhuǎn)換并發(fā)送STM32 主控芯片,STM32 主控芯片再將控制信號進(jìn)行處理,并控制對應(yīng)模塊進(jìn)行工作。
DHT11溫濕度模塊電路是一種常用的溫濕度測量模塊,它采用數(shù)字信號輸出方式,能夠快速、準(zhǔn)確地測量當(dāng)前環(huán)境的溫度和濕度[5]。DHT11 溫濕度模塊的接口電路包括三個引腳,分別是VCC、GND 和DATA。其中,VCC 和GND 為模塊的電源接口,DATA 為數(shù)字信號輸出接口。DHT11 模塊硬件接線圖如圖7 所示。
圖7 DHT11 模塊硬件接線圖
其中,DHT11 模塊的DATA 引腳連接到STM32 主控芯片的PA8 引腳上。當(dāng)DHT11 采集到溫濕度的數(shù)據(jù)之后,通過DATA 引腳傳輸?shù)絊TM32 主控芯片,通過STM32 主控芯片處理之后,發(fā)送到OLED 顯示屏顯示出來。
環(huán)境中溫度數(shù)據(jù)信息采集工作由DHT11 傳感器模塊來完成。當(dāng)系統(tǒng)上電后,首先,DHT11 傳感器模塊完成初始化;然后,DHT11 開始不斷采集環(huán)境中的溫度信息,并將采集到的溫度信息不停地發(fā)送給STM32 主控制器進(jìn)行處理,并將處理后溫度值在OLED 顯示屏上進(jìn)行顯示;同時(shí),STM32 主控制器判斷當(dāng)前采集的溫度值是否在設(shè)定的閾值范圍,如果溫度高于設(shè)定的閾值上限,繼電器模擬空調(diào)或風(fēng)扇的打開進(jìn)行降溫,LED 同時(shí)點(diǎn)亮報(bào)警。其程序控制流程圖如圖8 所示。
圖8 溫度程序控制流程圖
當(dāng)系統(tǒng)上電后,語音識別模塊完成初始化,并不斷檢測是否有語音信號輸入。如果沒有收到來自用戶的語音輸入信號,則返回并重新進(jìn)行檢測,如果收到來自用戶的語音輸入信號,語音識別器就會將語音轉(zhuǎn)換為文本指令,然后判斷轉(zhuǎn)換的文本指令是否有效,如果無效,則返回并重新進(jìn)行檢測,如果有效,STM32 主控芯片就會處理指令,最終實(shí)現(xiàn)控制繼電器的開閉和舵機(jī)的轉(zhuǎn)停。其程序控制流程圖如圖9 所示。
圖9 語音識別程序控制流程圖
語音識別智能家居系統(tǒng)實(shí)物圖和手機(jī)APP 界面如圖10所示。時(shí)鐘模塊用于獲取日期時(shí)間,紅色LED 燈用于溫度超過閾值時(shí)亮起用于報(bào)警,白色LED 燈模擬家里的燈光,舵機(jī)用于模擬窗簾的拉動,繼電器模擬家里的風(fēng)扇或空調(diào)開關(guān)用于降溫,按鍵用于設(shè)置日期時(shí)間和溫度閾值。
圖10 硬件實(shí)物圖
可以通過語音控制窗簾、風(fēng)扇、燈的開關(guān),語音模式功能測試如圖11 所示。
圖11 語音模式功能測試
在使用WiFi 聯(lián)網(wǎng)后可以顯示DHT11 采集的溫濕度信息,并控制窗簾、風(fēng)扇、燈的開關(guān),手機(jī)APP 模式功能測試如圖12 所示。
圖12 手機(jī)APP 模式功能測試
該系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)了預(yù)期功能,以更加便捷的方式實(shí)現(xiàn)了對家庭或辦公場所各種設(shè)備的靈活控制。同時(shí),也解決了行動困難人群操作傳統(tǒng)機(jī)械式開關(guān)的不便,體現(xiàn)一定的便捷性和人性化。該系統(tǒng)具有開發(fā)周期短、成本低、應(yīng)用廣、穩(wěn)定性好等特點(diǎn),受到人們的青睞。
但是,由于該智能家居系統(tǒng)接入的控制設(shè)備有限,所以功能相對簡單,也使得應(yīng)用環(huán)境具有一定的局限性。為了實(shí)現(xiàn)功能的多樣性和應(yīng)用環(huán)境的復(fù)雜性,在后期的學(xué)習(xí)和工作中,還需要不斷地完善和豐富。