沈熠1,陳章進(jìn)1,2,章鴻斌1,吳志國1
?。?.上海大學(xué) 計(jì)算中心,上海 200444;2.上海大學(xué) 科技發(fā)展研究院,上海 200444)
摘要:針對(duì)企業(yè)目前使用傳統(tǒng)鑰匙維護(hù)管理鑰匙柜存在的集中保管、安全性差等諸多問題,提出了一種基于藍(lán)牙低功耗技術(shù)的維修鑰匙的設(shè)計(jì)。該系統(tǒng)以移動(dòng)終端為中介,企業(yè)可以通過云平臺(tái)差異化管理遍布在各停車場(chǎng)鑰匙柜的維修鑰匙。當(dāng)鑰匙柜發(fā)生故障時(shí),停車人員能夠通過平臺(tái)申請(qǐng)一次緊急開啟鑰匙柜的權(quán)限,使用特質(zhì)感應(yīng)片啟動(dòng)系統(tǒng)后,通過專用APP開啟鑰匙柜。該系統(tǒng)有較好的穩(wěn)定性、安全性,可以有效提升服務(wù)響應(yīng)度,從而提高用戶滿意度。
關(guān)鍵詞:藍(lán)牙低功耗;智慧停車;移動(dòng)互聯(lián)
0引言
國家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)(2008AA000000)隨著社會(huì)經(jīng)濟(jì)的快速發(fā)展,上海等大城市已經(jīng)進(jìn)入城市機(jī)動(dòng)化出行的快速發(fā)展階段,機(jī)動(dòng)車保有量和使用量的增長(zhǎng)遠(yuǎn)遠(yuǎn)超過了停車設(shè)施的增長(zhǎng)[1]。市中心、商業(yè)圈等人口密集區(qū)域停車難的問題嚴(yán)重影響了市民出行。在此環(huán)境下出現(xiàn)了提供代客停車服務(wù)的互聯(lián)網(wǎng)公司,建立線上停車平臺(tái),用戶在服務(wù)區(qū)內(nèi)將機(jī)動(dòng)車和鑰匙交由專職停車員,在用車時(shí)聯(lián)系停車員取車。
停車場(chǎng)內(nèi)建有專用鑰匙柜,以對(duì)應(yīng)寄放用戶的車鑰匙,隨著用戶量的大幅增長(zhǎng),采用人工存取方式帶來的高成本、高風(fēng)險(xiǎn)、高復(fù)雜度制約了市場(chǎng)發(fā)展。基于低功耗藍(lán)牙(Bluetooth Low Energy, BLE)的智能云鑰匙柜應(yīng)運(yùn)而生,停車員使用專用APP完成接單、存放鑰匙柜、現(xiàn)場(chǎng)確認(rèn)等業(yè)務(wù)流程。鑰匙柜配有一把維修鑰匙以應(yīng)對(duì)故障,同樣為了克服人工方式管理維修鑰匙的諸多問題,本文提出了一種安全性高、可靠性強(qiáng)的維修鑰匙解決方案。
1系統(tǒng)架構(gòu)設(shè)計(jì)
1.1系統(tǒng)架構(gòu)
系統(tǒng)主要由云平臺(tái)、移動(dòng)端APP和中控裝置組成,系統(tǒng)架構(gòu)如圖1所示。
本文將重點(diǎn)對(duì)中控裝置進(jìn)行設(shè)計(jì),其工作模式分為維護(hù)模式和普通模式。
(1)維護(hù)模式:該模式下APP可設(shè)置中控裝置的加密模組的私鑰,并將其加密后存儲(chǔ)至云平臺(tái);可接受APP修改BLE模塊參數(shù)。維護(hù)模式包含普通模式的所有功能。
(2)普通模式:接收、識(shí)別、認(rèn)證、響應(yīng)和執(zhí)行APP的打開維修鑰匙柜指令。普通模式下不接受APP的重置加密密鑰的請(qǐng)求以提升系統(tǒng)安全性。
BLE協(xié)議[2]的通用訪問規(guī)范(Generic Access Profile, GAP)中定義了設(shè)備角色。中控裝置為外圍設(shè)備(Peripheral Device),APP則為中心設(shè)備(Central Device)。中控裝置在上電后,發(fā)送廣播信號(hào)等待APP的搜索、連接和數(shù)據(jù)傳輸。通過中控裝置上的開關(guān)能夠切換其工作模式。
1.2工作流程
在安裝及維護(hù)階段,APP通過蜂窩移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),向云平臺(tái)請(qǐng)求對(duì)應(yīng)目標(biāo)停車場(chǎng)及鑰匙柜的32位索引編號(hào)和BLE模塊相關(guān)參數(shù);待中控裝置上電后,搜索并連接,使用特定的通信協(xié)議將上述內(nèi)容發(fā)送給中控裝置;中控裝置在接收到數(shù)據(jù)通信時(shí),識(shí)別指令類型后,執(zhí)行并響應(yīng)。設(shè)置加密模塊后,會(huì)反饋128位當(dāng)前密鑰。APP在接收到密鑰后,經(jīng)過鏈路加密及特定的數(shù)據(jù)加密處理后,發(fā)送回云平臺(tái),云平臺(tái)負(fù)責(zé)解密及持久化。
在正常工作運(yùn)行階段,為了減緩中控裝置的老化速度以及提升安全性,中控裝置處于休眠狀態(tài)。當(dāng)霍爾開關(guān)響應(yīng)磁場(chǎng)變化后,將中控裝置上電,若在隨后的一定時(shí)間內(nèi)未收到APP合法指令,則重新進(jìn)入休眠狀態(tài)。在普通模式下,修改密鑰及BLE參數(shù)等指令仍然視為非法指令。當(dāng)接收到開鎖指令后,通過加解密模塊解密數(shù)據(jù)報(bào)文,以判斷是否符合特定規(guī)則,根據(jù)判斷結(jié)果執(zhí)行開鎖或忽略。
2硬件設(shè)計(jì)與實(shí)現(xiàn)
中控裝置以8051架構(gòu)STC15W404S系列微控制器(MCU)為核心,其內(nèi)置了高精準(zhǔn)時(shí)鐘、一組UART、3個(gè)16位通用定時(shí)器等。其低功耗、高性能、高抗干擾性能等優(yōu)點(diǎn)符合本設(shè)計(jì)要求。
中控裝置電路包括BLE通信電路、霍爾效應(yīng)開關(guān)電路、電源分壓電路、加解密芯片電路和開鎖驅(qū)動(dòng)電路,其硬件電路總體框圖如圖2所示。
2.1BLE通信電路
BLE通信電路主要由CC2541及外圍電路組成。它可根據(jù)要求對(duì)設(shè)備參數(shù)包括發(fā)射功率、廣播間隔、連接間隔、模塊名稱等進(jìn)行靈活配置,以建立一個(gè)鑰匙柜維護(hù)網(wǎng)絡(luò)。TI提供的低能耗協(xié)議棧(BLE-STACK)支持BLE完整的協(xié)議內(nèi)容,其中邏輯電路控制及適配規(guī)范(Logical Link Control and Adaptation Profile, L2CAP)支持的最大傳輸單元(Maximun Transmission Unit,MTU)為23 B。CC2541芯片內(nèi)置的兩組USART,可選擇配置為UART或SPI模式。為了提升中控裝置模塊化程度,降低系統(tǒng)的耦合度,提升系統(tǒng)的穩(wěn)定性,本文的設(shè)計(jì)中使用BLE模塊F9088。該模塊支持Android和iOS手機(jī)操作系統(tǒng)雙向20 B的數(shù)據(jù)透?jìng)?。使?.3 V 電源供電,通過UART接口連接MCU進(jìn)行數(shù)據(jù)交換。原理如圖3所示。
2.2霍爾效應(yīng)開關(guān)電路
維修鑰匙作為鑰匙柜最重要的組成部分之一,需要較高的隱蔽性、可靠性、安全性。隱蔽性要求中控裝置對(duì)外的接口不容易被察覺,傳統(tǒng)的機(jī)械開關(guān)并不能滿足上述要求,本文提出的霍爾效應(yīng)開關(guān)預(yù)先將強(qiáng)磁放入中控裝置,可使用任意外觀形式的含有鐵鈷鎳材質(zhì)的物品觸發(fā)開關(guān)??煽啃苑矫嬉笾锌匮b置能夠在較長(zhǎng)的時(shí)間內(nèi)抗老化,以及根據(jù)實(shí)際需求重啟中控設(shè)備。安全性指中控裝置應(yīng)具備一定的反破解攻擊能力。在正常工作運(yùn)行階段,霍爾效應(yīng)開關(guān)未被觸發(fā)時(shí),APP無法搜索到鑰匙柜。在一個(gè)連接窗口期內(nèi),當(dāng)無法發(fā)送一個(gè)合法的請(qǐng)求時(shí),系統(tǒng)將重新進(jìn)入掉電狀態(tài),此時(shí)需要再次進(jìn)行開關(guān)觸發(fā),此方式可在一定程度防止暴利攻擊。
霍爾感應(yīng)電路[3]選用AKEMD提供的HW-300B線性霍爾IC,通過兩級(jí)LM358運(yùn)放對(duì)信號(hào)進(jìn)行放大。原理如圖4所示。
通過感應(yīng)片觸發(fā)磁場(chǎng)變化后,HALL端產(chǎn)生高電平,使得繼電器吸合,隨后通過分壓電路將12 V分壓后給各模塊使用,系統(tǒng)上電完成。
2.3電源分壓電路
中控裝置的各模塊的工作電壓不一,開鎖驅(qū)動(dòng)電路工作電壓為12 V,MCU的工作電壓為5 V, BLE模塊和加密芯片的工作電壓為3.3 V。同時(shí)MCU需具備控制繼電器關(guān)閉自身電源的功能。輸入電壓為12 V,通過78L05穩(wěn)壓管分壓為5 V電壓,再經(jīng)過PJ6206-332MR穩(wěn)壓管分壓為3.3 V電壓。原理如圖5所示。
2.4加密芯片電路
采用Neowine公司的ENTANGA加密芯片,支持aes128ecb算法[4]的加解密。芯片提供一組400 kb/s的I2C接口,MCU通過通用I/O口與加密芯片連接,使用模擬I2C方式通信。加密芯片的一個(gè)時(shí)鐘周期為250 ns,進(jìn)行一次加解密操作需要1 113個(gè)時(shí)鐘周期,性能符合設(shè)計(jì)需求。MCU與加密芯片的交互如圖6所示。
為了防止惡意篡改加密芯片密鑰,本文提出通過撥碼開關(guān)切換工作模式以提示MCU接受或拒絕修改密鑰指令。原理如圖7所示。
3軟件設(shè)計(jì)
云平臺(tái)負(fù)責(zé)存儲(chǔ)密鑰,以及提供按停車場(chǎng)、編號(hào)等方式查詢密鑰的服務(wù)。APP通過蜂窩移動(dòng)數(shù)據(jù)與云平臺(tái)交互。BLE模塊通過UART建立MCU與APP間數(shù)據(jù)透明傳輸。
3.1微控制器軟件設(shè)計(jì)
MCU主要完成指令識(shí)別、設(shè)置密鑰、開鎖等功能。MCU上電后,對(duì)I/O口、定時(shí)器、UART等片內(nèi)組件進(jìn)行初始化。需要即刻將HOLD端(P3.4)置高以保持供電。啟動(dòng)倒計(jì)時(shí),在該時(shí)間窗口內(nèi)若未收到合法指令,則將HOLD端置低,將電源關(guān)閉,等待下一次上電。開鎖指令驗(yàn)證成功后,在開鎖信號(hào)口上保持0.3 s的高電平將鎖開啟。主程序流程如圖8所示。
3.2BLE通信數(shù)據(jù)透?jìng)?/p>
數(shù)據(jù)透?jìng)鬟^程中,MCU采用中斷方式進(jìn)行UART的收發(fā)。BLE模塊支持的MTU為20 B,將分別開辟20 B的存儲(chǔ)區(qū)域以區(qū)分收發(fā)。一個(gè)MTU的傳輸U(kuò)ART數(shù)據(jù)收發(fā)時(shí)間為:
式中,rbaud是UART的波特率;w為1 B的位數(shù);lMTU為一個(gè)MTU的字節(jié)數(shù) 。當(dāng)rbaud設(shè)置為57 600 b/s時(shí)錯(cuò)誤率較低[5],此時(shí)耗時(shí)約為2.8 ms。
為了兼顧數(shù)據(jù)吞吐量和能耗,BLE通信的連接間隔設(shè)置為100 ms,若UART在該時(shí)間內(nèi)完成一個(gè)MTU的數(shù)據(jù)傳輸,則不影響B(tài)LE通信。
發(fā)送數(shù)據(jù)時(shí),裝載數(shù)據(jù)至發(fā)送緩沖區(qū),將BLE模塊的RTS置低,觸發(fā)UART的發(fā)送中斷,在中斷處理函數(shù)中將各字節(jié)放入U(xiǎn)ART發(fā)送寄存器。完成最后一個(gè)字節(jié)的傳輸后將BLE模塊的RTS置高。
接收數(shù)據(jù)開始后,在中斷處理函數(shù)中將各字節(jié)裝載至接收緩沖區(qū),并檢測(cè)BLE模塊CTS是否被置高以表示一次數(shù)據(jù)接收完成。數(shù)據(jù)接收完成后,向MCU主程序發(fā)送信號(hào)量啟動(dòng)指令識(shí)別任務(wù)。
3.3加解密軟件設(shè)計(jì)
加密模塊通過I2C協(xié)議,提供密鑰設(shè)置、加解密模式選取、加密、解密和測(cè)試功能。
MCU接收到密鑰設(shè)置指令時(shí),首先判斷KEY_GEN(P3.2)口電平以確定中控裝置當(dāng)前是否處于維護(hù)模式,根據(jù)結(jié)果做出拒絕或執(zhí)行處理。設(shè)置密鑰時(shí),發(fā)送4 B加密芯片密鑰生成初始化參數(shù),最后讀取加密芯片寄存器中16 B的當(dāng)前密鑰。
MCU接收到開鎖指令時(shí),根據(jù)交互協(xié)議提取指令中的16 B報(bào)文,經(jīng)解密后驗(yàn)證是否符合協(xié)議,根據(jù)結(jié)果做出拒絕或執(zhí)行處理。首先設(shè)置加密芯片工作模式為解密模式,發(fā)送16 B密文,在一個(gè)解密周期后讀取寄存器中的16 B明文。
4結(jié)論
本文設(shè)計(jì)的基于藍(lán)牙低功耗技術(shù)的維修鑰匙滿足長(zhǎng)時(shí)間待機(jī)抗老化的要求,具有很強(qiáng)的隱蔽性、可靠性,具有較強(qiáng)的安全性以及反暴力破解的能力,能使企業(yè)在云智能鑰匙柜的應(yīng)用中,降低維修的人員成本,提升服務(wù)響應(yīng)速度。在實(shí)際的使用環(huán)境中,距離鑰匙柜1 m的范圍內(nèi),信號(hào)穩(wěn)定,系統(tǒng)響應(yīng)速度快。預(yù)留了升級(jí)端口,滿足后期交互協(xié)議的定期升級(jí),以進(jìn)一步提升系統(tǒng)的安全性。
參考文獻(xiàn)
?。?] 關(guān)于推進(jìn)上海市停車行業(yè)信息化工作的實(shí)施意見(滬交貨[2014]72號(hào))[R]. 上海:上海市交通港口局,上海市發(fā)展改革委員會(huì),上海市經(jīng)濟(jì)信息化委員會(huì),2014.
[2] Bluetooth SIG. Bluetooth specification V4.0[EB/OL]. (2010 06 30)[2016 04 20] https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=229737.
?。?] 彭業(yè)輝.CMOS高精度霍爾開關(guān)電路設(shè)計(jì) [D]. 上海:上海交通大學(xué),2014.
[4] National Institute of Standards and Technology (NIST). Federal information processing standards PUBS 127[EB/OL]. (2001 11 26)[2016 04 20] http://csrc.nist.gov/publications/fips/fips197/fips197.pdf.
?。?] Texas Instruments Inc. CC253x/4x user’s guide (Rev.F) [EB/OL]. (2014 04 09)[2016 04 20] http://www.ti.com/litv/pdf/swru191f.
藍(lán)牙低功耗相關(guān)文章
更多 >>- Atmosic 聯(lián)手 Globalscale發(fā)布業(yè)界最低功耗的藍(lán)牙低功耗模塊
- Dialog發(fā)布最強(qiáng)無線MCU:支持藍(lán)牙5.1尋向功能,可實(shí)現(xiàn)厘米級(jí)定位!
- Dialog推出首款具有系統(tǒng)在線編程功能的可配置混合信號(hào)IC
- BLE Mesh網(wǎng)絡(luò)協(xié)議綜述
- 基于藍(lán)牙低功耗技術(shù)的維修鑰匙設(shè)計(jì)
- 工業(yè)應(yīng)用中的藍(lán)牙低功耗
- Aruba告訴你:什么是全閉環(huán)移動(dòng)體驗(yàn)
- 使用Nordic Semiconductor nRF51822 SoC的網(wǎng)狀網(wǎng)