mujoco安装及urdf转xml方法记录

参考

mujoco210及mujoco-py安装

  1. 下载适用于LinuxOSX的 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-01
      1.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 mujoco

pip 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的格式。

$./compile
 Usage: compile infile outfile
 infile can be in mjcf, urdf, mjb format
 outfile can be in mjcf, mjb, txt format

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

cd ~/.mujoco/mujoco210/bin

 ./simulate /path/to/model.xml

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

猜你喜欢

转载自blog.csdn.net/qq_43309940/article/details/128292151
今日推荐