基于Android手持設(shè)備的智能家居遙控系統(tǒng)研制
摘要:論述基于安卓(Android)智能手持設(shè)備的智能遙控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。實(shí)現(xiàn)了對智能電視的遙控。提出并實(shí)現(xiàn)了新穎的基于近場通信(Near Field Communication, NFC)和二維碼的智能遙控器與受控設(shè)備之間的初始化綁定配對方法,以實(shí)現(xiàn)安全便捷的通信連接。該設(shè)計(jì)可移植到智能空調(diào)等智能家居設(shè)備中,以實(shí)現(xiàn)多功能的智能家居設(shè)備遙控。
本文引用地址:http://www.ex-cimer.com/article/274747.htm引言
隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能家居設(shè)備、智能手機(jī)、平板電腦、個(gè)人電腦等可由無線局域網(wǎng)(Wireless-Fidelity, WiFi)等無線通信技術(shù)彼此互聯(lián)。在此基礎(chǔ)上,可以通過在智能手機(jī)或平板電腦上運(yùn)行專門的應(yīng)用(Application, APP)軟件遠(yuǎn)程控制智能電視、空調(diào)、個(gè)人電腦等智能家居設(shè)備[1-2],這時(shí)智能手機(jī)相當(dāng)于一個(gè)多功能智能遙控器,且較傳統(tǒng)遙控器更加簡單易用、通用性強(qiáng)、節(jié)省了傳統(tǒng)遙控器的材料消耗。本文設(shè)計(jì)實(shí)現(xiàn)了基于安卓(Android)智能手機(jī)的智能遙控系統(tǒng),實(shí)現(xiàn)了對智能電視的遙控,提出并實(shí)現(xiàn)了新穎的基于近場通信[3]結(jié)合二維碼的智能遙控器與受控設(shè)備之間的初始化綁定配對方法,以實(shí)現(xiàn)安全便捷的通信連接,且適用局域網(wǎng)和廣域網(wǎng)場景。該設(shè)計(jì)可移植到其他類型的智能家居設(shè)備中(如智能空調(diào)等),以實(shí)現(xiàn)對不同類型智能家居設(shè)備的統(tǒng)一遙控。
1 關(guān)鍵技術(shù)
如圖1,整套智能遙控器系統(tǒng)采用客戶端/服務(wù)器(Client/Server, C/S)架構(gòu)。作為遙控器本身,Android智能手機(jī)上運(yùn)行控制端軟件,負(fù)責(zé)向受控端發(fā)送控制指令。Android智能電視上運(yùn)行受控端軟件,負(fù)責(zé)接收、解碼、執(zhí)行來自遙控器的遠(yuǎn)程控制指令??刂贫伺c受控端的連接是基于套接字(Socket)技術(shù)[4],底層基于互聯(lián)網(wǎng)協(xié)議(Internet Protocol, IP)和WiFi無線連接技術(shù)。首次使用時(shí),為了避免非法訪問和追求更高的安全性,需確保控制端、受控端在同一局域網(wǎng)中,并通過專門設(shè)計(jì)的基于NFC/二維碼的綁定技術(shù)建立通信連接。建立綁定關(guān)系后,受控端和遙控器端將自己的介質(zhì)訪問控制(Media Access Control, MAC)地址、IP地址、設(shè)備類型(遙控器或受控設(shè)備)等信息發(fā)送至云端服務(wù)器,云端服務(wù)器負(fù)責(zé)維護(hù)遙控器與受控設(shè)備之間的綁定關(guān)系,并在廣域網(wǎng)場景中,轉(zhuǎn)發(fā)來自遙控器且目的地為受控設(shè)備的控制指令包。在局域網(wǎng)場景中,無需云端參與,遙控器與受控設(shè)備可直接通過WiFi技術(shù)彼此發(fā)包通信。
2 設(shè)計(jì)與實(shí)現(xiàn)
2.1 初始化與綁定
智能電視帶有集成TCP/IP和Web協(xié)議的嵌入式WiFi模塊。上電后,嵌入式WiFi模塊自動(dòng)進(jìn)入工作狀態(tài)并處于熱點(diǎn)模式。該熱點(diǎn)的名稱、接入密碼以及主頁IP地址信息事先需告知用戶。用戶首次使用時(shí)需據(jù)此配置手機(jī)WiFi參數(shù)以建立底層通信連接。非首次使用時(shí),用戶可直接通過手機(jī)的WiFi聯(lián)網(wǎng)功能和瀏覽器以Web網(wǎng)頁方式訪問、配置嵌入式WiFi模塊。若用戶配置打開電視機(jī)的選項(xiàng)為開啟狀態(tài),則嵌入式WiFi模塊通過串口向電視主板發(fā)送喚醒信號(hào),進(jìn)而啟動(dòng)智能電視開機(jī)。關(guān)機(jī)時(shí),用戶會(huì)通過手機(jī)上基于Socket客戶端通信協(xié)議的遙控器軟件發(fā)送關(guān)機(jī)指令,智能電視后臺(tái)Socket服務(wù)器端軟件收到并判斷出是關(guān)機(jī)指令后,進(jìn)行關(guān)機(jī)操作。開機(jī)后,手機(jī)與智能電視通過WiFi密碼接入用戶私有的家庭無線局域網(wǎng)中,避免了非法用戶對智能電視的訪問。另外,傳統(tǒng)紅外/藍(lán)牙遙控器與電視在首次使用時(shí),需要進(jìn)行對碼配對操作,之后雙方建立起封閉的控制與被控關(guān)系。如果不進(jìn)行該操作,遙控器發(fā)出的指令可能會(huì)被多個(gè)受控設(shè)備接收,進(jìn)而可能觸發(fā)對這些非目標(biāo)設(shè)備的誤控制。因此電視開機(jī)后需要進(jìn)行智能手機(jī)與智能電視之間的配對,即Socket IP地址與端口的綁定初始化操作,否則受控設(shè)備無法接收來自遙控器的控制指令。傳統(tǒng)的對碼操作需要將遙控器對準(zhǔn)電視機(jī)的紅外/藍(lán)牙接收區(qū)域,進(jìn)而按下遙控器上的特殊按鍵,雙方通過短距離無線通信建立起配對關(guān)系。該過程用時(shí)較長,一般需5秒左右。本文提出并實(shí)現(xiàn)了基于NFC技術(shù)的安全快捷的配對方案,整個(gè)配對過程只需毫秒級(jí)時(shí)間即可完成,大大提高了用戶體驗(yàn)。同時(shí),考慮到攝像頭已成為智能手機(jī)標(biāo)配,而現(xiàn)階段不是每部智能手機(jī)都支持NFC,本文為此開發(fā)了基于攝像頭二維碼掃描的配對方案,以在無法使用NFC技術(shù)的場景下進(jìn)行手機(jī)與電視間的配對操作。
如圖2,智能電視運(yùn)行Android操作系統(tǒng),電視啟動(dòng)后受控端軟件以Service軟件形式在后臺(tái)運(yùn)行[4-5]。該軟件啟動(dòng)后,首先初始化Socket套接字。若為首次使用,將自身的IP地址、MAC地址和端口信息保存到NFC Tag(標(biāo)簽)[6-7]中或在屏幕上生成二維碼,之后在預(yù)先指定的端口監(jiān)聽。
萬能遙控器相關(guān)文章:萬能遙控器代碼
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論