謝 新 肖玥 許 婷 施凱悅
(南昌航空大學(xué),江西 南昌330000)
近年來(lái),由于人口老齡化的社會(huì)問(wèn)題日益嚴(yán)重,獨(dú)居老人的生活質(zhì)量和安全問(wèn)題頻頻受到社會(huì)的廣泛關(guān)注,如何能讓行動(dòng)不便的老人甚至殘疾人通過(guò)科技來(lái)提高生活質(zhì)量,解決安全問(wèn)題呢?針對(duì)這個(gè)社會(huì)問(wèn)題,本文研究了一種以手勢(shì)控制為核心,輔以語(yǔ)音控制來(lái)操控家用電器的多模智能家居系統(tǒng)。該系統(tǒng)著眼于日常生活中的普通電器,致力于通過(guò)采集自然簡(jiǎn)單的手勢(shì)來(lái)實(shí)現(xiàn)對(duì)家居的控制調(diào)節(jié),同時(shí)系統(tǒng)設(shè)計(jì)了自動(dòng)控制模塊,通過(guò)溫度傳感器和一氧化碳傳感器采集周圍環(huán)境參數(shù)來(lái)實(shí)現(xiàn)報(bào)警和自我調(diào)節(jié),從而給老人們提供了更加舒適安全、更為人性化的生活方式。
本設(shè)計(jì)是基于STM32 多模智能家居控制系統(tǒng),包括STM32 單片機(jī),手勢(shì)識(shí)別模塊,語(yǔ)音識(shí)別模塊,自動(dòng)控制模塊,藍(lán)牙模塊及DGUS顯示屏。
1.1 以MPU6050 為核心的手勢(shì)識(shí)別模塊,將采集手勢(shì)原始數(shù)據(jù),并通過(guò)其自帶的數(shù)字運(yùn)動(dòng)處理器實(shí)現(xiàn)姿態(tài)解算。
1.2 藍(lán)牙模塊將手勢(shì)識(shí)別模塊采集的手勢(shì)數(shù)據(jù)傳送至STM32單片機(jī),實(shí)現(xiàn)手勢(shì)識(shí)別模塊與STM32 單片機(jī)之間的無(wú)線通信。
1.3 以LD3320 為核心的語(yǔ)音識(shí)別模塊采集環(huán)境人聲,并通過(guò)并行方式將語(yǔ)音數(shù)據(jù)傳送至STM32 單片機(jī)。
1.4 自動(dòng)控制模塊是由溫度傳感器(DS18B20)和一氧化碳傳感器(MQ-7)組成。
1.5 DGUS 屏實(shí)時(shí)顯示各項(xiàng)環(huán)境參數(shù)和各個(gè)家居設(shè)備狀態(tài)。
1.6 STM32 單片機(jī)將處理手勢(shì)數(shù)據(jù)、語(yǔ)音數(shù)據(jù)以及環(huán)境數(shù)據(jù),實(shí)現(xiàn)多??刂啤1鞠到y(tǒng)框圖如下:
圖1 系統(tǒng)結(jié)構(gòu)框圖
本設(shè)計(jì)中,手勢(shì)識(shí)別模塊的核心是MPU6050。MPU6050 是一款整合了3 軸陀螺儀和3 軸加速度的六軸傳感器。通過(guò)其自帶的數(shù)字運(yùn)動(dòng)處理器將原始手勢(shì)數(shù)據(jù)進(jìn)行姿態(tài)解算得到四元數(shù)后,STM32單片機(jī)將四元數(shù)轉(zhuǎn)換成歐拉角數(shù)據(jù),即俯仰角、橫滾角及航向角數(shù)據(jù)。其中,手勢(shì)識(shí)別模塊與STM32 單片機(jī)之間采用的是串口RS232通信協(xié)議。
為了實(shí)現(xiàn)手勢(shì)識(shí)別模塊與STM32 單片機(jī)之間的無(wú)線傳輸,本設(shè)計(jì)采用了HC-05 藍(lán)牙模塊。
圖2 藍(lán)牙工作原理圖
本設(shè)計(jì)中,語(yǔ)音識(shí)別模塊的核心是LD3320 芯片。LD3320 是一款“語(yǔ)音識(shí)別”專用芯片, 由ICRoute 公司設(shè)計(jì)生產(chǎn)。該芯片集成了語(yǔ)音識(shí)別處理器和一些外圍電路, 包括A/D, D/A轉(zhuǎn)換器、麥克風(fēng)接口、聲音輸出接口等[1]。主要流程是:語(yǔ)音信號(hào)通過(guò)麥克風(fēng)輸入,LD3320 芯片進(jìn)行語(yǔ)音識(shí)別,如果為設(shè)定語(yǔ)音,則匹配成功,STM32單片機(jī)控制相應(yīng)的家居設(shè)備。比如,用戶在室內(nèi)說(shuō):“開(kāi)風(fēng)扇1”,則室內(nèi)的風(fēng)扇1 開(kāi)啟。
自動(dòng)控制模塊由溫度傳感器(DS18B20)和一氧化碳傳感器(MQ-7)組成。報(bào)警模塊的核心是蜂鳴器。如圖4 所示,第一部分是DS18B20 溫度傳感器電路圖,其DQ 端口與STM32 單片機(jī)的I/O口PA0 相連,實(shí)現(xiàn)溫度檢測(cè)[3];中間部分是MQ-7C 傳感器,其B 端口與STM32 單片機(jī)的I/O口PA5 相連,實(shí)現(xiàn)一氧化碳濃度檢測(cè);第三部分是報(bào)警模塊,其信號(hào)線與STM32 單片機(jī)的I/O口PA1 相連,當(dāng)溫度或者一氧化碳濃度超過(guò)設(shè)定值時(shí),實(shí)現(xiàn)報(bào)警。
本設(shè)計(jì)的顯示屏采用的是迪文顯示屏,即DGUS顯示屏。其開(kāi)發(fā)過(guò)程可以利用PC 端DGUS 開(kāi)發(fā)軟件輔助設(shè)計(jì)完成變量配置文件的過(guò)程,以此完成界面設(shè)計(jì)及配置,且DGUS顯示屏與STM32單片機(jī)之間采用的是串口RS232 通信協(xié)議[2]。
圖3 自動(dòng)控制模塊及報(bào)警模塊電路圖
本設(shè)計(jì)的STM32 單片機(jī)模塊選用的是STM32F407ZGT6 為主芯片,具有112 個(gè)通用I/O 口、192 KB SRAM、1024 KB FLASH 及12 個(gè)16 位定時(shí)器等資源。該STM32 單片機(jī)接口豐富,資源配置靈活,滿足本設(shè)計(jì)要求。
本設(shè)計(jì)的系統(tǒng)軟件設(shè)計(jì)思路為:系統(tǒng)開(kāi)啟后,先進(jìn)入緊急模式,自動(dòng)控制模塊將檢測(cè)到的室內(nèi)溫度參數(shù)及一氧化碳濃度參數(shù)傳送給STM32 單片機(jī),STM32 單片機(jī)將判斷這些參數(shù),若其高于設(shè)定值,則連通蜂鳴器報(bào)警并開(kāi)啟排氣裝置;若室內(nèi)溫度和一氧化碳濃度正常,則判為安全模式。在安全模式下,用戶可以進(jìn)行手勢(shì)控制與語(yǔ)音控制。手勢(shì)控制:以MPU6050 為核心的手勢(shì)識(shí)別模塊識(shí)別原始手勢(shì)數(shù)據(jù)后進(jìn)行姿態(tài)解算,將處理后的手勢(shì)數(shù)據(jù)通過(guò)藍(lán)牙模塊傳輸至STM32 單片機(jī)進(jìn)行處理,若與預(yù)設(shè)手勢(shì)匹配則控制相應(yīng)家居設(shè)備;語(yǔ)音控制:以LD3320 為核心的語(yǔ)音識(shí)別模塊采集環(huán)境人聲后傳輸至STM32 單片機(jī)運(yùn)用特征語(yǔ)音匹配算法與預(yù)設(shè)的語(yǔ)音信號(hào)比對(duì),若比對(duì)成功則控制相應(yīng)家居設(shè)備。本設(shè)計(jì)系統(tǒng)流程圖如圖4。
圖4 系統(tǒng)流程圖
本設(shè)計(jì)的家用設(shè)備主要是窗簾和風(fēng)扇設(shè)備。通過(guò)定時(shí)器TIM13 通道1 以及TIM14 通道1 來(lái)分別產(chǎn)生PWM 輸出信號(hào),具體是通過(guò)改變CCRx 比較寄存器的值來(lái)改變PWM 輸出的占空比,以此分別控制窗簾和風(fēng)扇設(shè)備。以自動(dòng)控制風(fēng)扇的開(kāi)啟為例并介紹其具體流程:首先TIM14 及PWM部分初始化,再判斷當(dāng)前環(huán)境參數(shù)是否高于預(yù)設(shè)值,如果高于預(yù)設(shè)值則修改CCRx 比較寄存器的值并改變信號(hào)的占空比,使風(fēng)扇開(kāi)啟。
本設(shè)計(jì)完成了基于STM32 的多模智能家居控制系統(tǒng)。該設(shè)計(jì)主要是通過(guò)手勢(shì)識(shí)別模塊和語(yǔ)音識(shí)別模塊采集手勢(shì)及語(yǔ)音數(shù)據(jù),再傳至STM32 處理器,以此控制相應(yīng)的家用設(shè)備。并且設(shè)計(jì)了自動(dòng)控制模塊,通過(guò)溫度傳感器和一氧化碳傳感器采集周圍環(huán)境參數(shù)來(lái)實(shí)現(xiàn)報(bào)警和自我調(diào)節(jié),而且DGUS 屏?xí)?shí)時(shí)顯示家用設(shè)備狀態(tài)、手勢(shì)數(shù)據(jù)、語(yǔ)音數(shù)據(jù)及周圍環(huán)境參數(shù)。本設(shè)計(jì)相比于其他智能家居系統(tǒng),最特別的一點(diǎn)是無(wú)需聯(lián)網(wǎng),更適用于難以適應(yīng)網(wǎng)絡(luò)的老人們,而且操作簡(jiǎn)單靈活,更為人性化。在人口老齡化日益嚴(yán)重的如今甚至未來(lái),該設(shè)計(jì)都能為獨(dú)居老人創(chuàng)造一個(gè)舒適安全的生活環(huán)境。