3.3 倉儲物流系統顏色和時序建模
由RPNs模型性質和變遷規則,可推出物流設備間貨物運輸的必要條件:源設備上有貨,目的設備上無貨。但僅此還不能充分描述變遷事件發生的充分條件。例如,眾所周知的“死鎖”和“陷阱”現象是由Petri網中“分支”和“會合”兩種沖突關系造成的(如圖4),它們在網絡中共享輸出和輸入資源庫所,對變遷的發生有著嚴格限制條件。為此,本文在RPNs中引入顏色和時序元素。
圖4 Petri網沖突關系
定義4 一個著色資源Petri網(Colored Retrsource PetriNets,CRPNs)表示為一個六元組N=(P,T,C,I,O,M0)。其中C是庫所和變遷的顏色集:C(pi)={ai1,ai2,?,aim-1,aim},i=1,2,?,m為顏色數;C(tj)={bj1,bj2,?,bjn-1,bjn},j=1,2,?,n為顏色數;I:C(p)×C(t)→N(非負整數)為輸入映射,取顏色aih時的pi到取顏色bjk時的tj的輸入連接數記為I(aih,bjk);O:C(t)×C(p)→N(非負整數)為輸出映射,取顏色bjk時的tj到取顏色aih時的pi的輸出連接數記為O(bjk,aih)。
在CRPNs模型中,根據每個標記的目的屬性賦予其相應的顏色Map(M,C),來規定它參與相應顏色的變遷,并經歷相應顏色的庫所,最終到達目的庫所。例如:圖2中,不妨令C(p2)={a1,a2},C(t2)={a1},C(t4)={a2},C(p7)={a3,a4},C(t10)={a3},C(t9)={a4},當庫所p2的標記顏色為a1時(Map(Mp2,C)=a1),顏色為a1的變遷t2可發生(C(t2)=a1),則稱變遷t2是顏色a1使能的。如果庫所p2的標記顏色為a2時(Map(Mp2,C)=a2),顏色為a2的變遷t4可發生。這就解決了圖1中貨物在輸送機2和6上的分叉運輸問題。
定義5 一個時序著色資源Petri網(Timed Colored Resource PetriNets,TCRPNs)表示為一個七元組N=(P,T,C,I,O,D,M0)。其中:D={di,i=1,2,?,n}:P→N(實數),為庫所的時間集合(di為pi的時延)。為每一庫所引入一時延,代表變遷事件發生經歷的時間后產生新的狀態所需要的時間。
規定標記工作時間等于其產生時間加上其所在庫所的時延。如果兩個輸入庫所都具有標記,能使變遷發生來競爭共享的輸出庫所,則較早工作時間的標記有優先權,即先入先出(First-In First-Out,FIFO)規則。例如:假設圖2中d4=3,d5=15,t4和t5同時發生,即在圖1中同時有貨物Token1和貨物Token2分別從輸送機2→輸送機4和堆垛機1→輸送機5,貨物標記先到輸送機2,貨物標記2后到輸送機5,標記1的工作時間早于標記1的工作時間,則貨物標記1優先發生變遷,t7優先于t5發生。這就解決了圖1中貨物在輸送機4和5上的會合運輸問題。
3.4倉儲物流系統信號建模
為便于設計物流控制系統,本文使用了事件T和條件I/O兩個概念:事件是系統中所發生的動作,即貨物在倉儲設備間的傳遞;條件是系統狀態的屬性或邏輯描述,即倉儲設備的狀態。一個事件的發生可能需要幾個條件同時成立,這些條件稱為事件的前提條件,事件發生后可能引起條件的變化,并產生一些其他條件,后者稱為事件的后果(后繼條件)。本文信號建模設計不同于文獻[15]之處在于:①變遷事件的發生條件I和后果O分別表示倉儲系統中的輸入傳感器信號和輸出控制器信號,目的是通過讀入傳感器的狀態,并將更新的后果狀態發送到控制器,來控制倉儲系統運行;②采用綜合信號、時序、顏色、資源信息的Petri網模型STCRPNs,以方便設計生成梯形圖形式的PLC控制程序。
圖5 實例中的貨物運輸示意圖
定義6 一個STCRPNs表示為一個九元組N=(P,T,I,O,M0,C,D,X,Y)。其中:X是輸入信號的布爾類型函數,當事件變遷的資源使能(連接變遷的前庫所擁有標記,后庫所無標記)、顏色使能和時間使能條件為真時,再判斷輸入物理信號是否為真,如果為真則函數輸出為真,表明變遷可立即發生;Y是輸出信號函數,可通過PLC代碼執行物理信號輸出。
圖6 實例對應的Petri網模型
在STCRPNs模型中,所有變遷都能夠同時并行地發生,并且在一定輸入信號條件下,此過程連續不斷,直至沒有符合發生條件的變遷為止。但在PLC程序的實際執行中,這一過程有所不同:事件變遷是以掃描循環方式在一個個掃描周期內順序執行,即在每一次循環掃描中,所有輸入信號函數和輸出信號函數均被判定和執行,使變遷得以發生。從STCRPNs模型到其對應PLC控制程序的設計過程將在下一章中討論。
圖7 映射的PLC梯形圖程序
4 基于STCRPNs的倉儲物流控制系統設計
在工程設計上的通用性和質量效率之間取折衷,文中提出了一種新的元素對應映射方法,適用于將STCRPNs模型映射生成為與其相應的PLC控制程序�,F以實際工程應用(青島澳柯瑪空調器廠AS/RS) 中的一個輸送機控制實例來說明映射轉化過程,如圖5~圖7 所示。其中,圖5 為AS/ RS 工程設計圖的一部分,包括輸送機設備1 ,2 , ?,5 ,傳感器輸入I4.0 ,I4.1 , ?, I5.3 ,控制電機輸出Q4.0 ,Q4.1,?,Q5.3等,物流輸送路徑為輸送機1→輸送機3→輸送機5,輸送機1→輸送機2,輸送機4→輸送機5,圖6和圖7分別為對應的STCRPNs模型和部分PLC梯形圖控制程序。本實例中采用了西門子的PLC控制器S72400,在其程序設計工具STEP7中包括三類文件:程序文件(組織塊OB和功能塊FC)、數據文件(數據塊DB和存儲器M)和其他相關文件(如映射文件、臨時變量、配置文件等,其他類型PLC的程序中一般也包含這三類文件)。文中方法的基本原理就是將系統STCRPNs模型中的各種元素分別映射到PLC中的對應組成文件中。
在系統STCRPNs建模過程中,將工程設計圖中的輸送機設備建模表示為庫所資源:輸送機1→p1,輸送機2→p2,?,輸送機5→p5;在系統控制程序設計中,將模型中的庫所映射為PLC工作存儲器中的一段數據區,即在數據塊DB中創建一個DWORD(2個字,4個字節,32位)結構表示。例如:圖5中DB100.DBD56表示數據塊DB100中,從56~59字節代表庫所p1(輸送機1);DB100.DBD60表示數據塊DB100中,從60~63字節代表庫所p2(輸送機2),...,以此類推。數據區的地址唯一標識了模型中庫所資源的設備號,而數據區內的數據信息描述了模型中庫所的顏色、時序屬性及其中的標記等信息,如表2所示。類似地,模型中的貨物標記映射轉化為一個WORD(1個字,2個字節,16位)的數據結構,稱之為貨單,該貨單由上層調度系統下達,包含了貨物的運輸路徑信息,并與倉儲數據庫系統出入庫命令一一對應,可存放在庫所數據區內。貨物標記在倉儲設備間的運輸,就表現為貨單在PLC存儲器數據區中的傳遞。貨單的任務號在整個系統中唯一,在傳送過程不變,且保存在數據塊中,即使系統掉電也不會丟失,從而保證了倉儲物流信息的準確性。
表2 庫所數據區結構
模型中的變遷映射為PLC程序文件中的傳遞函數FC,完成貨單在庫所數據區之間傳遞的功能。同理,模型中的信號映射為PLC的相關文件,處理PLC的數字輸入和數字輸出,如光電開關、接近開關等傳感器信號,以及控制電機運行的執行元件。變遷傳遞功能函數是控制系統運行的關鍵。在Petri網中,變遷通過輸入弧和輸出弧連接前后兩個庫所資源;在PLC中,對應的傳遞函數FC根據輸入條件信號和變遷規則對發送方和接收方兩個數據區進行操作,并輸出控制信號。不同類型的變遷映射為不同的貨單傳遞函數。如圖7所示,以某輸送機變遷傳遞功能函數FC10為例,表3是函數輸入輸出參數,其變遷規則控制流程分為以下四個步驟:
(1)將發送方貨單Dword0與常數DW#16#8FFF相與,屏蔽高位,結果存入LD10,將LD10與常數零L#0比較,若不相等則表明發送方有貨單,Oc2cupy0輸出為1,否則輸出為0,表示沒有貨單。同理,將接收方的貨單Dword1與常數DW#16#8FFF相與,屏蔽高位,若結果不為零則表明接收方有貨單,Occupy1輸出為1,否則輸出為0,表示沒有貨單。
(2)如果發送方有貨單,接收方沒有貨單,且發送條件成立,則將發送方貨單送給接收方,即Dword0的內容寫入Dword1。
(3)如果發送方和接收方都有貨單,且兩張貨單相同,表明貨物(貨單)處于發送過程中,將傳送標志Sent置為1,否則為0。如果接收方貨物收到標志Received為1,則將發送方貨單清零。在發送過程中,將Dword1送LD18,每經過一個時間單位,將Dword1的內容加L#1048576,即在貨單的發送時間計數上加1。若發送時間大于需要減速時間,標志Slow置為1,進入慢速運輸狀態。
(4)如果接收信號為真,則發送過程結束,發送方中的貨單清空。
表3 變遷傳遞功能函數參數
在圖5中,變遷傳遞函數FC10將貨物從輸送機3(DBD64)運送到輸送機5(DBD72),對應圖6的Petri網模型,轉換為PLC的梯形圖控制程序(如圖7)。模型映射關系為:p3→DBD64,p5→DBD72,t3→FC10(DBD64→DBD72),X→I4.6,Y→(Q4.6,Q3.5,Q5.3)。當貨物完全處于輸送機3(DBD64)上時,貨物托盤遮住光電管I4.6。如果此時輸送機5(DBD72)處沒有貨物,即DBD72中沒有貨單,則貨單傳遞函數FC10的輸入條件成立,執行FC10將DBD64中的貨單送給DBD72,并且輸出L0.0,L0.1,L0.2全部為1,控制電機M(Q315和Q416輸出)高速轉動。運輸過程中,每隔0.5s,DBD72中的時間計數加1。當貨物遮住光電開關I5.1時,執行FC10將DBD64的貨單清零,貨單運送完畢,此時L0.0=0,L0.1=1,L0.2=0,電機M停止轉動。從圖7可以看出,輸送機3(DBD64)的電機M的運轉有兩種情況:①貨物從DBD64輸出到DBD72;②貨物從DBD56輸入到DBD64。PLC在執行程序時,同一個輸出線圈總是以程序中的最后一個為準,因此為避免程序混亂,控制信號輸出線圈只能觸發一次。對于DB64來說,變遷傳遞函數FC10包括從DB64到DBD72的輸出弧和從DB56到DBD64的輸入弧。
5 結束語
本文提出了一種面向倉儲物流的STCRPNs,用于系統建模及控制程序設計。STCRPNs模型有以下幾個特點:①是一種面向倉儲物流系統設備資源的直觀的Petri網模型;②易于化簡、分析和仿真;③直接映射轉化為PLC梯形圖控制程序。未來工作是將OO設計技術引入到控制系統建模及設計過程中,通過集成化的控制軟件自動設計工具,加速可驗證的符合IEC61131-3標準的梯形圖程序生成;另一個研究方向是使用可擴展標記語言(eXten-sible Markup Language,XML)技術來滿足Petri網模型標準化、非功能化的需求,開發通用的物流系統輔助設計工具。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/