祝必梁
摘要:藍(lán)牙報(bào)警器為兩輪電動(dòng)車(chē)控制器。基本功能包含電動(dòng)車(chē)的設(shè)防、撤防、開(kāi)電門(mén)、關(guān)電門(mén)、輪動(dòng)信號(hào)檢測(cè)、鎖電機(jī)信號(hào)輸出。Ble是作為藍(lán)牙報(bào)警器的主控單元。無(wú)感解鎖功能實(shí)現(xiàn)是通過(guò)Ble作為HID設(shè)備和手機(jī)系統(tǒng)層自動(dòng)連接,通過(guò)RSSI信號(hào)強(qiáng)度作為手機(jī)靠近解鎖距離設(shè)置依據(jù)。當(dāng)多個(gè)用戶手機(jī)無(wú)感靠近解鎖,Ble可以通過(guò)IRK對(duì)各手機(jī)進(jìn)行身份識(shí)別。手機(jī)第1次連接BLE時(shí)需要通過(guò)SMP輸入配對(duì)密鑰,并且需要配合APP或者小程序進(jìn)行數(shù)據(jù)鑒權(quán),整個(gè)流程閉環(huán)操作。讓用戶把手機(jī)作為靠近解鎖的鑰匙安全有效,體驗(yàn)方便快捷。
關(guān)鍵詞:藍(lán)牙報(bào)警器;無(wú)感解鎖;HID設(shè)備
近年來(lái)新能源電動(dòng)車(chē)越來(lái)越流行,它的特點(diǎn)首先動(dòng)力是電能,其次相對(duì)與傳統(tǒng)車(chē)它的智能化程度也是它的最大亮點(diǎn)之一[1]。兩輪電動(dòng)車(chē)和新能源車(chē)一樣,傳統(tǒng)報(bào)警器智能化升級(jí)需求越來(lái)越大,智能化改造目前依然處于風(fēng)口之中[2-3]。
1整體設(shè)計(jì)
1.1整體設(shè)計(jì)概述
該系統(tǒng)方案應(yīng)用于電動(dòng)車(chē)藍(lán)牙報(bào)警器和手機(jī)配合使用。解鎖時(shí)無(wú)需打開(kāi)小程序或者 APP ,也無(wú)需刻意拿出手機(jī)。車(chē)主只要帶著手機(jī)靠近,手機(jī)就會(huì)自動(dòng)連接上藍(lán)牙報(bào)警器,藍(lán)牙報(bào)警器通過(guò)rssi強(qiáng)度判斷自動(dòng)撤防,車(chē)主坐車(chē)上按下一鍵啟動(dòng)按鍵就可以把電動(dòng)車(chē)開(kāi)走,真正實(shí)現(xiàn)智能化靠近無(wú)感解鎖方案。
藍(lán)牙技術(shù)是一種短距離無(wú)線通信技術(shù),在兩輪電動(dòng)車(chē)領(lǐng)域由于傳統(tǒng)報(bào)警器智能化提升需求結(jié)合藍(lán)牙技術(shù)成熟穩(wěn)定成本低特點(diǎn),在近幾年內(nèi)迅速發(fā)展,應(yīng)用前景廣闊[4]。本文方案以TelinkBle藍(lán)牙8258芯片作為主控支持 open 開(kāi)發(fā)。TLSR8258X 系列藍(lán)牙內(nèi)嵌LDO和DCDC供電1.8-3.6 V,支持低功耗 :5.3 mA@Rxfullchip,4.8 mA@Tx 0 dBm fullchip,<1 μA@Sleep+SRAM,0.4 μA@Sleep??拷怄i方案Ble主控芯片設(shè)置成 HID( 人機(jī)接口 ) 從機(jī)模式,手機(jī)作為ble主機(jī)可自動(dòng)連接 HID 從機(jī)設(shè)備。Ble藍(lán)牙報(bào)警器與手機(jī)自動(dòng)連接后通過(guò) RSSI 判斷距離,用戶配合 app/ 小程序可以設(shè)置合適的靠近解鎖距離。系統(tǒng)整體框圖如圖 1 所示。
1.2 功能介紹
本文無(wú)感靠近解鎖系統(tǒng)具有以下功能:①Ble藍(lán)牙報(bào)警器枚舉成 HID 設(shè)備,首次配對(duì)后手機(jī)會(huì)自動(dòng)連接Ble報(bào)警器。②實(shí)現(xiàn)手機(jī)通過(guò) SMP 和Ble配對(duì)連接,并通過(guò)小程序或者 APP 數(shù)據(jù)鑒權(quán)安全認(rèn)證客戶合法性。③實(shí)現(xiàn)連接Ble時(shí)可以對(duì)手機(jī)用戶身份識(shí)別(同個(gè)藍(lán)牙報(bào)警器可以注冊(cè)多個(gè)用戶)。④實(shí)現(xiàn)通過(guò)調(diào)節(jié) RSSI 設(shè)置靠近解鎖遠(yuǎn)離上鎖距離,各用戶可自主設(shè)置靠近解鎖距離(RSSI 強(qiáng)度)適配不同手機(jī)和Ble兼容性。⑤實(shí)現(xiàn)上鎖功能閉環(huán)邏輯設(shè)計(jì)。
2 Ble報(bào)警器枚舉成HID設(shè)備
藍(lán)牙設(shè)備中通常把主動(dòng)連接的設(shè)備叫主機(jī),被動(dòng)連接的設(shè)備叫從機(jī)。主機(jī)和從機(jī)建立連接的過(guò)程通過(guò)特定的握手協(xié)議[5]來(lái)完成。連接過(guò)程:從機(jī)廣播發(fā)送 ADV_IND PDU (包含從機(jī)藍(lán)牙地址)主機(jī)發(fā)送掃描請(qǐng)求 SCAN_REQ PDU (包含從機(jī)和主機(jī)藍(lán)牙地址)從機(jī)收到掃描請(qǐng)求后同一個(gè)信道上回復(fù) SCAN_RSP PDU 主機(jī)接收到掃描回復(fù)信息后發(fā)送 CONNECT_REQ PDU 信息廣播者接收到 CONNECT_REQ PDU 后確認(rèn)建立連接指示圖如圖2所示。廣播數(shù)據(jù)包按照ble標(biāo)準(zhǔn)協(xié)議設(shè)置 Appearance Values 可將ble報(bào)警器枚舉成 HID 設(shè)備,例如設(shè)置成0×0180通用遙控器(Generic Remote Control)。
3 SMP密鑰配對(duì)設(shè)置
SMP 配對(duì)方式有4個(gè)級(jí)別的安全等級(jí)。
A:no authenticated and no encryption(model level1)。
B : unauthenticated paring with encryption(model level2)。
C : authenticated paring with Encryption(model level3)。
D : authenticated le secure connections(model level4)。
該系統(tǒng)采用 model level3 Authenticated Paring with Encryption 。Level3通過(guò)加密方式建立連接,可對(duì)身份進(jìn)行驗(yàn)證。每臺(tái)藍(lán)牙報(bào)警器會(huì)匹配一個(gè)配對(duì) pin ,手機(jī)打開(kāi) APP 第1次連接藍(lán)牙報(bào)警器時(shí),會(huì)提示需要輸入配對(duì) pin,輸入正確 pin 后可配對(duì)成功。為了安全設(shè)計(jì)藍(lán)牙報(bào)警器首次連接對(duì)手機(jī)合法身份認(rèn)證不僅要輸入正確的配對(duì) pin,同時(shí)也要在30 s 內(nèi)連接上 APP 進(jìn)行數(shù)據(jù)鑒權(quán)。如果沒(méi)有在規(guī)定的時(shí)間內(nèi)進(jìn)行數(shù)據(jù)鑒權(quán),藍(lán)牙報(bào)警器也會(huì)認(rèn)為時(shí)非法設(shè)備連接,自動(dòng)刪除存儲(chǔ)在Ble芯片 flash 中的手機(jī)的配對(duì)信息,手機(jī)無(wú)法使用 HID 自動(dòng)連接功能。
4手機(jī)身份識(shí)別
藍(lán)牙報(bào)警器設(shè)置可以同時(shí)有4個(gè)車(chē)主用戶,1個(gè)主車(chē)主、3個(gè)分享車(chē)主。為了主用戶對(duì)分享用戶管理,同時(shí)各車(chē)主之間靠近解鎖參數(shù)設(shè)置互不影響,Ble需要連接手機(jī)時(shí)對(duì)手機(jī)身份進(jìn)行識(shí)別。手機(jī)身份的唯一碼采用了 SMP 中的 IRK(Identity Resolving Key)作為唯一標(biāo)識(shí)。每臺(tái)手機(jī)包含結(jié)構(gòu)體信息,結(jié)構(gòu)體定義如下:
struct{
u8 phone_IRK[16];
u8 auto_on;
u8 Hid_on_rssi;
u8 Hid_off_rssi;
}phone_info_t;
IRK 作為手機(jī)身份識(shí)別的唯一標(biāo)識(shí)符。auto_on靠近解鎖開(kāi)關(guān)標(biāo)志位,auro_on=1該手機(jī)打開(kāi)靠近解鎖,auto_on=0沒(méi)有打開(kāi)靠近解鎖功能、靠近解鎖rssi信號(hào)強(qiáng)度,大于該信號(hào)強(qiáng)度可以作為解鎖條件、遠(yuǎn)離上鎖rssi信號(hào)強(qiáng)度,小于該信號(hào)強(qiáng)度可作為上鎖條件。
藍(lán)牙報(bào)警器打印不同連接手機(jī)的 IRK 的 log 信息如圖2所示。
5 RSSI距離換算
每臺(tái)手機(jī)結(jié)構(gòu)體信息成員Hid_on_rssi和Hid_off_ rssi是藍(lán)牙報(bào)警器靠近解鎖,遠(yuǎn)離上鎖的的判斷依據(jù)。它是由手機(jī)通過(guò) APP 或者小程序下發(fā)給藍(lán)牙報(bào)警器的。 RSSI 換算距離公式: d =10^((abs(RSSI)-A)/(10n ))。其中 A 為距離設(shè)備1 m 時(shí)的 RSSI 絕對(duì)值。n 為環(huán)境衰減因子。按照 BLE 報(bào)警器和1臺(tái)手機(jī)測(cè)試換算 A =50,n =3.325. RSSI 和 d 具體換算公式: d =10^((abs(RSSI)-50)/( 103.325)); RSSI = log10(d)*(10*3.325)+50。 RSSI 距離換算函數(shù)圖如圖3所示。圖中表明 RSSI 信號(hào)強(qiáng)度和距離非線性,-22~-23 db對(duì)應(yīng)的距離差是1 cm ;-57 db ~-58 db對(duì)應(yīng)的距離差是9 cm。
報(bào)警器靠近解鎖距離 d1設(shè)置范圍1~3 m,遠(yuǎn)離上鎖的距離 d2=d1+3( m )。按照 RSSI 公式理論換算部分距離和 RSSI 對(duì)應(yīng)表格如表1所示。
6兼容性問(wèn)題
BLE 和手機(jī)建立連接時(shí) RSSI 的信號(hào)強(qiáng)度會(huì)因手機(jī)兼容性和 BLE 安裝環(huán)境不同而不同。不同手機(jī)和不同安裝環(huán)境都會(huì)影響 RSSI 信號(hào)強(qiáng)度。為了解決兼容性問(wèn)題,APP 可以在感應(yīng)解鎖頁(yè)面通過(guò)進(jìn)度條設(shè)置,不同手機(jī)可以通過(guò)進(jìn)度條設(shè)置各自合適的感應(yīng)解鎖距離。APP 通過(guò)距離換算出對(duì)應(yīng)的 RSSI 信號(hào)強(qiáng)度下發(fā)給藍(lán)牙報(bào)警器,藍(lán)牙報(bào)警器則通過(guò)判斷連接的手機(jī) IRK 選出該手機(jī)的信號(hào)強(qiáng)度執(zhí)行靠近解鎖操作。不同手機(jī)不同 RSSI 靈敏度,這就可以有效解決各種因素帶來(lái)的兼容性誤差影響。感應(yīng)解鎖界面設(shè)計(jì)如圖4所示。
7靠近解鎖閉環(huán)設(shè)計(jì)流程
根據(jù) HID 的 RSSI 靠近解鎖和遠(yuǎn)離上鎖需要在電動(dòng)車(chē)電門(mén)關(guān)閉的前提下實(shí)施,為了閉環(huán)設(shè)計(jì)當(dāng)用戶電動(dòng)車(chē)電門(mén)真的忘記關(guān)閉那么引入自動(dòng)落鎖邏輯來(lái)實(shí)現(xiàn)自動(dòng)關(guān)閉電門(mén)。電門(mén) ACC 打開(kāi)超過(guò)5 min 靜止?fàn)顟B(tài)(輪動(dòng)和震動(dòng)傳感器信號(hào)判斷靜止?fàn)顟B(tài)),關(guān)閉 ACC 電門(mén)之后進(jìn)入 hid 靠近解鎖遠(yuǎn)離上鎖邏輯判斷,如果車(chē)主不在附近會(huì)自動(dòng)設(shè)防。這樣的設(shè)計(jì)是讓客戶無(wú)論是在什么情況下,電動(dòng)車(chē)在用戶遠(yuǎn)離后都會(huì)關(guān)閉電門(mén)上鎖,防止被盜風(fēng)險(xiǎn)[6]。閉環(huán)設(shè)計(jì)流程如圖5所示。
8結(jié)束語(yǔ)
基于 BLE 與手機(jī)通信實(shí)現(xiàn)電動(dòng)車(chē)無(wú)感靠近解鎖,通過(guò) HID 手機(jī)自動(dòng)連接藍(lán)牙技術(shù)實(shí)現(xiàn),配對(duì)密鑰加數(shù)據(jù)鑒權(quán)讓系統(tǒng)有安全保證,進(jìn)度條調(diào)整感應(yīng)解鎖距離可以有效解決兼容性誤差問(wèn)題,解鎖上鎖系統(tǒng)閉環(huán)設(shè)計(jì)流程讓用戶不用有忘記關(guān)鎖的煩惱。整套系統(tǒng)實(shí)際測(cè)試安全有效,有效提高用戶體驗(yàn)。
參考文獻(xiàn):
[1]劉瑾.新能源車(chē)發(fā)展勢(shì)頭未減全年有望實(shí)現(xiàn)平穩(wěn)發(fā)展[J].新能源科技,2022(5):7-8.
[2]李建中,高宏.無(wú)線傳感器網(wǎng)絡(luò)的研究進(jìn)展[J].計(jì)算機(jī)研究與發(fā)展, 2008(1):39-44.
[3]余愿,劉芳.傳感器原理與檢測(cè)技術(shù)[M].北京:電子工業(yè)出版社, 2017.
[4]錢(qián)志鴻,楊帆,周求湛.藍(lán)牙技術(shù)原理開(kāi)發(fā)與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006.
[5]諶雙雙,陳澤茂,王浩.一種高效的無(wú)線傳輸層安全握手協(xié)議[J].計(jì)算機(jī)工程,2011,37(16):123-125.
[6]徐光洪,譚巧,李佳怡,等.運(yùn)用NB-IOT技術(shù)的電動(dòng)車(chē)智能防盜報(bào)警系統(tǒng)設(shè)計(jì)[J].寧德師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2021,33(1):30-35.