楊榮興
(西北民族大學(xué),甘肅 蘭州 730030)
如今,在共享概念的滲透下,越來越多的“共享+”開始涌現(xiàn)。同時,隨著嵌入式電子技術(shù)的飛速發(fā)展,電子技術(shù)的相關(guān)產(chǎn)品在日常生活中的應(yīng)用也日益增多。其中儲物柜由于自身的方便性在超市、購物中心等公共場普遍應(yīng)用。但現(xiàn)在儲物柜的應(yīng)用大多是在超市、學(xué)校、公司等固定場合,由于自身的局限性無法滿足共享的要求?,F(xiàn)在的儲物柜大多為打印條形碼或者使用IC 卡存儲方法,IC 卡存在丟失的可能性,如若丟失會造成諸多的麻煩,而且IC 卡儲物柜限制了使用范圍,通用性差;而打印條形碼的存儲方法在每次存儲所產(chǎn)生的條形碼紙會導(dǎo)致浪費和污染環(huán)境,且條形碼極其容易丟失?;诖?,本文研究了基于指紋識別的共享智能儲物柜,通過擴(kuò)展功能實現(xiàn)儲物柜在各種公共場所得以使用[1]。
當(dāng)管理員將控制系統(tǒng)啟動后,各個模塊初始化完成并進(jìn)入工作模式。使用者可以根據(jù)GPS 定位找到自己所需要的區(qū)域的儲物柜,且可通過遠(yuǎn)程進(jìn)行控制。LED 顯示屏?xí)@示實時儲物柜的滿空狀態(tài),使用者可以通過按鍵或觸屏進(jìn)行選擇自己所需柜子的型號和位置,然后將自己的指紋通過指紋識別器存儲到系統(tǒng)中,而且在存儲過程中會有相應(yīng)的語音提醒,當(dāng)使用者存好物品,關(guān)上柜門后,顯示屏?xí)詣语@示存儲成功,當(dāng)需要取出物品時,只需要通過指紋識別,就會打開起初所存儲指紋的對應(yīng)柜門。
在整個系統(tǒng)的控制上,使用處理速度更快、硬件資源更豐富的Cortex-M3 內(nèi)核的STM32F1 系列芯片。Cortex-M3 內(nèi)核的芯片使用ARM 架構(gòu),該架構(gòu)設(shè)計的合理性使微控制器的功能非常強大,同時還可以滿足功耗低的要求,正好符合本系統(tǒng)的需求:在供電上STM32F1 微控制器只需要5 V 電源便可以進(jìn)行驅(qū)動,使用非常方便;在程序編寫上,STM32F1 可以使用C 語言進(jìn)行編程。因此,對于本系統(tǒng)來說,采用Cortex-M3內(nèi)核的STM32F1系列芯片是最好的選擇[2-3]。
本系統(tǒng)中使用Cortex-M3 內(nèi)核的STM32F1 系列微控制器對整個系統(tǒng)進(jìn)行控制。本系統(tǒng)中由于要實現(xiàn)的功能較多,所以使用到了很多模塊。而不同模塊使用的通信協(xié)議不同,所以在電路設(shè)計上要根據(jù)不同模塊所需要的不同硬件資源將其接在合適的IO 口上,以實現(xiàn)硬件資源的合理使用。為保證整個系統(tǒng)的穩(wěn)定性,需將整個硬件結(jié)構(gòu)設(shè)計的相對準(zhǔn)確,如各個模塊所處位置等。
3.1.1 指紋采集設(shè)計
本系統(tǒng)采用了光學(xué)指紋識別傳感器。它主要是利用光的折射和反射原理,光從底部射向三棱鏡,并經(jīng)棱鏡射出,射出的光線在手指表面指紋凹凸不平的線紋上折射的角度及反射回去的光線明暗就會不一樣,CMOS 或者CCD 的光學(xué)器件就會收集到不同明暗程度的圖片信息,從而完成指紋的采集。指紋圖像預(yù)處理的計算公式如下:
圖像的平均值和方差:
其中,W、H表示圖像的大小。
歸一化的圖像G:
其中,I(i,j)、G(i,j)分別表示源圖像和規(guī)格化后圖像的第i行和第j列像素點對應(yīng)的灰度值;Var和M對應(yīng)圖像G的方差和均值,Var0和M0是期望方差和期望均值。
3.1.2 定位模塊的設(shè)計
采用導(dǎo)航型接收機(jī),此類型接收機(jī)主要用于運動載體的導(dǎo)航,它可以實時給出載體的位置。這類接收機(jī)一般采用C/A 碼偽距測量,單點實時定位精度較低,一般為±10 m,有SA 影響時為±100 m。這類接收機(jī)價格便宜,應(yīng)用廣泛。而本系統(tǒng)的儲物柜需要為使用者提供實時導(dǎo)航和具體位置,所以此類型的接收機(jī)適用。
3.1.3 語音播報模塊
使用以KTC603C 語音芯片為基礎(chǔ)的PTUFIFS 語音模塊實現(xiàn)語音播報功能,通過簡單的串口指令即可完成播放指定的語音以及如何播放語音等功能。
3.1.4 可拆卸的機(jī)械臂
柜門的打開和閉合可利用LeArm 機(jī)械臂進(jìn)行控制,此種機(jī)械臂有高精度數(shù)字舵機(jī),因而能夠精確的控制柜門。
3.1.5 顯示屏
顯示屏采用TFTLCD 液晶屏。
在本系統(tǒng)中使用到的功能有IO 口復(fù)用、IIC 通信、PWM 波的輸出、串口通信、定時器中斷、外部中斷、定時器等,使用的編程語言是C 語言,使用的編譯器為Keil5。Keil5 編譯器支持使用C 語言對STM32 系列芯片的驅(qū)動,該編譯器功能非常強大,支持在線仿真功能,可以更加直觀的看到程序設(shè)計時出現(xiàn)的錯誤并及時改正,對于程序的調(diào)試非常有幫助[4]。
3.2.1 程序整體設(shè)計
程序編寫時使用模塊化編程,把不同模塊的初始化及驅(qū)動過程封裝在不同的.c 文件中,在main.c 文件中只實現(xiàn)調(diào)用的過程,不同文件中函數(shù)的調(diào)用通過對相應(yīng).h 文件的引用來實現(xiàn)。模塊化編程最大的好處就是程序的可閱讀性比較強,編程思路的體現(xiàn)更加清晰,對于程序的分模塊調(diào)試以及程序修改也非常方便。通過代碼編寫控制各個模塊相互協(xié)調(diào)以實現(xiàn)系統(tǒng)所需要的功能。
3.2.2 對系統(tǒng)進(jìn)行試驗調(diào)試和優(yōu)化
模擬儲物柜投放各個場所時的取物場景,通過實際檢驗觀測系統(tǒng)各功能相互配合所呈現(xiàn)的情況。在調(diào)試過程中出現(xiàn)問題時先根據(jù)現(xiàn)象進(jìn)行分析,然后根據(jù)分析進(jìn)行代碼修改、硬件改裝,以找到問題所在并解決問題。這使得該系統(tǒng)能更好的適應(yīng)市場,適合人們的使用。
針對現(xiàn)今市場上傳統(tǒng)儲物柜的材料浪費、缺乏安全性、使用過程繁瑣等問題,本文設(shè)計了一款智能共享指紋儲物柜。該儲物柜具有多種功能,方便了人們的使用。