張治國(guó),劉久富,鄭 銳
(南京航空航天大學(xué) 自動(dòng)化學(xué)院,江蘇 南京 210016)
柔性制造系統(tǒng)(flexible manufacturing system,F(xiàn)MS)通常由多個(gè)單元構(gòu)成,各單元相互配合完成復(fù)雜加工任務(wù)。成熟的柔性制造系統(tǒng)動(dòng)態(tài)行為更加復(fù)雜,可在24小時(shí)無人操作下智能生產(chǎn),極大減少工人工作量,滿足企業(yè)對(duì)市場(chǎng)需求的應(yīng)變[1-3]。柔性制造系統(tǒng)在制造業(yè)的優(yōu)勢(shì)越來越明顯,但實(shí)際生產(chǎn)過程中,也存在制造復(fù)雜,運(yùn)行模式多樣化等導(dǎo)致故障頻繁,故障樣本難以獲取,關(guān)鍵設(shè)備無法及時(shí)檢測(cè)運(yùn)行狀況等問題[4-6]。因此,對(duì)柔性制造系統(tǒng)的故障診斷研究勢(shì)在必行。
目前國(guó)內(nèi)外很多科研機(jī)構(gòu)都在開展關(guān)于柔性制造系統(tǒng)的故障診斷方法研究,并取得了一定成果。北京理工大學(xué)等機(jī)構(gòu)在機(jī)器人可靠性分析研究時(shí)引入了故障樹的研究方法,通過故障樹定性定量的分析針對(duì)單一設(shè)備的故障診斷有了一定的理論實(shí)踐研究[7]。Kuo等從FMS運(yùn)行過程的行為角度出發(fā),使用有色Petri網(wǎng)建模實(shí)現(xiàn)對(duì)FMS的狀態(tài)監(jiān)測(cè)及故障診斷[8-9]。
針對(duì)柔性制造系統(tǒng),以往基于定性模型的故障方法已經(jīng)取得了豐碩的成果,但主要集中在可觀節(jié)點(diǎn)的故障診斷,對(duì)不可觀節(jié)點(diǎn)的故障診斷還不夠完善。對(duì)此,文中提出一種基于部分可觀時(shí)間Petri網(wǎng)的故障診斷方法,把部分可觀時(shí)間Petri網(wǎng)[10-12]和狀態(tài)類圖(state class graph,SCG)[13-14]相結(jié)合,構(gòu)建修正狀態(tài)類圖(modified state class graph,MSCG),把復(fù)雜的并行事件轉(zhuǎn)變成求解滿足時(shí)間約束的序列集合。所有節(jié)點(diǎn)分為可觀節(jié)點(diǎn)和不可觀節(jié)點(diǎn),根據(jù)各節(jié)點(diǎn)變遷觸發(fā)時(shí)間范圍和可觀節(jié)點(diǎn)觸發(fā)時(shí)間信息,結(jié)合提出的故障診斷方法,判斷系統(tǒng)不可觀節(jié)點(diǎn)是否發(fā)生故障。
定義1:Petri網(wǎng)(Petri nets,PN)定義為N=(P,T,Pre,Post),其中P為庫(kù)所(place)集合,T為變遷(transition)集合,Pre:P×T→和Post:P×T→分別是輸入弧和輸出弧的集合,每個(gè)庫(kù)所的資源個(gè)數(shù)為M(p)。
定義2:時(shí)間Petri網(wǎng)(time Petri nets,TPN)定義為Nd=(N,Q),N=(P,T,Pre,Post)是Petri網(wǎng)的四元數(shù)組,Q:T→×(∪{∞})是系統(tǒng)初始狀態(tài)下變遷時(shí)間約束條件,Q(ti)=(li,ui),li≥0,ui≥li,li和ui均為自然數(shù)。
定義3:標(biāo)簽Petri網(wǎng)(label Petri net,LPN)定義為
(1)
定義5:給定一個(gè)時(shí)間標(biāo)簽序列集合
和一個(gè)時(shí)間τ≥τl(δ0),對(duì)應(yīng)的標(biāo)識(shí)集合為:
C(δ0,τ)={M∈m|M0[σ〉M,σ∈∑(δ0,τ)}
(2)
定義6:給定一個(gè)時(shí)間標(biāo)簽序列集合
和一個(gè)時(shí)間τ≥tl(δ0),對(duì)應(yīng)的狀態(tài)集合為:
S(δ0,τ)={Mk,Θk|Mk∈C(δ0,τ),Θk={lki≤θki≤uki}},lki≥0,uki≥0
(3)
記log(σ)為去掉時(shí)刻τ的變遷序列集合。
在狀態(tài)類圖方法[12-13]的基礎(chǔ)上添加時(shí)間變量和時(shí)間約束,構(gòu)建基于標(biāo)簽時(shí)間Petri網(wǎng)的修正狀態(tài)類圖。
算法1:構(gòu)建MSCT。
輸入:TPN系統(tǒng)
輸出:修正狀態(tài)類樹(MSCT)
1.初始化 節(jié)點(diǎn)C0對(duì)應(yīng)標(biāo)識(shí)
根節(jié)點(diǎn)標(biāo)記B(C)=E
while 存在一個(gè)標(biāo)記B(C)=E的節(jié)點(diǎn)do{
2.節(jié)點(diǎn)標(biāo)識(shí)為Ck,B(C)=D
3.for ?ti∈A(Mk) do{
5.ti在標(biāo)識(shí)Mk觸發(fā),Mq=Mk+C(·,ti)
6.for ?tr∈A(Mq)do{
iftr∈A(Mk)且Mk-Pre(:,ti)≥pre(:,tr) pre(:,tr) then
7.建立新節(jié)點(diǎn)Cq標(biāo)識(shí)為Mq,約束集合為:
if存在和Cq相同節(jié)點(diǎn) then
Cq節(jié)點(diǎn)標(biāo)記B(C)=D
ElseCq節(jié)點(diǎn)標(biāo)記B(C)=E}}}
在MSCT中復(fù)制標(biāo)記為B(C)=Z的節(jié)點(diǎn),構(gòu)建MSCG圖。
π=Cq0(Mq0,Θq0),ti1,L(ti1)
Cq1(Mq1,Θq1),ti2,L(ti2)
……
Cq(k-1)(Mq(k-1),Θq(k-1)),tik,L(ti(k-1))
Cqk
(4)
(5)
給定路徑π,定義obs(π)為其對(duì)應(yīng)的可觀序列,式(5)中obs(π)=L(ti1,ti2,…,tik)。
步驟16判斷系統(tǒng)是否發(fā)生故障。任意π∈Ⅱ,都不存在tf∈π,系統(tǒng)沒有故障;存在π∈Ⅱ,滿足tf∈π同時(shí)存在π'∈Ⅱ滿足tf?π',無法判斷系統(tǒng)是否故障;所有π∈Ⅱ都滿足tf∈π,系統(tǒng)故障。
算法2:基于MSCG的狀態(tài)估計(jì)與診斷算法。
輸入:TPN系統(tǒng)及對(duì)應(yīng)MSCG圖,TLS集合δo=(γi1,τ1)…(γih,τh),時(shí)間τ
1.初始化:δ0=ε,S(δ0,0)=?
4.for 所有π∈Ⅱ路徑 do{
S(ε,0)=S(ε,0)∪{(M,Θ)},(M,Θ)是路徑π最后節(jié)點(diǎn)}
5.if 給定S(ε,τ),τ>0 then{
7.for所有π∈Ⅱτdo
S(ε,τ)=S(ε,τ)∪{(M,Θ′)},Θ′是根據(jù)式5得出的最后節(jié)點(diǎn)時(shí)間約束}
12.forπ∈Ⅱ do{
S(δ0,τ)=S(δ0,τ)∪{(M,Θ)} }
15.for所有π∈Ⅱτdo
S(δ0,τ)=S(δ0,τ)∪{(M,Θ′)} }
16.fori=1,2,…,rdo{
某柔性制造系統(tǒng)(FMS)由一臺(tái)加工中心M和多臺(tái)數(shù)控機(jī)床組成,并行生產(chǎn)一組零件。工序設(shè)計(jì)要求工件b根據(jù)工件a在M的校刀數(shù)據(jù)進(jìn)行加工。
圖1以柔性制造系統(tǒng)加工過程中關(guān)鍵節(jié)點(diǎn)為庫(kù)所,關(guān)鍵動(dòng)作為變遷建立Petri網(wǎng)模型,模擬柔性制造系統(tǒng)加工過程,各庫(kù)所、變遷含義如表1、表2所示。
圖1 柔性制造系統(tǒng)Petri網(wǎng)模型
庫(kù)所庫(kù)所含義庫(kù)所庫(kù)所含義P0系統(tǒng)準(zhǔn)備就緒P9冷卻系統(tǒng)準(zhǔn)備P1A加工中心準(zhǔn)備P10A2工序準(zhǔn)備P2B加工中心準(zhǔn)備P11B2工序準(zhǔn)備P3工件a進(jìn)入傳送帶P12A2工序完成P4工件b進(jìn)入傳送帶P13B2工序完成P5緩沖區(qū)使能P14工件a準(zhǔn)備加工P6緩沖區(qū)使能P15工件b準(zhǔn)備加工P7A線完成P16系統(tǒng)準(zhǔn)備停機(jī)P8零件加工完成
表2 圖1中各變遷物理含義、可觀測(cè)性及設(shè)計(jì)動(dòng)作時(shí)間
該柔性制造系統(tǒng)工作流程為[15-16]:毛坯a,b分別進(jìn)入A,B支路,經(jīng)過數(shù)控機(jī)床相應(yīng)工序變成工件a,b;工件a先進(jìn)入加工中心M校準(zhǔn)刀具加工,工件b再進(jìn)入加工中心M根據(jù)工件a的校刀數(shù)據(jù)加工。最后完成一組零件的加工。
3.2.1 構(gòu)建柔性制造系統(tǒng)的MSCG圖
根據(jù)算法1構(gòu)建MSCG圖,標(biāo)識(shí)M及時(shí)間約束Θ構(gòu)成每個(gè)節(jié)點(diǎn)的基本信息,所有可能路徑為{t0t1t2t3t4t10t11t5t7t6t8,t0t1t2t3t4t11t10t5t7t6t8,t0t1t2t3t10t4t11t5t7t6t8,t0t1t2t4t3t10t11t5t7t6t8,t0t1t2t4t3t11t10t5t7t6t8,t0t1t2t4t11t3t10t5t7t6t8}等。
圖2 節(jié)點(diǎn)C1C2C3對(duì)應(yīng)的MSCG圖
以{t0t1t2t3t4t10t11t5t7t6t8}為例簡(jiǎn)述修正狀態(tài)類圖構(gòu)建過程,圖2是變遷t0t1觸發(fā)對(duì)應(yīng)節(jié)點(diǎn)C1C2C3的MSCG圖。標(biāo)識(shí)M0和時(shí)間約束Θ0構(gòu)成初始節(jié)點(diǎn)C0對(duì)應(yīng)的使能變遷為t0;節(jié)點(diǎn)C1由變遷t0在C0觸發(fā)得到,標(biāo)識(shí)M1[011000000010000000]對(duì)應(yīng)的使能變遷為t1,t2,且Q(t1)=[2.5,6.7],Q(t2)=[4.0,7.9];節(jié)點(diǎn)C2由變遷t1在C1觸發(fā)得到,標(biāo)識(shí)M2[001100000010000000]對(duì)應(yīng)的使能變遷為t2,t3,變遷t2能觸發(fā)需滿足Δ1≤min{u1,u2},所以修正后的Q(t2)=[4.0-Δ1,7.9-Δ1];節(jié)點(diǎn)C3由變遷t2在C2觸發(fā)得到,標(biāo)識(shí)M3[000110000010000000],對(duì)應(yīng)的使能變遷為t3,t4,變遷t3能觸發(fā)需滿足Δ2≤min{u2,u3},所以修正后的Q(t3)=[2.2-Δ2,6.5-Δ2],同理構(gòu)建其他節(jié)點(diǎn)。
3.2.2 基于MSCG圖柔性制造系統(tǒng)的故障診斷結(jié)果
柔性制造系統(tǒng)中工業(yè)機(jī)器人腰部回轉(zhuǎn)故障影響系統(tǒng)正常工作。文中Petri網(wǎng)模型中,工業(yè)機(jī)器人腰部回轉(zhuǎn)無故障情況下,工件a放到緩沖區(qū)(變遷t5)會(huì)在A2工序在3.1~5.2 min內(nèi)完成,若工業(yè)機(jī)器人腰部回轉(zhuǎn)故障便會(huì)導(dǎo)致變遷t5完成的時(shí)間推遲到5.2~12.3 min內(nèi)。圖3是根據(jù)仿真數(shù)據(jù)及文中算法進(jìn)行故障診斷的結(jié)果,其中τ是采集有效數(shù)據(jù)的時(shí)間上限。
由圖3可知,在第一次實(shí)驗(yàn)中,可觀序列(t0,0)(t3,7.6)(t10,8.6)(t4,11.7)(t11,13.1)觸發(fā)后,由算法2計(jì)算所有能夠觸發(fā)的變遷序列σ,其中正常變遷4條,故障變遷0條,系統(tǒng)診斷結(jié)果為無故障??捎^序列(t8,24.9)觸發(fā)后,由算法2計(jì)算所有能夠觸發(fā)的變遷序列σ,其中正常變遷4條,故障變遷2條,系統(tǒng)診斷結(jié)果為可能故障。
δ0/minτ/minTiflog(σ)Γ(δ0,τ,Tif)第一次實(shí)驗(yàn)(t0,0)(t3,7.6)15.5t5{t0t1t2t3,t0t2t1t3}N(t0,0)(t3,7.6)(t10,8.6)16.0t5{t0t1t2t3t10,t0t2t1t3t10}N(t0,0)(t3,7.6)(t10,8.6)(t4,11.7)18.3t5{t0t1t2t3t10t4,t0t2t1t3t10t4}N(t0,0)(t3,7.6)(t10,8.6)(t4,11.7)(t11,13.1)44.3t5{t0t1t2t3t10t4t11,t0t2t1t3t10t4t11,t0t1t2t3t10t4t5t11,t0t2t1t3t10t4t5t11}N(t0,0)(t3,7.6)(t10,8.6)(t4,11.7)(t11,13.1)(t8,24.9)64.3t5{t0t1t2t3t10t4t11t5t7t6t8,t0t2t1t3t10t4t11t5t7t6t8,t0t1t2t3t10t4t5t11t7t6t8,t0t2t1t3t10t4t5t11t7t6t8,t0t1t2t3t10t4t11tft7t6t8,t0t2t1t3t10t4t11tft7t6t8}U第二次實(shí)驗(yàn)(t0,0)(t3,7.3)15.5t5{t0t1t2t3,t0t2t1t3}N(t0,0)(t3,7.3)(t4,8.3)15.5t5{t0t1t2t3t4,t0t2t1t3t4}N(t0,0)(t3,7.3)(t4,8.3)(t10,8.5)18.3t5{t0t1t2t3t4t10,t0t2t1t3t4t10}N(t0,0)(t3,7.3)(t4,8.3)(t10,8.5)(t11,9.8)44.3t5{t0t1t2t3t4t10t11,t0t2t1t3t4t10t11}N(t0,0)(t3,7.3)(t4,8.3)(t10,8.5)(t11,9.8)(t8,31.2)64.3t5{t0t1t2t3t4t10t11tft7t6t8,t0t2t1t3t4t10t11tft7t6t8}F
圖3 柔性制造系統(tǒng)故障診斷結(jié)果
第二次實(shí)驗(yàn)中,可觀序列(t0,0)(t3,7.3)(t4,8.3)(t10,8.5)(t11,9.8)觸發(fā)后,由算法2計(jì)算所有能夠觸發(fā)的變遷序列σ,其中正常變遷2條,故障變遷0條,系統(tǒng)診斷結(jié)果為無故障??捎^序列(t8,31.2)觸發(fā)后,由算法2計(jì)算所有能夠觸發(fā)的變遷序列σ,其中正常變遷0條,故障變遷2條,系統(tǒng)診斷結(jié)果為故障。
針對(duì)Petri網(wǎng)模型中不可觀節(jié)點(diǎn)故障診斷問題,提出一種構(gòu)建修正狀態(tài)類圖的故障診斷方法,由算法2計(jì)算MSCG圖中所有滿足可觀序列集合S(δ0,τ)的序列σ并診斷系統(tǒng)是否發(fā)生故障;建立柔性制造系統(tǒng)的部分可觀時(shí)間Petri網(wǎng)故障診斷模型,根據(jù)變遷之間觸發(fā)關(guān)系修正各自對(duì)應(yīng)的時(shí)間約束,由算法1構(gòu)建對(duì)應(yīng)的修正狀態(tài)類圖(MSCG),再根據(jù)算法2診斷系統(tǒng)的故障狀態(tài)。仿真結(jié)果表明,該算法能夠滿足實(shí)際應(yīng)用要求。
未來將研究標(biāo)簽時(shí)間Petri網(wǎng)的可診斷性,系統(tǒng)結(jié)構(gòu)和變遷數(shù)目影響構(gòu)建MSCG圖的計(jì)算復(fù)雜度,當(dāng)系統(tǒng)變遷數(shù)目過多時(shí),該算法還需進(jìn)一步改進(jìn)。