Unity3D Virtual Animation of Robots with Coupled and Uncoupled Mechanism
Viacute;ctor H. Andaluz1,2, Jorge S. Saacute;nchez1, Jonnathan I. Chamba3, Pauacute;l P. Romero3 Fernando A. Chicaiza1, Jose Varela2, Washington X. Quevedo1,
Cristian Gallardo2 and Luis F. Cepeda1
1 Universidad de las Fuerzas Armadas ESPE, Sangolquiacute;-Ecuador
{vhandaluz1, jssanchez, fachicaiza, wjquevedo, lfcepeda}@espe.edu.ec 2 Universidad Teacute;cnica de Ambato, Ambato-Ecuador jazjose@hotmail.es; cmgallardop@gmail.com
3 Escuela Superior Politeacute;cnica de Chimborazo, Riobamba-Ecuador
{jonnathanchamba, p_romero}@espoch.edu.ec
Abstract. This paper presents the development of the animation of robots in virtual reality environments, whose mechanisms can be coupled -the movement relies on mechanical principles-; and uncoupled mechanisms, i.e., the degrees of freedom are controlled independently via a control unit. Additionally, the present phases to transfer the design of a robot developed in a CAD tool to a virtual simulation environment without being lost the physical characteristics of the original design are showed, for which it is considered the various types of motions that the robot can perform depending on the design. Finally, shows the results obtained from the simulation of motion of a robot hexapod 18DOF and Theo Jansen mechanism.
Keywords: Virtual reality; robot simulation; Unity3D; Coupled and Uncoupled Mechanism.
Introduction
In recent years, robotics research has experienced a significant change. Research interests are moving from the development of robots for structured industrial environments to the development of autonomous mobile robots operating in unstructured and natural environments [1-8]. The advancement of technology has allowed the development of computers that support increasingly real and complex simulations in different areas of research and industry. Based on this progress, tools are designed continuously to replicate reality in completely virtual environments. One such tool is the graphic engine developed by Unity Technologies, Unity3D, which allows to develop virtual environments for a wide range of platforms [9] and operating systems.
The simulation process begins with the creation of the 3D model of the robot, considering the aspects of modeling, translation of the format and application. In modeling phase is designed the three-dimensional structure of each of the parts and
elements of the robot using a tool Computer Aided Design (CAD) [10], which pursues the physiognomic credibility of the robot taking into account the considerations that facilitate mobility for future animation effects. While the Translation CAD format phase to a supported format for Unity3D animation is achieved by additional software, due to hierarchy requirements it must contain certain elements. Finally, application phase represents the controlled movement of the 3D model in a similar way to a real environment, taking into account that certain parts move and rotate with respect to each other, for which you should consider animation techniques.
For the simulation of the 3D model, the hierarchy of the elements of the model are consider [10]. This consideration represents a set of rigid parts that are attached to other (anterior and posterior) through joints, so that in the articulated hierarchy is considered: i) Control by fixed points, taking into account that the position of the root segment in space can be allocated independently and allow to move the entire articulated figure for the space; however, sometimes the position of another segment of the hierarchy can be directly determine and hold it in place during movement; for example, when walking one foot remains in contact with the ground while the other foot is moving, and then the other foot support is changed; to reproduce this behavior can begin assigning the node representing the fixed foot as the root node, from which the position of the other segments is calculated; the root node can be change from one foot to another and rearrange the hierarchy, given that the changes made in each joint will be invested; ii) Additional restrictive ligatures, in this case the articulated structures can be combined with parameter values of the joints, so the number of degrees of freedom is reduced and it is easier to get the movements in the different parts of the structure; for example, the two arms of a human figure can move together, linking their angles by transfer functions that match.
In this context, this paper proposes the animation of coupled and uncoupled robotic mechanisms. Additionally, the phases for moving the robot from a design CAD tool to a virtual environment simulation is presented, maintaining the physical characteristics of the original design. Finally, the simulation results are presented in the Unity3D platform, where the different types of motion for a hexapod robot 18DOF (uncoupled mechanism) and other robot based on the mechanism of Theo Jansen (coupled device) formed by three mechanisms system by side and independently controlled by two DC motors are showed.
This paper is divided into 6 Sections including the Introduction. In Section 2 the control problem is formulated. Next in Section 3 the modeling of the mobile manipulator robot and the controllers design for path following are presents. While the bilateral communication between MatLab-Unity3D is present in Section 4. In Section 5 the experimental results for of autonomous control and tele-operated for a robotic arm are presented and discussed. Finally, the conclusions are given in Section 6.
Problem Formulation
The designs of robotic prototypes developed in software Computer Aided Design CAD, SolidWorks, Autodesk Inventor, among others, do not provide all the necessa
全文共55430字,剩余内容已隐藏,支付完成后下载完整资料
基于Unity3D的耦合和非耦合机器人虚拟动画设计
摘要:本论文介绍了虚拟现实环境中机器人动画的发展,能够耦合的机构——运动依赖于机械原理——而非耦合的机构,即自由度通过控制单元独立控制。此外,本文还介绍了当前阶段,将在CAD工具中开发的机器人设计转移到虚拟仿真环境而不丢失原始设计的物理特性,并考虑了机器人可以根据设计执行的各种类型的运动。最后,给出了六足18自由度机器人的运动仿真结果和西奥-詹森机构的运动仿真结果。
关键词:虚拟现实;机器人仿真;Unity3D;耦合与非耦合机构。
1.导言
近年来,机器人学研究经历了重大变化。研究兴趣正从为耦合工业环境开发机器人转向开发在非耦合和自然环境中运行的自主移动机器人。技术的进步和计算机的发展,现在计算机技术能够在不同的研究和工业领域支持越来越真实和复杂的模拟仿真。基于这一进展,不同的软件被不断地设计出在虚拟的环境中完成对现实的虚拟仿真。其中一个工具是由Unity Technologies开发的,Unity3D图形引擎,它可以为各种平台和操作系统开发虚拟环境。
从建模、格式转换和应用等方面考虑,仿真过程是从机器人三维模型的建立开始。在建模阶段,利用计算机辅助设计(CAD)来设计机器人各部件和元件的三维结构,在考虑到将来需要便于移动动画效果的因素下,再追求机器人的外观可靠性。虽然将CAD格式转换为Unity3D动画支持的格式是需要通过附加软件实现的,但由于层次结构的要求,它必须包含该步骤。最后,应用程序阶段以类似于真实环境的方式表示三维模型的受控移动,同时考虑到某些部分相对于彼此的移动和旋转,因此应考虑采用Unity的动画技术。
本文共分为六个部分,包括引言部分。在第2节中,制定出控制问题。第3节介绍了移动机械手机器人的建模和路径跟踪控制器的设计。而Matlab-Unity3D之间的双向通信在第4节中进行了介绍。第5节介绍和讨论了机器人手臂自主控制和遥控的实验结果。最后,在第6节给出了结论。
2.问题阐述
在计算机辅助设计的软件中包括solidworks、autodesk 、inventor以及其他类似的软件中开发的机器人原型,并没有为真实的3D模型及其环境的图形仿真提供所有必要的条件。仿真在人机交互、机器人与现实、沉浸的环境之间具有较强的需求,使得CAD软件的仿真功能不足以实现这一目标,因为与专业数字动画软件相比,CAD软件没有高质量的图形对模型进行贴图,因而选择Unity这款强大的游戏引擎软件。
Unity3D是面向游戏制作的主要商业图形引擎之一,在模拟和处理物理环境变量(重力、碰撞和变形等)时具有图形质量,需要一个3D模型来实现机器人环境之间更真实的交互,从而实现软件和硬件的集成,如Leap Motion、Oculus、Novint Falconmt、ROS等。
在层次函数中的模拟是考虑到每个刚性段是相对于以关节原点为中心的参考系统定义的。因此,每次更改属于层次的关节的位置时,应该:1)将坐标系从其上一个位置移动到它将连接下一段的点;2)一旦移动到该位置,必须根据关节的状态旋转坐标系。
3.三维CAD模型
SolidWorks是一款基于操作的参数化实体建模设计软件,它利用了图形化界面对于学习带来的便利性,使得初学者能够快速上手。此软件可以创建具有或不具有限制完全关联的三维实体模型,同时使用自动或用户自定义来捕获设计意图。该几何实体模型包含了边缘和模型面所需的所有表面几何和线框。
针对这项工作,本文考虑了基于提奥·詹森机构的六足机器人等的设计。Hexapod机器人由18个伺服电机dynamicel ax-12a组成,它们能够反馈到控制单元的控制信息有:速度、温度、位置、扭矩,根据运行的控制标准进行独立控制。六足机器人的结构有一个中央底座,位于中央底座上,控制系统、进给和六个伺服电机固定,用于尖端轴机器人,如图1所示。
图2所示为六足机器人的六个末端之一,六足机器人具有三个自由度(包括位于中央底座的伺服电机)。这种设计的目的是让机器人在光滑或不平坦的表面上移动,即树木繁茂的不平坦表面、环境、岩石、沙地环境等。
由于机器人的中央底座为每个肢体配备了固定的伺服电机,因此它们之间提供了独立的运动,因此根据应用情况,机器人可以有不同类型的运动,例如非完整或全向运动。
机器人装配的最终结果如图4(a)所示;而机器人的物理结构如图4(b)所示。六足机器人以聚甲基丙烯酸甲酯材料作为结构为基础,重量轻,抗变形能力强。
基于Theo-Jansen机构的机器人的设计策略上包括一组连接杆,这样产生的运动类似于蜘蛛的四肢,如图5所示。
所进行的设计将有两个肢体,每个肢体有六个关节,两个伺服电机负责产生运动;这些与每个肢体相关,允许产生的运动传输到每个关节的所有元素,如图6所示。
4.将三维模型导出到Unity3D
在虚拟环境中,机器人三维模型的动画生成过程分为6个阶段:获取三维模型,添加层次结构,建立运动类型,添加纹理,生成运动,最后应用动画,查看图7。
在SolidWorks中组装机器人的过程介绍了获取三维模型的步骤,该过程导出扩展名为*.sldasm的三维模型文件。鉴于Unity不支持SolidWorks生成的扩展名为的文件,添加层次结构的步骤将使用Autodesk 3ds Max软件。3DS Max可以导入由CAD软件生成的文件,转换成Unity所需要的FBX格式。
5.模拟实验结果
通过分析可以得出,本次提出的结构可用于模拟已开发机器人的设计,并通过实际实验证明了该结构的可行性,现在实验中采用了一种新的触觉装置Novint Falconmt,以控制六足机器人和另一种基于Theo Jansen机构的运动。模拟在具有以下特征的台式计算机上进行:I7 2.3GHz处理器、8GB RAM和NVIDIA Geforce GT 630m图形卡。
5.1三维仿真环境
三维仿真环境的开发平台是统一的,在该仿真平台上,基于所示的控制触觉装置,构建了机器人及其位移方式。图11显示了为模拟而创建的环境,在该环境中可以生成实际环境中涉及的物理变量。
在这种环境下,六足机器人进行了18个自由度的运动。在图12中,可以观察到机械运动不耦合的原理,该原理基于在3D模型的每个关节中建立运动原点,并且这些点位于每个电机的轴上。
模拟一个非结构化的虚拟环境,首先进行检查,可以通过触觉设备(Novint Falconmt)在两种类型的位移之间进行选择。在图12中,注意到非完整位移类型,其中机器人只有垂直于电机轴的速度,并且允许单向移动,包括向前和向后。
图13显示了六足机器人的全向运动,机器人可以横向移动,因此机器人的位移由旋转右手空间框架中定义的两个线性速度和角速度控制。操作员可以随意驾驶机器人,这取决于想要在工作区域内移动的移动类型。操作模式的选择是由其中一个具有Novint Falconmt功能的按钮执行的,也可以通过三维控制来驱动机器人。
6.总结
本次研究的重点是在虚拟非结构化环境下,基于TheoJansen机构的六足机器人和其他机器人的运动仿真。本文提出了一种新的环境,该环境有助于在各种环境下对不同的控制算法进行分析和安全开发。虚拟环境的主要贡献之一是,您可以轻松地更改工作环境的设计,并且可以非常简单地增加要执行的实验的数量和类型。
基于Unity3D与Matlab的机器人应用实时模拟器
摘要。本文介绍了一种应用于机器人领域的新型三维仿真器的实现。模拟器允许在结构化环境(中分析自治和远程操作控制不同方案的性能。针对机器人环境交互使用虚拟现实软件Unity3D,该软件与Matlab进行信息交换,通过共享存储器实现不同的控制算法。两个软件之间的实时信息交换至关重要,因为先进的控制算法需要机器人与环境交互的反馈来关闭控制回路,而模拟机器人则根据matlab计算的可控变量更新其运动和动态参数。最后,针对六自由度机器人手臂路径跟踪问题,采用自主控制方案对三维模拟器进行了评估,并给出了该机器人远程操作方案的实现结果。
索引项:Unity Engine、虚拟现实、混合现实、电子学习、Microsoft全息透镜、机电一体化
1引言
本文包括引言部分共分为六个部分。在第2节中,制定控制问题。第三节介绍了移动机械手机器人的建模和路径跟踪控制器的设计。在第4节中对Matlab-Unity3D之间的双向通信进行了介绍。第五节介绍和讨论了机器人手臂自主控制和遥控的实验结果。最后,第6节给出了结论。
2阐述问题
机器人领域的应用程序开发需要准确定义要执行的任务,以确定机器人所需的特性。确定这些参数后,任务的执行可以细分为以下步骤:1)建模阶段,在此阶段,在计算机辅助设计(CAD)软件中对三维机器人进行建模至关重要。建模允许在构造前分析机器人的物理特性,在这种情况下,有solidworks、autodesk inventor、autocad等工具,允许设计机械元件并获得材料的流动性和强度结果,以及其他机械特性,如图1所示;
-
- Gridding arm (b) Static analysis of the safety factor Fig. 1: Ejemplo de un brazo roboacute;tico modelado en SolidWorks
2)操作阶段,该阶段的主要目标是组装设计每个机械部件,并包含移动每个关节所需的电子设备,此外还考虑对机器人将移动的外部环境的感官感知进行信号调节,以及必须发布位置的内部传感器。构成机器人的各个环节的位置、速度、扭矩和强度。;3)控制器设计阶段,对于高级控制算法的设计来说,确定代表机器人运动学和动力学的数学模型至关重要。机器人的不同数学模型是多输入多输出系统MIMO,因此需要解决数学矩阵运算的软件工具,以便于实现所提出的控制方案。Matlab是一个拥有自己编程语言和开发环境的工具,它提供了矩阵操作和数据处理的优势。作为一种部署场景算法,Matlab具有可根据编程需求进行扩展的库[15];4)仿真阶段,在所提出的控制算法的实验实现之前,有必要在仿真机器人操作的实际条件的三维环境中检查其性能。因此,需要虚拟开发工具来支持双边触觉设备、视频输出接口和音频等。Unity 3D是一种用于创建游戏以及开发虚拟仿真的工具,它允许结合不同的触觉设备来操纵其环境。Unity Engine使用C#语言的脚本来操作游戏对象,您可以使用该脚本修改模拟对象的行为;最后是5)实现阶段,这是机器人与执行任务的环境交互的最后一个阶段,该交互通过所提出的算法控制。计划任务的成功实施是基于符合上述详细步骤的每一个目标;在这种情况下,可以说控制算法的设计和模拟是执行任务的最关键阶段,因此本文的工作重点放在这两个方面。
3建模与控制
机器人手臂的瞬时运动模型将其位置导数设置为其配置导数的函数(或其操作速度设置为其广义速度的函数)。
h t= Jqqt.
基于机器人各关节的动能和势能之差(能量平衡),从拉格朗日动力学方程中可以得到反映机器人手臂动力学的数学模型。大多数商用机器人都有低水平的PID控制器,以便跟踪参考速度输入,因此不允许直接控制电机的电压。以旋转和纵向参考速度为控制信号,用更合适的方式表达机械臂的动力学模型就显得十分有用。为此,模型中包含了速度控制器。机器人手臂的动态模型,具有作为控制信号的系统参考速度,可以表示为:
Mqq Cq,qq gq=qref
同时MqH-1 MD,Cq,q= H-1 C P,gq=H-1 gq.
另一方面,利用自动生成轨迹,轨迹跟踪控制将引导机械臂到达目标。如图所示,机器人运动控制的基本问题大致可分为三类:1)点稳定:目标是使机器人在给定的目标点上稳定,并具有所需的方向;2)轨迹跟踪:要求机器人跟踪一个时间参数化参考;3)路径跟踪:要求机器人IRED聚合到一条路径并遵循它,而不需要任何时间规范。有关建模和控制的更多详细信息,请参见[16]。
4. matlab-unity3d的交互通信
本节介绍了在Matlab和Unity3D之间进行通信和信息交换的方法,以及使用触摸装置控制仿真机械手。
4.1 Windows进程间通信(IPC)
IPC是操作系统中启用的一种功能,在此功能上,进程可以通过内存段或通过自己的通信工具交换信息,从而允许资源共享。通常,这些过程被开发到较低的级别——允许与操作系统资源交互——并根据此类通信的协议进行开发。
开发IPC的技术因应用而异。此功能可用于消息传输、同步、共享内存。用于通信进程的方法取决于所需的
全文共6916字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[968]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。