楊艷芳 賀 煥 舒 亮 楊 秒 陳 萍 吳自然
1. 武漢理工大學(xué)物流工程學(xué)院,武漢,4300632.溫州大學(xué)浙江省低壓電器工程技術(shù)研究中心,溫州,3250273.中鐵第四勘察設(shè)計院集團有限公司,武漢,430063
供電調(diào)度是保證電氣化鐵路正常運行的重要內(nèi)容,在牽引供電設(shè)備的安全運行、維修和故障處理等工作中起著非常重要的作用。鐵路牽引供電系統(tǒng)中斷路器的保護作用非常重要,斷路器的穩(wěn)定與可靠性對保障高速鐵路穩(wěn)定安全運行關(guān)系重大[1-2]。小型斷路器日產(chǎn)量巨大,其裝配工藝和制造流程十分復(fù)雜,以手工生產(chǎn)為主的傳統(tǒng)制造方式效率低下,嚴重制約了產(chǎn)品性能和可靠性的提升,研究和開發(fā)以自動化、數(shù)字化為主要特征的新型斷路器集成化制造系統(tǒng),對提升產(chǎn)品性能及其整體生產(chǎn)效率具有重要意義。這一問題的解決面臨兩方面的難題:一方面是制造系統(tǒng)的工藝布局與方案設(shè)計問題,方案的制定直接決定了系統(tǒng)未來的效率與性能,如何確立最佳的規(guī)劃布局,是系統(tǒng)研究過程中需要解決的首要問題;另一方面,斷路器數(shù)字化制造系統(tǒng)以流水線作為其生產(chǎn)組織形式,由于零部件眾多,制造工藝復(fù)雜,裝配過程涉及硬件設(shè)備、裝配對象、零部件約束、裝配序列等復(fù)雜因素,故流程復(fù)雜,邏輯關(guān)系繁多,所導(dǎo)致的生產(chǎn)節(jié)拍調(diào)整和時間控制問題是需要解決的第二個難題。
時間Petri網(wǎng)模型[3-4]以及基于該模型的虛擬現(xiàn)實技術(shù)為解決上述問題提供了有效手段。通過虛擬仿真技術(shù),人的知識和經(jīng)驗可以有效移植到虛擬制造系統(tǒng)中,形成以沉浸式交互技術(shù)和三維立體模型為基礎(chǔ)的虛擬系統(tǒng),也可以更加直觀地展示制造系統(tǒng)整體性能,能更方便地掌握流水線的三維布局以及工藝的優(yōu)化和改進。此外,通過Petri網(wǎng)對流水線行為特征和變遷規(guī)律建模,借助抽象的邏輯建模方法,可以在理論層面準確描述系統(tǒng)行為特征,進而進行制造過程行為分析和精煉,所得結(jié)論可以為流水線的設(shè)計與控制提供重要參考。
斷路器的裝配制造過程可以等效為動態(tài)異步并發(fā)型的離散事件系統(tǒng),涉及時間序列和多節(jié)拍匹配問題,在時間和空間上均是離散的。Petri網(wǎng)建模是一種描述該系統(tǒng)的有效方法,它在車間調(diào)度[5-6]、交通控制[7-8]、故障診斷[9]和供應(yīng)鏈仿真[10]等離散事件系統(tǒng)中得到了廣泛應(yīng)用。通過Petri網(wǎng)建模,可以清晰描述系統(tǒng)內(nèi)部的并發(fā)沖突及相互作用。曹政才等[11]提出了一種基于有色賦時Petri網(wǎng)的半導(dǎo)體生產(chǎn)線建模方法,將半導(dǎo)體生產(chǎn)線分為不同的調(diào)度和控制模塊,來分析生產(chǎn)線調(diào)度與控制性能;徐彪等[12]在Petri網(wǎng)庫所及變遷中引入時間屬性來表征電力系統(tǒng)警告信息的時序約束關(guān)系,提出了一種基于模糊時間Petri網(wǎng)的電網(wǎng)故障診斷方法,優(yōu)化了在線調(diào)控運行;張偉軍等[13]采用時延Petri網(wǎng)對裝配機器人等柔性裝配單元進行建模,分析不同作業(yè)任務(wù)的時間消耗,對任務(wù)規(guī)劃的時間進行了優(yōu)化;ULLAH等[14]提出了一種基于裝配序列優(yōu)化裝配方案的通用Petri網(wǎng)模型,建立了靈活的裝配系統(tǒng)結(jié)構(gòu)模型。這些文獻主要研究在Petri網(wǎng)中加入時間等元素,建立基于時間Petri網(wǎng)模型,對特定的制造系統(tǒng)/生產(chǎn)線進行優(yōu)化或調(diào)度控制。這些方法僅局限于對模型和工藝的研究與討論,缺乏后續(xù)的仿真驗證,沒有將模型計算結(jié)果進行形象化的對比和展示,同時缺乏交互性。
采用商業(yè)化軟件對Petri網(wǎng)模型進行仿真也是另一項重要研究內(nèi)容。潘春榮等[15]采用Petri網(wǎng)建立了印刷包裝生產(chǎn)系統(tǒng)的賦時Petri網(wǎng)模型,依據(jù)Petri網(wǎng)模型邏輯關(guān)系,運用eM-Plant仿真軟件進行了模擬生產(chǎn);梅江平等[16]提出一種以高速搬運機器人為核心的新型果奶包裝生產(chǎn)線設(shè)計方法,建立了系統(tǒng)的Petri網(wǎng)模型,基于不變量方法分析生產(chǎn)線系統(tǒng)的可達性、安全性,同時通過eM-Plant軟件進行仿真;WANG等[17]提出基于Petri網(wǎng)的生產(chǎn)線模型,建立了Petri網(wǎng)模型與eM-Plant離散系統(tǒng)模型之間的映射關(guān)系,在不同的輸入條件下進行合理的仿真實驗。這些研究通過商業(yè)軟件對Petri網(wǎng)模型進行了仿真,給出了不同工藝設(shè)計對制造過程的影響,然而商業(yè)化的仿真軟件僅可以為特定對象提供數(shù)值化的反饋結(jié)果,研究者只能通過在固定化的開發(fā)接口上獲取需要的信息,缺乏交互性。同時,數(shù)值化的仿真結(jié)果對于用戶而言,缺乏直觀性和生動性。
本文針對斷路器數(shù)字化制造的布局和設(shè)計問題,提出一種基于時間Petri網(wǎng)建模的虛擬仿真技術(shù),以Unity 3D作為虛擬現(xiàn)實開發(fā)平臺,建立了基于時間節(jié)拍約束的嵌套式Petri網(wǎng)模型組,并建立了基于C#函數(shù)庫的虛擬裝配系統(tǒng)數(shù)據(jù)交換引擎,可以通過Wi-Fi、工業(yè)串口實現(xiàn)與實體系統(tǒng)的數(shù)據(jù)交換。為降低系統(tǒng)邏輯復(fù)雜性,提高Petri網(wǎng)模型結(jié)構(gòu)的可重用性,根據(jù)生產(chǎn)線單元層級相互關(guān)系,對斷路器數(shù)字化制造單元進行了模塊層次化設(shè)計,將斷路器裝配線分為系統(tǒng)整體線路裝配模塊、零部件互相配合模塊和單個零件上料模塊,結(jié)合案例研究其在系統(tǒng)中的調(diào)度和控制問題,并給出了具體的仿真和分析結(jié)果。
斷路器裝配生產(chǎn)線包括外殼上料、手柄裝配、磁系統(tǒng)、熱系統(tǒng)等13項基本流程,見圖1。整個生產(chǎn)線中,裝配主體置于承座,并通過傳送帶完成裝配動作和回流循環(huán)使用。整個裝配生產(chǎn)系統(tǒng)包括被加工對象和生產(chǎn)線裝備本身,涉及裝配動作、約束關(guān)系和裝配序列等過程,十分復(fù)雜。
圖1 生產(chǎn)線構(gòu)成Fig.1 The components of production line
小型斷路器的內(nèi)部零件模型見圖2,包括手柄結(jié)構(gòu)、連動機構(gòu)、熱系統(tǒng)、磁系統(tǒng)等,零部件數(shù)量較多,尺寸和大小不一,裝配過程復(fù)雜。裝配流程包含零件的自動上料、依次配合、組件裝配和壓合檢測等。生產(chǎn)線工藝流程設(shè)計時,斷路器內(nèi)部零部件的結(jié)構(gòu)信息是重點考慮內(nèi)容。
圖2 斷路器零部件模型圖Fig.2 Model drawing of circuit breaker parts
斷路器生產(chǎn)線的結(jié)構(gòu)層次關(guān)系和包含的裝配動作見圖3,斷路器生產(chǎn)線13道工藝分布在9個系統(tǒng)單元,每個系統(tǒng)單元包含特定的機械設(shè)備與零件,設(shè)備相互配合運動完成相應(yīng)的零件上料、零件配合、零件壓合與檢測等工作。整個系統(tǒng)包含串行動作269個,并行動作139個,在每個生產(chǎn)節(jié)拍中總共需要完成327個動作,系統(tǒng)的零部件總數(shù)達到4 568個,并且每個動作和零件需要根據(jù)相應(yīng)的邏輯和時序進行配合運動,系統(tǒng)運行過程和邏輯控制較為復(fù)雜,需要采用邏輯層次模型對該生產(chǎn)過程和運動控制進行描述。
圖3 斷路器生產(chǎn)線部分結(jié)構(gòu)圖Fig.3 Structure diagram of circuit breaker production line
整個斷路器裝配系統(tǒng)單元繁多,且流程復(fù)雜,各單元間的邏輯關(guān)系設(shè)計、時間節(jié)拍的同步和異步協(xié)調(diào)等問題,是進行自動化裝配線設(shè)計與仿真的難點?;綪etri網(wǎng)模型可以對離散并行系統(tǒng)進行描述,但是缺乏時間信息。為解決此問題,采用分級設(shè)置Petri網(wǎng)模型,并引入時間域、零部件信息等元素對Petri網(wǎng)進行補充和建模,實現(xiàn)Petri網(wǎng)絡(luò)模型的優(yōu)化。
1.2.1時間節(jié)拍約束
系統(tǒng)仿真的運動通過時序信息來進行驅(qū)動,時間節(jié)拍的設(shè)計具有重要意義。在實際生產(chǎn)線中,裝配過程是連續(xù)的,每道工序的節(jié)拍時間相同,而且同一工序的裝配過程是相同而重復(fù)的,假設(shè)在仿真過程中,單個零件的最小裝配時間節(jié)拍為Ta,在0~Ta中完成一個零件的裝配過程,然后做周期運動,可達到單元聯(lián)動效果。由裝配關(guān)系和系統(tǒng)運動時間連貫性可知,每個單元的時間分配包括運動和等待時間,其代數(shù)和應(yīng)為Ta。部件由多個零件配合組裝而成,其裝配時間也為Ta。當(dāng)部件由多個零件組合而成時,其配合過程總時間應(yīng)為kTa(k為部件中零件子單元裝配過程的數(shù)量)。
圖4 時間節(jié)拍設(shè)計方法流程圖Fig.4 Time stamp design method flow chart
在自動化裝配系統(tǒng)中,機器人是流水線中的重要環(huán)節(jié),其工作過程可以等效為整條流水線中的一個工作單元,機器人從裝配動作開始到裝配過程結(jié)束(機械臂重置到初始工作點),總工作時間也應(yīng)該為Ta,因而機器手臂的裝配工藝設(shè)計和軌跡規(guī)劃需要考慮到時間節(jié)拍Ta的約束。在進行流水線設(shè)計時,Ta的選擇需要考慮到流水線的總單元數(shù)量和零部件個體數(shù)量,且受到仿真設(shè)計的總執(zhí)行循環(huán)時間約束。同時,機構(gòu)的運動走向、運動速率、部件的位置分布等也需要進行綜合考慮,具體時間節(jié)拍設(shè)計方法見圖4。整個流水線運動可看作是一個多單元依次銜接、小單元局部循環(huán)的過程,單元從初始狀態(tài)經(jīng)過一定運動轉(zhuǎn)化為終止?fàn)顟B(tài),且該單元的終止?fàn)顟B(tài)與下一個單元的初始狀態(tài)一致。運動開始則無限循環(huán),可實現(xiàn)斷路器裝配流水線的仿真。
1.2.2裝配流水線運動設(shè)計
基于裝配流水線構(gòu)成,將整個流水線描述為A=(Ta,O,G,TP,M,C,K),以此對斷路器虛擬裝配生產(chǎn)線系統(tǒng)中各對象的時間-邏輯的動作層次進行描述。模型A中,Ta表示節(jié)拍;O表示各個零部件模型;G表示模型的分組信息;TP表示對象運動的時間節(jié)點;M表示對象在時間域內(nèi)的運動信息;C表示流水線的結(jié)構(gòu)特征;K表示流水線運動中所包括其他信息。
由上可知,裝配流水線實現(xiàn)運動需要滿足以下條件:①虛擬編譯環(huán)境中,需要設(shè)置全局時間變量來對各單元流程進行協(xié)調(diào)和控制;②虛擬環(huán)境中必須包括所有必要零件模型,以及各個零件的分組信息;③零件模型之間需要設(shè)置正確的結(jié)構(gòu)、配合關(guān)系;④不同對象處于不同時間節(jié)點時,具有不同的運動狀態(tài);⑤每一個單元在一個循環(huán)周期結(jié)束后,其時間和空間位置信息均需要進行重置;⑥虛擬場景中對象的運動規(guī)律應(yīng)與實際物理系統(tǒng)的工藝一致。
1.2.3時間Petri網(wǎng)模型
基本的Petri網(wǎng)(PN)模型fPN=(S,T,F),描述了斷路器虛擬裝配流水線的實際工藝和邏輯,在PN模型中加入時間、零部件信息等元素,構(gòu)成裝配流水線Petri網(wǎng)(APN)模型,即
fAPN=(S,Sa,TR,F,k,M,M0,TP,T)M={Mi}i=1,2,…,nMj={mj}j=1,2,…,kmj={xjs,yjs,zjs,αjs,βjs,γjs;xje,yje,zje,αje,βje,γje}
式中,S為庫所集,表示系統(tǒng)中的資源狀態(tài);Sa為前期工位完成的裝配狀態(tài);TR為變遷,表示系統(tǒng)中的資源消耗、變化、生成等操作;F為流信息,指代裝配零件或設(shè)備從一個狀態(tài)到另一種狀態(tài)的過程;k為由一個庫所即將發(fā)生的多個變遷的權(quán)重值;M為對象時間域中的變換量;Mi為對象i的變換量;mj為對象單個時間域內(nèi)的變換量,如手柄上料需移動的距離、工作臺旋轉(zhuǎn)角、機械臂目標(biāo)軌跡位置等信息;(xjs,yjs,zjs)為對象初始坐標(biāo)點;(αjs,βjs,γjs)為對象初始歐拉角;(xje,yje,zje)為對象目標(biāo)坐標(biāo)點;(αje,βje,γje)為對象目標(biāo)歐拉角;M0為模型初始信息,即代表運動未發(fā)生時所有模型姿態(tài)信息;TP為時間節(jié)點,從動作的開始,依據(jù)循環(huán)次數(shù)進行自動疊加,到達一定額度后進行對象狀態(tài)重置和時間點重置,TP={tp},tp∈[0,T];T為對象的動作時間域(每個對象的總時間域相同),T={Ti}(i=1,2,…,n);Ti為對象i的時間域,一個對象的某個動作分為多個時間段,即Ti={tj}(j=1,2,…,k);tj為對象的某個時間域,如設(shè)置t1為手柄上料的運動時間,tj={tjs,tje};tjs、tje分別為該對象的變換時間開始和終止節(jié)點,如tjs為手柄上料動作開始的時間節(jié)點,tje為手柄上料動作完成時間節(jié)點。
根據(jù)裝配線的原理和結(jié)構(gòu)特征可得APN結(jié)構(gòu)圖,見圖5,該結(jié)構(gòu)圖可描述整個斷路器裝配主線的工作狀態(tài)和流程。圖5中,S0~S13為斷路器裝配狀態(tài),如S0代表為空,S1代表承座裝配完成,S2代表斷路器外殼裝配完成,S13代表所有裝配完成得到成品。系統(tǒng)共分成13個基本操作,Sa0~Sa12代表斷路器裝配所需的前位工作已完成狀態(tài),如Sa0代表承座上料,Sa12代表合蓋。TR1~TR13代表斷路器裝配零件、部件變遷運動的過程。K1~K13代表零部件裝配次數(shù),記錄生產(chǎn)量。
圖5 APN結(jié)構(gòu)圖Fig.5 Structure chart of APN
圖6 JAPN結(jié)構(gòu)圖Fig.6 Structure chart of JAPN
磁系統(tǒng)、熱系統(tǒng)等完成裝配之前,需要對組成磁系統(tǒng)、熱系統(tǒng)的零件進行配合,通過搭建零部件配合Petri網(wǎng)(JAPN)來描述其配合過程,fJAPN=(J,Sr,TP,F,k,M0,TP,T),簡化后的局部結(jié)構(gòu)圖見圖6。圖6中,Ji(i=1,2,…,n)表示部件組合過程中各零件上料或配合完成,如J1表示第一個零件已就位,J2表示第二個零件就位。TP2i-1表示零件的上料變遷動作,由上料單元移動到承座進行配合。Sri表示帶著前i個零件的承座組合,TP0、TP2、TP4等表示帶著前i個零件的承座組合變遷到下一個零件裝配工位動作,Sai表示最后組合完成的部件,也是APN網(wǎng)絡(luò)中的Sa,斷路器裝配所需的前位工作完成狀態(tài)。
零件上料等小單元裝配工序具有單獨的裝配過程,采用Petri網(wǎng)來描述單個零件模型的上料,即LAPN模型,表達式為fLAPN=(P,Th,F,W,M0,TP,T),具體見圖7。
圖7 LAPN結(jié)構(gòu)圖Fig.7 Structure chart of LAPN
圖7中,P1~Pi代表設(shè)備狀態(tài),Th1~Th3代表自動化夾具設(shè)備或機器人帶動零件進給變遷的過程,Th-1~Th-i代表零件夾取設(shè)備或機械臂在零件上料完畢后的重置過程。運行最后達到JAPN中的Ji狀態(tài),即上料完成或配合完成。
由上述APN、JAPN與LAPN模型形成帶時間信息的嵌套式Petri網(wǎng)模型組,它層次地描述了整個裝配流水線的行為邏輯關(guān)系。流水線中通過機器人完成上料工作,因而機器人的運動邏輯與時間節(jié)拍應(yīng)符合Petri網(wǎng)絡(luò)LAPN模型的描述。
完成時間Petri網(wǎng)絡(luò)模型的搭建后,整個虛擬制造仿真系統(tǒng)的搭建過程就更加便捷、嚴密,且邏輯清晰,同時使節(jié)拍修正調(diào)節(jié)更加簡便。此外,虛擬制造仿真系統(tǒng)需要與實物結(jié)合,以完成各對象從真實環(huán)境到虛擬環(huán)境的映射,實現(xiàn)生產(chǎn)線數(shù)字化和虛擬化,便于生產(chǎn)線的運維監(jiān)控過程。
斷路器虛擬裝配系統(tǒng)以設(shè)備網(wǎng)絡(luò)化、過程透明化、數(shù)據(jù)可視化和生產(chǎn)自動化為目標(biāo)。虛擬系統(tǒng)內(nèi)容包括設(shè)備、車間布局三維展示、生產(chǎn)線仿真運動和產(chǎn)品實時生產(chǎn)數(shù)據(jù)顯示等。通過分析數(shù)據(jù)在系統(tǒng)中的傳遞關(guān)系與接口交換模式,可實現(xiàn)多領(lǐng)域軟件數(shù)據(jù)流的無縫鏈接[18]。虛擬系統(tǒng)的運動仿真與控制需要結(jié)合實體對象的運動方向、距離、時間、速度等具體的行為數(shù)據(jù)。產(chǎn)品生產(chǎn)數(shù)據(jù)包括當(dāng)日車間總生產(chǎn)計劃、當(dāng)日車間生產(chǎn)人數(shù)(實時出勤人數(shù))、當(dāng)前設(shè)備運行狀態(tài)(有無故障)、當(dāng)前完工產(chǎn)品數(shù)量等實時數(shù)據(jù)。虛擬系統(tǒng)接收實時數(shù)據(jù)時,需要對流水線設(shè)備進行信息采集和信息傳輸?shù)裙δ茉O(shè)計。數(shù)據(jù)傳遞基本過程見圖8。
圖8 數(shù)據(jù)傳遞方式框圖Fig.8 The block diagram of data transmission
圖8中,PLC對實體系統(tǒng)進行驅(qū)動和控制,實體系統(tǒng)的數(shù)據(jù)信號通過工業(yè)以太網(wǎng)傳輸?shù)絇LC,經(jīng)過網(wǎng)關(guān)通信協(xié)議轉(zhuǎn)換以后,以工業(yè)串口和Wi-Fi的形式發(fā)送給虛擬系統(tǒng),虛擬系統(tǒng)通過數(shù)據(jù)交換引擎接收并處理數(shù)據(jù)。數(shù)據(jù)的傳輸格式設(shè)計見圖9,其中,開始位S、確認位A、結(jié)束位E分別用于數(shù)據(jù)傳輸?shù)拈_始、確認和結(jié)束;讀寫類別W用于區(qū)分數(shù)據(jù)的傳輸或接收;數(shù)據(jù)類別C用于區(qū)分數(shù)據(jù)的種類;從地址F和到地址T分別表示數(shù)據(jù)的發(fā)送與接收的主體的地址。該傳輸格式通用性好,結(jié)構(gòu)整齊,適用于各種數(shù)據(jù)傳輸情況。
圖9 數(shù)據(jù)傳輸格式Fig.9 Data-transport format
Unity 3D能夠很好地支持和繼承C#的功能,實現(xiàn)Unity與實體的數(shù)據(jù)交換,即使用C#自帶的程序API函數(shù)進行數(shù)據(jù)的交換和處理。進行串口通信時,需要基于Serial Port(串口)類進行開發(fā),采用Wi-Fi模式時,則需要采用Socket(端口)類函數(shù)進行設(shè)計。
采用Wi-Fi模式時,首先為分布式網(wǎng)絡(luò)設(shè)置通信參數(shù),并由服務(wù)器初始化網(wǎng)絡(luò)后,發(fā)現(xiàn)客戶端,再為客戶端進行參數(shù)配置和入網(wǎng)操作,最后進行數(shù)據(jù)傳輸?shù)裙ぷ鳎渚唧w流程見圖10。
圖10 端口通信方式Fig.10 Data communication mode
串口通信時,首先對串口參數(shù)進行配置,包括其串口名、波特率、奇偶校驗等,再使用串口的打開、關(guān)閉、數(shù)據(jù)接收等函數(shù)實現(xiàn)串口通信。數(shù)據(jù)通信轉(zhuǎn)換應(yīng)用過程見圖11。
圖11 串口通信方式框圖Fig.11 The block diagram of series communication
將建立的Petri網(wǎng)模型中的庫所、變遷與Unity 3D虛擬場景中的實體對象相對應(yīng),根據(jù)Petri網(wǎng)絡(luò)進行模型的分組、分級并鏈接層次關(guān)系,根據(jù)對應(yīng)數(shù)據(jù)進行行為驅(qū)動編譯。通過編程架設(shè)Petri網(wǎng)所描述的系統(tǒng)結(jié)構(gòu),實現(xiàn)系統(tǒng)速度柔性可控的多節(jié)拍循環(huán)運動和動態(tài)切換運動,實現(xiàn)Petri網(wǎng)模型到虛擬平臺Unity 3D平臺的映射,從而實現(xiàn)裝配流水線的虛擬現(xiàn)實仿真。
映射過程中,首先對模型對象進行結(jié)構(gòu)化處理,模型中,具有相同運動過程的設(shè)備可鏈接成組。如根據(jù)模型的運動關(guān)系,若干個零件組成的部件是整體運動,將這些零件設(shè)為一組,成為一個氣缸部件,并命名為氣缸01,組中各個零件與整個氣缸部件具有層級關(guān)系。層級關(guān)系在Unity中也叫父子關(guān)系,滿足“父動子動,子動父不動”的規(guī)則。根據(jù)這種規(guī)則,將所有零件分層鏈接并建立層級關(guān)系,然后層層鏈接成為一個有層次的系統(tǒng)。
根據(jù)Petri網(wǎng)的邏輯,在Unity的hierarchy視圖中建立層級關(guān)系,創(chuàng)建Control.cs腳本,并賦給系統(tǒng)物體,在C#環(huán)境下定義部件變量并將這些變量與部件建立一一對應(yīng)關(guān)系。
定義變量:
Public Transform bracket-circulation ;//定義承座回流
Public Transformrobot;//定義機器人裝配
Public Transformbracket01;//定義承座01對象
鏈接層次關(guān)系:
Bracket-circulation = gameObject.transform. GetChild(1).transform; //承座回流是斷路器裝配系統(tǒng)的第1個子物體
robot=gameObject.transform.GetChild(2).transform;//機器人裝配斷路器外殼是斷路器裝配系統(tǒng)的第2個子物體
bracket01= Bracket-circulation.transform. GetChild(1).transform;//承座01是承座回流單元的第一個子物體
…
映射過程中,Petri網(wǎng)絡(luò)模型中的變遷映射是重要的任務(wù)。變遷映射符合網(wǎng)絡(luò)中時間節(jié)拍設(shè)計的約束。Unity 3D系統(tǒng)自帶有全局坐標(biāo)系,模型從SolidWorks導(dǎo)入時,空間位置關(guān)系已確定,使用全局坐標(biāo)系根據(jù)零部件坐標(biāo)標(biāo)記運動始末坐標(biāo)。
對象平移運動可運用transform.Translate函數(shù)實現(xiàn),例如氣缸01在z軸上相對移動距離0.154 m,用以下代碼實現(xiàn):
GameObject.Find(“Cylinder01”).transform.
Translate(new Vector3(0,0,-0.154));
對象旋轉(zhuǎn)運動可用transform.RotateAround函數(shù)實現(xiàn),例如自動化設(shè)備中的轉(zhuǎn)盤每循環(huán)裝配一次,其在0.80T~0.95T時間域內(nèi)繞著轉(zhuǎn)輪中心點創(chuàng)建的虛擬對象pivot01的z軸旋轉(zhuǎn)45°。將時間T分為100節(jié),則在80到95節(jié)之間每小節(jié)旋轉(zhuǎn)3°。用以下代碼實現(xiàn):
If((key_frame>=80)&(key_frame<95))
this.transform.RotateAround(GameObject.Find(“pivot01”).transform.position,Vector3.up,3);
在仿真過程中,機械設(shè)備運行過程中可能會發(fā)生自身的碰撞或是與其他設(shè)備的碰撞,碰撞檢測可以在發(fā)生碰撞時及時做出報告與響應(yīng)。Unity支持多種檢測方法,本文采用包圍盒法[19-20]檢測。包圍盒法是使用碰撞體包圍盒近似覆蓋對象,通過包圍盒的相交情況來檢測碰撞。平臺提供了3種碰撞響應(yīng)函數(shù):VoidOnCollisionEnter(Collision collisionInfo)、VoidOnCollisionExit(Collision collisionInfo)、VoidOnCollisionStay(Collision collisionInfo)。當(dāng)物體的碰撞狀態(tài)發(fā)生改變時,相應(yīng)的碰撞響應(yīng)函數(shù)在后臺會自動被調(diào)用。
操作系統(tǒng)界面是人機交互較為重要的部分,界面的設(shè)計直接影響到整個系統(tǒng)的操作便利性、美觀程度等。在Unity 3D中使用UI組件,通過在UI界面上設(shè)置背景圖片、文字、按鈕等功能,顯示裝配系統(tǒng)的工作量與工作效率等實時數(shù)據(jù)。在系統(tǒng)中設(shè)置虛擬漫游功能,用戶能夠在系統(tǒng)中通過輸入硬件設(shè)備達到全方位觀察系統(tǒng)結(jié)構(gòu)的目的。
依據(jù)時間Petri網(wǎng)模型中的邏輯關(guān)系和節(jié)拍設(shè)定,在Unity 3D中對斷路器裝配系統(tǒng)進行了虛擬仿真,其系統(tǒng)部分展示結(jié)果見圖12。使用Petri網(wǎng)對各對象運動規(guī)律進行定義和描述,結(jié)合系統(tǒng)設(shè)計中設(shè)置的全局時間變量Ta,使得虛擬系統(tǒng)可根據(jù)Ta的改變,來改變整條流水線的設(shè)計節(jié)拍,由此,可對裝配系統(tǒng)的工藝及其流程進行柔性設(shè)計和控制,實現(xiàn)整個裝配系統(tǒng)的節(jié)拍調(diào)控。
圖12 系統(tǒng)部分工作展示圖Fig.12 Part of the system work display
利用基于時間的嵌套式Petri模型,清晰地描述了各設(shè)備的運動邏輯先后關(guān)系,方便系統(tǒng)對故障信號的處理轉(zhuǎn)換,實現(xiàn)實時信號控制設(shè)備運動狀態(tài),達到生產(chǎn)監(jiān)控的目的。在APN中的生產(chǎn)線主裝配線上,當(dāng)承座與零部件準備到位時,零部件裝配才能進行,零部件依次裝配才能得到最后的產(chǎn)品。網(wǎng)絡(luò)中,S0代表承座上料完成,Sa0代表斷路器外殼就位,當(dāng)承座與外殼都就位后,外殼的裝配過程TR1才能進行,才能形成外殼裝配完成狀態(tài)S1,進而裝配下一零部件直到產(chǎn)品成形。而APN中的零部件就位(即Sa的實現(xiàn)),需要滿足JAPN中的TPi載具變遷到位與Ji小零件的到位,此時,部件的配合才能發(fā)生。而JAPN的Ji實現(xiàn)需要滿足LAPN中設(shè)備的運動Th。Petri網(wǎng)邏輯環(huán)環(huán)相扣,斷路器運維系統(tǒng)正常情況下,單元正常運行,當(dāng)接收到第i個單元故障信號時,該單元以前的所有單元控制的設(shè)備及載具停止。當(dāng)接收到故障解除信號且所有單元的上料位有載具時,所有單元正常運行,若某單元上料位載具為空,則其單元上料停止。達成目標(biāo)系統(tǒng)需保證:①單元無故障;②傳送帶上料位有載具。
可以看到,通過時間Petri網(wǎng)絡(luò)對制造線的邏輯框架進行構(gòu)建和描述,并與虛擬現(xiàn)實技術(shù)相結(jié)合,可有效解決虛擬仿真系統(tǒng)建模過程中的流程和工藝復(fù)雜等問題,且時間Petri網(wǎng)中的時間元素使系統(tǒng)程序編譯更加方便。使用所提出的工業(yè)串口通信方法,完成了虛擬裝配系統(tǒng)與實際裝配線的匹配,實現(xiàn)了生產(chǎn)線實時數(shù)據(jù)的可視化展示與生產(chǎn)故障狀態(tài)的檢測展示,如圖13所示。
(a)正常
(b)故障圖13 系統(tǒng)工作狀態(tài)Fig.13 System working status
圖13分別為設(shè)備正常運轉(zhuǎn)和出現(xiàn)故障時的狀態(tài),當(dāng)故障出現(xiàn)時相應(yīng)設(shè)備停止工作,并做出合適的故障示警動作(單元狀態(tài)燈由綠燈變紅燈提醒,數(shù)據(jù)展示板提示出現(xiàn)故障),點擊定位導(dǎo)航選擇查看單元可定位到故障單元進行故障查看,便利了整個生產(chǎn)裝配線的實時監(jiān)控過程。
采用時間Petri網(wǎng)方法對斷路器裝配流水線的邏輯結(jié)構(gòu)進行建模,以Unity 3D為虛擬平臺,直觀展示了系統(tǒng)的生產(chǎn)布局與調(diào)度控制性能。通過生產(chǎn)線的虛擬仿真和實體數(shù)據(jù)的交換,可整體掌握各個生產(chǎn)模塊的工作狀態(tài)與效率。仿真結(jié)果表明:①基于時間的嵌套式Petri模型組可以對復(fù)雜多層次的斷路器自動裝配生產(chǎn)線運動邏輯和工藝節(jié)拍進行有效描述;②設(shè)計開發(fā)人員能夠利用本系統(tǒng)提高裝配生產(chǎn)線的設(shè)計、制造能力,提高產(chǎn)品開發(fā)的效率與可靠性;③制造商能夠基于本系統(tǒng)的設(shè)計與仿真,對廠房結(jié)構(gòu)、生產(chǎn)工藝條件和生產(chǎn)線布局進行設(shè)計和評估,節(jié)省成本。