智能臺燈
摘要:設計制作了一種智能臺燈,主要是以BISS0001和單片機組成的紅外傳感控制電路。其特點是在有人時且外界光強較弱時能自動開燈,無人時關燈,節約能源;且能糾正坐姿,防止近視。
一、 引言:臺燈已是千家萬戶的必需生活用品,經常由于忘記關燈而造成巨大的能源浪費。當夜晚來臨時,人們又摸黑去開燈,非常不方便。在這里設計了以人體紅外輻射(波長為9.5um)傳感控制電路。當人體在臺燈的范圍內且環境光強較弱時,自動感應開燈;當人體太靠近桌面時,臺燈自動感應,警告糾正坐姿,若在一定時間內未離開桌面則自動熄滅。當人離開時則自動關燈,達到節約能源的目的。 二、 系統組成及電路設計: 1. 系統組成部分
圖片1.png (788.02 KB, 下載次數: 22)
下載附件
2024-5-17 11:48 上傳
圖一 系統結構圖 本系統組成如圖一所示,主要由三部分組成: 1) 傳感器及信號處理部分:檢測人體輻射紅外信號及光強信號經過處理后變成可處理的數字信號 2) 以80C51組成的中央處理單元:處理信號并發出控制命令 3) 提醒電路及燈光控制電路 :給出提醒信號并根據80C51給出的命令控制燈光 整個系統是以80C51控制下工作的。其工作過程為:當環境光比較強時,光敏電阻阻值比較小,信號處理電路檢測到低電平信號,禁止熱釋電紅外傳感器工作,省去了80C51處理過程。當環境光比較弱時,光敏電阻阻值變大,信號處理電路接收到高電平,從而啟動熱釋電紅外傳感器工作。熱釋電紅外傳感器1探測比較遠的距離,當人體進入到傳感器1的控測范圍內且光強較弱時,信號檢測電路處理信號,并向單片機發送一個中斷,80C51啟動燈光控制電路,使燈慢慢變亮。當環境光比校弱時,且人體過于靠近桌面,熱釋電紅外傳感器2檢測到信號,同時了在熱釋電紅外傳感器1的控測范圍內,信號處理電路同時向80C51發送信號,80C51處理信號根據優先級順序,屏蔽掉熱釋電紅外傳感器1的信號,啟動延時電路,發出警報使人離開,若在設定的時間內未離開桌面,則啟動燈光控制電路,使燈慢慢熄滅。當人體離開熱釋電紅外傳感器2的控測范圍且在熱釋電紅外傳感器1的控測范圍內時,燈光又慢慢變亮。 2. 電路設計部分
圖片2.png (18.76 KB, 下載次數: 23)
下載附件
2024-5-17 11:48 上傳
圖二 傳感器組成的信號檢測及處理部分 圖二是由紅熱釋電紅外傳感器、光敏電阻、BISS0001組成的信號檢測及處理電路。紅熱釋電紅外傳感器只對波長為10μm(人體輻射紅外線波長)左右的紅外輻射敏感,所以除人體以外的其他物體不會引發探頭動作。探頭內包含兩個互相串聯或并聯的熱釋電元,而且制成的兩個電極化方向正好相反,環境背景輻射對兩個熱釋元件幾乎具有相同的作用,使其產生釋電效應相互抵消,于是探測器無信號輸出。一旦人侵入探測區域內,人體紅外輻射通過部分鏡面聚焦,并被熱釋電元接收,但是兩片熱釋電元接收到的熱量不同,熱釋電也不同,不能抵消,于是輸出檢測信號。 BISS0001是由運算放大器、電壓比較器、狀態控制器、延遲時間定時器以及封鎖時間定時器等構成的數模混合專用集成電路。當外界光強較強時,光敏電阻阻值很小,BISS0001檢測到低電平,從而封鎖14腳,禁止傳感器infare1的信號。當外界光強較弱時,光敏電阻阻值很大,BISS0001檢測到低電平,開啟14腳;infare1檢測到人體信號時,產生微弱的信號輸出,經R5、R1005、R4、C1、C6、C7組成的信號放大濾波電路。R1000、R1001、C1000和C1001組成的延時電路。信號經處理后從2腳輸出。
圖片3.png (25.91 KB, 下載次數: 20)
下載附件
2024-5-17 11:48 上傳
圖三 單片機控制電路 圖三是由單片機組成的報警及燈光控制電路。當外部無任何中斷時,80C51控制74LS138的使能控制端,使后面電路不工作。當有中斷一產生時,80C51啟動74LS138,向P0腳低4位發送信號,控制燈慢慢亮。當中斷1和中斷0同時產生時,80C51屏蔽掉中斷1,啟動74LS138向P0腳低四位發送數據,使燈光慢慢變暗。這里采用74LS138控制DC832可以節省80C51的管腳,有利于擴展,以便于控制多盞燈。由于采有DC0832可以有效地使燈實現階梯形的變化。 3. 程序框圖:
圖片4.png (807.95 KB, 下載次數: 19)
下載附件
2024-5-17 11:48 上傳
中斷1 中斷0
圖片5.png (847.71 KB, 下載次數: 18)
下載附件
2024-5-17 11:48 上傳
圖四 程序框圖 程序框圖如圖四所示,程序開始后,對程序進行初始化。向P0腳寫入低電平,開啟所有中斷,啟動計數器。當中斷1來時,進入中斷1,設置R0為0,調用延時程序TIME0(延時10ms),判斷R0是否等于7,若不是,則加1,繼續發送數據進入循環,直至R=7,即實現的是燈慢慢變亮的一個過程。當中斷0和中斷1同時產生時,根據優先級,屏蔽掉中斷1,開啟中斷0。調用延時程序TIME0(延時1分鐘),查詢中斷0控制位;防止人體不小心到達熱釋電探測器的探測范圍內,采用延時程序來排除干擾,防止誤判。若為0,則返回主程序;若為1,則向P0高四位發送數據,使燈保持原來最亮狀態,調用延時程序TIME1,判斷R0是否等于0,若是則中斷返回,若不是,則R0減1,繼續循環,直至R0等到于0,此程序的目的是實現燈慢慢變暗。 三、 實驗結果: 本系統的主要設計思想來源于生活。臺燈是一般家庭的生活必需品,但由于經常忘記關燈而造成巨大的能源浪費。全球這么多臺燈,估算一下,消耗能源可觀。另一個是作為一個必需品,當然要使生活變得更方便,省去了黑暗中開燈的麻煩,并且可以糾正坐姿。本系統在實驗室進行了實物實驗。熱釋電紅外探測器1的距離是4m左右(距離可調),主要是因為般來說是門離書桌的距離;以便黑暗中時人一到門口則啟動,省去了開燈的麻煩,用戶可以根據自己的實際情況進行距離調節。熱釋電紅外探測器1的距離是10cm左右(距離可調),主要考慮是當學習時,有時坐姿不正,引起身體離桌面太近,容易引起近視,此時臺燈發出警告,提醒注意,若在設定的時間內未離開,則強制熄滅。有時人學習累了,趴在桌子上睡覺,而忘了關燈,這時系統就會檢測到,從而啟動延時程序,一段時間過后,臺燈就會自動熄滅。 本系統的主要技術難點在于對人體紅外信號的采集及處理。由于采用的是熱釋電紅外傳感器,當人體進入其感應范圍時,傳感器就會產生幾mV信號,然后通過以BISS0001為中心的信號處理電路,對信號進行二次放大,并濾波,以防止外界的信號產生干擾。信號經過BISS0001后從而轉化為數字信號輸出,便于用單片機進處理。 本系統制作的主要設計源泉來源于生活,因此創新之處也在于處理生活中一些比較常見的問題。以專門感應人體紅外信號的熱釋電紅外傳感器為基礎,以BISS0001信號處理電路,利用單片機進行處理,以達到便于控制的目的。當房間亮度不夠時,且有人在附近時,臺燈便會自動點亮,省去了黑暗中摸開關的麻煩;當學習時由于靠桌面太近,造成坐姿不正,系統就會提示,以糾正坐姿,防止近視;當學習太累了時,趴在桌子上睡會兒時,臺燈就會自動熄滅;當無人在時,系統也會使臺燈自動熄滅,以達到節省能源的目的。除了硬件部分采用防干擾技術外,在軟件中也采用了防干擾技術,當中斷0產生時,并不立即執行,而是對其進行延時,防止由于不小心而進入到探測器2的范圍內,以免產生誤判。 雖然本系統以達到了使生活方便的目的,但是電路還是不夠簡單。因為當有多個熱釋電紅外傳感器時,就需要相應的信號檢測電路。改進之處在于用一個信號處理電路同時控制多個傳感器。還有一個不足之處在臺燈開啟時,產生的光強容易干擾光敏電阻對環境光強的判別,引起誤判,現在的處理方法是傳感器部分與控制部分單獨分開放置。
參考文獻: 1) 胡學海主編 單片機原理及應用系統設計 電子工業出版社 北京 2005年8月 2) 趙繼文主編 傳感器與應用電路設計 科學出版社 北京 2002年 3) 黃繼昌主編 電子元器件應用手冊 人民郵電出版社 北京 2004年
實驗心得: 本系統的設計思想來源于生活,所以所具有的功能也是為生活的方便而設置的。因此就產生了制作智能臺燈的想法。首先在與老師的商討下,對項目進行了認證,確定了項目的可行性,列出了項目的主要難點及可能出現的問題,確定了以后的制作重點。接下來進行構思,列出大體的框架圖。然后根據框架圖用PROTEL畫出電路原理圖。 在對電路原理圖進行了嚴謹的認證后,便開始了焊接電路。由于主要對象是人,因此采用熱釋電紅外傳感器,此傳感器是專門用于接收人體產生的10um左右的信號,相應的利用BISS0001處理其所產生的信號并轉化為可處理的數字信號。在焊接的過程中發現若用到兩個光敏電阻,則可能使單片機產生誤判。因此將兩個光敏電阻合到一塊,不僅簡化了電路,還提高了系統的穩定性。當信號檢測及處理部分完成后,便開始試檢,以確定電路焊接正確與否。在對電路進行調試的過程中,必須排除外界的干擾,尤其是附近熱源的紅外線干擾。首先將BISS0001設置成不可重復觸發方式,比較長延遲時間,以便得到穩定的輸出信號,并把接收光電池的引腳接成高電平,使BISS0001認為一直處于黑暗之中,便于觀測。在運行時,當人遠離時,BISS0001輸出低電平,符合要求;但是在人靠近后信號出現不規則的變化。利用示波器對BISS0001的各個管腳進行測量,發現信來源的主要不穩定因于傳感器,因此,在目前沒有更好的更換下,只好采用目前的熱釋電傳感器。 接下來做的是數字電路部分,主要80C51、74LS138、LM324、DAC0832組成。數字電路部分比較簡單,焊接完成后,編寫一個新程序,對各個端口進行掃描,從而顯示數字電路是可行的。 在對電路部分進行了初步的檢測后,解決了比較主要的問題;因此依據硬件編寫相應的程序,經過KEIL軟件仿真后,語法上無錯誤,各個端口的數據正是所需要的,最后是將軟件燒到單片機中,然后運行整個系統。 通過本次實驗,熟悉了電路的開發和制作及文檔的編著寫。在實驗中也遇不少難題,但通過各種方法進行了解決。 附錄: 源程序: ORG 0000H AJMP MAIN ORG 0003H AJMP DET1 ;遠探測器 ORG 0013H AJMP DET0 ;近探測器
ORG 0050H MAIN: MOV P0, #00000001B ;置初始值DET0,DET1可重復觸發,燈滅 MOV TMOD, #00000010B ;方式2,8位自動重裝計數器 MOV TCON, #00010000B ;開啟計數器T0 MOV IE, #10000111B ;開啟所有中斷 SJMP $ ;燈慢慢變亮 DET1: MOV P0, #00000001B CALL TIME0 ;燈亮度延時10ms MOV P0, #00000011B CALL TIME0 MOV P0, #00000101B CALL TIME0 MOV P0, #00000111B CALL TIME0 MOV P0, #00001001B CALL TIME0 MOV P0, #00001011B CALL TIME0 MOV P0, #00001101B CALL TIME0 MOV P0, #00001111B CALL TIME1 RETI ;燈慢慢熄滅 DET0: CALL TIME1 ;延時1分鐘 MOV TCON, A ANL A, #1 JZ LOOP MOV P0, #00001111B CALL TIME0 MOV P0, #00001101B CALL TIME0 MOV P0, #00001011B CALL TIME0 MOV P0, #00001001B CALL TIME0 MOV P0, #00000111B CALL TIME0 MOV P0, #00000101B CALL TIME0 MOV P0, #00000011B CALL TIME0 MOV P0, #00000001B RETI LOOP: ret ;延時10ms TIME0: SETB TR0 MOV R0, #250 MOV R1, #20 D_1: DJNZ R0, D_1 MOV R0, #250 DJNZ R1, D_1 CLR TR0 RET ;延時1分鐘 TIME1: SETB TR0 MOV R0, #250 MOV R1, #200 MOV R2, #60 D_2 : DJNZ R0, D_2 MOV R1, #200 DJNZ R1, D_2 MOV R2, #60 DJNZ R2, D_2 CLR TR0 RET
END
|