邱海波,譚兆海
(1.青島四方車輛研究所有限公司工程裝備事業(yè)部,青島266031;2.蘭州鐵路局車輛處,蘭州730000)
作為現(xiàn)代物流技術(shù)的典型代表,自動化立體倉庫在工業(yè)生產(chǎn)中發(fā)揮著日益重要的作用[1]。自動化立體倉庫監(jiān)控系統(tǒng)集監(jiān)視、控制、調(diào)度、管理等功能于一體,具有監(jiān)控實時性高、控制簡單、操作方便、能與計算機管理系統(tǒng)信息集成等多方面的優(yōu)點。它作為現(xiàn)代立體倉庫領(lǐng)域內(nèi)出現(xiàn)的一種新型控制管理方式,在工業(yè)生產(chǎn)中發(fā)揮著日益重要的作用[2]。該立體倉庫監(jiān)控系統(tǒng)采用西門子S7-300PLC的以太網(wǎng)通信模塊和PRODAVE接口通信方式相結(jié)合,將執(zhí)行系統(tǒng)接入以太網(wǎng)網(wǎng)通信系統(tǒng),實現(xiàn)了上位監(jiān)控服務(wù)器和PLC之間的穩(wěn)定通信和數(shù)據(jù)傳輸。本文結(jié)合現(xiàn)代通信技術(shù),對立體倉庫監(jiān)控系統(tǒng)整體設(shè)計和上位機軟件監(jiān)控系統(tǒng)進行了優(yōu)化和總結(jié),使整個倉庫系統(tǒng)設(shè)計更趨于簡便、合理。
隨著機場規(guī)模的擴大,航班的增多,配餐數(shù)量的加大,該公司原有的平面庫已不能滿足公司的配餐要求。因此,該配餐公司建立了自動化立體倉庫。自動化立體倉庫系統(tǒng)由堆垛機、貨架、鏈?zhǔn)捷斔蜋C、進出貨物平臺、監(jiān)控系統(tǒng)、托盤和料箱等組成。立體倉庫分為2個巷道,在兩個巷道各配置一臺單軌雙立柱式巷道堆垛機。堆垛機具有維修、手動、單機自動、聯(lián)機全自動控制功能,并具有與上位監(jiān)控系統(tǒng)的通訊功能。立體倉庫監(jiān)視與控制模塊劃分如圖1。
(1)系統(tǒng)連接與斷開及指令執(zhí)行權(quán)限設(shè)置與管理:連接或斷開下位PLC,保證監(jiān)控服務(wù)器和PLC的連接或斷開;對權(quán)限不同的操作員,“執(zhí)行指令”權(quán)限不同,即:具有執(zhí)行指令權(quán)限的操作員才可以執(zhí)行此操作。
圖1 立體倉庫監(jiān)視與控制模塊劃分圖
(2)設(shè)備運行數(shù)據(jù)實時采集:在監(jiān)控系統(tǒng)運行過程中,系統(tǒng)要實時的進行堆垛機和輸送機上數(shù)據(jù)的采集,上位監(jiān)控服務(wù)器根據(jù)采集的數(shù)據(jù)進行判斷,根據(jù)判斷的結(jié)果來刷新數(shù)據(jù)和發(fā)送指令。
(3)設(shè)備運行狀態(tài)監(jiān)視:在監(jiān)控站上,操作員和管理員可以一目了然的查看當(dāng)前各設(shè)備的運行情況及托盤輸送情況。
(4)設(shè)備故障顯示與管理:監(jiān)控站實時的顯示當(dāng)前所有設(shè)備發(fā)生的故障,并記錄當(dāng)前發(fā)生的故障、發(fā)生時間、當(dāng)前操作員以便后續(xù)查詢,方便管理者對倉庫進行管理和責(zé)任追究。
(5)通訊日志、操作員日志管理與查詢:對監(jiān)控服務(wù)器和PLC的連接狀態(tài)進行監(jiān)控和記錄;對操作員日志進行查詢。
實現(xiàn)PC機與PLC之間的數(shù)據(jù)通信是一個棘手的問題。西門子公司的PRODAVE S7軟件包的數(shù)據(jù)鏈接庫提供了大量的Win98/NT/ME/2000函數(shù),這樣就使得用戶解決PC機與PLC的數(shù)據(jù)交換和數(shù)據(jù)處理問題變?yōu)榭赡躘3]。
在運行過程中,系統(tǒng)首先通過調(diào)用PRODAVE工具包的函數(shù),建立與PLC的通信連接,然后由上位機下發(fā)各種作業(yè)指令到PLC,按照各種作業(yè)類型的工藝流程和作業(yè)要求完成貨物的存取,并把操作結(jié)果反饋給監(jiān)控系統(tǒng),監(jiān)控系統(tǒng)根據(jù)反饋結(jié)果跟蹤數(shù)據(jù),保證數(shù)據(jù)管理的準(zhǔn)確性和一致性。倉庫監(jiān)控系統(tǒng)還實時監(jiān)測、顯示、記錄設(shè)備工作狀態(tài),形成操作員日志、通信日志和故障日志,并實時跟蹤顯示托盤運行狀態(tài)、位置,以便操作員一目了然的了解整個倉庫的物流情況。系統(tǒng)數(shù)據(jù)交互如圖2。
圖2 系統(tǒng)數(shù)據(jù)交互圖
在通信開始之前,首先用Load_tool函數(shù)建立上位機與PLC之間的連接,通信結(jié)束時必須用Unload_tool函數(shù)斷開與PLC的連接,否則會引起上位機死機或上位機系統(tǒng)的異常狀況。VB在調(diào)用DLL函數(shù)之前,需要用Declare語句在模塊中聲明所要使用的DLL函數(shù)。聲明DLL函數(shù)的主要作用是指明該函數(shù)所在的DLL庫名及路徑,以及該函數(shù)的參數(shù)說明,以使Windows能找到該函數(shù),并能正確的執(zhí)行該函數(shù)。PRODAVE與S7-300PLC建立連接流程如圖3。
圖3 PRODAVE與S7-300PLC建立連接流程圖
Declare Function Load_tool Lib “w95_a7.dll”(ByVal nr As, ByVal dev As String, adr As PlcAdrType) As Long
//nr是PC要激活的連個數(shù),dev是用戶驅(qū)動設(shè)備的名稱,adr是連接的地址列表
Declare Function Unload_tool Lib “w95_a7.dll”() As Long
//斷開連接
Declare Function db_read Lib “w95_a7.dll”(ByVal blockno As Long, ByVal no As Long,Amount As Long, value As Byte) As Long
//讀取DB塊號為blockno中的從地址no開始的Amount數(shù)據(jù)字,讀取的數(shù)據(jù)存放于PC的變量區(qū)value中
Declare Function db_write Lib “w95_a7.dll”(ByVal blockno As Long, ByVal no As Long,Amount As Long, value As Byte) As Long
//將PC的變量存儲區(qū)value中的Amount數(shù)據(jù)字寫入到PLC的數(shù)據(jù)塊DB中從址no開始的數(shù)據(jù)區(qū)。
倉庫監(jiān)控系統(tǒng)基于成熟的多任務(wù)操作系統(tǒng):監(jiān)控服務(wù)器采用Windows 2003 Server、操作員工作站和監(jiān)控工作站采用Windows XP系統(tǒng),監(jiān)控服務(wù)器數(shù)據(jù)庫采用SQLServer 2005數(shù)據(jù)庫,采用可視化語言 Visual Basic6.0開發(fā)。Microsoft操作系統(tǒng)配套Microsoft的開發(fā)工具,使得最終系統(tǒng)安全可靠、性能穩(wěn)定,同時還是一個開放式系統(tǒng)。
倉庫監(jiān)控系統(tǒng)全部采用圖形用戶界面,有操作提示和操作引導(dǎo)功能,界面間切換快速、簡單。監(jiān)控界面顯示的信息應(yīng)根據(jù)要求可以是數(shù)字或圖片,所有的作業(yè)指令、出錯提示信息均顯示在界面上。數(shù)據(jù)錄入可接受手工鍵盤輸入、條碼掃描輸?shù)容斎敕椒?。對所有操作員手工輸入內(nèi)容提供檢查核對功能,對操作員輸入錯誤的內(nèi)容進行提示并且能夠列出這些參數(shù)的有效值范圍而且能夠由系統(tǒng)管理人員維護。系統(tǒng)軟件層次結(jié)構(gòu)如圖4。
圖4 立體倉庫監(jiān)控系統(tǒng)軟件層次結(jié)構(gòu)
監(jiān)控系統(tǒng)的工作主界面如圖5。在系統(tǒng)主界面上可以直觀的了解到系統(tǒng)當(dāng)前的指令執(zhí)行情況。即對應(yīng)的未執(zhí)行指令、已發(fā)送指令和正在執(zhí)行指令,可以使操作員清楚地了解每條指令的執(zhí)行流程。在主界面右邊是設(shè)備的當(dāng)前運行狀態(tài)和通信狀態(tài)監(jiān)控,各種信息一目了然,真正實現(xiàn)了界面的簡單、直觀。
圖5 監(jiān)控系統(tǒng)工作主界面
自動化立體倉庫監(jiān)控系統(tǒng)的設(shè)計與研究始終成為立體倉庫的一個研究重點。本文以某配餐公司自動化立體倉庫系統(tǒng)為例,設(shè)計了基于PRODAVE的自動化立體倉庫監(jiān)控系統(tǒng),系統(tǒng)設(shè)計涉及了自動化立體倉庫的整體設(shè)計、網(wǎng)絡(luò)設(shè)計、通信平臺的建立,并且上位機監(jiān)控軟件直觀顯示系統(tǒng)當(dāng)前的指令執(zhí)行情況,各種信息狀態(tài)一目了然。實際應(yīng)用表明,使用西門子PRODAVE數(shù)據(jù)鏈接庫技術(shù)實現(xiàn)PC機對PLC數(shù)據(jù)的讀寫操作,不但數(shù)據(jù)傳輸速度快,而且實現(xiàn)起來簡單方便。
[1] 馬殷元,蔣兆遠. 自動化倉庫管理與控制系統(tǒng)集成設(shè)計及實現(xiàn)[J] . 計算機工程. 2007(20):55-57.
[2] 譚曉東,劉俊鵬,譚豐. 基于VB的自動化立體倉庫監(jiān)控系統(tǒng)設(shè)計[J] . 控制與檢測,2008(10):75-78.
[3] 陳強,強寶民,蔣威. 基于PRODAVE的PLC數(shù)據(jù)采的設(shè)計[J] . 儀表技術(shù),2006(5):35-38.
[4] 吳耀華,張丹羽,許曉偉. 自動控制系統(tǒng)中PC與PLC 通訊方法的設(shè)計[J] . 蘭州鐵道學(xué)院學(xué)報,2001(11):21- 23.
[5] 王文磊, 徐汀榮. PLC和PC基于工業(yè)以太網(wǎng)通信研究與實現(xiàn)[J] . 微計算機信息,2006,22(5-1): 43-45.