周華
摘 要:隨著電子信息技術(shù)的發(fā)展,現(xiàn)代倉庫管理基本實現(xiàn)了條形碼管理。但商品出入庫仍存在存放位置定位困難的問題。為了提高商品出入庫作業(yè)效率,本文設(shè)計了一種基于STM32的LED簡易倉庫定位、指示系統(tǒng),該系統(tǒng)包含數(shù)據(jù)解析和執(zhí)行兩部分,方便引導(dǎo)物流作業(yè)員對商品進(jìn)行準(zhǔn)確定位,實現(xiàn)快速出庫和入庫。該系統(tǒng)設(shè)計簡單,成本低廉,對提高出入庫作業(yè)效率具有重要價值。
關(guān)鍵詞:倉庫管理;stm32;定位系統(tǒng)
DOI:10.16640/j.cnki.37-1222/t.2018.23.107
1 引言
本系統(tǒng)需求來源于物流倉儲現(xiàn)場作業(yè)。雖然物流數(shù)據(jù)庫管理系統(tǒng)已很成熟,但是物流作業(yè)人員仍面臨商品出入庫時無法快速準(zhǔn)確定位商品位置的問題,商品定位花費時間成本很高。因此設(shè)計一個定位引導(dǎo)系統(tǒng)非常必要,可以大大降低人力成本、提高工作效率。倉庫中貨物放置類型可以分為稀疏型和緊密型兩類。稀疏性貨物占據(jù)位置和空間較大,容易查找定位;而緊密型貨物位置和空間相互接近,需仔細(xì)尋找才能確定準(zhǔn)確位置。本設(shè)計采用單片機控制三色LED指示燈對緊密型倉儲中商品的準(zhǔn)確位置進(jìn)行定位和引導(dǎo)。
2 系統(tǒng)方案設(shè)計
倉庫管理采用指示系統(tǒng)與數(shù)據(jù)庫系統(tǒng)結(jié)合的管理方式,在倉儲作業(yè)時增加智能定位引導(dǎo)功能,用于實現(xiàn)倉庫物料快速入庫、出庫和查詢,保證作業(yè)人員快速準(zhǔn)確地完成作業(yè)。
倉庫LED定位指示系統(tǒng)接收來自倉庫管理系統(tǒng)的命令數(shù)據(jù),按照指示命令點亮三色LED定位指示燈實現(xiàn)位置引導(dǎo)。倉庫定位指示系統(tǒng)由數(shù)據(jù)解析系統(tǒng)和執(zhí)行系統(tǒng)兩部分組成。數(shù)據(jù)解析系統(tǒng)基于STM32硬件平臺進(jìn)行開發(fā),采用Linux操作系統(tǒng)。上位機電腦上運行的數(shù)據(jù)庫管理系統(tǒng)通過本地局域網(wǎng)發(fā)送的數(shù)據(jù)和指令,數(shù)據(jù)解析系統(tǒng)接收數(shù)據(jù)。在對數(shù)據(jù)解析后,通過串口發(fā)送給執(zhí)行系統(tǒng)。執(zhí)行系統(tǒng)采用性價比高的8位STC89C52單片機為核心構(gòu)建,根據(jù)串口接收的指令,控制對應(yīng)的LED指示燈點亮,實現(xiàn)商品位置引導(dǎo)定位。總系統(tǒng)框圖如1所示。
3 數(shù)據(jù)解析系統(tǒng)
數(shù)據(jù)解析系統(tǒng)通過無線局域網(wǎng)接收電腦發(fā)送數(shù)據(jù)命令,通過通信協(xié)議完成轉(zhuǎn)換后,發(fā)送到執(zhí)行系統(tǒng)。數(shù)據(jù)解析系統(tǒng)基于Linux操作系統(tǒng),采用多進(jìn)程機制工作:Socket進(jìn)程和RS485進(jìn)程。Socket進(jìn)程負(fù)責(zé)數(shù)據(jù)解析系統(tǒng)與PC上位機的通信。RS485進(jìn)程控制與執(zhí)行系統(tǒng)之間的通信,兩個進(jìn)程之間通過消息隊列實現(xiàn)數(shù)據(jù)通信。如圖2所示。
3.1 Socket進(jìn)程
啟動數(shù)據(jù)解析系統(tǒng)后,Socket進(jìn)程父進(jìn)程啟動,等待PC機傳輸數(shù)據(jù)。一旦收到數(shù)據(jù)連接請求,父進(jìn)程就創(chuàng)建一個子進(jìn)程。父進(jìn)程功能不變,繼續(xù)等待PC機傳輸數(shù)據(jù)。子進(jìn)程則接受上位機數(shù)據(jù),并對數(shù)據(jù)進(jìn)行解析,加入校驗碼等信息,打包封裝成發(fā)送給單片機執(zhí)行系統(tǒng)的數(shù)據(jù)包,發(fā)送到消息隊列等待發(fā)送。
3.2 RS485子進(jìn)程
RS485進(jìn)程阻塞式讀取消息隊列中的數(shù)據(jù)。在讀取數(shù)據(jù)后立刻打開串口設(shè)備,對串口進(jìn)行初始化設(shè)置;然后打幵總線驅(qū)動器設(shè)備,把總線驅(qū)動器狀態(tài)置為發(fā)送總線數(shù)據(jù)狀態(tài);最后把讀取的數(shù)據(jù)經(jīng)過串口設(shè)備發(fā)送至總線。RS485進(jìn)程能夠創(chuàng)建消息隊列,阻塞式從消息隊列中讀取數(shù)據(jù),打開串口和總線驅(qū)動器設(shè)備,發(fā)送數(shù)據(jù)給總線。
4 執(zhí)行系統(tǒng)
執(zhí)行系統(tǒng)主要由單片機系統(tǒng)電路和LED陣列電路組成。單片機負(fù)責(zé)和上位機進(jìn)行通信,接收數(shù)據(jù)和指令。LED陣列電路實現(xiàn)引導(dǎo)定位功能。每個位置LED有三種顏色,對應(yīng)商品的入庫、出庫和查詢定位。由于單片機的IO口資源有限(4組32個),所以使用74HC154譯碼器對IO口進(jìn)行擴展。將LED定位擴展為144個點位。
同一執(zhí)行系統(tǒng)(同一單片機)每次只能實現(xiàn)入庫、出庫和查詢?nèi)N功能中的一種功能。但不同執(zhí)行系統(tǒng)(不同單片機)之間,可以實現(xiàn)不同功能。
5 結(jié)語
本系統(tǒng)硬件成本低廉,制作簡單,功能豐富。通過與PC機商的物流數(shù)據(jù)庫系統(tǒng)結(jié)合,可以實現(xiàn)為商品位置進(jìn)行查詢,出入庫定位指引功能。方便作業(yè)人員快速完成物流作業(yè)。節(jié)約了成本,提高了工作效率。
參考文獻(xiàn):
[1]王世英.淺談材料入庫、出庫及倉庫管理[J].大陸橋視野,2011(10)
:39,41.
[2]徐逸夫.Linux下基于socket多線程并發(fā)通信的實現(xiàn)[J].通訊世界,2016(16):86.
[3]歐軍,吳清秀,裴云等.基于socket的網(wǎng)絡(luò)通信技術(shù)研究[J].網(wǎng)絡(luò)安全與應(yīng)用,2011(07):19-21.
[4]熊文,王莉,肖健等.一種RS485串口通信電路的高可靠性設(shè)計 [J].自動化與儀器儀表,2017(03):43-45.
[5]王樹梅.基于現(xiàn)場總線的溫室多點監(jiān)測系統(tǒng)的設(shè)計[J].數(shù)字技術(shù)與應(yīng)用,2016(10):151-152.