Skip to content

XjuHurricaneQuadVision/ROBOCON2026_Scene

 
 

Repository files navigation

ROBOCON2026 武林探秘 - MuJoCo仿真场景

第二十五届全国大学生机器人大赛ROBOCON"武林探秘"竞技赛MuJoCo仿真环境。

场景预览

快速开始

环境要求

  • Python >= 3.7
  • MuJoCo物理引擎

安装依赖

pip install mujoco

启动仿真

# 请检查自己的mujoco版本
pip list | grep mujoco
# 如果是mujoco>=3.3.0 请使用以下的指令
python -m mujoco.viewer --mjcf models/mjcf/robocon2026.xml
# 如果是3.3.0之前的版本 则使用
python -m mujoco.viewer --mjcf models/mjcf/robocon2026_old.xml

激光雷达模拟

  1. 请先按照LiDAR安装教程,安装好lidar模拟环境(推荐使用gpu后端)
  2. 安装好ros2环境
cd ROBOCON2026_Scene
python src/lidar_sim.py
# 参考终端的指令:
# 1. 启动rviz2,可视化激光雷达点云
# 2. 鼠标操作,拖动绿色方块,控制激光雷达的位置

image-lidar_sim

机器人运动控制模拟

我们基于强化学习训练的 ONNX 策略模型,提供了多款主流机器人的运动控制仿真,支持手柄实时交互控制和 ROS2 接口集成。目前支持的机器人包括:

  • 宇树科技:Go1 四足机器人、G1 人形机器人
  • Booster机器人:T1 双足人形机器人
  • 逐级动力:Tron A1 双足机器人

环境准备

在运行任何机器人控制程序前,请先安装必要的依赖:

# 安装 ONNX 运行时和游戏手柄支持
pip install onnxruntime pygame etils

# (可选)安装 ROS2 支持,用于话题发布
# 请参考 ROS2 官方文档安装对应版本

Unitree Go2 四足机器人

Go2 运动演示

# 手柄控制模式(推荐使用 Xbox 手柄)
python3 src/robots/play_go2_joystick.py

# ROS2 话题模式(需要先安装 ROS2)
python3 src/robots/play_go2_ros2.py

# 指定激光雷达类型,我们提供了ariy96和mid360两种激光雷达(默认使用ariy96)
python3 src/robots/play_go2_ros2.py --lidar mid360

控制说明

  • 左摇杆:前后左右移动
  • 右摇杆:原地旋转
  • Backspace: 重置环境

Unitree Go1 四足机器人

Go1 运动演示

# 手柄控制模式
python3 src/robots/play_go1_joystick.py

# ROS2 话题模式
python3 src/robots/play_go1_ros2.py

Unitree G1 人形机器人

G1 运动演示

# 手柄控制模式
python3 src/robots/play_g1_joystick.py

# ROS2 话题模式
python3 src/robots/play_g1_ros2.py

Booster T1 双足人形机器人

T1 运动演示

# 手柄控制模式
python3 src/robots/play_t1_joystick.py

Tron 双足机器人

Tron 运动演示

# 手柄控制模式
python3 src/robots/play_tron_joystick.py

玩的开心!

常见问题

Q: 手柄无法识别?
A: 请确保手柄已连接并安装 pygame。运行 python -m pygame.examples.joystick 测试手柄连接。

Q: 如何自定义机器人模型?
A: 修改 models/mjcf/ 目录下对应的 XML 文件,并重新训练策略模型。

文件结构

ROBOCON2026_Scene/
├── README.md                       # 项目说明文档
├── assets/                         # 资源文件
├── models/
│   ├── meshes/                     # 3D 模型文件
│   │   ├── kfs/                    # 武功秘籍模型
│   │   ├── robocon2026.obj         # 主场景模型
│   │   ├── robocon2026.mtl         # 材质文件
│   │   ├── parts/                  # 场景部件模型
│   │   └── visual/                 # 可视化资源
│   └── mjcf/                       # MuJoCo XML 场景文件
│       ├── robocon2026.xml         # 主场景(MuJoCo >= 3.3.0)
│       ├── robocon2026_old.xml     # 兼容旧版本 MuJoCo
│       ├── mocap_env.xml           # 激光雷达仿真场景
│       ├── kfs.xml                 # 武功秘籍场景
│       ├── kfs_dep.xml             # 武功秘籍资产依赖
│       ├── scene_go1.xml           # Go1 机器人场景
│       ├── scene_g1.xml            # G1 机器人场景
│       ├── scene_t1.xml            # T1 机器人场景
│       └── scene_a1.xml            # A1 机器人场景
├── src/
│   ├── lidar_sim.py                # 激光雷达模拟脚本
│   ├── robots/                     # 机器人控制脚本
│   │   ├── play_go1_joystick.py    # Go1 手柄控制
│   │   ├── play_go1_ros2.py        # Go1 ROS2 接口
│   │   ├── play_g1_joystick.py     # G1 手柄控制
│   │   ├── play_g1_ros2.py         # G1 ROS2 接口
│   │   ├── play_t1_joystick.py     # T1 手柄控制
│   │   ├── play_a1_joystick.py     # A1 手柄控制
│   │   ├── gamepad_reader.py       # 游戏手柄读取模块
│   │   ├── camera_utils.py         # 相机工具模块
│   │   └── onnx/                   # ONNX 策略模型文件
│   └── rviz_config/                # RViz 配置文件
│       ├── g1.rviz
│       ├── go1.rviz
│       └── lidar.rviz
└── 第二十五届全国大学生机器人大赛ROBOCON_u201C武林探秘_u201D竞技赛规则V.1.pdf

相关链接

致谢

感谢以下项目和贡献者:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%