公務(wù)員期刊網(wǎng) 論文中心 正文

STM32單片機(jī)下智能風(fēng)扇控制系統(tǒng)設(shè)計(jì)探析

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了STM32單片機(jī)下智能風(fēng)扇控制系統(tǒng)設(shè)計(jì)探析范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。

STM32單片機(jī)下智能風(fēng)扇控制系統(tǒng)設(shè)計(jì)探析

摘要:本文所設(shè)計(jì)的智能風(fēng)扇控制系統(tǒng)以stm32F103ZET6芯片為核心,集溫濕度檢測(cè)、人體感應(yīng)、語(yǔ)音識(shí)別、空氣加濕、手機(jī)交互等功能為一體。本系統(tǒng)具有手動(dòng)控制以及智能控制兩種工作模式,智能控制模式下,通過(guò)溫度測(cè)量模塊的數(shù)據(jù)采集,對(duì)風(fēng)速與人體舒適度的關(guān)系進(jìn)行建模,最終獲得匹配的最佳風(fēng)扇轉(zhuǎn)速數(shù);在人工控制模式中,通過(guò)LCD觸摸屏、手機(jī)APP以及語(yǔ)音來(lái)控制風(fēng)扇轉(zhuǎn)速。經(jīng)反復(fù)實(shí)驗(yàn)可得,該系統(tǒng)有較強(qiáng)的穩(wěn)定性和自適應(yīng)性,相對(duì)其他產(chǎn)品優(yōu)勢(shì)明顯。

關(guān)鍵詞:智能風(fēng)扇控制系統(tǒng);STM32;PWM控制

1系統(tǒng)總體設(shè)計(jì)

本文所設(shè)計(jì)的智能風(fēng)扇控制系統(tǒng)主要由七大模塊構(gòu)成,分別是溫濕度檢測(cè)模塊、人體感應(yīng)模塊、語(yǔ)音識(shí)別模塊、風(fēng)扇驅(qū)動(dòng)模塊、空氣加濕模塊、LCD觸摸屏以及藍(lán)牙模塊。具體實(shí)現(xiàn)的功能有:(1)在LCD液晶屏上實(shí)時(shí)顯示溫濕度、風(fēng)扇工作模式、風(fēng)扇轉(zhuǎn)速、加濕功能是否開(kāi)啟等相關(guān)信息;在藍(lán)牙連接的情況下會(huì)將這些信息發(fā)送給手機(jī),在手機(jī)APP上實(shí)時(shí)更新顯示。(2)可通過(guò)語(yǔ)音、手機(jī)和LCD觸摸屏設(shè)置風(fēng)扇的模式和各部件的運(yùn)作。(3)在手動(dòng)模式下,風(fēng)扇的轉(zhuǎn)速根據(jù)用戶輸入的風(fēng)力等級(jí)指令來(lái)變化,一共有3級(jí)風(fēng)力等級(jí)可以設(shè)置。(4)在智能模式下,用戶可以自行建立風(fēng)扇轉(zhuǎn)速與溫度的函數(shù)關(guān)系,風(fēng)扇轉(zhuǎn)速將依照該函數(shù)隨溫度的變化而變化。(5)風(fēng)扇配備人體感應(yīng)模塊,可實(shí)現(xiàn)人來(lái)風(fēng)來(lái)、人走風(fēng)停的功能。

2硬件模塊設(shè)計(jì)

2.1主控芯片

本次選用的主控芯片是以Cortex-M3為內(nèi)核的STM32F103ZET6單片機(jī),該芯片不僅最高工作頻率可達(dá)72MHz,而且還具有64KBSRAM、512KBFLASH、8個(gè)定時(shí)器、5個(gè)串口、1個(gè)FSMC接口以及112個(gè)通用IO口等,資源相當(dāng)豐富,從性能與功耗兩方面綜合考慮,該控制芯片是一個(gè)極佳的選擇。

2.2溫濕度測(cè)量模塊

DS18B20是一款高精度的數(shù)字溫度傳感器,它具有體積小、適用電壓寬、硬件開(kāi)銷低、抗干擾能力強(qiáng)、接口簡(jiǎn)單等優(yōu)點(diǎn)。DHT11是一款濕溫度一體化的低功耗數(shù)字傳感器,該傳感器包括一個(gè)電阻式測(cè)濕元件和一個(gè)NTC測(cè)溫元件,與單片機(jī)進(jìn)行簡(jiǎn)單連接后,就能夠?qū)崟r(shí)地采集本地濕度和溫度。DS18B20和DHT11均具有“單總線”接口,僅需要一個(gè)I/O口便可以實(shí)現(xiàn)和STM32的通信,雙方之間的通信協(xié)議采用單總線協(xié)議。由于DHT11的溫度測(cè)量精度較低,故使用時(shí)只取其測(cè)量的濕度值,溫度值通過(guò)DS18B20獲得。

2.3人體感應(yīng)模塊

本次設(shè)計(jì)采用HC-SR505人體感應(yīng)模塊檢測(cè)人體,HC-SR505是基于紅外線技術(shù)的自動(dòng)控制產(chǎn)品,它具有靈敏度高、可靠性強(qiáng)、體積小,工作電壓低的優(yōu)點(diǎn)。設(shè)計(jì)時(shí),將HC-SR05配置成可重復(fù)觸發(fā)方式:感應(yīng)到人體輸出高電平后,在延時(shí)時(shí)間段內(nèi),如果有人體在其感應(yīng)范圍活動(dòng),其輸出將一直保持高電平,直到人離開(kāi)后才延時(shí)將高電平變?yōu)榈碗娖健?/p>

2.4藍(lán)牙模塊

本次設(shè)計(jì)采用HC-05藍(lán)牙模塊與手機(jī)端進(jìn)行交互,HC-05藍(lán)牙模塊可連接到微控制器的串行端口,并允許微控制器通過(guò)藍(lán)牙連接其他設(shè)備通信,其成本低、傳輸數(shù)據(jù)穩(wěn)定、使用簡(jiǎn)單便捷,在使用時(shí),需將其RX和TX端與STM32的RX和TX端交替連接,配置并統(tǒng)一好通信格式后便可以很輕松地與手機(jī)進(jìn)行交互,使用者可通過(guò)手機(jī)控制風(fēng)扇的運(yùn)作。

2.5語(yǔ)音識(shí)別模塊

LD3320是基于非特定人體語(yǔ)音識(shí)別技術(shù)的語(yǔ)音識(shí)別芯片,LD3320芯片上集成了高精度的A/D和D/A接口,不再需要外接輔助的Flash和RAM,即可以實(shí)現(xiàn)語(yǔ)音識(shí)別以及人機(jī)對(duì)話功能,并且識(shí)別的關(guān)鍵詞語(yǔ)列表是可以動(dòng)態(tài)編輯的。該模塊支持SPI與串口兩種通信接口,本次設(shè)計(jì)中采用SPI接口與STM32進(jìn)行通信。

3軟件設(shè)計(jì)

3.1主程序設(shè)計(jì)

系統(tǒng)的主程序設(shè)計(jì)流程如圖1所示,在主程序中先初始化系統(tǒng)和各個(gè)模塊;然后,在主循環(huán)中進(jìn)行溫度檢測(cè);語(yǔ)音、藍(lán)牙、LCD觸摸屏的輸入檢測(cè)與處理,用戶可以通過(guò)語(yǔ)音、藍(lán)牙和LCD觸摸屏來(lái)設(shè)置風(fēng)扇的運(yùn)行模式以及是否加濕空氣等其他功能;接下來(lái),LCD屏更新溫濕度、風(fēng)扇工作模式等相關(guān)信息;隨后,判斷當(dāng)前系統(tǒng)的工作模式,如果是在智能模式下,則計(jì)算出風(fēng)扇的轉(zhuǎn)速,其中,v是風(fēng)扇的轉(zhuǎn)速,T是環(huán)境溫度,k和b是風(fēng)力調(diào)節(jié)參數(shù),用戶可以通過(guò)語(yǔ)音、手機(jī)APP等方式,結(jié)合自身喜好修改該參數(shù);如果是在手動(dòng)模式下,系統(tǒng)則根據(jù)用戶輸入的風(fēng)力等級(jí)指令輸出標(biāo)定好的風(fēng)扇轉(zhuǎn)速;最后,系統(tǒng)會(huì)采用PID算法控制輸出PWM波的占空比,以使風(fēng)扇達(dá)到期望的轉(zhuǎn)速。人體感應(yīng)信號(hào)作為外部中斷的觸發(fā)信號(hào),外部中斷選擇雙邊沿觸發(fā)方式,進(jìn)入中斷后再讀取感應(yīng)信號(hào)的電平,判斷是人靠近還是人離開(kāi),實(shí)現(xiàn)人來(lái)風(fēng)來(lái)、人走風(fēng)停的功能。

3.2PWM電機(jī)控制程序設(shè)計(jì)

STM32F103ZET6一共有8個(gè)定時(shí)器,其中6個(gè)定時(shí)器有4路輸出比較通道,即可以同時(shí)輸出4路PWM波,本次設(shè)計(jì)采用TIM3的CH1輸出PWM波控制風(fēng)扇電機(jī)的工作,其主要步驟如下:開(kāi)啟TIM3時(shí)鐘,配置對(duì)應(yīng)引腳為復(fù)用輸出;初始化TIM3,設(shè)置TIM3的ARR和PSC;設(shè)置TIM3_CH1的PWM模式,使能TIM3的CH1輸出;使能TIM3,修改TIM3_CCR1來(lái)控制占空比。TIM_CCR1的裝載值是通過(guò)PID算法計(jì)算得出的,風(fēng)扇電機(jī)帶有檢測(cè)其轉(zhuǎn)速的編碼器,將TIM4配置為編碼器模式,讀取單位時(shí)間內(nèi)風(fēng)扇編碼器上的脈沖數(shù),以此計(jì)算出風(fēng)扇的實(shí)際轉(zhuǎn)速,整定好PID各參數(shù)后,根據(jù)理想轉(zhuǎn)速與實(shí)際轉(zhuǎn)速采用位置式PID計(jì)算出TIM_CCR1的裝載值,以此輸出需要的PWM波,使風(fēng)扇快速達(dá)到穩(wěn)定、精準(zhǔn)的轉(zhuǎn)速。

4結(jié)語(yǔ)

本次設(shè)計(jì)以STM32F103ZET6為核心控制芯片,是對(duì)傳統(tǒng)風(fēng)扇的智能化升級(jí)與改造。本系統(tǒng)的兩種運(yùn)行模式,使風(fēng)扇能自如應(yīng)對(duì)生活中多樣化的需求,在智能控制下,能根據(jù)環(huán)境溫度自動(dòng)調(diào)節(jié)相應(yīng)功能,而在人工模式下,則能通過(guò)液晶屏、手機(jī)APP、語(yǔ)音等多種手段,來(lái)自定義用戶最舒適的環(huán)境體驗(yàn)。系統(tǒng)總體較為節(jié)能、高效,應(yīng)用場(chǎng)景廣泛,有著良好的市場(chǎng)前景。

參考文獻(xiàn):

[1]張洋,原子教你玩STM32(庫(kù)函數(shù)版)[M].北京:北京航空航天大學(xué)出社,2015.

[2]沈紅衛(wèi),STM32單片機(jī)應(yīng)用與全案例實(shí)踐[M].北京:電子工業(yè)出版社,2017.

[3]侯殿有.單片機(jī)C語(yǔ)言程序設(shè)計(jì)[M].北京:人民郵電出版社,2010.

[4]張毅剛.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2003.

[5]譚浩強(qiáng).C程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,1991.

[6]黃智偉.32位微控制器系統(tǒng)設(shè)計(jì)[M],北京:北京航空航天大學(xué)出社,2010.

[7]張友德.單片微型機(jī)原理及應(yīng)用[M],上海:復(fù)旦大學(xué)出版社,2000.

作者:萬(wàn)方高 盧俊宇 盧俊誠(chéng) 盧澤林 單位:哈爾濱理工大學(xué)電氣與電子工程學(xué)院