陶曾杰,袁可可,李世友,付定元
(湖南信息學(xué)院電子科學(xué)與工程學(xué)院,湖南 長沙 410151)
如今,人們對臺燈的要求不再是單一的照明,而是追求照明的個(gè)性化和智能化[1].而市面上大部分臺燈只具備簡單的開/關(guān)功能,智能式多功能臺燈較少,人離開時(shí)若忘記關(guān)燈,燈會(huì)一直開啟,造成電能的浪費(fèi).為了解決這個(gè)問題,筆者擬設(shè)計(jì)一套基于藍(lán)牙的多功能臺燈控制系統(tǒng).
基于藍(lán)牙的多功能臺燈控制系統(tǒng)是通過傳感器檢測周圍環(huán)境,再利用微控制器進(jìn)行分析處理,它不僅可以實(shí)現(xiàn)臺燈的自動(dòng)開/關(guān)、亮度調(diào)節(jié)功能,還可以根據(jù)使用者的坐姿和使用時(shí)間作出語音提醒.臺燈控制系統(tǒng)的設(shè)計(jì)框架如圖1所示.
圖1 臺燈控制系統(tǒng)設(shè)計(jì)框架Fig.1 Block Diagram of Lamp Control System
2.1.1 紅外檢測 紅外檢測電路采用HC-SR501,檢測周圍是否有人.當(dāng)檢測范圍內(nèi)有人時(shí),紅外模塊2腳輸出一個(gè)高電平,經(jīng)R14限流后導(dǎo)通三極管,此時(shí)三極管集電極接地,即PEOPLE端(與P2.2相連)為低電平,LED D5點(diǎn)亮,單片機(jī)根據(jù)PEOPLE為低電平判斷有人.R13為上拉電阻,當(dāng)檢測范圍內(nèi)無人時(shí),2腳輸出低電平,三極管截止,PEOPLE通過上拉電阻變成高電平.紅外檢測電路如圖2所示.
圖2 紅外檢測電路Fig.2 Infrared Detection Circuit
2.1.2 光感檢測 采用光敏電阻根據(jù)外界光照強(qiáng)度進(jìn)行光感檢測.當(dāng)周圍環(huán)境光照強(qiáng)度發(fā)生改變時(shí),光敏電阻兩端電壓也發(fā)生相應(yīng)變化[2].光敏電阻與1個(gè)100 kΩ的電阻形成分壓電路,傳輸至單片機(jī),單片機(jī)將其值與給定值進(jìn)行比較分析,判斷光照強(qiáng)度,再通過PWM調(diào)節(jié)燈光的強(qiáng)弱.
2.1.3 超聲波測距 超聲波測距采用HC-SR04,用來檢測使用者與桌面之間的距離.測距時(shí),主控芯片通過Trig引腳發(fā)送1個(gè)10 μs的脈沖,啟動(dòng)超聲波測距模塊,模塊內(nèi)部會(huì)自動(dòng)發(fā)射8個(gè)40 kHz的方波,并檢測是否有信號返回.當(dāng)檢測到返回信號時(shí),Echo引腳會(huì)輸出1個(gè)高電平,該高電平持續(xù)的時(shí)間即為超聲波從發(fā)射到返回的時(shí)間[3].
2.2.1 語音播報(bào) 語音播報(bào)采用NY3P035語音芯片,用來進(jìn)行倒計(jì)時(shí)結(jié)束后的語音提醒,以及使用者使用時(shí)間過長、坐姿不正確等提醒.NY3P035內(nèi)置1組PWM輸出器,可直推喇叭,外圍電路相對簡單,僅需要耦合1個(gè)104電容即可.語音播報(bào)電路如圖3所示.
圖3 語音播報(bào)電路Fig.3 Voice Broadcast Circuit
2.2.2 LED驅(qū)動(dòng)電路 為了方便,LED驅(qū)動(dòng)采用USB接口輸出,用來連接負(fù)載.當(dāng)單片機(jī)LED端口輸出低電平時(shí),經(jīng)過限流電阻,導(dǎo)通三極管,此時(shí)J6的+極和三極管的集電極相連,J6+極接入+5 V電源,LED開始工作.當(dāng)單片機(jī)LED端口輸出高電平時(shí),三極管截止,J6不得電,負(fù)載停止工作.LED驅(qū)動(dòng)電路如圖4所示.
圖4 LED驅(qū)動(dòng)電路Fig.4 LED Drive Circuit
2.2.3 顯示及報(bào)警 顯示采用OLED屏,主要顯示倒計(jì)時(shí)時(shí)間、使用者與臺燈之間的距離、外界光線強(qiáng)度/燈光亮度等.超聲波測量的距離小于預(yù)設(shè)值時(shí)通過蜂鳴器進(jìn)行報(bào)警,提醒使用者注意坐姿.
藍(lán)牙通信采用HC-05藍(lán)牙模塊.燈作為從端設(shè)備,可以與手機(jī)主控制端建立雙向通信,臺燈OLED屏顯示的數(shù)據(jù)傳送到手機(jī)端并顯示,手機(jī)端對燈下達(dá)控制命令.
系統(tǒng)首先初始化,顯示屏顯示倒計(jì)時(shí)時(shí)間、外界光線強(qiáng)度/燈光亮度、使用者與臺燈之間的距離,然后根據(jù)自動(dòng)模式、手動(dòng)模式或藍(lán)牙控制進(jìn)行不同的操作.自動(dòng)模式下,紅外感應(yīng)傳感器檢測是否有人,有則開啟臺燈并開始倒計(jì)時(shí).倒計(jì)時(shí)結(jié)束時(shí)喇叭播報(bào)提醒休息,此時(shí)需要手動(dòng)復(fù)位,關(guān)閉臺燈并重置倒計(jì)時(shí);若此時(shí)使用者已離開,則系統(tǒng)會(huì)有1個(gè)30 s的延時(shí),延時(shí)結(jié)束后檢測到無人便自動(dòng)關(guān)燈.手動(dòng)模式下,使用者通過旋鈕開啟臺燈并調(diào)節(jié)亮度.藍(lán)牙控制下,使用者在手機(jī)端開啟臺燈并調(diào)節(jié)亮度.系統(tǒng)主程序流程如圖5所示.
圖5 系統(tǒng)主程序流程Fig.5 Main Flow Chart of System
藍(lán)牙HC-05模塊用來接收數(shù)據(jù)并將數(shù)據(jù)傳輸至單片機(jī),再通過手機(jī)上的藍(lán)牙串口助手發(fā)送數(shù)據(jù).將藍(lán)牙模塊用TTL線與電腦連接,按模塊上的按鍵再上電,進(jìn)入AT模式(圖6).打開電腦串口調(diào)試器,設(shè)置好端口號、波特率,選擇十六進(jìn)制顯示,就可以對藍(lán)牙模塊進(jìn)行調(diào)試了[4].
圖6 AT模式下的測試Fig.6 Test in AT Mode
藍(lán)牙控制App為現(xiàn)成的藍(lán)牙串口助手,它有12個(gè)按鍵,選擇其中4個(gè)按鍵作為臺燈的控制按鍵,分別控制臺燈開/關(guān)、燈光調(diào)亮、燈光調(diào)暗和自動(dòng)/手動(dòng)模式切換.將串口助手和藍(lán)牙模塊進(jìn)行配對連接,模塊上的LED燈由快閃變?yōu)?次/s的閃爍,表示連接成功.
在藍(lán)牙調(diào)試中,利用串口工具將藍(lán)牙模塊與電腦相連,通過串口調(diào)試助手對藍(lán)牙信息進(jìn)行檢測和修改.在AT模式下可以查看藍(lán)牙地址和配對密碼.手機(jī)藍(lán)牙串口助手與藍(lán)牙模塊配對后就發(fā)送數(shù)據(jù),調(diào)試助手接收并顯示收到的數(shù)據(jù),藍(lán)牙配對測試如圖7所示.圖8示出了手機(jī)藍(lán)牙串口助手界面,藍(lán)牙控制選擇使用4個(gè)按鍵,顯示4段數(shù)據(jù).
圖7 藍(lán)牙配對測試Fig.7 Bluetooth-Paired Test
圖8 藍(lán)牙串口助手界面Fig.8 Bluetooth Serial Port Assistant Interface
對硬軟件的整體調(diào)試和藍(lán)牙端的聯(lián)機(jī)測試后,上電開始實(shí)際使用.使用者通過按鍵切換自動(dòng)/手動(dòng)模式,并設(shè)置定時(shí)時(shí)間、超聲波閾值等.手動(dòng)模式下,使用者可以直接調(diào)節(jié)燈光亮度;自動(dòng)模式下,紅外感應(yīng)檢測到人就自動(dòng)開燈,再根據(jù)外界光線強(qiáng)度的變化調(diào)節(jié)燈光亮度,當(dāng)超聲波的測量距離小于預(yù)設(shè)值時(shí)會(huì)進(jìn)行報(bào)警提醒.當(dāng)手機(jī)藍(lán)牙終端與臺燈控制系統(tǒng)連接成功后,藍(lán)牙終端通過發(fā)送開/關(guān)燈信號和調(diào)節(jié)燈光亮/暗信號來控制臺燈.基于藍(lán)牙的多功能臺燈控制系統(tǒng)彌補(bǔ)了現(xiàn)有臺燈功能單一、浪費(fèi)電能的不足.考慮到該系統(tǒng)中手機(jī)控制端App界面利用的是藍(lán)牙串口助手界面,界面顯示不夠豐富,因此筆者之后將對手機(jī)控制端App采用安卓系統(tǒng)設(shè)計(jì)出人性化功能更強(qiáng)大的界面.