基于STM32F407ZGT6的智能鏡子設(shè)計_第1頁
基于STM32F407ZGT6的智能鏡子設(shè)計_第2頁
基于STM32F407ZGT6的智能鏡子設(shè)計_第3頁
基于STM32F407ZGT6的智能鏡子設(shè)計_第4頁
基于STM32F407ZGT6的智能鏡子設(shè)計_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于STM32F407ZGT6的智能鏡子設(shè)計以STM32F407ZGT6為主控制器,利用原子鏡的半透效果,設(shè)計了一種可實現(xiàn)查看天氣、穿衣建議、語音識別、語音播報、音樂播放、鬧鐘提醒、火災(zāi)報警、室內(nèi)溫濕度檢測以及自動調(diào)光等功能的智能鏡子。鏡子移植了UCOS-II嵌入式操作系統(tǒng),同時設(shè)置了看門狗,能夠保證系統(tǒng)的正常運行;鏡子的顯示部分則是由一塊60cm×45cm的原子鏡和兩塊7寸LCD顯示屏組成。標簽:智能鏡子;STM32F407ZGT6;UCOS-II;語音識別;語音合成當今社會時代發(fā)展迅速,而快節(jié)奏的生活讓大多數(shù)人都無法享受屬于自己的信息世界。為此設(shè)計了一種可以在洗漱過程中獲取當天信息的智能鏡子,通過鏡子我們可以查看當天的天氣情況以及對應(yīng)的穿衣建議,除此之外,該鏡子還具有語音識別、語音播報、音樂播放、鬧鐘提醒、自動調(diào)光等功能。同時利用鏡子獲取信息也為人們提供了一種全新而又便捷獲取信息的方法。1系統(tǒng)結(jié)構(gòu)及相關(guān)功能圖1為系統(tǒng)的總體框圖,系統(tǒng)的主控制器為STM32F407ZGT6,系統(tǒng)的顯示部分由兩塊7寸LCD顯示屏組成。利用人體紅外感應(yīng)模塊可以判斷鏡子前是否有人,從而控制顯示器的亮滅;利用溫濕度模塊可以獲取室內(nèi)溫濕度;把光照強度傳感器采集到的數(shù)據(jù)通過轉(zhuǎn)換公式可以用來控制LED燈組的亮暗;而煙霧傳感器用于實現(xiàn)火災(zāi)報警的功能。系統(tǒng)的人機交互部分除了LCD顯示屏外,還有用來實現(xiàn)對系統(tǒng)進行相關(guān)操作的電容按鍵模塊,用來進行語音識別和語音播報的語音識別模塊和語音合成模塊。最后的WIFI模塊則是用連接服務(wù)器進行信息交換。2系統(tǒng)硬件設(shè)計2.1STM32F407ZGT6控制器介紹STM32F407ZGT6采用Cortex_M4內(nèi)核,具有192KBSRAM、1024KBFLASH、3個12位ADC、2個12位DAC、1個RTC(帶日歷功能)、以及112個通用IO口等。通過查閱資料,該控制器能夠很好的完成系統(tǒng)的各項功能。2.2ASRM08-A語音識別模塊ASRM08-A支持5~á8V的外置電壓供電,模塊通過串口與主控制器相連,同時模塊自帶功放電路輸入,可直接連接8歐姆0.5瓦(8?贅0.5W)的揚聲器。該模塊具有兩種檢測模式,即普通檢測模式和口令檢測模式??诹顧z測模式需要先驗證對應(yīng)口令,才能進行語音識別,因此每響應(yīng)一個動作需要講兩個關(guān)鍵詞,這兩個模式的切換主要是通過一句指令來完成,所以我們通過軟件可以實現(xiàn)只需要第一次驗證口令,之后就進入普通檢測模式。2.3SYN6658語音合成模塊SYN6658中文語音合成芯片是北京宇音天下科技有限公司于2012年最新推出的一款性/價比更高,效果更自然的一款高端語音合成芯片。SYN6658通過UART接口或SPI接口通訊方式,接收待合成的文本數(shù)據(jù),實現(xiàn)文本到語音(或TTS語音)的轉(zhuǎn)換。2.4其他模塊介紹除了以上幾個主要模塊之外,整個系統(tǒng)還由以下幾個模塊協(xié)同工作,從而實現(xiàn)相關(guān)功能:(1)ATK-ESP8266WIFI模塊:該模塊是一款高性能的UART-WiFi(串口-無線)模塊,模塊支持STA/AP/STA+AP三種工作模式。(2)ATK-7’LCD顯示屏:該模塊屏幕分辨率為800*480,16位真彩顯示,模塊自帶LCD控制器,擁有多達8MB的顯存,能提供8頁的顯存,并支持任意點顏色讀取。(3)HC-SR501人體紅外感應(yīng)模塊:具有不可重復(fù)和可重復(fù)兩種觸發(fā)方式。(4)MQ-2煙霧氣體傳感器模塊:通過采集其輸出模擬信號可以檢測是否發(fā)生火災(zāi)。(5)光敏電阻傳感器模塊:采用靈敏型光敏電阻傳感器,具有DO數(shù)字開關(guān)量輸出(0和1)和AO模擬電壓輸出兩種輸出模式。(6)DHT-11溫濕度模塊:該模塊采用單總線通信模式,溫度檢測范圍為0℃-50℃,濕度檢測范圍為20%-95%(0℃-50℃環(huán)境下)。(7)電容按鍵模塊:該模塊是一個基于觸摸檢測IC(TTP223B)的電容式點動型觸摸開關(guān)模塊。(8)LED燈組:利用PWM來調(diào)節(jié)LED燈的明暗情況。3系統(tǒng)軟件設(shè)計3.1UCOS-II操作系統(tǒng)移植UCOS-II是一個可以基于ROM運行的、可裁減的、搶占式、實時多任務(wù)內(nèi)核,它的性能能和很多商業(yè)操作系統(tǒng)相媲美,它具有高度可移植性,特別適合于微處理器和控制器,為了提供最好的移植性能,UCOSII最大程度上使用ANSIC語言進行開發(fā),并且已經(jīng)移植到近40多種處理器體系上,涵蓋了從8位到64位各種CPU(包括DSP)。從圖2可以看出,UCOSII的移植,我們只需要修改:os_cpu.h、os_cpu_a.asm和os_cpu.c等三個文件即可,其中:os_cpu.h,進行數(shù)據(jù)類型的定義,以及處理器相關(guān)代碼和幾個函數(shù)原型;os_cpu_a.asm,是移植過程中需要匯編完成的一些函數(shù),主要就是任務(wù)切換函數(shù);os_cpu.c,定義一些用戶HOOK函數(shù)。3.2相關(guān)初始化函數(shù)主控制器與各個模塊進行通信,需要對各個IO口進行配置,通過調(diào)用對應(yīng)初始化函數(shù)可以對通信IO口進行配置。以下是主函數(shù)相關(guān)設(shè)置:NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置中斷優(yōu)先級delay_init(168);//初始化延時函數(shù)uart_init(9600); //初始化串口1波特率為9600usart3_init(9600);//初始化串口3波特率為9600LED_Init();//LED燈組初始化LCD_Init();//LCD顯示器初始化Adc_Init();//ADC初始化KEY_Init(); //電容按鍵初始化My_RTC_Init();//初始化RTCTIM3_Int_Init(100-1,8400-1);//10Khz計數(shù)頻率,計數(shù)100次為10msRTC_Set_WakeUp(RTC_WakeUpClock_CK_SPRE_16bits,());//配置中斷1m一次my_mem_init(SRAMIN);//初始化內(nèi)部內(nèi)存池my_mem_init(SRAMCCM); //初始化CCM內(nèi)存池exfuns_init();//為fatfs相關(guān)變量申請內(nèi)存f_mount(fs[0],”0:”,1);//掛載SD卡f_mount(fs[1],”1:”,1);//掛載FLASHwhile(font_init()){}ucos_load_main_ui();//加載主界面OSInit();//初始化UCOSIIOSTaskCreate(start_task,(void*)0,(OS_STK*)&START_TASK_STK[START_STK_SIZE-1],START_TASK_PRIO);//創(chuàng)建起始任務(wù)OSStart();//系統(tǒng)開始運行在起始任務(wù)中,我們創(chuàng)建了以下幾個任務(wù):OS_CPU_SRcpu_sr=0;OSStatInit(); //初始化統(tǒng)計任務(wù),會延時1m左右OS_ENTER_CRITICAL();//進入臨界區(qū)(無法被中斷打斷)OSTaskCreate(main_task,(void*)0,(OS_STK*)&MAIN_TASK_STK[MAIN_STK_SIZE-1],MAIN_TASK_PRIO); //創(chuàng)建主任務(wù)OSTaskCreate(wifi_task,(void*)0,(OS_STK*)&WIFI_TASK_STK[WIFI_TASK_SIZE-1],WIFI_TASK_PRIO); //創(chuàng)建WIFI任務(wù)OSTaskCreate(light_task,(void*)0,(OS_STK*)&LIGHT_TASK_STK[LIGHT_TASK_SIZE-1],LIGHT_TASK_PRIO);//創(chuàng)建燈光調(diào)控任務(wù)OSTaskCreate(iwdog_task,(void*)0,(OS_STK*)&IWDOG_TASK_STK[IWDOG_STK_SIZE-1],IWDOG_TASK_PRIO);//創(chuàng)建看門狗任務(wù)OSTaskCreate(screen_task,(void*)0,(OS_STK*)&SCREEN_TASK_STK[SCREEN_STK_SIZE-1],SCREEN_TASK_PRIO);//創(chuàng)建屏幕亮滅任務(wù)OS_EXIT_CRITICAL();//退出臨界區(qū)(可以被中斷打斷)在主任務(wù)中創(chuàng)建了tmr1(1秒觸發(fā)一次)、tmr2(一秒觸發(fā)一次)、tmr3(一小時觸發(fā)一次)三個定時器,分別用來顯示時間、采集傳感器數(shù)據(jù)、獲取天氣信息。4實物功能及測試結(jié)果4.1實物功能介紹圖3一共有三張圖片,第一張圖片是無人在鏡子面前的拍攝圖,第二張是有人在鏡子面前,同時光線較暗,系統(tǒng)自動調(diào)節(jié)LED燈組亮度的拍攝圖,最后一張是界面效果圖。從最后一張圖片可以看出該作品具有時間顯示、室內(nèi)室外溫濕度顯示、天氣狀況以及穿衣指數(shù)顯示,界面右上角的圖標分別表示備忘、鬧鐘、聯(lián)網(wǎng)狀態(tài);除了LCD顯示的功能外,系統(tǒng)還具有自動調(diào)光功能,它會根據(jù)室內(nèi)光線強弱調(diào)節(jié)LED燈組亮度;語音識別功能,能夠識別一些簡單的語音口令,例如現(xiàn)在時間、現(xiàn)在天氣情況、播放音樂、打開菜單、設(shè)置鬧鐘、關(guān)閉自動調(diào)光等50條相關(guān)語音指令;語音播報功能,例如準點報時,播報天氣情況等;人體紅外感應(yīng)功能,當鏡子檢測到鏡子面前一段時間內(nèi)無人時,會關(guān)閉LCD顯示屏,該時間可以設(shè)置;音樂播放功能,可以播放用戶存儲在SD卡中的音樂,播放音樂時,不具備語音識別功能,此時只能通過電容按鍵進行操作。4.2實物測試結(jié)果在測試中,我們利用筆記本電腦搭建服務(wù)器,開啟對應(yīng)熱點,系統(tǒng)通過熱點連接該測試服務(wù)器,通過服務(wù)器上的Python腳本可以獲取到對應(yīng)的天氣信息;經(jīng)過各項測試,該作品也能夠完美的實現(xiàn)上述各項功能。同時為了保證系統(tǒng)的穩(wěn)定性,我們在室內(nèi)溫度為20攝氏度左右的環(huán)境下進行了24h的“拷機”測試,測試結(jié)果表明,整套系統(tǒng)能夠長時間的穩(wěn)定運行。5結(jié)束語通過查閱各項資料,此作品還是具有很大的應(yīng)用以及開發(fā)前景,因此可以進行下一步的改進。首先是系統(tǒng)的主控制器可以進行升級,我們可以選用更高級的基于ARM的微型電腦主板,搭載Linux系統(tǒng);接下來鏡子的顯示器可以改為大屏液晶顯示器,同時配以紅外觸屏;最后則是語音識別以及語音播報功能可以調(diào)用訊飛或者百度的語音識別以及語音合成接口,從而能夠讓智能鏡子更智能。參考文獻[1]曹振民,陳年生,馬強,等.基于ESP8266的無線控制電路設(shè)計[J].工業(yè)控制計算機,2017(1):68-69.[2]莫琦,趙俊峰,黃耿洪.基于嵌入式的多功能家庭管理助手[J].數(shù)字技術(shù)與應(yīng)用,2015(12):66+68.[3]鄧中祚.智能家居控制系統(tǒng)設(shè)計與實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2015.[4]王怡,鄂旭.基于物聯(lián)網(wǎng)無線傳感的智能家居研究[J].計算機技術(shù)與發(fā)展,2015(2):234-237.[5]肖宛昂,蘇高民,陸廷,等.一種由WiFi智能插座構(gòu)成的智能家居[J].單片機與嵌入式系統(tǒng)應(yīng)用,2014(5):46-48.[6]楊威,高文華.基于Android的智能家居終端設(shè)計與研究[J].計算機技術(shù)與發(fā)展,2013(07):245-248.[7]申斌,張桂青,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論