王磊 黃浩 廣東科貿(mào)職業(yè)學(xué)院信息與自動(dòng)化學(xué)院
隨著面向智能制造領(lǐng)域的工業(yè)機(jī)器人大量應(yīng)用,大幅度提高了企業(yè)的競(jìng)爭(zhēng)力和經(jīng)濟(jì)效益。然而,中國(guó)智造人才奇缺已經(jīng)成為制約智能制造產(chǎn)業(yè)發(fā)展的關(guān)鍵問題。由于我國(guó)在工業(yè)機(jī)器人教育及相關(guān)實(shí)訓(xùn)方面起步較晚,傳統(tǒng)工業(yè)機(jī)器人在線示教實(shí)訓(xùn),受工業(yè)機(jī)器人實(shí)訓(xùn)場(chǎng)地、課時(shí)、實(shí)訓(xùn)人數(shù)限制,再加上工業(yè)機(jī)器人設(shè)備價(jià)格昂貴、數(shù)量有限,很難保證實(shí)踐過程中每位學(xué)生進(jìn)行充分的實(shí)操。如果對(duì)設(shè)備不熟悉,操作不恰當(dāng),很容易發(fā)生設(shè)備故障和人身安全問題,從而影響學(xué)生的學(xué)習(xí)興趣和實(shí)訓(xùn)質(zhì)量。因此,工業(yè)機(jī)器人人才培養(yǎng)工作也迎來了“瓶頸期”,亟需新一代信息技術(shù)助力工業(yè)機(jī)器人信息化教學(xué)應(yīng)用與實(shí)訓(xùn)革新。在互聯(lián)網(wǎng)+背景下,以虛擬現(xiàn)實(shí)技術(shù)為切入點(diǎn),開展軟件技術(shù)專業(yè)+工業(yè)機(jī)器人專業(yè)的新工科融合研究與信息化教學(xué)改革,構(gòu)建更加符合工業(yè)互聯(lián)網(wǎng)思維的實(shí)訓(xùn)模式,更好的實(shí)現(xiàn)智能型虛擬實(shí)驗(yàn)教學(xué)與仿真實(shí)訓(xùn)。
虛擬現(xiàn)實(shí)(Virtual Reality,簡(jiǎn)稱VR)技術(shù)在工業(yè)機(jī)器人仿真實(shí)訓(xùn)中的應(yīng)用,可以通過虛擬仿真建模、立體視覺、人機(jī)交互與觸覺反饋等技術(shù),讓使用者產(chǎn)生身臨其境的仿真感受,國(guó)內(nèi)外也展開了相關(guān)的研究和應(yīng)用。機(jī)器人制造商KUKA 率先在MORPHA 項(xiàng)目中引入工業(yè)機(jī)器人增強(qiáng)現(xiàn)實(shí)示教技術(shù)。貝爾格萊德大學(xué)開發(fā)的機(jī)器人虛擬實(shí)驗(yàn)室則能夠展示工業(yè)機(jī)器人的主要特征,練習(xí)機(jī)器人的行為與操作。馬飛[3]闡述了基于Qt 和Ogre3D 的六自由度機(jī)器人虛擬實(shí)驗(yàn)室系統(tǒng)架構(gòu)模型及模塊化功能,其虛擬實(shí)驗(yàn)室三維模型建模,首先從SolidWorks 建立模型、在3DSMax 軟件中進(jìn)行模型渲染,最后導(dǎo)入Ogre3D 虛擬環(huán)境中渲染顯示虛擬機(jī)器人的一套建模方法。文獻(xiàn)[4]設(shè)計(jì)了基于Unity3D 的機(jī)器人本體拆裝的虛擬教學(xué)系統(tǒng),使用Solid-Works、3Ds Max 軟件等進(jìn)行工業(yè)機(jī)器人拆裝場(chǎng)景建模和機(jī)器人拆裝動(dòng)畫制作,以Photoshop 軟件進(jìn)行UI 界面設(shè)計(jì),利用C#語言進(jìn)行界面交互邏輯控制。文獻(xiàn)[5-7]針對(duì)虛擬現(xiàn)實(shí)技術(shù)在工業(yè)機(jī)器人實(shí)訓(xùn)領(lǐng)域中的開發(fā)與應(yīng)用,介紹了從SolidWorks、3ds Max 進(jìn)行建模,到Unity3D、HTCVIVE 進(jìn)行虛擬仿真及運(yùn)動(dòng)邏輯編程開發(fā),尤其是針對(duì)目前工業(yè)生產(chǎn)上廣泛使用的六軸機(jī)器人,可以靈活高效的滿足學(xué)生的離線示教仿真需求,具有較好的研究?jī)r(jià)值和應(yīng)用前景。
本文以瑞典ABB 公司生產(chǎn)的多用途六軸機(jī)器人IRB120 為研究和應(yīng)用對(duì)象,設(shè)計(jì)開發(fā)了工業(yè)機(jī)器人虛擬仿真實(shí)訓(xùn)系統(tǒng),該系統(tǒng)能夠?qū)崿F(xiàn)工業(yè)機(jī)器人的結(jié)構(gòu)認(rèn)知、虛擬拆裝、交互操作、沉浸式體驗(yàn)等功能,并具有界面美觀、功能實(shí)用、交互式強(qiáng)等特點(diǎn)。該系統(tǒng)以Unity3D 為開發(fā)平臺(tái),通過C#編程實(shí)現(xiàn)運(yùn)動(dòng)邏輯控制,能夠運(yùn)行在PC 端,并且可以通過HTC vive 進(jìn)行虛擬現(xiàn)實(shí)沉浸式體驗(yàn)。本系統(tǒng)在開發(fā)實(shí)現(xiàn)過程中基于以下技術(shù)路線進(jìn)行系統(tǒng)研發(fā)。
(1)分析工業(yè)機(jī)器人的實(shí)訓(xùn)需求和系統(tǒng)目標(biāo),分析機(jī)器人的基本結(jié)構(gòu)及技術(shù)參數(shù)等,明確要達(dá)到的系統(tǒng)仿真實(shí)訓(xùn)功能需求,實(shí)現(xiàn)基于互聯(lián)網(wǎng)+的工業(yè)機(jī)器人產(chǎn)品結(jié)構(gòu)認(rèn)知學(xué)習(xí)與拆裝實(shí)訓(xùn)。
(2)選定系統(tǒng)的軟硬件環(huán)境與開發(fā)平臺(tái),分析機(jī)器人的裝配結(jié)構(gòu)、運(yùn)動(dòng)規(guī)劃及示教操作,在此基礎(chǔ)上利用SolidWorks、3DSMax 等建模軟件,完成機(jī)器人的三維模型建立、裝配及貼圖渲染等操作,并進(jìn)行模型優(yōu)化與格式導(dǎo)出,生成高精度的機(jī)器人輕量化三維模型。
(3)利用Unity3d 平臺(tái)搭建機(jī)器人的實(shí)訓(xùn)場(chǎng)景,研究機(jī)器人的坐標(biāo)表示、攝像機(jī)設(shè)置、組件參數(shù)配置、燈光渲染、方位與旋轉(zhuǎn)變換操作等內(nèi)容,優(yōu)化模型在Unity3D 中的建模顯示。
(4) 利用各軟件開發(fā)包,結(jié)合C#語言,開發(fā)系統(tǒng)人機(jī)交互UI界面和運(yùn)動(dòng)邏輯控制,實(shí)現(xiàn)場(chǎng)景視角控制、拆卸動(dòng)畫開發(fā)、操作實(shí)時(shí)反饋等人機(jī)交互功能。為了更加真實(shí)的模擬實(shí)訓(xùn)現(xiàn)場(chǎng)環(huán)境,完成剛體屬性配置和碰撞檢測(cè)等,并在PC 機(jī)上進(jìn)行工業(yè)機(jī)器人仿真測(cè)試。
(5)為了增強(qiáng)用戶感知和體驗(yàn),優(yōu)化產(chǎn)品模型,研究Unity3D 渲染優(yōu)化方法、分層調(diào)用技術(shù)等,減少顯示效果損失又能降低渲染負(fù)載。通過HTC vive 等硬件進(jìn)行開發(fā)和測(cè)試,在虛擬現(xiàn)實(shí)環(huán)境中進(jìn)行人機(jī)交互操作及實(shí)時(shí)反饋,為使用者創(chuàng)造出一種逼真的沉浸式立體環(huán)境交互體驗(yàn)。
(6)將產(chǎn)品模型打包發(fā)布為PC 端應(yīng)用,借助PC電腦、VR設(shè)備等,對(duì)平臺(tái)功能進(jìn)行測(cè)試與體驗(yàn)分析。優(yōu)化產(chǎn)品模型與運(yùn)動(dòng)邏輯控制,進(jìn)行系統(tǒng)的持續(xù)改進(jìn)和最終發(fā)布。
針對(duì)工業(yè)機(jī)器人三維模型進(jìn)行部件的結(jié)構(gòu)認(rèn)知實(shí)訓(xùn),由于模型簡(jiǎn)化及格式轉(zhuǎn)換后,會(huì)失去機(jī)械建模時(shí)零部件的親子關(guān)系,需要研究工業(yè)機(jī)器人在Unity3D 下的裝配結(jié)構(gòu)及裝配關(guān)系設(shè)定,研究物理組件的配置方式和作用范圍,以實(shí)現(xiàn)機(jī)器人的運(yùn)動(dòng)控制與物理交互。虛擬拆裝交互操作較為復(fù)雜,需要實(shí)現(xiàn)包括場(chǎng)景視角的控制、拆卸動(dòng)畫與拆卸序列控制、零件高亮著色、實(shí)時(shí)信息反饋等操作。
如圖1 所示為機(jī)器人拆裝實(shí)訓(xùn)主界面的工業(yè)機(jī)器人全貌界面及某個(gè)軸的部件界面。視圖右側(cè)為結(jié)構(gòu)認(rèn)知工具欄,底部為拆卸工具欄。通過點(diǎn)擊結(jié)構(gòu)認(rèn)知工具欄的“底座”、“電源箱”、“一軸”到“六軸”、“全貌”等按鈕,可以分別查看機(jī)器人的不同軸的部件結(jié)構(gòu)信息。點(diǎn)擊“全貌”按鈕,可以恢復(fù)到整個(gè)機(jī)械臂的全貌整體。針對(duì)工業(yè)機(jī)器人全貌或者單個(gè)部件,都可以通過鼠標(biāo)滾輪進(jìn)行放大縮小,使用鼠標(biāo)左鍵進(jìn)行空間內(nèi)的旋轉(zhuǎn)操作和移動(dòng)操作等。
圖1 機(jī)器人全貌界面及某軸部件界面
通過虛擬拆裝建模與拆裝業(yè)務(wù)邏輯的實(shí)現(xiàn),實(shí)現(xiàn)對(duì)工業(yè)機(jī)器人的拆卸場(chǎng)景進(jìn)行交互操作,讓使用者掌握機(jī)器人各關(guān)節(jié)之間的層級(jí)關(guān)系及運(yùn)動(dòng)關(guān)系。由于模型簡(jiǎn)化及格式轉(zhuǎn)換后,可能會(huì)導(dǎo)致模型僅保留核心外形與運(yùn)動(dòng)機(jī)構(gòu)信息,而失去了零部件的親子關(guān)系信息,因此,還需要進(jìn)一步研究工業(yè)機(jī)器人的裝配結(jié)構(gòu)及裝配關(guān)系設(shè)定,研究物理組件的配置方式和作用范圍,才能保障正確的模擬出機(jī)器人真實(shí)物理結(jié)構(gòu)下的拆卸和組裝過程。
在視圖底部的拆卸工具欄,通過縮小和放大按鈕可以進(jìn)行縮放操作,各拆卸功能按鈕可以進(jìn)行工業(yè)機(jī)器人的拆卸和組裝控制,如圖2 所示為單步拆卸和組裝及一次性全部拆卸和組裝的顯示效果。
圖2 工業(yè)機(jī)器人拆卸和組裝的顯示效果
針對(duì)拆卸中的某一個(gè)軸部件,靠近這個(gè)軸,例如鼠標(biāo)靠近“四軸”,四軸即整體高亮顯示。鼠標(biāo)左鍵點(diǎn)擊“四軸”,進(jìn)入如圖3 所示的四軸零部件的操作界面,并可以在左側(cè)查看四軸零部件詳細(xì)信息介紹。點(diǎn)擊界面右側(cè)的結(jié)構(gòu)認(rèn)知工具欄上的某個(gè)軸按鈕,可以對(duì)顯示的單個(gè)軸部件進(jìn)行進(jìn)一步的拆卸,了解該軸部件的零配件組裝細(xì)節(jié)。
圖3 單個(gè)軸的顯示和拆卸操作界面
針對(duì)工業(yè)機(jī)器人拆卸運(yùn)動(dòng)邏輯的控制,有一些關(guān)鍵難點(diǎn)需要進(jìn)行技術(shù)攻關(guān)和實(shí)現(xiàn)。
(1)部件移動(dòng)與控制實(shí)現(xiàn)原理:把unity 主攝像頭放入物體中,成為物體的子類,鼠標(biāo)上下移動(dòng)為unity 主攝像頭移動(dòng),鼠標(biāo)左右移動(dòng)為物體左右移動(dòng),從而實(shí)現(xiàn)部件的移動(dòng)與控制。
(2)部件的變色和拖拽移動(dòng)實(shí)現(xiàn)原理:使用鼠標(biāo)監(jiān)聽方法,根據(jù)鼠標(biāo)狀態(tài)確定顏色顯示,根據(jù)鼠標(biāo)和屏幕坐標(biāo)及物體坐標(biāo)的距離,控制實(shí)現(xiàn)鼠標(biāo)拖拽操作。
(3)部件的順序拆裝實(shí)現(xiàn)原理:新建一個(gè)為下一個(gè)部件添加腳本的腳本,在鼠標(biāo)按下監(jiān)聽方法時(shí)添加觸發(fā)添加腳本的代碼,并使用布爾值讓腳本只觸發(fā)一次,保證部件之間的拆卸次序關(guān)系。
對(duì)于工業(yè)機(jī)器人部件移動(dòng)與控制邏輯的實(shí)現(xiàn),項(xiàng)目通過C#代碼進(jìn)行編程實(shí)現(xiàn),部分關(guān)鍵代碼如下。
針對(duì)日益增長(zhǎng)的工業(yè)機(jī)器人教學(xué)實(shí)訓(xùn)、技術(shù)培訓(xùn)的巨大需求,本文以IRB120 多用途輕型機(jī)器人的拆卸實(shí)訓(xùn)為研究對(duì)象,分析了工業(yè)機(jī)器人虛擬仿真實(shí)訓(xùn)系統(tǒng)開發(fā)的關(guān)鍵實(shí)現(xiàn)流程,對(duì)主要模塊的關(guān)鍵開發(fā)技術(shù)、功能界面設(shè)計(jì)及關(guān)鍵運(yùn)動(dòng)邏輯控制進(jìn)行了研究和探討。本文開發(fā)的系統(tǒng)可以進(jìn)一步擴(kuò)展到多種不同的教學(xué)應(yīng)用場(chǎng)景,例如堆垛、切削、焊接、視覺檢測(cè)等常用工業(yè)場(chǎng)景。后續(xù)研究將通過對(duì)不同制造場(chǎng)景的工業(yè)機(jī)器人實(shí)訓(xùn)應(yīng)用開發(fā),讓使用者不僅可以熟練認(rèn)知工業(yè)機(jī)器人的結(jié)構(gòu)和拆卸,也可以快速適應(yīng)不同制造場(chǎng)景下的崗位情景與技能實(shí)訓(xùn)需求,從而構(gòu)建智能型、創(chuàng)新性的工業(yè)機(jī)器人實(shí)訓(xùn)系統(tǒng)及人才培養(yǎng)實(shí)訓(xùn)新范式。