◎范江波
(三門峽職業(yè)技術(shù)學(xué)院智能制造學(xué)院,河南三門峽 472000)
目前隨著電子商務(wù)的發(fā)展,線上購物數(shù)量逐年增加,快遞公司的業(yè)務(wù)也越來越繁重,快遞派送作為快遞的最后一站因時(shí)效等問題而日益凸顯。尤其是現(xiàn)在大量的快遞數(shù)據(jù)信息掌握在少數(shù)快遞公司,快遞員投送時(shí)使用的快遞柜基本都是由少數(shù)快遞公司設(shè)計(jì)安裝在小區(qū),部分老舊偏遠(yuǎn)小區(qū)并沒有安裝價(jià)格昂貴的智能快遞柜,快遞經(jīng)常被放置在門衛(wèi)室或進(jìn)行二次投放,極大影響了快遞投放效率[1-4],針對小區(qū)快遞投放需求,設(shè)計(jì)了一款智能高性價(jià)比快遞柜,實(shí)現(xiàn)快遞員快件的投放以及用戶便捷取件功能,提高了快遞員投送快件的效率,解決了快遞最后一百米問題。
智能快遞柜系統(tǒng)有智能快遞柜終端設(shè)備和智能快遞柜控制后臺(tái)管理程序兩大部分組成[5-8]。其中智能快遞柜的終端系統(tǒng)包括快遞柜柜體、智能快遞柜控制板、條碼掃描器、RFID 讀卡器、4G通信模塊、箱格鎖控板及電源組成。智能快遞柜后臺(tái)管理系統(tǒng)由數(shù)據(jù)庫、管理操作界面組成?;谖锫?lián)網(wǎng)技術(shù)的智能快遞柜的系統(tǒng)組成如圖1所示。
圖1 基于物聯(lián)網(wǎng)的智能快遞柜系統(tǒng)組成圖
智能快遞柜終端控制系統(tǒng)主要通過觸摸顯示屏或者RFID 讀卡器獲取快遞員的登錄信息,通過條形碼掃描器讀取快遞件的包裹單號(hào)信息,快遞員將快遞件包裹信息輸入后,選擇大小合適箱格存放快件,系統(tǒng)通過鎖控板打開一個(gè)相應(yīng)的箱格提供快遞員放置快遞件,并將快件信息通過4G 網(wǎng)絡(luò)透傳至智能快遞柜的后臺(tái)管理系統(tǒng)(云平臺(tái)上),由云平臺(tái)將取件密碼發(fā)送短信給用戶。用戶通過觸摸屏輸入取件密碼后,控制系統(tǒng)經(jīng)云平臺(tái)驗(yàn)證通過后,開啟對應(yīng)快遞件放置的相應(yīng)箱格門,用戶取走快遞件完成操作。
智能快遞柜終端系統(tǒng)硬件采用模塊化設(shè)計(jì),柜體包含主柜和副柜兩種,主柜系統(tǒng)中由STM32核心控制板、工業(yè)級(jí)條碼掃描器、RFID 讀卡器、4G 通信模塊和鎖控板、電源組成。副柜主要包含鎖控板、電源兩個(gè)部分,主柜與副柜之間通過一根帶屏蔽的RS485 雙絞數(shù)據(jù)線連接進(jìn)行數(shù)據(jù)交互。整個(gè)系統(tǒng)的硬件電路結(jié)構(gòu)如圖2 所示。
圖2 智能快遞柜終端硬件電路結(jié)構(gòu)圖
智能快遞柜的柜體包含主柜體和副柜體兩種,從快遞員及快遞公司調(diào)查信息來看,使用量極大的是中號(hào)箱格,大號(hào)箱格和小號(hào)箱格使用量較小,主柜體設(shè)計(jì)為16 個(gè)中號(hào)箱格,副柜可以根據(jù)實(shí)際需求設(shè)計(jì)大、中、小設(shè)計(jì)三種規(guī)格,在應(yīng)用時(shí)可以根據(jù)實(shí)際需要增加副柜的數(shù)量,如圖3 所示?;A(chǔ)智能快遞柜配備了1 個(gè)主柜,1 個(gè)大號(hào)箱格的副柜和1 個(gè)中號(hào)箱格的副柜。
圖3 智能快遞柜柜體設(shè)計(jì)圖
智能快遞柜的設(shè)備組件多以串口方式交互信息,系統(tǒng)選擇具有5 個(gè)UART 的STM32F103VET6作為控制器的微處理器,該處理器為32 位Cortex-M 內(nèi)核,速度可達(dá)到72MHz,能夠方便實(shí)現(xiàn)多串口通信的模塊化設(shè)計(jì)[9-10],在快遞柜控制系統(tǒng)中,微處理器的USART1 設(shè)計(jì)為串口TTL 接口,滿足觸摸顯示屏TTL 串口通信,USART2、UART4、UART5 設(shè)計(jì)為RS232 接口,滿足條形碼掃描器、RFID 讀卡器、4G 通信,USART3 設(shè)計(jì)為RS485 接口,滿足主柜和副柜的柜門控制鎖孔板RS485 通信,整個(gè)系統(tǒng)的通信電路設(shè)計(jì)如圖4 所示。
圖4 RS232 通信電路圖
智能快遞柜系統(tǒng)中采用性價(jià)比較高的廣州大彩組態(tài)工業(yè)串口屏,該屏通過串口和微處理器通信實(shí)現(xiàn)按鈕、文本、圖片及觸摸控制功能,大彩串口屏的串口連接方式選擇TTL 電平,減少了RS232 的電平轉(zhuǎn)換電路,該TTL 電平兼容3.3V和5VIO 系統(tǒng),直接和微處理器STM32F103VET6的RXD、TXD、GND 相連。
智能快遞柜系統(tǒng)設(shè)計(jì)為主柜和副柜兩種規(guī)格,主柜和副柜中的每個(gè)箱格由相應(yīng)的鎖孔板實(shí)現(xiàn)電子鎖控制[11],為便于快遞柜根據(jù)實(shí)際需要對箱格數(shù)量進(jìn)行擴(kuò)展,鎖孔板采用RS485 通信接口,每塊鎖孔板上由6 位的撥碼開關(guān)設(shè)置鎖孔板地址,系統(tǒng)最多可以連接64 塊鎖孔板,通過主控板的STM32F103VET6 的UART3 發(fā)出控制指令,當(dāng)鎖控板接收到指令后,根據(jù)協(xié)議進(jìn)行解析,對應(yīng)的鎖孔板控制電子鎖打開對應(yīng)箱格,控制電子鎖的鎖控板使用了FDS4935BZ 場效應(yīng)管來控制電子鎖,由鎖控板上微處理器STC15W4K60S4通過三極管控制FDS4935BZ 場效應(yīng)管的導(dǎo)通與截止,電子鎖控制電路如圖5 所示。
圖5 電子鎖控制電路圖
智能快遞柜的安裝位置一般在一個(gè)小區(qū)或企業(yè)的門口,不便于安裝有線網(wǎng)絡(luò),控制系統(tǒng)設(shè)計(jì)采用4G 技術(shù)完成網(wǎng)絡(luò)數(shù)據(jù)通信,實(shí)現(xiàn)智能快遞柜終端與阿里云管理后臺(tái)的信息交互[12-13]。4G模塊選用有人科技公司的USR-G776 模塊,該模塊提供了RS232 和RS485 兩個(gè)接口,系統(tǒng)采用RS232 串口與控制板相連,利用物聯(lián)網(wǎng)卡與互聯(lián)網(wǎng)通過4G 網(wǎng)絡(luò)交互數(shù)據(jù),通過配置軟件設(shè)置阿里云管理后臺(tái)的服務(wù)器地址、端口以及注冊包信息和串口通信波特率等參數(shù),當(dāng)該模塊通過4G與服務(wù)器連接上之后,控制系統(tǒng)通過串口直接將快遞員放置快遞信息及用戶取件時(shí)的信息直接發(fā)送到4G 模塊,數(shù)據(jù)最終透傳到云平臺(tái)服務(wù)器,服務(wù)器返回的數(shù)據(jù)由模塊直接發(fā)送到STM32F103VET6 的串口,從而實(shí)現(xiàn)智能快遞柜終端控制板與云平臺(tái)控制后臺(tái)數(shù)據(jù)庫的雙向數(shù)據(jù)透明傳輸。
智能快遞柜的終端主要是實(shí)現(xiàn)快遞員注冊、登錄、放置快遞包裹以及用戶查詢、提取快件以及管理員登錄查詢等功能,起到聯(lián)絡(luò)快遞員、用戶、管理員與后臺(tái)數(shù)據(jù)交互的作用,一方面把這些人員輸入的信息傳送到控制后臺(tái),然后再根據(jù)后臺(tái)返回的指令信息通過屏幕傳遞操作人員,同時(shí)根據(jù)指令打開相應(yīng)的大中小號(hào)箱格門。
智能快遞柜的主程序主要是實(shí)現(xiàn)各個(gè)模塊之間的協(xié)調(diào)、調(diào)用和與控制后臺(tái)的信息交互功能,主程序首先完成處理器及外設(shè)的初始化,啟動(dòng)系統(tǒng)工作,等待快遞員或用戶操作,當(dāng)接收到操作指令后,對指令進(jìn)行解析,根據(jù)指令解析結(jié)果多分支處理,分別針對快遞注冊、快遞放件、用戶查詢、用戶取件、管理員管理進(jìn)行處理,在對應(yīng)分支中按照操作流程完成相應(yīng)的數(shù)據(jù)交互與記錄。主程序流程圖如圖6 所示。
圖6 系統(tǒng)軟件結(jié)構(gòu)框圖
智能快遞柜掃碼程序主要用在快遞員登錄后,進(jìn)行放件操作的過程中使用掃碼器輸入快遞單號(hào)時(shí)啟動(dòng)掃碼程序,其余時(shí)間掃碼程序處于等待狀態(tài)。當(dāng)調(diào)用掃碼程序時(shí),首先將從UART4 接收到的數(shù)據(jù)存儲(chǔ)到緩沖變量ucBarCode_Buffer[]中,然后再將單號(hào)轉(zhuǎn)存快遞單號(hào)信息組中,一方面提供觸屏操作顯示使用,另外在快遞員確認(rèn)信息后由4G 模塊透傳至阿里云控制后臺(tái)。掃碼程序部分代碼如下:
//串口4 接收的數(shù)據(jù)依次放入BARCODE 緩沖,串口中斷使用
void BARCODE_PushData(uint8_t ucDat){
ucBarCode_Buffer [ucBarCode_Addr] =ucDat;
ucBarCode_Addr++;
}
//串口4 接收的數(shù)據(jù)放入快遞單號(hào)信息組中,void BARCODE_Input(void){
uint8_t i=0;
for(i=0;i<20;i++){
tempPostNum[i] = 0x00;
}
i = 0;
while(ucBarCode_Buffer[i] ! = 0x0D){
tempPostNum[i] = ucBarCode_Buffer[i];
i++;
}
}
智能快遞柜的刷卡程序主要在快遞員放件時(shí)快速登錄使用[14],當(dāng)快遞員點(diǎn)擊快遞員放件圖標(biāo)后觸發(fā)刷卡程序。刷卡程序首先通過讀卡器發(fā)現(xiàn)有卡,然后通過串口輸出讀卡指令,讀取指定的塊數(shù)據(jù),然后將讀回的數(shù)據(jù)放入快遞用戶登錄名和登錄密碼數(shù)據(jù)信息組中,在屏幕上顯示用戶名,密碼用*號(hào)顯示,當(dāng)快遞員點(diǎn)擊登錄按鈕后,控制器將登錄名和登錄密碼通過4G 模塊透傳至阿里云控制后臺(tái)比對快遞員信息,并返回的云平臺(tái)比對結(jié)果信息。該部分程序流程圖如圖7 所示。
圖7 快遞員登錄程序流程圖
在控制系統(tǒng)的人機(jī)界面設(shè)計(jì)時(shí),首先利用大彩串口觸摸屏的上位機(jī)VisualTFT 軟件,將預(yù)先設(shè)計(jì)好的背景圖片和各種控件進(jìn)行排版、配置,使用PC 機(jī)模擬“虛擬串口屏”,當(dāng)模擬調(diào)試通過后,通過利用USB 連接線下載工程設(shè)計(jì)文件到串口屏中[15]。當(dāng)用戶觸摸屏幕圖片或者控件時(shí),控制系統(tǒng)的STM32 微處理器便會(huì)通過串口收到下傳的按鈕等控件ID 值,通過控件ID 值解析,判斷出是哪個(gè)控件被點(diǎn)擊操作,最后經(jīng)過STM32微處理器程序處理后,按照命令格式發(fā)送相應(yīng)的指令去控制顯示器的顯示控件及畫面顯示內(nèi)容。智能快遞柜終端中快遞員登錄界面設(shè)計(jì)如圖8所示。
圖8 快遞員登錄界面圖
智能快遞柜的人機(jī)界面中串口驅(qū)動(dòng)程序?qū)⒔邮諄淼目丶?shù)據(jù)依次放入環(huán)形緩沖隊(duì)列,然后從緩沖隊(duì)列中依次提取出完整的每一條指令,根據(jù)指令類型、消息類型和相應(yīng)的畫面ID 號(hào)信息,程序作出不同的處理。智能快遞柜人機(jī)界面中串口屏程序流程圖如圖9 所示。
圖9 智能快遞柜串口屏程序流程圖
智能快遞柜系統(tǒng)除了終端設(shè)備外,還需要控制后臺(tái)和數(shù)據(jù)庫的支持,整個(gè)智能快遞柜的控制后臺(tái)由C#設(shè)計(jì)完成[16],控制后臺(tái)主要完成與快遞柜終端設(shè)備的數(shù)據(jù)信息交互、快遞員投件時(shí)間、包裹信息存儲(chǔ)、用戶取件時(shí)間、取件單號(hào)等存儲(chǔ)記錄功能??刂坪笈_(tái)管理員界面如圖10 所示。
圖10 智能快遞柜控制后臺(tái)管理員界面圖
設(shè)計(jì)完成的智能快遞柜系統(tǒng)主要進(jìn)行了快遞員注冊、快遞員放件、用戶取件、用戶查詢及管理員管理等性能測試。完成的智能快遞柜系統(tǒng)在實(shí)驗(yàn)室進(jìn)行了模擬操作測試后,進(jìn)行樣機(jī)試制,并投放到市場進(jìn)行試運(yùn)行,如圖11 所示。兩臺(tái)快遞柜在實(shí)地測試近1 年時(shí)間,在測試過程中解決了系統(tǒng)中快遞員操作方法中因不按照流程執(zhí)行帶來的系統(tǒng)紊亂、室外高溫、設(shè)備防雨、系統(tǒng)通信延遲等問題,同時(shí)也收集了大量的修改和完善建議,并對系統(tǒng)進(jìn)行了升級(jí)與完善,目前設(shè)備運(yùn)行良好。通過測試分析,基于物聯(lián)網(wǎng)技術(shù)的智能快遞柜系統(tǒng)實(shí)現(xiàn)了預(yù)定的設(shè)計(jì)目標(biāo)。
圖11 智能快遞柜內(nèi)部結(jié)構(gòu)及現(xiàn)場測試圖
利用物聯(lián)網(wǎng)、條形碼、RFID、4G 通信等技術(shù)設(shè)計(jì)完成了智能快遞柜系統(tǒng)終端和控制后臺(tái)軟件,實(shí)現(xiàn)了快遞的智能投遞與用戶領(lǐng)取的功能,并能夠利用云管理系統(tǒng)實(shí)現(xiàn)快遞員信息登記、充值、快遞投放、領(lǐng)取等數(shù)據(jù)信息的管理工作,系統(tǒng)在長期測試中穩(wěn)定可靠,解決了快遞業(yè)最后一百米投遞問題。