999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Unity3D的機器人仿真實驗系統

2018-03-22 11:44:14莊嚴盧阿麗楊慶
電子技術與軟件工程 2018年3期

莊嚴 盧阿麗 楊慶

摘 要 針對日益增長的機器人技術教學培訓需求,研究并設計了一款機器人仿真實驗系統。系統軟件以FANUC M-iA系列工業機器人原型為依據,使用SolidWorks和3ds Max進行建模,并將模型導入Unity3D,編程實現對機器人的操控,軟件效果逼真,可實時交互,為同類虛擬現實實驗系統的開發設計提供了經驗和參考。

【關鍵詞】Unity3D 機器人 虛擬現實

實驗是機器人技術教學中的重要環節,目前的授課,大多數是以理論講解結合視頻動畫方式進行,缺少實際操作。而真實的工業機器人類型較多、價格昂貴,對實驗環境要求嚴格,批量采購和建設存在一定的困難。隨著虛擬現實(Virtual Reality,簡稱VR)技術的不斷進步, 虛擬實驗室已得到了廣泛的認可和應用。其主要思路是通過VR技術,對實驗設備和環境的仿真模擬,讓實驗者具有親臨工作現場進行實際操作的感受。

1 系統總體分析與三維建模

根據實際教學情況,虛擬實驗系統的建立主要包括:實驗室、機器人的仿真和示教器模擬三個部分。實驗室仿真包含實驗室建模和場景漫游設計;機器人仿真包含零部件的建模組合以及運動虛擬化;示教器模擬包括操作界面的制作和控制實現等。系統的開發流程分為兩個階段:建模和運動仿真。建模階段:首先對教學單位進行調研,詳細分析用戶需求,收集實驗室和機器人的數據和素材,然后使用建模工具進行各部件建模及場景搭建;系統仿真階段:將制作完成的模型整體導入Unity3D開發環境,設計用戶界面,編寫腳本實現對機器人控制,最終進行封裝并發布。

VR系統要求對實體與環境的模擬實時逼真。早期的三維模型多數是對物體形態的簡化和抽象,隨著建模工具的不斷升級進步,用戶越來越注重視覺效果,實物精度和逼真程度也成為建模工作的重要指標。本實驗系統所需模型包括實驗室內部實景和機器人實體,經實踐和分析,選擇了3ds Max和SolidWorks作為建模工具。3ds Max功能強大,控制選項豐富,但對于機械零件建模存在不足。首先,對于形狀較規則的零件,繪制截面時,點的精準定位困難,過程相當繁瑣;其次,不規則零件建模時,分幾個部分利用不同的方法建模后再進行組合,不利于修改,并且表面圓滑處理會造成模型面數增多,文件體積增大。使用SolidWorks三維制圖軟件進行機械零件建模十分方便,模型尺寸都可用工具標注,在更改時只需改變尺寸,無需重建。對于標準部件,可先根據變量參數驅動三維結構直接得到模型,如需新建,只要更改變量重建即可,建模效率極高。雖然SolidWorks建模數據精度高,但對物體的表面渲染功能欠缺,逼真度不夠。

基于以上原因,實驗場景建模使用3ds Max完成,步驟包括:幾何體建模和編輯、設置材質及燈光效果、進行場景渲染及烘焙、最后導出.fbx格式模型文件和.tga格式的貼圖素材供Unity3D導入并使用。對于部件,先采用SolidWorks進行制作,模型保存為.STL格式文件然后再導入3ds Max進行渲染烘焙處理,同樣得到.fbx及.tga格式文件供Unity3D處理。

2 實驗環境場景設計

Unity3D是實現三維實時互動效果的綜合開發軟件,它支持多平臺發布,效果逼真,已成為開發VR項目的主流引擎。Unity3D開發效率高,但它并非建模、渲染的專門工具,一些材質效果無法直接表現。較好的處理方式就是導入3ds Max渲染和烘培過的模型即表面素材文件,通過“貼圖”方式為實體附上紋理,然后添加直射光對象呈現光照效果。本系統采用了C#語言進行腳本編寫,實現各種功能。

2.1 場景漫游的實現

虛擬實驗系統提供了漫游式的場景瀏覽界面,操作者使用鼠標控制位移和視角變化。該效果通過Unity3D引擎的內置攝像機(Camera)對象來實現。首先創建攝像機并設置其組件,然后編寫腳本使其可以呈現并控制整個場景。設計中,采用了鼠標左鍵控制視角、滾輪控制前進后退的操控方式,關鍵代碼如下:

//鼠標滾輪控制z軸視角前后方向的移動

if (Input.GetAxis("Mouse ScrollWheel") != 0){

Camera.main.transform.Translate (0, 0, Input.GetAxis ("Mouse ScrollWheel"));

}

// 按下鼠標左鍵控制視角左右方向的偏移及歐拉角度旋轉偏移

if (Input.GetMouseButton (0)) {

Camera.main.transform.Rotate (-Input.GetAxis ("Mouse Y"),

Input.GetAxis ("Mouse X"), 0);

Camera.main.transform.eulerAngles = new Vector3(Camera.main.transform.eulerAngles.x,

Camera.main.transform.eulerAngles.y,0);

}

//按下鼠標中鍵或滾輪微調視角左右方向的偏移

if (Input.GetMouseButton (2)) {

Camera.main.transform.parent.Translate (-Input.GetAxis ("Mouse X")/50,

-Input.GetAxis ("Mouse Y")/50, 0);

}

2.2 設計物理阻擋

場景設計中,物理阻擋和碰撞的處理是不可缺少的部分。否則,在漫游操作時會穿過墻壁,物體在運動時也會穿透其它障礙物,產生場景的失真。

在Unity3D中,處理碰撞和阻擋的常用方法是為實體對象添加碰撞體(Collider)和剛體(Rigidbody)組件,然后通過編寫碰撞體狀態函數來體現阻擋或碰撞的效果。場景中的各種物體都可以添加不同形狀的碰撞體,如:給桌子添加盒型碰撞體(Box Collider)、為地面添加地形碰撞體(Terrain Collider)等。

3 機器人及示教器仿真

實驗系統以FANUC M-iA 系列機器人為參照依據。該系列機器人具有6 自由度關節動作, 每個關節都由一個電機驅動控制。機器人可以根據末端裝置的不同, 從事噴涂、搬運或弧焊等不同工作。該系列機器人的外型結構基本一樣,差別在于不同型號機器人關節轉角范圍、最大轉速以及末端載重參數不同。因此,在進行運動仿真設計時,要結合不同型號的性能進行模擬。

3.1 機器人運動仿真

Unity3D 可將多個模型組合到一個預制體(Prefabs)中,組合后的預制體即為一個整體。邏輯上可以把預制體當作一個父對象來處理,當父對象運動時,它包含的每個子對象都會做同樣的運動,虛擬機器人的運動正是通過這樣的方式來實現的。機器人的手臂及手腕的運動取決于6個關節的旋轉,一方面需將部件合理地組合成預制體,并確定它們相互間的層級關系;另一方面正確設置各預制體的旋轉軸,編寫腳本使其以及以指定的方向和速度旋轉。即操作指令發出后,聯動的預設體及其子部件一起沿指定中心軸旋轉,從而呈現機器人的各種動作。

實際機器人具有6個旋轉關節。在創建預制體時,關節J1~J6分別對應預制體j1~j2。 J1的旋轉軸為Y 軸,J2、J3、J5 的旋轉軸皆為 Z軸,J4、J6的旋轉軸為X 軸。機器人外形、關節旋轉方向、各預制體及部件的層級關系如圖1所示。

機器人手臂運動的J2關節部分腳本代碼如下(其它關節運動的處理方式相同):

switch (button_name) {

case"j2_0"://鼠標點擊了示教器“+Y”按鈕,J2手臂抬起

static_go.j_2.Rotate (0, 0, -rotate_speed(2));

break; //鼠標點擊了示教器“-Y”按鈕,J2手臂抬起

case"j2_1"://鼠標點擊了 按鈕

static_go.j_2.Rotate (0, 0,rotate_speed(2));

break;

}

3.2 示教器模擬

示教器是應用軟件與機器人之間的接口裝置,通過電纜與控制柜連接,可以直接手動控制機器人的運動,也可以通過創建程序并測試校正的方式對機器人示教,以完成姿態確認和特定的作業任務。本實驗系統使用UGUI圖形用戶界面方法,參照 FANUC示教器的控制面板,模擬了虛擬機器人的操作界面,主要實現步驟如下:

(1)創建Canvas(畫布)對象,并在右下角嵌入示教器鍵盤圖像資源;

(2)在畫布左下角添加圖像(Image)對象,并為圖像對象添加6組文本(Text)及輸入欄(Input Field)子對象用于接收數據,分別用于控制相對應關節的旋轉速度。

(3)編寫腳本通過在文本輸入欄接收轉速數據,將輸入的字符轉換成數值傳遞給運動控制函數,從而調節6個關節旋轉速度,部分關鍵代碼如下:

float rotate_speed(int i){

try{ return float.Parse(static_go.cav.GetChild(1).GetChild(0).GetChild(i).GetComponent().text)/5;

}catch{

return 1.0f/5;

}

}

完成后的交互界面效果如圖2所示。

4 結束語

虛擬實驗室具有廣闊的應用前景,本文設計的實驗系統,效果清晰逼真,操作簡單,

最后以Web Player形式發布,支持基于Web頁面的遠程訪問,滿足了不同條件的學習需求,在工業機器人教學及培訓方面具有一定的實用價值和拓展空間,同時也為類似產品的開發提供了參考依據。

參考文獻

[1]李仕強,王水平,李翔.基于Web的虛擬實驗互動教學平臺研究與設計[J].實驗技術與管理,2012,29(11):90-93.

[2]周素萍,黃昆,張小瑞,楊松.虛擬仿真平臺下彈跳機器人模型的設計和實現[J].測控技術,2014,33(10):126-128.

[3]劉宇軒.基于Unity3D的工業機器人虛擬操作系統的研究與實現[J].計算機與數字工程,2017,45(08):1615-1619.

[4] 劉謀玉,汪地,姜海龍.基于Unity3D 的機器人仿真和遙操作系統研究[J].工業控制計算機,2016,29(09):97-99.

[5]潘俊浩,卓勇,侯亮,卜祥建.一種基于Unity3d的工業機器人示教系統設計方法[J].組合機床與自動化加工技術,2017(07):110-115.

作者簡介

莊嚴(1969-),男,江蘇省南京市人。碩士學位。講師。主要研究方向為圖形圖像處理,虛擬仿真技術。

作者單位

南京工程學院計算機工程學院 江蘇省南京市 211167

主站蜘蛛池模板: 国产噜噜噜视频在线观看| 毛片免费高清免费| 国产国产人免费视频成18| 国产精品妖精视频| 免费又黄又爽又猛大片午夜| 亚洲成人在线网| 538精品在线观看| 精品伊人久久大香线蕉网站| 黄色一及毛片| 大学生久久香蕉国产线观看| 色妞永久免费视频| 国产精品第一区| 日韩a级毛片| 色婷婷综合激情视频免费看| P尤物久久99国产综合精品| 无码aⅴ精品一区二区三区| a毛片免费在线观看| 日韩欧美视频第一区在线观看| 国产农村妇女精品一二区| 91精品网站| 91色综合综合热五月激情| 精品国产中文一级毛片在线看| 老熟妇喷水一区二区三区| 91蜜芽尤物福利在线观看| 亚洲乱码精品久久久久..| 国产精品九九视频| 欧美97色| 福利国产微拍广场一区视频在线| 曰AV在线无码| 国产丰满大乳无码免费播放| 久一在线视频| 午夜国产精品视频黄| 97超级碰碰碰碰精品| 9久久伊人精品综合| 干中文字幕| 国产老女人精品免费视频| 狂欢视频在线观看不卡| 亚洲精品中文字幕午夜| 国产成年女人特黄特色大片免费| 国精品91人妻无码一区二区三区| 伊在人亚洲香蕉精品播放| 毛片大全免费观看| 久久久久亚洲精品无码网站| 国产二级毛片| 毛片在线看网站| 国产迷奸在线看| 亚洲成A人V欧美综合| 中文字幕亚洲综久久2021| 久久久噜噜噜| 真实国产精品vr专区| 亚洲欧美在线看片AI| 欧美性久久久久| 97视频在线精品国自产拍| 国产在线观看一区二区三区| 亚洲综合九九| 亚洲婷婷丁香| 秋霞国产在线| 久久青草精品一区二区三区| 强奷白丝美女在线观看| 久久永久免费人妻精品| 欧美三级视频在线播放| 欧美激情福利| 韩日无码在线不卡| 91精品国产自产91精品资源| 亚洲乱强伦| 日韩大片免费观看视频播放| 中文国产成人精品久久| 日韩精品成人网页视频在线| 国产人免费人成免费视频| 成人在线观看一区| 国产精品9| 四虎影视无码永久免费观看| 操操操综合网| 毛片久久网站小视频| 国产美女叼嘿视频免费看| 欧洲极品无码一区二区三区| 午夜精品区| 免费一极毛片| 亚洲福利片无码最新在线播放| 国产综合色在线视频播放线视| 国产成人精品综合| 国产精品视频观看裸模|