魏一雄,郭 磊,陳亮希,張紅旗,胡祥濤,周紅橋,李 廣
(1.中國電子科技集團(tuán)公司 第三十八研究所,安徽 合肥 230088;2.安徽省技術(shù)標(biāo)準(zhǔn)創(chuàng)新基地(智能設(shè)計(jì)與制造 智慧院所 軍民融合),安徽 合肥 230088;3.安徽大學(xué) 電氣工程與自動化學(xué)院,安徽 合肥 230601)
目前,我國制造業(yè)正處于轉(zhuǎn)型升級的關(guān)鍵時期。據(jù)統(tǒng)計(jì),國內(nèi)制造企業(yè)中有60%擁有自動化產(chǎn)線,但其中近70%企業(yè)的相關(guān)數(shù)字化能力建設(shè)不足,有32%的制造企業(yè)實(shí)現(xiàn)了制造現(xiàn)場的基礎(chǔ)數(shù)字化能力建設(shè),其中僅有12%實(shí)現(xiàn)了對基于數(shù)據(jù)制造流程進(jìn)行有效監(jiān)控,在對制造車間運(yùn)行狀態(tài)的監(jiān)控和科學(xué)管理方面尚缺乏底層的軟件支撐。隨著人口紅利消失、產(chǎn)業(yè)化轉(zhuǎn)型升級,企業(yè)急切需要提高生產(chǎn)線的自動化和智能化水平,至少40%以上的企業(yè)會對其自動化產(chǎn)線進(jìn)行數(shù)字化改造升級,其中自動化產(chǎn)線監(jiān)控和健康管理是改造的首要工作。然而,傳統(tǒng)的數(shù)字化車間、生產(chǎn)線仿真等技術(shù)方案[1-2]大多只解決了車間布局規(guī)劃和生產(chǎn)線優(yōu)化,由于三維模型體量較大、仿真系統(tǒng)與硬件設(shè)備數(shù)據(jù)的實(shí)時交互性差,無法實(shí)現(xiàn)物理車間的實(shí)時鏡像和生產(chǎn)過程逆時復(fù)現(xiàn)等,難以直接用于車間的實(shí)時可視化監(jiān)控與遠(yuǎn)程運(yùn)維。近年來,數(shù)字孿生(digital twin)技術(shù)的出現(xiàn),為車間“三化”(數(shù)字化、智能化、網(wǎng)絡(luò)化)提供了有效的解決方案。數(shù)字孿生車間的目標(biāo)是構(gòu)建多維高保真車間現(xiàn)場動態(tài)模型,實(shí)現(xiàn)物理實(shí)體或流程的實(shí)時數(shù)字化鏡像,以及基于數(shù)據(jù)驅(qū)動物理車間的實(shí)時狀態(tài)映射,同時結(jié)合數(shù)據(jù)分析和挖掘,實(shí)現(xiàn)制造車間現(xiàn)場的透明、高效、智能[3-4]。
針對數(shù)字孿生車間的構(gòu)建,國內(nèi)外學(xué)者在數(shù)字孿生車間體系架構(gòu)理論、虛擬模型構(gòu)建、產(chǎn)線數(shù)據(jù)采集、孿生車間監(jiān)控系統(tǒng)等方面進(jìn)行了深入研究[5-6]。陶飛[7-8]等提出數(shù)字孿生車間的概念,闡述了其系統(tǒng)組成、運(yùn)行機(jī)制、特點(diǎn)和關(guān)鍵技術(shù),設(shè)計(jì)了數(shù)字孿生車間的參考系統(tǒng)架構(gòu),從物理融合、模型融合、數(shù)據(jù)融合、服務(wù)融合4方面系統(tǒng)闡述了基礎(chǔ)理論和支撐技術(shù);陳振等[9]提出一種飛機(jī)數(shù)字孿生裝配車間架構(gòu),并對物理裝配車間數(shù)據(jù)的實(shí)時感知與采集、虛擬裝配車間建模與仿真運(yùn)行技術(shù)、數(shù)字孿生與數(shù)據(jù)驅(qū)動的裝配車間生產(chǎn)管控等關(guān)鍵技術(shù)進(jìn)行了研究;莊存波等[10]對產(chǎn)品數(shù)字孿生體的內(nèi)涵進(jìn)行了系統(tǒng)闡述,建立了產(chǎn)品數(shù)字孿生體的體系結(jié)構(gòu),并給出了產(chǎn)品數(shù)字孿生體在產(chǎn)品設(shè)計(jì)階段、制造階段和服務(wù)階段的實(shí)施途徑;郭東升等[11]以企業(yè)航天結(jié)構(gòu)件制造車間為案例,展開數(shù)字孿生技術(shù)在制造車間的應(yīng)用驗(yàn)證,通過對比分析案例結(jié)果,驗(yàn)證了數(shù)字孿生制造車間可有效提高生產(chǎn)效率。
在異構(gòu)多源車間數(shù)據(jù)采集、輕量化、通用虛擬模型構(gòu)建等數(shù)字孿生基礎(chǔ)共性技術(shù)研究方面,聶志等[12]基于離散型車間生產(chǎn)過程中對零件的實(shí)時狀態(tài)跟蹤、生產(chǎn)過程數(shù)據(jù)追溯的需要,提出基于超高頻射頻、二維碼等物聯(lián)技術(shù)的數(shù)據(jù)采集與管理解決方案;曹偉等[13]提出一種基于無線射頻識別技術(shù)的離散制造車間實(shí)時數(shù)據(jù)采集和可視化監(jiān)控方法,設(shè)計(jì)了基于無線射頻識別的車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)功能架構(gòu),并開發(fā)了相應(yīng)的原型系統(tǒng),通過簡單的案例驗(yàn)證了所提方法和模型的可行性;郭磊等[14]針對智能車間現(xiàn)場多品牌、多接口設(shè)備數(shù)據(jù)傳輸?shù)男枨?,研究了智能制造終端的車間生產(chǎn)數(shù)據(jù)采集和傳輸方法,該方法基于車間生產(chǎn)線的工控可編程序控制器(Programmable Logic Controller, PLC),采用OPC統(tǒng)一架構(gòu)(OPC Unified Architecture, OPC UA)完成數(shù)據(jù)采集,并通過搭建Restful服務(wù)器,以JS對象簡譜(JavaScript Object Notation, JSON)數(shù)據(jù)串的形式將采集的數(shù)據(jù)發(fā)送至下游數(shù)字孿生車間系統(tǒng);殷慶文等[15]在構(gòu)建數(shù)字化虛擬漫游平臺中,根據(jù)模型特點(diǎn)提出相應(yīng)的輕量化技術(shù),有效降低了虛擬漫游平臺對計(jì)算機(jī)資源的消耗,提高了數(shù)字化工廠規(guī)劃的質(zhì)量和效率,降低了工廠布局規(guī)劃成本;易楊等[16]針對產(chǎn)品全生命周期過程中合理準(zhǔn)確表達(dá)數(shù)字孿生幾何模型的實(shí)際需求,提出以非理想表面模型為載體,實(shí)現(xiàn)數(shù)字孿生模型的幾何參考表達(dá)方法,為數(shù)字孿生虛擬幾何模型構(gòu)建提供了重要的參考;劉明周等[17]設(shè)計(jì)了一種以生產(chǎn)運(yùn)行指標(biāo)為核心的車間實(shí)時監(jiān)控通用模型,具有很好的可拓展性和可維護(hù)性;丁凱等[18]從邏輯關(guān)聯(lián)的視角提出多維多尺度智能制造空間的內(nèi)涵與特征,并結(jié)合數(shù)字孿生技術(shù)的實(shí)現(xiàn)邏輯,研究了智能制造空間的虛實(shí)映射建模方法、復(fù)雜多維時空域下的智能制造過程及數(shù)據(jù)建模方法。
基于科學(xué)的數(shù)字孿生車間體系架構(gòu),在虛擬模型構(gòu)建方法、車間數(shù)據(jù)采集系統(tǒng)的支撐下,一些學(xué)者針對不同種類的自動化生產(chǎn)線搭建了數(shù)字孿生車間系統(tǒng)。尹超等[19]基于Flexsim構(gòu)建了一種動態(tài)反映機(jī)加車間生產(chǎn)任務(wù)執(zhí)行情況的三維可視化監(jiān)控系統(tǒng);姜康等[20]、方磊等[21]基于虛擬現(xiàn)實(shí)技術(shù)和信息集成技術(shù)構(gòu)建了虛擬車間狀態(tài)監(jiān)控系統(tǒng),并在Unity3D上進(jìn)行了實(shí)例驗(yàn)證;柳林燕等[22]建立了車間生產(chǎn)過程數(shù)字孿生系統(tǒng)體系架構(gòu),并詳細(xì)闡述了數(shù)字孿生建模與實(shí)現(xiàn)、基于OPC的數(shù)據(jù)采集,以及車間生產(chǎn)運(yùn)行的實(shí)時映射;趙浩然等[23]分析了數(shù)字孿生車間和三維可視化實(shí)時監(jiān)控之間的關(guān)系,提出一種多層次的三維可視化監(jiān)控模式和實(shí)時數(shù)據(jù)驅(qū)動的虛擬車間運(yùn)行模式。
綜上所述,目前數(shù)字孿生車間系統(tǒng)研究可以基本實(shí)現(xiàn)車間現(xiàn)場狀態(tài)的可視化監(jiān)控,但是仍存在如下不足:①缺乏有效的數(shù)據(jù)集成與數(shù)據(jù)管理,系統(tǒng)在完成數(shù)據(jù)實(shí)時驅(qū)動時計(jì)算負(fù)荷較大,導(dǎo)致系統(tǒng)的交互性和可靠性較差;②現(xiàn)有系統(tǒng)只實(shí)現(xiàn)了基于數(shù)據(jù)觸發(fā)的預(yù)定義虛擬模型動作,缺乏描述車間真實(shí)物理行為的虛擬仿真系統(tǒng),達(dá)不到數(shù)字孿生多維高保真映射的技術(shù)要求,也無法滿足遠(yuǎn)程運(yùn)維的需求;③產(chǎn)線存在多源異構(gòu)數(shù)據(jù),由于缺乏統(tǒng)一的數(shù)據(jù)采集與傳輸方案,造成系統(tǒng)“數(shù)據(jù)信息孤島”,影響車間的逆時復(fù)現(xiàn)、故障診斷、預(yù)測性維護(hù)和健康管理等;④對于數(shù)字孿生車間系統(tǒng)的軟件架構(gòu)設(shè)計(jì)仍處于初級階段,缺乏模塊化和面向時間響應(yīng)的系統(tǒng)思想,束縛了系統(tǒng)的通用化與可擴(kuò)展化。
針對上述問題,本文提出一種基于數(shù)據(jù)驅(qū)動的數(shù)字孿生車間系統(tǒng)總體架構(gòu)和面向事件響應(yīng)的異構(gòu)多源數(shù)據(jù)管理方法,構(gòu)建了面向真實(shí)物理行為高仿真映射的虛擬仿真環(huán)境,最后通過添加運(yùn)動約束,實(shí)現(xiàn)了物理車間生產(chǎn)狀態(tài)的實(shí)時鏡像,滿足了車間的實(shí)時可視化監(jiān)控、分析預(yù)測、故障預(yù)警、逆時復(fù)現(xiàn)以及健康管理和遠(yuǎn)程運(yùn)維的要求。本文所開發(fā)的系統(tǒng)已在車載防撞雷達(dá)自動化生產(chǎn)線上進(jìn)行了應(yīng)用。
本系統(tǒng)包括設(shè)備層、感知層、驅(qū)動層、應(yīng)用層,如圖1所示。其中:①設(shè)備層包括車間現(xiàn)場的各類設(shè)備,如自動老化機(jī)、裝配/檢測機(jī)器人、抓取機(jī)械臂等。這些設(shè)備的運(yùn)行數(shù)據(jù)為數(shù)字孿生車間系統(tǒng)運(yùn)行提供所需的基礎(chǔ)數(shù)據(jù)。②感知層用于車間異構(gòu)多源數(shù)據(jù)的實(shí)時采集和數(shù)據(jù)預(yù)處理,包括設(shè)備運(yùn)動信息采集、運(yùn)輸行為感知、生產(chǎn)線上物料信息感知、設(shè)備狀態(tài)感知、環(huán)境感知等。感知層利用系統(tǒng)的數(shù)據(jù)采集和傳輸模塊,通過數(shù)據(jù)通訊協(xié)議讀取和存儲設(shè)備層多品牌、多接口、多協(xié)議的設(shè)備實(shí)時狀態(tài)數(shù)據(jù),并以JSON數(shù)據(jù)串將數(shù)據(jù)傳遞給數(shù)字孿生車間系統(tǒng);對于沒有相關(guān)數(shù)據(jù)接口的設(shè)備,通過布置傳感器測算其相關(guān)狀態(tài)數(shù)據(jù)進(jìn)行數(shù)據(jù)信息采集。③驅(qū)動層負(fù)責(zé)對上游感知層數(shù)據(jù)的映射,并通過構(gòu)建面向真實(shí)物理行為高仿真映射的虛擬仿真環(huán)境,實(shí)現(xiàn)物理車間與虛擬車間的同步映射。驅(qū)動層包括解析數(shù)據(jù)、變量匹配、運(yùn)動控制等過程,其中數(shù)據(jù)解析過程以輪詢的方式獲取感知層發(fā)送的Json格式數(shù)據(jù)流,并對數(shù)據(jù)流中與運(yùn)動控制相關(guān)的變量進(jìn)行實(shí)時賦值;然后變量匹配過程通過名稱尋找運(yùn)動機(jī)構(gòu)模型,并與對應(yīng)的運(yùn)動控制相關(guān)的變量進(jìn)行匹配;最后實(shí)時驅(qū)動對應(yīng)的三維模型,完成拾取、放置和推拉等動作。④應(yīng)用層基于實(shí)時數(shù)據(jù)驅(qū)動的虛擬車間,實(shí)現(xiàn)了對車間制造資源的三維可視化導(dǎo)航以及車間物理動作的仿真和實(shí)時監(jiān)控,同時通過觸發(fā)虛擬觸發(fā)信號,針對性地在三維模型上顯示、分析和管理車間現(xiàn)場設(shè)備狀態(tài)信息、生產(chǎn)工藝參數(shù)信息、車間物流過程、產(chǎn)品質(zhì)量信息以及設(shè)備故障的管理診斷信息等,形成了面向車間的虛擬監(jiān)控平臺,實(shí)現(xiàn)了車間透明化生產(chǎn)、故障問題重現(xiàn)與仿真,滿足了使用者對車間的追溯分析、實(shí)時監(jiān)控和預(yù)測仿真等需求。
基于上述數(shù)字孿生車間系統(tǒng)的總體技術(shù)方案,本文構(gòu)建了數(shù)字孿生車間系統(tǒng)架構(gòu),包括系統(tǒng)管理模塊、數(shù)據(jù)傳輸模塊、數(shù)據(jù)管理模塊、監(jiān)控視角模塊、數(shù)據(jù)可視化模塊、運(yùn)動驅(qū)動模塊、狀態(tài)匹配模塊等獨(dú)立分系統(tǒng)模塊,還包括獨(dú)立分系統(tǒng)模塊之間的拓?fù)潢P(guān)系以及系統(tǒng)擴(kuò)展和維護(hù)策略,如圖2所示。
數(shù)字孿生車間系統(tǒng)的各分系統(tǒng)模塊相互獨(dú)立,便于維護(hù),并存在相互控制關(guān)系。具體功能如下:
(1)系統(tǒng)管理模塊 主要用于其他6個模塊間的耦合,包括數(shù)據(jù)傳輸、接口調(diào)用、觸發(fā)信號傳遞等。例如數(shù)據(jù)可視化模塊請求數(shù)據(jù),需通過數(shù)據(jù)傳輸模塊實(shí)時獲取數(shù)據(jù),再經(jīng)由系統(tǒng)管理模塊響應(yīng)映射到數(shù)據(jù)管理模塊中的數(shù)據(jù)列表,最后數(shù)據(jù)可視化模塊通過請求響應(yīng)刷新數(shù)據(jù),得到對應(yīng)的可視化界面。
(2)數(shù)據(jù)傳輸模塊 主要管理由數(shù)據(jù)入口獲取的信息數(shù)據(jù),同時響應(yīng)各個模塊的數(shù)據(jù)請求。數(shù)據(jù)傳輸模塊[14]利用OPC UA等通用協(xié)議采集制造現(xiàn)場的PLC、傳感器、工控機(jī)等終端設(shè)備數(shù)據(jù)信息,通過搭建Restful服務(wù)器完成數(shù)據(jù)采集,并以JSON數(shù)據(jù)串的形式將數(shù)據(jù)發(fā)送至下游數(shù)字孿生車間系統(tǒng)。
(3)數(shù)據(jù)管理模塊 用于管控整體系統(tǒng)中的全部數(shù)據(jù),包括外部數(shù)據(jù)刷新、運(yùn)動驅(qū)動、數(shù)據(jù)存儲/分析等。數(shù)據(jù)管理模塊中的數(shù)據(jù)信息單獨(dú)存儲為數(shù)據(jù)列表,用于映射數(shù)據(jù)傳輸模塊傳遞的數(shù)據(jù)信息,對數(shù)據(jù)的操作是從數(shù)據(jù)傳輸模塊中獲取全部信息數(shù)據(jù),并對其進(jìn)行解析和映射標(biāo)記,同時在數(shù)據(jù)傳輸模塊的代理類Call Request進(jìn)行方法響應(yīng),使得實(shí)時數(shù)據(jù)可被對應(yīng)的模塊添加到本模塊進(jìn)行變量映射操作,并可即時訪問,達(dá)到實(shí)時響應(yīng)模塊請求的目的。
(4)監(jiān)控視角模塊 指在數(shù)字空間中,人所看到的數(shù)字化圖像均用虛擬相機(jī)拍攝并呈現(xiàn),操作者根據(jù)需求選擇不同的視角監(jiān)控車間的生產(chǎn)狀態(tài)。
(5)數(shù)據(jù)可視化模塊 是將制造現(xiàn)場運(yùn)行的詳細(xì)信息數(shù)據(jù)以直觀可視化的方式進(jìn)行展現(xiàn)的模塊,包括可視化內(nèi)容層級、可視化展示邏輯和可視化內(nèi)容播放??梢暬瘍?nèi)容層級關(guān)系表示可視化對象的父子關(guān)系,每一個可視化對象均添加層級屬性,作為內(nèi)容展示的標(biāo)簽進(jìn)行管理;可視化展示邏輯將可視化對象分為模型、界面、交互、多媒體信息4類,界面用于展示根節(jié)點(diǎn),其他3類對象作為其嵌套層,交互作為其他3類對象可調(diào)用的工具,多媒體信息和模型在架構(gòu)內(nèi)部被定義為互斥類對象;可視化內(nèi)容播放包括從數(shù)據(jù)傳輸模塊獲取數(shù)據(jù)和觸發(fā)預(yù)定義播放路徑兩種模式,其中數(shù)據(jù)傳輸模塊獲取數(shù)據(jù)指獲取模型和多媒體信息,通過將其添加到特定界面位置進(jìn)行播放;觸發(fā)預(yù)定義播放路徑指預(yù)先定義可視化的播放內(nèi)容,通過觸發(fā)對應(yīng)接口進(jìn)行播放。
(6)運(yùn)動驅(qū)動模塊 包括位姿數(shù)據(jù)驅(qū)動和狀態(tài)數(shù)據(jù)驅(qū)動。其中位姿數(shù)據(jù)包括旋轉(zhuǎn)和位移,通過即時更新數(shù)據(jù)來保證一致性;狀態(tài)數(shù)據(jù)包括夾取、吸放、啟動、停止?fàn)顟B(tài)下的布爾值,通過觸發(fā)狀態(tài)位并預(yù)定義動作來保證一致性。狀態(tài)位觸發(fā)是在運(yùn)動狀態(tài)I/O信號發(fā)生變化時觸發(fā)預(yù)定義動作,預(yù)定義動作指運(yùn)動方向、位置、坐標(biāo)均為常值的運(yùn)動。
(7)狀態(tài)匹配模塊 負(fù)責(zé)系統(tǒng)初次啟動時,利用實(shí)時數(shù)據(jù)和內(nèi)部運(yùn)算判斷,將數(shù)字空間虛擬制造現(xiàn)場的物料狀態(tài)、運(yùn)動狀態(tài)、加工狀態(tài)等與現(xiàn)場匹配一致。其中,物料狀態(tài)匹配包括上下料工位物料、加工線體上物料、物料倉庫物料,以及自動導(dǎo)引小車(Automated Guided Vehicle, AGV)運(yùn)送物料的數(shù)量、方位虛實(shí)映射,該過程的數(shù)據(jù)均通過數(shù)據(jù)傳輸模塊在現(xiàn)場實(shí)時采集,對于不能獲取的數(shù)據(jù),則通過間接數(shù)據(jù)進(jìn)行組合判斷;運(yùn)動狀態(tài)匹配即制造現(xiàn)場的加工設(shè)備運(yùn)動情況虛實(shí)映射,由運(yùn)動驅(qū)動模塊通過數(shù)據(jù)信息進(jìn)行匹配,匹配過程是利用系統(tǒng)啟動瞬間的數(shù)據(jù)來完成運(yùn)動驅(qū)動過程的同步;加工狀態(tài)匹配包括加工對象位置、加工對象狀態(tài)、設(shè)備夾持狀態(tài)的虛實(shí)映射,該項(xiàng)匹配過程是虛擬加工制造前的初始化過程,不能獲取的數(shù)據(jù)通過間接數(shù)據(jù)獲取加工狀態(tài)。
本系統(tǒng)基于模塊化分系統(tǒng)架構(gòu)和分系統(tǒng)拓?fù)潢P(guān)系建立了相對獨(dú)立的各個模塊,可以按照定制需求快速搭建新的模塊分系統(tǒng),并接入數(shù)據(jù)及觸發(fā)流程。同時,對任一模塊分系統(tǒng)進(jìn)行維護(hù)都不會對其他分系統(tǒng)模塊的運(yùn)行產(chǎn)生較大影響,例如撤銷數(shù)據(jù)可視化模塊功能仍然可以確保運(yùn)動驅(qū)動、數(shù)據(jù)傳輸正常運(yùn)行。
面向車間設(shè)備種類多、采集數(shù)據(jù)類型多樣等狀況,本系統(tǒng)采用基于OPCUA Server的采集方式,通過感知層從數(shù)據(jù)庫或制造現(xiàn)場PLC、傳感器、工控機(jī)等終端獲取目標(biāo)信息數(shù)據(jù)的接口,包括Socket傳輸、ftp共享傳輸、數(shù)據(jù)庫共享傳輸、Message消息服務(wù)傳輸?shù)取?/p>
為保證數(shù)據(jù)采集的效率,系統(tǒng)通過數(shù)據(jù)傳輸模塊[14]從PLC中統(tǒng)一采集分配。對于沒有接入PLC控制的數(shù)據(jù),包括特定傳感器、部分硬件接口未開放的機(jī)器人、AGV運(yùn)輸小車和檢測設(shè)備數(shù)據(jù),系統(tǒng)采用串口方式訪問、傳輸控制協(xié)議/網(wǎng)際協(xié)議(Transmission Control Protocol/Internet Protocol, TCP/IP)協(xié)議訪問、輸入/輸出(Input/Output, I/O)端口解析等方式獲取數(shù)據(jù),并統(tǒng)一存入數(shù)據(jù)列表,以便于系統(tǒng)訪問。
系統(tǒng)內(nèi)部數(shù)據(jù)的業(yè)務(wù)流程如圖3所示。系統(tǒng)內(nèi)數(shù)據(jù)由數(shù)據(jù)管理模塊統(tǒng)一管理,包括數(shù)據(jù)的請求、觸發(fā)、響應(yīng)、驅(qū)動等行為動作,其中數(shù)據(jù)信息單獨(dú)存儲為數(shù)據(jù)列表,用于映射數(shù)據(jù)傳輸模塊傳遞的數(shù)據(jù)信息。數(shù)據(jù)傳輸模塊負(fù)責(zé)與系統(tǒng)外界和系統(tǒng)內(nèi)部模塊間的數(shù)據(jù)進(jìn)行通信傳遞,同時刷新數(shù)據(jù)列表,實(shí)現(xiàn)實(shí)時數(shù)據(jù)映射。數(shù)據(jù)的驅(qū)動和可視化由管理模塊驅(qū)動,用于完成車間運(yùn)動仿真驅(qū)動及相應(yīng)的可視化工作。
在系統(tǒng)內(nèi)部數(shù)據(jù)業(yè)務(wù)的實(shí)現(xiàn)過程中,由于車間的生產(chǎn)產(chǎn)品、工藝、流程等要素會隨企業(yè)需求發(fā)生變化,考慮未來數(shù)據(jù)層面采集與驅(qū)動的可擴(kuò)展性和柔性需求,應(yīng)盡量降低模塊間的耦合關(guān)系,本文通過事件驅(qū)動和代理方式,面向不同對象進(jìn)行數(shù)據(jù)管理、傳輸、觸發(fā)、驅(qū)動和可視化等模塊注冊響應(yīng)。各個模塊僅需提前注冊對應(yīng)的響應(yīng)方法,并將數(shù)據(jù)變量列表作為參數(shù),即可滿足模塊信息數(shù)據(jù)請求響應(yīng)的需求,其邏輯流程如圖3中虛線所示,具體事件注冊響應(yīng)的流程如圖4[24]所示。首先在數(shù)據(jù)傳輸模塊中將相應(yīng)的數(shù)據(jù)請求業(yè)務(wù)注冊到數(shù)據(jù)管理模塊中,數(shù)據(jù)管理模塊在數(shù)據(jù)解析映射后遍歷所有注冊的數(shù)據(jù)請求,觸發(fā)數(shù)據(jù)傳遞映射事件,并通過數(shù)據(jù)傳輸模塊的代理類CallRequest進(jìn)行方法響應(yīng),使實(shí)時數(shù)據(jù)添加到對應(yīng)模塊并可即時訪問,從而達(dá)到響應(yīng)模塊實(shí)時數(shù)據(jù)請求的目的。
為將物理車間的生產(chǎn)狀態(tài)數(shù)據(jù)同步映射在數(shù)字孿生車間,降低系統(tǒng)的運(yùn)行負(fù)荷,需對數(shù)字孿生車間的幾何模型進(jìn)行超輕量處理,在滿足系統(tǒng)要求的情況下使模型數(shù)據(jù)量盡量小。
基于現(xiàn)有數(shù)字孿生系統(tǒng)開發(fā)平臺或工具,首先將制造資源和在制品的CAD模型通過多種方式進(jìn)行模型輕量化處理,其中主要包括兩方面:①簡化細(xì)小特征的模型或結(jié)構(gòu);②基于邊界表示法(Boundary representation, B-rep)、體素構(gòu)造表示法(Constructive Solid Geometry, CSG)或其他表征方法,利用3DMax、PiXYZ等軟件將模型轉(zhuǎn)換為面片模型。需要注意的是,在模型輕量化時,需要考慮車間設(shè)備各運(yùn)動部件的結(jié)構(gòu)約束和運(yùn)動的層級關(guān)系,避免模型結(jié)構(gòu)層級影響后期運(yùn)動約束的定義,確保后期構(gòu)建物理模型的高保真性。
對于部分輕量化時間成本較高,或者難以借助軟件平臺進(jìn)行理想輕量化的模型,本文采用3DMax軟件對部分模型進(jìn)行了重構(gòu),包括數(shù)字化車間的廠房、設(shè)備、工裝、車間6S元素等。車載防撞雷達(dá)生產(chǎn)線總共進(jìn)行了42套CAD模型的簡化操作,原CAD模型文件約為4 098 MB,輕量化后的模型文件約為110 MB,降低約97.3%;原車間CAD模型面片化后的數(shù)量約為13 606萬片左右,輕量化處理后模型面片數(shù)約為116萬片左右,降低約90%。部分模型輕量化前后數(shù)據(jù)的比對如圖5所示。
為提升數(shù)字孿生車間的可視化效果,在模型輕量化過程中,借助Toolbag,SubstancePainter等工具進(jìn)行模型表面貼圖渲染、動作設(shè)計(jì)、光照添加等,提升數(shù)字孿生模型與物理實(shí)體對象的一致性。圖6所示為數(shù)字孿生車間和工位模型渲染圖。
三坐標(biāo)運(yùn)動機(jī)構(gòu)與機(jī)器人運(yùn)動約束算法用于定義運(yùn)動機(jī)構(gòu)模型的父子級關(guān)系和運(yùn)動約束。車間設(shè)備機(jī)構(gòu)運(yùn)動通常有兩種模式:①完全可以采集獲取運(yùn)動數(shù)據(jù)的設(shè)備;②獲取末端執(zhí)行機(jī)構(gòu)運(yùn)動方位數(shù)據(jù)的設(shè)備。對于第一種設(shè)備,基于上述輕量化模型,重新定義符合物理設(shè)備的運(yùn)動規(guī)范和主隨動關(guān)系,通過實(shí)時獲取驅(qū)動數(shù)據(jù),可有效保證虛擬車間與物理車間的運(yùn)動相匹配。同時,由于采用基于約束和結(jié)構(gòu)層級的數(shù)據(jù)驅(qū)動,在生產(chǎn)環(huán)境、生產(chǎn)對象發(fā)生變化時,無需修改數(shù)字對象模型,仍然可以進(jìn)行準(zhǔn)確地孿生匹配,實(shí)現(xiàn)高保真的物理仿真。對于第二種,本文采用開源的反向動力學(xué)算法,首先確定每一個模型結(jié)構(gòu)層級和約束條件,然后獲取末端運(yùn)動方位數(shù)據(jù),并通過算法求解,得到每一個關(guān)聯(lián)機(jī)構(gòu)模型對應(yīng)的運(yùn)動方位,如圖7所示。需要注意的是,基于上述的運(yùn)動求解方法,僅可確保末端執(zhí)行機(jī)構(gòu)的方位準(zhǔn)確,以及每一個關(guān)聯(lián)機(jī)構(gòu)方位和現(xiàn)實(shí)邏輯匹配,無法完全保證關(guān)聯(lián)機(jī)構(gòu)方位和物理世界對應(yīng)機(jī)構(gòu)的方位一致。
當(dāng)物理車間設(shè)備運(yùn)作時,啟動數(shù)字孿生系統(tǒng)的同時要保證虛擬場景的物料、設(shè)備、AGV小車、檢測信息等與當(dāng)前物理車間狀態(tài)完全一致。為保障物理車間生產(chǎn)和數(shù)字孿生系統(tǒng)同步運(yùn)行,可以通過虛擬加工制造前的初始化過程,對數(shù)字孿生車間與物理車間進(jìn)行全方位的狀態(tài)匹配。
狀態(tài)匹配包括運(yùn)動狀態(tài)匹配、加工狀態(tài)匹配、物料狀態(tài)匹配。其中,運(yùn)動狀態(tài)即車間所有設(shè)備運(yùn)動機(jī)構(gòu)的實(shí)時狀態(tài),包括伺服、氣缸、AGV小車等的位置坐標(biāo)和速度狀態(tài);加工狀態(tài)即車間所有工位工藝流程的進(jìn)行狀態(tài),包括工藝流程、生產(chǎn)節(jié)拍、加工時間等;物料狀態(tài)包括加工對象位置、加工對象狀態(tài)、單工位加工對象數(shù)量等。另外,在系統(tǒng)重新啟動后,可以通過分析狀態(tài)匹配數(shù)據(jù)并進(jìn)行聯(lián)合判斷得到車間狀態(tài),然后通過運(yùn)動驅(qū)動分系統(tǒng)以同樣的原理驅(qū)動車間與現(xiàn)場狀態(tài)相匹配。圖8所示為某工位的系統(tǒng)初始狀態(tài)匹配示意圖。
為使系統(tǒng)能夠全面、有效地進(jìn)行可視化監(jiān)控,監(jiān)控視角模塊提供有不同的視角切換功能,滿足了使用者的監(jiān)控需求。本系統(tǒng)通過切換虛擬相機(jī)角度方位或切換不同的虛擬相機(jī),可以得到不同的觀察角度和圖像,從而實(shí)現(xiàn)對車間運(yùn)行狀態(tài)的360°監(jiān)控。
如圖9所示,監(jiān)控視角包括閉路電視(Closed-Circuit Television, CCTV)視角、跟隨視角、固定對象視角、自由視角等。其中CCTV視角通過添加多個虛擬相機(jī)的方式,將多個對象的特定角度同時顯示在界面上;跟隨視角針對制造全生命周期中的某一特定對象(如物料盤、在制件等),實(shí)現(xiàn)對該對象的全流程監(jiān)控;固定對象視角是設(shè)定某一特定工位為監(jiān)控對象;自由視角不限定相機(jī)位置,支持用戶在虛擬空間內(nèi)自由漫游。
用戶根據(jù)不同的可視化顯示需求,通過鼠標(biāo)、虛擬按鈕、快捷鍵等調(diào)用相關(guān)的虛擬相機(jī)驅(qū)動腳本,來監(jiān)控所關(guān)注對象的詳細(xì)狀態(tài),提升車間現(xiàn)場的實(shí)時可視化監(jiān)控、故障點(diǎn)顯示和數(shù)據(jù)可視化等。
運(yùn)動驅(qū)動模塊用于驅(qū)動數(shù)字孿生模型運(yùn)動,包括坐標(biāo)變換、旋轉(zhuǎn)位移、電機(jī)伺服驅(qū)動等,其中坐標(biāo)變換、旋轉(zhuǎn)位移均相對于局部坐標(biāo)系進(jìn)行。運(yùn)動驅(qū)動分為兩種類型:①位姿數(shù)據(jù)驅(qū)動,包括旋轉(zhuǎn)、位移,該驅(qū)動過程采用數(shù)據(jù)即時更新保證物理對象與數(shù)字孿生模型運(yùn)動的一致性(按照前面所述,數(shù)據(jù)傳輸模塊解析數(shù)據(jù)后,通過各個模塊在事件上注冊的方法實(shí)時更新數(shù)據(jù));②狀態(tài)數(shù)據(jù)驅(qū)動(指運(yùn)動狀態(tài)I/O信號發(fā)生變化時觸發(fā)預(yù)定義動作),包括夾取、吸放、啟動/停止等狀態(tài)布爾值,它采用狀態(tài)位觸發(fā)和預(yù)定義動作,保證物理對象與數(shù)字孿生模型運(yùn)動的一致性,例如電機(jī)驅(qū)動的上螺絲過程,由于采用的是氣缸運(yùn)動,方向、行程、速度等均為不變常值。
運(yùn)動驅(qū)動模塊由數(shù)據(jù)解析腳本、變量匹配腳本、實(shí)時驅(qū)動腳本構(gòu)成,對生產(chǎn)線的每個工站并行驅(qū)動,其驅(qū)動過程如圖10[25]所示。首先解析感知層數(shù)據(jù),并對與運(yùn)動控制相關(guān)的變量實(shí)時賦值;其次通過名稱尋找運(yùn)動部件模型,并匹配對應(yīng)的運(yùn)動變量;最后根據(jù)運(yùn)動變量值改變模型位置坐標(biāo),或者調(diào)用物理動作驅(qū)動模塊完成對模型的運(yùn)動驅(qū)動,從而實(shí)現(xiàn)虛擬模型與物理車間資源同步運(yùn)動。
因?yàn)閿?shù)字空間不存在物理空間的物理屬性,如重量、摩擦、加速度等,所以數(shù)字孿生系統(tǒng)中的某些物理動作必須通過數(shù)字模擬的方式實(shí)現(xiàn)。物理動作仿真負(fù)責(zé)數(shù)字孿生虛擬制造現(xiàn)場所有物理行為動作的仿真和數(shù)據(jù)驅(qū)動,包括碰撞動作、拾取動作、放置動作、推拉動作等。物理動作仿真針對每一種物理動作類型進(jìn)行運(yùn)動腳本編程,通過判斷觸發(fā)器名稱或觸發(fā)器父級物體名稱判斷觸發(fā)信號的有效性,最后通過改變被作用物體父子級關(guān)系和空間位置實(shí)現(xiàn)對物理對象動作的仿真。
物理動作仿真由數(shù)據(jù)解析腳本、變量匹配腳本、實(shí)時驅(qū)動腳本構(gòu)成,其仿真過程如圖11所示[25]。首先根據(jù)物理動作中所涉及的物體結(jié)構(gòu)特征,在虛擬環(huán)境的模型子級內(nèi)創(chuàng)建碰撞觸發(fā)器和光線投射觸發(fā)器兩種虛擬觸發(fā)信號機(jī)構(gòu),為模擬物理動作提供數(shù)據(jù)源;然后對所有碰撞觸發(fā)器和光線投射觸發(fā)器產(chǎn)生的觸發(fā)信號在獨(dú)立的腳本中申明變量,通過Dictionary泛型類建立觸發(fā)器相關(guān)模型和觸發(fā)信號之間的聯(lián)系,并封裝成獨(dú)立的觸發(fā)信號單元供物理動作仿真中驅(qū)動腳本管理單元引用和查詢;最后驅(qū)動腳本管理單元獲取觸發(fā)信號并參照觸發(fā)信號管理單元,通過改變相關(guān)物體父子級關(guān)系和空間位置模擬物理動作。
在某測試工位中,三坐標(biāo)執(zhí)行機(jī)構(gòu)需要完成拉開老化箱格子、放入產(chǎn)品和推上老化箱格子3個操作,其中涉及執(zhí)行機(jī)構(gòu)與老化箱格子之間的接觸作用。當(dāng)執(zhí)行機(jī)構(gòu)運(yùn)動至老化箱格子碰撞面上時,觸發(fā)其子級上的“PullTrigger”觸發(fā)器,根據(jù)返回的模型信息和真實(shí)三坐標(biāo)執(zhí)行機(jī)構(gòu)末端的力反饋信號判斷是否執(zhí)行有效接觸,如果是,則推拉動作腳本的執(zhí)行函數(shù)將老化箱格子模型設(shè)定為執(zhí)行機(jī)構(gòu)的子級,并執(zhí)行機(jī)構(gòu)運(yùn)動當(dāng)格子被拉到指定行程時,觸發(fā)世界坐標(biāo)系內(nèi)的“EndPullTrigger”觸發(fā)器,然后同類函數(shù)復(fù)原老化箱柜子模型的父子級關(guān)系,其實(shí)現(xiàn)過程如圖12[25]所示。
驅(qū)動腳本管理單元根據(jù)虛擬觸發(fā)信號名稱等輸入信息,對物理動作仿真進(jìn)行調(diào)用,完成特定對象和物理動作驅(qū)動子類代碼的封裝和管理。例如,下文代碼以作用物體名稱、被作用物體名稱和觸發(fā)器參數(shù)為輸入量,對相應(yīng)對象與物理動作的子類進(jìn)行編寫,實(shí)現(xiàn)對執(zhí)行機(jī)構(gòu)末端夾取某類部件的分類管理,供運(yùn)動驅(qū)動模塊隨時調(diào)用。
public Transform CatchShells(Transform whoCatch)
{
return Catch(whoCatch, checkRadius, ProductType.shells);
}
本文所提數(shù)字孿生車間系統(tǒng)在中電38所汽車防撞雷達(dá)組裝生產(chǎn)線上進(jìn)行了落地應(yīng)用驗(yàn)證,如圖13所示。整個生產(chǎn)線由物料倉、機(jī)器人上料工位、3個裝配加工工位、1個老化檢測工位、1個終檢工位、1個機(jī)器人下料工位,兩輛AGV小車和1個老化檢測中心組成。物料由物料機(jī)器人放置于一個工裝物料盤中,由10輛線體軌道小車帶動物料盤在生產(chǎn)線上運(yùn)動,按工位順序完成整套裝配工藝流程。
針對該智能裝配線,采用本文所提出的方法設(shè)計(jì)并開發(fā)了智能裝配線數(shù)字孿生系統(tǒng),實(shí)現(xiàn)了對物理車間制造資源的實(shí)時鏡像。同時針對性地顯示、分析、管理車間現(xiàn)場設(shè)備狀態(tài)信息、生產(chǎn)工藝參數(shù)信息、車間物流過程、產(chǎn)品質(zhì)量信息和設(shè)備故障診斷信息等,形成了面向車間制造現(xiàn)場的實(shí)時可視化監(jiān)控、分析預(yù)測、逆時復(fù)現(xiàn)、健康管理和遠(yuǎn)程運(yùn)維平臺,如圖14所示。
本文通過搭建面向真實(shí)物理行為高保真映射的虛擬仿真環(huán)境,采用面向事件響應(yīng)的數(shù)據(jù)管理方法構(gòu)建了基于數(shù)據(jù)驅(qū)動的數(shù)字孿生車間系統(tǒng),實(shí)現(xiàn)了對物理車間的實(shí)時鏡像。另外,通過開發(fā)汽車防撞雷達(dá)組裝生產(chǎn)線的數(shù)字孿生車間系統(tǒng),實(shí)現(xiàn)了車間現(xiàn)場設(shè)備狀態(tài)信息、生產(chǎn)工藝參數(shù)信息、車間物流過程、產(chǎn)品質(zhì)量信息和設(shè)備故障診斷信息等的可視化顯示、分析與管理,形成了面向車間現(xiàn)場的虛擬監(jiān)控平臺,為數(shù)字孿生技術(shù)在智能制造領(lǐng)域的應(yīng)用與發(fā)展提供了關(guān)鍵支撐。未來將圍繞如何快速構(gòu)建數(shù)字孿生模型,以及應(yīng)用中涉及的大數(shù)據(jù)分析、智能決策等展開研究。