劉 娟,莊存波,劉檢華,苗 田,王建群
(北京理工大學(xué) 機(jī)械與車輛學(xué)院,北京 100081)
隨著大數(shù)據(jù)、云計(jì)算、物聯(lián)網(wǎng)、人工智能等新一代信息技術(shù)的快速發(fā)展與普及應(yīng)用,為了推動制造業(yè)的數(shù)字化轉(zhuǎn)型升級和智能化發(fā)展,工業(yè)4.0、工業(yè)互聯(lián)網(wǎng)、中國制造2025等戰(zhàn)略相繼被提出。數(shù)字孿生技術(shù)作為信息物理系統(tǒng)(Cyber-Physical Systems, CPS)的關(guān)鍵使能技術(shù),是實(shí)現(xiàn)制造過程信息世界與物理世界交互融合及互聯(lián)互通的重要手段[1-2]。
數(shù)字孿生體的概念模型最早由Grieves在2003年提出,被認(rèn)為是物理實(shí)體在數(shù)字空間的映射模型[3-4]。其本質(zhì)是在數(shù)字空間構(gòu)建一個(gè)能夠動態(tài)實(shí)時(shí)反映物理系統(tǒng)當(dāng)前的狀態(tài)和行為,并能準(zhǔn)確預(yù)測其未來狀態(tài)與行為的模型,從而輔助人員進(jìn)行優(yōu)化決策。生產(chǎn)車間是典型的復(fù)雜制造系統(tǒng),具有物理對象多樣、運(yùn)行過程動態(tài)性強(qiáng)、不確定因素多等特點(diǎn),如何利用數(shù)字孿生技術(shù)實(shí)現(xiàn)生產(chǎn)車間的全面監(jiān)控、在線預(yù)測與實(shí)時(shí)決策一直是學(xué)者們研究的熱點(diǎn)[5]。
陶飛等[6-7]基于數(shù)字孿生理念提出一種未來車間運(yùn)行的新模式——數(shù)字孿生車間,分析了數(shù)字孿生車間的4個(gè)主要組成部分,即物理車間、虛擬車間、車間服務(wù)系統(tǒng)和車間孿生數(shù)據(jù),并闡述了數(shù)字孿生車間的運(yùn)行機(jī)制;趙浩然等[8]針對數(shù)字孿生車間的可視化監(jiān)控難題,提出基于實(shí)時(shí)數(shù)據(jù)的數(shù)字孿生車間三維可視化實(shí)時(shí)監(jiān)控方法;周成等[9]構(gòu)建了基于數(shù)字孿生車間的三維可視化監(jiān)控系統(tǒng);西門子則提出“綜合數(shù)字孿生體”的概念,并將其應(yīng)用于Piper M600飛機(jī)設(shè)計(jì)的全生命周期,實(shí)現(xiàn)了數(shù)字化車間的虛擬裝配[10];Zhuang等[11-12]將數(shù)字孿生技術(shù)應(yīng)用于復(fù)雜產(chǎn)品裝配過程,提出基于數(shù)字孿生的復(fù)雜產(chǎn)品裝配過程智能化管控體系框架和過程追溯方法,為提升復(fù)雜產(chǎn)品裝配生產(chǎn)效率和質(zhì)量提供了一種新的路徑;劉志峰等[13]將數(shù)字孿生技術(shù)運(yùn)用在零件智能制造車間,構(gòu)建了智能車間調(diào)度云平臺框架,并開發(fā)了基于數(shù)字孿生的智能制造車間調(diào)度云平臺,為解決智能車間調(diào)度問題提供了一種全新的思路。綜上所述,當(dāng)前數(shù)字孿生技術(shù)在生產(chǎn)車間的應(yīng)用主要集中在體系框架構(gòu)建、可視化監(jiān)控和車間調(diào)度等方面,基于數(shù)字孿生的生產(chǎn)車間在線預(yù)測的研究成果偏少。
在車間預(yù)測方面,傳統(tǒng)方法主要基于所構(gòu)建的生產(chǎn)系統(tǒng)運(yùn)行邏輯模型,通過離線仿真的手段分析和預(yù)測加工時(shí)間、工件到達(dá)等動態(tài)變量對制造系統(tǒng)性能(如完工時(shí)間、交貨拖期成本)的影響[14-15]。例如,翟穎妮等[16]針對作業(yè)車間設(shè)備故障引起的瓶頸漂移問題,提出一種基于貝葉斯推理的瓶頸設(shè)備漂移預(yù)測方法,構(gòu)建了瓶頸設(shè)備漂移預(yù)測模型,為提升生產(chǎn)系統(tǒng)運(yùn)作效率提供了一種可行的方法。同時(shí),隨著大數(shù)據(jù)技術(shù)的快速發(fā)展,張潔等[17]基于智能車間運(yùn)行過程中產(chǎn)生的海量多源高維異構(gòu)數(shù)據(jù),提出大數(shù)據(jù)驅(qū)動下“關(guān)聯(lián)+預(yù)測+調(diào)控”的車間運(yùn)行分析和決策模式;任杉等[18]提出基于生命周期大數(shù)據(jù)的復(fù)雜產(chǎn)品智能制造服務(wù)新模式;Ji等[19]提出一種基于大數(shù)據(jù)分析的車間調(diào)度故障預(yù)測方法;王孟卓等[20]面向數(shù)控加工車間,提出基于制造大數(shù)據(jù)的工時(shí)預(yù)測技術(shù)體系,為數(shù)控加工工時(shí)的定制與預(yù)測提供了一種新的技術(shù)手段;于成龍等[21]則提出一種基于數(shù)據(jù)挖掘的機(jī)加工生產(chǎn)進(jìn)度預(yù)測方法。
綜上所述,當(dāng)前制造系統(tǒng)運(yùn)行狀態(tài)的預(yù)測方法可分為基于仿真的預(yù)測和基于大數(shù)據(jù)的預(yù)測兩種?;诜抡娴能囬g預(yù)測方法在系統(tǒng)初始配置和設(shè)定上多由人工指定,且只能在特定的輸入條件下輸出仿真結(jié)果;另外,多數(shù)仿真方法為離線仿真,仿真時(shí)刻與實(shí)際系統(tǒng)運(yùn)行時(shí)刻之間存在時(shí)間差,功能明顯滯后。運(yùn)用大數(shù)據(jù)相關(guān)技術(shù)進(jìn)行預(yù)測的方法對數(shù)據(jù)量有一定要求,對于部分制造系統(tǒng)而言,獲取大量歷史數(shù)據(jù)十分困難,并且基于大數(shù)據(jù)的預(yù)測為純數(shù)據(jù)維度,與系統(tǒng)模型相關(guān)性低,是一種理想化的穩(wěn)態(tài)預(yù)測。復(fù)雜制造系統(tǒng)除了穩(wěn)態(tài)預(yù)測,還需要在系統(tǒng)狀態(tài)瞬息變化的情況下獲得實(shí)時(shí)瞬態(tài)預(yù)測,而目前的研究較少考慮預(yù)測的實(shí)時(shí)性和瞬態(tài)性。
因此,本文將數(shù)字孿生技術(shù)引入車間運(yùn)行狀態(tài)仿真預(yù)測,提出一種面向數(shù)字孿生車間的運(yùn)行狀態(tài)在線預(yù)測方法,以實(shí)現(xiàn)實(shí)時(shí)、持續(xù)、瞬態(tài)的仿真和預(yù)測。
與物理實(shí)體完全一致的虛擬模型稱為數(shù)字孿生體,采用數(shù)字孿生體可以對物理實(shí)體在現(xiàn)實(shí)環(huán)境中的行為和性能進(jìn)行仿真和模擬[22]。數(shù)字孿生車間本質(zhì)上是一個(gè)建立在車間層面的信息物理融合系統(tǒng),是CPS在生產(chǎn)系統(tǒng)中的一個(gè)應(yīng)用實(shí)例。車間數(shù)字孿生體(Shop-floor Digital Twin, SDT)是一個(gè)在信息世界中對物理車間進(jìn)行全要素和全流程數(shù)字化映射與表達(dá)的模型,也可稱為車間數(shù)字孿生模型。
數(shù)字孿生車間的系統(tǒng)組成可歸納為4個(gè)層面(如圖1):①物理層,由物理車間內(nèi)的設(shè)備、產(chǎn)品、人員等所有客觀存在的實(shí)體集合構(gòu)成。②數(shù)據(jù)層,包括生產(chǎn)車間靜態(tài)數(shù)據(jù)和基于車間物聯(lián)網(wǎng)采集的生產(chǎn)過程實(shí)時(shí)數(shù)據(jù)。在該層對所采集的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理和數(shù)據(jù)清洗,最后通過數(shù)據(jù)通訊機(jī)制傳輸?shù)侥P蛯?。③模型層,指虛擬空間中構(gòu)建的車間數(shù)字孿生體。④功能層,指車間數(shù)字孿生體在實(shí)時(shí)數(shù)據(jù)驅(qū)動下同步運(yùn)行,從而動態(tài)映射車間真實(shí)的生產(chǎn)狀況,最終實(shí)現(xiàn)車間生產(chǎn)狀態(tài)真實(shí)描述、生產(chǎn)數(shù)據(jù)實(shí)時(shí)展示和運(yùn)行狀態(tài)仿真預(yù)測等功能,進(jìn)而輔助車間管理人員進(jìn)行決策。
車間數(shù)字孿生體是一個(gè)囊括“人機(jī)料法環(huán)”的復(fù)雜生產(chǎn)系統(tǒng),是車間全要素、全流程、全業(yè)務(wù)數(shù)據(jù)的集成與融合,通過仿真評估、迭代優(yōu)化實(shí)現(xiàn)物理車間與虛擬車間的交互融合,達(dá)到車間生產(chǎn)和管控最優(yōu)[23]。基于車間數(shù)字孿生的仿真預(yù)測框架如圖2所示。
詳細(xì)實(shí)現(xiàn)流程如下:
(1)以數(shù)據(jù)為驅(qū)動源,建立數(shù)字孿生車間數(shù)據(jù)管理架構(gòu),實(shí)現(xiàn)生產(chǎn)數(shù)據(jù)的采集、驅(qū)動、輸入、更新、展示等交互管理。
(2)構(gòu)建物理車間人員、設(shè)備、產(chǎn)品的三維靜態(tài)模型,并基于實(shí)際車間生產(chǎn)布局搭建與物理車間完全映射的虛擬車間模型,建立虛擬平臺下的車間數(shù)字孿生體。
(3)建立物理車間與車間數(shù)字孿生體之間的數(shù)據(jù)通訊機(jī)制,以實(shí)時(shí)數(shù)據(jù)驅(qū)動虛擬車間三維模型動態(tài)運(yùn)行,實(shí)現(xiàn)在虛擬空間中對設(shè)備運(yùn)行狀態(tài)、產(chǎn)品加工狀態(tài)和物料流轉(zhuǎn)狀態(tài)的三維可視化監(jiān)控。在此基礎(chǔ)上,將設(shè)備狀態(tài)信息、產(chǎn)品加工信息、人員基本信息和生產(chǎn)環(huán)境信息等多層次信息通過可視化看板的形式進(jìn)行展示,實(shí)現(xiàn)物理車間和虛擬車間之間的信息動態(tài)映射。
(4)建立系統(tǒng)仿真輸入?yún)?shù),生成仿真樣本變量,以循環(huán)掃描函數(shù)掃描當(dāng)前狀態(tài)作為仿真的初始狀態(tài),并以事件調(diào)度法推進(jìn)仿真程序的執(zhí)行,實(shí)現(xiàn)持續(xù)瞬態(tài)仿真,同時(shí)將仿真運(yùn)行結(jié)果輸出到數(shù)字孿生車間看板上,進(jìn)而實(shí)現(xiàn)車間運(yùn)行狀態(tài)的在線預(yù)測。
基于事件調(diào)度法的仿真是一種基于將來事件表(Future Event List, FEL),通過仿真時(shí)鐘的推進(jìn),將事件不斷列入或移出FEL,來保證所有事件按正確事件次序發(fā)生的仿真推進(jìn)機(jī)制。在事件調(diào)度法中,只有初始事件是事先安排的,其余事件均為在仿真推進(jìn)過程中自然發(fā)生,如隨機(jī)到達(dá)事件和隨機(jī)結(jié)束事件?;谑录{(diào)度法的仿真運(yùn)行邏輯如圖3所示。
首先根據(jù)當(dāng)前狀態(tài)產(chǎn)生初始FEL,通過循環(huán)掃描FEL確定下一時(shí)刻將要發(fā)生的事件。當(dāng)仿真時(shí)鐘由Clock=t推進(jìn)至Clock=t1時(shí),更新時(shí)間為t1時(shí)刻的系統(tǒng)狀態(tài),在FEL中移除該事件(某一事件一旦發(fā)生即被移除),然后根據(jù)實(shí)時(shí)輸入的數(shù)據(jù)將新產(chǎn)生的將來事件添加到FEL中,并按事件發(fā)生時(shí)間的先后順序排列。
基于事件調(diào)度法的車間數(shù)字孿生體系統(tǒng)仿真,首先對仿真對象進(jìn)行系統(tǒng)輸入特性建模,用抽象模型描述實(shí)際生產(chǎn)過程。然后根據(jù)仿真要求結(jié)合真實(shí)車間狀況篩選所產(chǎn)生的仿真樣本,從而確定樣本輸入發(fā)生器。最后基于車間生產(chǎn)流程描述仿真事件處理邏輯,通過觸發(fā)不同的事件處理邏輯完成系統(tǒng)仿真流程。
對現(xiàn)實(shí)世界的真實(shí)現(xiàn)象進(jìn)行建模時(shí),如果存在模型失真,則不能完全準(zhǔn)確地進(jìn)行仿真預(yù)測。由于現(xiàn)實(shí)過程大多為隨機(jī)過程,且影響因素很多,然而即使非常明確影響因素也難以找到量化規(guī)律。由于影響因素很多,現(xiàn)實(shí)過程大多為隨機(jī)過程,然而即使影響因素非常明確也很難找到量化規(guī)律。這些隨機(jī)過程往往是推動仿真模型運(yùn)行的驅(qū)動力,因此需要采用抽象模型描述現(xiàn)實(shí)過程,一般將該過程稱為系統(tǒng)輸入特性建模。
通常輸入特性建模按如下步驟進(jìn)行:
(1)數(shù)據(jù)收集 數(shù)據(jù)收集是仿真中最重要但最困難的問題之一,一般通過現(xiàn)場實(shí)際測算、車間管理人員提供等方法獲得輸入數(shù)據(jù),然而并非所有系統(tǒng)都保存了足量能用于仿真分析的歷史數(shù)據(jù)。在無法收集有效數(shù)據(jù)時(shí),仿真的準(zhǔn)確度將大幅下滑,甚至需要通過更復(fù)雜的方法來檢驗(yàn)仿真的準(zhǔn)確性。
(2)從數(shù)據(jù)中辨識分布 從數(shù)據(jù)中辨識分布指對所采集的數(shù)據(jù)進(jìn)行預(yù)處理后確定變量的分布類型。若能獲得足量的歷史數(shù)據(jù),則可采取多種方法從數(shù)據(jù)中辨識分布。直方圖是最簡單直觀的辨識方式,采用分位點(diǎn)—分位點(diǎn)(q-q)圖能夠評價(jià)直方圖的擬合效果。
(3)參數(shù)估計(jì) 完成辨識分布簇后,還需要對該分布進(jìn)行參數(shù)估計(jì)。例如,對于指數(shù)分布,需要估計(jì)其率參數(shù)λ;對于正態(tài)分布,需要估計(jì)均值μ和標(biāo)準(zhǔn)差σ。
(4)擬合優(yōu)良性檢驗(yàn) 現(xiàn)實(shí)應(yīng)用中符合要求的擬合分布并不唯一,因此需要對分布進(jìn)行擬合優(yōu)良性檢驗(yàn)。常用的檢驗(yàn)方法有χ2檢驗(yàn)和科爾莫格羅夫—斯米爾諾夫檢驗(yàn)(Kolmogorov-Smirnov Test, K-S Text)。在無法收集足量實(shí)際數(shù)據(jù)的情況下,往往采用專家知識、根據(jù)慣例或根據(jù)該過程的性質(zhì)確定分布。
以某生產(chǎn)加工車間的高速五軸加工單元、中型結(jié)構(gòu)加工單元和檢驗(yàn)單元為例,該車間主要涉及的隨機(jī)過程有零件加工任務(wù)的隨機(jī)到達(dá)、零件加工的隨機(jī)時(shí)間和零件檢驗(yàn)的隨機(jī)時(shí)間,但是無法通過系統(tǒng)獲得這些隨機(jī)過程足量的有效歷史數(shù)據(jù),因此采用專家知識提供數(shù)據(jù)。在本車間人員不參與企業(yè)資源計(jì)劃(Enterprise Resource Planning, ERP)系統(tǒng)建設(shè)和使用的情況下,加工任務(wù)到達(dá)事件可以認(rèn)為是相互獨(dú)立的,一批加工任務(wù)的到達(dá)無法為下一批加工任務(wù)的到達(dá)時(shí)間提供參考,即到達(dá)過程為無記憶過程,獨(dú)立事件和無記憶過程時(shí)間采用指數(shù)分布建模。零件加工時(shí)間和檢驗(yàn)時(shí)間是一系列工步執(zhí)行時(shí)間的累加值,對于可以看作子過程之和的過程采用正態(tài)分布建模。通過采訪詢問車間主任、加工工人和檢驗(yàn)工人,得知該車間的零件加工時(shí)間與機(jī)床型號和零件類型有關(guān),該車間采用機(jī)床與零件類型一對多的加工分配形式和檢驗(yàn)工位與零件類型一對一的檢驗(yàn)分配模式。
一個(gè)分布完全確定后,在仿真中需要根據(jù)該分布不斷產(chǎn)生符合要求的樣本變量。由于用于仿真或數(shù)據(jù)處理的非專業(yè)語言均未提供預(yù)置的樣本發(fā)生程序,本文采用相關(guān)技術(shù)自行編寫。
(1)指數(shù)分布隨機(jī)變量的生成
反變換技術(shù)可用于在指數(shù)分布、均勻分布、韋布爾分布和三角分布中取樣,是大多數(shù)離散分布產(chǎn)生隨機(jī)樣本的一種方法。一個(gè)呈指數(shù)分布的隨機(jī)變量的概率密度函數(shù)
(1)
其累積分布函數(shù)(Cumulative Distribution Function, CDF)為
(2)
對F(X)的右半邊(X≥0)求分布函數(shù)的逆函數(shù):
(3)
將逆函數(shù)中的F記為R,令R服從[0,1]上的均勻分布,則指數(shù)分布的樣本發(fā)生器為
(4)
(2)正態(tài)分布隨機(jī)變量的生成
Box-Muller算法用于產(chǎn)生服從正態(tài)分布的隨機(jī)變量。假定隨機(jī)變量X和Y相互獨(dú)立且均服從均值標(biāo)準(zhǔn)正態(tài)分布,即
(5)
(6)
則X與Y的聯(lián)合概率密度為
(7)
將X和Y進(jìn)行極坐標(biāo)變換:
X=Rcos(θ);
(8)
Y=Rsin(θ)。
(9)
則X和Y的聯(lián)合分布函數(shù)
(10)
因此得到R與θ的分布函數(shù)
(11)
可知θ~U(0,2π)。令R和θ的分布函數(shù)分別為:
(12)
(13)
求分布函數(shù)的逆函數(shù):
(14)
θ(F)=2πF。
(15)
將逆函數(shù)中的F記為Z,即
θ(F)=2πZ,
(16)
可知當(dāng)Z服從[0,1]上的均勻分布時(shí),R的分布函數(shù)為F(r),θ的分布函數(shù)為F(φ)。因此選取兩個(gè)服從[0,1]上均勻分布的隨機(jī)變量U1和U2代替式中的Z,即
(17)
θ(F)=2πU2。
(18)
將式(17)和式(18)分別代入X和Y的極坐標(biāo)變換式(8)和式(9),得:
(19)
(20)
任取其一作為正態(tài)分布樣本發(fā)生器。
在該制造車間中,有8臺機(jī)床和6個(gè)檢驗(yàn)工位,實(shí)體在該車間中的全生命周期為“進(jìn)入—加工—檢驗(yàn)—離開”4個(gè)階段。在全生命周期中發(fā)生的事件為到達(dá)事件、開始加工事件、加工結(jié)束事件、開始檢驗(yàn)事件、檢驗(yàn)結(jié)束事件(離開事件)。因?yàn)閷?shí)體到達(dá)事件是車間系統(tǒng)運(yùn)行的根本驅(qū)動力,加工結(jié)束事件和離開事件是人為操作產(chǎn)生的次要驅(qū)動力,開始加工事件和開始檢驗(yàn)事件為自然發(fā)生的從動事件,所以將到達(dá)事件、加工結(jié)束事件和離開事件作為該車間仿真系統(tǒng)的驅(qū)動事件,分別用A(arrive),F(xiàn)(finish processing),D(departure)表示事件類型。3種事件的處理邏輯如下:
(1)到達(dá)事件處理邏輯
到達(dá)事件處理邏輯如圖4所示。若在Clock=t時(shí)刻發(fā)生到達(dá)事件,則對該實(shí)體進(jìn)行調(diào)度并確定其加工工位,判斷該加工工位是否處于繁忙狀態(tài)。若工位繁忙,則將該實(shí)體列入該加工工位的排隊(duì)隊(duì)列;否則,實(shí)體進(jìn)入該工位進(jìn)行加工,并將該加工工位的狀態(tài)更新為繁忙。接著采用正態(tài)分布樣本發(fā)生器為該實(shí)體計(jì)劃一個(gè)加工時(shí)間p*,并在t+p*時(shí)刻安排新的加工結(jié)束事件,即將事件(F,t+p*)插入FEL。之后,無論工位是否繁忙均需計(jì)劃下一次到達(dá)事件,即采用指數(shù)分布樣本發(fā)生器為下一個(gè)到達(dá)實(shí)體計(jì)劃一個(gè)到達(dá)時(shí)間間隔a*,在t+a*時(shí)刻安排新的到達(dá)事件,并將事件(A,t+a*)插入FEL,然后匯總上述過程中發(fā)生變化的狀態(tài)數(shù)據(jù)和統(tǒng)計(jì)數(shù)據(jù),最后將仿真程序的控制流返回時(shí)間,以時(shí)間順序推進(jìn)主進(jìn)程繼續(xù)執(zhí)行仿真。
(2)離開事件處理邏輯
離開事件處理邏輯如圖5所示。若在Clock=t時(shí)刻發(fā)生離開事件,則判斷該實(shí)體所處檢驗(yàn)工位的隊(duì)列中是否仍有實(shí)體正在排隊(duì)等待檢驗(yàn)。若無實(shí)體排隊(duì),則該檢驗(yàn)工位狀態(tài)更新為空閑;否則,抽出隊(duì)列中優(yōu)先級最高的實(shí)體進(jìn)行檢驗(yàn)。采用正態(tài)分布樣本發(fā)生器為該實(shí)體計(jì)劃一個(gè)檢驗(yàn)時(shí)間i*,并在t+i*時(shí)刻安排新的離開事件,即將事件(D,t+i*)插入FEL。然后匯總上述過程中發(fā)生變化的狀態(tài)數(shù)據(jù)和統(tǒng)計(jì)數(shù)據(jù),最后將仿真程序的控制流返回時(shí)間,以時(shí)間順序推進(jìn)主進(jìn)程繼續(xù)執(zhí)行仿真。
(3)加工結(jié)束事件處理邏輯
加工結(jié)束事件是承接加工事件和檢驗(yàn)事件的中間事件,可以看作同時(shí)進(jìn)行加工過程的離開事件和檢驗(yàn)過程的到達(dá)事件。將到達(dá)事件和離開事件的處理邏輯結(jié)合,即為加工結(jié)束事件的處理邏輯,如圖6所示。在Clock=t時(shí)刻實(shí)體發(fā)生加工結(jié)束事件,判斷當(dāng)前加工工位緩存區(qū)是否有排隊(duì)實(shí)體。若有排隊(duì)實(shí)體,則排隊(duì)實(shí)體數(shù)量減1,安排隊(duì)列中的下一實(shí)體進(jìn)入加工工位,同時(shí)采用正態(tài)分布樣本發(fā)生器為進(jìn)入工位的實(shí)體計(jì)劃一個(gè)加工時(shí)間p*,并在t+p*時(shí)刻安排新的加工結(jié)束事件,即將事件(F,t+p*)插入FEL。若無排隊(duì)實(shí)體,則將該工位狀態(tài)更新為空閑,同時(shí)判斷該類型實(shí)體的檢驗(yàn)工位是否繁忙,是則該實(shí)體進(jìn)入排隊(duì)隊(duì)列等待檢驗(yàn),令檢驗(yàn)工位排隊(duì)實(shí)體數(shù)量加1;否則安排該實(shí)體進(jìn)入檢驗(yàn)工位,并將檢驗(yàn)工位狀態(tài)設(shè)為繁忙,同時(shí)采用正態(tài)分布樣本發(fā)生器為該實(shí)體計(jì)劃一個(gè)檢驗(yàn)時(shí)間i*,在t+i*時(shí)刻安排新的離開事件,即將事件(D,t+i*)插入FEL。然后匯總上述過程中發(fā)生變化的狀態(tài)數(shù)據(jù)和統(tǒng)計(jì)數(shù)據(jù),最后將仿真程序的控制流返回時(shí)間,以時(shí)間順序推進(jìn)主進(jìn)程繼續(xù)執(zhí)行仿真。
基于實(shí)時(shí)數(shù)據(jù)的持續(xù)瞬態(tài)仿真方法(如圖7)以實(shí)時(shí)數(shù)據(jù)驅(qū)動的車間數(shù)字孿生模型為對象,通過分析車間運(yùn)行邏輯,進(jìn)行數(shù)字孿生車間的輸入特性建模,并生成符合該車間特性樣本隨機(jī)變量,進(jìn)而建立與車間數(shù)字孿生模型緊密結(jié)合的仿真模型,從而實(shí)現(xiàn)基于實(shí)時(shí)數(shù)據(jù)的持續(xù)瞬態(tài)仿真。該方法面向數(shù)字孿生車間運(yùn)行狀態(tài)在線預(yù)測的需求,摒棄傳統(tǒng)離線仿真模式,采用基于離散事件系統(tǒng)仿真的原理,以事件調(diào)度法推進(jìn)仿真執(zhí)行,同時(shí)利用狀態(tài)循環(huán)掃描的方法在每次仿真程序執(zhí)行前掃描車間當(dāng)前狀態(tài),并更新FEL,以保持仿真執(zhí)行時(shí)的數(shù)字孿生車間數(shù)據(jù)始終為車間當(dāng)前數(shù)據(jù),從而實(shí)現(xiàn)仿真的實(shí)時(shí)性;另外,通過遍歷掃描將車間數(shù)字孿生模型中的當(dāng)前狀態(tài)和實(shí)際統(tǒng)計(jì)量作為仿真的初始輸入值,通過事件調(diào)度法驅(qū)動執(zhí)行仿真程序獲得數(shù)字孿生車間仿真報(bào)告來實(shí)現(xiàn)仿真的瞬態(tài)性。最后利用Unity平臺中的Upadate()函數(shù)設(shè)置仿真循環(huán)頻率,系統(tǒng)每更新一次,Upadta()函數(shù)中的仿真程序就循環(huán)執(zhí)行一次,從而實(shí)現(xiàn)一定頻次的持續(xù)仿真。
在仿真初始化后,從車間數(shù)字孿生模型中掃描各個(gè)物料當(dāng)前所處的工序、各個(gè)設(shè)備當(dāng)前的狀態(tài),以及各個(gè)緩存區(qū)隊(duì)列當(dāng)前的排隊(duì)信息,將掃描所得事件插入將來事件表中,得到初始FEL。在該案例中,實(shí)體完成到達(dá)—加工—檢驗(yàn)—離開4個(gè)事件,若有零件正處于在加工工位或檢驗(yàn)工位,則觸發(fā)加工處理動作或檢驗(yàn)處理動作,通過樣本發(fā)生器為其安排加工結(jié)束事件(F事件)或離開事件(D事件)并插入FEL,同時(shí)將加工工位或檢驗(yàn)工位狀態(tài)設(shè)為繁忙;若有零件正處于加工或檢驗(yàn)緩存區(qū),則統(tǒng)計(jì)其中的零件類型,將其添加到相應(yīng)的實(shí)體隊(duì)列(queue)中。完成事件動作處理后,更新統(tǒng)計(jì)數(shù)據(jù)、系統(tǒng)狀態(tài)和將來事件表,輸出數(shù)字孿生車間狀態(tài)。
基于上述基于事件調(diào)度法的車間數(shù)字孿生體系統(tǒng)仿真方法研究,建立航天某精密加工車間的數(shù)字孿生模型,以實(shí)時(shí)數(shù)據(jù)驅(qū)動模型,通過動態(tài)映射三維模型的運(yùn)行狀態(tài)來實(shí)時(shí)展示車間制造過程,同時(shí)利用二維看板展示車間生產(chǎn)數(shù)據(jù),實(shí)現(xiàn)物理車間全流程、全要素的實(shí)時(shí)可視化監(jiān)控。該數(shù)字孿生車間首先利用SoildWorks2015,3D MAX等軟件對物理車間中的設(shè)備、人員、物料等進(jìn)行建模,同時(shí)結(jié)合Visual Studio2019軟件,在Unity3D平臺上搭建該精密加工車間的三維虛擬模型,如圖8所示。
圖9所示分別為對車間中的設(shè)備加工狀態(tài)、檢驗(yàn)工位狀態(tài)、產(chǎn)品信息狀態(tài)、人員動作狀態(tài)的可視化監(jiān)控。
采用基于事件調(diào)度法的持續(xù)瞬態(tài)仿真,通過融合實(shí)時(shí)數(shù)據(jù)實(shí)現(xiàn)該數(shù)字孿生車間運(yùn)行狀態(tài)的在線預(yù)測,詳細(xì)實(shí)現(xiàn)步驟如下:
(1)收集數(shù)據(jù)
在該加工車間的高速五軸加工單元、中型結(jié)構(gòu)加工單元和檢驗(yàn)單元中,因?yàn)檐囬g的歷史數(shù)據(jù)較難通過已有的系統(tǒng)收集,所以采用對車間主任采訪詢問的方式進(jìn)行數(shù)據(jù)采集,得知該車間的零件加工任務(wù)到達(dá)時(shí)間根據(jù)零件類型而變化,如表1所示。
表1 該車間各類型零件加工任務(wù)的到達(dá)速率
(2)參數(shù)估計(jì)
在實(shí)際生產(chǎn)中,A,B,C,D,E,F(xiàn) 6類零件在8個(gè)加工工位和6個(gè)檢驗(yàn)工位的加工/檢驗(yàn)狀態(tài)不同,因此對不同類型零件在不同工位的加工/檢驗(yàn)時(shí)間進(jìn)行參數(shù)估計(jì)。機(jī)床和零件之間存在交錯(cuò)的可達(dá)關(guān)系,每個(gè)關(guān)系都有獨(dú)立的加工時(shí)間,如表2所示;各類型零件的檢驗(yàn)時(shí)間如表3所示;加工時(shí)間的標(biāo)準(zhǔn)差為0.3,檢驗(yàn)時(shí)間的標(biāo)準(zhǔn)差為0.2。正態(tài)分布允許存在負(fù)值,但對時(shí)間而言,負(fù)值無意義,因此在程序開發(fā)中應(yīng)對產(chǎn)生的樣本進(jìn)行篩選。
表2 各類型零件在各機(jī)床上加工的時(shí)間均值 h
表3 各類型零件的檢驗(yàn)時(shí)間 h
(3)生成樣本發(fā)生器
根據(jù)車間仿真事件處理邏輯,A,B,C,D,E,F(xiàn) 6類零件隨機(jī)到達(dá)加工工位的時(shí)間間隔分別服從均值為0.8,0.667,1.82,1.33,2,2.22的指數(shù)分布,6類零件在不同加工工位的加工時(shí)長服從均值為表2所示數(shù)值、標(biāo)準(zhǔn)差為0.3的近似正態(tài)分布,各類零件在檢驗(yàn)工位的檢驗(yàn)時(shí)間服從均值為表3所示數(shù)值、標(biāo)準(zhǔn)差為0.2的近似正態(tài)分布。
(4)仿真分析
設(shè)定該數(shù)字孿生車間仿真系統(tǒng)的仿真總時(shí)間為240 h(30 d),仿真頻率為1次/min,掃描車間當(dāng)前狀態(tài),t=0時(shí)刻的車間當(dāng)前運(yùn)行狀態(tài)及其仿真輸出結(jié)果如圖10所示。其中在車間當(dāng)前狀態(tài)可視化看板中,加工(檢驗(yàn))狀態(tài)一欄,1表示當(dāng)前工位正在加工或正在檢驗(yàn),0表示當(dāng)前工位空閑;加工(檢驗(yàn))隊(duì)列狀態(tài)一欄,數(shù)字表示該工位當(dāng)前正在排隊(duì)的零件數(shù)。
統(tǒng)計(jì)240 h(30 d)內(nèi)觸發(fā)加工結(jié)束事件的次數(shù)(即零件完成加工事件)和觸發(fā)離開事件的次數(shù)(即零件完成檢驗(yàn)事件),兩者之和為30 d內(nèi)的生產(chǎn)任務(wù)總數(shù);各工位的加工或檢驗(yàn)總時(shí)長與總體仿真時(shí)長之比即為該工位的利用率;仿真中最大隊(duì)列長度所在的加工工位,即為加工任務(wù)的瓶頸工位;總體仿真時(shí)長內(nèi)所有生產(chǎn)任務(wù)響應(yīng)時(shí)間的平均值為本次仿真的平均響應(yīng)時(shí)間;以8 h(1 d)為一周期,分別計(jì)算單個(gè)周期內(nèi)生產(chǎn)任務(wù)的平均響應(yīng)時(shí)間,若單日平均響應(yīng)時(shí)間大于總體平均響應(yīng)時(shí)間,則表示該日加工任務(wù)繁忙,單日平均響應(yīng)時(shí)間最大的一天為生產(chǎn)任務(wù)高峰期。
仿真計(jì)算得到該孿生車間中的關(guān)鍵設(shè)備利用率、各檢驗(yàn)工位利用率、高峰期、瓶頸工位等仿真結(jié)果信息,將仿真結(jié)果輸出到數(shù)字孿生車間仿真看板中,以對數(shù)據(jù)進(jìn)行可視化展示,如圖11所示。該仿真看板展示了在車間當(dāng)前運(yùn)行狀態(tài)下的系統(tǒng)仿真結(jié)果,預(yù)測未來30 d內(nèi)將會有加工任務(wù)和檢驗(yàn)任務(wù)共計(jì)746件生產(chǎn)任務(wù)在車間中執(zhí)行;在此次仿真中,排隊(duì)隊(duì)列最長的是DMU125PN工位,其隊(duì)列總長度為12,該工位即為加工任務(wù)的瓶頸工位;零件生產(chǎn)任務(wù)的平均響應(yīng)時(shí)間為12.347 2 min,超過平均響應(yīng)時(shí)間的任務(wù)數(shù)量為243件,占所有生產(chǎn)任務(wù)總數(shù)的32.573 7%;在第15個(gè)周期出現(xiàn)單日平均響應(yīng)時(shí)間的最大值,則生產(chǎn)任務(wù)高峰期將在第15個(gè)工作日出現(xiàn)。經(jīng)專家評估,仿真報(bào)告數(shù)據(jù)具有一定參考價(jià)值。仿真結(jié)果以二維看板形式在數(shù)字孿生車間的右上角展示,且每分鐘更新一次。
本文面向數(shù)字孿生車間運(yùn)行狀態(tài)在線預(yù)測的需求,基于離散事件系統(tǒng)的仿真原理,采用事件調(diào)度法建立了系統(tǒng)輸入特性的統(tǒng)計(jì)模型,開發(fā)了仿真樣本發(fā)生程序,明確了3類事件的處理邏輯,并將實(shí)時(shí)數(shù)據(jù)融入離散事件系統(tǒng)仿真流程,以狀態(tài)循環(huán)掃描的方法實(shí)現(xiàn)了仿真的實(shí)時(shí)性,以循環(huán)執(zhí)行的方式實(shí)現(xiàn)了仿真的持續(xù)性,以基于事件調(diào)度的仿真實(shí)現(xiàn)了仿真的瞬態(tài)性。
本文所提基于車間數(shù)字孿生體的系統(tǒng)仿真方法未涉及備料、出入庫、遠(yuǎn)程運(yùn)輸、維修等制造動作,后續(xù)將針對不同車間、不同生產(chǎn)環(huán)節(jié)的仿真預(yù)測進(jìn)行深入研究,以提高該方法的廣泛適用性。