在学习Mujoco仿真的过程中,为了与时俱进,之前的mujoco210版本不再使用,改用了mujoco-3.1.4版本,下面继续mujoco仿真的学习!
先前关于mujoco的学习博客汇总如下:
强化学习:MuJoCo机器人强化学习仿真入门(1)_mujoco仿真-CSDN博客
Mujoco仿真【将urdf文件转化为xml文件】-CSDN博客
Mujoco仿真【xml文件的学习 1】-CSDN博客
Mujoco仿真【xml文件的学习 2】-CSDN博客
关于error while loading shared libraries的错误解决方法-CSDN博客
闲话少说,直接进入xml的文件学习。这次借助mujoco-3.1.4自带的模型文件与我自己的机器人xml模型来做一些展示,充分可视化xml模型的三维效果~
关于mujoco-3.1.4的版本下载,直接进入官网下载mujoco-3.1.4:https://mujoco.org/
进入官网后点击Download,下载 mujoco-3.1.4-linux-x86_64.tar.gz
将下载后的mujoco-3.1.4文件夹放在/home/.mujoco/的目录中,做好对应的环境配置:
进入上图的文件夹后,可以发现如下文件,简单介绍一下:
在bin目录中可以将自己机器人的urdf文件转换为xml文件,方便后续的mujoco仿真,详情见:
Mujoco仿真【将urdf文件转化为xml文件】-CSDN博客
在lib目录中存放着libmujoco.so.3.1.4文件,这个需要将该路径配置于.bashrc文件中,详情见:
关于error while loading shared libraries的错误解决方法-CSDN博客
在model目录中可以存放模型文件,下面借助mujoco-3.1.4自带的模型文件与我自己的机器人xml模型来做一些展示:
在xml模型打开前,需要先进入cd到mujoco-3.1.4的bin目录中,开启一个终端
案例【car】启动指令:
./simulate ../model/car/car.xml
出现了迷你版小车:
其中Control可以控制car的运动,左右转向与前进后退:
案例【cards】启动指令:
./simulate ../model/cards/cards.xml
出现了一堆牌:
案例【humanoid】启动指令:
./simulate ../model/humanoid/humanoid.xml
年轻真好,倒头就睡:
案例【mug】启动指令:
./simulate ../model/mug/mug.xml
到了喝下午茶的时候了:
案例【balloons】启动指令:
./simulate ../model/balloons/balloons.xml
出现了一个慢慢下滑的方块(4个气球都拉不动):
案例【hammock】启动指令:
./simulate ../model/hammock/hammock.xml
累了就睡吧:
好了,我们就先展示这6个mujoco-3.1.4中的自带案例,还有许多xml模型案例就不全部观看了。下面将我自己的xml模型保存到model目录中,同样可视化一下,观看xml模型的效果如何:
案例【aloha】启动指令:
./simulate ../model/aloha/bimanual_viperx_transfer_cube.xml
斯坦福的aloha双臂,我后面将在这个基础上去优化或更改仿真环境:
案例【airbot_play_v3_0】启动指令:
./simulate ../model/airbot_play_v3_0/airbot_play_v3_0/airbot_play_v3_0.xml
求之科技(无锡)的airbot play机械臂,不带末端执行器的版本:
案例【unitree_a1】启动指令:
./simulate ../model/unitree_a1/scene.xml
宇树的四足狗A1(我给pause了):
案例【trossen_vx300s】启动指令:
./simulate ../model/trossen_vx300s/scene.xml
被aloha带火的机械臂:
案例【shadow_hand】启动指令:
./simulate ../model/shadow_hand/scene_left.xml
仿人灵巧手:
案例【aloha2】启动指令:
./simulate ../model/aloha2/scene.xml
斯坦福的aloha双臂(升级版):
好了,xml模型的展示暂且就先到这
题外话:我个人认为xml模型决定了mujoco仿真好坏的一大半,学好xml语法与模型的环境搭建是十分有必要的!在Mujoco中,XML模型是定义仿真环境和物体属性的核心。通过学习XML语法和模型设置,可以更好地控制仿真场景的各个方面,包括物体的几何形状、质量、摩擦力、碰撞检测等。这对于确保仿真的准确性和真实性至关重要。有了扎实的XML编程基础,才能够更灵活地调整仿真环境,以满足robot仿真的需求,并更有效地进行仿真实验和研究。