基于數(shù)字孿生的機(jī)器人虛擬調(diào)試系統(tǒng)設(shè)計(jì)及開(kāi)發(fā)
引言
隨著經(jīng)濟(jì)社會(huì)的不斷發(fā)展,未來(lái)絕大多數(shù)企業(yè)都將成為數(shù)字化的公司。這不僅只是要求企業(yè)開(kāi)發(fā)出具備數(shù)字化特征的產(chǎn)品,更要整個(gè)企業(yè)逐漸數(shù)字化,通過(guò)數(shù)據(jù)驅(qū)動(dòng)的手段改變整個(gè)產(chǎn)品的設(shè)計(jì)、開(kāi)發(fā)、制造和服務(wù)過(guò)程,并用數(shù)據(jù)驅(qū)動(dòng)的方式連接企業(yè)的內(nèi)部和外部環(huán)境,而這一切都是建立在數(shù)字孿生技術(shù)的基礎(chǔ)上。
數(shù)字孿生概念模型主要包括三個(gè)部分:物理空間的實(shí)體、虛擬空間的模型、物理空間和虛擬空間之間的數(shù)據(jù)和信息接口。數(shù)字孿生目的是通過(guò)數(shù)字化技術(shù),建立物理世界的虛擬模型,借助數(shù)據(jù)模擬實(shí)體在真實(shí)環(huán)境下的行為,通過(guò)虛實(shí)交互、數(shù)據(jù)分析、人工智能等技術(shù)手段,改進(jìn)和提升物理實(shí)體的效能。當(dāng)前,大部分自動(dòng)化設(shè)備的調(diào)試都是實(shí)機(jī)調(diào)試,然而實(shí)機(jī)調(diào)試存在諸多問(wèn)題:(1)機(jī)械、電氣和控制工程師在實(shí)機(jī)完成前難以進(jìn)行聯(lián)合調(diào)試,只能分開(kāi)各自調(diào)試,容易出現(xiàn)設(shè)計(jì)問(wèn)題:(2)設(shè)計(jì)、制造、調(diào)試及后續(xù)實(shí)際生產(chǎn)過(guò)程各環(huán)節(jié)屬于串行式流程,調(diào)試周期會(huì)很長(zhǎng):(3)實(shí)機(jī)調(diào)試需要技術(shù)水平較高的工程師才能完成,如果派遣經(jīng)驗(yàn)不足的工程師,反而容易損壞設(shè)備:(4)實(shí)機(jī)調(diào)試需要停機(jī),會(huì)影響生產(chǎn)效率,進(jìn)行試生產(chǎn)需要花費(fèi)多余的成本。因此,虛擬調(diào)試技術(shù)為解決以上問(wèn)題提供了新的方法和途徑。
數(shù)字孿生技術(shù)是虛擬調(diào)試的關(guān)鍵基礎(chǔ),所以本文重點(diǎn)介紹在產(chǎn)品設(shè)計(jì)階段,依托數(shù)字孿生技術(shù)開(kāi)展工作站邏輯性、可靠性仿真和分析,進(jìn)而改進(jìn)設(shè)計(jì)和提高可靠性。
1虛擬調(diào)試系統(tǒng)架構(gòu)
虛擬調(diào)試系統(tǒng)需要解決的問(wèn)題主要有兩個(gè):一是驗(yàn)證設(shè)計(jì)邏輯的正確性、可用性,二是確定參數(shù)的合理值或者最佳值。以上下料產(chǎn)線來(lái)舉例,虛擬調(diào)試可以分為上下料產(chǎn)線機(jī)械本體和邏輯控制程序兩個(gè)方面。機(jī)械本體的虛擬調(diào)試需要進(jìn)行運(yùn)動(dòng)學(xué)檢查,確保設(shè)備各部件在正常運(yùn)動(dòng)下不產(chǎn)生碰撞干涉行為。邏輯控制程序方面,需要驗(yàn)證程序設(shè)計(jì)的正確性,即程序是否能完成正常的控制功能,能否正確識(shí)別傳感器和各I/O變量,執(zhí)行正確的邏輯。另外,還可以通過(guò)調(diào)節(jié)生產(chǎn)中合理的工藝參數(shù),確定最佳的生產(chǎn)節(jié)拍。
根據(jù)以上調(diào)試需求,本文設(shè)計(jì)虛擬調(diào)試系統(tǒng)架構(gòu)如圖1所示。本虛擬調(diào)試系統(tǒng)由工程師通過(guò)人機(jī)交互界面控制產(chǎn)線數(shù)字孿生模型,控制命令由虛擬控制系統(tǒng)交互通信接口到達(dá)模型端,數(shù)字孿生模型接到控制指令后,模擬與實(shí)際設(shè)備相同的行為運(yùn)行,由通信接口將模型運(yùn)行信息反饋回控制系統(tǒng)。數(shù)字孿生模型會(huì)模擬實(shí)機(jī)的運(yùn)行狀態(tài),并通過(guò)孿生模型的三維仿真動(dòng)畫(huà)展示出來(lái)。此外,數(shù)字孿生模型還可以模擬各類(lèi)傳感器,配合產(chǎn)線在不同狀態(tài)下的I/O量,真實(shí)PLC會(huì)跟虛擬控制系統(tǒng)進(jìn)行通信,執(zhí)行PLC程序,方便調(diào)試正確性。
基于數(shù)字孿生的虛擬調(diào)試系統(tǒng)架構(gòu)中,數(shù)字孿生模型構(gòu)建是基礎(chǔ)。本系統(tǒng)是基于Unity引擎開(kāi)發(fā)的,借助該引擎可快速開(kāi)發(fā)數(shù)字孿生模型。另外,基于C#面向?qū)ο蟮乃枷?結(jié)合實(shí)際設(shè)備的特點(diǎn),采用多物理領(lǐng)域統(tǒng)一建模的方法構(gòu)建數(shù)字孿生模型。模型構(gòu)建中主要依據(jù)三條指導(dǎo)原則:面向?qū)ο蠓纸庠瓌t、多物理領(lǐng)域統(tǒng)一集成原則和增量式構(gòu)建原則。
2建立數(shù)字孿生模型
由于本系統(tǒng)是基于Unity開(kāi)發(fā)的,上下料產(chǎn)線等實(shí)體模型都是由通用三維設(shè)計(jì)軟件先建立好模型,然后利用格式中轉(zhuǎn)的方式或者購(gòu)買(mǎi)Pixyz插件,在Unity中快速導(dǎo)入、準(zhǔn)備和優(yōu)化CAD、網(wǎng)格和點(diǎn)云模型,實(shí)現(xiàn)實(shí)時(shí)可視化。
數(shù)字孿生模型需要添加剛體屬性才能受到重力或其他作用力的影響。使用Unity的優(yōu)勢(shì)在于其自帶的碰撞盒組件(Collider),將物體掛上剛體組件(Rigidbody),如圖2所示,就可以受到重力和其他力的作用,也可以檢測(cè)到碰撞。只有掛上了這些組件,才可以用代碼編寫(xiě)觸發(fā)函數(shù)或者碰撞回調(diào)函數(shù)。如果模型沒(méi)有定義剛體,它就會(huì)靜止,而且不會(huì)參與到任何運(yùn)動(dòng)中,因此本系統(tǒng)設(shè)計(jì)的時(shí)候一定要清楚哪些物體需要定義為剛體。
本系統(tǒng)以上下料產(chǎn)線為數(shù)字孿生對(duì)象,包含一臺(tái)數(shù)控車(chē)床、帶手爪的工業(yè)機(jī)器人、上料準(zhǔn)備機(jī)和工件完成區(qū),如圖3所示。由于本系統(tǒng)的目的是進(jìn)行虛擬調(diào)試,所以數(shù)控車(chē)床的孿生模型只需要有開(kāi)關(guān)門(mén)的動(dòng)畫(huà)仿真,并不需要仿真切削加工過(guò)程。帶手爪的工業(yè)機(jī)器人需要有動(dòng)作仿真,所以需要在機(jī)器人這個(gè)物體上掛上帶有機(jī)器人運(yùn)動(dòng)學(xué)正逆解的函數(shù),而手爪需要仿真松開(kāi)和夾緊動(dòng)作。另外,上料準(zhǔn)備機(jī)和工件完成區(qū)不需要賦予任何運(yùn)動(dòng),只需要對(duì)每一個(gè)工件賦予剛體和碰撞盒,運(yùn)行過(guò)程中,在重力作用下自然會(huì)逐個(gè)進(jìn)入到上料位置。值得注意的是,本例中工件其實(shí)有兩個(gè)子物體,共用一個(gè)碰撞盒,在加工前會(huì)顯示毛坯件,隱藏完成件,加工后會(huì)顯示完成件把毛坯件隱藏。以上就是一個(gè)簡(jiǎn)單上下料產(chǎn)線的數(shù)字孿生模型構(gòu)建方式。
3電氣控制和執(zhí)行機(jī)構(gòu)
要完成上下料產(chǎn)線的正確運(yùn)行,除了每一個(gè)設(shè)備可以正常工作以外,還需要它們相互配合,才可以完成上下料。因此,需要在系統(tǒng)中設(shè)置傳感器,常用的傳感器有碰撞傳感器、距離傳感器和位置傳感器。本例中,機(jī)器人手爪的夾緊就用到了碰撞傳感器,在上料位置需要時(shí)刻檢測(cè)手爪夾緊的程度,利用碰撞傳感器來(lái)判斷手爪是否抓緊毛坯工件。同樣地,在數(shù)控車(chē)床加工完打開(kāi)門(mén)后,機(jī)器人夾取完成件的時(shí)候也需要使用碰撞傳感器。本例中位置傳感器運(yùn)用在上料準(zhǔn)備機(jī)上,上一個(gè)工件被夾取后,其他毛坯會(huì)自動(dòng)下移,當(dāng)毛坯到底的時(shí)候就會(huì)觸發(fā)位置傳感器。位置傳感器就是為了確保上料機(jī)上有毛坯,不會(huì)出現(xiàn)沒(méi)有毛坯但是機(jī)器人過(guò)來(lái)空抓的情況。
其實(shí),傳感器就是作為動(dòng)作觸發(fā)的條件,相當(dāng)于一個(gè)信號(hào)的輸入,所以本系統(tǒng)還設(shè)置了一個(gè)虛擬的輸入/輸出端子,可以仿真實(shí)機(jī)上的I/O端子。本系統(tǒng)通過(guò)socket通信,跟機(jī)器人控制器、機(jī)床控制器和PLC進(jìn)行數(shù)據(jù)傳輸。通過(guò)系統(tǒng)虛擬模擬傳感器的觸發(fā),修改外部實(shí)機(jī)的輸入信號(hào)。舉例說(shuō)明如下:毛坯工件到位,會(huì)觸發(fā)位置傳感器,然后給機(jī)器人控制器一個(gè)輸入信號(hào),機(jī)器人接收到信號(hào)后會(huì)執(zhí)行上料程序,運(yùn)行到上料位置,然后等待;緊接著手爪會(huì)進(jìn)行夾緊動(dòng)作,當(dāng)碰撞傳感器觸發(fā)后,會(huì)給手爪和機(jī)器人一個(gè)信號(hào),手爪會(huì)停止夾緊動(dòng)作,而機(jī)器人會(huì)繼續(xù)執(zhí)行上料程序,把毛坯運(yùn)輸?shù)綌?shù)控機(jī)床的安裝位置。由此可知,虛擬輸入/輸出端子板很重要,對(duì)于虛擬調(diào)試不可或缺,因此,本系統(tǒng)還特地準(zhǔn)備了一個(gè)虛擬端子板的調(diào)試面板,如圖4所示,用于顯示當(dāng)前的虛擬輸入/輸出的狀態(tài)。
4自動(dòng)化邏輯
本例上下料產(chǎn)線包括數(shù)控車(chē)床、帶手爪機(jī)器人、上料準(zhǔn)備機(jī)等主要模塊。為保證各部分之間的協(xié)調(diào)運(yùn)行,有必要對(duì)控制系統(tǒng)建立仿真序列進(jìn)行虛擬自動(dòng)化邏輯控制仿真。工業(yè)上的產(chǎn)線,一般都是把PLC作為控制系統(tǒng),它與微型計(jì)算機(jī)相似,負(fù)責(zé)的工作是根據(jù)輸入來(lái)執(zhí)行事前編寫(xiě)好的程序。因此,虛擬調(diào)試系統(tǒng)最主要的目的就是檢驗(yàn)PLC程序的正確性。本例上下料產(chǎn)線建立仿真序列是基于動(dòng)作流程,在每一步流程結(jié)束后,需要對(duì)應(yīng)地變更虛擬輸入變量,以此條件來(lái)檢驗(yàn)PLC程序。
上下料產(chǎn)線的動(dòng)作流程如下:
(1)機(jī)器人運(yùn)動(dòng)到毛坯料的側(cè)方;
(2)機(jī)器人手爪中心往毛坯料中心移動(dòng):
(3)手爪夾緊毛坯:
(4)機(jī)器人手爪上移,然后夾著毛坯進(jìn)入數(shù)控車(chē)床的卡盤(pán)正前側(cè):
(5)數(shù)控車(chē)床卡盤(pán)夾緊毛坯:
(6)機(jī)器人手爪松開(kāi)毛坯:
(7)機(jī)器人退出數(shù)控車(chē)床工作區(qū)域:
(8)數(shù)控車(chē)床關(guān)門(mén)并進(jìn)行加工:
(9)加工完成后打開(kāi)門(mén):
(10)機(jī)器人進(jìn)入并夾緊完成件:
(11)數(shù)控車(chē)床卡盤(pán)松開(kāi):
(12)機(jī)器人帶著完成件移動(dòng)到工件完成區(qū)上方:
(13)機(jī)器人手爪松開(kāi)工件,使其自行掉落到工件完成區(qū)。
往復(fù)循環(huán)上述步驟,完成所有毛坯的加工。每個(gè)動(dòng)作完成后都設(shè)計(jì)了對(duì)應(yīng)的傳感器來(lái)檢測(cè)動(dòng)作是否完成到位,并通過(guò)輸入/輸出監(jiān)控面板的狀態(tài)實(shí)時(shí)反映系統(tǒng)的狀態(tài),從而保證了系統(tǒng)運(yùn)行的正確性。在完成數(shù)字孿生模型的相關(guān)設(shè)置以及控制信號(hào)的連接后,可以在本系統(tǒng)進(jìn)行基于數(shù)字孿生模型的虛擬調(diào)試,從而達(dá)到高效驗(yàn)證模型、優(yōu)化系統(tǒng)設(shè)計(jì)的目的。
5結(jié)語(yǔ)
新系統(tǒng)的設(shè)計(jì)和實(shí)施通常是耗時(shí)且高成本的過(guò)程,完成設(shè)計(jì)、采購(gòu)、安裝后,在客戶現(xiàn)場(chǎng)生產(chǎn)運(yùn)行之前還需要進(jìn)行調(diào)試。通過(guò)對(duì)設(shè)備虛擬調(diào)試驗(yàn)證其可行性后再進(jìn)行實(shí)物加工和實(shí)施,可以縮短產(chǎn)品從設(shè)計(jì)到實(shí)際生產(chǎn)的時(shí)間,使現(xiàn)場(chǎng)的調(diào)試速度更快、風(fēng)險(xiǎn)更低。
本文結(jié)合數(shù)控車(chē)床上下料產(chǎn)線設(shè)計(jì)并開(kāi)發(fā)了虛擬調(diào)試系統(tǒng),闡述了數(shù)字孿生技術(shù)在制造自動(dòng)化裝備開(kāi)發(fā)過(guò)程中既可以有效縮短新產(chǎn)品開(kāi)發(fā)周期,又可以降低新產(chǎn)品研發(fā)風(fēng)險(xiǎn)和研發(fā)投入的作用。由此可見(jiàn),基于數(shù)字孿生的虛擬調(diào)試技術(shù)將在智能制造時(shí)代發(fā)揮重要作用。