最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

基于Unity3D的机器人物料搬运VR仿真系统开发

IT圈 admin 26浏览 0评论

2024年3月10日发(作者:拱晗玥)

^

mmmm

2021年第01期

(总第217期)

基于

Unity

3

D

的机器人物料搬运

VR

仿真系统开发

王磊

,

钱英军,黄浩

(

广东科贸职业学院信息与自动化学院,广东广州

510430)

摘要:针对日益增长的工业机器人教育实训需求,文章构建了基于

Unity

3

D

引擎的机器人物料搬运

VR

仿真系统,实现

了虚拟现实漫游场景搭建,研究了堆垛应用场景下的运动控制逻辑,开展了机器人实训系统虚拟现实仿真实训研究,开

发的系统完全模拟真实环境下的各种特性,使得使用者对机器人的使用认知、场景仿真和实训教学朝着智能化、虚拟化、

交互式的方式不断发展,进一步提升实训教学质量。

关键词:工业机器人;物料搬运;

VR

仿真实训;

Unity

3

D

中图分类号

:TP

391.9 文献标识码

:B

文章编号= 2096-9759(2021)01-0018-03

〇引言

Unity

3

D

是用于开发交互式三维场景和集成游戏弓丨擎的

图形化开发工具,其开发的产品可发布漫游效果至

PC

And

­

roid

IOS

Windows

mobile

等平台 ,也可 以使用

Unity

web

play

-

er

插件来发布到浏览器端通过网页浏览,并支持

VR

设备进行

虚拟现实体验。

Unity

3

D

可以使用

javascripts

C

#等程序设计

语言编写运动逻辑控制脚本,以实现

UI

界面编程和复杂的运

动逻辑控制,并支持使用

Java

Kotlin

源码文件作为插件直

接导入

Unity

工程中使用,支持操作

Mysql

数据库。

虚拟现实

(Virtual

Reality

,简称

VR

)是一种高级的人机交

互系统,

VR

技术综合运用了计算机的虚拟仿真、人机交互、立

体视觉、触觉反馈等技术,通过创建交互式三维动态实景漫游

及运动逻辑仿真控制,高度逼真地模拟物体在不同环境中的

视、听、动等行为,使用者能产生身临其境感的交互式场景仿

真感受。当前主流的

VR

设备,包括

VR

眼镜

、HTC

Vive

头盔、

此,基于

IRB

120的工业机器人实训平台也是高职院校学习机

器人的重要实训设备。但是工业机器人的应用场景众多,受

实训场地、设备成本、实训人数、实训安全限制,并不能完全满

足实训需求。因此,需要通过虚拟仿真实验教学项目建设,满

足不同实训工业场景下的实训需求,全力推进现代信息技术

与实验教学项目深度融合,打破机器人实验教学时间和空间

的限制,全面提升学生的学习兴趣及实训教学质量。

国内在机器人实训教学方面进行了不断的研宄与探索。

张克敏[1]实现了基于

VR

的机器人临场感仿真实验平台,操作

者能通过三维交互设备将人手的运动数据映射到虚拟场景中,

并对虚拟机器人进行虚拟操作,同时虚拟场景和机器人反馈数

据给三维交互设备,该系统通过

Visual

Studio

2008、0

pen

GL

形库和

Falcon

数据库,结合

MFC

类库开发,通过

Falcon

实现

人机交互。赵洪利等基于

Unity

3

D

KINECT

的交互接口设

计,实现虚拟维修环境下虚拟人进行航空设备相关部件维修操

作。刘俊等®使用

Unity

3

D

HTCvive

进行工业机器人

VR

环境

下虚拟现实编程仿真开发。阎汉生等[4]基于

Unity

3

D

平台,采

Rhino

Creo

等建模工具,使用

C

#语言实现交互功能,实现

Web

网站形式的机器人产品结构认知虚拟实验室,能够满

足在

PC

端和移动端的实训操作。针对目前工业生产上广泛使

用的六轴机器人,文献[5-7]介绍了从

SolidWorks

、3

ds

Max

模,到

Unity

3

D

HTCVIVE

进行虚拟仿真及运动逻辑编程开发’

如何灵活高效的满足学生的虚拟仿真实训需求。通过分析工

业机器人的实训需求,以工业机器人的物料搬运场景为教学应

Gear

VR

HoloLens

全息眼镜等,都能通过

Unity

3

D

进行程序

开发,并提供了原生开发支持,其开发的

VR

系统具有多感知

性、交互性、真实性等优势,已广泛应用于教育、交通、制造、娱

乐等各领域中的

VR

产品开发。

目前工业机器人广泛应用于搬运、焊接、装配、喷涂、压铸

及机加工等制造工序上,例如

IRB

120六轴机器人专为柔性自

动化的制造行业而设计,是

ABB

系列最小的多用途机器人,

具有质量轻,动作灵活,控制精度高的特性,是物料搬运、包装、

装配、涂胶等工业应用的理想选择,具有很强的通用性强。因

收稿日期

= 2020-12-08

基金项目:

2020

年广东省科技创新战略专项资金

(

攀登计划

)

项目

VR

视角下基于深度学习的工业机器人虚拟实验及学生实训考评画像研

宄与系统开发(

pdjh2020a0997); 2020

年度广东省普通高校特色创新项目基于数据驱动的数字孪生与人工智能融合应用关键技术研宄

(2020KTSCX250); 2019

年教育部科技发展中心高校产学研创新基金新一代信息技术创新项目面向

ABB_IRB120

机器人的虚拟现实示教

实训系统研宄

(2018A04015); 2020

年广州市高校创新创业教育项目面向装备制造的虚拟仿真

(VR)

人才仓

"li

新创业课程体系建设。

作者简介

:

王磊(

1981-),

男,河南开封人,广东科贸职业学院信息与自动化学院副教授,博士

,

研宄方向为软件技术与理论,智能优化算法,

[13]

Diego

D

,

Daniele

F

,

Emanuele

P

,

et

al

.

A

Combined

One

- [16]

Rakhman

AZ

,

Nugroho

LE

,

Widyawan

,

et

al

.

Fall

detection

Class

SVM

and

Template-Matching

Approach

for

User

-

system

using

accelerometer

and

gyroscope

based

on

smar^hone

Aided

Human

Fall

Detection

by

Means

of

Floor

Acoustic

[

C

]//

International

Conference

on

Information

Technology

,

Com

­

Features

[

J

].

Computational

Intelligence

and

Neuroscience

,

puter

and

Electrical

Engineering

.

IEEE

2014:99-104.

2017, 2017:1-13.

[17] 徐娜.智能服装预防老人跌倒[

J

].科学与文化,2008(10):

13-14.

[14] 张大钧,兰恒荣,吴幼龙.基于超声多普勒效应的浴室跌倒

检测[

J

].上海师范大学学报(自然科学版),2018,

v

.47(02):

[18] 席旭刚,武昊,左静,罗志增.基于

sEMG

与足底压力信号融合

92-96.

的跌倒检测研宄[

J

].仪器仪表学报,2015,36(09):2044-2049.

[15] 彭亚平,贺乾格,柯希垚,等

.一

种基于加速度传感器的摔倒

[19] 闫玉娟,李化,赵菊敏,等.基于

CRFID

和模式识别的跌倒

检测腰带[

J

].电子测量技术,2018(11).检测系统[

J

].计算机工程,2019(6):297-302.

18

Changjiang Information & Communications

用,本文旨在基于

Unity

平台进行虚拟仿真系统开发与实现,

为使用者创造出一种逼真的立体工厂环境下的沉浸式体验。

1系统开发路线

1.1系统设计目标

本文以瑞典

ABB

公司生产的

IRB

120工业机器人及其物

料搬运场景为仿真对象,基于

Unity

3

D

虚拟现实设计及

C

#逻

辑编程,开发

VR

视角下一款工业机器人物料搬运仿真系统软

件,并对基于

Unity

3

D

VR

仿真关键技术进行了较为深入的

研究。本系统的开发使用

Unity

平台能够将机器人仿真对象

的形态、表观和功能有机结合起来,实现机器人完全的运动仿

真模拟。在模型上设置感知功能部件,如碰撞点、接触面、摩

擦力等,根据对象的工作原理,编写

C

#脚本程序控制部件的运

动逻辑动作反应,使得应用场景下的机器人模型与虚拟环境

中的其它对象产生相互作用,完全模拟真实机器人的功能和

运动特性。

1.2系统开发流程

本系统开发的机器人物料搬运实训仿真系统,进行了软

件需求分析设计和具体开发流程实现,如下图1所示,其步骤

概括起来包括,首先进行工业机器人的建模与虚拟现实场景

搭建,实现机器人物料搬运漫游场景开发;然后进行运动逻辑

控制设计,并分析部件的刚体特性并进行模拟

:接下

来开发

UI

界面,实现人机交互等系统功能;最后进行系统测试和改进〇

项目总体硏究步驟^内容

图1项目总体研究步骤和内容

2系统漫游场景设计

本产品的开发工具为

Unity

2018,编程语言为

C

#•本系

统开发的产品可以发布为

windows

系统的

exe

应用,在

winlO

系统下,直接打开可执行的应用文件即可运行。本作品可以

发布为安卓应用,生成

apk

文件,将

apk

文件复制到

android

备的平板、手机上,安装文件后即可直接运行。本作品也可以

导入

HTC

.

Unity

.

Plugin

插件,直接在

Unity

平台上,通过使用

HTC

vive

头盔进行沉浸式虚拟现实体验。

项目采用了主流三维软件

SolidWorks

、3

DMax

等进行参数

化建模,对需要导入

Unity

3

D

的三维模型进行模型格式转换,

生成高精度的轻量化机器人三维模型。按照机器人应用场景

原型,进行贴图、材质、灯光、位置的优化设置,以实现精细化模

型的显示性能优化,以减少显示效果损失又能降低渲染负载。

基于

Unity

3

D

引擎的内机对象,开发漫游式的应用场景,

设计浏览界面,操作者可以使用鼠标控制位移和视角变化.

点击“机器人搬运实训系统”图标,进入如图2所示系统

19

王磊等

:

基于

Unity3D

的机器人物料搬运

VR

仿真系统开发

主界面,可以看到机器人搬运实训场景全貌,物料箱体在传送

带上进行输送,机器人进行堆垛,当箱体达到一定数量后,传

送带输送至指定位置,叉车进行搬运。主视图底部为工具栏,

可以点击放大、缩小按钮,或者操作鼠标滚轮对模型进行相应

缩放操作。

图2机器人搬运实训主界面

在机器人搬运过程中,有提示文字对各个执行过程进行

提示,例如如图2上机械臂上方有“抓取搬运”字样,其他执行

过程亦如此提示。当累计抓取的货物组成一次的搬运集合后,

此刻叉车会自动搬运货物,并离开生产线进行卸货。

如图3所示,点击“自动视角打开”按钮,可以进行视图自

动旋转,从各方位进行自动查看,再次点击“自动视角关闭”按

钮,则关闭自动视图功能。点击右上角菜单,可以进行“返回”,

“返回主界面“退出程序的”三个操作。

3

模型自动视图

Changjiang Information & Communications

3运动逻辑关键技术实现

3.1机械臂码垛运动路径控制

关键难点:对机械臂进行高精度的运动控制,并旋转机械

臂到指定位置才能进行抓取操作。

解决方案:为每个旋转子部件写入一个节点脚本,节点

脚本传输数据给写好固定节点脚本的父部件,固定节点脚

本的父部件负责根据抓取位置的变化而改变每个子部件的

节点脚本,通过改变抓取位置来实现机械臂的高精度的运

动控制,从而提高了动画的制作效率,大幅度减少编码的工

作量。

3.2码操过程中货物对象池的管理

关键难点:在货物码垛过程中,货物对象的产生与关闭需

要进行集中式管理,每当创建箱体对象时,箱体产生的位置不

变,但是需要对箱体运动路线进行规划控制。

解决方案:编写一个管理货物对象的管理器,当机械臂抓

取时调用此管理器,以产生新的货物对象,当货物到达指定位

置时,关闭货物对象,以此循环。对箱子运动路线编写控制脚

本,规划箱子运动场景控制。

3.3机械臂精确抓取和卸载货物控制

关键难点:机械臂需要货物停放在合适的位置才能执行

抓取,但货物有多种停放情况,机械臂如何抓取货物后,在放

下货物到指定位置。

解决方案:设置一个停放点坐标,每次货物都要停放在指

定坐标的位置,以解决货物停放问题。以抓取操作执行过程

的时间为基准,在抓取货物时进行计时,当达到预定时间后,

作为放下货物的判断条件,从而放下货物。

该关键功能点通过

C

#«码进行编程实现的部分关键代码

如下。

//货物状态

public

GoodsState

state

;

//机器人抓取

bool

Gripbl

=

false

;

//累加时间

float

timeCalculate

= 0;

void

FixedUpdate

〇{

switch

(

state

) {

case

GoodsState

.

move

:

movementO

;

break

;

case

GoodsState

.

grip

:

catchGoO

;

break

;

}

}

void

movementO

{

//开始移动

oii

=

Vector

3.

MoveTowards

(

trans

-

fonaposition

,

catchTransfonn

.

positiQn

,

moveSpeed

*

Time

.

deltaTime

);

if

(

on

==

catchTransform

.

position

){

gameManager

.

gripani

();

state

=

GoodsState

.

grip

;

}

}

void

catchGo

(){

if

(

on

=

grip

.

position

){

王磊等

:

基于

Unity3D

的机器人物料搬运

VR

仿真系统开发

Gripbl

=

true

;

}

if

(

Gripbl

) {

timeCalculate

+=

Time

.

deltaTime

;

on

=

grip

.

position

;

if(timeCalculate

>

putTime

){

//机械臂动画开始为〇

gameManager

.

zeroani

();

//货物状态为静止

state

=

GoodsState

.

static

;

//下一个货物开启移动

gameManager

.

createCargo

();

//货物到达货物板计数

ban

.

addCargoO

;

//计数器归零

timeCalculate

= 0;

Gripbl

=

false

;

public

void

recover

(){

state

=

GoodsState

.

move

;

on

=

startTransform

.

position

;

}

4结语

本文探讨了基于

Unity

3

D

的机器人物料搬运系统设计

与开发,该系统能够为用户提供生产线上货物搬运和堆垛

仿真实训,通过三维模型场景搭建、运动控制逻辑编程等,

说明了系统开发中的关键技术和具体实现方法。未来,将

进一步结合

VR

视角下的教育实训应用,通过构建面向新

工科的新型虚拟实验教学资源体系与仿真平台,进一步为

机器人实训教学中存在的痛点问题提供可以借鉴的解决思

路。

参考文献:

[1] 张克敏.基于虚拟现实的机器人仿真研宄[

D

].重庆:重庆大

学,2012.

[2] 赵洪利,胡周兵.基于

unity

交互式虚拟维修仿真系统的研

究[

J

].机械工程与自动化,2016,195

W

:88-90.

[3] 刘俊,杨振国,董文杰,许二娟.基于

Unity

3

D

&

HTCvive

工业机器人虚拟现实编程教学仿真系统的研究与开发[

J

].

轻工科技,2018,34(8):93-95.

[4] 阎汉生,曾峰,龙宇辉.基于

Unity

3

D

的产品结构认知虚拟

实验室构建[

J

].实验室研宄与探索,2017.36⑶:117-121.

[5] 董浩,平贵忠,祝绘青,韩古亚琦.基于虚拟现实的机器人实

操教学系统开发[

J

].2018,37⑶:80-85.

[6] 庄严,卢阿丽,杨庆.基于

Unity

3

D

的机器人仿真实验系统

[

J

].电子技术与软件工程,2018,3:113-114.

[7] 雍玖,王阳萍,岳彪,等.基于增强现实技术的虚拟仿真实验

教学资源体系建设研究[

J

].工业和信息化教育,2019,10:

85-89.

20

2024年3月10日发(作者:拱晗玥)

^

mmmm

2021年第01期

(总第217期)

基于

Unity

3

D

的机器人物料搬运

VR

仿真系统开发

王磊

,

钱英军,黄浩

(

广东科贸职业学院信息与自动化学院,广东广州

510430)

摘要:针对日益增长的工业机器人教育实训需求,文章构建了基于

Unity

3

D

引擎的机器人物料搬运

VR

仿真系统,实现

了虚拟现实漫游场景搭建,研究了堆垛应用场景下的运动控制逻辑,开展了机器人实训系统虚拟现实仿真实训研究,开

发的系统完全模拟真实环境下的各种特性,使得使用者对机器人的使用认知、场景仿真和实训教学朝着智能化、虚拟化、

交互式的方式不断发展,进一步提升实训教学质量。

关键词:工业机器人;物料搬运;

VR

仿真实训;

Unity

3

D

中图分类号

:TP

391.9 文献标识码

:B

文章编号= 2096-9759(2021)01-0018-03

〇引言

Unity

3

D

是用于开发交互式三维场景和集成游戏弓丨擎的

图形化开发工具,其开发的产品可发布漫游效果至

PC

And

­

roid

IOS

Windows

mobile

等平台 ,也可 以使用

Unity

web

play

-

er

插件来发布到浏览器端通过网页浏览,并支持

VR

设备进行

虚拟现实体验。

Unity

3

D

可以使用

javascripts

C

#等程序设计

语言编写运动逻辑控制脚本,以实现

UI

界面编程和复杂的运

动逻辑控制,并支持使用

Java

Kotlin

源码文件作为插件直

接导入

Unity

工程中使用,支持操作

Mysql

数据库。

虚拟现实

(Virtual

Reality

,简称

VR

)是一种高级的人机交

互系统,

VR

技术综合运用了计算机的虚拟仿真、人机交互、立

体视觉、触觉反馈等技术,通过创建交互式三维动态实景漫游

及运动逻辑仿真控制,高度逼真地模拟物体在不同环境中的

视、听、动等行为,使用者能产生身临其境感的交互式场景仿

真感受。当前主流的

VR

设备,包括

VR

眼镜

、HTC

Vive

头盔、

此,基于

IRB

120的工业机器人实训平台也是高职院校学习机

器人的重要实训设备。但是工业机器人的应用场景众多,受

实训场地、设备成本、实训人数、实训安全限制,并不能完全满

足实训需求。因此,需要通过虚拟仿真实验教学项目建设,满

足不同实训工业场景下的实训需求,全力推进现代信息技术

与实验教学项目深度融合,打破机器人实验教学时间和空间

的限制,全面提升学生的学习兴趣及实训教学质量。

国内在机器人实训教学方面进行了不断的研宄与探索。

张克敏[1]实现了基于

VR

的机器人临场感仿真实验平台,操作

者能通过三维交互设备将人手的运动数据映射到虚拟场景中,

并对虚拟机器人进行虚拟操作,同时虚拟场景和机器人反馈数

据给三维交互设备,该系统通过

Visual

Studio

2008、0

pen

GL

形库和

Falcon

数据库,结合

MFC

类库开发,通过

Falcon

实现

人机交互。赵洪利等基于

Unity

3

D

KINECT

的交互接口设

计,实现虚拟维修环境下虚拟人进行航空设备相关部件维修操

作。刘俊等®使用

Unity

3

D

HTCvive

进行工业机器人

VR

环境

下虚拟现实编程仿真开发。阎汉生等[4]基于

Unity

3

D

平台,采

Rhino

Creo

等建模工具,使用

C

#语言实现交互功能,实现

Web

网站形式的机器人产品结构认知虚拟实验室,能够满

足在

PC

端和移动端的实训操作。针对目前工业生产上广泛使

用的六轴机器人,文献[5-7]介绍了从

SolidWorks

、3

ds

Max

模,到

Unity

3

D

HTCVIVE

进行虚拟仿真及运动逻辑编程开发’

如何灵活高效的满足学生的虚拟仿真实训需求。通过分析工

业机器人的实训需求,以工业机器人的物料搬运场景为教学应

Gear

VR

HoloLens

全息眼镜等,都能通过

Unity

3

D

进行程序

开发,并提供了原生开发支持,其开发的

VR

系统具有多感知

性、交互性、真实性等优势,已广泛应用于教育、交通、制造、娱

乐等各领域中的

VR

产品开发。

目前工业机器人广泛应用于搬运、焊接、装配、喷涂、压铸

及机加工等制造工序上,例如

IRB

120六轴机器人专为柔性自

动化的制造行业而设计,是

ABB

系列最小的多用途机器人,

具有质量轻,动作灵活,控制精度高的特性,是物料搬运、包装、

装配、涂胶等工业应用的理想选择,具有很强的通用性强。因

收稿日期

= 2020-12-08

基金项目:

2020

年广东省科技创新战略专项资金

(

攀登计划

)

项目

VR

视角下基于深度学习的工业机器人虚拟实验及学生实训考评画像研

宄与系统开发(

pdjh2020a0997); 2020

年度广东省普通高校特色创新项目基于数据驱动的数字孪生与人工智能融合应用关键技术研宄

(2020KTSCX250); 2019

年教育部科技发展中心高校产学研创新基金新一代信息技术创新项目面向

ABB_IRB120

机器人的虚拟现实示教

实训系统研宄

(2018A04015); 2020

年广州市高校创新创业教育项目面向装备制造的虚拟仿真

(VR)

人才仓

"li

新创业课程体系建设。

作者简介

:

王磊(

1981-),

男,河南开封人,广东科贸职业学院信息与自动化学院副教授,博士

,

研宄方向为软件技术与理论,智能优化算法,

[13]

Diego

D

,

Daniele

F

,

Emanuele

P

,

et

al

.

A

Combined

One

- [16]

Rakhman

AZ

,

Nugroho

LE

,

Widyawan

,

et

al

.

Fall

detection

Class

SVM

and

Template-Matching

Approach

for

User

-

system

using

accelerometer

and

gyroscope

based

on

smar^hone

Aided

Human

Fall

Detection

by

Means

of

Floor

Acoustic

[

C

]//

International

Conference

on

Information

Technology

,

Com

­

Features

[

J

].

Computational

Intelligence

and

Neuroscience

,

puter

and

Electrical

Engineering

.

IEEE

2014:99-104.

2017, 2017:1-13.

[17] 徐娜.智能服装预防老人跌倒[

J

].科学与文化,2008(10):

13-14.

[14] 张大钧,兰恒荣,吴幼龙.基于超声多普勒效应的浴室跌倒

检测[

J

].上海师范大学学报(自然科学版),2018,

v

.47(02):

[18] 席旭刚,武昊,左静,罗志增.基于

sEMG

与足底压力信号融合

92-96.

的跌倒检测研宄[

J

].仪器仪表学报,2015,36(09):2044-2049.

[15] 彭亚平,贺乾格,柯希垚,等

.一

种基于加速度传感器的摔倒

[19] 闫玉娟,李化,赵菊敏,等.基于

CRFID

和模式识别的跌倒

检测腰带[

J

].电子测量技术,2018(11).检测系统[

J

].计算机工程,2019(6):297-302.

18

Changjiang Information & Communications

用,本文旨在基于

Unity

平台进行虚拟仿真系统开发与实现,

为使用者创造出一种逼真的立体工厂环境下的沉浸式体验。

1系统开发路线

1.1系统设计目标

本文以瑞典

ABB

公司生产的

IRB

120工业机器人及其物

料搬运场景为仿真对象,基于

Unity

3

D

虚拟现实设计及

C

#逻

辑编程,开发

VR

视角下一款工业机器人物料搬运仿真系统软

件,并对基于

Unity

3

D

VR

仿真关键技术进行了较为深入的

研究。本系统的开发使用

Unity

平台能够将机器人仿真对象

的形态、表观和功能有机结合起来,实现机器人完全的运动仿

真模拟。在模型上设置感知功能部件,如碰撞点、接触面、摩

擦力等,根据对象的工作原理,编写

C

#脚本程序控制部件的运

动逻辑动作反应,使得应用场景下的机器人模型与虚拟环境

中的其它对象产生相互作用,完全模拟真实机器人的功能和

运动特性。

1.2系统开发流程

本系统开发的机器人物料搬运实训仿真系统,进行了软

件需求分析设计和具体开发流程实现,如下图1所示,其步骤

概括起来包括,首先进行工业机器人的建模与虚拟现实场景

搭建,实现机器人物料搬运漫游场景开发;然后进行运动逻辑

控制设计,并分析部件的刚体特性并进行模拟

:接下

来开发

UI

界面,实现人机交互等系统功能;最后进行系统测试和改进〇

项目总体硏究步驟^内容

图1项目总体研究步骤和内容

2系统漫游场景设计

本产品的开发工具为

Unity

2018,编程语言为

C

#•本系

统开发的产品可以发布为

windows

系统的

exe

应用,在

winlO

系统下,直接打开可执行的应用文件即可运行。本作品可以

发布为安卓应用,生成

apk

文件,将

apk

文件复制到

android

备的平板、手机上,安装文件后即可直接运行。本作品也可以

导入

HTC

.

Unity

.

Plugin

插件,直接在

Unity

平台上,通过使用

HTC

vive

头盔进行沉浸式虚拟现实体验。

项目采用了主流三维软件

SolidWorks

、3

DMax

等进行参数

化建模,对需要导入

Unity

3

D

的三维模型进行模型格式转换,

生成高精度的轻量化机器人三维模型。按照机器人应用场景

原型,进行贴图、材质、灯光、位置的优化设置,以实现精细化模

型的显示性能优化,以减少显示效果损失又能降低渲染负载。

基于

Unity

3

D

引擎的内机对象,开发漫游式的应用场景,

设计浏览界面,操作者可以使用鼠标控制位移和视角变化.

点击“机器人搬运实训系统”图标,进入如图2所示系统

19

王磊等

:

基于

Unity3D

的机器人物料搬运

VR

仿真系统开发

主界面,可以看到机器人搬运实训场景全貌,物料箱体在传送

带上进行输送,机器人进行堆垛,当箱体达到一定数量后,传

送带输送至指定位置,叉车进行搬运。主视图底部为工具栏,

可以点击放大、缩小按钮,或者操作鼠标滚轮对模型进行相应

缩放操作。

图2机器人搬运实训主界面

在机器人搬运过程中,有提示文字对各个执行过程进行

提示,例如如图2上机械臂上方有“抓取搬运”字样,其他执行

过程亦如此提示。当累计抓取的货物组成一次的搬运集合后,

此刻叉车会自动搬运货物,并离开生产线进行卸货。

如图3所示,点击“自动视角打开”按钮,可以进行视图自

动旋转,从各方位进行自动查看,再次点击“自动视角关闭”按

钮,则关闭自动视图功能。点击右上角菜单,可以进行“返回”,

“返回主界面“退出程序的”三个操作。

3

模型自动视图

Changjiang Information & Communications

3运动逻辑关键技术实现

3.1机械臂码垛运动路径控制

关键难点:对机械臂进行高精度的运动控制,并旋转机械

臂到指定位置才能进行抓取操作。

解决方案:为每个旋转子部件写入一个节点脚本,节点

脚本传输数据给写好固定节点脚本的父部件,固定节点脚

本的父部件负责根据抓取位置的变化而改变每个子部件的

节点脚本,通过改变抓取位置来实现机械臂的高精度的运

动控制,从而提高了动画的制作效率,大幅度减少编码的工

作量。

3.2码操过程中货物对象池的管理

关键难点:在货物码垛过程中,货物对象的产生与关闭需

要进行集中式管理,每当创建箱体对象时,箱体产生的位置不

变,但是需要对箱体运动路线进行规划控制。

解决方案:编写一个管理货物对象的管理器,当机械臂抓

取时调用此管理器,以产生新的货物对象,当货物到达指定位

置时,关闭货物对象,以此循环。对箱子运动路线编写控制脚

本,规划箱子运动场景控制。

3.3机械臂精确抓取和卸载货物控制

关键难点:机械臂需要货物停放在合适的位置才能执行

抓取,但货物有多种停放情况,机械臂如何抓取货物后,在放

下货物到指定位置。

解决方案:设置一个停放点坐标,每次货物都要停放在指

定坐标的位置,以解决货物停放问题。以抓取操作执行过程

的时间为基准,在抓取货物时进行计时,当达到预定时间后,

作为放下货物的判断条件,从而放下货物。

该关键功能点通过

C

#«码进行编程实现的部分关键代码

如下。

//货物状态

public

GoodsState

state

;

//机器人抓取

bool

Gripbl

=

false

;

//累加时间

float

timeCalculate

= 0;

void

FixedUpdate

〇{

switch

(

state

) {

case

GoodsState

.

move

:

movementO

;

break

;

case

GoodsState

.

grip

:

catchGoO

;

break

;

}

}

void

movementO

{

//开始移动

oii

=

Vector

3.

MoveTowards

(

trans

-

fonaposition

,

catchTransfonn

.

positiQn

,

moveSpeed

*

Time

.

deltaTime

);

if

(

on

==

catchTransform

.

position

){

gameManager

.

gripani

();

state

=

GoodsState

.

grip

;

}

}

void

catchGo

(){

if

(

on

=

grip

.

position

){

王磊等

:

基于

Unity3D

的机器人物料搬运

VR

仿真系统开发

Gripbl

=

true

;

}

if

(

Gripbl

) {

timeCalculate

+=

Time

.

deltaTime

;

on

=

grip

.

position

;

if(timeCalculate

>

putTime

){

//机械臂动画开始为〇

gameManager

.

zeroani

();

//货物状态为静止

state

=

GoodsState

.

static

;

//下一个货物开启移动

gameManager

.

createCargo

();

//货物到达货物板计数

ban

.

addCargoO

;

//计数器归零

timeCalculate

= 0;

Gripbl

=

false

;

public

void

recover

(){

state

=

GoodsState

.

move

;

on

=

startTransform

.

position

;

}

4结语

本文探讨了基于

Unity

3

D

的机器人物料搬运系统设计

与开发,该系统能够为用户提供生产线上货物搬运和堆垛

仿真实训,通过三维模型场景搭建、运动控制逻辑编程等,

说明了系统开发中的关键技术和具体实现方法。未来,将

进一步结合

VR

视角下的教育实训应用,通过构建面向新

工科的新型虚拟实验教学资源体系与仿真平台,进一步为

机器人实训教学中存在的痛点问题提供可以借鉴的解决思

路。

参考文献:

[1] 张克敏.基于虚拟现实的机器人仿真研宄[

D

].重庆:重庆大

学,2012.

[2] 赵洪利,胡周兵.基于

unity

交互式虚拟维修仿真系统的研

究[

J

].机械工程与自动化,2016,195

W

:88-90.

[3] 刘俊,杨振国,董文杰,许二娟.基于

Unity

3

D

&

HTCvive

工业机器人虚拟现实编程教学仿真系统的研究与开发[

J

].

轻工科技,2018,34(8):93-95.

[4] 阎汉生,曾峰,龙宇辉.基于

Unity

3

D

的产品结构认知虚拟

实验室构建[

J

].实验室研宄与探索,2017.36⑶:117-121.

[5] 董浩,平贵忠,祝绘青,韩古亚琦.基于虚拟现实的机器人实

操教学系统开发[

J

].2018,37⑶:80-85.

[6] 庄严,卢阿丽,杨庆.基于

Unity

3

D

的机器人仿真实验系统

[

J

].电子技术与软件工程,2018,3:113-114.

[7] 雍玖,王阳萍,岳彪,等.基于增强现实技术的虚拟仿真实验

教学资源体系建设研究[

J

].工业和信息化教育,2019,10:

85-89.

20

发布评论

评论列表 (0)

  1. 暂无评论