安徽理工大學(xué)電氣與信息工程學(xué)院 劉 旻
針對(duì)電網(wǎng)中現(xiàn)有的普通機(jī)械鎖,存在如鑰匙容易丟失、無(wú)法確定開(kāi)鎖人員和無(wú)法確定開(kāi)鎖時(shí)間、缺乏安全性等問(wèn)題,設(shè)計(jì)了利用無(wú)線(xiàn)藍(lán)牙模塊和無(wú)線(xiàn)充電模塊的手機(jī)藍(lán)牙無(wú)源鎖。具體功能有:增加了遠(yuǎn)程遙控開(kāi)關(guān)鎖、鑰匙利用線(xiàn)圈的電磁感應(yīng)來(lái)給鎖具供電、顯示鎖具狀態(tài)、保存鎖具操作記錄等功能。
手機(jī)藍(lán)牙無(wú)源鎖主要由智能掛鎖、無(wú)線(xiàn)供電鑰匙、管理平臺(tái)、專(zhuān)用手機(jī)APP構(gòu)成。該鎖是在傳統(tǒng)機(jī)械鎖的基礎(chǔ)上,增加了遠(yuǎn)程開(kāi)關(guān)鎖具、無(wú)線(xiàn)充電、APP中保存操作記錄等功能。
系統(tǒng)硬件部分主要由STM32單片機(jī)作為主控芯片、無(wú)線(xiàn)發(fā)送和接收的充電電源模塊實(shí)現(xiàn)無(wú)線(xiàn)充電、藍(lán)牙模塊進(jìn)行數(shù)據(jù)接收和傳輸、霍爾傳感器模塊感應(yīng)鎖具狀態(tài)、電源模塊提供穩(wěn)定的3.3V直流電壓、電機(jī)驅(qū)動(dòng)模塊帶動(dòng)電機(jī)轉(zhuǎn)動(dòng),通過(guò)這些模塊實(shí)現(xiàn)無(wú)線(xiàn)充電、進(jìn)行移動(dòng)終端和鎖具之間的數(shù)據(jù)傳輸?shù)裙δ堋O到y(tǒng)總體框圖如圖1所示。
圖1 系統(tǒng)總體框圖
通過(guò)霍爾傳感器感應(yīng)磁鐵位置來(lái)判斷鎖具狀態(tài),當(dāng)傳感器MT1322AT未感應(yīng)到磁鐵時(shí),傳感器輸出低電平,此時(shí)單片機(jī)引腳會(huì)感應(yīng)出高電平;當(dāng)傳感器MT1322AT感應(yīng)到磁鐵時(shí),傳感器輸出高電平,此時(shí)單片機(jī)引腳會(huì)感應(yīng)出低電平。根據(jù)GPIO口讀出的高低電平,來(lái)判斷出鎖具此時(shí)處于開(kāi)鎖還是關(guān)鎖狀態(tài),從而驅(qū)動(dòng)電機(jī)的正反轉(zhuǎn)動(dòng)。傳感器模塊如圖2所示。
圖2 傳感器模塊
電機(jī)驅(qū)動(dòng)芯片9、10引腳的輸入信號(hào)來(lái)自單片機(jī),單片機(jī)通過(guò)給9、10引腳不同的信號(hào)來(lái)驅(qū)動(dòng)芯片輸出不同的電壓??刂埔?guī)律:輸入信號(hào)IN1、IN2電位均為低電位時(shí),電機(jī)處于閑置狀態(tài);IN1、IN2均為高電平時(shí),電機(jī)停止轉(zhuǎn)動(dòng);IN1為低電平,IN2為高電平時(shí),電機(jī)反轉(zhuǎn);IN1為高電平,IN2為低電平時(shí),電機(jī)正轉(zhuǎn)。電機(jī)驅(qū)動(dòng)模塊如圖3所示。
圖3 電機(jī)驅(qū)動(dòng)模塊
RF-BM-4044B4是一種基于TI-CC2640的藍(lán)牙低能耗數(shù)據(jù)模塊。手機(jī)App通過(guò)藍(lán)牙模塊接收并處理數(shù)據(jù)包,處理結(jié)束后藍(lán)牙模塊再把手機(jī)發(fā)送的命令傳送給鎖具單片機(jī),藍(lán)牙模塊作為數(shù)據(jù)傳輸中轉(zhuǎn)站實(shí)現(xiàn)數(shù)據(jù)上傳??梢酝ㄟ^(guò)控制LED燈顯示連接狀態(tài),藍(lán)牙連接成功,狀態(tài)指示燈常亮;藍(lán)牙斷開(kāi)連接,狀態(tài)指示燈熄滅。藍(lán)牙模塊如圖4所示。
圖4 藍(lán)牙模塊
BQ500212A和BQ51013BRHLR分別作為鑰匙發(fā)送端和鎖具接收端芯片,根據(jù)電磁感應(yīng)原理傳遞能量實(shí)現(xiàn)無(wú)線(xiàn)充電。成本低、效率高、抗干擾能力強(qiáng)、充電穩(wěn)定是選擇它的重要原因。
(1)8位ID碼:即鎖的ID編碼;
(2)1位命令:“W”——寫(xiě)命令,“R”——讀命令,“O”——開(kāi)鎖命令,“C”——關(guān)鎖命令;
(3)1位鎖狀態(tài):“0”——錯(cuò)誤狀態(tài),“1”——開(kāi)狀態(tài),“2”——關(guān)狀態(tài),“3”——錯(cuò)誤狀態(tài);
(4)2位隨機(jī)碼:偽隨機(jī)數(shù);
(5)4位開(kāi)關(guān)次數(shù):當(dāng)前鎖已經(jīng)開(kāi)關(guān)動(dòng)作的總次數(shù)。數(shù)據(jù)包結(jié)構(gòu)如圖5所示。
圖5 數(shù)據(jù)包結(jié)構(gòu)
APP必須從查詢(xún)包中獲取當(dāng)前鎖的ID,以及4位開(kāi)關(guān)次數(shù)。APP在發(fā)送命令為“O”,“C”的包時(shí),必須ID和開(kāi)關(guān)次數(shù)正確。而發(fā)送其他包時(shí)則不必考慮,只要總長(zhǎng)度為16位即可。
此次設(shè)計(jì)中采用的是STM32F030C8T6作為主控芯片,使用的語(yǔ)言為C語(yǔ)言,基于Keil軟件進(jìn)行編程。
鑰匙靠近小鎖進(jìn)行無(wú)線(xiàn)充電,系統(tǒng)進(jìn)行初始化,霍爾傳感器將采集得到的實(shí)時(shí)數(shù)據(jù)傳送到鎖具STM32單片機(jī)內(nèi),單片機(jī)根據(jù)所得到的數(shù)據(jù)按照我們所規(guī)定的協(xié)議打包成加密數(shù)據(jù)包,數(shù)據(jù)包通過(guò)藍(lán)牙模塊傳送給移動(dòng)終端,App通過(guò)對(duì)數(shù)據(jù)包的解密獲得鎖具狀態(tài),用戶(hù)登錄App點(diǎn)擊圖標(biāo)進(jìn)行開(kāi)關(guān)鎖操作,手機(jī)將這個(gè)操作命令同樣以數(shù)據(jù)包形式通過(guò)藍(lán)牙模塊傳送給小鎖單片機(jī),單片機(jī)根據(jù)協(xié)議對(duì)數(shù)據(jù)包進(jìn)行解密然后下達(dá)開(kāi)關(guān)鎖命令,電機(jī)驅(qū)動(dòng)模塊收到命令做出相應(yīng)的動(dòng)作,實(shí)現(xiàn)鎖具的開(kāi)關(guān)操作。系統(tǒng)流程圖如圖6所示。
圖6 系統(tǒng)流程圖
結(jié)語(yǔ):本文設(shè)計(jì)的基于STM32單片機(jī)手機(jī)藍(lán)牙無(wú)源鎖,實(shí)現(xiàn)了鎖具狀態(tài)的數(shù)據(jù)實(shí)時(shí)上傳,遠(yuǎn)程操控開(kāi)關(guān)鎖,安全性和方便性得到了很大的提升,滿(mǎn)足電網(wǎng)實(shí)際應(yīng)用需求,有較好的發(fā)展前景。