長(zhǎng)安大學(xué) 李賽楠
?
基于STM32MCU的智能光控窗簾
長(zhǎng)安大學(xué)李賽楠
新一輪科技革命和產(chǎn)業(yè)變革與我國(guó)加快轉(zhuǎn)變經(jīng)濟(jì)發(fā)展方式形成歷史性交匯,國(guó)際產(chǎn)業(yè)分工格局正在重塑?!爸袊?guó)創(chuàng)造”就是中國(guó)版的“工業(yè)4.0”,是制造強(qiáng)國(guó)戰(zhàn)略的行動(dòng)綱領(lǐng),智能家居產(chǎn)品搭上了時(shí)代的快車飛速發(fā)展。本文介紹的智能窗簾產(chǎn)品不但實(shí)現(xiàn)了自動(dòng)化,而且通過(guò)傳感器的運(yùn)用,實(shí)現(xiàn)產(chǎn)品的智能化。本系統(tǒng)以STM32單片機(jī)作為核心控制器,通過(guò)采集環(huán)境光強(qiáng)度,實(shí)現(xiàn)對(duì)窗簾的智能控制,同時(shí),支持觸摸屏人工控制以及遙控器遠(yuǎn)程紅外控制,以滿足不同的需求,并且相比較普通開(kāi)關(guān)具有操作方便,觸摸屏具有UI界面美觀的優(yōu)點(diǎn)。
智能控制;光強(qiáng)度傳感器;遠(yuǎn)程無(wú)線遙控;TFT觸摸屏
本文選用STM32單片機(jī)作為主控芯片,完成對(duì)系統(tǒng)執(zhí)行機(jī)構(gòu)的控制和信息處理。單片機(jī)通過(guò)檢測(cè)外界光強(qiáng)度,控制繼電器模塊,進(jìn)而控制小型交流電機(jī),從而實(shí)現(xiàn)對(duì)窗簾的控制。光照強(qiáng)度可通過(guò)串口傳輸至單片機(jī),經(jīng)單片機(jī)處理后實(shí)現(xiàn)其自動(dòng)控制功能。系統(tǒng)主要由電源模塊、STM32單片機(jī)主控模塊、小型交流電機(jī)及驅(qū)動(dòng)模塊、光強(qiáng)度傳感器模塊、觸摸屏及無(wú)線遙控模塊組成。
圖1 總體設(shè)計(jì)流程圖
1.光強(qiáng)度傳感器CJMCU-TSL2561
采用TSL2561光照傳感器實(shí)現(xiàn)光強(qiáng)度的實(shí)時(shí)監(jiān)測(cè),該傳感器具有精度高、成本低、體積小等優(yōu)點(diǎn)。芯片內(nèi)部集成積分式AD轉(zhuǎn)換器,并且采用數(shù)字信號(hào)輸出,抗干擾能力高于同類芯片。
該傳感器將光強(qiáng)轉(zhuǎn)換成數(shù)字信號(hào)輸出,通過(guò)I2C接口輸入給單片機(jī)MCU。數(shù)字輸出表示所測(cè)量的每一個(gè)通道的發(fā)光,同時(shí)作為微處理器的輸入。在單片機(jī)中,光亮度通過(guò)相關(guān)公式得到。
2.三相電機(jī)模塊
選擇一臺(tái)小型電機(jī)作為窗簾自動(dòng)開(kāi)閉的傳動(dòng)裝置,由于市電為220V交流電,因此選用交流電機(jī)較為方便。交流電機(jī)實(shí)現(xiàn)機(jī)械能和交流電能的相互轉(zhuǎn)換,由于交流電力系統(tǒng)的發(fā)展,也即目前電力系統(tǒng)的大力發(fā)展,交流電機(jī)的應(yīng)用遠(yuǎn)遠(yuǎn)超過(guò)直流電機(jī)。另外,交流電機(jī)和直流電機(jī)相比,沒(méi)有換向器,因此結(jié)構(gòu)簡(jiǎn)單,制造方便。本系統(tǒng)采用220V市電供電,額定電流為0.3A,轉(zhuǎn)速為120rpm,功率約為60W的小型電機(jī)。該小型電機(jī)用高強(qiáng)度材料密封而成,并帶有鎖緊裝置。
3.電機(jī)驅(qū)動(dòng)模塊
單片機(jī)輸出端接光電耦合器PC817,加上三極管進(jìn)行電流放大,驅(qū)動(dòng)繼電器,由繼電器控制電機(jī)即可。繼電器的作用是小功率低電壓控制大功率高電壓。另外,繼電器觸點(diǎn)上可以加RC串聯(lián)回路,抑制干擾同時(shí)使繼電器使用的時(shí)間延長(zhǎng)。
光電耦合器具有使上下級(jí)電路完全隔離的作用,相互之間不產(chǎn)生影響。輸入端加電信號(hào)時(shí),發(fā)光器發(fā)出光線,照射在受光器上,受光器接受光線后導(dǎo)通,產(chǎn)生光電流從輸出端輸出,實(shí)現(xiàn)了“電-光-電”的轉(zhuǎn)換。而本系統(tǒng)選用的PC817光電耦合器同時(shí)起到反饋和隔離的作用,是一種常用的線性光耦。
繼電器選用RXM2AB2BD型中間繼電器,其線圈工作電壓為24V直流電,最大額定電壓為250V交流,采用紫銅線圈,機(jī)械壽命可達(dá)1000萬(wàn)次,觸點(diǎn)采用鍍金銀合金觸電,導(dǎo)電性能強(qiáng),承載電流能力達(dá),引腳采用鎳鎘合金,使接觸性能更好。
4.虛擬按鍵檢測(cè)模塊
本模塊采用觸摸屏虛擬按鍵,通過(guò)虛擬按鍵的操作,與普通按鍵相同,可以產(chǎn)生脈沖信號(hào),用來(lái)實(shí)現(xiàn)用戶對(duì)窗簾的立即動(dòng)作。單片機(jī)檢測(cè)到這一按鍵脈沖之后,可以控制繼電器的通斷。
5.無(wú)線遙控模塊NRF24L01
NRF24L01是一款工作在2.4~2.5GHz世界通用ISM頻段的單片無(wú)線收發(fā)器芯片,無(wú)線收發(fā)器包括:頻率發(fā)生器增強(qiáng)型SchockBurstTM模式控制器、功率放大器、晶體振蕩器、調(diào)制器解調(diào)器,輸出功率頻道選擇和協(xié)議的設(shè)置可以通過(guò)SPI接口進(jìn)行設(shè)置。
工作在發(fā)射模式下發(fā)射功率為-6dBm時(shí),電流消耗為9.0mA,工作在接收模式時(shí)電流消耗為12.3mA,掉電模式和待機(jī)模式下電流消耗更低??梢酝ㄟ^(guò)遙控器控制單片機(jī)IO口輸入信號(hào),從而實(shí)現(xiàn)遠(yuǎn)程控制窗簾的效果。
NRF24l01的原理圖如圖2所示:
圖2 NRF24L01原理圖
6.電源供電模塊
交流電機(jī)以及單片機(jī)控制器都有其專門(mén)的供電插頭,接上室內(nèi)供電插座即可,而繼電器需要直流24V供電,需要設(shè)計(jì)專門(mén)的供電電路,將220V市電轉(zhuǎn)為24V直流電。
圖3 直流24V供電電路圖
選擇電阻電容降壓電路,利用電容在一定的交流信號(hào)頻率下產(chǎn)生的容抗來(lái)限制最大工作電流,選用24V的齊納穩(wěn)壓管輸出24V交流電,為繼電器供電。
1.光強(qiáng)度傳感器控制程序
STM32控制器可以通過(guò)I2C總線協(xié)議對(duì)TSL2561芯片進(jìn)行讀寫(xiě)。寫(xiě)數(shù)據(jù)時(shí),先發(fā)送地址,接著發(fā)送要寫(xiě)的數(shù)據(jù)。寫(xiě)操作過(guò)程如下:首先發(fā)送一組地址;然后寫(xiě)命令碼,命令碼是指定接下來(lái)寫(xiě)寄存器的地址00h~0fh和寫(xiě)寄存器的方式,以字節(jié)、字或塊(幾個(gè)字)為單位進(jìn)行寫(xiě)操作;最后發(fā)送要寫(xiě)的數(shù)據(jù),根據(jù)前面命令碼規(guī)定寫(xiě)寄存器的方式,能夠連續(xù)發(fā)送要寫(xiě)的數(shù)據(jù),內(nèi)部寫(xiě)寄存器會(huì)自動(dòng)加1。TSL2561的軟件設(shè)計(jì)流程下圖所示。
2.中斷控制程序
當(dāng)光強(qiáng)度傳感器模塊傳來(lái)的數(shù)據(jù)并判斷正確時(shí),中斷程序?qū)O口進(jìn)行初始化,接收來(lái)自傳感器模塊的新數(shù)據(jù),比較判斷后傳到命令地址進(jìn)而對(duì)電機(jī)進(jìn)行驅(qū)動(dòng)。
3.TFT觸摸屏顯示
TFT(ThinFilmTransistor)是指薄膜晶體管,每個(gè)液晶像素點(diǎn)都是由集成在像素點(diǎn)后面的薄膜晶體管來(lái)驅(qū)動(dòng),從而可以做到高速度、高亮度、高對(duì)比度顯示屏幕信息。
顯示面板中自帶含有這些驅(qū)動(dòng)芯片的驅(qū)動(dòng)電路,STM32芯片通過(guò)驅(qū)動(dòng)芯片來(lái)控制液晶屏TSC2046是專用在四線電阻屏的觸摸屏控制器,
電阻觸摸屏的基本原理為分壓,它由一層或兩層阻性材料組成,在檢測(cè)坐標(biāo)時(shí),在阻性材料的一端接參考電壓Vref,另一端接地,形成一個(gè)沿坐標(biāo)方向的均勻電場(chǎng)。當(dāng)觸摸屏受到擠壓時(shí),阻性材料與下層電極接觸,阻性材料被分為兩部分,因而在觸摸點(diǎn)的電壓,反映了觸摸點(diǎn)與阻性材料的Vref端的距離,而且為線性關(guān)系,而該觸點(diǎn)的電壓可由ADC測(cè)得。更改電場(chǎng)方向,以同樣的方法,可測(cè)得另一方向的坐標(biāo)。
單片機(jī)通過(guò)讀取光強(qiáng)度傳感器傳輸?shù)臄?shù)據(jù),得到外界環(huán)境光強(qiáng)度,控制繼電器模塊,進(jìn)而控制小型交流電機(jī),從而實(shí)現(xiàn)對(duì)窗簾的控制。光照強(qiáng)度可通過(guò)串口傳輸至單片機(jī),經(jīng)單片機(jī)處理后實(shí)現(xiàn)其自動(dòng)控制功能。工作模式二下支持觸屏立即動(dòng)作功能,單片機(jī)通過(guò)掃描端口電平的方式得到觸摸屏的脈沖信號(hào),控制繼電器動(dòng)作。在工作模式三下,可采用紅外遙控控制窗簾開(kāi)閉。從系統(tǒng)優(yōu)越的性能,我們可以深刻的感受到其中的智能化。
[1]譚浩強(qiáng)編著.C程序設(shè)計(jì)(第四版)[M].北京:清華大學(xué)出版社,2010,7.
[2]林濤,林薇編著.模擬電子技術(shù)基礎(chǔ)[M].西安:高等教育出版社,2014.
[3]王兆安,劉進(jìn)軍主編.電力電子技術(shù)[M].北京:機(jī)械工業(yè)出版社,2009.
[4]武奇生,白璘,惠萌主編.基于ARM的單片機(jī)應(yīng)用及實(shí)踐——STM32案例式教學(xué)[M].北京:機(jī)械工業(yè)出版社,2014.
[5]周杏鵬.傳感器與檢測(cè)技術(shù)[M].北京:清華大學(xué)出版社,2010,9.