王雨佳, 吳逸豪, 張 輝
(北京工業大學 信息學部,北京 100124 )
“找鑰匙”在日常生活中幾乎是困擾每個人的小問題,雖然不會嚴重影響生活,但確實給人們帶來了不小的麻煩。目前市面上智能鑰匙扣并不多見,且大多數智能鑰匙扣用戶體驗感不佳?,F存的智能鑰匙扣大多存在一些問題如操作并不便捷,需要單獨下載App安裝后才可使用;使用過程中出現“斷連”現象,導致智能鑰匙扣的功能無法實現;沒有充電功能,需要定期購買電池進行更換;定位不準確,手機內置地圖上顯示智能鑰匙扣的位置與實際位置相差較大;功能比較單一,僅有查找鑰匙扣的功能;外觀過于笨重,沒有設計感。
因此,針對這些問題,構思設計了一種基于藍牙指紋定位的智能鑰匙扣,實現了手機控制終端操作便捷、鑰匙扣精確定位、藍牙穩定連接、充電以及近場通信(near field communication,NFC)代替門禁卡等功能。同時選用盡可能小的元件,使智能鑰匙扣的體型較小,滿足大眾的審美需求。
智能鑰匙扣的主要功能如下:位置查詢、鈴聲提醒、電量提醒、一鍵報警、門禁功能。智能鑰匙扣的核心模塊采用STM32L151C8T6芯片,使用鋰電池進行供電。STM32通過GPS模塊,獲取鑰匙扣當前的位置信息,在使用過程中將鑰匙扣的精確位置通過手機反饋給用戶,同時可配合鈴聲功能對鑰匙扣進行更快速定位[1]。系統框圖如圖1所示。

圖1 系統框圖
硬件電路部分主要分為電源模塊、GPS模塊、藍牙模塊、NFC模塊、核心模塊。
鑰匙扣主芯片選取STM32L151C8T6,其工作電壓為1.65~3.6 V,因此,需要選取穩壓器保證電池提供的電壓穩定在其工作范圍內。選用SPX1117三端穩壓器將電池電壓穩定在3.3 V左右。而且,在電源模塊中設有兩個穩壓器,其中一個為單片機供電,另一個為外部設備供電,防止射頻信號與被干擾。供電模塊電路圖如圖2所示。

圖2 供電模塊電路
充電部分支持有線充電和無線充電兩種方式。有線充電部分采用TP4054作為電源管理芯片,在鑰匙扣背面嵌入兩個金屬觸點作為充電接口,在充電時插頭將與觸點通過磁鐵吸合。無線充電功能選取IDT—P9222—R作為該部分的芯片。無線充電是未來電子產品的發展趨勢,也可以提高用戶的體驗感。在充電過程中,智能鑰匙扣外部的白色指示燈點亮,提示正在充電。充電結束后熄滅。
GPS模塊選用SKG08A,其具有超小尺寸及低功耗的特點,符合智能鑰匙扣的設計理念。SKG08A是一個完整的GPS模塊,具有高敏感性、超低功耗和小尺寸的特點而被廣泛應用。它是基于高性能的單片機架構,其-162 dBm跟蹤靈敏度使其能在以前的GPS模塊不能定位的城市峽谷和茂盛的樹蔭這樣的環境中定位,使得智能鑰匙扣在任何角落都能被找到。
GPS模塊在智能鑰匙扣中主要實現的功能是提供鑰匙扣的精確位置,并且在手機的內置地圖App中顯示其位置。在正常工作時,GPS模塊將通過藍牙模塊將實時的位置信息發送到手機上,一旦藍牙斷開連接,手機App將自動鎖定其最后一次握手時出現的位置。用戶可以通過地圖上顯示的精確位置找到鑰匙扣,使用戶實現其最重要的查找功能[2,3]。GPS模塊電路圖如圖3所示。

圖3 GPS模塊電路
MS50SF6有一個ARM內核Cortex—M4F的RF收發器,該藍牙模塊支持遠程應用,采用藍牙低功耗兼容技術,帶屏蔽罩,精確的接收信號強度指示(received signal strength indication,RSSI),可用于室內定位。鑰匙扣與手機較遠時保持連接,避免斷連,使用戶體驗感達到最佳,符合智能鑰匙扣與在較遠距離時仍然能夠實現查找功能的設計要求。
藍牙模塊的主要功能是使智能鑰匙扣與用戶的手機進行連接,在手機上對智能鑰匙扣進行操作,實現其查找的功能,并且實現基本的室內定位功能。為了滿足鑰匙扣與手機通過藍牙連接實現其主要功能,且保證鑰匙扣的體積較小,選用小尺寸MS50SF6藍牙模塊。
智能鑰匙扣中運用了室內藍牙定位技術以便于使用者使用手機尋找鑰匙扣的大致位置。手機App上會以雷達圖的形式顯示出鑰匙扣與手機之間的距離、方位。藍牙測距方法通過RSSI計算距離,使用最小乘迭代算法[4,5]。其基本公式為
RSSI=-10nlogd-S0
式中RSSI為接收到的信號強度,n為信號受環境影響的衰減程度系數,S0為發射器與接收器相距1 m時的信號強度??紤]到實際應用環境的復雜程度,在藍牙定位功能投入使用之前大量進行測試以進行校準[6,7]。
NFC模塊選用M24LR64E—R,該芯片有I2C接口以及非接觸式接口,數字輸出引腳,能量收集等主要特性。在單一芯片上集成了非接觸式讀卡,非接觸智能卡和點對點的功能,在本系統的設計中主要實現讀寫功能[8]。該芯片體積較小,符合鑰匙扣外觀的設計要求。
NFC模塊的主要功能分為兩部分??赏ㄟ^手機上對應的操作啟用NFC模塊的讀取功能,對門禁卡開始“復制”,此時手機操作頁面將提示正在進行復制操作,當NFC模塊復制完成后手機操作頁面將提示用戶復制工作已完成,這時鑰匙扣就可以代替門禁卡,開啟門禁。實現鑰匙扣和門禁卡“二合一”。另一方面,也可通過NFC的方式實現手機與鑰匙扣之間的通信,例如輔助進行藍牙連接而無需在手機上手動掃描藍牙設備[9]。NFC模塊電路圖如圖4所示。

圖4 NFC模塊電路
核心模塊以STM32L151C8T6為控制芯片,STM32L系列具有超低功耗的特點,STM32L系列產品基于超低功耗的ARMCortex—M3處理器內核,采用意法半導體獨有的兩大節能技術:130 nm專用低泄漏電流制造工藝和優化的節能架構,提供業界領先的節能性能[10]。其低功耗的特性及芯片的體積符合智能鑰匙扣的設計初衷。
核心模塊中包含一鍵報警模塊、鈴聲模塊以及電量提醒模塊。一鍵報警模塊中包含蜂鳴警報器,用戶通過鑰匙扣的外部按鍵可以實現“一鍵報警”功能發出警報聲,在危機時刻可以引起他人的注意,為老人和孩子提供安全保障[11]。當查找智能鑰匙扣位置時,可以配合GPS在手機上顯示其定位的功能選擇鈴聲提醒,更快速找到智能鑰匙扣。同時,該模塊會提示用戶智能鑰匙扣的電量,鑰匙扣外部的指示燈在電量低于5 %時會亮起紅色,提示用戶及時充電,同時在智能鑰匙扣連接手機后,會在手機上顯示其剩余的具體電量,提示用戶充電。核心模塊電路圖如圖5所示。

圖5 核心模塊電路
智能鑰匙扣的硬件部分基于Keil平臺進行開發,通過硬件編程實現其位置查詢、鈴聲提醒、電量提醒、一鍵報警、門禁等功能。
軟件部分分別為iOS系統和Android系統開發,基于現有的安卓系統上的“米家”等智能家居App,iOS系統中的“家庭”智能家居App進行開發,避免用戶需要單獨下載App,使智能鑰匙扣的操作更加便捷[12]。后臺數據庫使用MySQL。
系統在初次使用時無需注冊,可使用AppleID或者Android系統上已注冊的ID。用戶打開手機上的客戶端App并開啟藍牙,使用手機NFC天線的位置觸碰鑰匙扣以建立連接,并綁定。完成后,可以為鑰匙扣修改名稱。此時,在地圖上就可顯示鑰匙扣所在的位置,可以通過軟件上的對應操作測試鑰匙扣的主要功能。初次連接成功后,以后使用無需再次連接,只需打開藍牙,鑰匙扣便會與手機自動配對,并在手機系統上提示已連接的對應圖標。
智能鑰匙扣與手機連接時將處于正常工作模式,當鑰匙扣與手機斷開藍牙連接后將處于低功耗模式,降低功耗,延長使用時間[13,14]。斷開后手機App上將自動鎖定最后一次連接時的位置,通過手機網絡發送到服務器上。
針對完整的智能鑰匙扣系統在STM32開發板上完成測試,測試內容包括系統初始化、藍牙連接、GPS定位等情形。測試結果如表1所示。

表1 防丟鑰匙扣可靠性測試
測試結果表明,防丟鑰匙扣能夠正常與手機建立連接,并發送正確的定位信息。排除外部信號干擾和信號質量不佳等原因,藍牙定位功能正常運作。在鑰匙扣與手機連接時,可正常通過手機遙控鑰匙扣發出聲響。
本文基于STM32芯片、NFC、藍牙定位等技術設計了智能鑰匙扣,其具有位置查詢、一鍵報警、門禁等功能。智能鑰匙扣的誕生主要是為了幫助用戶追蹤定位鑰匙的精確位置,大大減少了人們在尋找鑰匙時所花費的時間和精力,避免因鑰匙丟失而帶來的損失和不必要的麻煩,甚至在一定程度上減少盜竊事件的發生。同時配合一鍵報警、門禁等功能,提升人們生活的舒適度與方便度。