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

mujoco安装及urdf转xml方法记录

参考

mujoco210及mujoco-py安装

  1. 下载适用于Linux或 OSX的 MuJoCo 2.1 版二进制文件 。

  2. 将mujoco210的下载的目录解压到~/.mujoco/mujoco210路径下.

    注意:如果要为包指定非标准位置,请使用环境变量MUJOCO_PY_MUJOCO_PATH

    验证是否安装成功(运行下面代码,出现小人证明安装成功)

    cd ~/.mujoco/mujoco210/bin./simulate ../model/humanoid.xml
    
  3. 安装python接口mujoco-py

    1)使用如下命令安装可能的依赖包

    sudo apt install libosmesa6-dev libgl1-mesa-glx libglfw3
    

    2)采用如下命令安装mujoco-py

    pip3 install -U 'mujoco-py<2.2,>=2.1'
    

    3)在.bashrc文件中中添加环境变量

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/.mujoco/mujoco210/bin
    

    4)测试是否安装完成

    $ python3
    >>> import mujoco_py
    >>> import os
    >>> mj_path = mujoco_py.utils.discover_mujoco()
    >>> xml_path = os.path.join(mj_path, 'model', 'humanoid.xml')
    >>> model = mujoco_py.load_model_from_path(xml_path)
    >>> sim = mujoco_py.MjSim(model)
    >>> print(sim.data.qpos)
    [0.  0.  1.4 1.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.0.  0.  0.  0.  0.  0.  0.  0.  0.  0. ]
    >>> sim.step()>>> print(sim.data.qpos)
    [-1.12164337e-05  7.29847036e-22  1.39975300e+00  9.99999999e-011.80085466e-21  4.45933954e-05 -2.70143345e-20  1.30126513e-19-4.63561234e-05 -1.88020744e-20 -2.24492958e-06  4.79357124e-05-6.38208396e-04 -1.61130312e-03 -1.37554006e-03  5.54173825e-05-2.24492958e-06  4.79357124e-05 -6.38208396e-04 -1.61130312e-03-1.37554006e-03 -5.54173825e-05 -5.73572648e-05  7.63833991e-05-2.12765194e-05  5.73572648e-05 -7.63833991e-05 -2.12765194e-05]
    >>> 
    

4、安装mujoco、gym

pip install mujocopip install gym

urdf转换成xml导入mujoco

1、urdf文件中的mesh文件需要转化为stl格式

可以使用MeshLab等软件进行转换

2、在xacro/urdf文件添加一些必要的MuJoCo的tag用于控制编译选项。

  <mujoco><compiler meshdir="../meshes_mujoco/" balanceinertia="true" discardvisual="false" /></mujoco>

discardvisual这个tag默认是true,也就是丢掉视觉效果部分,保留碰撞部分。如果模型很复杂,它会把很多mesh文件进行简化,变成球、圆柱、立方体等,视觉效果会差很多,因此建议设为false,具体参考。另外,在MuJoCo的界面,可以通过按键盘数字键0和1进行视觉上的切换(视觉mesh与碰撞mesh)。
在这里插入图片描述
3、mesh路径的修改

在这里插入图片描述

4、从xacro文件生成urdf文件的命令(如果有urdf文件则不需要此步):

rosrun xacro xacro --inorder model.xacro > model.urdf

5、检查urdf文件(可选):

check_urdf model.urdf

6、在RViz中可视化(可选):

roslaunch urdf_tutorial display.launch model:=path/to/your/urdf/file

7、生成基本模型
在确认URDF模型没有问题后,进入MuJoCo的可执行文件夹内执行命令进行转换(如默认的~/mujoco/mujoco200/bin):

$./compile /path/to/model.urdf /path/to/model.mjb
$./compile /path/to/model.urdf /path/to/model.txt
$./compile /path/to/model.urdf /path/to/model.xml

官方说明可以转换成三种模型,我们一般用xml的格式。

$./compileUsage: compile infile outfileinfile can be in mjcf, urdf, mjb formatoutfile can be in mjcf, mjb, txt format

8、测试生成的基本模型:

cd ~/.mujoco/mujoco210/bin./simulate /path/to/model.xml

https://github.com/openai/mujoco-py
MuJoCo的机器人建模

相关文章:

mujoco安装及urdf转xml方法记录

参考 mujoco210及mujoco-py安装 下载适用于Linux或 OSX的 MuJoCo 2.1 版二进制文件 。 将mujoco210的下载的目录解压到~/.mujoco/mujoco210路径下. 注意&#xff1a;如果要为包指定非标准位置&#xff0c;请使用环境变量MUJOCO_PY_MUJOCO_PATH。 验证是否安装成功&#xff08…...

Visual Studio 2019 + Qt 项目版本信息新增到资源以及通过代码读取资源存储的版本信息

文章目录前言一、如何在VisualStudio2019中新增项目版本信息二、在程序中调用项目版本信息1.引入库version.lib1.1.通过vs自带的属性页引入库1.2.手动引入库2.新增版本信息读取类3.调用类获取信息总结前言 本文主要讲述如何在Visual Studio 2019 以及Qt结合的开发项目中&#…...

裸辞两个月还能不能找到工作?亲身经历告诉你结果·····

这是我在某论坛看到的一名网友的吐槽&#xff1a; 软件测试四年&#xff0c;主要是手动测试&#xff08;部分自动化测试和性能测试&#xff0c;但是用的是公司内部自动化工具&#xff0c;而且我自动化方面是弱项。&#xff09;现在裸辞两个月了&#xff0c;面试机会少而且面试…...

2023华为面试真题

【华为】面试真题&#xff1a; 面试前需要准备&#xff1a; 1. Java 八股文&#xff1a;了解常考的题型和回答思路&#xff1b; 2. 算法&#xff1a;刷 100-200 道题&#xff0c;记住刷题最重要的是要理解其思想&#xff0c;不要死记硬背&#xff0c;碰上原题很难&#xff0…...

【C++】C++11新特性——基础特性

文章目录一、列表初始化1.1 {}初始化1.2 initializer_list类型二、类型推导2.1 auto2.2 auto注意事项2.3 decltype三、新增与改进3.1 nullptr3.2 范围for3.3 array3.4 forward_list3.5 unordered系列3.6 final与override一、列表初始化 1.1 {}初始化 C11 引入了一个新的初始化…...

Mac 遇到pip: command not found问题的解决

Mac 遇到pip: command not found问题的解决在学习Playwright时候&#xff0c;需要下载相关依赖Playwright 是专门为满足端到端测试的需要而创建的。Playwright 支持所有现代渲染引擎&#xff0c;包括 Chromium、WebKit 和 Firefox。在 Windows、Linux 和 macOS 上进行本地测试或…...

[ 云计算 | Azure ] Episode 03 | 描述云计算运营中的 CapEx 与 OpEx,如何区分 CapEx 与 OpEx

正常情况如果你不是会计&#xff0c;或者对钱相关的数字比较敏感的财务&#xff0c;本文的一些东西你不会接触的&#xff0c;但是最为云架构或者云运营&#xff0c;你可能会遇到如何采购亦或者估算的我成本和运营成本等等&#xff0c;所以本文的一些知识点就需要进行一定的了解…...

STM32F103R8T6 SPWM实现正弦波输出

前言 PWM合成正弦波&#xff0c;原理什么的不详细说了&#xff0c;概括一下就是 PWM有效面积的积分 正弦波的有效面积。PWM的频率越快&#xff0c;细分的越多&#xff0c;锯齿也就越不明显。 做法是&#xff1a;首先利用正弦波取点软件&#xff0c;取点1000个&#xff0c;生…...

Oracle 11g创建和删除数据库实例

一、创建数据库实例 1.点击“开始” -> “Oracle -OraDb11g_home1” -> “Database Configuration Assistant” 2.点击“下一步” 3.选择“创建数据库”&#xff0c;点击“下一步” 4.默认设置&#xff0c;不用更改&#xff0c;直接点击“下一步” 5.填写要创建的“实例…...

MySQL(四)视图、存储过程、触发器

视图、存储过程、触发器视图检查选项视图的更新存储过程存储过程基本语法变量系统变量用户自定义变量局部变量if判断参数casewhile循环repeat循环loop循环cursor游标handler条件处理程序存储函数触发器视图 视图&#xff08;View&#xff09;是一种虚拟存在的表。视图中的数据…...

在 Ubuntu 下编写 C++

在 Ubuntu 下编写 C 在 Ubuntu 上面编写 C&#xff0c;本章节内容主要介绍在 Ubuntu 在终端窗口下使用 vi/vim 编辑一 个 C源文件。通过编写最简单的示例“Hello,World&#xff01;”。带领大家学习如何在 Ubuntu 终端下编 辑和编译 C。这里要求大家会在 Ubuntu 上使用 vi/vim…...

Linux主要目录的意思

Linux目录的意思 文章目录Linux目录的意思bin目录&#xff08;命令目录&#xff09;&#xff1a;二进制目录&#xff0c;二进制是可以直接执行的机器码&#xff0c;里面存放着可以执行的命令&#xff1b;bin目录右下角有个箭头类似于Windows的快捷方式 sbin目录&#xff1a;系…...

启动golang项目编译的exe可执行文件获取windows管理员权限(UAC)

背景&#xff1a; go代码启动以后里面涉及到修改ip地址等操作&#xff0c;需要管理员权限。打包好的exe文件双击执行默认是没有管理员权限的&#xff0c;那么修改ip就会提示需要管理员权限。 解决方法1&#xff1a;右键以管理员权限运行exe文件 解决方法2&#xff1a;编译exe…...

Springboot怎么快速集成Redis?

前言其实在Springboot中集成redis是一个非常简单的事情&#xff0c;但是为什么要单独输出一篇文章来记录这个过程呢&#xff1f;第一个原因是&#xff0c;我记性不是太好&#xff0c;这次把这个过程记录下&#xff0c;在新的项目搭建的时候或者需要在本地集成redis做一些其他相…...

COM技术简单介绍

COM (Component Object Model) 是一种面向对象的编程技术&#xff0c;它在 Windows 操作系统中广泛使用。COM 提供了一种标准的方法来创建和使用可重用的软件组件&#xff0c;这些组件可以通过不同的编程语言和应用程序进行访问和使用。 COM 技术的主要特点包括&#xff1a; 组…...

NetworkMiner网络取证分析工具(26)

预备知识 NetworkMiner是一款windows平台下开放源代码的网络取证分析工具&#xff0c;同时也是一款比较好的协议分析工具&#xff0c;它通过数据包嗅探或解析PCAP 文件能够检测操作系统&#xff0c;主机名和网络主机开放的端口。 除了能够进行基本的数据包抓取分析N…...

Lombok 常用注解

文章目录简介MAVEN 依赖常用的注解1. Data 注解 :2. Setter 注解&#xff1a;3.Getter 注解&#xff1a;4.Log4j or Slf4j 注解5.NoArgsConstructor注解&#xff1a;6.AllArgsConstructor注解&#xff1a;7.RequiredArgsConstructor注解:8.Builder注解&#xff1a;9.Cleanup注解…...

SAP 生产订单和成本收集器在核算上的主要区别

生产订单&#xff1a; 特点&#xff1a; 1、 按照批次进行核算 2、 只有完全完工&#xff0c;才能够进行差异分析&#xff0c;分析差异来源。 目标制造费用&#xff1a;按照工单创建确认的作业数量*计划作业价格的乘积得到&#xff1b; 实际制造费用&#xff1a;按照作业确认…...

Nginx-http-flv-module流媒体服务器搭建+模拟推流+flv.js在前端html和Vue中播放HTTP-FLV视频流

场景 Windows上搭建Nginx RTMP服务器并使用FFmpeg实现本地视频推流&#xff1a; Windows上搭建Nginx RTMP服务器并使用FFmpeg实现本地视频推流_win nginx-rtmp最新版_霸道流氓气质的博客-CSDN博客 Vue中使用vue-video-player和videojs-flash插件实现播放rtmp视频文件流&…...

【大数据处理与可视化】一 、大数据分析环境搭建(安装 Anaconda 3 开发环境)

【大数据处理与可视化】一 、大数据分析环境搭建&#xff08;安装 Anaconda 3 开发环境&#xff09;实验目的实验内容实验步骤一、下载Anaconda安装包二、安装Anaconda3三、验证Anaconda是否安装成功四、Jupyter Notebook的使用1. 启动Anaconda自带的Jupyter Notebook2. 在code…...

如何通过开源看板工具Kanboard实现团队高效协作

如何通过开源看板工具Kanboard实现团队高效协作 【免费下载链接】kanboard Kanban project management software 项目地址: https://gitcode.com/gh_mirrors/ka/kanboard 在当今快节奏的工作环境中&#xff0c;团队协作效率是项目成功的关键因素。Kanboard作为一款免费开…...

无GPU也能用:OpenClaw+Qwen3.5-4B-Claude-GGUF低配设备实测

无GPU也能用&#xff1a;OpenClawQwen3.5-4B-Claude-GGUF低配设备实测 1. 为什么要在低配设备上折腾AI&#xff1f; 去年我入手了一台二手MacBook Air&#xff0c;4GB内存的配置在当下看来确实有些捉襟见肘。但作为一名技术爱好者&#xff0c;我始终对本地运行大模型充满好奇…...

OpenPose终极指南:10分钟掌握人体姿态估计核心技术

OpenPose终极指南&#xff1a;10分钟掌握人体姿态估计核心技术 【免费下载链接】openpose 项目地址: https://gitcode.com/gh_mirrors/op/openpose 想要快速搭建专业级的人体姿态识别系统吗&#xff1f;OpenPose作为业界领先的开源姿态估计库&#xff0c;能够实时检测图…...

解决B站视频收藏难题的8K超清下载解决方案:Bilidown全解析

解决B站视频收藏难题的8K超清下载解决方案&#xff1a;Bilidown全解析 【免费下载链接】bilidown 哔哩哔哩视频解析下载工具&#xff0c;支持 8K 视频、Hi-Res 音频、杜比视界下载、批量解析&#xff0c;可扫码登录&#xff0c;常驻托盘。 项目地址: https://gitcode.com/gh_…...

书匠策AI:课程论文创作的“智能导航仪”,解锁学术新境界!

在学术的浩瀚海洋中&#xff0c;每一篇课程论文都是学子们扬帆起航、探索未知的航船。然而&#xff0c;面对茫茫的学术资料、错综复杂的逻辑结构&#xff0c;以及严格的格式要求&#xff0c;不少学子常常感到迷茫与无助。别怕&#xff0c;今天我要为你介绍一位论文写作的“智能…...

科学计算的质量守卫:AlphaFold自动化测试实践指南

科学计算的质量守卫&#xff1a;AlphaFold自动化测试实践指南 【免费下载链接】alphafold Open source code for AlphaFold. 项目地址: https://gitcode.com/GitHub_Trending/al/alphafold 技术痛点三连问&#xff1a;你的科学计算项目是否也面临这些困境&#xff1f; …...

别再只写服务端了!Spring Boot WebSocket 完整双端配置与心跳保活指南

别再只写服务端了&#xff01;Spring Boot WebSocket 完整双端配置与心跳保活指南 在实时通信领域&#xff0c;WebSocket早已不是新鲜事物&#xff0c;但许多开发者仍停留在"服务端能跑通就行"的初级阶段。当你的应用需要处理金融行情推送、在线协作编辑或IoT设备控制…...

遥感影像裁剪避坑指南:如何用ENVI5.3的Subset功能精准提取县区数据(含背景值设置技巧)

遥感影像裁剪避坑指南&#xff1a;ENVI5.3 Subset功能深度解析与实战技巧 当你在处理县域尺度的遥感影像分析时&#xff0c;是否遇到过裁剪后图像边缘出现黑边、数据丢失或坐标错位的问题&#xff1f;这些看似简单的操作细节&#xff0c;往往成为影响后续分析精度的关键因素。本…...

ENVI 5.6 批量处理高分卫星数据(GF-2/6/7)保姆级教程:从App Store安装到一键正射融合

ENVI 5.6 高分卫星数据批量处理实战指南&#xff1a;从环境配置到自动化流程优化 第一次接触高分卫星数据处理时&#xff0c;面对满屏的专业术语和复杂的操作流程&#xff0c;我完全不知所措。直到掌握了ENVI 5.6的批量处理技巧&#xff0c;才发现原来遥感数据处理可以如此高效…...

数模小白别慌!手把手教你用Python和MATLAB搞定国赛美赛(附2022年M奖/省一代码)

数模竞赛入门指南&#xff1a;从零到获奖的Python与MATLAB实战路径 数学建模竞赛对于初学者而言&#xff0c;往往像一座难以攀登的高山。第一次面对赛题时&#xff0c;那种无从下手的迷茫感我至今记忆犹新——三个队友围着一道看似简单的题目&#xff0c;却连该用什么工具、从哪…...