摘要:提出并研制了一種基于富客戶端技術的小型立體倉庫管理和控制系統(tǒng),并對系統(tǒng)的組成結構、功能實現(xiàn)、模塊開發(fā)進行了有價值的分析。
關鍵詞:自動化立體倉庫 管控系統(tǒng) 串口通信
中圖分類號:TP273
1 前言
自動化立體倉庫 (Automated Storage and Retrieval System, AS/RS) 是一種利用高層立體貨架存儲貨物,并能通過計算機直接管理和控制堆垛機械自動存取物資的倉庫[1]。自動化立體倉庫管理和控制系統(tǒng) (Warehouse Management and Control System, WMCS)是自動化立體倉庫的“大腦”,它指揮著倉庫中各設備的運行,統(tǒng)籌整座倉庫的作業(yè)管理和賬目管理,其技術水平和運行效率很大程度上決定著倉儲物流的效益?;谧钚赂豢蛻舳思軜嬮_發(fā)的WMCS資源利用率高,類庫豐富、數(shù)據(jù)存取模型先進,執(zhí)行效率高,程序響應速度,用戶交互體驗好,可較好地克服了傳統(tǒng)架構的缺陷,非常適用于開發(fā)WMCS [2]。
2 WMCS的功能需求分析
筆者所在的某大學物流實驗室已建成一套小型教學用自動化立體倉庫硬件系統(tǒng),該倉庫含80個存儲庫位用于存儲工裝零部件,輸送機和巷道堆垛機各1臺?,F(xiàn)需開發(fā)一套WMCS系統(tǒng),實現(xiàn)立體庫的自動出入庫和工裝零部件的管理,其功能需求如下:
(1) 實現(xiàn)工裝零部件的管理需要實現(xiàn)庫存信息查詢、庫存信息管理(信息的增加、刪除、修改)以及庫存實物管理(如出庫、入庫、調庫、盤庫)等功能。
(2) 支持手動、半自動和自動三種模式控制倉庫運行,管理操作日志,并提供報表功能。
(3) 提供系統(tǒng)設置模塊,以便于參數(shù)設置、性能調整和系統(tǒng)維護。
(4) 用戶包括教師和學生在內,需要在權限控制的基礎上實現(xiàn)多用戶分布式操作。
(5) 為便于支持工裝裝配實驗,管控系統(tǒng)應支持按BOM批量取貨。
3 自動化立體倉庫管理和控制系統(tǒng)的基本組成結構
WMCS系統(tǒng)是由計算機系統(tǒng)和PLC構成的二級分布式網(wǎng)絡系統(tǒng)。系統(tǒng)總體框架圖如下:
4 自動化立體倉庫信息管理的實現(xiàn)
4.1零件自動編碼系統(tǒng)
實現(xiàn)對庫存的工裝零部件自動管理的基礎是實現(xiàn)庫存零件分類單體標識。WMCS中的零件代碼為7位,由標示編碼對象主要特征或屬性的四位分類代碼附加三位順序號構成。分類代碼將一類零件與其它類零件相區(qū)分,而附加順序號得出的零件編碼唯一確定單個零件,從而每個零件的零件代碼都具備唯一的零件編碼。本系統(tǒng)的分類代碼基于機械加工工裝分類編碼規(guī)則(JJDM)建立分類編碼,該系統(tǒng)能對庫存中的通用工裝、標準或非標準工裝、可調工裝、專用工裝、組合工裝以及成組工裝進行編碼。
4.2 庫存管理模塊
庫存管理主要負責實現(xiàn)庫存信息管理(增加、刪除、修改)以及庫存實物管理(如指定零件出入庫、清庫、庫位調整、盤庫)等功能。模塊基于Silverlight 富客戶端技術、Entity Framework數(shù)據(jù)訪問技術和PLC通信接口技術實現(xiàn)。鑒于篇幅,僅以出庫按鈕功能實現(xiàn)中的關鍵程序代碼為例。
LoadDataArgs args = await manager.Out(10); // 控制系統(tǒng)從10號庫位取托盤出庫
if (args.Succeed) // 控制系統(tǒng)反饋執(zhí)行成功時,將出庫信息和庫存更改寫入數(shù)據(jù)庫
{
if (this.ctx.HasChanges !this.ctx.IsSubmitting)
{
LoginUser.SetOperationLog(this.OrderItem); // 生成出庫單號和操作記錄
SubmitOperation so = await ctx.SubmitChanges(); // 提交變更到數(shù)據(jù)庫
}
}
由此可見,因采用了RCP和模塊化架構,實現(xiàn)代碼非常簡潔、易懂、易維護。對于按BOM出庫工裝,只需在上述代碼基礎上做循環(huán)操作即可。
5 自動化立體倉庫控制系統(tǒng)的實現(xiàn)
5.1 自動化立體倉庫控制系統(tǒng)的組成
該自動化立體倉庫控制系統(tǒng)由硬、軟件兩部分組成。硬件部分選用了三菱FX2n-64mr、擴展模塊以及PLC的外部設備,包括輸入設備(如操作按鈕、開關量、模擬輸入信號等)、執(zhí)行元件(如接觸器的線圈、指示燈、步進電機、三向異步電機等)以及控制臺、操作面板等。軟件部分即PLC監(jiān)控程序,在專用編程軟件中編寫完成后將其寫入PLC的存儲器中即可正常運行。
5.2 自動化立體倉庫控制系統(tǒng)的控制方式
在控制方式設計上,為便于用戶根據(jù)需要進行靈活操作,設計了手動、半自動和全自動三種操作模式。手動模式下,用戶可不必借助上位機,而直接通過按鈕、觸摸屏控制堆垛機的全方位運動和調試其他執(zhí)行元件。半自動模式下在手動模式基礎上增加了堆垛機跟蹤監(jiān)控狀態(tài)的功能,而不能修改庫存數(shù)據(jù)。手動、半自動模式用于系統(tǒng)異常和設備調試時使用。全自動模式屬于正常工作狀態(tài),此時上位機既能監(jiān)控堆垛機的狀態(tài),同時又正常修改庫存數(shù)據(jù)。
5.3 上位計算機和PLC的串口通信
WMCS要實現(xiàn)工裝零件的自動出入庫應借助控制系統(tǒng)的支持。上位計算機對控制系統(tǒng)的指揮、監(jiān)控和信息采集等工作,需建立上位計算機和PLC的實時通信。本系統(tǒng)將FX2n的FX2n-232-BD通信擴展模塊與計算機的RS232C標準串口連接,以實現(xiàn)信息的共享和傳遞[3]。參照三菱FX2n串口通信協(xié)議,基于windows 32 API函數(shù)可編寫通信動態(tài)連接庫。通過對底層串口通信操作的封裝[4],不僅實時性、面向對象性好,而且便于被WMCS調用、可靠性高,簡化了系統(tǒng)開發(fā),避免串口編程中的重復勞動。
6 結束語
本文闡述了一種基于RCP架構的自動化立體倉庫管理系統(tǒng)設計和實現(xiàn)方法。該系統(tǒng)交互體驗豐富、穩(wěn)定性強、集成度高,實踐中取得了良好的應用效果,對類似系統(tǒng)的開發(fā)也具備較好的參考意義。
參考文獻:
[1] 劉昌祺, 董良.自動化立體倉庫設計.北京:機械工業(yè)出版社, 2004.
[2] 王通, 閆祥安, 李偉華.基于.net技術的自動化立體倉庫管理與控制系統(tǒng)的研究與實現(xiàn).制造業(yè)自動化, 2004-04.
[3] 徐澤華, 王耀南.使用動態(tài)鏈接庫與PLC通信.微型計算機信息,2001-01.
[4] 邱培林, 沈昱明.基于FX_BD的FXPLC串口通信DLL的實現(xiàn).自動化儀表, 2005-05.