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