Files
Mujoco_WASM/wasm/src/README.md
T
chenlin c0081d0808
build / setup (compute matrix) (pull_request) Has been cancelled
build / macos-15-arm64-studio (pull_request) Has been cancelled
build / ubuntu-24.04-clang-18-studio (pull_request) Has been cancelled
build / ubuntu-24.04-gcc-14-studio (pull_request) Has been cancelled
build / windows-2025-ninja-studio (pull_request) Has been cancelled
build / ubuntu-24.04-clang-18-wasm (pull_request) Has been cancelled
build / ubuntu-24.04-clang-18-mjx (pull_request) Has been cancelled
lint / pre-commit (pull_request) Has been cancelled
build / ${{ matrix.label }} (pull_request) Has been cancelled
feat(web-platform): release V0.4.1 完成基础控制
2026-08-24 17:12:17 +08:00

2.8 KiB
Raw Blame History

Web 仿真控制脚本

该目录存放可由 MuJoCo Web 平台“控制 → Python 控制器”直接导入的可信本地脚本。

Go2-W 平衡控制

文件:go2_w_balance.py

使用条件:

  1. 可导入 /home/cen/Embodied_Workspace/unitree_ros/robots/go2w_description/ 文件夹/ZIP,或 Unitree 官方 /home/cen/Embodied_Workspace/unitree_mujoco/unitree_robots/go2w/ MJCF 工程;
  2. 使用 URDF 时选择“转换为 MJCF”和“浮动基座”;
  3. 使用 URDF 时勾选“为关节添加驱动器”和“添加传感器”,平台会在浮动基座注入6轴 IMU;
  4. 模型加载后进入“控制 → Python 控制器”,导入本文件;
  5. 点击“加载脚本”或直接导入后,点击“启用”,再播放仿真。

控制器兼容两套命名:

  • Body:官方 MJCF 的 base_link 或 URDF 转换模型的 base
  • 腿关节:FL/FR/RL/RR_{hip,thigh,calf}_joint
  • 轮关节:官方 *_wheel_joint 或 URDF 转换后的 *_foot_joint
  • actuator:官方 FL_hip/FL_wheel 风格,或平台生成的 <joint-name>_motor
  • 6轴 IMUimu_gyro(三轴角速度)和 imu_acc(三轴加速度)

脚本在原地站立和 IMU roll/pitch 调平基础上,实现平台 Python SDK 的标准基本移动指令:停止、前进、后退、左转、右转和原地起跳。加载并启用脚本后,可在“基本移动指令”面板直接操作。前后移动采用四轮速度闭环;转向采用前轮主导、后轮限幅的左右差速,减小后腿 hip 关节摆幅;起跳采用“下蹲—爆发伸腿—腾空收腿—落地准备—恢复”的一次性轨迹。

控制脚本可选定义同步函数 command(name, state) 接收指令。当前标准指令名为:

  • stop
  • forward
  • backward
  • turn_left
  • turn_right
  • jump

其中移动/转向指令会持续生效,直到收到另一条移动指令或 stopstop 会在轮速降为零后继续执行带积分补偿的站立姿态恢复,使机身自动回正。jump 是一次性原地起跳指令,会先切换到 stop。控制器在下蹲阶段保持完整重心补偿,爆发阶段以小腿竖直推力和轮毂反作用力矩抑制后仰,并记录起跳点;落地接触后会沿机身前向轴自动收回水平漂移。控制器必须确认位置、机身高度、姿态和角速度重新稳定,才会执行下一次已排队的起跳,避免连续起跳逐步后仰。不同接触参数、质量或初始姿态下,可调整 NOMINALKP_FINALKDDRIVE_SPEEDDRIVE_ACCELERATIONTURN_RATETURN_ACCELERATIONWHEEL_VELOCITY_KPMAX_WHEEL_TORQUE。速度指令采用斜坡限制,避免轮毂力矩阶跃导致机身后仰;起跳会等待轮速和重心稳定,随后以小腿满力矩爆发伸展,并在腾空阶段主动收腿和持续控制俯仰。