鄧中樺 李曉淵 李文杰 許澤華
(華南理工大學(xué)廣州學(xué)院智能車隊(duì),廣東 廣州510800)
在當(dāng)代處處是智能的時代,智能機(jī)器人都已成型來開始為人類服務(wù),人們追求方便的程度不止于此!智能家居的發(fā)展迅速崛起,開關(guān)智能化在智能家居鄰域可謂是最簡單最基礎(chǔ)的配置了,而大多數(shù)的家庭其實(shí)還未普及利用手機(jī)遠(yuǎn)程遙控電燈或多數(shù)電器,市面上大多數(shù)遙控電燈開關(guān)都是配套電燈一起安裝的,對于已經(jīng)安裝的普通手動開關(guān)房間,需要通過一次簡單的改造,在保留原開關(guān)的前提下,實(shí)現(xiàn)遠(yuǎn)程控制開關(guān)。
針對上述問題,設(shè)計(jì)一款智能開關(guān)來對復(fù)雜的家居系統(tǒng)實(shí)現(xiàn)有效控制。為了實(shí)現(xiàn)此目標(biāo),我們通過STM32 使藍(lán)牙能對舵機(jī)的轉(zhuǎn)角進(jìn)行控制,從而控制照明燈的開啟的關(guān)閉。因此,該設(shè)計(jì)對于目前家居智能開關(guān)控制的進(jìn)一步優(yōu)化具有一定的實(shí)際意義,具備廣闊的發(fā)展前景。
此系統(tǒng)主要由藍(lán)牙模塊,舵機(jī)模塊和stm32 單片機(jī)三部分組成,藍(lán)牙模塊RX1 與TX1 分別連接在STM32 的PA10 與PA11,模塊成功連接時RX1 為高電平,TX1 為低電平。舵機(jī)模塊的PA8 與STM32 的PA8 相連。由手機(jī)App 發(fā)送信息再由藍(lán)牙模塊接收,接收到信息后向STM32 發(fā)送信息,STM32 對信息進(jìn)行處理后對舵機(jī)的轉(zhuǎn)角進(jìn)行控制,從而達(dá)到遠(yuǎn)程操控開關(guān)燈的目的。
MCU 模塊相當(dāng)于“黑匣子”的大腦,必須要有一個快速響應(yīng)以及儲存信息量大的處理器,所以選擇STM32F103 為核心處理器。STM32F103 芯片有低功耗,高精度的優(yōu)勢特點(diǎn)以及6kB ROM和2kB RAM的存儲區(qū)供給程序和數(shù)據(jù)的使用。同時其具有雙通道串口通信接口,可以與計(jì)算機(jī)進(jìn)行異步或同步串行通信。而在算法的運(yùn)算方面也有較高的運(yùn)算速度十分適合智能開關(guān)程序的運(yùn)行。
由于該STM32 內(nèi)置的振蕩器沒有外部選用的晶體的精度高,無法實(shí)現(xiàn)晶振的高頻振蕩。因此使用外部晶振會更好的發(fā)揮芯片的性能。STM32 的PC14 PC15 與分別與12M 10pF 晶振的OSC IN 與OSC OUT 相連,12M外部振蕩器可為系統(tǒng)提供更為準(zhǔn)確的主時鐘;STM32 的PD0 PD1 分別與32.768KHZ 的LES晶體的OSC32 IN OSC32 OUT 相連,為實(shí)時時鐘和定時功能提供一個低功耗且準(zhǔn)確的時鐘源。
RSBRS02AA 藍(lán)牙模塊4.2 工作電壓3.3V 最大發(fā)射功率7bBm 默認(rèn)的工作頻率為9 600 bps. 藍(lán)牙模塊的TX RX 與單片機(jī)的PA9 PA10 連接,串口協(xié)議當(dāng)模塊BLE 連接間隔為20ms。
“黑匣子”的總電源供應(yīng)來自7.2V 大容量鎳鎘電池,但是單片機(jī)STM32 是3.3V 的電源。故我們需要的是從電源7.2V 接入7.2V 轉(zhuǎn)3.3V 的降壓電路。采用AMS1117 系列穩(wěn)壓器,最小飽和壓降為1.1V~1.3V,最低工作電壓為4.4V~4.8V,與其他系列相比擁有在相同的輸出電壓下可以在更低的工作電壓下工作的優(yōu)勢。C11 是電源輸入濾波電容,主要用于在電源輸入處進(jìn)行濾波,使輸出電壓波形輸出顯示更平滑和起伏?。籆12 是電源輸出濾波電容,作用是減小輸出電壓汶波并抑制ASM1117 的自激振蕩。該模塊最終實(shí)現(xiàn)把7.2V 的電源直流電轉(zhuǎn)為3.3V 的直流電供給STM32 單片機(jī)使用。
由于電池容量是7.2V 2Ah,電壓高于各模塊電壓,因此采用壓差約為0.8V,額定電流為1A 的LM2940 系列穩(wěn)壓器。使用該系列穩(wěn)壓器為舵機(jī)模塊以及繼電器提供5.0V 直流電源。LM2940 硅片是一個塑封三角元件,PIN1 為輸入端,PIN2 為公共端,PIN3 為輸出端。蓄電池7.2V 經(jīng)過0.47uF 和0.1uF 電容濾波輸入到1 管腳,2 管腳接地,3 管腳經(jīng)過22uF 和0.1uF 濾波穩(wěn)定后輸出5.0V 直流電,給予繼電器以及舵機(jī)供電。
舵機(jī)中的伺服電機(jī)是服從信號的要求而動作。在信號來之前,轉(zhuǎn)子停止不動;信號來到之后,轉(zhuǎn)子立即運(yùn)動。這樣我們就可以通過輸入不同的信號發(fā)給舵機(jī), 來控制其旋轉(zhuǎn)到不同的角度。
舵機(jī)接收的信號是PWM,當(dāng)PWM信號進(jìn)入內(nèi)部電路產(chǎn)生一個偏置電壓,觸發(fā)電機(jī)通過減速齒輪帶動電位器移動,使電壓差為零時,電機(jī)停轉(zhuǎn),從而達(dá)到伺服的效果。簡單來說就是給舵機(jī)一個特定的PWM信號,舵機(jī)就可以旋轉(zhuǎn)到指定的位置。
舵機(jī)上有三根線,分別是GND、VCC 和SIG,也就是地線、電源線和信號線,其中的PWM波就是從信號線輸入給舵機(jī)。
一般來說,舵機(jī)接收的PWM 信號頻率為50HZ,即周期為20ms。當(dāng)高電平的脈寬在0.5ms-2.5ms 之間時舵機(jī)就可以對應(yīng)旋轉(zhuǎn)到不同的角度。
采用信馳達(dá)的藍(lán)牙模塊和舵機(jī)實(shí)現(xiàn)遠(yuǎn)程控制的基本流程:藍(lán)牙模塊和舵機(jī)數(shù)據(jù)進(jìn)行初始化,將手機(jī)連上藍(lán)牙后,然后再通過手機(jī)端發(fā)送指令,藍(lán)牙模塊再把接收到的指令傳給STM32,STM32 根據(jù)指令控制舵機(jī)執(zhí)行相應(yīng)的操作。
手機(jī)指令 執(zhí)行操作 0x01 舵機(jī)轉(zhuǎn)動到-45° 0x02 舵機(jī)轉(zhuǎn)動到-90° 0x11 舵機(jī)轉(zhuǎn)動到45° 0x12 舵機(jī)轉(zhuǎn)動到90° 0x00 舵機(jī)轉(zhuǎn)動到0°
通過舵機(jī)的轉(zhuǎn)角對電燈的開關(guān)進(jìn)行控制。
控制系統(tǒng)軟件部分主要分為藍(lán)牙配置與通信、舵機(jī)控制兩大主要部分。系統(tǒng)接上電源后,藍(lán)牙模塊,舵機(jī)啟用,手機(jī)APP成功連接藍(lán)牙后傳送對應(yīng)的控制指令,藍(lán)牙模塊接收指令后將指令后傳給STM32,STM32 控制舵機(jī)轉(zhuǎn)角進(jìn)行開關(guān)的控制。
定義GPIO 結(jié)構(gòu)體,打開GPIOB 時鐘,串口波特率為115200bps,具有最高理論轉(zhuǎn)發(fā)能力(12.4KB/S)。當(dāng)EN 為高電平,藍(lán)牙模塊將處于完全睡眠狀態(tài),當(dāng)EN 置低時,模塊會以200ms 的間隔開始廣播,直到和手機(jī)連接成功,EN 從低到高跳變,不論模塊狀態(tài),直接進(jìn)入睡眠。
void Run model()//設(shè)置舵機(jī)三種運(yùn)動模式,停止模式,待機(jī)模式以及工作模式。
void led()// 模塊成功連接后,高電平洪燈亮,低電平藍(lán)燈滅。
void key()//中斷函數(shù)的配置。
void main()// 主函數(shù)完成系統(tǒng)初始化,按鍵的掃描,開關(guān)的藍(lán)牙控制,以及舵機(jī)轉(zhuǎn)角的判斷。如圖1 所示。
圖1
voidusart1()//串口中斷函數(shù),單片機(jī)Pin9,Pin10 初始化。如圖2 所示。
圖2
圖3
通過測試本產(chǎn)品已經(jīng)能通過nRF Connect 手機(jī)APP 發(fā)送代碼后對舵機(jī)轉(zhuǎn)角進(jìn)行控制,如圖3 所示,此刻為開燈的狀態(tài),當(dāng)輸入代碼0x11 后,STM32 接收信息將其轉(zhuǎn)換傳給舵機(jī),使舵機(jī)旋轉(zhuǎn)45°從而達(dá)到關(guān)燈的目的。再次開燈之需輸入0x01 即可。
在本文中,我們利用手機(jī)的藍(lán)牙通信功能設(shè)計(jì)實(shí)現(xiàn)了一種手機(jī)控制家用電燈的開關(guān)。在所設(shè)計(jì)的系統(tǒng)中,手機(jī)APP 用來輸入代碼信號,藍(lán)牙通信用來建立手機(jī)和STM32 單片機(jī),控制舵機(jī)角轉(zhuǎn)角來控制電燈開關(guān)。這樣通過手機(jī)就可以控制電燈的開啟和關(guān)閉,使智能手機(jī)的作用得到增加,也為生活的智能化增添了新的體驗(yàn),具有一定的實(shí)用價(jià)值。