北京起重運(yùn)輸機(jī)械設(shè)計(jì)研究院有限公司 北京 100007
作為現(xiàn)代物流的一個(gè)重要組成部分,倉(cāng)庫(kù)管理一直在物流管理中起著非常重要的作用。倉(cāng)庫(kù)管理系統(tǒng)(WMS)是一個(gè)實(shí)時(shí)的計(jì)算機(jī)軟件系統(tǒng),它能按照運(yùn)作的業(yè)務(wù)規(guī)則和運(yùn)算法則,對(duì)信息、資源、行為、存貨和分銷(xiāo)運(yùn)作進(jìn)行更完美的管理,使其最大化滿足有效產(chǎn)出和精確性的要求。先進(jìn)的物流倉(cāng)儲(chǔ)既可保證供應(yīng)鏈上下游企業(yè)能及時(shí)、順利地進(jìn)行物資流通,也能大幅減少流動(dòng)資金占有率、降低成本、提高企業(yè)收益、縮短作業(yè)周期以及提高效率。但是,倉(cāng)庫(kù)管理和操作界面存在不直觀、操作枯燥等問(wèn)題,需要從可視化和場(chǎng)景模擬方面進(jìn)行提升。少數(shù)企業(yè)試圖解決這一現(xiàn)狀,采用偽3D模型顯示設(shè)備的運(yùn)行狀態(tài),但用戶仍只能通過(guò)固定方位的三維圖片查看設(shè)備的線性運(yùn)動(dòng),且缺乏詳細(xì)的貨物信息。本文介紹了一種基于Web的3D可視化實(shí)現(xiàn)方案,底層基于HTML5 WebGL技術(shù),將倉(cāng)庫(kù)的場(chǎng)景通過(guò)虛擬現(xiàn)實(shí)技術(shù)仿真構(gòu)建。相對(duì)于傳統(tǒng)圖標(biāo)顯示,無(wú)論是用戶體驗(yàn)還是質(zhì)量都得到巨大提升。
WebGL(Web Graphics Library)是一種3D繪圖協(xié)議,這種繪圖技術(shù)通過(guò)JavaScript與OpenGL ES 2.0的技術(shù)融合,生成了OpenGL ES 2.0的JavaScript綁定,以瀏覽器調(diào)用顯卡硬件的性能,利用HTML5 Canvas的硬件3D渲染加速技術(shù),流暢地展示3D模型和3D場(chǎng)景,并創(chuàng)建復(fù)雜的導(dǎo)航和數(shù)據(jù)視覺(jué)化。WebGL是瀏覽器的自帶標(biāo)準(zhǔn)之一,不需要安裝任何插件或組件,區(qū)別于Flash和SiverLight,僅使用HTML和JavaSvript腳本即可實(shí)現(xiàn)性能強(qiáng)大的Web三維交互應(yīng)用,并可在任何平臺(tái)上運(yùn)行。WebGL系統(tǒng)各組成部分在既定規(guī)則下互相配合,在瀏覽器中的主要結(jié)構(gòu)關(guān)系如圖1所示[2]。
圖1 WebGL結(jié)構(gòu)圖
圖2為系統(tǒng)框架設(shè)計(jì),倉(cāng)庫(kù)管理系統(tǒng)(WMS)作為供應(yīng)鏈管理的中心環(huán)節(jié),是典型的承接上下的角色。上要管理供應(yīng)商,即與上位系統(tǒng)ERP/MES通過(guò)接口進(jìn)行對(duì)接,接收上位系統(tǒng)下發(fā)的訂單,根據(jù)訂單類(lèi)型進(jìn)行入出庫(kù)操作;下要管理運(yùn)輸環(huán)節(jié),即與下位監(jiān)控系統(tǒng)WCS對(duì)接,通過(guò)監(jiān)控WCS對(duì)自動(dòng)化設(shè)備,如堆垛機(jī)、輸送機(jī)、箱輸送線等進(jìn)行調(diào)度,實(shí)現(xiàn)上位系統(tǒng)訂單物料的入出庫(kù)流程。
圖2 系統(tǒng)框架設(shè)計(jì)圖
圖3為系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)圖,系統(tǒng)采用客戶端、數(shù)據(jù)模型端、數(shù)據(jù)層端的設(shè)計(jì)模式,基于底層WebGL(Web Graphics Library)技術(shù)開(kāi)發(fā),通過(guò)面向?qū)ο蟮姆绞椒庋b,屏蔽了組件的異構(gòu)性,采用統(tǒng)一的DataModel數(shù)據(jù)模型,可驅(qū)動(dòng)所有3D系統(tǒng)的視圖組件。
圖3 系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)圖
1)管理系統(tǒng)功能設(shè)計(jì)
如圖4所示,管理系統(tǒng)功能模塊分為貨位管理、入出庫(kù)管理、設(shè)備管理和借口管理等4大功能模塊。
圖4 管理系統(tǒng)功能設(shè)計(jì)
①貨位管理 查詢當(dāng)前在庫(kù)所有物料信息,包含目標(biāo)地址、物料代碼、數(shù)量、批號(hào)、單據(jù)類(lèi)型以及貨位狀態(tài)(在入、在出、在庫(kù))等。
②入出庫(kù)管理 查詢倉(cāng)庫(kù)實(shí)時(shí)入出庫(kù)任務(wù)和入出庫(kù)任務(wù)歷史信息,對(duì)貨位上的物料下發(fā)入出庫(kù)指令。
③設(shè)備管理 通過(guò)監(jiān)控系統(tǒng)WCS與設(shè)備的實(shí)時(shí)交互,反饋設(shè)備的狀態(tài),再通過(guò)接口回傳給管理系統(tǒng)WMS顯示到界面上,使用戶可遠(yuǎn)程對(duì)設(shè)備進(jìn)行管理,包括解除設(shè)備故障等。
④接口管理 通過(guò)接口系統(tǒng)與監(jiān)控系統(tǒng)WCS完成信息的交互,實(shí)現(xiàn)完整的入出庫(kù)流程。
2)監(jiān)控系統(tǒng)功能設(shè)計(jì)
如圖5所示,監(jiān)控系統(tǒng)(WCS)是連接軟件和硬件交互的重要樞紐,將管理系統(tǒng)(WMS)下發(fā)的入出庫(kù)指令通過(guò)接口傳遞給設(shè)備,如堆垛機(jī)、機(jī)械手、輸送線等完成實(shí)物入出庫(kù)動(dòng)作。除此之外,監(jiān)控系統(tǒng)(WCS)也可單機(jī)對(duì)設(shè)備進(jìn)行調(diào)度,即在沒(méi)有管理系統(tǒng)的入出庫(kù)指令下,可驅(qū)動(dòng)設(shè)備將實(shí)物進(jìn)行入出庫(kù)操作。
圖5 監(jiān)控系統(tǒng)功能設(shè)計(jì)
除圖6所示側(cè)視圖視角以外,系統(tǒng)還可通過(guò)正視圖、俯視圖、斜視圖等多個(gè)視角可對(duì)貨位進(jìn)行瀏覽。多視角瀏覽主要代碼如下:
圖6 側(cè)視圖
如圖7所示,設(shè)備管理包含設(shè)備狀態(tài)查詢,如堆垛機(jī)、輸送機(jī)等設(shè)備的狀態(tài)。以及設(shè)備故障解除功能。故障信息查詢代碼如下:
圖7 故障管理
1)入出庫(kù)任務(wù)查詢
查詢當(dāng)前堆垛機(jī)入庫(kù)、查詢當(dāng)前堆垛機(jī)入庫(kù)、出庫(kù)、直出作業(yè)和托盤(pán)輸送機(jī)入出庫(kù)作業(yè)等,如圖8所示,包括任務(wù)類(lèi)型、起始貨位地址、終止貨位地址、優(yōu)先級(jí)、狀態(tài)、輸送機(jī)起始地址、輸送機(jī)終止地址、時(shí)間等。入出庫(kù)任務(wù)查詢主要代碼如下:
2)入出庫(kù)任務(wù)下發(fā)
如圖9所示,在聯(lián)機(jī)和脫機(jī)的情況下進(jìn)行入出庫(kù)任務(wù)的下發(fā)。聯(lián)機(jī)是與管理系統(tǒng)相連接,通過(guò)接收WMS任務(wù)指令再驅(qū)動(dòng)設(shè)備執(zhí)行。脫機(jī)是監(jiān)控系統(tǒng)WCS直接對(duì)設(shè)備進(jìn)行入出庫(kù)指令的下發(fā)。入出庫(kù)實(shí)現(xiàn)部分代碼如下:
圖9 入出庫(kù)任務(wù)下發(fā)
本文歸納總結(jié)了目前倉(cāng)儲(chǔ)行業(yè)內(nèi)倉(cāng)庫(kù)管理和監(jiān)控系統(tǒng)存在的現(xiàn)狀,闡述了倉(cāng)庫(kù)管理系統(tǒng)的主要工作內(nèi)容和組織結(jié)構(gòu)。在系統(tǒng)涉及的技術(shù)方面,對(duì)WebGL的概念和在瀏覽器中的結(jié)構(gòu)組成進(jìn)行了簡(jiǎn)要描述。在系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)階段,實(shí)現(xiàn)了系統(tǒng)的框架設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)以及功能設(shè)計(jì)。在WebGL基礎(chǔ)上,集成MVC作為系統(tǒng)的軟件架構(gòu),結(jié)合接口系統(tǒng),以此實(shí)現(xiàn)系統(tǒng)開(kāi)發(fā)。并在實(shí)際應(yīng)用中取得了較好的效果。然而,考慮時(shí)間、設(shè)備等諸多原因,本系統(tǒng)仍然存在可擴(kuò)展之處。
本系統(tǒng)對(duì)實(shí)時(shí)性要求較高,隨著倉(cāng)庫(kù)的運(yùn)作,系統(tǒng)中的數(shù)據(jù)量必定越來(lái)越多,故如何實(shí)現(xiàn)算法復(fù)雜度實(shí)現(xiàn),盡可能提高系統(tǒng)的執(zhí)行效率,也是重要的研究方向。