莫強(qiáng)華
(鄭州工業(yè)應(yīng)用技術(shù)學(xué)院,河南 鄭州451100)
從節(jié)約能源方面以及使用效果考慮,未來(lái)智能化的家居必然代替?zhèn)鹘y(tǒng)的家居,人們對(duì)于照明不再僅僅局限于燈光的亮滅,而是更在乎其體驗(yàn)感。一般而言,人們?cè)谖缫沟臅r(shí)候,對(duì)于燈光的亮度需求不會(huì)太高,只需要簡(jiǎn)單的照明即可,同時(shí)白天的時(shí)候,對(duì)于光照強(qiáng)度大的地方,也不需要燈光。對(duì)于在傍晚時(shí)分,人們對(duì)于燈光的智能化要求最高。若僅僅依靠光敏電阻的感光來(lái)決定燈光的強(qiáng)弱,顯然無(wú)法完成復(fù)雜的控制。并且其可靠性低,易被外界光照干擾,同時(shí)午夜時(shí)分的燈光亮度最高,白白浪費(fèi)能源。為解決該現(xiàn)象,同時(shí)結(jié)合傳統(tǒng)燈光控制手段,設(shè)計(jì)一種基于紅外控制的無(wú)線(xiàn)調(diào)光燈。
本系統(tǒng)設(shè)計(jì)的功能如下:
2.1.1 按鍵1 按下或者紅外按鍵長(zhǎng)按切換模式(自動(dòng)模式,手動(dòng)模式)。
2.1.2 按鍵2 或者紅外按鍵短按調(diào)節(jié)燈亮度,屏幕會(huì)顯示亮度具體值。
2.1.3 自動(dòng)模式MODE : automatic,表示模式為自動(dòng)模式;PERSON:NO 表示:附近無(wú)人PERSON :YES 表示附近有人,LIGHT:H_light 表示光照強(qiáng)度充足。
2.1.4 自動(dòng)模式下,光照強(qiáng)度充足則關(guān)閉燈;光照強(qiáng)度不足時(shí),若附近無(wú)人光照強(qiáng)度為20%,若監(jiān)測(cè)到有人在附近則光照強(qiáng)度為100%。
本設(shè)計(jì)利用單片機(jī)作為主控制芯片,采用OLED 作為顯示模塊,通過(guò)按鍵或者紅外遙控器控制燈的開(kāi)關(guān)。總體框圖如下圖1 所示。
圖1 總體框圖
選擇STM32F1 系列處理器作為主控芯片,該系列單片機(jī)內(nèi)核頻率相對(duì)較高,運(yùn)行內(nèi)存和FLASH 充足,運(yùn)行速度快。而且外設(shè)資源豐富,且具備常用通信總線(xiàn)??梢酝瓿杀驹O(shè)計(jì)控制,而且方便后期系統(tǒng)升級(jí)。
考慮到本產(chǎn)品顯示部分較多,需要顯示燈光亮度等級(jí),因此無(wú)法使用數(shù)碼管作為顯示器部分,從價(jià)格以及使用壽命方面考慮,選擇OLED 顯示屏作為顯示器。利用驅(qū)動(dòng)芯片SSD1306 控制OLED,可采用SPI 或者IIC 進(jìn)行單片機(jī)與OLED 之間的通訊,OLED 具有主動(dòng)發(fā)光的特性,無(wú)需背光源,每個(gè)點(diǎn)都可以自己發(fā)光,可顯示漢字、圖案等,并且屏幕具有較寬的視角,即使從側(cè)面看,顯示部分也不會(huì)失真。
本設(shè)計(jì)用兩個(gè)按鍵模塊控制對(duì)燈的亮度的調(diào)節(jié),一個(gè)按鍵用來(lái)增加亮度,另外一個(gè)實(shí)現(xiàn)降低亮度。采用接下拉電阻的按鍵,當(dāng)IO 口設(shè)置輸入模式,常態(tài)低電平,按鍵按下時(shí)輸入高電平。
本設(shè)計(jì)采用的紅外接收模塊型號(hào)為HX18388,可以數(shù)據(jù)數(shù)字量,供電電壓為5V,可以通過(guò)串口對(duì)其接收數(shù)據(jù)之后對(duì)其進(jìn)行解析。
熱釋電紅外接收模塊也是基于紅外線(xiàn)技術(shù)的自動(dòng)控制產(chǎn)品,人離開(kāi)之后可以自動(dòng)輸出低電平,同時(shí)可以設(shè)置延時(shí)時(shí)間。該模塊還自帶光敏電阻,可以通過(guò)硬件跳線(xiàn)選擇是否設(shè)置該項(xiàng)。
硬件原理總圖如圖2 所示。
系統(tǒng)在上電復(fù)位后,先對(duì)單片機(jī)系統(tǒng)、紅外遙控模塊、OLED顯示模塊等各個(gè)硬件模塊初始化、賦予初始默認(rèn)值,設(shè)置定時(shí)器及中斷系統(tǒng)的工作方式等初始化工作。在系統(tǒng)初始化完成之后,OLED 屏上顯示“MODE/PERSON/LIGHT”等信息,同時(shí)熱釋電人體紅外傳感器模塊一直處于激活狀態(tài),若人體處于其感應(yīng)范圍內(nèi)時(shí),輸出高電平;人離開(kāi)其探測(cè)范圍時(shí),自動(dòng)將引腳電平拉低。另外其紅外接收端一直處于接收狀態(tài),當(dāng)接收到紅外遙控器發(fā)出的信號(hào)后,通過(guò)解調(diào)后執(zhí)行相關(guān)指令。
圖2 硬件原理總圖
為方便展示,本設(shè)計(jì)利用面包板作為底板,將各模塊通過(guò)焊接的方式與主控制芯片連接在一起。將主控制器通電,電源指示燈常亮,同時(shí)OLED 屏幕顯示出亮度等級(jí)、模式、附近是否有人信息。此時(shí),可以利用紅外遙控器對(duì)其進(jìn)行燈亮度調(diào)節(jié),或者使用按鍵開(kāi)關(guān)對(duì)其進(jìn)行調(diào)節(jié)。整體調(diào)試圖片如圖3 所示。
圖3 總體調(diào)試頁(yè)面
本設(shè)計(jì)是基于單片機(jī)的紅外調(diào)光燈設(shè)計(jì),第一點(diǎn)要做的就是要保證紅外傳感器的接收與發(fā)射的正確,在我調(diào)試該部分時(shí),發(fā)現(xiàn)解碼成功率不高,通過(guò)查閱資料以及實(shí)際測(cè)量電路發(fā)現(xiàn),紅外發(fā)光二極管與其限流電阻內(nèi)部接觸不良導(dǎo)致遙控器失靈,解碼成功率不高。在OLED 屏顯示界面中,因?yàn)橐M(jìn)行幾個(gè)頁(yè)面的切換,所以都要進(jìn)行清屏處理,但是如果每刷新一次屏幕都清屏一次,會(huì)出現(xiàn)刷屏的問(wèn)題,后來(lái)我想到UCOSII 操作系統(tǒng)里的向量集思想,在每個(gè)界面刷新設(shè)置一個(gè)標(biāo)志位,只在每次界面切換的時(shí)候刷新一次屏幕,這樣就解決了刷屏的問(wèn)題。在熱釋電紅外傳感器模塊的學(xué)習(xí)過(guò)程中,一開(kāi)始對(duì)這個(gè)模塊沒(méi)有了解,無(wú)從下手,后來(lái)請(qǐng)教他人,自己也在網(wǎng)上找資料,了解整個(gè)模塊的工作流程以及工作原理,使用時(shí)只需要對(duì)其通電,讀取其輸出引腳的高低電平狀態(tài)即可。