廣東石油化工學(xué)院電子信息工程學(xué)院 伍思源 馬遠佳 羅 佩
密碼鎖在我們生活中并不少見,無論是高功率、高成本的GPRS開鎖,還是芯片數(shù)量大、差異大等問題的藍牙解鎖。通過了解當(dāng)前共享單車智能鎖存在的很多問題,我們研發(fā)了免通訊與低功耗的共享單車密碼鎖,有效的解決共享單車密碼鎖中存在的低安全性、高功耗、高成本等問題。針對目前共享單車密碼鎖中存在的這些痛點進行探索和研究,作為本項目的主要方向。故通過結(jié)合App Inventor開發(fā)軟件和單片機技術(shù)設(shè)計了一種免通訊模塊、密碼偽隨機性、低功耗的共享單車密碼鎖。其中密碼鎖硬件設(shè)計部分使用低功耗MSP430的單片機可以進行免通迅從而減少繁鎖的開鎖、太陽能電池板給電池充電從而給單片機和模塊供電、按鍵模塊輸入密碼、AT24C02存儲器模塊儲器密碼、蜂鳴器提示等模塊;軟件通過開發(fā)一款基于App Inventor的Android出行應(yīng)用程序,其主要功能是實現(xiàn)人臉識別注冊與登錄、掃描獲取解鎖密碼、定位與計時等。
隨著我國在“互聯(lián)網(wǎng)+”和“中國制造2025”兩大戰(zhàn)略上不斷取得的突破,我國人們的生活正在呈現(xiàn)出數(shù)字化、網(wǎng)絡(luò)化、智能化。與此同時,隨著優(yōu)步、滴滴打車的出現(xiàn)以及它們在市場經(jīng)濟中取得的巨大成功,共享經(jīng)濟的興起和發(fā)展受到了全社會的廣泛關(guān)注和熱議,同時掀起大量的市場資本投入到共享經(jīng)濟的狂潮。
當(dāng)前我國正在解決人們出行的最后一公里的難題,共享單車能夠很好的解決這一問題,但是單純依靠機械鎖降低單車成本的做法在運營中的缺點日益突出。試圖使用傳統(tǒng)的機械鎖運營的共享單車,在具體的實踐中逐漸被證明是不可能的,并且現(xiàn)在的無線通訊過于麻煩,帶來了一系列的問題。藍牙開鎖,原理是通過業(yè)務(wù)層校驗,手機下載指令加密包,再將包發(fā)送到藍牙,從而完成解鎖的。但藍牙的芯片版本兼容太差,華為能開的話,魅族和小米不一定能開,何況市場上數(shù)十種的安卓手機,同樣是華為的在不同的版本都有兼容問題,目前的主要原因是因為采購的藍牙芯片差異太大。因此通訊過于繁瑣,給我們開鎖帶來不便。我們通過去研究低功耗的智能密碼鎖,使用更低功耗的單片機MSP340去產(chǎn)生與手機相同的密碼,且密碼是復(fù)雜可變的。以密碼鎖在共享單車行業(yè)中所出現(xiàn)的各種問題為出發(fā)點,通過結(jié)合App Inventor開源開發(fā)軟件和單片機開發(fā)技術(shù),設(shè)計了一種免通訊模塊、高安全性、低功耗的共享單車密碼鎖,它能夠有效的解決共享單車中的密碼鎖出現(xiàn)的密碼單一、低安全性能、高功耗等問題。而且我們的密碼是隨機產(chǎn)生的,安全性能高。智能鎖在共享單車中的作用也是越來越明顯,智能鎖的性能影響著整個共享單車的利益鏈。除了密碼鎖的基本功能外,使用微處理器的智能電子密碼鎖還可以引入智能化管理,使電子密碼鎖具備更高的安全性和可靠性。
其中硬件設(shè)計部分由MSP430F413單片機、按鍵模塊、AT24C02存儲器、蜂鳴器等構(gòu)成。采用MSP430F413單片機,是TI推出的超低功耗混合信號16位單片機系列中的一種。單片機的三種工作模式分別為:正常工作模式、空閑模式、休眠模式。單片機的空閑模式能夠有效的降低系統(tǒng)的功耗,提升了電源的續(xù)航能力。當(dāng)單片機處于空閑模式時,單片機的某些寄存器都會保留著原來的數(shù)據(jù),如隨機存取機器、堆棧指針、程序計數(shù)器、程序狀態(tài)字、累加器等。單片機正常工作模式利用其做密碼控制系統(tǒng),我們可以通過手機掃描已經(jīng)做好的二維碼,從而在手機獲取一個隨機不同的密碼,再輸入密碼給MSP430單片機開鎖。當(dāng)輸入的密碼與單片機已經(jīng)產(chǎn)生偽隨機碼相同時,便可以開鎖。而且利用AT24C02是一種串行E2PROM,它遵循I2C-BUS的存儲元件,遵循二線制協(xié)議,由于它有許多優(yōu)點如體積小,接口便利,數(shù)據(jù)在掉電之后不會無緣無故的丟失等優(yōu)點,從而可以儲存好隨機密碼,做好相關(guān)密碼儲存。
使用App Inventor網(wǎng)站進行Andord手機客戶端的設(shè)計。手機客戶端主要是實現(xiàn)用戶注冊與登錄界面、掃碼獲取解鎖密碼模塊算法、用戶騎行定位與計時等的開發(fā)。該智能鎖的手機端APP有人臉識別登錄的功能,使用戶方便登錄使用。APP還通過調(diào)用高德地圖搜索中靜態(tài)地圖URL顯示用戶的位置,能夠給用戶準(zhǔn)確的位置信息。這將大大提高用戶對該智能鎖及APP的體驗和認(rèn)可。
用戶點擊的是“注冊”按鈕時,拍照完后,調(diào)用“TaifunImage”組件將圖片修改為小于500×500px尺寸的圖片。首先我們要對人臉進行識別(Detect Face),并獲得這個人臉的標(biāo)識值,根據(jù)api文檔,我們將使用base64編碼上傳圖片,于是調(diào)用“SimpleBase64”組件對圖片進行Base64編碼,然后執(zhí)行POST文本請求提交相應(yīng)的請求參數(shù)“api_key”“api_secret”“image_base64”。將圖片上傳至Face++曠視平臺建立人臉集合即完成用戶的注冊。
當(dāng)用戶點擊登錄按鈕拍照獲得圖片后,獲取SearchAPI返回值,首先根據(jù)列表長度判斷是否識別到人臉,然后從返回的列表中提取拍照的臉和人臉集合中的臉的匹配度confidence,范圍為[0,100],這里的邏輯設(shè)計中設(shè)置是匹配度達到85則登錄成功。如圖1所示。
圖1 人臉注冊與登錄
制作了特定的二維碼,二維碼主要作用是標(biāo)注車輛的編號信息。當(dāng)用戶點擊“掃碼騎車”按鈕時會調(diào)用“二維碼”組件掃描制作好的二維碼。獲取到車輛信息后進行處理隨機生成五位數(shù)的密碼,再將五位數(shù)的解鎖密碼傳遞給“密碼文本”。如圖2所示。
圖2 掃碼獲取密碼及車輛信息
用戶進入掃碼界面時,手機客戶端會根據(jù)位置傳感器獲取當(dāng)前位置的經(jīng)緯度,通過高德地圖的靜態(tài)地圖URL將位置傳感器獲取的經(jīng)緯度信息傳輸進行搜索,將搜索所得的圖片顯示在“地圖”組件之中。如圖3所示。
通過手機客戶端掃描共享單車上的二維碼獲取解鎖密碼,這樣做的方法雖然給平凡枯燥的生活帶來許多的便利和方便。同時,在共享單車上輸入獲得的解鎖密碼即可使用共享單車。如果輸入密碼不正確會進行報警,提醒用戶當(dāng)前輸入的密碼是錯誤的。也是當(dāng)前主流的方案。如圖4所示。
圖3 用戶騎行時的導(dǎo)航、定位與計算騎行時間
圖4 按鍵開鎖流程圖
本項目的類型為軟硬件開發(fā),軟件運行在Android手機APP上,硬件使用低功耗MSP430單片機。然后將硬件部分和軟件部分這兩部分分開進行調(diào)試與測試,將每個部分的具體功能進行測試,檢查是否能夠正常運行。每個功能都能夠?qū)崿F(xiàn)的情況下,再進行整個項目的整體調(diào)試。通過這樣的方法,可以盡量減小開發(fā)的難度、縮小項目的設(shè)計周期從而更好的實現(xiàn)所需要的功能。即使在調(diào)試過程中遇到了問題,也能快速找到問題出現(xiàn)的原因并進行處理。然后一一去排除軟件和硬件的問題,這樣不僅大大的改善了系統(tǒng)調(diào)試效率,而且也能確保系統(tǒng)更加穩(wěn)定,后期的維護與完善也比較方便。
(1)登錄進入軟件后顯示的人臉注冊與登錄頁面上是否有注冊與登錄的按鈕;
(2)點擊注冊按鈕能否調(diào)用手機的相機;
(3)上傳照片至“Face++曠視”人工智能平臺能否完成注冊;
(4)點擊登錄按鈕能否調(diào)用手機的相機;
(5)點擊登錄按鈕拍照后能否與“Face++曠視”人工智能平臺的數(shù)據(jù)庫進行對比;
(6)“Face++曠視”人工智能平臺的數(shù)據(jù)庫與對比后能否成功登錄;
(7)定位與計時頁面是否有在地圖上顯示當(dāng)前位置的標(biāo)識。
共享單車智能鎖APP生成智能鎖解鎖密碼具有一定的隨機性,同時也存在著前后兩個密碼一致的可能。因為解鎖密碼的生成機制中有兩個數(shù)字車輛的編號和三個偽隨機的數(shù)字所確定的,如果在同一輛車掃描兩次共享單車上的二維碼則存在一定概率是相同的。在APP生成解鎖密碼功能初步實現(xiàn)的情況下,增加前后兩次生成的解鎖密碼對比的算法,進一步降低解鎖密碼重復(fù)的概率提升智能鎖的安全性。經(jīng)過軟件端和硬件系統(tǒng)的各個功能模塊測試后,再對密碼鎖的解鎖功能進行全面的測試,通過這種方法發(fā)現(xiàn)仍存在的問題,并可以避免各個模塊功能不兼容的問題。經(jīng)過反復(fù)的調(diào)試與完善,共享單車密碼鎖的解鎖功能已基本實現(xiàn)。解鎖功能是共享單車智能鎖最重要的功能,關(guān)系到整個項目能否正常工作的關(guān)鍵。本部分是針對密碼鎖的解鎖進行硬件系統(tǒng)和軟件端的同步測試,以檢驗是否實現(xiàn)密碼同步、密碼鎖解鎖是否有反饋信號等問題。
結(jié)論:本文設(shè)計了一個基于免通訊與低功耗的共享單車密碼鎖,低功耗、無線通信的特點,將大大減少了共享單車的成本及后期的維護成本。通過不斷探索和完善共享單車的密碼鎖,更好突出共享單車的優(yōu)勢,促進共享單車市場朝著更好、更快、更高的方向發(fā)展。所以是本項目的不僅僅只能應(yīng)用在共享單車上,我相信,在未來,要需要“鎖”的地方,就有本項目及以后設(shè)計的智能鎖出現(xiàn)。