邱海波,譚兆海
(1.青島四方車輛研究所有限公司工程裝備事業部,青島266031;2.蘭州鐵路局車輛處,蘭州730000)
作為現代物流技術的典型代表,自動化立體倉庫在工業生產中發揮著日益重要的作用[1]。自動化立體倉庫監控系統集監視、控制、調度、管理等功能于一體,具有監控實時性高、控制簡單、操作方便、能與計算機管理系統信息集成等多方面的優點。它作為現代立體倉庫領域內出現的一種新型控制管理方式,在工業生產中發揮著日益重要的作用[2]。該立體倉庫監控系統采用西門子S7-300PLC的以太網通信模塊和PRODAVE接口通信方式相結合,將執行系統接入以太網網通信系統,實現了上位監控服務器和PLC之間的穩定通信和數據傳輸。本文結合現代通信技術,對立體倉庫監控系統整體設計和上位機軟件監控系統進行了優化和總結,使整個倉庫系統設計更趨于簡便、合理。
隨著機場規模的擴大,航班的增多,配餐數量的加大,該公司原有的平面庫已不能滿足公司的配餐要求。因此,該配餐公司建立了自動化立體倉庫。自動化立體倉庫系統由堆垛機、貨架、鏈式輸送機、進出貨物平臺、監控系統、托盤和料箱等組成。立體倉庫分為2個巷道,在兩個巷道各配置一臺單軌雙立柱式巷道堆垛機。堆垛機具有維修、手動、單機自動、聯機全自動控制功能,并具有與上位監控系統的通訊功能。立體倉庫監視與控制模塊劃分如圖1。
(1)系統連接與斷開及指令執行權限設置與管理:連接或斷開下位PLC,保證監控服務器和PLC的連接或斷開;對權限不同的操作員,“執行指令”權限不同,即:具有執行指令權限的操作員才可以執行此操作。

圖1 立體倉庫監視與控制模塊劃分圖
(2)設備運行數據實時采集:在監控系統運行過程中,系統要實時的進行堆垛機和輸送機上數據的采集,上位監控服務器根據采集的數據進行判斷,根據判斷的結果來刷新數據和發送指令。
(3)設備運行狀態監視:在監控站上,操作員和管理員可以一目了然的查看當前各設備的運行情況及托盤輸送情況。
(4)設備故障顯示與管理:監控站實時的顯示當前所有設備發生的故障,并記錄當前發生的故障、發生時間、當前操作員以便后續查詢,方便管理者對倉庫進行管理和責任追究。
(5)通訊日志、操作員日志管理與查詢:對監控服務器和PLC的連接狀態進行監控和記錄;對操作員日志進行查詢。
實現PC機與PLC之間的數據通信是一個棘手的問題。西門子公司的PRODAVE S7軟件包的數據鏈接庫提供了大量的Win98/NT/ME/2000函數,這樣就使得用戶解決PC機與PLC的數據交換和數據處理問題變為可能[3]。
在運行過程中,系統首先通過調用PRODAVE工具包的函數,建立與PLC的通信連接,然后由上位機下發各種作業指令到PLC,按照各種作業類型的工藝流程和作業要求完成貨物的存取,并把操作結果反饋給監控系統,監控系統根據反饋結果跟蹤數據,保證數據管理的準確性和一致性。倉庫監控系統還實時監測、顯示、記錄設備工作狀態,形成操作員日志、通信日志和故障日志,并實時跟蹤顯示托盤運行狀態、位置,以便操作員一目了然的了解整個倉庫的物流情況。系統數據交互如圖2。

圖2 系統數據交互圖
在通信開始之前,首先用Load_tool函數建立上位機與PLC之間的連接,通信結束時必須用Unload_tool函數斷開與PLC的連接,否則會引起上位機死機或上位機系統的異常狀況。VB在調用DLL函數之前,需要用Declare語句在模塊中聲明所要使用的DLL函數。聲明DLL函數的主要作用是指明該函數所在的DLL庫名及路徑,以及該函數的參數說明,以使Windows能找到該函數,并能正確的執行該函數。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要激活的連個數,dev是用戶驅動設備的名稱,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數據字,讀取的數據存放于PC的變量區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的變量存儲區value中的Amount數據字寫入到PLC的數據塊DB中從址no開始的數據區。
倉庫監控系統基于成熟的多任務操作系統:監控服務器采用Windows 2003 Server、操作員工作站和監控工作站采用Windows XP系統,監控服務器數據庫采用SQLServer 2005數據庫,采用可視化語言 Visual Basic6.0開發。Microsoft操作系統配套Microsoft的開發工具,使得最終系統安全可靠、性能穩定,同時還是一個開放式系統。
倉庫監控系統全部采用圖形用戶界面,有操作提示和操作引導功能,界面間切換快速、簡單。監控界面顯示的信息應根據要求可以是數字或圖片,所有的作業指令、出錯提示信息均顯示在界面上。數據錄入可接受手工鍵盤輸入、條碼掃描輸等輸入方法。對所有操作員手工輸入內容提供檢查核對功能,對操作員輸入錯誤的內容進行提示并且能夠列出這些參數的有效值范圍而且能夠由系統管理人員維護。系統軟件層次結構如圖4。

圖4 立體倉庫監控系統軟件層次結構
監控系統的工作主界面如圖5。在系統主界面上可以直觀的了解到系統當前的指令執行情況。即對應的未執行指令、已發送指令和正在執行指令,可以使操作員清楚地了解每條指令的執行流程。在主界面右邊是設備的當前運行狀態和通信狀態監控,各種信息一目了然,真正實現了界面的簡單、直觀。

圖5 監控系統工作主界面
自動化立體倉庫監控系統的設計與研究始終成為立體倉庫的一個研究重點。本文以某配餐公司自動化立體倉庫系統為例,設計了基于PRODAVE的自動化立體倉庫監控系統,系統設計涉及了自動化立體倉庫的整體設計、網絡設計、通信平臺的建立,并且上位機監控軟件直觀顯示系統當前的指令執行情況,各種信息狀態一目了然。實際應用表明,使用西門子PRODAVE數據鏈接庫技術實現PC機對PLC數據的讀寫操作,不但數據傳輸速度快,而且實現起來簡單方便。
[1] 馬殷元,蔣兆遠. 自動化倉庫管理與控制系統集成設計及實現[J] . 計算機工程. 2007(20):55-57.
[2] 譚曉東,劉俊鵬,譚豐. 基于VB的自動化立體倉庫監控系統設計[J] . 控制與檢測,2008(10):75-78.
[3] 陳強,強寶民,蔣威. 基于PRODAVE的PLC數據采的設計[J] . 儀表技術,2006(5):35-38.
[4] 吳耀華,張丹羽,許曉偉. 自動控制系統中PC與PLC 通訊方法的設計[J] . 蘭州鐵道學院學報,2001(11):21- 23.
[5] 王文磊, 徐汀榮. PLC和PC基于工業以太網通信研究與實現[J] . 微計算機信息,2006,22(5-1): 43-45.