帶語音識別的智能門鎖設(shè)計
引 言
防盜鎖是大部分家庭都需要購買的鎖具,與人們的生活密切相關(guān)。鎖作為家中第一道安全防線,不僅可以保衛(wèi)家中安全,更是提升我們生活品質(zhì)的標(biāo)志。在智能家居時代,智能鎖是智能化時代的體現(xiàn),機械鎖的安全性和便利性已經(jīng)無法滿足人們的需求?!盎ヂ?lián)網(wǎng)+”、智慧生活、物聯(lián)網(wǎng)技術(shù)的觸角已伸向每家每戶都離不開的門鎖 [1]。此前,智能門鎖、安防門鎖、電子門鎖等主要在辦公樓、酒店賓館等地使用,如今隨著家庭安防需求的增加及智能產(chǎn)品的普及,家用門鎖已成為智能化搶占的市場。近期,智能門鎖產(chǎn)品層出不窮,在智能化和安全性等方面精益求精,目前已研發(fā)出人臉識別鎖、指紋密碼鎖、刷卡鎖和數(shù)字密碼鎖等。智能門鎖作為新一代識別技術(shù)優(yōu)勢明顯,將逐漸取代純機械鎖,成為鎖具行業(yè)的新主角,并且這一趨勢不可逆轉(zhuǎn)。本文所設(shè)計的智能門鎖使用聲紋識別技術(shù), 不僅使家用門鎖在安全性和便利性等方面得到了大幅提升,還可使用 APP 遠(yuǎn)程控制進行門鎖的開關(guān)動作,遠(yuǎn)程監(jiān)視門鎖的開關(guān)狀態(tài)。
1 系統(tǒng)設(shè)計
1.1 系統(tǒng)設(shè)計要求
SPCE061A 單片機可對特定人員進行語音識別,識別成功率高達 80% 以上,還可控制高低電平動作進行開鎖操作; 另一方面通過手機 APP 或網(wǎng)頁端與服務(wù)器連接后,服務(wù)器與WiFi 模塊可進行通信并傳輸數(shù)據(jù),由 WiFi 模塊向單片機輸入信號,單片機動作以實現(xiàn)對門鎖的遠(yuǎn)程控制。
1.2 總體設(shè)計方案
本系統(tǒng)設(shè)計的基于 SPCE061A 單片機的語音識別智能門鎖的主要組成包括 61 單片機、WiFi 模塊ESP8266、傳感器、網(wǎng)絡(luò)服務(wù)器、門鎖控制終端、LED 燈控制終端、繼電器、電子鎖。
61 單片機可進行語音錄入,通過對語音信號進行壓縮編碼,運用壓縮算法放音,再通過編寫的程序進行訓(xùn)練,將訓(xùn)練后的語音自動存儲在片內(nèi)存儲器中,訓(xùn)練成功后即可進行語音識別。方案設(shè)計如圖 1 所示,其客戶終端可選手機 APP 或網(wǎng)頁,網(wǎng)絡(luò)服務(wù)器采用貝殼物聯(lián)云端服務(wù)器,WiFi 模塊與家中WiFi 互聯(lián)后再與單片機系統(tǒng)相連,就可通過 WiFi 模塊將來自互聯(lián)網(wǎng)的控制命令轉(zhuǎn)發(fā)至串口,此時WiFi 模塊的串口與單片機串口相連,單片機解讀串口數(shù)據(jù)命令,由繼電器通過單片機 I/O口輸入的電平變化選擇發(fā)生階躍響應(yīng),觸發(fā)電子鎖, 實現(xiàn)手機 APP 或者網(wǎng)頁對其的控制。
圖1 總體方案設(shè)計
2 硬件電路設(shè)計
2.1 單片機最小系統(tǒng)
系統(tǒng)采用SPCE061A 單片機進行語音識別 [2]。SPCE061A 單片機具有功耗低、功能強、效率高、可靠性好且易于擴展等優(yōu)點。SPCE061A 配備了凌陽科技開發(fā)的最新 16 位微處理器,其內(nèi)部含有 8 個寄存器,4 個通用寄存器 R1 ~ R4,1 個程序計數(shù)器 PC,1 個堆棧指針 SP,1 個基址指針 BP,1 個寄存器 SR,通用寄存器 R3 和 R4 結(jié)合組成一個 32 位寄存器MR,MR 可以作為乘法運算和內(nèi)積運算的目標(biāo)寄存器[3]。此外, SPCE061A 還有 3 個FIQ 中斷和 14 個IRQ 中斷,及1 個由指令控制的軟中斷??蛻艚K端采用 Arduino 單片機系統(tǒng)實現(xiàn) [4], 其核心是 ATMEGA328P-AU 單片機,配上周邊器件,安裝在一快印刷電路板上能夠獨立完成設(shè)定功能,同時還能通過各類傳感器感知環(huán)境,通過控制燈光、馬達和其他裝置來反饋、影響環(huán)境。Arduino 單片機系統(tǒng)一端通過傳感器與門鎖相連, 一端通過 ESP8266 WiFi 模塊與家庭 WiFi 相連,由此實現(xiàn)通過手機 APP 控制門鎖開關(guān)。
2.2 語音識別模塊
將 SPCE061A 單片機用于語音識別模塊 [5],SPCE061A的內(nèi)部結(jié)構(gòu)如圖 2 所示。
模塊含有 84 個引腳,可進行多輸入輸出操作,且 32 k的 FLASH 存儲器可進行語音存儲,7 通道 10 位模 / 數(shù)轉(zhuǎn)換器與單通道聲音模 / 數(shù)轉(zhuǎn)換器可方便對語音進行模數(shù)轉(zhuǎn)換 [6]。
語音識別模塊分為訓(xùn)練階段和識別階段 :在訓(xùn)練階段,先初始化 RAM,再調(diào)用語音訓(xùn)練函數(shù) BSR_Train(int WordID,int TrainMode)執(zhí)行訓(xùn)練,之后獲得訓(xùn)練結(jié)果,將訓(xùn)練結(jié)果中的語音模型導(dǎo)出存儲到 FLASH 中。SPCE061A 語音存儲和回訪系統(tǒng)如圖 3 所示 [7]。
在識別階段, 運用凌陽編碼算法庫中的函數(shù)進行識別, 先調(diào)用初始化識 別器函數(shù) BSR_InitRecognizer(int AudioSource), 將存儲的訓(xùn)練語言的特征模型調(diào)出與需要識別的語音比對, 再調(diào)用獲得識別結(jié)果可信度函數(shù) BSR_ GetRecognizerScore()獲取輸入語音與特征模型的匹配度 [8]。
2.3 繼電器模塊
繼電器模塊選用中間繼電器,當(dāng)傳感器收集語音信息讀入單片機系統(tǒng)后,單片機系統(tǒng)會發(fā)出一個高電平使繼電器線圈通電,之后繼電器主觸點閉合,同時使電子鎖 [9] 與電路之間的開關(guān)閉合,進而控制電子鎖的開關(guān)。硬件電路框架如圖 4所示。
3 軟件設(shè)計
ESP8266 為安信可公司開發(fā)的 ESP8266 模塊編譯平臺,具有免安裝、純綠色、無需虛擬機、Windows 系統(tǒng)直接運行、IDE 界面、編輯和編譯一體化、Eclipse 編譯后直接生成固件等優(yōu)點 [10]。
該智能門鎖下位機通過公共云端將用戶的控制動作傳送至 ESP8266 芯片,再通過 Andruin UNO 面板實現(xiàn)該動作,流程如圖 5 所示。
貝殼物聯(lián)云平臺采用以 TCP 協(xié)議為主,UDP 協(xié)議為輔的形式進行通信,兩種協(xié)議間信息互通。在 TCP 協(xié)議基礎(chǔ)上, 可直接使用 TCP 或WebSocket 建立長連接,定時發(fā)送心跳數(shù)據(jù),保持用戶、設(shè)備在線,在線期間與服務(wù)器可進行 JSON 字符串格式的數(shù)據(jù)通信,也可采用 http(s)通信協(xié)議獲取用戶資源、上傳圖片,并實時更新。以 UDP 協(xié)議為基礎(chǔ)的通信,設(shè)備不必保持在線狀態(tài),可隨時向服務(wù)器發(fā)送指令進行相關(guān)操作。
傳感器采集門鎖的開關(guān)狀態(tài),反饋至 8266 模塊,8266 模塊將即時狀態(tài)通過云端傳遞給貝殼物聯(lián)服務(wù)器,服務(wù)器可通過兩種方式提示用戶門鎖的狀態(tài) :一是手機客戶端,即APP ;二是網(wǎng)頁。用戶可根據(jù)實際情況控制門鎖。
本設(shè)計的目的在于方便用戶通過手機打開門鎖,因此需判斷上電顯示是否與預(yù)定相同,可采用 ESPlorer進行仿真驗證。程序開始后,初始化函數(shù),將 ESP8266刷入NodeMCU固件, 默認(rèn)執(zhí)行Init.lua中的程序,在 Init.lua中再調(diào)用并執(zhí)行 switch. lua程序(遠(yuǎn)程開關(guān)程序),之后在 ESPlorer環(huán)境下編寫程序。
4 性能測試與分析
本軟件完成了各模塊的設(shè)計并對各模塊進行了測試,測試工具包括 Android 手機和筆記本電腦。利用“貝殼物聯(lián)”作為云端,在 Android 手機上運行客戶端軟件,用戶登錄后可以進行相關(guān)操作,登錄界面如圖 6 所示。
在貝殼物聯(lián)軟件中添加設(shè)備,實現(xiàn)對其的控制。WiFi 模塊選用 ESP8266,該模塊與家中 WiFi 互聯(lián)后再與單片機系統(tǒng)相連,之后可通過 ESP8266 芯片轉(zhuǎn)發(fā)來自互聯(lián)網(wǎng)的控制命令至串口。圖 7 所示為已實現(xiàn)添加的門鎖設(shè)備,連接完成后通過手機控制門鎖的開關(guān)。
5 結(jié) 語
本系統(tǒng)基于 SPCE061A 單片機語音識別系統(tǒng)設(shè)計而成,通過語音訓(xùn)練后,將傳感器采集的用戶聲音與之前的樣本進行比較,觸發(fā)電子鎖,實現(xiàn)語音開鎖,識別率高。以MEGA328P-AU 單片機作為控制核心,通過 WiFi 與電子鎖相連,實現(xiàn)智能開鎖,降低成本。以手機 APP 作為控制終端,隨時隨地實現(xiàn)對系統(tǒng)的控制和監(jiān)控。該智能門鎖具有開鎖簡便、安全性能良好、能耗小、成本低等優(yōu)點,能夠較好地滿足市場需求。