Skip to content

Commit

Permalink
[update] 1. upgrade URDF 2. fix kp/kd bug 3. support new dex3 hand
Browse files Browse the repository at this point in the history
  • Loading branch information
silencht committed Dec 4, 2024
1 parent 6697411 commit f7bdf9c
Show file tree
Hide file tree
Showing 113 changed files with 8,783 additions and 10,770 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@ __MACOSX/
!real_right_hand.jpg
!wrist_and_ring_mount.png
teleop/data/
teleop/utils/episode_0*
teleop/utils/episode_0*
teleop/utils/data/episode_0*
77 changes: 19 additions & 58 deletions assets/g1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,71 +2,32 @@

## Overview

This package includes a streamlined robot description (URDF & MJCF) for the [Unitree G1](https://www.unitree.com/g1/), developed by [Unitree Robotics](https://www.unitree.com/).

<p align="center"><img src="g1.png" width="500"/></p>

Unitree G1 have 43 DOFs:

```text
root [⚓] => /pelvis/
left_hip_pitch_joint [⚙+Y] => /left_hip_pitch_link/
left_hip_roll_joint [⚙+X] => /left_hip_roll_link/
left_hip_yaw_joint [⚙+Z] => /left_hip_yaw_link/
left_knee_joint [⚙+Y] => /left_knee_link/
left_ankle_pitch_joint [⚙+Y] => /left_ankle_pitch_link/
left_ankle_roll_joint [⚙+X] => /left_ankle_roll_link/
right_hip_pitch_joint [⚙+Y] => /right_hip_pitch_link/
right_hip_roll_joint [⚙+X] => /right_hip_roll_link/
right_hip_yaw_joint [⚙+Z] => /right_hip_yaw_link/
right_knee_joint [⚙+Y] => /right_knee_link/
right_ankle_pitch_joint [⚙+Y] => /right_ankle_pitch_link/
right_ankle_roll_joint [⚙+X] => /right_ankle_roll_link/
waist_yaw_joint [⚙+Z] => /waist_yaw_link/
waist_roll_joint [⚙+X] => /waist_roll_link/
waist_pitch_joint [⚙+Y] => /torso_link/
logo_joint [⚓] => /logo_link/
head_joint [⚓] => /head_link/
left_shoulder_pitch_joint [⚙+Y] => /left_shoulder_pitch_link/
left_shoulder_roll_joint [⚙+X] => /left_shoulder_roll_link/
left_shoulder_yaw_joint [⚙+Z] => /left_shoulder_yaw_link/
left_elbow_joint [⚙+Y] => /left_elbow_link/
left_wrist_roll_joint [⚙+X] => /left_wrist_roll_link/
left_wrist_pitch_joint [⚙+Y] => /left_wrist_pitch_link/
left_wrist_yaw_joint [⚙+Z] => /left_wrist_yaw_link/
left_hand_palm_joint [⚓] => /left_hand_palm_link/
left_hand_zero_joint [⚙+Y] => /left_hand_zero_link/
left_hand_one_joint [⚙+Z] => /left_hand_one_link/
left_hand_two_joint [⚙+Z] => /left_hand_two_link/
left_hand_three_joint [⚙+Z] => /left_hand_three_link/
left_hand_four_joint [⚙+Z] => /left_hand_four_link/
left_hand_five_joint [⚙+Z] => /left_hand_five_link/
left_hand_six_joint [⚙+Z] => /left_hand_six_link/
right_shoulder_pitch_joint [⚙+Y] => /right_shoulder_pitch_link/
right_shoulder_roll_joint [⚙+X] => /right_shoulder_roll_link/
right_shoulder_yaw_joint [⚙+Z] => /right_shoulder_yaw_link/
right_elbow_joint [⚙+Y] => /right_elbow_link/
right_wrist_roll_joint [⚙+X] => /right_wrist_roll_link/
right_wrist_pitch_joint [⚙+Y] => /right_wrist_pitch_link/
right_wrist_yaw_joint [⚙+Z] => /right_wrist_yaw_link/
right_hand_palm_joint [⚓] => /right_hand_palm_link/
right_hand_zero_joint [⚙+Y] => /right_hand_zero_link/
right_hand_one_joint [⚙+Z] => /right_hand_one_link/
right_hand_two_joint [⚙+Z] => /right_hand_two_link/
right_hand_three_joint [⚙+Z] => /right_hand_three_link/
right_hand_four_joint [⚙+Z] => /right_hand_four_link/
right_hand_five_joint [⚙+Z] => /right_hand_five_link/
right_hand_six_joint [⚙+Z] => /right_hand_six_link/
```
This package includes a universal humanoid robot description (URDF & MJCF) for the [Unitree G1](https://www.unitree.com/g1/), developed by [Unitree Robotics](https://www.unitree.com/).

MJCF/URDF for the G1 robot:

| MJCF/URDF file name | `mode_machine` | Hip roll reduction ratio | Update status | dof#leg | dof#waist | dof#arm | dof#hand |
| ----------------------------- | :------------: | :----------------------: | ------------- | :-----: | :-------: | :-----: | :------: |
| `g1_23dof` | 1 | 14.5 | Beta | 6*2 | 1 | 5*2 | 0 |
| `g1_29dof` | 2 | 14.5 | Beta | 6*2 | 3 | 7*2 | 0 |
| `g1_29dof_with_hand` | 2 | 14.5 | Beta | 6*2 | 3 | 7*2 | 7*2 |
| `g1_29dof_lock_waist` | 3 | 14.5 | Beta | 6*2 | 1 | 7*2 | 0 |
| `g1_23dof_rev_1_0` | 4 | 22.5 | Up-to-date | 6*2 | 1 | 5*2 | 0 |
| `g1_29dof_rev_1_0` | 5 | 22.5 | Up-to-date | 6*2 | 3 | 7*2 | 0 |
| `g1_29dof_with_hand_rev_1_0` | 5 | 22.5 | Up-to-date | 6*2 | 3 | 7*2 | 7*2 |
| `g1_29dof_lock_waist_rev_1_0` | 6 | 22.5 | Up-to-date | 6*2 | 1 | 7*2 | 0 |
| `g1_dual_arm` | 9 | null | Up-to-date | 0 | 0 | 7*2 | 0 |

## Visulization with [MuJoCo](https://github.com/google-deepmind/mujoco)

1. Open MuJoCo Viewer

```bash
pip install mujoco

python -m mujoco.viewer
```

2. Drag and drop the MJCF/URDF model file (`g1_body29_hand14.xml`/`g1_body29_hand14.urdf`) to the MuJoCo Viewer.
2. Drag and drop the MJCF/URDF model file (`g1_XXX.xml`/`g1_XXX.urdf`) to the MuJoCo Viewer.

## Note for teleoperate
g1_body29_hand14 is modified from [g1_29dof_with_hand_rev_1_0](https://github.com/unitreerobotics/unitree_ros/blob/master/robots/g1_description/g1_29dof_with_hand_rev_1_0.urdf)
Loading

0 comments on commit f7bdf9c

Please sign in to comment.