魏桐 韓劍輝 蔣蔣薇
摘 要:文章設(shè)計了以STM32為微處理器的智能家居互動機(jī)器人,該設(shè)計以語音識別技術(shù)、語音合成技術(shù)、傳感器技術(shù)、無線數(shù)據(jù)傳輸技術(shù)等為基礎(chǔ),完成了攝像頭數(shù)據(jù)采集,數(shù)據(jù)傳輸,控制臺與各控制終端通信,電機(jī)控制,實現(xiàn)了語音人機(jī)交互、機(jī)器人動作控制、室內(nèi)環(huán)境監(jiān)測、家用電器控制。完成了智能家居以及機(jī)器人互動等功能,并且在現(xiàn)階段,智能家居機(jī)器人在市面上較少,有廣泛的應(yīng)用前景。
關(guān)鍵詞:智能家居;機(jī)器人;STM32
引言
隨著計算機(jī)科學(xué)技術(shù)與電子技術(shù)的高速發(fā)展以及生活水平的提高,智能家居漸漸走進(jìn)千家萬戶,智能燈,掃地機(jī)器人,智能電視等等以家居環(huán)境為平臺,融合了通信,網(wǎng)絡(luò),計算機(jī),自動控制等技術(shù)的產(chǎn)品層出不窮,在影視作品《超能陸戰(zhàn)隊》中,大白的形象讓無數(shù)人魂牽夢縈,其實它的本質(zhì)就是一個智能的機(jī)器人。本設(shè)計以ARM Cortex-M3架構(gòu)的STM32系列芯片為控制核心,以語音識別、合成技術(shù),2.4Ghz通信技術(shù),自動控制技術(shù)為基礎(chǔ),用藍(lán)牙、NRF24L01等將各部分串聯(lián)在一起,形成以機(jī)器人為中心的智能家居控制網(wǎng)絡(luò),用戶可以與機(jī)器人進(jìn)行對話或者發(fā)出指令,機(jī)器人會對發(fā)出的指令進(jìn)行解析,并產(chǎn)生反饋,例如:控制家用電器,播放音樂等,除此之外,用戶可以遠(yuǎn)程觀看本地實時上傳的室內(nèi)圖片,可以查看室內(nèi)的環(huán)境狀況,例如溫濕度,空氣情況等,可以控制機(jī)器人在室內(nèi)行走,當(dāng)用戶不在室內(nèi)時,如果有陌生人進(jìn)入室內(nèi),機(jī)器人會進(jìn)行警報,通知用戶。
1 硬件組成
1.1 機(jī)器人主體
建立智能家居機(jī)器人系統(tǒng)關(guān)鍵是要穩(wěn)定可靠,帶負(fù)載能力很注意,電源部分、驅(qū)動部分是關(guān)鍵,采用航模電池鋰電30C 5200MA 11.1v和10A雙路大功率H橋電機(jī)驅(qū)動模塊,具有強勁剎車功能。為了保證機(jī)器人的穩(wěn)定性,底盤采用小型坦克連履帶模型,該模型結(jié)構(gòu)穩(wěn)定,載重能力強,可以穩(wěn)定住底盤上的其他傳感器以及模塊。
1.2 機(jī)器人核心
機(jī)器人主要微處理器采用ARM Cortex-M3架構(gòu)的STM32F103ZET6處理器,該處理器基于32位的精簡指令集內(nèi)核,最高主頻可達(dá)72Mhz,內(nèi)置512KB Flash和64KB SRAM,處理器外部引出16*8組IO口,其中包含3組SPI接口,2組IIC接口,5組串口,3個1Mhz 12位ADC,多組定時器,資源豐富極為豐富。該處理器搭載在一塊德飛萊核心板上,核心板引出了所有的IO口,并擴(kuò)展出JTAG接口。
在核心底板之上,是我們制作的一塊傳感器擴(kuò)展板,該擴(kuò)展板將啟動選項由原來底板上的跳線改為撥碼開關(guān)式,另外,擴(kuò)展板上除了引出所有的原核心板所有引腳外,還將本系統(tǒng)需要使用的傳感器接口一并引出,其中有:兩路SPI總線接口,兩路IIC總線接口,兩路USART接口,還擴(kuò)展出一路攝像頭SCCB接口以及并行總線接口,該擴(kuò)展板支持外部供電,由兩片AMS1117提供傳感器需要的電源,防止由于傳感器過多導(dǎo)致的系統(tǒng)供電不足。
除了機(jī)器人主體上搭載的微處理器外,為了配合智能家居的其他實現(xiàn),本系統(tǒng)還搭載了STC公司生產(chǎn)的增強型8051 1T單片機(jī):IAP15F2K61S2,速度比普通8051單片機(jī)快8-12倍,內(nèi)置61KB Flash,2KSRAM,3路PWM,1組SPI接口,2組可重定向UART,內(nèi)置高速晶振和仿真器,可以直接進(jìn)行仿真。
1.3 語音模塊XFS5152CE
是一款高集成度的語音合成芯片,可實現(xiàn)中文、英文語音合成;并集成了語音編碼、解碼功能,可支持用戶進(jìn)行錄音和播放。
YS-V0.7是一款以LD3320芯片為基礎(chǔ)的語音識別模塊,模塊上除了一塊LD3320以外,還搭載了片STC11L08XE單片機(jī),與LD3320配合實現(xiàn)語音識別,可以減少主處理器的資源損耗。
1.4 攝像頭OV2640
OV2640具有體積小、工作電壓低、兼容I2C總線接口等特點。通過SCCB總線控制,支持RAWRGB、RGB(RGB4:2:2、RGB565/555/444)、YUV(4:2:2)和YCBCR(4:2:2)輸出格式,可以輸出整幀、二次轉(zhuǎn)換分辨率、取特定區(qū)域等方式的各種分辨的8位或10位的圖像幀數(shù)據(jù),支持以jpeg格式輸出。
2 智能家居機(jī)器人的設(shè)計與實現(xiàn)
該智能家居系統(tǒng)由機(jī)器人主體、輔助控制終端、遠(yuǎn)程控制臺組成。以機(jī)器人本體微處理器為核心,以語音識別、無線通信、以及傳感器為基礎(chǔ)架構(gòu)了一個簡單的室內(nèi)智能家居網(wǎng)絡(luò),機(jī)器人本體設(shè)計成可活動的穩(wěn)定性極高的履帶式小車,機(jī)體上配有溫濕度等傳感器,配有攝像頭,人體紅外感應(yīng)模塊,配有語音識別與語音合成模塊,通過NRF24L01與放置在固定位置的輔助終端通信,完成室內(nèi)家用電器的控制,例如開關(guān)燈,空調(diào),電視的切換頻道,音量控制等,通過WIFI模塊連接到遠(yuǎn)程服務(wù)器,上傳室內(nèi)數(shù)據(jù),實時圖片,實現(xiàn)遠(yuǎn)程監(jiān)控與控制。
3 軟件設(shè)計
該設(shè)計以STM32為核心,軟件編譯環(huán)境為Keil4,使用C語言編寫程序,軟件部分可以分為以下幾個底層初始化程序、系統(tǒng)主程序、攝像模塊子程序、傳感器子程序、語音子程序組成;數(shù)據(jù)采集上傳定時中斷處理伺服中斷開啟開機(jī)循環(huán)各功能模塊初始化開始系統(tǒng)時鐘、中斷分組、I/O口初始化操作。
3.1 微處理器初始化
微處理器是整個系統(tǒng)的心臟,所以它的初始化極為重要:
(1)初始化中斷分組,初始化時鐘NVIC_Configuration();,SystemInit();。
(2)一個嵌入式系統(tǒng)離不了延時,所以初始化時鐘之后,需要初始化系統(tǒng)滴答時鐘,然后初化延時函數(shù):delay_init(72);。
(3)初始化各接口:SPI,USART,IIC。
(4)初始化定時器,中斷。初始化各傳感器、模塊。
(5)進(jìn)入死循環(huán)等待模塊響應(yīng)。
3.2 攝像頭程序設(shè)計,采用JPEG方式輸出
(1)初始化。初始化IIC接口,然后按順序配置OV2640寄存器,首先是配置分辨率,然后配置成YUV輸出,最后配置為JPEG輸出。然后初始化中斷。
(2)中斷數(shù)據(jù)采集。首先在EXTI2里等待場同步信號VSYNC上升沿中斷,當(dāng)中斷來臨時,開始通過數(shù)據(jù)線采集數(shù)據(jù),同時開啟EXTI3中斷,等待PCLK上升沿來臨,當(dāng)上升沿來臨時,關(guān)閉EXTI中斷,判斷HREF是否為高,如果為高,則開始上傳圖片數(shù)據(jù)。
3.3 語音模塊編程
(1)初始化系統(tǒng)配置。由于語音模塊上搭載了一片單片機(jī),所以初始化主要完成復(fù)位,時鐘初始化,模式選擇,F(xiàn)IFO等。
(2)初始化語音識別列表。該識別芯片支持50條自定義識別條目,每個條目由漢語拼音以及對應(yīng)的編號組成,編號取值范圍為00H~FFH。
(3)識別。按手冊設(shè)置相關(guān)寄存器,芯片ADC輸入為咪頭輸入,輸入增益可調(diào),取值范圍為00H-70H,設(shè)定值過大會導(dǎo)致識別不準(zhǔn)確,設(shè)定值太小會導(dǎo)致系統(tǒng)無法識別。
(4)中斷。咪頭采集到區(qū)別于環(huán)境噪音的人聲時,會產(chǎn)生中斷,中斷程序會根據(jù)模塊中BA和C5寄存器的值找出,最佳的識別條目。
(5)處理。單片機(jī)根據(jù)處理出的數(shù)據(jù)來判斷,是否通知主處理器,還是合成語音。
4 結(jié)束語
文章設(shè)計的機(jī)器人采用ARM STM32微處理器作為控制核心,履帶式小車作為機(jī)器人載體,該系統(tǒng)運用無線技術(shù)、網(wǎng)絡(luò)、攝像頭以及傳感器,實現(xiàn)了室內(nèi)環(huán)境監(jiān)測,利用語音識別與合成技術(shù),完成了人機(jī)交互功能,實現(xiàn)了機(jī)器人的簡單基本功能和智能家居的功能。因此, 該系統(tǒng)設(shè)計在實際應(yīng)用中具有一定的借鑒意義。