藍(lán)日衛(wèi),梁 飄,李秋紅,梁浩然
(廣西理工職業(yè)技術(shù)學(xué)院,廣西 崇左 532200)
遙控器是家用電器設(shè)備不可或缺的控制器件,特別是功能較多的現(xiàn)代家用電器,“一機(jī)一控”幾乎成為一種“標(biāo)配”[1]。而隨著遙控器數(shù)量的增加,時常出現(xiàn)遙控器因被隨意放置或家中小朋友玩耍而丟失或難找等現(xiàn)象;另外,對于家中有正在上學(xué)而迷戀電視的小朋友,因家長忙于工作無法限制其看電視的時間,也經(jīng)常出現(xiàn)因迷戀看電視而未完成作業(yè),或在放假期間整天看電視,影響小朋友的身心健康等不良現(xiàn)象。如果有一種裝置,集成多種電器遙控器的控制功能,通過手機(jī)對電器設(shè)備的使用情況進(jìn)行控制和限定,便可解決上述遇到的問題。
為了解決上述存在的問題,可設(shè)計一種具有對多種家電設(shè)備進(jìn)行控制和功能設(shè)定的遙控系統(tǒng)對家用電器設(shè)備進(jìn)行個性化控制。該系統(tǒng)主要由單片機(jī)主控模塊、藍(lán)牙通信模塊、紅外收發(fā)模塊和手機(jī)APP 控制軟件四大部分組成,其系統(tǒng)原理方框圖如圖1 所示[2]。其設(shè)計思路如下:將該系統(tǒng)安裝在多個家用電器能同時接收到系統(tǒng)所發(fā)紅外信號的地方,用戶對家用電器設(shè)備進(jìn)行控制前,首先將設(shè)備的遙控器控制指令錄入系統(tǒng)中;當(dāng)系統(tǒng)存儲有設(shè)備的遙控指令后,通過操作裝有系統(tǒng)配套APP 控制軟件的手機(jī)選擇需要控制的設(shè)備,即可對該設(shè)備的定時開關(guān)機(jī)、音量控制及限時使用等功能進(jìn)行控制,從而實現(xiàn)通過一個“遙控設(shè)備”對多個家電設(shè)備進(jìn)行控制的目的,解決一臺家電設(shè)備一臺遙控器出現(xiàn)遙控器丟失(或難找)及不能對設(shè)備進(jìn)行個性化功能控制等問題[3-6]。
根據(jù)上述圖1 系統(tǒng)原理方框圖的設(shè)計思路,該系統(tǒng)的硬件電路原理圖如圖2 所示[1,7-8]。各模塊電路功能及工作原理如下。
該設(shè)計采用STM8L001J3M3 單片機(jī)為主控芯片。該芯片是意法半導(dǎo)體公司生產(chǎn)的超低功耗緊湊尺寸型單片機(jī),采用SO-8 封裝,內(nèi)整合高能的8 位處理器,共8 個引腳,共有6 個通用IO 口,內(nèi)含有1.5 kRAM、8 k 閃存程序、2 kB 數(shù)據(jù)EEPROM、1 個串口、2 個16位通用定時器、一個SPI 串行外設(shè)和1 個I2C 外設(shè)等豐富的外設(shè)資源,工作電壓為1.8~3.6 V,低功耗時電流低至0.3 μA,且成本低,能滿足系統(tǒng)設(shè)計所有功能的開發(fā)需要[6,8]。
在該設(shè)計系統(tǒng)中,STM8L001J3M3 芯片是電路的核心芯片,是數(shù)據(jù)處理和信號控制中心,主要有以下幾個功能:一是與藍(lán)牙模塊建立信號連接,分析和判斷藍(lán)牙模塊傳來的數(shù)據(jù),以便做出相應(yīng)的控制;二是根據(jù)藍(lán)牙模塊傳來的控制指令驅(qū)動紅外發(fā)射管發(fā)出紅外遙控指令,以便對家用電器設(shè)備進(jìn)行控制;三是根據(jù)藍(lán)牙模塊傳來的遙控錄制指令信號控制紅外接收管接收電器設(shè)備原遙控器發(fā)射的紅外控制指令,形成控制指令特征信息保存至芯片內(nèi)部存儲器中,達(dá)到錄制電器設(shè)備遙控指令的目的[9-12]。為了降低系統(tǒng)功耗,當(dāng)主控芯片在規(guī)定時間內(nèi)檢測不到用戶對系統(tǒng)的操作信號時,主控芯片控制整個系統(tǒng)進(jìn)入低功耗模式,僅當(dāng)藍(lán)牙模塊重新被連接時,主控芯片才被喚醒,并控制系統(tǒng)進(jìn)入待命狀態(tài)[12-13]。
紅外收發(fā)模塊包括紅外發(fā)射電路和紅外接收電路2 個電路模塊,其中,紅外發(fā)射電路主要由3 個紅外發(fā)射管(LED1-3)、1 個三極管(Q1)和2 個電阻(R1 和R2)組成,3 個紅外發(fā)射管同時受控于三極管Q1,三極管Q1 的基極經(jīng)過電阻R2 與主控芯片IC1 的第5 個引腳YK 連接,主控芯片發(fā)出的遙控信號經(jīng)過三極管Q1 進(jìn)行電流放大后,驅(qū)動LED1-3 發(fā)射紅外編碼信號,實現(xiàn)對家用電器設(shè)備的遙控控制[1,13]。
紅外接收電路模塊由1 個一體化紅外接收頭J2、上拉電阻R3 和2 個濾波電容C1、C2 組成[12-13]。在遙控指令錄入模式下,將家用電器設(shè)備原遙控器對準(zhǔn)系統(tǒng)的紅外接收頭并按下按鍵,遙控器所發(fā)射的遙控編碼信號被紅外接收頭接收和解碼后通過第2腳(HW_R)將解碼信號傳送到單片機(jī)主控芯片的第2 腳(HW_R),主控芯片對解碼信號進(jìn)行分析后提取該設(shè)備遙控信號的特征信息并保存在內(nèi)部存儲器中,完成電器設(shè)備遙控信號的錄制過程。當(dāng)系統(tǒng)要對家電設(shè)備進(jìn)行控制時,單片機(jī)主控芯片對該設(shè)備的特征信息重新進(jìn)行編碼與調(diào)制,調(diào)制信號通過紅外發(fā)射電路發(fā)射出去,便可對該設(shè)備進(jìn)行紅外遙控控制[11-12]。
為了通過手機(jī)對不同家用電器設(shè)備進(jìn)行選擇和遙控控制,系統(tǒng)以藍(lán)牙通信模塊為通信紐帶,由藍(lán)牙通信模塊將用戶手機(jī)發(fā)射的控制信號傳送給系統(tǒng)主控單片機(jī),再由系統(tǒng)對家用電器設(shè)備進(jìn)行控制[14-15]。系統(tǒng)使用的藍(lán)牙模塊型號為JDY-33,該模塊是一塊經(jīng)典藍(lán)牙+BLE 的微小體串口雙模藍(lán)牙砌塊,功耗低、成本低,V2.2 版本,兼容HC05 藍(lán)牙接收模塊,支持Windows、Linux、android 和IOS 數(shù)據(jù)透傳,其工作電壓為3.0~3.6 V,工作頻段2.4 GHz,調(diào)制方式GFSK,最大發(fā)射功率6 dB,最大發(fā)射距離30 m[12]。
系統(tǒng)中使用的藍(lán)牙模塊僅使用5 個引腳,其中2個引腳為電源腳,分別接3.3 V 電源和電源地;2 個引腳為串口通信接口,與系統(tǒng)單片機(jī)主控芯片的2 個串口引腳RXD 和TXD 交叉連接,即藍(lán)牙通信模塊的TXD 和RXD(第1 和第2 引腳)分別與主控芯片的RXD 和TXD(第1 和第8 引腳)連接,通過串口通信方式與單片機(jī)主控芯片進(jìn)行信號傳遞;最后一個引腳為藍(lán)牙連接狀態(tài)腳STAT,與單片機(jī)主控芯片第7 腳連接,當(dāng)藍(lán)牙未連接時,該腳為低電平,藍(lán)牙連接后為高電平[9-10]。STAT 腳設(shè)為系統(tǒng)退出低功耗工作模式的喚醒信號觸發(fā)引腳,當(dāng)單片機(jī)主控芯片檢測到該腳產(chǎn)生一個高脈沖信號時,系統(tǒng)退出低功耗模式,進(jìn)入正常工作模式。
為了實現(xiàn)對不同家用電器設(shè)備的遙控控制,首先要通過手機(jī)選擇需要控制的設(shè)備,再對該設(shè)備進(jìn)行功能設(shè)定和控制。為此,需開發(fā)一款具有這些控制界面和功能選項的手機(jī)APP 軟件,具體開發(fā)過程如下。
在電腦上安裝E4A 安卓開發(fā)軟件后打開軟件,在工程數(shù)據(jù)的主窗口界面頂部合適位置增加一個標(biāo)簽,在窗口左測“屬性區(qū)”將其標(biāo)題屬性命名為“通用家電遙控器”,作為本窗口的主識別標(biāo)簽。在主識別標(biāo)簽下分別添加“打開藍(lán)牙”“開始搜索”和“退出”3 個軟按鍵,橫向?qū)R置于主識別標(biāo)簽下方;添加一個藍(lán)牙組件,用于連接手機(jī)內(nèi)部的藍(lán)牙模塊;添加一個高級列表框,用于存放手機(jī)藍(lán)牙搜索到的外部藍(lán)牙設(shè)備,以便用戶選擇連接。在高級列表框下方添加“電視機(jī)”“接收器”“空調(diào)機(jī)”和“電風(fēng)扇”等常用家用電器小圖片,在圖片下分別添加標(biāo)簽并命名為相應(yīng)的設(shè)備名稱。設(shè)備圖片標(biāo)簽下添加2 個標(biāo)簽,用于顯示需要控制的設(shè)備,標(biāo)簽右邊添加一個按鍵,以便對選中設(shè)備進(jìn)行搖控開機(jī)或關(guān)機(jī)操作。同樣的操作分別再添加3 個標(biāo)簽和3 個編輯框,標(biāo)簽分別命名為“定時開機(jī):”“定時關(guān)機(jī):”和“限時使用:”,編輯框用于輸入相關(guān)參數(shù)(如定時關(guān)機(jī)的具體時間等),最后分別在3 個編輯框后添加執(zhí)行按鍵,用于確定或取消執(zhí)行該條對話框所設(shè)定的參數(shù)。在界面底部添加一個標(biāo)簽命名為“錄制遙控器指令”,添加一個按鍵,用于執(zhí)行錄入遙控器指令命令。整個APP控制界面的設(shè)計效果如圖3 所示。
圖3 手機(jī)APP 軟件設(shè)計界面
點擊E4A 軟件編輯窗口的代碼區(qū)便可對界面設(shè)計中添加的各控件進(jìn)行代碼編程,實現(xiàn)各控件間的邏輯控制和數(shù)據(jù)運(yùn)算。系統(tǒng)APP 代碼的設(shè)計思路如下。
對于藍(lán)牙的連接控制,主要通過“打開藍(lán)牙”“開始搜索”和“高級列表框”3 個組件進(jìn)行控制。在代碼區(qū)的編程思路為:當(dāng)點擊“打開藍(lán)牙”鍵,系統(tǒng)打開或關(guān)閉手機(jī)的藍(lán)牙開關(guān);當(dāng)藍(lán)牙開關(guān)打開后,點擊“開始搜索”鍵,手機(jī)內(nèi)置的藍(lán)牙模塊搜索周邊的藍(lán)牙設(shè)備,并將搜索到的藍(lán)牙設(shè)備名稱和地址保存在高級列表框中,當(dāng)高級列表框中出現(xiàn)需要連接的設(shè)備時,點擊列表右邊的“連接”鍵便可連接該設(shè)備;在連接狀態(tài)下,點擊“斷開”便可斷開手機(jī)與設(shè)備的連接。
家電設(shè)備遙控信號的錄制——在APP 界面中選擇需要錄制的設(shè)備類型后,點擊“錄入”鍵,系統(tǒng)進(jìn)入遙控信號錄入模式。對已錄入搖控信號家電設(shè)備的控制——手機(jī)與設(shè)備連接成功后,點擊列表框下方需要控制的設(shè)備(如電視機(jī)等),點擊“開/關(guān)”鍵,便可對該電器設(shè)備進(jìn)行開/關(guān)操作;同理,對定時開機(jī)等功能進(jìn)行設(shè)定后,點擊其后面的按鍵便可對電器設(shè)備進(jìn)行功能設(shè)定,實現(xiàn)限時使用等個性化功能控制。
對系統(tǒng)的測試包括手機(jī)APP 應(yīng)用軟件的運(yùn)行測試、遙控指令信號的錄入測試和手機(jī)通過系統(tǒng)對不同家用電器設(shè)備的控制測試。測試過程:將E4A 安卓軟件設(shè)計出的APP 應(yīng)用程序安裝到安卓手機(jī)上,應(yīng)用程序能順利安裝完成,點擊搜索按鍵能搜索到周邊的藍(lán)牙設(shè)備,并在高級列表框中顯示,APP 應(yīng)用程序運(yùn)行正常,不出現(xiàn)卡頓或死機(jī)現(xiàn)象。在手機(jī)距離系統(tǒng)10 m 范圍內(nèi),手機(jī)APP 每次都能順利與系統(tǒng)的藍(lán)牙通信模塊建立連接,依次點擊手機(jī)APP 界面上的“電視機(jī)”和“錄入”鍵,系統(tǒng)能進(jìn)入遙控器指令錄入模式,將電視機(jī)的遙控器對準(zhǔn)系統(tǒng)的紅外接收頭并按下遙控開關(guān)鍵,紅外編碼信號能被單片機(jī)主控芯片讀取,搖控特征信息能正確存入到芯片內(nèi)部存儲器中,手機(jī)APP 界面能收到錄入成功的反饋消息;同理,依次點擊手機(jī)APP界面上的“空調(diào)機(jī)”和“錄入”鍵,使用空調(diào)遙控器完成錄入操作,手機(jī)APP 界面同樣能收到錄入成功的消息,遙控信號錄制功能正常。遙控器信號錄入完成后,在手機(jī)APP 界面上依次點擊“電視機(jī)”和“開/關(guān)”鍵,電視機(jī)能被打開或關(guān)閉;依次點擊“空調(diào)機(jī)”和“開/關(guān)”鍵,空調(diào)機(jī)也能被打開或關(guān)閉。經(jīng)過多次測試與實驗發(fā)現(xiàn),在無墻體遮擋的10 m 范圍內(nèi),無論是錄入功能還是遙控功能,用戶通過手機(jī)APP 軟件能順利無阻地對家用電器設(shè)備進(jìn)行開關(guān)機(jī)操作和功能設(shè)定,且系統(tǒng)運(yùn)行穩(wěn)定,手機(jī)APP 應(yīng)用程序無卡頓或死機(jī)現(xiàn)象。
本文基于STM8 單片機(jī)為系統(tǒng)主控芯片設(shè)計了通用家電遙控系統(tǒng),通過配套設(shè)計的手機(jī)APP 應(yīng)用程序不僅能錄入家用電器設(shè)備的遙控信號,也能對多種不同的家用電器設(shè)備進(jìn)行紅外遙控開關(guān)機(jī)、定時關(guān)機(jī)和限時使用等常規(guī)遙控操作和功能設(shè)定,完美實現(xiàn)一機(jī)多控的綜合性遙控功能,解決了因遙控器多而出現(xiàn)遙控器丟失、難找,以及不能很好對家電設(shè)備進(jìn)行限時使用和個性化控制等問題。