蔡雨宏, 陳湘萍
(貴州大學 電氣工程學院, 貴陽 550025)
隨著科技進步和經濟飛速發展,“網購”和“快遞”越來越多地走進了人們的日常生活中[1]。對于快遞行業來說,這既是發展的契機,但隨即帶來的挑戰也不容小覷。目前,人們更多關注的是快遞的運輸安全問題,并期望良好的服務態度[2]。但僅就時下的快遞行業而言或多或少還存著著一些問題,比如說:快遞簽收困難,快遞管理費時費力等。
綜合以上分析,本文研究一種基于STM32的智能快遞柜。該系統以STM32F407作為主控芯片,配備了紅外傳感器、電話通信、信息錄入以及繼電器模塊等一系列模塊,能夠自動根據送貨員提供的客戶手機號,在合適的時間自行通知客戶進行取件,保證時間不湊巧的客戶也能安全領到自己的快遞,在實現了安全便捷存取快遞的同時,也提升了快遞行業的服務質量。
本設計以STM32F407單片機主控模塊作為核心,以紅外傳感器模塊、電話通信模塊、信息錄入模塊以及繼電器模塊等外圍設備構成控制系統設計。該系統的整體框架如圖1所示。

圖1 系統結構圖
圖1中,信息錄入模塊主要負責用戶信息和開鎖碼的錄入,紅外傳感器模塊負責監控柜內是否存在物品,GSM模塊負責通信,繼電器模塊負責開關柜門。
控制模塊選擇單片機作為控制模塊。采用的STM32F407ZGT6單片機是32位基于ARM的Cortex-M4微控制器,其功能多變,能夠對采集到的信息進行接收及處理,而且還可以控制固化設備的功率[3-5]。在此功能討論基礎上,同時結合本系統的設計要求,因而將其選定為該系統的核心芯片。STM32F407ZGT6單片機主控最小系統原理電路設計如圖2所示。

圖2 單片機最小系統
本模塊選用輕觸式開關用直接法進行連接。該方法結構簡單,清晰明了。將單片機PB1-PB10的IO口對應為數字“0”到數字“9”,從而實現手機號碼和驗證碼的輸入[6]。
本模塊采用反射式紅外傳感器用于檢測柜內是否存在物品,在檢測中表現出高靈敏、高可靠性的特點[7-9]。該模塊的設計工作原理如圖3所示。

圖3 工作原理框圖
繼電器是一種電控制器件,是當輸入量(激勵量)的變化達到規定要求時,在電氣輸出電路中使被控量發生預定的階躍變化的一種電器。在其運行機理上,則具有控制系統(又稱輸入回路)和被控制系統(又稱輸出回路)之間的互動關系[10-11]。
繼電器模塊由繼電器和鎖芯組成。在未通電的常態,繼電器斷開,鎖芯與柜體互相卡住,保證快遞柜門無法打開。在得到控制模塊傳遞的確認開門信號后繼電器通電,并將鎖芯吸附住,此時柜門就可自由開啟。
本模塊主要由GSM網絡的SIM800c芯片控制。SIM800c性能穩定,外觀小巧,性價比高,能滿足客戶的多種需求。SIM800c工作頻率為850/900/1 800/1 900 MHz,可以低功耗實現語音、SMS、數據和傳真信息的傳輸。SIM800c尺寸為24*24*3 mm,能適用于各種緊湊型產品設計需求[12-14]。同時通過支持藍牙等高級特性,可以為客戶快速開發、節省成本帶來更多便利。本研發模塊的設計流程如圖4所示。

圖4 短信通訊流程圖
Fig. 4 Message communication flow chart
智能快遞柜系統軟件設計主要由3個部分組成,分別是:主程序部分,用戶模式部分和快遞員模式部分。對此可做闡釋論述如下。
這一部分主要是選擇進入不同的工作模式,整體設計流程如圖5所示。首先,進行初始化,包括時鐘、延時、串口波特率、LED顯示以及按鍵等各個模塊。接著將更新顯示屏,顯示出該作品的作品名等信息。繼而通過檢測按鍵的開關情況,來判斷在2個不同選項中將轉入何種工作模式。若有鍵按下,則進入快遞員模式;若無,則進入用戶模式。

圖5 系統總流程圖
該部分主要用于快遞員存放物品,具體如圖6所示。過程中,先對參數進行初始化,再對項目名稱以及當前工作模式進行顯示。接著由快遞員通過按鍵輸入用戶的手機號碼。若輸入手機號碼不足11位或超過11位,則返回輸入手機號碼這一步驟。若滿足11位要求,便通過置1繼電器信號,打開柜門。此后,將循環檢測柜門是否關閉。當柜門關閉后,通過紅外信號檢測箱內是否有物品。若無物品,紅外信號為0,返回輸入手機號碼界面;若有物品,紅外信號為1,則通過開鎖碼模塊隨機生成驗證碼并通過SIM800c模塊來發送驗證碼。

圖6 快遞員模式流程圖
該部分主要用于用戶取件,具體流程如圖7所示。先是對參數進行初始化。然后對項目名稱以及當前工作模式進行顯示。接著由用戶通過按鍵輸入所獲取的驗證碼。若輸入驗證碼不正確,則返回輸入驗證碼這一步驟。若驗證碼正確,便通過置1繼電器信號,打開柜門。此后,始終檢測柜門是否關閉。當柜門關閉后,通過紅外信號檢測箱內是否有物品。若無物品,紅外信號為0,清空內部所保存的驗證碼信息;若有物品,紅外信號為1,則保留驗證碼信息,以便下次繼續使用該驗證碼。

圖7 用戶模式流程圖
快遞柜的工作流程如圖8所示。

圖8 工作流程圖
在通電狀態下,電源指示燈處于低電平狀態;程序開始運行。首先通過按鍵切換到快遞員模式,在快遞員模式下放置快遞物品。在關好箱門后通過按鍵輸入手機號碼,確認后通過SIM800c發送驗證碼。此后進入用戶模式,通過按鍵輸入收到的驗證碼,按下確認鍵后由主控芯片進行判斷,若不匹配則提示驗證碼輸入錯誤;若成功匹配則打開柜門。在取出快遞、關閉箱門之后,芯片發送指令,紅外芯片開始檢測柜內是否在存有物品,若還存在物品將保留驗證碼。若物品不存在,則清除驗證碼。
(1)通過快遞柜本身來發送GSM短信,當快遞放入時同步執行此操作,可以有效避免快遞員遺忘丟件事故、以及給客戶漏發消息的問題。
(2)在快遞柜內部設置紅外傳感器。每次操作后通過紅外傳感器確認柜內物品存在與否,方便在丟件時可以準確判定責任方。同時,若客戶開柜未取走物品卻誤關了柜門,可以自行再次打開柜門,避免快遞員多次反復操作處理。
(3)快遞柜采用繼電器控制開啟,在斷電的情況下可以保證柜門無法打開,有效防止惡意斷電竊取快遞的行為。
圖9為簡易裝置的工作圖。其中主要包含了SIM800c、按鍵模塊、電池模塊、紅外模塊、繼電器模塊、主控芯片模塊、電磁鎖和顯示屏模塊。

圖9 簡易裝置圖
本設計以STM32407ZGT6單片機為核心制作了一款智能快遞柜。快遞員可以通過輸入客戶手機號碼由快遞柜自主生成驗證碼并發送到客戶手機上。而客戶則可以利用收到的驗證碼取出柜內物品。若物品未完全取出,則驗證碼可在下次繼續使用。從而避免誤取或漏取快遞。此次設計的新型智能快遞柜系統具有空間利用率高、運營成本低、智能化程度高、存取快遞方便快捷的優點。經過實驗測試,從理論上驗證了該新型智能快遞柜管理系統的可行性。可降低快遞公司的運營成本,提高服務質量。