陳有鵬,李會(huì)軍,王瑞超,高祥,張翔
基于Unity的機(jī)器人系統(tǒng)實(shí)時(shí)3D數(shù)字孿生終端設(shè)計(jì)
陳有鵬,李會(huì)軍,王瑞超,高祥,張翔
(五邑大學(xué) 智能制造學(xué)部,廣東 江門 529020)
以機(jī)器人為核心運(yùn)動(dòng)組件的數(shù)字孿生終端系統(tǒng),有助于無(wú)人工廠安全員對(duì)工作現(xiàn)場(chǎng)進(jìn)行監(jiān)控,提高了無(wú)人化工廠的安全性和可控性。本文采用Unity作為虛擬現(xiàn)實(shí)的開(kāi)發(fā)平臺(tái),設(shè)計(jì)了具有離線和在線監(jiān)控功能的實(shí)時(shí)3D數(shù)字孿生終端,這種設(shè)計(jì)方法具有一定的開(kāi)發(fā)敏捷性。通過(guò)建立機(jī)器人運(yùn)動(dòng)學(xué)模型,分析正逆運(yùn)動(dòng)學(xué)和路徑生成方法,提出了一種機(jī)器人腳本的設(shè)計(jì)模式,實(shí)現(xiàn)了機(jī)器人的關(guān)節(jié)運(yùn)動(dòng)動(dòng)畫,并采用單獨(dú)的服務(wù)器作為Unity中仿真場(chǎng)景和機(jī)器人控制器的通信中心,利用套接字通信和機(jī)器人廠商提供的接口實(shí)現(xiàn)了仿真場(chǎng)景和機(jī)器人間的實(shí)時(shí)交互。通過(guò)數(shù)字孿生終端與RobotStudio離線編程環(huán)境的交互測(cè)試,驗(yàn)證了該設(shè)計(jì)方案的可行性。
數(shù)字孿生;Unity;實(shí)時(shí)3D;機(jī)器人
當(dāng)前,工業(yè)機(jī)器人及其組成的無(wú)人工廠已經(jīng)在制造業(yè)的多個(gè)領(lǐng)域得到了廣泛應(yīng)用[1],這使得制造業(yè)工廠的集成性和智能化程度不斷提高,因此對(duì)各生產(chǎn)系統(tǒng)的在線狀態(tài)和異常監(jiān)測(cè)等成為熱點(diǎn)的研究方向。而數(shù)字孿生技術(shù)是指在信息化平臺(tái)內(nèi)建立、模擬一個(gè)物理實(shí)體、流程或系統(tǒng)[2],與無(wú)人工廠有很高的契合度。機(jī)器人數(shù)字孿生終端是對(duì)機(jī)器人系統(tǒng)的仿真和監(jiān)控,并可以進(jìn)行示教功能的擴(kuò)展,往往在生產(chǎn)流程基本定型時(shí)完成,是面向系統(tǒng)安全員的實(shí)時(shí)3D終端。近年來(lái),國(guó)內(nèi)外學(xué)者分別設(shè)計(jì)了多種數(shù)字孿生終端。AdrianoFagali等提出了一個(gè)由移動(dòng)設(shè)備實(shí)時(shí)監(jiān)控和控制五軸數(shù)控機(jī)床系統(tǒng)[3],王豐圓[4]基于Unity動(dòng)畫狀態(tài)機(jī)設(shè)計(jì)了一套面向車間的數(shù)字孿生系統(tǒng),杜瑩瑩等[5]提出了基于SQL數(shù)據(jù)庫(kù)的數(shù)字孿生方案,蔡寶等[6]利用工業(yè)標(biāo)準(zhǔn)OPCUA協(xié)議實(shí)現(xiàn)數(shù)字孿生終端和機(jī)器人實(shí)驗(yàn)平臺(tái)的交互。這些數(shù)字孿生終端設(shè)計(jì)針對(duì)具體的工作場(chǎng)景進(jìn)行設(shè)計(jì)并對(duì)通信協(xié)議和數(shù)據(jù)交互進(jìn)行分析,但設(shè)計(jì)的終端缺少敏捷性,在應(yīng)用于不同的實(shí)際工作站和進(jìn)行項(xiàng)目遷移時(shí)往往需要重新開(kāi)發(fā)。
對(duì)于實(shí)時(shí)3D的數(shù)字孿生終端,采用Unity游戲引擎開(kāi)發(fā)3D項(xiàng)目是一個(gè)常見(jiàn)的選擇[7-9],作為一個(gè)虛擬現(xiàn)實(shí)平臺(tái),方便移植到不同操作系統(tǒng),并有官方支持的制造業(yè)解決方案[10]。本文對(duì)數(shù)字孿生終端的開(kāi)發(fā)過(guò)程和設(shè)計(jì)模式進(jìn)行了詳細(xì)分析,提高了數(shù)字孿生終端的開(kāi)發(fā)效率和敏捷性。采用類似本文的方式設(shè)計(jì)數(shù)字孿生終端可以實(shí)現(xiàn)對(duì)多種型號(hào)和廠商機(jī)器人的支持,通過(guò)Unity的預(yù)制件功能實(shí)現(xiàn)不同生產(chǎn)場(chǎng)景的快速虛擬化,同時(shí)可以支持變位機(jī)和絲桿模組等生產(chǎn)過(guò)程中的運(yùn)動(dòng)組件。
機(jī)器人數(shù)字孿生終端由機(jī)器人系統(tǒng)仿真場(chǎng)景和監(jiān)控服務(wù)器兩個(gè)部分組成。仿真場(chǎng)景基于Unity3D搭建,可以查看機(jī)器人系統(tǒng)并可對(duì)機(jī)器人進(jìn)行虛擬操作,依據(jù)存檔文件或監(jiān)控服務(wù)器得到的數(shù)據(jù)進(jìn)行仿真。監(jiān)控服務(wù)器從機(jī)器人控制器中獲得運(yùn)動(dòng)數(shù)據(jù)發(fā)送到仿真場(chǎng)景中。機(jī)器人廠商提供的接口不一定支持Unity的Mono框架,以ABBPCSDK為例,直接在Unity和通用控制臺(tái)下編譯會(huì)報(bào)錯(cuò)。對(duì)于不一定支持工業(yè)標(biāo)準(zhǔn)OPC UA的非標(biāo)機(jī)器人和其他運(yùn)動(dòng)組件,定制監(jiān)控服務(wù)器是必要的。
分別設(shè)計(jì)仿真場(chǎng)景和監(jiān)控服務(wù)器,其中仿真場(chǎng)景是Unity3D的一個(gè)場(chǎng)景,監(jiān)控服務(wù)器的框架與使用機(jī)器人有關(guān),并將仿真場(chǎng)景和機(jī)器人控制器作為網(wǎng)絡(luò)通信時(shí)的客戶端,如圖1所示,監(jiān)控服務(wù)器作為與仿真場(chǎng)景和機(jī)器人控制器之間通信的中介,負(fù)責(zé)依據(jù)仿真場(chǎng)景的綁定在機(jī)器人控制器和仿真場(chǎng)景間傳輸數(shù)據(jù)。為加強(qiáng)系統(tǒng)的易用性,針對(duì)不同廠商的機(jī)器人提供監(jiān)控服務(wù)器各種實(shí)現(xiàn)方案,這體現(xiàn)了開(kāi)發(fā)的敏捷性。
圖1 通信模式
圖2描述了數(shù)字孿生終端的使用用例。初步仿真是在終端中使用鍵鼠和控制器等輸入設(shè)備控制虛擬機(jī)器人進(jìn)行關(guān)節(jié)運(yùn)動(dòng)和TCP運(yùn)動(dòng),驗(yàn)證終端的虛擬工作站對(duì)實(shí)際工作站的仿真準(zhǔn)確性。離線編程是對(duì)機(jī)器人進(jìn)行離線編程和路徑規(guī)劃的過(guò)程,這個(gè)功能可以通過(guò)不同機(jī)器人廠商提供的離線編程軟件實(shí)現(xiàn)。離線監(jiān)控是把在離線編程軟件或試生產(chǎn)過(guò)程中得到的關(guān)節(jié)坐標(biāo)存檔文件在終端生成仿真動(dòng)畫,并進(jìn)行碰撞檢測(cè)等安全性測(cè)試的過(guò)程。在線監(jiān)控是在實(shí)際生產(chǎn)過(guò)程中監(jiān)控工作站中機(jī)器人類對(duì)象的關(guān)節(jié)坐標(biāo)、生產(chǎn)情況和傳感器指數(shù)的過(guò)程。
圖2 數(shù)字孿生終端的概念用例示意圖
建立運(yùn)動(dòng)學(xué)模型的目的是將機(jī)器人的位姿描述在關(guān)節(jié)空間和笛卡爾空間之間轉(zhuǎn)換以實(shí)現(xiàn)虛擬機(jī)器人進(jìn)行運(yùn)動(dòng)控制。常用的工業(yè)機(jī)器人可以有很多不同的運(yùn)動(dòng)學(xué)構(gòu)型,此時(shí)正運(yùn)動(dòng)學(xué)的形式不一致,并可能沒(méi)有逆運(yùn)動(dòng)學(xué)封閉解,這被認(rèn)為是虛擬機(jī)器人腳本類包含“變化”的重要原因。以ABB IRB120為例,該六軸串聯(lián)機(jī)器人,有六個(gè)關(guān)節(jié)且均為旋轉(zhuǎn)關(guān)節(jié),機(jī)構(gòu)簡(jiǎn)圖如圖3所示,改進(jìn)D-H連桿參數(shù)如表1所示。
圖3 ABB IRB120機(jī)器人機(jī)構(gòu)簡(jiǎn)圖
表1 IRB120的改進(jìn)D-H連桿參數(shù)表
表中:α-1為連桿扭矩,即一個(gè)關(guān)節(jié)軸相對(duì)另個(gè)一關(guān)節(jié)軸繞其公共法線的扭矩;a-1為連桿長(zhǎng)度,即兩個(gè)關(guān)節(jié)的軸間公共法線長(zhǎng)度;θ為連桿轉(zhuǎn)角,即一個(gè)關(guān)節(jié)與下一個(gè)關(guān)節(jié)的公共法線和它與上一個(gè)關(guān)節(jié)的公共法線繞這個(gè)關(guān)節(jié)軸的轉(zhuǎn)角;d為連桿偏距,即一個(gè)關(guān)節(jié)與下一個(gè)關(guān)節(jié)的公共法線和它與上一個(gè)關(guān)節(jié)的公共法線沿這個(gè)關(guān)節(jié)軸的距離。
對(duì)于機(jī)器人連桿,在右手坐標(biāo)系下改進(jìn)D-H法的連桿變換矩陣為[11]:
通過(guò)連桿變換矩陣連乘可以得到運(yùn)動(dòng)學(xué)公式為:
在此基礎(chǔ)上,可以進(jìn)一步得到基底到工具中心點(diǎn)的變換為:
常見(jiàn)六軸工業(yè)機(jī)器人滿足Pieper準(zhǔn)則,可通過(guò)Pieper解法獲得逆運(yùn)動(dòng)學(xué)方程的封閉解。
在驗(yàn)證虛擬示教得到結(jié)果時(shí),除對(duì)指令代碼的解釋外,還需要得到執(zhí)行指令過(guò)程中機(jī)器人每幀內(nèi)的關(guān)節(jié)坐標(biāo),即路徑更新率為60 Hz的軌跡生成問(wèn)題。原則上,虛擬機(jī)器人的軌跡生成算法應(yīng)盡可能與廠商的算法接近。
以下介紹笛卡爾空間直線軌跡生成。直線軌跡生成是已知始末兩點(diǎn)、求取中間的插補(bǔ)點(diǎn),對(duì)于不少于六個(gè)自由度的機(jī)器人,其笛卡爾坐標(biāo)中的點(diǎn)使用位姿描述,即位置和旋轉(zhuǎn)姿態(tài)。在姿態(tài)以固定角或歐拉角描述時(shí),各插補(bǔ)點(diǎn)可通過(guò)下式求出[12]:
式中:為歸一化因子,與軌跡生成中的過(guò)渡曲線相關(guān);Δ、Δ、Δ、Δ、Δ、Δ為位姿的增量。
機(jī)器人的三維實(shí)體模型是對(duì)實(shí)體機(jī)器人的抽象和簡(jiǎn)化,是機(jī)器人仿真系統(tǒng)的基礎(chǔ)。一般地,部分機(jī)器人廠商提供了對(duì)應(yīng)三維CAD模型,也可以通過(guò)SolidWorks、Pro/E等3DCAD軟件建立模型,這類模型往往包含大量的網(wǎng)格、工程設(shè)計(jì)信息,缺少光照和法線貼圖,并不適合在實(shí)時(shí)3D系統(tǒng)中展示。盡管目前有多種模型轉(zhuǎn)換方法實(shí)現(xiàn)[13-14],為了在實(shí)時(shí)3D環(huán)境下更好地進(jìn)行操作和展示,在三維動(dòng)畫軟件中進(jìn)行進(jìn)一步處理,調(diào)整好關(guān)節(jié)之間的父子關(guān)系和坐標(biāo)系位姿,保證實(shí)體模型和實(shí)際機(jī)器人運(yùn)動(dòng)學(xué)描述的差距在可控范圍內(nèi)。
圖4分別展示了廠商提供的三維CAD模型和仿真場(chǎng)景使用的模型。圖4(a)為SolidWorks中的模型,擁有較多的面片和細(xì)節(jié)、復(fù)雜的父子關(guān)系;圖4(b)是在Blender中修改的模型,減少了模型的面片數(shù)量、并去除了不必要的細(xì)節(jié),同時(shí)調(diào)整了機(jī)器人實(shí)體模型關(guān)節(jié)之間的父子關(guān)系和坐標(biāo)系位姿,得到的實(shí)體模型可以減少數(shù)字孿生終端的性能消耗,并簡(jiǎn)化運(yùn)動(dòng)動(dòng)畫和監(jiān)控相關(guān)的C#腳本的復(fù)雜度。通過(guò)對(duì)機(jī)器人類對(duì)象的實(shí)體模型進(jìn)行處理,可以優(yōu)化終端性能并使得不同機(jī)器人和其他運(yùn)動(dòng)組件可以應(yīng)用相同的設(shè)計(jì)模式。
2.4.1 機(jī)器人類對(duì)象設(shè)計(jì)模式
在仿真場(chǎng)景中,工業(yè)機(jī)器人、變位機(jī)、絲桿模組等運(yùn)動(dòng)組件在需要實(shí)時(shí)控制關(guān)節(jié)空間坐標(biāo)的情況下均視為機(jī)器人類對(duì)象。加工工具作為機(jī)器人最終關(guān)節(jié)的子對(duì)象,承載了加工過(guò)程相關(guān)的動(dòng)畫與Shader特效。在三維動(dòng)畫軟件中設(shè)置好關(guān)節(jié)間的父子關(guān)系和坐標(biāo)后,運(yùn)動(dòng)學(xué)模型即可應(yīng)用于虛擬三維實(shí)體模型?;跈C(jī)器人腳本類的“變化”,尤其是集成到相關(guān)方法的正逆運(yùn)動(dòng)學(xué)公式和路徑生成方法的變化,并重寫相應(yīng)方法,這意味著對(duì)于“變化”的封裝[15],在C#語(yǔ)言中是通過(guò)接口或抽象類實(shí)現(xiàn)的,圖5是簡(jiǎn)化后的運(yùn)動(dòng)動(dòng)畫相關(guān)腳本的對(duì)象圖。
圖4 ABB IRB120實(shí)體模型
因?yàn)槟_本類不能創(chuàng)建且必須繼承自MonoBehavior[16],機(jī)器人腳本類對(duì)“變化”的封裝需要通過(guò)抽象類實(shí)現(xiàn),其主要功能如表2所示,對(duì)于不需要在基類中實(shí)現(xiàn)的單段運(yùn)動(dòng)指令和有限狀態(tài)機(jī),則通過(guò)接口實(shí)現(xiàn)。同時(shí)鑒于Unity使用的PhysX物理引擎和仿真場(chǎng)景的連續(xù)性要求,不對(duì)機(jī)器人類對(duì)象設(shè)置除了碰撞外的物理效果。
圖5 簡(jiǎn)化的腳本對(duì)象圖
表2 關(guān)節(jié)和機(jī)器人類的主要方法
2.4.2 實(shí)時(shí)關(guān)節(jié)空間坐標(biāo)與腳本動(dòng)畫生成
在除前期仿真外,希望獲得每幀的關(guān)節(jié)坐標(biāo)以獲得連續(xù)的運(yùn)動(dòng)動(dòng)畫。考慮到腳本的生命周期,在可預(yù)載腳本的Update方法中直接控制機(jī)器人的關(guān)節(jié)坐標(biāo),本文稱為抽象控制器類型,抽象控制器中對(duì)預(yù)生成的各幀關(guān)節(jié)坐標(biāo)的管理是通過(guò)隊(duì)列實(shí)現(xiàn)的。
在離線編程仿真過(guò)程中,選擇與幀率相同的路徑更新率(一般為60 Hz)進(jìn)行路徑生成。離線編程的腳本動(dòng)畫生成流程如圖6(a)所示。
在離線監(jiān)控模式下,從離線編程軟件或?qū)嶋H生成過(guò)程中獲得關(guān)節(jié)空間的頻率往往達(dá)不到幀率,需要進(jìn)行插補(bǔ)操作,因?yàn)閷?shí)際關(guān)節(jié)坐標(biāo)的獲取間隔較長(zhǎng),中間幀采用勻速插補(bǔ),類似于直線過(guò)渡的關(guān)節(jié)空間路徑生成,只是在極短的時(shí)間段內(nèi)的一種簡(jiǎn)化處理,插補(bǔ)點(diǎn)的關(guān)節(jié)坐標(biāo)為:
式中:為關(guān)節(jié)坐標(biāo),=1,2,3,…,,為關(guān)節(jié)數(shù)量;Δ為關(guān)節(jié)坐標(biāo)的增量;1為離線監(jiān)控模式的歸一化因子,由式(6)求出。
式中:=1,2,3,…,;為總插補(bǔ)點(diǎn)數(shù)。
離線監(jiān)控模式下的腳本動(dòng)畫生成流程如圖6(b)所示。
動(dòng)畫生成流程在FixedUpdate方法下實(shí)現(xiàn)最優(yōu)。
圖6 動(dòng)畫生成流程
在線監(jiān)控功能的實(shí)現(xiàn)需要機(jī)器人控制器和監(jiān)控服務(wù)器、監(jiān)控服務(wù)器和仿真場(chǎng)景的雙向通信。因此套接字(Socket)通信實(shí)現(xiàn)的TCP協(xié)議網(wǎng)絡(luò)通信是最優(yōu)的選擇。對(duì)于和機(jī)器人控制器之間的通信,以機(jī)器人廠商提供的接口為較好,其底層邏輯一般也是基于Socket通信的,也可以在機(jī)器人指令中使用Socket通信實(shí)現(xiàn)相關(guān)功能。
優(yōu)先使用機(jī)器人廠商提供的接口進(jìn)行控制器與監(jiān)控服務(wù)器之間的通信。以ABBPCSDK為例,其使用需要在高版本的.NetWPF或WinForm框架下,表3是PCSDK常用命名空間的功能[17]。
只需要連接控制器并從控制器中獲取關(guān)節(jié)坐標(biāo)即可,對(duì)于未在仿真場(chǎng)景中綁定的機(jī)器人控制器可以忽略。監(jiān)控服務(wù)器應(yīng)保證與機(jī)器人控制器通信的可行性與穩(wěn)定性。
表3 PCSDK常用命名空間的功能
監(jiān)控服務(wù)器與仿真場(chǎng)景的通信除了需要獲取基本的關(guān)節(jié)坐標(biāo)外,還需要綁定和解綁控制器,同時(shí)不希望此時(shí)的通信內(nèi)容與監(jiān)控服務(wù)器強(qiáng)相關(guān)。因此,需要定制與機(jī)器人型號(hào)、廠商無(wú)關(guān)的通信數(shù)據(jù)協(xié)議內(nèi)容。I/O信息和傳感器數(shù)據(jù)可以按需加入到通信數(shù)據(jù)中。
監(jiān)控服務(wù)器與仿真場(chǎng)景在同一設(shè)備上是最優(yōu)選擇,但在無(wú)法保證監(jiān)控服務(wù)器與機(jī)器人通信的可行性與穩(wěn)定性的情況下可以不在同一設(shè)備上。
在RobotStudio中設(shè)計(jì)的簡(jiǎn)化系統(tǒng)在仿真場(chǎng)景中的鏡像如圖7所示,為了設(shè)計(jì)方便直接采用兩個(gè)IRB120機(jī)器人作為運(yùn)動(dòng)組件且沒(méi)有添加加工工具。
圖7 示例場(chǎng)景
使用鍵鼠和XBOX控制器可以在初期仿真中控制機(jī)器人進(jìn)行關(guān)節(jié)運(yùn)動(dòng)和TCP運(yùn)動(dòng),如圖8所示。
在RobotStudio中進(jìn)行離線編程并記錄關(guān)節(jié)坐標(biāo)形成存檔文件后,在終端中可以看到離線監(jiān)控過(guò)程中機(jī)器人的運(yùn)動(dòng)情況如圖9所示。
監(jiān)控服務(wù)器與RobotStudio虛擬控制器安裝于同一臺(tái)設(shè)備。通過(guò)終端的交互查找RobotStudio中的虛擬控制器,其信息和終端中的顯示如圖10所示,綁定控制器后開(kāi)啟監(jiān)控功能并在RobotStudio中開(kāi)啟仿真,如圖11所示,場(chǎng)景中的關(guān)節(jié)坐標(biāo)與RobotStudio中一致。
由此可知,文中設(shè)計(jì)的終端基本可以達(dá)到要求。
圖9 離線監(jiān)控模式
圖10 在線控制器的地址和信息顯示
本文提出一種機(jī)器人數(shù)字孿生終端設(shè)計(jì)方案,包括機(jī)器人的運(yùn)動(dòng)學(xué)模型和實(shí)體模型、動(dòng)畫腳本的設(shè)計(jì)模式和通信方法。該設(shè)計(jì)方法可支持不同廠商的機(jī)器人和變位機(jī)、絲桿模組等類機(jī)器人對(duì)象,設(shè)計(jì)的動(dòng)畫生成腳本可適用于長(zhǎng)時(shí)間下的離線仿真。最后使用Socket通信和PC SDK實(shí)現(xiàn)對(duì)ABB機(jī)器人的在線監(jiān)控。通過(guò)對(duì)兩個(gè)ABB IRB120機(jī)器人組成的虛擬工作站進(jìn)行了驗(yàn)證,本文提出的設(shè)計(jì)方法滿足實(shí)時(shí)3D數(shù)字孿生終端的基本要求,具有較好實(shí)時(shí)性和交互性。在進(jìn)一步的研究中,在線監(jiān)控和遙操作的同步、監(jiān)控服務(wù)器和終端的耦合、不同加工工藝下加工安全方案等是重要的研究方向。
圖11 RobotStudio與仿真場(chǎng)景的交互對(duì)比
[1]王田苗,陶永. 我國(guó)工業(yè)機(jī)器人技術(shù)現(xiàn)狀與產(chǎn)業(yè)化發(fā)展戰(zhàn)略[J]. 機(jī)械工程學(xué)報(bào),2014,50(9):1-13.
[2]劉大同,郭凱,王本寬,等. 數(shù)字孿生技術(shù)綜述與展望[J]. 儀器儀表學(xué)報(bào),2018,39(11):1-10.
[3]Souza A,Martins J,Amioche H,et al. Development of a mobile application for monitoring and controlling a CNC machine using Industry 4.0 concepts[J]. The International Journal of Advanced Manufacturing Technology,2020(111):9-10.
[4]王豐圓. 基于數(shù)字化雙胞胎的三維可視化車間系統(tǒng)研究[D]. 武漢:華中科技大學(xué),2019.
[5]杜瑩瑩,羅映,彭義兵,等. 基于數(shù)字孿生的工業(yè)機(jī)器人三維可視化監(jiān)控[J/OL]. 計(jì)算機(jī)集成制造系統(tǒng),2022-10-18:1-15.
[6]蔡寶,朱文華,史秋雨,等. 虛實(shí)融合的工業(yè)機(jī)器人實(shí)驗(yàn)平臺(tái)研究[J]. 機(jī)床與液壓,2021,49(23):54-60.
[7]潘俊浩,卓勇,侯亮,等. 一種基于Unity3d的工業(yè)機(jī)器人示教系統(tǒng)設(shè)計(jì)方法[J]. 組合機(jī)床與自動(dòng)化加工技術(shù),2017,521(7):110-115.
[8]劉謀玉,汪地,姜海龍. 基于Unity3D的機(jī)器人仿真和遙操作系統(tǒng)研究[J]. 工業(yè)控制計(jì)算機(jī),2016,29(9):97-99.
[9]耿琦琦. 基于數(shù)字孿生仿真建模的機(jī)器人狀態(tài)監(jiān)測(cè)技術(shù)研究[D]. 重慶:重慶郵電大學(xué),2019.
[10]Unity Technologies. 3D Software Architecture, Engineering & Constructing Unity[EB/OL]. https://store.unity3d.com,2022.
[11]JOHNJCRAIG. 贠超,譯.機(jī)器人學(xué)導(dǎo)論[M]. 3版. 北京:機(jī)械工業(yè)出版,2006.
[12]鄭劍飛. 六自由度機(jī)械臂分布式控制系統(tǒng)的設(shè)計(jì)與研究[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2006.
[13]耿維忠,于江饒,焦躍軍. 一種高效的CAD模型簡(jiǎn)化方法[J]. 機(jī)械工程與自動(dòng)化,2022(1):197-199,202.
[14]于倩,顧宏斌,湯勇. 基于分類的CAD數(shù)據(jù)到VR模型轉(zhuǎn)換方法[J]. 武漢理工大學(xué)學(xué)報(bào)(信息與管理工程版),2011,33(4):548-552.
[15]王曉慶,曾文英,王明文,等. 設(shè)計(jì)模式中的面向?qū)ο笤瓌t及其子模式[J]. 計(jì)算機(jī)工程,2003(9):192-194.
[16]宣雨松. Unity3D游戲開(kāi)發(fā)[M]. 2版. 北京:人民郵電出版社,2016.
[17]Dalvand M M,Nahavandi S. Teleoperation of ABB industrial robots[J]. Industrial Robot: An International Journal,2014,41(3):286-295.
Design of Real-Time 3D Digital-Twin Terminal for Robot System Based on Unity
CHEN Youpeng,LI Huijun,WANG Ruichao,GAO Xiang,ZHANG Xiang
(Faculty of Intelligent Manufacturing, Wuyi University, Jiangmen 529020, China)
A digital twin terminal system is designed with robots as core motion components. The digital twin system can not only help safety administrator to monitor equipment, but also improve the safety and controllability of the unmanned factory. Taking Unity as the virtual reality platform development framework, this paper designed a real-time 3D digital-twin terminal with offline and online monitoring functions, which could also achieve development agility. A design pattern of robot script was proposed through the robot kinematics model with forward and inverse kinematics and path generation method. The joint motion of robot was realized. A server was used as the communication center between the simulation scene in Unity and the robot controllers. The real-time interaction between simulation scene and robots was realized using the socket protocol and the interface provided by robot manufacturers. It was verified to be feasible for the design scheme by the interactive test between the digital twin terminal and the RobotStudio offline programming environment.
digital-twin;unity;real-time 3D;robot
TP242.2
A
10.3969/j.issn.1006-0316.2022.10.003
1006-0316 (2022) 10-0015-08
2022-03-17
江門市創(chuàng)新科研團(tuán)隊(duì)引進(jìn)資助項(xiàng)目(2018630100090019844);江門市基礎(chǔ)與理論科學(xué)研究類科技計(jì)劃項(xiàng)目(2021030102290004572)
陳有鵬(1993-),男,安徽宿州人,碩士研究生,主要研究方向?yàn)閿?shù)字孿生、增材制造路徑規(guī)劃,E-mail:836180402@qq.com。
王瑞超(1975-),男,河南臨潁人,博士,講師,主要研究方向?yàn)楦咝Ш附蛹夹g(shù)及數(shù)值仿真,E-mail:china66988@163.com。