第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人
0 前言
官方课程文档:https://docs.isaacsim.omniverse.nvidia.com/latest/gui/tutorial_intro_simple_objects.html
- 添加简单对象
- 组装一个简单的机器人
- 添加摄像头和传感器
本节将在上一节的基础上,为机器人配置关节及驱动(学会使用驱动控制机器人运动),并创建控制器控制机器人运动。
1 添加关节
按照上一节中的方法创建机器人,并整理节点树,首先重命名下述红色框中的节点,同时创建三个Xform
并重命名,结果在第三张图中,最后将整个刚体打包进同一个Xform
中。
右键创建
Xform
Ctrl+shift
同时选中车身和左车轮创建关节,重复上述操作在右车轮下也创建一个关节,并重命名
根据上图中绿色框配置关节其中:
Body 0:是关节父级
Body 1:是关节子级
Local Position 0:是关节相对于父级坐标系的偏移
Local Rotation 0:是关节相对于父级坐标系的旋转
Local Position 1:是关节相对于子级坐标系的偏移
Local Rotation 1:是关节相对于子级坐标系的旋转
同样重复上述步骤配置右轮,此时点击play
,拖动body
的坐标轴机器人会在场景中移动
2 添加关节驱动
同时选中两个关节,点击下方property
中的+add
,选择Physics -> Angular Drive
添加驱动。
在关节
property->Drive
中可以修改驱动参数
- 位置控制:对于位置控制关节,设置高刚度(stiffness )和相对低或零阻尼(damping)。
- 速度控制:对于速度控制器关节,设置高阻尼和零刚度。
我们通过速度控制驱动,所以设置一个较高的阻尼。
点击play
,小车会向前移动。
3 通过Articulation,直接通过树状结构求解动力学方程
将整个机器人建模为树状机构,统一求解动力学方程。
- 在树结构中点击
robot
. - 点击
Property
中的+ Add
选择Physics -> Articulation Root
.
4 添加控制器
通过点击菜单栏中的Tools -> Robotics -> Omnigraph Controllers -> Joint Velocity
添加控制器
在弹出的窗口中选择机器人节点
节点树中会有一个新的节点出现
按上图输入
input0
和input1
的值,点击play
机器人会向前移动。
注:跟着官网配置会发现有些参数不一样,这是因为机器人朝向就是不同的,小伙伴们也可以跟着官网再走一遍,会有更多收获~