王振威, 張振山
(上海工程技術大學機械與汽車工程學院, 上海 201620)
由于數字孿生技術能夠實現對物理實體全生命周期運行狀態的忠實映射[1],對提高設備智能化水平具有重要意義,因此各大企業紛紛對數字孿生技術的落地應用進行了研究[2-3]。目前,數字孿生技術在機器人領域的落地應用受到了廣泛關注,但仍處于起步階段。劉懷蘭等[4-5]構建了數字孿生車間中工業機器人虛實驅動系統,并提出一種使用基于值的離散事件系統規范(VDEVS)對行為模型進行描述的方法,精確地描述了虛擬實體的行為。CHEN等[6]將大數據與理論建模方法結合,建立數控機床孿生模型對數控機床進行健康評估。徐健等[7]基于數字孿生技術,解決了工業裝配機器人復雜作業編程耗時耗力、準確性差等問題。綜上所述,雖然數字孿生在工業機器人上的研究取得了一定成果,但是大部分研究集中在孿生架構的建立及應用方面,對于構建孿生模型與物理實體之間的映射模型的建模方法研究相對較少。
因此,本文結合工業機器人自身特性及實際應用需求,構建了工業機器人數字孿生系統架構,并從幾何、運動、振動3個維度構建了工業機器人孿生映射模型,依次對各個維度模型進行了具體實現。基于Unity3D搭建了孿生空間,并以六軸工業機器人為例,對所構建的映射模型進行驗證。
參考數字孿生五維架構[8-9],本文構建的工業機器人數字孿生架構如圖1所示,該框架由物理空間、孿生數據、孿生空間、連接及系統應用5個部分組成。物理空間主要包括機器人本體及各類傳感器,是數字孿生系統的基礎,也是構建數字孿生模型的先決條件,承擔著為系統運行提供數據信息的重要作用,是數字孿生技術的服務對象;孿生數據是設備數據庫、傳感數據庫、故障數據庫、環境數據庫及診斷模型庫的集成,用以連接并驅動其余各部分。孿生空間包括服務器和由映射模型建立的孿生模型,是對物理實體的忠實映射。連接則是實現孿生空間與物理空間之間數據傳輸通信的核心,集成了各類通信協議及數據處理算法。系統應用是數字孿生系統的集成展示,對所涉及的各類數據、模型、算法、仿真數據進行封裝,從而實現對工業機器人實時運行狀態監測、系統仿真、故障診斷及健康評估等功能。

圖1 工業機器人數字孿生五維架構Fig.1 Five-dimensional architecture of digital twin for industrial robots
工業機器人孿生映射模型是實現孿生模型對物理實體忠實映射的關鍵,由幾何映射、運動映射和振動映射組成,如圖2所示。幾何映射是對物理實體外形的忠實映射,運動映射是實現孿生模型與物理實體同步運動的核心,振動映射則描述了物理實體在運行過程中產生的振動。

(a)幾何映射

(b)運動映射

(c)振動映射圖2 工業機器人孿生映射模型Fig.2 Twin mapping model of industrial robot
孿生模型需要在“形”上與物理實體保持統一,即需要建立高保真的幾何模型,幾何模型構建流程圖如圖3所示。

圖3 幾何模型構建流程Fig.3 Construction process of geometric model
通過建模軟件SOLIDWORKS建立三維模型,并設置單位及坐標系,由于模型無法從SOLIDWORKS軟件中直接導入Unity3D中,因此需先將其轉換為x_t格式再導入3ds Max中。
為了保證孿生模型在“形”上與實際工業機器人一致,則需要添加與實際相符的紋理材質進行渲染。模型從3ds Max直接導入Unity3D中存在大量冗余信息和大量三角面片數,雖然面片數越多,模型越精確,但是會極大地影響系統的運行效率。因此,需要在不影響用戶視覺體驗的前提下對模型進行優化處理,刪除不必要的三角面片,提高運行效率,最后以FBX格式導入Unity3D中。
經處理后的模型導入Unity3D后,雖然保留了原有裝配部件的相對位置,但是裝配關系不會保留,此時某個手臂運動并不會影響其他部分的運動,而工業機器人是一個具有聯動性的設備,任一手臂運動都會影響其他部分,例如大臂轉動后,其余各關節都會隨之發生轉動;在Unity3D中,這一聯動性由模型之間的父子關系體現,即子物體的運動不會影響父物體的運動,而父物體的運動會影響子物體的運動,因此需要在Unity3D中重新設置父子關系。
孿生模型不僅包括簡單的幾何映射,也需要在運動機理上實現物理實體與孿生模型的映射,本文的研究對象是庫卡(KUKA)機器人有限公司生產的KR3-R540工業機器人,如圖4所示。機器人本體由底座、腰部、大臂、肘部、小臂和腕部組成,各部分依次通過連桿連接。對于六軸工業機器人而言,通過伺服電機驅動關節旋轉從而帶動各連桿運動;而在Unity3D中模型的旋轉是通過改變物體的關節角度值實現的,因此對于運動機理的映射,本文基于改進DH法(M-DH)法建立正向運動學方程,通過機器人控制器采集關節編碼器的角度,并作為模型的輸入,以此得到末端執行器的位姿,實現孿生模型對物理實體運動層次的忠實映射。

圖4 六軸工業機器人結構圖Fig.4 Structure diagram of six-axis industrial robot
機器人連桿參數見表1,其中αi表示機械臂第i桿扭角,ai表示機械臂第i桿長度,θi為機械臂i與i+1桿之間的夾角,di表示機械臂第i與i+1桿之間距離。

表 1 KR3-R540 M-DH參數表Tab.1 KR3-R540 M-DH parameter table
M-DH法的通用齊次變換矩陣如公式(1)所示:
(1)
根據坐標變換理論,將各個連桿矩陣連乘即可得到0T6,如公式(2)所示。將采集到的機械臂各關節角度數據θi代入公式(2),即可求得其在空間的位置數據和姿態數據,完成“以實控虛”的功能。
(2)
公式(2)中,n=[nxnynz]T、o=[oxoyoz]T和a=[axayaz]T分別表示機械臂末端執行器坐標系x、y和z軸在基坐標系{X0,Y0,Z0}中表示的單位矢量,P=[pxpypz]T為末端執行器坐標系相對于基坐標原點的位置矢量。為了簡化表達形式,令ci=cosθi,si=sinθi,P的具體表達形式如公式(3)所示:
(3)
當關節角變量θ=(θ1,…,θ6)為已知時,可通過采集機器人各關節角度值,并將其代入公式(3)中,驅動孿生模型運動,以此實現與物理實體同步運動。
工業機器人故障狀態實時監測對于提高系統智能化水平具有重要意義,一般針對機器人振動信號進行故障診斷,但傳感器布置煩瑣,并且傳感器的額外質量也可能對工業機器人關節性能退化的計算結果產生影響[10]。由于數字孿生技術是對設備全生命周期的忠實映射,因此可有效地解決以上問題。通過構建機器人振動機理模型可有效地獲取關節振動信息,同時避免了由環境產生的噪聲干擾。
工業機器人在作業過程中產生振動通常有兩個主要原因:臂桿柔性與關節柔性,其中臂桿柔性相對于后者,影響更小,并且由于工業機器人一般處于長時間連續運行,關節很容易因機械疲勞使其剛度下降,導致機器人產生抖動[11],因此本文構建考慮關節柔性的工業機器人動力學模型。一般而言,可將機器人關節等效為介于電機轉子和下一連桿之間的線性彈簧,如圖5所示。圖5中,βi和τmi為電機輸出轉角和電機驅動力矩,Ni為減速器傳動比,θi為連桿轉動角度,ki為柔性關節剛度,則經過減速器后的轉角qi和力矩τoi如公式(4)所示:

圖5 柔性關節示意圖Fig.5 Schematic diagram of flexible joint

(4)
設關節轉動慣量為J,均質臂桿長度為L,質量為m,采用速比折合的方法,將主動軸的轉動慣量和輸入力矩折合至從動軸中,則關節等效轉動慣量為J1=JmiNi2,同時剛性臂桿的轉動慣量為J2=mL2/3。設廣義坐標為[θ1,θ2,…,θ6,q1,q2,…,q6],并基于拉格朗日法建立考慮關節柔性的機器人動力學模型,如公式(5)所示:
(5)
設初始時刻,即t=0時刻機器人狀態如公式(6)所示:
(6)
聯立公式(5)和公式(6)可得到:
(7)
對公式(7)連續積分兩次可得公式(8):
(8)
連解公式(5)和公式(8)即可求得關于θ的二階常系數非齊次線性方程,如公式(9)所示:
(9)
二階非齊次線性方程的特解表達式θ*和通解表達式θ如公式(10)和公式(11)所示:
θ*=b0t2+b1t+b2
(10)
θ=c1cosβt+c2sinβt+θ*
(11)
(12)
將公式(11)帶入公式(10)中,即可求出關于θ的通解表達式,再將其代入公式(8)和公式(9)中,即可求出關于q(t)和θ(t)的表達式,分別如公式(13)和公式(14)所示:
(13)
(14)
在常力矩驅動下的關節位移振動可由電機轉子經減速器后的角度和連桿角度之差表征,表達式如公式(15)所示:
(15)

(16)
(17)
由公式(17)可知此時機械臂系統正在做加速度為σoi/(J1+J2)的勻加速運動,與一般剛性關節系統運動特性符合,故本文所建立的振動模型正確。
采用KUKA機器人作為研究對象,以工業機器人搬運作業場景為例,搭建物理環境,如圖6(a)所示?;赨nity3D開發了工業機器人數字孿生原型系統,并搭建了孿生空間,如圖6(b)所示。實驗步驟如下。

(a)實驗平臺

(b)孿生空間

(c)實測軌跡圖6 “虛實同步”試驗驗證Fig.6 Test verification of ″virtual and real synchronization″
步驟1:通過套接字通信(Socket)建立孿生空間與物理空間之間的連接。
步驟2:啟動控制器程序,連接至Socket服務器并開始運動。
步驟3:孿生系統通過Socket通信接收到關節編碼器反饋值,作為機理模型輸入用于驅動孿生模型同步運動。
步驟4:在機器人關節處安裝加速度傳感器,通過信號采集器與分析儀采集機器人關節在運動過程中的振動信號。
步驟5:將實測數據與機理模型輸出值進行對比驗證,測試孿生系統的可行性及有效性。
通過實驗可知,本文所構建的工業機器人數字孿生系統能夠完成物理實體與孿生模型的“虛實同步”功能。啟動監聽功能后,孿生模型能夠跟隨物理實體同步運動,用戶可在UI界面上讀取當前機器人各軸轉動角度及孿生模型位置數據,將測得的工業機器人實際位置數據擬合成一條曲線,如圖6(c)所示。同時,利用Trail Renderer組件可以直觀地觀察到工業機器人末端的運動軌跡,物理實體運動軌跡與孿生模型運動軌跡基本一致。系統運行過程中無明顯延遲,孿生模型能夠較好地與物理實體同步運動。
本文以末端關節的實測加速度信號對所建立的振動模型進行驗證,通過加速度傳感器和信號采集器與分析儀采集末端關節加速度信號,如圖7所示。

圖7 振動信號數據采集Fig.7 Vibration signal data acquisition
將實測信號和由孿生模型產生的振動信號疊加對比,結果如圖8所示。可以看到,振動模型與實測振動結果在時域上大致吻合,驗證了本文所建立的考慮關節柔性的機器人振動模型的有效性,而其中存在部分偏差可能是由于實測環境存在環境的噪聲干擾導致的。

圖8 孿生數據與實測數據時域對比Fig.8 Time domain comparison between twin data and measured data
本文以工業機器人為對象,結合數字孿生技術,從物理空間、孿生數據、孿生空間、系統應用及連接5個部分,建立了工業機器人數字孿生五維架構。提出了一種孿生映射模型建模方法,從幾何、運動、振動3個維度實現了孿生模型對物理實體的忠實映射。此外,通過實例驗證了本文所建立的孿生映射模型的有效性,為數字孿生技術在工業機器人的落地應用,以及構建工業機器人孿生模型與物理實體之間的映射模型提供了參考。