当前位置: 首页 > news >正文

第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人

第四章、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添加控制器
在弹出的窗口中选择机器人节点
在这里插入图片描述
节点树中会有一个新的节点出现
在这里插入图片描述按上图输入input0input1的值,点击play机器人会向前移动。

注:跟着官网配置会发现有些参数不一样,这是因为机器人朝向就是不同的,小伙伴们也可以跟着官网再走一遍,会有更多收获~

http://www.dtcms.com/a/107488.html

相关文章:

  • 10.使用路由缓存提升性能
  • DHT11数字温湿度传感器驱动开发全解析(下) | 零基础入门STM32第八十八步
  • emqx中LwM2M
  • 第七天 - re正则表达式模块 - 日志文件模式匹配 - 练习:Nginx日志分析器
  • 企业数据治理实践:“七剑” 合璧,释放数据价值
  • python string 类型字符拼接 +=的缺点,以及取代方法
  • python/pytorch杂聊
  • Nature旗下 | npj Digital Medicine | 图像+转录组+临床变量三合一,多模态AI预测化疗反应,值得复现学习的完整框架
  • 大智慧前端面试题及参考答案
  • 爬虫【feapder框架】
  • 【LeetCode基础算法】二叉树所有类型
  • ESLint语法报错
  • Mysql基础笔记
  • 论文:Generalized Category Discovery with Clustering Assignment Consistency
  • 获取各类基本因子
  • day21和day22学习Pandas库
  • Ray Flow Insight:让分布式系统调试不再“黑盒“
  • 【模型部署】onnx模型-LOOP 节点实例
  • 2.3.3 使用@Profile注解进行多环境配置
  • 高通将进军英国芯片 IP 业务 Alphawave
  • Qt线程等待条件QWaitCondition
  • 深入理解DRAM刷新机制:异步刷新为何无需扣除刷新时间?
  • 风电行业预测性维护解决方案:给风机装上 “智能医生”,实现故障 “秒级预警”
  • HTMX构建无重载闪烁的交互式页面
  • Vue开发系列——npm镜像问题
  • Frida Hook Native:jobjectArray 参数解析
  • SQL Server 增删改查详解
  • 使用pytesseract和Cookie登录古诗文网~(python爬虫)
  • 从Hugging Face下载Qwen/Qwen2-Audio-7B-Instruct模型到本地运行,使用python实现一个音频转文字的助手
  • 树莓派超全系列教程文档--(21)用户配置