劉峰 岳茜 王北辰 華北理工大學
基于單片機的人體感應智能創意時鐘設計
劉峰 岳茜 王北辰 華北理工大學
本設計以STC15F2K60S2單片機為處理器,以熱釋電器件HC-SR501人體紅外感應模塊,蜂鳴器模塊,18650型鋰電池及LED發光二極管等器件,設計了一個超低功耗,具備人體紅外感應帶防盜報警功能的創意時鐘。本設計從低功耗,高穩定性,超長工作時間,高靈敏度出發,以硬件電路設計以及優化為主,整體設計思路可供單片機開發人員參考或借鑒。
單片機應用 人體紅外檢測 STC15F2K60S2 創意時鐘 防盜報警
隨著技術的進步,電子產品在向模塊化,智能化發展。傳統的機械時鐘的未免顯得單調,一款只需用17個LED為顯示界面,以單片機(MCU)為控制核心,具備人體紅外感應功能的智能化創意時鐘將會以其新穎的設計吸引人們注意。
①時間顯示模式下:當熱釋電器件(HC-SR501人體紅外感應模塊)檢測到人體活動時,LED發光并以特定格式顯示時間,當有人在探測區域內,LED一直點亮。當人離開探測區域后,LED持續點亮20秒,然后熄滅。
②防盜報警模式:此時LED保持熄滅狀態,當熱釋電器件檢測到人體活動時,則判斷為有人進入,單片機發出信號至蜂鳴器,使蜂鳴器發出警告提醒用戶。
③鬧鐘模式:當達到用戶預設時間時,蜂鳴器發出警報,LED開始發光,持續1分鐘,期間若有任何按鍵被按下或有人進入紅外感應區域,鬧鐘關閉;若無人關閉鬧鐘,將在10分鐘后再次發出警報;若3次警報后,無任何關閉鬧鐘動作,判斷為無人狀態,將不再發出警報。
④按鍵修改功能:通過一個雙擲開關控制時間顯示模式或防盜報警模式,通過4個外部物理按鍵修改顯示時間以及鬧鐘預設時間,設置報警蜂鳴器的報警頻率和設置紅外感應延遲時間。
本設計只用了17個LED發光二極管,因此采用直接通過單片機的I/O的方案來控制LED是否發光。設計原理框圖如圖1:

圖1 設計原理框架圖
①控制器件種類繁多,選擇一款性價比最高的處理器件尤為重要。本設計選擇STC15F2K60S2作為控制芯片,本芯片為51增強型芯片,較傳統89C51型單片機不僅速度快12倍,其內部自帶11.0592Mhz的石英晶振,并且具有更多IO口、定時器,更強的保密性,內部自帶有61KB內存,可直接將數據保存帶單片機內部。主芯片僅需在VCC引腳加上+5V電壓即可開始工作,無需復雜外圍電路,減少了硬件電路設計,并提高了系統穩定性,性價比極高。

圖2 核心控制電路圖
硬件外圍控制電路如圖2所示,該控制電路在VCC引腳和GND引腳接上了2個濾波電容C1、C2,增強系統抗干擾能力。
②電源是保證整個系統正常工作的基礎,對于有報警功能的設備,需長時間工作,并且不能因停電等外部原因而使設計功能癱瘓,系統供電部分采用2節18650型鋰電池并聯后升壓至5V,給系統供電。升壓芯片可采用TI公司的TPS40210電源芯片做一個boost升壓電路。但考慮到成本和硬件系統簡潔度,本設計直接采用了市面上現有的鋰電池充放電模塊搭配鋰電池構建穩定的5V電源供電系統。
③人體紅外探測模塊,本設計采用了熱釋電器件HC-SR501人體感應模塊,一款基于紅外線技術的自動控制模塊,靈敏度高,可靠性強,超低電壓工作模式。實物如圖3。
技術特點:
1)全自動感應:當有人進入其感應范圍時輸入高電平,人離開感應范圍則自動延時關閉高電平,輸出低電平。
2)光敏控制(可選):模塊預留有位置,可設置光敏控制,白天或光線強時不感應。光敏控為可選功能。

圖3 HC-SR501模塊實物圖
3)兩種觸發方式:L不可重復,H可重復,可跳線選擇,默認為H,本系統使用默認。不可重復觸發方式:即感應輸出高電平后,延時時間一結束,輸出將自動從高電平變為低電平。可重復觸發方式:即感應輸出高電平后,在延時時間段內,如果有人體在其感應范圍內活動,其輸出將一直保持高電平,直到人離開后才延時將高電平變為低電平(感應模塊檢測到人體的每一次活動后會自動順延一個延時時間段,并且以最后一次活動的時間為延時時間的起始點)。
4)具有感應封鎖時間(默認設置:0.2s):感應模塊在每一次感應輸出后(高電平變為低電平),可以設置一個封鎖時間,在此時間段內感應器不接收任何感應信號。此功能實現感應輸出時間和封鎖時間兩者的間隔工作,可應用于間隔探測產品。同時,此功能可有效抑制負載切換過程中產生的各種干擾。
5)工作電壓范圍寬:默認工作電壓為DC5~20V。
6)微功耗:靜態電流65μA,特別適合干電池供電的電器產品。
7)輸出高電平信號:方便與各類電路實現對接。

圖4 HC-SR501 工作電路

圖5 蜂鳴器模塊
由該模塊工作特點可知,當有人進入感應范圍時輸出為高電平,此時MCU檢測到的電平為高,執行不同工作狀態下所對應的功能。圖4是HC-SR501的工作電路,因實測該模塊產生的高電壓為3V左右,不能為單片機提供穩定的高電平信號,因此改進了電路,將HC-SR501模塊的輸出引腳接到NPN三極管的基極,發射極接單片機P2.2口,集電極接電源,當檢測到有人進入感應范圍時,產生一個高電平,使三極管工作在飽和區。而在P2.2口將會接收到穩定的高電平。此優化明顯提高了系統穩定性。
④報警電路:本設計報警電路由一個蜂鳴器組成,當蜂鳴器接收到報警信號即發出響聲開始報警,此信號可來源于防盜報警工作模式和鬧鐘工作模式當蜂鳴器模塊的I/O口接收到高電平即可發聲開始報警。工作電路如圖6所示,單片機P2.3口接NPN三極管的基極,單片機P2.3口發出高電平信號,三極管工作在飽和區,使蜂鳴器工作。三極管在電路的作用是讓系統響應度更穩定。

圖6 蜂鳴器工作電路

圖7 按鍵部分電路圖

圖8 LED顯示電路
⑤外部物理按鍵:為了實現修改時間等功能,本設計引入了4個外部按鍵,一個雙擲開關。如圖7所示,切換雙擲開關S0,可做到防盜報警模式和時間顯示模式的切換。S0切換到1時,單片機P4.5口為高電平。S0切換至3時,P4.5口為低電平。由此可以判斷電平信號,得知設備的工作狀態。S2、S3、S4、S5、4個按鍵為功能按鍵,通過檢測與按鍵相連的單片機IO口電平狀態,即可判斷按鍵是否按下,并執行相對應的功能。
S2:時間設置、S3:加、S4:減、S5:鬧鐘設置。第一次按下S2,設置時鐘,按下S3,S4可對時鐘修改;再次按下S2,進入分鐘修改,此時按下S3,S4可對分鐘修改;再次按下S2,設置完成,返回正常工作模式。鬧鐘設置按S5,其他操作可參考時鐘修改操作。
⑥LED顯示電路:由LED以特定格式發光顯示時間。該部分電路如圖8所示,電路中一共有17個LED發光二極管,外圈(LED0-LED11)12個發光二極管按傳統時鐘頁面分布中間4個(LED12-LED15)4個發光二級管位于傳統時鐘頁面中間偏上位置,LED16位于傳統時鐘頁面中間偏下位置。17個LED發光二極管以共陽方式和單片機連接,即陰極與單片機IO口相連,每個LED的陽極與一個330歐姆的限流電阻串聯后接電源正極。通過單片機對應IO口輸出低電平,即可點亮對應的LED。
時鐘顯示時,LED0-LED11代表時鐘H的LED常亮,代表分鐘的LED按秒閃爍,對應分鐘位置閃爍的LED的分鐘的數學表達式為Min=(H×5)+N;N為(LED12-LED15)4個LED點亮的個數。LED16亮代表下午PM,熄滅代表AM。
舉例為:若現在時間為下午3點28分。則對應為LED3常亮,LED5閃爍,LED12、LED13、LED14、LED16(下午)常亮。
對應的鬧鐘顯示同理,在此不再贅述。
STC15F2K60S2單片機的開發語言為C語言或匯編語言,本設計方案選用的編程語言為C語言,代碼量也較多,不一一分析代碼。基于硬件而實現對應功能的程序代碼是靈活的,在此只敘述在實際調試時的編程思路。
顯示部分,LED電路為共陽極接法,所以點亮對應LED只需將與之相連接的IO口置0即可。每次顯示切換時,需要注意到時,分,秒顯示格式。在充分利用硬件資源的條件下,以單片機定時器0中斷,通過配置定時器,編寫精確的時鐘程序。
按鍵部分,通過鍵盤檢測程序,以定時器中斷,編寫鍵盤掃描程序。按鍵需要延時消抖和松手檢測的運用,使按鍵穩定可靠。按鍵修改時間時,可以使LED不同的顯示方式而進入不同的修改模式,方便使用和觀察。
報警部分,通過給蜂鳴器不同的通電時間,可以使蜂鳴器發出不同頻率的聲音。
人體紅外感應部分,通過電平判斷有無人進入感應范圍,決定系統工作狀態。若有人,則進入時間顯示或者報警工作狀態。無人在感應區內則進入待機狀態。
功耗分析:該系統中的17個LED為最大功率器件。每個LED通過的電流為(5-1.7)/330=10mA;每一個點亮二極管通過電流為10mA,消耗功率為17mW,每一個限流電阻消耗功率為33mW。單片機工作電流實測為4mA,待機功率為20mW。因為顯示功能為有人進入感應區域才會點亮。故實際功耗將很低,HC-SR501待機功率可忽略不計。通過2塊18650電池供電,可維持數周時間。
本設計所有部分已通過實際測試,主要可用作商店或家庭作為防盜報警時鐘,因為其對人體紅外檢測的特性及高靈敏度,可很好勝任防盜報警功能。根據是否有人在感應區域決定顯示的設計很大程度上降低了功耗。而在智能家庭的大環境下,本設計預留了2個串口通信端口,使其在硬件上具備受上位機操作的基礎。可以在此設計的基礎上通過進一步的軟件開發使其融入智能家庭系統。而直接接上藍牙模塊加上寫入對應程序即可實現在手機上發送十六進制代碼進行時間修改,模式切換功能。本設計以其性價比高,低功耗,穩定性能,適配智能家庭系統,具有很強的實用性。
[1]王東,莫先.基于STM32和HC-SR501智能家居的智能照明系統設計[J].重慶理工大學學報(自然科學),2016,(06):135-142
[2]王靜偉,姜華.基于STC15F2K60S2低功耗工程車輛運輸監控應用設計[J].電子世界,2014,(16):14-15
[3]吳秋寧,邵建龍,呂英英,張志宏,肖文博.提高單片機測控系統的抗干擾能力的研究[J].電子測量技術,2010,(02):63-66