夏家輝 楊虹
摘 要:隨著電子商務(wù)的蓬勃發(fā)展,在發(fā)貨過程中出現(xiàn)的一些人為操作失誤帶來的損失是電商賣家們需要避免的。系統(tǒng)選取重量這一與商品材質(zhì)高度相關(guān)的參量作為區(qū)分貨品的主要因素,通過重量與相應(yīng)商品的適配關(guān)系來判別分析選定商品是否為某一款類商品以及是否合格。系統(tǒng)基于STM32F103芯片,以應(yīng)變式稱重傳感器來采集重量信號(hào),并經(jīng)HX711芯片放大與A/D轉(zhuǎn)換。通過與數(shù)據(jù)庫中標(biāo)準(zhǔn)商品重量范圍值的比較,保證發(fā)出商品為對(duì)應(yīng)型號(hào),同時(shí)自動(dòng)對(duì)已發(fā)出的合格商品進(jìn)行計(jì)數(shù)。
關(guān)鍵詞:物聯(lián)網(wǎng);電子商務(wù);STM32;發(fā)貨保障;A/D轉(zhuǎn)換;HX711
中圖分類號(hào):TP29文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2020)04-00-02
0 引 言
電子商務(wù)的蓬勃發(fā)展對(duì)電商賣家們提出了越來越高的要求。他們不再是單單依靠比拼價(jià)格取勝,而是從各方面來節(jié)省成本,提升利潤[1-2]。由于現(xiàn)階段大多數(shù)商家的發(fā)貨過程并未實(shí)現(xiàn)全自動(dòng)化,還需要依賴大量人工操作,導(dǎo)致發(fā)錯(cuò)貨、少發(fā)貨、瑕疵貨品發(fā)出、貨品被調(diào)包等狀況層出不窮。
盡管阿里巴巴、京東、蘇寧等主要電商平臺(tái),以及大型快遞物流商已逐漸采用智能分揀機(jī)器人來提高配貨和分揀貨物的效率和準(zhǔn)確率。例如菜鳥的無人倉,京東的“亞洲一號(hào)倉”[3],它們都使用了大量AGV(Automated Guided Vehicle),即無人運(yùn)輸車。但是一臺(tái)AGV小車的價(jià)格約十萬元,而且需要專業(yè)人員進(jìn)行系統(tǒng)維護(hù),因此在現(xiàn)階段運(yùn)用AGV進(jìn)行貨物分揀成本非常高[4]。
針對(duì)當(dāng)下現(xiàn)狀,建立一套經(jīng)濟(jì)實(shí)用的發(fā)貨商品屬性檢測(cè)系統(tǒng)很有必要。
1 系統(tǒng)設(shè)計(jì)
在貨品大類選擇已定條件下,一件商品的尺寸、重量、顏色、材質(zhì)等屬性參數(shù)可以與商品來源、規(guī)格、質(zhì)量關(guān)聯(lián)。當(dāng)下定制化商品較多,因此型號(hào)也很多。例如一款保溫杯有3種顏色,4種不同的容量,2種不同的材質(zhì),那么型號(hào)為
24個(gè),可能對(duì)應(yīng)24種價(jià)格。僅考慮顏色、材質(zhì)、容量大小無法有效區(qū)分產(chǎn)品型號(hào),但產(chǎn)品顏色一致時(shí),不同材質(zhì)或不同容量的產(chǎn)品重量不同,因此可以根據(jù)產(chǎn)品重量的差別精準(zhǔn)區(qū)分產(chǎn)品的不同型號(hào)。
對(duì)于不同型號(hào)的貨品,需建立數(shù)據(jù)庫并錄入每種型號(hào)標(biāo)樣的重量范圍。當(dāng)貨物被放置在操作臺(tái)上,顯示屏可實(shí)時(shí)顯示當(dāng)前貨品的重量。并將當(dāng)前商品測(cè)得的重量與數(shù)據(jù)庫中標(biāo)準(zhǔn)商品的重量范圍值進(jìn)行對(duì)比,如果商品的重量在標(biāo)準(zhǔn)重量范圍值內(nèi),則該件商品合格,可以發(fā)出,且商品發(fā)出數(shù)目加1。反之,蜂鳴器報(bào)警,提示操作人員該件商品異常,不能發(fā)出。系統(tǒng)工作流程如圖1所示[5]。
2 硬件設(shè)計(jì)
系統(tǒng)采用精度可達(dá)0.1 g的重力傳感器模塊采集商品的重量信息,集成有信號(hào)放大和A/D轉(zhuǎn)換功能的HX711芯片對(duì)信號(hào)進(jìn)行放大與數(shù)模轉(zhuǎn)換處理。STM32F103處理器完成系統(tǒng)數(shù)據(jù)與數(shù)據(jù)庫信息的對(duì)比,判定商品是否合格,并做出相應(yīng)處理。LCD12864模塊可對(duì)系統(tǒng)工作的結(jié)果進(jìn)行實(shí)時(shí)顯示。
2.1 主控制模塊
系統(tǒng)采用STM32F103主控芯片,內(nèi)核為Cortex-M33的32位ARM微控制器,其工作頻率為72 MHz,內(nèi)置512 KB的高速閃存和64 KB的SRAM,有性能強(qiáng)大的外設(shè),如3個(gè)12位的ADC、4個(gè)通用的16位定時(shí)器和2個(gè)PWM定時(shí)器。具有豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè),還包含有標(biāo)準(zhǔn)和先進(jìn)的通信接口,能很好地滿足本系統(tǒng)的要求[6]。
2.2 重量采集模塊
重量采集模塊采用雙孔懸臂平行梁應(yīng)變式重力傳感器。它由電阻應(yīng)變片、檢測(cè)電路和彈性體組成。工作原理:基于彈性體在外力作用下產(chǎn)生彈性形變,使粘貼在它表面的電阻應(yīng)變片隨同變形,電阻應(yīng)變片變形后,其阻值發(fā)生變化。再經(jīng)相應(yīng)的測(cè)量電路把這一電阻變化轉(zhuǎn)換為電信號(hào),從而完成將外力變換為電信號(hào)的過程[7]。傳感器電橋的四個(gè)臂接工作應(yīng)變片均參與機(jī)械變形。當(dāng)電橋處于平衡狀態(tài)時(shí),傳感器的輸出電壓與激勵(lì)電壓及傳感器的形變量呈線性關(guān)系[8]。
2.3 HX711芯片
電阻應(yīng)變式稱重傳感器采集到的重量信號(hào)還需要經(jīng)過放大和A/D轉(zhuǎn)換后才能傳入主控芯片中進(jìn)行分析處理。HX711是專為高精度電子秤設(shè)計(jì)的芯片,具有集成度高、響應(yīng)速度快、抗干擾性強(qiáng)等優(yōu)點(diǎn)。內(nèi)部集成有放大模塊和24位A/D轉(zhuǎn)換模塊。芯片內(nèi)有兩路可選差分輸入,即A路與B路,輸入選擇開關(guān)可以按需選擇。A路對(duì)應(yīng)的放大器增益編程可選,為64或128,B路對(duì)應(yīng)的放大器增益為固定的32。A/D轉(zhuǎn)換部分可以實(shí)現(xiàn)模擬量到數(shù)字量的轉(zhuǎn)換,其電路結(jié)構(gòu)如圖2所示[9]。
2.4 LCD顯示模塊
為了更好地完成人機(jī)交互,該發(fā)貨保障識(shí)別系統(tǒng)采用LCD12864液晶顯示屏顯示相關(guān)數(shù)據(jù)。上電工作后可配合單片機(jī)完成圖形、漢字、英文字符的顯示,顯示器與外部控制單元的接口可采用串行或并行方式控制,其分辨率為128×64。LCD12864內(nèi)部主要由LCD顯示屏、控制器、驅(qū)動(dòng)器和偏壓產(chǎn)生電路構(gòu)成[10]。
系統(tǒng)上電后液晶顯示屏分3行顯示數(shù)據(jù)信息,分別顯示商品重量、標(biāo)準(zhǔn)重量范圍中間值、發(fā)出商品的計(jì)數(shù)結(jié)果。用單片機(jī)的I/O引腳就可以實(shí)現(xiàn)對(duì)該模塊的控制[11]。
3 軟件設(shè)計(jì)
程序通過Keil μVision4編譯,采用結(jié)構(gòu)化的C語言編寫系統(tǒng)程序。系統(tǒng)程序除了主程序外,還包括HX711,LCD12864,UART三部分子程序。各部分子程序中除了包含相關(guān)程序的頭文件外,還包含引用的函數(shù)[11]。
主函數(shù)程序?qū)崿F(xiàn)了設(shè)計(jì)的功能,它定義了相關(guān)芯片的引腳,對(duì)存儲(chǔ)器的數(shù)據(jù)進(jìn)行讀和寫入。通過對(duì)相關(guān)函數(shù)的調(diào)用,實(shí)現(xiàn)了采集貨品重量信息并對(duì)采集到的信息進(jìn)行處理的目的。主程序流程如圖3所示。
3.1 HX711子程序
HX711程序部分定義了延時(shí)函數(shù)與讀取函數(shù),可對(duì)信號(hào)放大128倍并把數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)輸出。
3.2 UART子程序
UART程序部分首先定義了初始化函數(shù),然后定義了字符串發(fā)送函數(shù)與單個(gè)字符發(fā)送函數(shù),可以把并行輸入信號(hào)轉(zhuǎn)換成串行信號(hào)。
3.3 LCD子程序
在本設(shè)計(jì)中,LCD12864需顯示3行數(shù)據(jù)。我們要先對(duì)LCD進(jìn)行初始化,定義相應(yīng)管腳。然后根據(jù)實(shí)驗(yàn)需要分配三行數(shù)據(jù)的位置坐標(biāo)。第一行重量顯示的行坐標(biāo)為0x80,顯示字符“Weight”;第二行標(biāo)樣重量范圍中間值的行坐標(biāo)為0x90,顯示字符“Standard”;第三行計(jì)數(shù)的行坐標(biāo)為0x88,顯示字符“Count”。根據(jù)設(shè)計(jì)要求,設(shè)定每行顯示4位數(shù)據(jù),初始值為“0000”。第一行與第二行的單位都均為“g”,第三行的單位為“p”[12]。
4 系統(tǒng)測(cè)試
選取一款僅材質(zhì)不同的LED燈罩對(duì)本系統(tǒng)進(jìn)行測(cè)試。該款燈罩有3種型號(hào)。型號(hào)1~3的材質(zhì)分別為高透光率的亞克力材料,PVC,普通亞克力材料。三種燈罩的重量分別是200 g,217 g,245 g。當(dāng)設(shè)定系統(tǒng)標(biāo)準(zhǔn)重量為200 g時(shí),型號(hào)1為合格商品,可通過檢測(cè)并計(jì)數(shù),型號(hào)2及型號(hào)3無法通過檢測(cè),系統(tǒng)報(bào)警。同樣設(shè)定型號(hào)2和型號(hào)3為合格商品時(shí),系統(tǒng)均可以很好地保證合格商品通過并計(jì)數(shù),同時(shí)對(duì)不合格的商品進(jìn)行預(yù)警。
5 結(jié) 語
為了提高電商發(fā)貨過程中的發(fā)貨效率從而減少經(jīng)濟(jì)損失,我們?cè)O(shè)計(jì)了一套以STM32F103為核心的發(fā)貨保障系統(tǒng)。該系統(tǒng)以重量這一商品屬性作為區(qū)分商品是否合格的判別要素,從而幫助區(qū)分商品是否為指定產(chǎn)品以及是否合格。經(jīng)過測(cè)試,該發(fā)貨保障系統(tǒng)能很好地對(duì)產(chǎn)品進(jìn)行識(shí)別并統(tǒng)計(jì)發(fā)出的合格商品總數(shù),同時(shí)對(duì)不合格產(chǎn)品進(jìn)行預(yù)警。
參考文獻(xiàn)
[1]李治國.“雙十一”為何又創(chuàng)新高?[N].社會(huì)科學(xué)報(bào),2019-12-05(改革實(shí)踐).
[2]吳桂賢.新時(shí)代電子商務(wù)發(fā)展對(duì)策研究[J].山西農(nóng)經(jīng),2019(20):131-132.
[3]李禾.無人物流未來已來[J].中國品牌,2018(8):46-48.
[4]王震,范學(xué)慧.AGV小車系統(tǒng)在自動(dòng)化物流系統(tǒng)中的應(yīng)用[J].南方農(nóng)機(jī),2019,50(18):56.
[5]李鑫,任安虎,陳沐萱,等.基于STM32的智能巡邏管家設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2019,9(12):91-93.
[6] XIAO H H,LUO J M. Design of electrical parameter measurement system for three phase AC motor based on STM32 [J]. Sensors & transducers,2014,174(7):205-210.
[7]張波,王晨陽,徐傳旭,等.基于STC89C52和HX711的電子秤設(shè)計(jì)[J].現(xiàn)代信息科技,2019,3(8):42-43.
[8]韋康康,屈力揚(yáng),秦會(huì)斌.電子天平的研究與設(shè)計(jì)[J].機(jī)電工程,2011(3):317-319.
[9]葛耿育.基于STC89C52的LCD12864液晶串并行顯示設(shè)計(jì)[J].遵義師范學(xué)院學(xué)報(bào),2016(5):98-101.
[10]張思卿,張帆.一款新型智能電子秤的設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2019,9(7):51-53.
[11]王李冬,安康,徐瑋.單片機(jī)與物聯(lián)網(wǎng)技術(shù)應(yīng)用實(shí)戰(zhàn)教程[M].北京:機(jī)械工業(yè)出版社,2018:265.
[12]深圳科比商貿(mào).液晶顯示模塊技術(shù)手冊(cè)-12864B[EB/OL].http://risym.tmall.com,2017-05-18.