西北民族大學(xué)電氣工程學(xué)院 李文闖 楊榮興 李超凡
在共享概念的滲透下,越來越多的“共享+”開始涌現(xiàn)。與此同時,隨著嵌入式電子技術(shù)的飛速發(fā)展,電子技術(shù)的相關(guān)產(chǎn)品在日常中的應(yīng)用也日益增多,其中,儲物柜由于自身的方便性得到了廣泛的應(yīng)用。但現(xiàn)在儲物柜的使用有諸多不足:(1)現(xiàn)在儲物柜大多設(shè)置在超市等固定場合,由于自身的局限性無法滿足共享的要求,而且每個柜容量是固定的,如果所存物品較大就會無法存入,使用不便;(2)現(xiàn)在儲物柜大多為打印條形碼等存儲方法,這種存儲方法存在丟失的可能性,丟失之后較為麻煩;(3)每次存儲所生產(chǎn)的條形碼紙等存在浪費,不符合當今的節(jié)能趨勢;(4)在類似游樂場的一些場合經(jīng)常面臨需要短時間存儲手機等貴重物品的情形,由于當下儲物柜的存儲方式不符合其情形并未廣泛投入使用?;谝陨蠁栴},本項目就是研究基于指紋識別的共享智能儲物柜,通過擴展儲物柜功能實現(xiàn)儲物柜在火車站等各個場所的共享,同時在一些功能上實現(xiàn)智能化,使其更加方便實用。
使用Cortex-M4內(nèi)核STM32F1系列芯片控制器作為控制單元,該MCU處理速度更快、硬件資源更豐富,通過實現(xiàn)儲物柜在需要時刻可由管理者進行GPS定位(在這里進行說明二點,一是GPS定位是方便儲物柜管理者找到其位置,方便管理、防止丟失;二是由于共享儲物柜投入數(shù)量足夠并不需要定位尋找,故未開發(fā)儲物柜的用戶定位功能)使得儲物柜可在火車站等場合投放使用實現(xiàn)共享,采用指紋識別進行存儲,同時還具備語音提醒、觸摸按鍵備份(按鍵密碼開啟)等智能功能。
各項功能的具體解釋:本研究是基于指紋識別為基礎(chǔ)的共享智能儲物柜,之所以要實現(xiàn)可被管理者進行定位,是為了防止丟失、方便管理;此外,設(shè)計通過指紋識別進行存取為使用者的所存物品提供更大的安全保障,同時避免條形碼IC卡等的生產(chǎn),實現(xiàn)節(jié)能的目的;設(shè)計具有按鍵解鎖功能為防止因出現(xiàn)出現(xiàn)系統(tǒng)卡死(遇到此情況時使用者可向管理者申請打開);設(shè)計在存儲時會有語音提醒(提醒存儲物品),同時,儲物柜占用情況也會在液晶屏上顯示(儲物柜已用還是未用)等。
系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
為了實現(xiàn)項目功能,必須做到能夠使主要模塊達到相應(yīng)的功能。
AS608光學(xué)指紋模塊,使其能夠做到指紋采集、存儲以及匹配。當檢測到有指紋錄入時,在指紋庫里進行指紋匹配。若有相同指紋則證明為開鎖,調(diào)用I/O口通過繼電器控制電磁鎖打開柜門;否則,證明為使用柜子存儲東西,存下該指紋同時打開未使用的柜子。
GPS北斗雙定位模塊以及GSM/GPRS模塊:GPS北斗雙定位模塊能夠進行定位,GSM/GPRS模塊能夠進行信息的收發(fā),兩模塊聯(lián)合使用。當管理者需要獲取該儲物柜的地理位置時向GSM/GPRS模塊發(fā)送信息,兩模塊開始通信,GPS北斗雙定位模塊將定位得到的信息給GSM/GPRS模塊,然后GSM/GPRS模塊將地理信息發(fā)給管理者從而定位成功。
SYN6288語音合成模塊,使其能夠發(fā)出一定的聲音如“請鎖好柜門”、“謝謝使用”等語句。
TFTLCD,使其能夠?qū)崿F(xiàn)觸摸按鍵的功能,同時能夠?qū)崟r顯示儲物柜的占用情況等。
本項目使用14.8V的鋰電池作為電源,整個系統(tǒng)還需要使用到5V電源為MCU以及部分模塊(GPS北斗雙定位模塊等)供電、3.3V電源為部分模塊(AS608光學(xué)指紋模塊)供電、12V電源控制電磁鎖從而控制柜門的開關(guān)。因此,需要使用到三個可調(diào)降壓模塊使鋰電池電源供來的電壓分為三種不同大小的電壓以滿足系統(tǒng)需要,保證能夠為MCU及所用到的模塊提供其所需要的電壓是使它們正常工作完成項目需求的前提。
根據(jù)MCU不同I/O口所具有的硬件資源將不同模塊接在合適的I/O口上,以實現(xiàn)硬件資源的合理使用。此外,大多數(shù)模塊采用串口通信,為了滿足模塊能夠?qū)崿F(xiàn)其功能并能夠進行相互間的通信從而滿足項目需要,需要合理分配MCU的串口資源使其不存在沖突以便順利完成項目所需要的功能。其中,AS608光學(xué)指紋模塊使用USART4,GPS北斗雙定位模塊使用USART3,GSM/GPRS模塊使用USART2,SYN6288語音合成模塊使用USART1,剩余一個串口5備用。此外,MCU的定時器資源也需要分配給各個模塊,以防止因為發(fā)生定時器的沖突而影響模塊功能的實現(xiàn),由于篇幅有限在這里就不做敘述了。
本項目的整體構(gòu)造采用椴木層板進行搭建,首先在稿紙上設(shè)計出來利于項目完成的柜子的整體構(gòu)造,然后使用AutoCAD軟件根據(jù)設(shè)計紙畫出來對木板需要切割的形狀及長度,再使用激光雕刻機進行切割,最后通過釘子熱熔膠等進行搭建從而得到符合要求的自制柜。在柜門打開鎖死上,我采用的是SY-L60S電磁鐵進行實現(xiàn)(因為該項目是基于對儲物柜模型的研究)。
圖2 程序執(zhí)行流程圖
本項目中使用的編程語言是C語言,使用的編譯器為MDK。MDK編譯器支持使用C語言對STM32系列芯片的驅(qū)動,該編譯器功能非常強大,支持在線仿真功能,可以更加直觀的看到程序設(shè)計時出現(xiàn)的錯誤并及時改正,對于程序的調(diào)試非常有幫助。程序編寫時使用模塊化編程,把不同模塊的初始化及驅(qū)動過程封裝在不同的.c文件中,在main.c文件中只實現(xiàn)調(diào)用的過程,不同文件中函數(shù)的調(diào)用通過對相應(yīng).h文件的文件調(diào)用來實現(xiàn)。模塊化編程最大的好處就是程序的可閱讀力比較強,編程思路體現(xiàn)的更加清晰,對于程序的分模塊調(diào)試、程序修改也非常方便。通過代碼編寫控制各個模塊相互協(xié)調(diào)以實現(xiàn)項目所需功能。此外,本項目中使用到IO口復(fù)用、IIC通訊、SPI通訊、串口通訊、定時器、定時器中斷等,這些功能的正確使用也是項目功能完成的前提,其中特別是串口資源的分配與使用,因為大多數(shù)模塊都要用到串口通信,解決好這一問題是模塊功能能夠順利實現(xiàn)的基礎(chǔ)。程序執(zhí)行流程圖如圖2所示。
在項目研究過程中,部分成員對于STM32的開發(fā)經(jīng)驗不足,在程序編寫以及模塊學(xué)習上存在一定的困難。例如:代碼移植整合過程中出現(xiàn)較多問題,針對這一問題,我們在調(diào)試過程中查看主控芯片STM32F1對應(yīng)官方數(shù)據(jù)手冊并結(jié)合正點原子出版的對外設(shè)配置講解的書籍,從而達到對調(diào)試過程更深入的了解。此外,對于一些配置過程復(fù)雜的模塊或外設(shè),觀看正點原子團隊錄制的視頻教程進行進一步的了解,以便項目學(xué)習過程中遇到問題時可以得到較快的解決。
總結(jié)與展望:本項目研究的是“共享智能指紋儲物柜模型”,主要是要解決指紋解鎖以及實時定位兩個方面的問題。在指紋解鎖方面需要實現(xiàn)指紋采集、存儲以及匹配的功能,實時定位就是要解決GPS北斗雙定位模塊和GSM/GPRS模塊相互間的通信從而能夠在手機端對其完成定位。當然,還需通過對其它部分模塊的使用從而完成項目所需的附加智能功能。在項目實現(xiàn)過程中,軟件方面的一大問題就是MCU串口資源的分配與調(diào)試,因為大部分功能模塊都采用串口通信,解決這一點是項目任務(wù)完成的一大前提。
本項目設(shè)計的“共享智能指紋儲物柜模型”具有較強的環(huán)境適應(yīng)力和穩(wěn)定性,具有一定的使用價值,但部分功能還不太完備;同時,其并沒有進行大范圍投入使用以觀看項目使用效果,因此還需要進行進一步研究和實踐。該項目符合當下“共享+”的熱潮,正應(yīng)當下社會潮流,可以說具有不小的潛在價值。