如何使用Google SketchUp创建适用于LabVIEW Robotics的机器人模型及仿真场景



主要软件: LabVIEW Development Systems>>LabVIEW Professional Development System
主要软件版本: 2013
主要软件修正版本: N/A
次要软件: LabVIEW Modules>>LabVIEW Robotics

问题:
LabVIEW Robotics工具包提供了强大的机器人仿真功能,让用户可以在不依靠实物机器人及场景的条件下设计复杂的机器人系统并验证。虽然LabVIEW Robotics工具包提供了不少现成的机器人模型及仿真场景供用户直接使用,但对高端用户来说,还是显得不够用。另一方面,作为世界上三维建模最快的软件,Google SketchUp(谷歌草图大师)已经被很多用户所接受,那么,如何使用Google SketchUp以最快的速度自定义机器人及仿真场景的模型并导入到LabVIEW Robotics工具包中进行仿真呢?


解答:
      Google Sketchup是一个极受欢迎并且易于使用的3D设计软件,官方网站将它比喻作电子设计中的“铅笔”。它的主要卖点就是使用简便,人人都可以快速上手。并且用户可以将SketchUp创建的3D模型直接导出到各种应用中,非常酷。
简单来讲,它就是一个3D设计软件,为此,用SketchUp来设计机器人模型及仿真场景可以说是小菜一碟。
1、使用SketchUp创建机器人模型并导入到LabVIEW Robotics工具包
LabVIEW Robotics工具包中已经集成的机器人模型大多为轮式机器人或机械臂,而足式机器人却基本没有,这样在做足式机器人的相关仿真时就需要自己搭建一个模型,这里就以创建四足机器人模型为例,向大家介绍一下如何使用SketchUp创建机器人模型并导入到LabVIEW Robotics工具包中。
 
1)使用SketchUp创建四足机器人的躯体部分
 

2)使用SketchUp创建四足机器人的髋关节部分
 

3)使用SketchUp创建四足机器人的大腿部分
 

4)使用SketchUp创建四足机器人的小腿部分
 

5)使用SketchUp创建四足机器人的足尖部分
 

6)使用SketchUp拼装各模块,组建四足机器人(非必要,但推荐在将模型导入LabVIEW之前先在三维建模软件中进行一轮组装,提前发现可能存在的问题并进行修正的同时再次确认一下各部分模型的相对位置关系)
 

7)在SketchUp中确认整体模型没有问题后即可将各部分三维模块导出,为导入LabVIEW Robotics环境中做准备。虽然LabVIEW支持多种模型格式导入,但考虑到SketchUp内部的单位值与实际模型的对应有效性,这里还是推荐大家将模型导出为.dae格式。
 

在导出为dae格式文件时还有一些选项需要用户注意,一般推荐按下图方式勾选即可。
 

8)将生成的dae模型文件导入到LabVIEW Robotics Simulator中,通过点击下图的按钮弹出模型导入对话框。
 

9)右键点击左上角的User Model并选择Add Models…,表示当前需要添加用户的模型组件(注意,不是添加完整的机器人,而是机器人各部分的模型,LabVIEW Robotics的逻辑与三维建模软件是一样的,都需要先获得机器人的各部分组件,然后再在软件中组装)。
 

10)在弹出的文件对话框中选择之前导出的dae文件,就把之前SketchUp创建的模型成功导入到LabVIEW中了,不过导入的模型还只具有外观价值,不具备仿真价值,在真正进入仿真之前还需要用一种几何模型近似逼近该模型组件,后续仿真时机器人模型与场景的所有碰撞检测、组件质量、惯量等特性都由这个近似几何模型来定义。如果只是想进行粗略仿真,那直接用单一的基本几何模型把导入的三维模型包络住即可,如果追求精细仿真,则可以使用多个几何单元精细逼近。具体选择何种仿真方式主要由用户自己决定,用户需要在计算复杂度及运算时间间做好平衡。当完成所有的设定以后,点击OK即可完成该组件的导入。
 

11)所有成功导入的模型都会出现在Components文件夹下,点击对应的模块可以在左下角进行组件预览。
 

12)将组件拖动到中央窗口即可进行机器人的组装,可以根据之前在SketchUp中的组装结果快速定义各模块的相互位置关系。选中某个模块并在右下角属性框中输入对应的位置信息,该模块即可自动移动到对应的位置。当然,用户也可以手动托拽该模块到指定的位置,必要时还可以调整组件的方向角。
 

13)相对位置设置完毕后还需要建立各组件简的关节约束。定义关节约束时都是两两组件间进行的,在右侧的Parts Hierarchy窗口中将连接组件拖动到被连接组件上,两个组件之间就会自动出现一个关节,如果依照下图进行组装并托拽,即可完成整个四足机器人的腿部关节创建。这里以左前腿为例,给出各关节的位置及自由度定义。从上到下依次是髋关节的Y向/X向旋转自由度,膝关节的Y向旋转自由度和踝关节的Z向直线自由度。

 

14)根据关节自由度设置关节类型并为每个主动关节配备电机,注意,配备电机后还需要设置一下电机参数,设置原则是与真实电机出力能力相近,为了便于仿真,可以在真实电机的参数值基础上适当增大关键属性。

 

15)完成上述所有的步骤以后,基本就完成了四足机器人在LabVIEW Robotics Simulator中的组装,选择导出机器人并保存,用户以后就能在Robots文件夹下看到并直接托拽使用该机器人了。


2
、使用SketchUp创建仿真地形并导入到LabVIEW Robotics工具包
除了创建复杂的四足机器人模型,SketchUp还可以用来创建仿真用的虚拟场景地形并直接导入到LabVIEW Robotics中进行使用。SketchUp中内置了对复杂地形曲面的表面描述,LabVIEW Robotics Simulator可以直接就这些描述去做碰撞检测。此外,SketchUp内置的沙盒(Sandbox)工具可以非常轻易的定义并创建非常复杂的地形,这使得在虚拟场景创建这一块,SketchUp几乎成为每个工程师的首选。使用SketchUp创建仿真地形基本分为如下几步:
 
1)在SketchUp中创建一定规模大小的三维地形,对于有地形测试及地形适应算法分析的用户,建议一次构建多种规模相同但地形表面状况各异的地形作为一组,为后续算法测试提供对照。

 

2)和导出四足机器人各模块组件一样,也将地形模型导出为dae文件。
 
3)在LabVIEW Robotics Environment选板下点击红色的添加按钮并选定之前导出的地形dae文件弹出地形导入对话框。

 

4)地形导入对话框中的设定项比较少,一般海拔起点(Ground Level)不需要用户去更改,按默认值选取即可。地形材质可以从光滑到粗糙中选取特定的级别,这一项主要影响仿真过程中机器人的着地摩擦力,目前LabVIEW还只支持单一材质,无法做到同一片地形各个区域实现不同的材质(即摩擦效果)。如果用户有类似需求,需要多建立几个地形进行相关的设定并单独进行仿真。
5)点击OK完成导入后地形会自动出现在User Model Library下,双击该地形即可将仿真环境设置为之前导入的地形。此后,可以向该地形中拖放各类需要仿真的机器人。

3
、使用SketchUp创建的四足机器人及地形场景进行行走实验
这一部分主要用于向读者展示创建出的地形及机器人在实际仿真编程使用过程中的有效性,具体的实现原理及代码会在其他机器人相关的指示介绍中罗列出来,此处不作展开。测试用软件面板如下图所示,四足机器人在场景中的行走效果视频参见附件。


相关链接:
http://www.ni.com/robotics/zhs/


附件:

LittleDog Model for SketchUpModel.zip

Terrain ModelTerrain.zip

Walking VideoMulti-Gaps Video.wmv






报告日期: 10/26/2014
最近更新: 10/27/2014
文档编号: 6QPKMPYA