nepyope commited on
Commit
ef6a683
·
verified ·
1 Parent(s): 25d1875

Upload folder using huggingface_hub

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +53 -0
  2. CAMERA_README.md +256 -0
  3. README.md +167 -0
  4. assets/g1_29dof_old.xml +568 -0
  5. assets/g1_29dof_with_hand.xml +749 -0
  6. assets/g1_29dof_with_hand_original.xml +748 -0
  7. assets/meshes/head_link.STL +3 -0
  8. assets/meshes/left_ankle_pitch_link.STL +0 -0
  9. assets/meshes/left_ankle_roll_link.STL +3 -0
  10. assets/meshes/left_elbow_link.STL +0 -0
  11. assets/meshes/left_elbow_link_merge.STL +3 -0
  12. assets/meshes/left_hand_index_0_link.STL +3 -0
  13. assets/meshes/left_hand_index_1_link.STL +3 -0
  14. assets/meshes/left_hand_middle_0_link.STL +3 -0
  15. assets/meshes/left_hand_middle_1_link.STL +3 -0
  16. assets/meshes/left_hand_palm_link.STL +3 -0
  17. assets/meshes/left_hand_thumb_0_link.STL +0 -0
  18. assets/meshes/left_hand_thumb_1_link.STL +3 -0
  19. assets/meshes/left_hand_thumb_2_link.STL +3 -0
  20. assets/meshes/left_hip_pitch_link.STL +3 -0
  21. assets/meshes/left_hip_roll_link.STL +3 -0
  22. assets/meshes/left_hip_yaw_link.STL +3 -0
  23. assets/meshes/left_knee_link.STL +3 -0
  24. assets/meshes/left_rubber_hand.STL +3 -0
  25. assets/meshes/left_shoulder_pitch_link.STL +3 -0
  26. assets/meshes/left_shoulder_roll_link.STL +3 -0
  27. assets/meshes/left_shoulder_yaw_link.STL +3 -0
  28. assets/meshes/left_wrist_pitch_link.STL +0 -0
  29. assets/meshes/left_wrist_roll_link.STL +3 -0
  30. assets/meshes/left_wrist_roll_rubber_hand.STL +3 -0
  31. assets/meshes/left_wrist_yaw_link.STL +3 -0
  32. assets/meshes/logo_link.STL +3 -0
  33. assets/meshes/pelvis.STL +3 -0
  34. assets/meshes/pelvis_contour_link.STL +3 -0
  35. assets/meshes/right_ankle_pitch_link.STL +0 -0
  36. assets/meshes/right_ankle_roll_link.STL +3 -0
  37. assets/meshes/right_elbow_link.STL +0 -0
  38. assets/meshes/right_elbow_link_merge.STL +3 -0
  39. assets/meshes/right_hand_index_0_link.STL +3 -0
  40. assets/meshes/right_hand_index_1_link.STL +3 -0
  41. assets/meshes/right_hand_middle_0_link.STL +3 -0
  42. assets/meshes/right_hand_middle_1_link.STL +3 -0
  43. assets/meshes/right_hand_palm_link.STL +3 -0
  44. assets/meshes/right_hand_thumb_0_link.STL +0 -0
  45. assets/meshes/right_hand_thumb_1_link.STL +3 -0
  46. assets/meshes/right_hand_thumb_2_link.STL +3 -0
  47. assets/meshes/right_hip_pitch_link.STL +3 -0
  48. assets/meshes/right_hip_roll_link.STL +3 -0
  49. assets/meshes/right_hip_yaw_link.STL +3 -0
  50. assets/meshes/right_knee_link.STL +3 -0
.gitattributes CHANGED
@@ -33,3 +33,56 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ assets/meshes/head_link.STL filter=lfs diff=lfs merge=lfs -text
37
+ assets/meshes/left_ankle_roll_link.STL filter=lfs diff=lfs merge=lfs -text
38
+ assets/meshes/left_elbow_link_merge.STL filter=lfs diff=lfs merge=lfs -text
39
+ assets/meshes/left_hand_index_0_link.STL filter=lfs diff=lfs merge=lfs -text
40
+ assets/meshes/left_hand_index_1_link.STL filter=lfs diff=lfs merge=lfs -text
41
+ assets/meshes/left_hand_middle_0_link.STL filter=lfs diff=lfs merge=lfs -text
42
+ assets/meshes/left_hand_middle_1_link.STL filter=lfs diff=lfs merge=lfs -text
43
+ assets/meshes/left_hand_palm_link.STL filter=lfs diff=lfs merge=lfs -text
44
+ assets/meshes/left_hand_thumb_1_link.STL filter=lfs diff=lfs merge=lfs -text
45
+ assets/meshes/left_hand_thumb_2_link.STL filter=lfs diff=lfs merge=lfs -text
46
+ assets/meshes/left_hip_pitch_link.STL filter=lfs diff=lfs merge=lfs -text
47
+ assets/meshes/left_hip_roll_link.STL filter=lfs diff=lfs merge=lfs -text
48
+ assets/meshes/left_hip_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
49
+ assets/meshes/left_knee_link.STL filter=lfs diff=lfs merge=lfs -text
50
+ assets/meshes/left_rubber_hand.STL filter=lfs diff=lfs merge=lfs -text
51
+ assets/meshes/left_shoulder_pitch_link.STL filter=lfs diff=lfs merge=lfs -text
52
+ assets/meshes/left_shoulder_roll_link.STL filter=lfs diff=lfs merge=lfs -text
53
+ assets/meshes/left_shoulder_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
54
+ assets/meshes/left_wrist_roll_link.STL filter=lfs diff=lfs merge=lfs -text
55
+ assets/meshes/left_wrist_roll_rubber_hand.STL filter=lfs diff=lfs merge=lfs -text
56
+ assets/meshes/left_wrist_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
57
+ assets/meshes/logo_link.STL filter=lfs diff=lfs merge=lfs -text
58
+ assets/meshes/pelvis.STL filter=lfs diff=lfs merge=lfs -text
59
+ assets/meshes/pelvis_contour_link.STL filter=lfs diff=lfs merge=lfs -text
60
+ assets/meshes/right_ankle_roll_link.STL filter=lfs diff=lfs merge=lfs -text
61
+ assets/meshes/right_elbow_link_merge.STL filter=lfs diff=lfs merge=lfs -text
62
+ assets/meshes/right_hand_index_0_link.STL filter=lfs diff=lfs merge=lfs -text
63
+ assets/meshes/right_hand_index_1_link.STL filter=lfs diff=lfs merge=lfs -text
64
+ assets/meshes/right_hand_middle_0_link.STL filter=lfs diff=lfs merge=lfs -text
65
+ assets/meshes/right_hand_middle_1_link.STL filter=lfs diff=lfs merge=lfs -text
66
+ assets/meshes/right_hand_palm_link.STL filter=lfs diff=lfs merge=lfs -text
67
+ assets/meshes/right_hand_thumb_1_link.STL filter=lfs diff=lfs merge=lfs -text
68
+ assets/meshes/right_hand_thumb_2_link.STL filter=lfs diff=lfs merge=lfs -text
69
+ assets/meshes/right_hip_pitch_link.STL filter=lfs diff=lfs merge=lfs -text
70
+ assets/meshes/right_hip_roll_link.STL filter=lfs diff=lfs merge=lfs -text
71
+ assets/meshes/right_hip_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
72
+ assets/meshes/right_knee_link.STL filter=lfs diff=lfs merge=lfs -text
73
+ assets/meshes/right_rubber_hand.STL filter=lfs diff=lfs merge=lfs -text
74
+ assets/meshes/right_shoulder_pitch_link.STL filter=lfs diff=lfs merge=lfs -text
75
+ assets/meshes/right_shoulder_roll_link.STL filter=lfs diff=lfs merge=lfs -text
76
+ assets/meshes/right_shoulder_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
77
+ assets/meshes/right_wrist_roll_link.STL filter=lfs diff=lfs merge=lfs -text
78
+ assets/meshes/right_wrist_roll_rubber_hand.STL filter=lfs diff=lfs merge=lfs -text
79
+ assets/meshes/right_wrist_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
80
+ assets/meshes/torso_constraint_L_link.STL filter=lfs diff=lfs merge=lfs -text
81
+ assets/meshes/torso_constraint_R_link.STL filter=lfs diff=lfs merge=lfs -text
82
+ assets/meshes/torso_link.STL filter=lfs diff=lfs merge=lfs -text
83
+ assets/meshes/torso_link_rev_1_0.STL filter=lfs diff=lfs merge=lfs -text
84
+ assets/meshes/waist_constraint_L.STL filter=lfs diff=lfs merge=lfs -text
85
+ assets/meshes/waist_constraint_R.STL filter=lfs diff=lfs merge=lfs -text
86
+ assets/meshes/waist_support_link.STL filter=lfs diff=lfs merge=lfs -text
87
+ assets/meshes/waist_yaw_link.STL filter=lfs diff=lfs merge=lfs -text
88
+ assets/meshes/waist_yaw_link_rev_1_0.STL filter=lfs diff=lfs merge=lfs -text
CAMERA_README.md ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Camera System for MuJoCo G1 Simulator
2
+
3
+ ## Overview
4
+
5
+ The simulator has two cameras defined:
6
+
7
+ ### 1. **`head_camera`** - Robot Ego-View
8
+ - **Location**: Attached to `torso_link` body
9
+ - **Position**: `[0.06, 0.0, 0.45]` relative to torso (6cm forward, 45cm up)
10
+ - **Orientation**: `euler="0 -0.8 -1.57"` (facing forward, slightly tilted down)
11
+ - **FOV**: 90 degrees
12
+ - **Purpose**: First-person view from the robot's perspective (like a head-mounted camera)
13
+
14
+ ### 2. **`global_view`** - Third-Person View
15
+ - **Location**: Fixed in world coordinates
16
+ - **Position**: `[2.910, -5.040, 3.860]` (behind and above the robot)
17
+ - **Purpose**: External observer view for visualization
18
+
19
+ ## How Camera Publishing Works
20
+
21
+ The camera system uses a **zero-copy architecture** with three components:
22
+
23
+ ```
24
+ ┌─────────────────────┐
25
+ │ MuJoCo Simulator │
26
+ │ (Main Process) │
27
+ │ │
28
+ │ 1. Render cameras │
29
+ │ 2. Copy to shmem │──┐
30
+ └─────────────────────┘ │
31
+ │ Shared Memory
32
+ │ (fast IPC)
33
+ ┌────▼────────────────┐
34
+ │ Image Publisher │
35
+ │ (Subprocess) │
36
+ │ │
37
+ │ 3. Encode images │
38
+ │ 4. ZMQ publish │
39
+ └─────────┬───────────┘
40
+
41
+ │ TCP (ZMQ)
42
+ │ port 5555
43
+
44
+ ┌─────────────────────┐
45
+ │ Your Policy/Client │
46
+ │ (Subscribe) │
47
+ └─────────────────────┘
48
+ ```
49
+
50
+ ### Key Technologies:
51
+ - **MuJoCo Renderer**: Captures RGB images from virtual cameras
52
+ - **Shared Memory (`multiprocessing.shared_memory`)**: Zero-copy transfer between processes
53
+ - **ZMQ (ZeroMQ)**: Network socket for publishing images (TCP)
54
+ - **No ROS2 required!** Pure Python multiprocessing
55
+
56
+ ## Usage
57
+
58
+ ### Basic Simulation (No Camera Publishing)
59
+ ```bash
60
+ python run_sim.py
61
+ ```
62
+
63
+ ### With Camera Publishing
64
+ ```bash
65
+ # Publish head camera on default port 5555
66
+ python run_sim.py --publish-images
67
+
68
+ # Publish multiple cameras
69
+ python run_sim.py --publish-images --cameras head_camera global_view
70
+
71
+ # Custom port
72
+ python run_sim.py --publish-images --camera-port 6000
73
+ ```
74
+
75
+ ### Viewing Camera Streams
76
+
77
+ In a **separate terminal**, run the camera viewer:
78
+
79
+ ```bash
80
+ # Basic usage (default: localhost:5555)
81
+ python view_cameras.py
82
+
83
+ # Custom host/port
84
+ python view_cameras.py --host 192.168.1.100 --port 6000
85
+
86
+ # Save images to directory
87
+ python view_cameras.py --save ./camera_recordings
88
+
89
+ # Adjust display rate
90
+ python view_cameras.py --fps 60
91
+ ```
92
+
93
+ **Keyboard Controls:**
94
+ - `q`: Quit viewer
95
+ - `s`: Save snapshot of current frame
96
+
97
+ **Example Workflow:**
98
+ ```bash
99
+ # Terminal 1: Start simulator with camera publishing
100
+ python run_sim.py --publish-images
101
+
102
+ # Terminal 2: View the camera feed
103
+ python view_cameras.py
104
+ ```
105
+
106
+ ### Receiving Images in Your Code
107
+
108
+ ```python
109
+ import zmq
110
+ import numpy as np
111
+ from gr00t_wbc.control.sensor.sensor_server import ImageMessageSchema
112
+
113
+ # Connect to camera publisher
114
+ context = zmq.Context()
115
+ socket = context.socket(zmq.SUB)
116
+ socket.connect("tcp://localhost:5555")
117
+ socket.setsockopt(zmq.SUBSCRIBE, b"") # Subscribe to all messages
118
+
119
+ while True:
120
+ # Receive serialized image data
121
+ data = socket.recv_pyobj()
122
+
123
+ # Decode images
124
+ if "head_camera" in data:
125
+ # Decode image (returns numpy array HxWx3 uint8)
126
+ img = decode_image(data["head_camera"])
127
+
128
+ # Use image for your policy
129
+ process_observation(img)
130
+ ```
131
+
132
+ ## Camera Configuration
133
+
134
+ Edit `config.yaml` to change camera settings:
135
+
136
+ ```yaml
137
+ IMAGE_DT: 0.033333 # Publishing rate (30 Hz)
138
+ ENABLE_OFFSCREEN: false # Enable for camera rendering
139
+ MP_START_METHOD: "spawn" # Multiprocessing method
140
+ ```
141
+
142
+ Or programmatically in `run_sim.py`:
143
+
144
+ ```python
145
+ camera_configs = {
146
+ "head_camera": {
147
+ "height": 480,
148
+ "width": 640
149
+ },
150
+ "custom_camera": {
151
+ "height": 224,
152
+ "width": 224
153
+ }
154
+ }
155
+ ```
156
+
157
+ ## Adding Custom Cameras
158
+
159
+ Edit `assets/g1_29dof_with_hand.xml` or `assets/scene_43dof.xml`:
160
+
161
+ ```xml
162
+ <!-- Camera attached to robot body -->
163
+ <body name="torso_link" pos="0 0 0.019">
164
+ <camera name="my_camera" pos="0.1 0.0 0.5" euler="0 0 0" fovy="60"/>
165
+ </body>
166
+
167
+ <!-- Camera in world coordinates -->
168
+ <worldbody>
169
+ <camera name="side_view" pos="0 -3.0 1.5" xyaxes="1 0 0 0 0.5 0.866"/>
170
+ </worldbody>
171
+ ```
172
+
173
+ Then publish it:
174
+ ```bash
175
+ python run_sim.py --publish-images --cameras my_camera
176
+ ```
177
+
178
+ ## Performance Notes
179
+
180
+ - **Rendering overhead**: ~5-10ms per camera per frame @ 640x480
181
+ - **Publishing overhead**: ~2-3ms for encoding + network
182
+ - Image publishing runs in **separate subprocess** to not block simulation
183
+ - Uses **shared memory** for fast inter-process image transfer
184
+ - Target: 30 FPS camera publishing while maintaining 500 Hz simulation
185
+
186
+ ## Troubleshooting
187
+
188
+ ### No images received?
189
+ 1. Check if offscreen rendering is enabled (`--publish-images` flag)
190
+ 2. Verify ZMQ port is not blocked
191
+ 3. Check camera exists in scene XML
192
+
193
+ ### Images are delayed?
194
+ - Reduce `IMAGE_DT` in config
195
+ - Lower camera resolution
196
+ - Use fewer cameras
197
+
198
+ ### "Camera not found" error?
199
+ - Verify camera name in XML matches config
200
+ - Check XML syntax is valid
201
+ - Ensure MuJoCo model loads successfully
202
+
203
+ ## Quick Reference
204
+
205
+ ### File Structure
206
+ ```
207
+ mujoco_sim_g1/
208
+ ├── run_sim.py # Simulator launcher
209
+ ├── view_cameras.py # Camera viewer (this file!)
210
+ ├── config.yaml # Simulator config
211
+ ├── assets/
212
+ │ ├── scene_43dof.xml # Scene with global_view camera
213
+ │ └── g1_29dof_with_hand.xml # Robot model with head_camera
214
+ └── sim/
215
+ ├── base_sim.py # MuJoCo environment
216
+ ├── sensor_utils.py # ZMQ camera server/client
217
+ └── image_publish_utils.py # Multiprocessing image publisher
218
+ ```
219
+
220
+ ### Camera Definitions
221
+
222
+ Edit these files to modify cameras:
223
+
224
+ **`assets/g1_29dof_with_hand.xml`** - Robot-attached cameras:
225
+ ```xml
226
+ <body name="torso_link" pos="0 0 0.019">
227
+ <camera name="head_camera" pos="0.06 0.0 0.45" euler="0 -0.8 -1.57" fovy="90"/>
228
+ </body>
229
+ ```
230
+
231
+ **`assets/scene_43dof.xml`** - World-frame cameras:
232
+ ```xml
233
+ <worldbody>
234
+ <camera name="global_view" pos="2.910 -5.040 3.860" xyaxes="0.866 0.500 0.000 -0.250 0.433 0.866" fovy="45"/>
235
+ </worldbody>
236
+ ```
237
+
238
+ ### Complete Example
239
+
240
+ ```bash
241
+ # Terminal 1: Start simulator with camera publishing
242
+ cd mujoco_sim_g1
243
+ python run_sim.py --publish-images --cameras head_camera global_view
244
+
245
+ # Terminal 2: View cameras in real-time
246
+ python view_cameras.py
247
+
248
+ # Terminal 3: Use in your policy (Python code)
249
+ from sim.sensor_utils import SensorClient, ImageUtils
250
+ client = SensorClient()
251
+ client.start_client("localhost", 5555)
252
+ data = client.receive_message()
253
+ img = ImageUtils.decode_image(data["head_camera"])
254
+ # img is now numpy array (H, W, 3) in BGR format
255
+ ```
256
+
README.md ADDED
@@ -0,0 +1,167 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Standalone MuJoCo Simulator for Unitree G1
2
+
3
+ This is a standalone MuJoCo physics simulator for the Unitree G1 robot, extracted from the GR00T-WholeBodyControl repository.
4
+
5
+ ## Features
6
+
7
+ - **Physics Simulation**: Runs G1 robot in MuJoCo at 500Hz (2ms timestep)
8
+ - **DDS Communication**: Uses Unitree SDK2 DDS for robot communication
9
+ - **Compatible**: Works with existing `unitree_g1.py` control code via DDS
10
+ - **Visualization**: Real-time 3D visualization of robot motion
11
+
12
+ ## Directory Structure
13
+
14
+ ```
15
+ mujoco_sim_g1/
16
+ ├── requirements.txt # Python dependencies
17
+ ├── run_sim.py # Main launcher script
18
+ ├── config.yaml # Simulation configuration
19
+ ├── sim/ # Simulation modules
20
+ │ ├── base_sim.py
21
+ │ ├── simulator_factory.py
22
+ │ ├── unitree_sdk2py_bridge.py
23
+ │ └── ...
24
+ └── assets/ # Robot models
25
+ ├── g1_29dof_with_hand.xml
26
+ └── meshes/*.STL
27
+ ```
28
+
29
+ ## Installation
30
+
31
+ ### 1. Create Virtual Environment (Recommended)
32
+
33
+ ```bash
34
+ cd mujoco_sim_g1
35
+ python3 -m venv venv
36
+ source venv/bin/activate # On Windows: venv\Scripts\activate
37
+ ```
38
+
39
+ ### 2. Install Dependencies
40
+
41
+ ```bash
42
+ pip install -r requirements.txt
43
+ ```
44
+
45
+ **Note**: If you encounter issues with `rclpy`, you can comment out the ROS2 imports in `sim/base_sim.py` (lines 11, 609-617) if you don't need camera publishing.
46
+
47
+ ## Usage
48
+
49
+ ### Basic Usage
50
+
51
+ ```bash
52
+ # Activate environment
53
+ source venv/bin/activate
54
+
55
+ # Run the simulator
56
+ python run_sim.py
57
+ ```
58
+
59
+ The simulator will:
60
+ 1. Load the G1 robot model
61
+ 2. Initialize DDS communication on domain 0
62
+ 3. Open a MuJoCo visualization window
63
+ 4. Start listening for motor commands via DDS
64
+
65
+ ### Running with Your Robot Control Code
66
+
67
+ Once the simulator is running, you can control it from another terminal:
68
+
69
+ ```bash
70
+ # In another terminal
71
+ cd /home/yope/Documents/lerobot
72
+ conda activate unitree_lerobot
73
+
74
+ # Run your existing control code
75
+ python test_locomotion_minimal.py
76
+ ```
77
+
78
+ Your `unitree_g1.py` code will automatically connect to the simulator via DDS!
79
+
80
+ ## Configuration
81
+
82
+ Edit `config.yaml` to customize:
83
+
84
+ - **SIMULATE_DT**: Simulation timestep (default: 0.002s = 500Hz)
85
+ - **DOMAIN_ID**: DDS domain ID (default: 0)
86
+ - **ENABLE_ONSCREEN**: Show visualization (default: true)
87
+ - **USE_JOYSTICK**: Enable gamepad control (default: false)
88
+ - **ROBOT_SCENE**: Path to MuJoCo XML scene
89
+
90
+ ### PD Gains
91
+
92
+ The simulator uses the following PD gains (matching NVIDIA GR00T):
93
+
94
+ **Legs (indices 0-11):**
95
+ - Hip joints: KP=150, KD=2
96
+ - Knee joints: KP=300, KD=4
97
+ - Ankle joints: KP=40, KD=2
98
+
99
+ **Waist (indices 12-14):**
100
+ - All waist joints: KP=250, KD=5
101
+
102
+ **Arms (indices 15-28):**
103
+ - Shoulders: KP=100, KD=2-5
104
+ - Elbows/Wrists: KP=20-40, KD=1-2
105
+
106
+ ## Troubleshooting
107
+
108
+ ### ImportError: cannot import name 'ChannelFactoryInitialize'
109
+
110
+ ```bash
111
+ pip install --upgrade unitree-sdk2py
112
+ ```
113
+
114
+ ### ROS2/rclpy errors
115
+
116
+ If you don't need camera publishing, edit `sim/base_sim.py`:
117
+ - Comment out line 11: `import rclpy`
118
+ - Comment out lines 609-617 (ROS2 initialization)
119
+
120
+ ### Meshes not found
121
+
122
+ Make sure mesh paths in `assets/g1_29dof_with_hand.xml` are relative:
123
+ ```xml
124
+ <mesh file="meshes/pelvis.STL"/> <!-- Not absolute path -->
125
+ ```
126
+
127
+ ### Robot falls immediately
128
+
129
+ Check that:
130
+ 1. PD gains match NVIDIA's values (see config.yaml)
131
+ 2. Velocity command scaling is correct (ang_vel_scale=0.25, cmd_scale=[2.0, 2.0, 0.25])
132
+ 3. Observations for missing joints are zeroed out (indices 12, 14, 20, 21, 27, 28)
133
+
134
+ ## Technical Details
135
+
136
+ ### Communication
137
+
138
+ The simulator publishes:
139
+ - **`rt/lowstate`**: Robot state (joint positions, velocities, IMU, etc.)
140
+ - **`rt/wirelesscontroller`**: Wireless remote controller state (if joystick enabled)
141
+
142
+ The simulator subscribes to:
143
+ - **`rt/lowcmd`**: Motor commands (position, velocity, torque, KP, KD)
144
+
145
+ ### Coordinate Frames
146
+
147
+ - **World frame**: Z-up
148
+ - **Joint ordering**: 29 DOF (12 legs + 3 waist + 14 arms)
149
+ - **IMU**: Quaternion in [w, x, y, z] format
150
+
151
+ ### Performance
152
+
153
+ - Simulation runs at ~500Hz (2ms timestep)
154
+ - Viewer updates at ~50Hz (20ms)
155
+ - Typical CPU usage: 20-40% on single core
156
+
157
+ ## Files from GR00T-WholeBodyControl
158
+
159
+ This standalone simulator was extracted from:
160
+ - `gr00t_wbc/control/envs/g1/sim/` (simulation modules)
161
+ - `gr00t_wbc/control/robot_model/model_data/g1/` (robot model files)
162
+ - `gr00t_wbc/control/main/teleop/configs/g1_29dof_gear_wbc.yaml` (configuration)
163
+
164
+ ## License
165
+
166
+ Follows the license of the original GR00T-WholeBodyControl repository.
167
+
assets/g1_29dof_old.xml ADDED
@@ -0,0 +1,568 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <mujoco model="g1_29dof">
2
+ <compiler angle="radian" meshdir="meshes" />
3
+
4
+ <default>
5
+ <default class="torso_motor">
6
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
7
+ </default>
8
+ <default class="leg_motor">
9
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
10
+ </default>
11
+ <default class="ankle_motor">
12
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
13
+ </default>
14
+ <default class="arm_motor">
15
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
16
+ </default>
17
+ <default class="wrist_motor">
18
+ <joint damping="0.05" armature="0.01" frictionloss="0.1"/>
19
+ </default>
20
+
21
+ </default>
22
+
23
+ <asset>
24
+ <mesh name="pelvis" file="pelvis.STL" />
25
+ <mesh name="pelvis_contour_link" file="pelvis_contour_link.STL" />
26
+ <mesh name="left_hip_pitch_link" file="left_hip_pitch_link.STL" />
27
+ <mesh name="left_hip_roll_link" file="left_hip_roll_link.STL" />
28
+ <mesh name="left_hip_yaw_link" file="left_hip_yaw_link.STL" />
29
+ <mesh name="left_knee_link" file="left_knee_link.STL" />
30
+ <mesh name="left_ankle_pitch_link" file="left_ankle_pitch_link.STL" />
31
+ <mesh name="left_ankle_roll_link" file="left_ankle_roll_link.STL" />
32
+ <mesh name="right_hip_pitch_link" file="right_hip_pitch_link.STL" />
33
+ <mesh name="right_hip_roll_link" file="right_hip_roll_link.STL" />
34
+ <mesh name="right_hip_yaw_link" file="right_hip_yaw_link.STL" />
35
+ <mesh name="right_knee_link" file="right_knee_link.STL" />
36
+ <mesh name="right_ankle_pitch_link" file="right_ankle_pitch_link.STL" />
37
+ <mesh name="right_ankle_roll_link" file="right_ankle_roll_link.STL" />
38
+ <mesh name="waist_yaw_link" file="waist_yaw_link.STL" />
39
+ <mesh name="waist_roll_link" file="waist_roll_link.STL" />
40
+ <mesh name="torso_link" file="torso_link.STL" />
41
+ <mesh name="logo_link" file="logo_link.STL" />
42
+ <mesh name="head_link" file="head_link.STL" />
43
+ <mesh name="waist_support_link" file="waist_support_link.STL" />
44
+ <mesh name="left_shoulder_pitch_link" file="left_shoulder_pitch_link.STL" />
45
+ <mesh name="left_shoulder_roll_link" file="left_shoulder_roll_link.STL" />
46
+ <mesh name="left_shoulder_yaw_link" file="left_shoulder_yaw_link.STL" />
47
+ <mesh name="left_elbow_link" file="left_elbow_link.STL" />
48
+ <mesh name="left_wrist_roll_link" file="left_wrist_roll_link.STL" />
49
+ <mesh name="left_wrist_pitch_link" file="left_wrist_pitch_link.STL" />
50
+ <mesh name="left_wrist_yaw_link" file="left_wrist_yaw_link.STL" />
51
+ <mesh name="left_rubber_hand" file="left_rubber_hand.STL" />
52
+ <mesh name="right_shoulder_pitch_link" file="right_shoulder_pitch_link.STL" />
53
+ <mesh name="right_shoulder_roll_link" file="right_shoulder_roll_link.STL" />
54
+ <mesh name="right_shoulder_yaw_link" file="right_shoulder_yaw_link.STL" />
55
+ <mesh name="right_elbow_link" file="right_elbow_link.STL" />
56
+ <mesh name="right_wrist_roll_link" file="right_wrist_roll_link.STL" />
57
+ <mesh name="right_wrist_pitch_link" file="right_wrist_pitch_link.STL" />
58
+ <mesh name="right_wrist_yaw_link" file="right_wrist_yaw_link.STL" />
59
+ <mesh name="right_rubber_hand" file="right_rubber_hand.STL" />
60
+ </asset>
61
+
62
+ <worldbody>
63
+ <body name="pelvis" pos="0 0 0.793" quat="1 0 0 0">
64
+ <inertial pos="0 0 -0.07605" quat="1 0 -0.000399148 0" mass="3.813"
65
+ diaginertia="0.010549 0.0093089 0.0079184" />
66
+ <joint name="floating_base_joint" type="free" limited="false" actuatorfrclimited="false" />
67
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
68
+ mesh="pelvis" />
69
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
70
+ mesh="pelvis_contour_link" />
71
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="pelvis_contour_link" />
72
+ <body name="left_hip_pitch_link" pos="0 0.064452 -0.1027">
73
+ <inertial pos="0.002741 0.047791 -0.02606" quat="0.954862 0.293964 0.0302556 0.030122"
74
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
75
+ <joint name="left_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
76
+ actuatorfrcrange="-88 88" class="leg_motor" />
77
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
78
+ mesh="left_hip_pitch_link" />
79
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="left_hip_pitch_link" />
80
+ <body name="left_hip_roll_link" pos="0 0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
81
+ <inertial pos="0.029812 -0.001045 -0.087934"
82
+ quat="0.977808 -1.97119e-05 0.205576 -0.0403793" mass="1.52"
83
+ diaginertia="0.00254986 0.00241169 0.00148755" />
84
+ <joint name="left_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.5236 2.9671"
85
+ actuatorfrcrange="-88 88" class="leg_motor" />
86
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
87
+ mesh="left_hip_roll_link" />
88
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_roll_link" />
89
+ <body name="left_hip_yaw_link" pos="0.025001 0 -0.12412">
90
+ <inertial pos="-0.057709 -0.010981 -0.15078" quat="0.600598 0.15832 0.223482 0.751181"
91
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
92
+ <joint name="left_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
93
+ actuatorfrcrange="-88 88" class="leg_motor" />
94
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
95
+ mesh="left_hip_yaw_link" />
96
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_yaw_link" />
97
+ <body name="left_knee_link" pos="-0.078273 0.0021489 -0.17734"
98
+ quat="0.996179 0 0.0873386 0">
99
+ <inertial pos="0.005457 0.003964 -0.12074"
100
+ quat="0.923418 -0.0327699 0.0158246 0.382067" mass="1.932"
101
+ diaginertia="0.0113804 0.0112778 0.00146458" />
102
+ <joint name="left_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
103
+ actuatorfrcrange="-139 139" class="leg_motor" />
104
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
105
+ rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
106
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
107
+ <body name="left_ankle_pitch_link" pos="0 -9.4445e-05 -0.30001">
108
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
109
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
110
+ <joint name="left_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
111
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor"/>
112
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
113
+ rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
114
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
115
+ <body name="left_ankle_roll_link" pos="0 0 -0.017558">
116
+ <inertial pos="0.026505 0 -0.016425"
117
+ quat="-0.000481092 0.728482 -0.000618967 0.685065" mass="0.608"
118
+ diaginertia="0.00167218 0.0016161 0.000217621" />
119
+ <joint name="left_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
120
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor"/>
121
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
122
+ rgba="0.2 0.2 0.2 1" mesh="left_ankle_roll_link" />
123
+ <body name="dummy_lf_1" >
124
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
125
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
126
+ <site name="left_foot_contact_1" pos="-0.05 0.025 -0.03" size="0.005" />
127
+ </body>
128
+ <body name="dummy_lf_2" >
129
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
130
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
131
+ <site name="left_foot_contact_2" pos="-0.05 -0.025 -0.03" size="0.005" />
132
+ </body>
133
+ <body name="dummy_lf_3" >
134
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
135
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
136
+ <site name="left_foot_contact_3" pos="0.12 0.03 -0.03" size="0.005" />
137
+ </body>
138
+ <body name="dummy_lf_4" >
139
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
140
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
141
+ <site name="left_foot_contact_4" pos="0.12 -0.03 -0.03" size="0.005" />
142
+ </body>
143
+ </body>
144
+ </body>
145
+ </body>
146
+ </body>
147
+ </body>
148
+ </body>
149
+ <body name="right_hip_pitch_link" pos="0 -0.064452 -0.1027">
150
+ <inertial pos="0.002741 -0.047791 -0.02606" quat="0.954862 -0.293964 0.0302556 -0.030122"
151
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
152
+ <joint name="right_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
153
+ actuatorfrcrange="-88 88" class="leg_motor" />
154
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
155
+ mesh="right_hip_pitch_link" />
156
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="right_hip_pitch_link" />
157
+ <body name="right_hip_roll_link" pos="0 -0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
158
+ <inertial pos="0.029812 0.001045 -0.087934" quat="0.977808 1.97119e-05 0.205576 0.0403793"
159
+ mass="1.52" diaginertia="0.00254986 0.00241169 0.00148755" />
160
+ <joint name="right_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-2.9671 0.5236"
161
+ actuatorfrcrange="-88 88" class="leg_motor" />
162
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
163
+ mesh="right_hip_roll_link" />
164
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_roll_link" />
165
+ <body name="right_hip_yaw_link" pos="0.025001 0 -0.12412">
166
+ <inertial pos="-0.057709 0.010981 -0.15078" quat="0.751181 0.223482 0.15832 0.600598"
167
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
168
+ <joint name="right_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
169
+ actuatorfrcrange="-88 88" class="leg_motor" />
170
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
171
+ mesh="right_hip_yaw_link" />
172
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_yaw_link" />
173
+ <body name="right_knee_link" pos="-0.078273 -0.0021489 -0.17734"
174
+ quat="0.996179 0 0.0873386 0">
175
+ <inertial pos="0.005457 -0.003964 -0.12074"
176
+ quat="0.923439 0.0345276 0.0116333 -0.382012" mass="1.932"
177
+ diaginertia="0.011374 0.0112843 0.00146452" />
178
+ <joint name="right_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
179
+ actuatorfrcrange="-139 139" class="leg_motor" />
180
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
181
+ rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
182
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
183
+ <body name="right_ankle_pitch_link" pos="0 9.4445e-05 -0.30001">
184
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
185
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
186
+ <joint name="right_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
187
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor" />
188
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
189
+ rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
190
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
191
+ <body name="right_ankle_roll_link" pos="0 0 -0.017558">
192
+ <inertial pos="0.026505 0 -0.016425"
193
+ quat="0.000481092 0.728482 0.000618967 0.685065" mass="0.608"
194
+ diaginertia="0.00167218 0.0016161 0.000217621" />
195
+ <joint name="right_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
196
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor" />
197
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
198
+ rgba="0.2 0.2 0.2 1" mesh="right_ankle_roll_link" />
199
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
200
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
201
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
202
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
203
+ <body name="dummy_rf_1" >
204
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
205
+ <site name="right_foot_contact_1" pos="-0.05 0.025 -0.03" size="0.005" />
206
+ </body>
207
+ <body name="dummy_rf_2" >
208
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
209
+ <site name="right_foot_contact_2" pos="-0.05 -0.025 -0.03" size="0.005" />
210
+ </body>
211
+ <body name="dummy_rf_3" >
212
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
213
+ <site name="right_foot_contact_3" pos="0.12 0.03 -0.03" size="0.005" />
214
+ </body>
215
+ <body name="dummy_rf_4" >
216
+ <inertial pos="0 0 0" mass="0.0001" diaginertia="0 0 0" />
217
+ <site name="right_foot_contact_4" pos="0.12 -0.03 -0.03" size="0.005" />
218
+ </body>
219
+ </body>
220
+ </body>
221
+ </body>
222
+ </body>
223
+ </body>
224
+ </body>
225
+ <body name="waist_yaw_link">
226
+ <inertial pos="0.003964 0 0.018769" quat="-0.0178291 0.628464 0.0282471 0.777121"
227
+ mass="0.244" diaginertia="0.000158561 0.000124229 9.67669e-05" />
228
+ <joint name="waist_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.618 2.618"
229
+ actuatorfrcrange="-88 88" class="torso_motor"/>
230
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
231
+ mesh="waist_yaw_link" />
232
+ <body name="waist_roll_link" pos="-0.0039635 0 0.035">
233
+ <inertial pos="0 -0.000236 0.010111" quat="0.99979 0.020492 0 0" mass="0.047"
234
+ diaginertia="7.515e-06 6.40206e-06 3.98394e-06" />
235
+ <joint name="waist_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.52 0.52"
236
+ actuatorfrcrange="-50 50" class="torso_motor"/>
237
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
238
+ mesh="waist_roll_link" />
239
+ <body name="torso_link" pos="0 0 0.019">
240
+ <camera name="head_camera" pos="0.06 0.0 0.45" euler="0 -0.8 -1.57"/>
241
+ <inertial pos="0.00331658 0.000261533 0.179856"
242
+ quat="0.999831 0.000376204 0.0179895 -0.00377704" mass="9.598"
243
+ diaginertia="0.12407 0.111951 0.0325382" />
244
+ <joint name="waist_pitch_joint" pos="0 0 0" axis="0 1 0" range="-0.52 0.52"
245
+ actuatorfrcrange="-50 50" class="torso_motor"/>
246
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
247
+ mesh="torso_link" />
248
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="torso_link" />
249
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
250
+ group="1" density="0" rgba="0.2 0.2 0.2 1" mesh="logo_link" />
251
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.2 0.2 0.2 1"
252
+ mesh="logo_link" />
253
+ <geom pos="0.0039635 0 -0.054" type="mesh" contype="0" conaffinity="0" group="1"
254
+ density="0" rgba="0.2 0.2 0.2 1" mesh="head_link" />
255
+ <geom pos="0.0039635 0 -0.054" type="mesh" rgba="0.2 0.2 0.2 1" mesh="head_link" />
256
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
257
+ group="1" density="0" rgba="0.7 0.7 0.7 1" mesh="waist_support_link" />
258
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.7 0.7 0.7 1"
259
+ mesh="waist_support_link" />
260
+ <site name="imu" size="0.01" pos="-0.03959 -0.00224 0.13792" />
261
+ <body name="left_shoulder_pitch_link" pos="0.0039563 0.10022 0.23778"
262
+ quat="0.990264 0.139201 1.38722e-05 -9.86868e-05">
263
+ <inertial pos="0 0.035892 -0.011628" quat="0.654152 0.0130458 -0.326267 0.68225"
264
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
265
+ <joint name="left_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
266
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
267
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
268
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_pitch_link" />
269
+ <geom size="0.03 0.025" pos="0 0.04 -0.01" quat="0.707107 0 0.707107 0"
270
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
271
+ <body name="left_shoulder_roll_link" pos="0 0.038 -0.013831"
272
+ quat="0.990268 -0.139172 0 0">
273
+ <inertial pos="-0.000227 0.00727 -0.063243"
274
+ quat="0.701256 -0.0196223 -0.00710317 0.712604" mass="0.643"
275
+ diaginertia="0.000691311 0.000618011 0.000388977" />
276
+ <joint name="left_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
277
+ range="-1.5882 2.2515" actuatorfrcrange="-25 25" class="arm_motor" />
278
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
279
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_roll_link" />
280
+ <geom size="0.03 0.015" pos="-0.004 0.006 -0.053" type="cylinder"
281
+ rgba="0.7 0.7 0.7 1" />
282
+ <body name="left_shoulder_yaw_link" pos="0 0.00624 -0.1032">
283
+ <inertial pos="0.010773 -0.002949 -0.072009"
284
+ quat="0.716879 -0.0964829 -0.0679942 0.687134" mass="0.734"
285
+ diaginertia="0.00106187 0.00103217 0.000400661" />
286
+ <joint name="left_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
287
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
288
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
289
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
290
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
291
+ <body name="left_elbow_link" pos="0.015783 0 -0.080518">
292
+ <inertial pos="0.064956 0.004454 -0.010062"
293
+ quat="0.541765 0.636132 0.388821 0.388129" mass="0.6"
294
+ diaginertia="0.000443035 0.000421612 0.000259353" />
295
+ <joint name="left_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
296
+ actuatorfrcrange="-25 25" class="arm_motor" />
297
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
298
+ rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
299
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
300
+ <body name="left_wrist_roll_link" pos="0.1 0.00188791 -0.01">
301
+ <inertial pos="0.0171394 0.000537591 4.8864e-07"
302
+ quat="0.575338 0.411667 -0.574906 0.411094" mass="0.085445"
303
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
304
+ <joint name="left_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
305
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
306
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
307
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
308
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
309
+ <body name="left_wrist_pitch_link" pos="0.038 0 0">
310
+ <inertial pos="0.0229999 -0.00111685 -0.00111658"
311
+ quat="0.249998 0.661363 0.293036 0.643608" mass="0.48405"
312
+ diaginertia="0.000430353 0.000429873 0.000164648" />
313
+ <joint name="left_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
314
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
315
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
316
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
317
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
318
+ <body name="left_wrist_yaw_link" pos="0.046 0 0">
319
+ <inertial pos="0.0708244 0.000191745 0.00161742"
320
+ quat="0.510571 0.526295 0.468078 0.493188" mass="0.254576"
321
+ diaginertia="0.000646113 0.000559993 0.000147566" />
322
+ <joint name="left_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
323
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
324
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
325
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
326
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
327
+ <body name="left_rubber_hand" >
328
+ <inertial pos="0.0001 0.0001 0.0001" mass="0.0001" diaginertia="0 0 0" />
329
+ <geom pos="0.0415 0.003 0" quat="1 0 0 0" type="mesh" density="0" rgba="0.7 0.7 0.7 1"
330
+ mesh="left_rubber_hand" />
331
+ </body>
332
+ </body>
333
+ </body>
334
+ </body>
335
+ </body>
336
+ </body>
337
+ </body>
338
+ </body>
339
+ <body name="right_shoulder_pitch_link" pos="0.0039563 -0.10021 0.23778"
340
+ quat="0.990264 -0.139201 1.38722e-05 9.86868e-05">
341
+ <inertial pos="0 -0.035892 -0.011628" quat="0.68225 -0.326267 0.0130458 0.654152"
342
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
343
+ <joint name="right_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
344
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
345
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
346
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_pitch_link" />
347
+ <geom size="0.03 0.025" pos="0 -0.04 -0.01" quat="0.707107 0 0.707107 0"
348
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
349
+ <body name="right_shoulder_roll_link" pos="0 -0.038 -0.013831"
350
+ quat="0.990268 0.139172 0 0">
351
+ <inertial pos="-0.000227 -0.00727 -0.063243"
352
+ quat="0.712604 -0.00710317 -0.0196223 0.701256" mass="0.643"
353
+ diaginertia="0.000691311 0.000618011 0.000388977" />
354
+ <joint name="right_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
355
+ range="-2.2515 1.5882" actuatorfrcrange="-25 25" class="arm_motor" />
356
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
357
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_roll_link" />
358
+ <geom size="0.03 0.015" pos="-0.004 -0.006 -0.053" type="cylinder"
359
+ rgba="0.7 0.7 0.7 1" />
360
+ <body name="right_shoulder_yaw_link" pos="0 -0.00624 -0.1032">
361
+ <inertial pos="0.010773 0.002949 -0.072009"
362
+ quat="0.687134 -0.0679942 -0.0964829 0.716879" mass="0.734"
363
+ diaginertia="0.00106187 0.00103217 0.000400661" />
364
+ <joint name="right_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
365
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
366
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
367
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
368
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
369
+ <body name="right_elbow_link" pos="0.015783 0 -0.080518">
370
+ <inertial pos="0.064956 -0.004454 -0.010062"
371
+ quat="0.388129 0.388821 0.636132 0.541765" mass="0.6"
372
+ diaginertia="0.000443035 0.000421612 0.000259353" />
373
+ <joint name="right_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
374
+ actuatorfrcrange="-25 25" class="arm_motor" />
375
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
376
+ rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
377
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
378
+ <body name="right_wrist_roll_link" pos="0.1 -0.00188791 -0.01">
379
+ <inertial pos="0.0171394 -0.000537591 4.8864e-07"
380
+ quat="0.411667 0.575338 -0.411094 0.574906" mass="0.085445"
381
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
382
+ <joint name="right_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
383
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
384
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
385
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
386
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
387
+ <body name="right_wrist_pitch_link" pos="0.038 0 0">
388
+ <inertial pos="0.0229999 0.00111685 -0.00111658"
389
+ quat="0.643608 0.293036 0.661363 0.249998" mass="0.48405"
390
+ diaginertia="0.000430353 0.000429873 0.000164648" />
391
+ <joint name="right_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
392
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
393
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
394
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
395
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
396
+ <body name="right_wrist_yaw_link" pos="0.046 0 0">
397
+ <inertial pos="0.0708244 -0.000191745 0.00161742"
398
+ quat="0.493188 0.468078 0.526295 0.510571" mass="0.254576"
399
+ diaginertia="0.000646113 0.000559993 0.000147566" />
400
+ <joint name="right_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
401
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
402
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
403
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
404
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
405
+ <body name="right_rubber_hand" >
406
+ <inertial pos="0.0001 0.0001 0.0001" mass="0.0001" diaginertia="0 0 0" />
407
+ <geom pos="0.0415 -0.003 0" quat="1 0 0 0" type="mesh" density="0" rgba="0.7 0.7 0.7 1"
408
+ mesh="right_rubber_hand" />
409
+ </body>
410
+ </body>
411
+ </body>
412
+ </body>
413
+ </body>
414
+ </body>
415
+ </body>
416
+ </body>
417
+ </body>
418
+ </body>
419
+ </body>
420
+ </body>
421
+ </worldbody>
422
+
423
+ <actuator>
424
+ <motor name="left_hip_pitch" joint="left_hip_pitch_joint" ctrlrange="-88 88" />
425
+ <motor name="left_hip_roll" joint="left_hip_roll_joint" ctrlrange="-88 88" />
426
+ <motor name="left_hip_yaw" joint="left_hip_yaw_joint" ctrlrange="-88 88" />
427
+ <motor name="left_knee" joint="left_knee_joint" ctrlrange="-139 139" />
428
+ <motor name="left_ankle_pitch" joint="left_ankle_pitch_joint" ctrlrange="-50 50" />
429
+ <motor name="left_ankle_roll" joint="left_ankle_roll_joint" ctrlrange="-50 50" />
430
+
431
+ <motor name="right_hip_pitch" joint="right_hip_pitch_joint" ctrlrange="-88 88" />
432
+ <motor name="right_hip_roll" joint="right_hip_roll_joint" ctrlrange="-88 88" />
433
+ <motor name="right_hip_yaw" joint="right_hip_yaw_joint" ctrlrange="-88 88" />
434
+ <motor name="right_knee" joint="right_knee_joint" ctrlrange="-139 139" />
435
+ <motor name="right_ankle_pitch" joint="right_ankle_pitch_joint" ctrlrange="-50 50" />
436
+ <motor name="right_ankle_roll" joint="right_ankle_roll_joint" ctrlrange="-50 50" />
437
+
438
+ <motor name="waist_yaw" joint="waist_yaw_joint" ctrlrange="-88 88" />
439
+ <motor name="waist_roll" joint="waist_roll_joint" ctrlrange="-50 50" />
440
+ <motor name="waist_pitch" joint="waist_pitch_joint" ctrlrange="-50 50" />
441
+
442
+ <motor name="left_shoulder_pitch" joint="left_shoulder_pitch_joint" ctrlrange="-25 25" />
443
+ <motor name="left_shoulder_roll" joint="left_shoulder_roll_joint" ctrlrange="-25 25" />
444
+ <motor name="left_shoulder_yaw" joint="left_shoulder_yaw_joint" ctrlrange="-25 25" />
445
+ <motor name="left_elbow" joint="left_elbow_joint" ctrlrange="-25 25" />
446
+ <motor name="left_wrist_roll" joint="left_wrist_roll_joint" ctrlrange="-25 25" />
447
+ <motor name="left_wrist_pitch" joint="left_wrist_pitch_joint" ctrlrange="-5 5" />
448
+ <motor name="left_wrist_yaw" joint="left_wrist_yaw_joint" ctrlrange="-5 5" />
449
+
450
+ <motor name="right_shoulder_pitch" joint="right_shoulder_pitch_joint" ctrlrange="-25 25" />
451
+ <motor name="right_shoulder_roll" joint="right_shoulder_roll_joint" ctrlrange="-25 25" />
452
+ <motor name="right_shoulder_yaw" joint="right_shoulder_yaw_joint" ctrlrange="-25 25" />
453
+ <motor name="right_elbow" joint="right_elbow_joint" ctrlrange="-25 25" />
454
+ <motor name="right_wrist_roll" joint="right_wrist_roll_joint" ctrlrange="-25 25" />
455
+ <motor name="right_wrist_pitch" joint="right_wrist_pitch_joint" ctrlrange="-5 5" />
456
+ <motor name="right_wrist_yaw" joint="right_wrist_yaw_joint" ctrlrange="-5 5" />
457
+ </actuator>
458
+
459
+ <sensor>
460
+ <jointpos name="left_hip_pitch_pos" joint="left_hip_pitch_joint" />
461
+ <jointpos name="left_hip_roll_pos" joint="left_hip_roll_joint" />
462
+ <jointpos name="left_hip_yaw_pos" joint="left_hip_yaw_joint" />
463
+ <jointpos name="left_knee_pos" joint="left_knee_joint" />
464
+ <jointpos name="left_ankle_pitch_pos" joint="left_ankle_pitch_joint" />
465
+ <jointpos name="left_ankle_roll_pos" joint="left_ankle_roll_joint" />
466
+ <jointpos name="right_hip_pitch_pos" joint="right_hip_pitch_joint" />
467
+ <jointpos name="right_hip_roll_pos" joint="right_hip_roll_joint" />
468
+ <jointpos name="right_hip_yaw_pos" joint="right_hip_yaw_joint" />
469
+ <jointpos name="right_knee_pos" joint="right_knee_joint" />
470
+ <jointpos name="right_ankle_pitch_pos" joint="right_ankle_pitch_joint" />
471
+ <jointpos name="right_ankle_roll_pos" joint="right_ankle_roll_joint" />
472
+ <jointpos name="waist_yaw_pos" joint="waist_yaw_joint" />
473
+ <jointpos name="waist_roll_pos" joint="waist_roll_joint" />
474
+ <jointpos name="waist_pitch_pos" joint="waist_pitch_joint" />
475
+ <jointpos name="left_shoulder_pitch_pos" joint="left_shoulder_pitch_joint" />
476
+ <jointpos name="left_shoulder_roll_pos" joint="left_shoulder_roll_joint" />
477
+ <jointpos name="left_shoulder_yaw_pos" joint="left_shoulder_yaw_joint" />
478
+ <jointpos name="left_elbow_pos" joint="left_elbow_joint" />
479
+ <jointpos name="left_wrist_roll_pos" joint="left_wrist_roll_joint" />
480
+ <jointpos name="left_wrist_pitch_pos" joint="left_wrist_pitch_joint" />
481
+ <jointpos name="left_wrist_yaw_pos" joint="left_wrist_yaw_joint" />
482
+ <jointpos name="right_shoulder_pitch_pos" joint="right_shoulder_pitch_joint" />
483
+ <jointpos name="right_shoulder_roll_pos" joint="right_shoulder_roll_joint" />
484
+ <jointpos name="right_shoulder_yaw_pos" joint="right_shoulder_yaw_joint" />
485
+ <jointpos name="right_elbow_pos" joint="right_elbow_joint" />
486
+ <jointpos name="right_wrist_roll_pos" joint="right_wrist_roll_joint" />
487
+ <jointpos name="right_wrist_pitch_pos" joint="right_wrist_pitch_joint" />
488
+ <jointpos name="right_wrist_yaw_pos" joint="right_wrist_yaw_joint" />
489
+
490
+ <jointvel name="left_hip_pitch_vel" joint="left_hip_pitch_joint" />
491
+ <jointvel name="left_hip_roll_vel" joint="left_hip_roll_joint" />
492
+ <jointvel name="left_hip_yaw_vel" joint="left_hip_yaw_joint" />
493
+ <jointvel name="left_knee_vel" joint="left_knee_joint" />
494
+ <jointvel name="left_ankle_pitch_vel" joint="left_ankle_pitch_joint" />
495
+ <jointvel name="left_ankle_roll_vel" joint="left_ankle_roll_joint" />
496
+ <jointvel name="right_hip_pitch_vel" joint="right_hip_pitch_joint" />
497
+ <jointvel name="right_hip_roll_vel" joint="right_hip_roll_joint" />
498
+ <jointvel name="right_hip_yaw_vel" joint="right_hip_yaw_joint" />
499
+ <jointvel name="right_knee_vel" joint="right_knee_joint" />
500
+ <jointvel name="right_ankle_pitch_vel" joint="right_ankle_pitch_joint" />
501
+ <jointvel name="right_ankle_roll_vel" joint="right_ankle_roll_joint" />
502
+ <jointvel name="waist_yaw_vel" joint="waist_yaw_joint" />
503
+ <jointvel name="waist_roll_vel" joint="waist_roll_joint" />
504
+ <jointvel name="waist_pitch_vel" joint="waist_pitch_joint" />
505
+ <jointvel name="left_shoulder_pitch_vel" joint="left_shoulder_pitch_joint" />
506
+ <jointvel name="left_shoulder_roll_vel" joint="left_shoulder_roll_joint" />
507
+ <jointvel name="left_shoulder_yaw_vel" joint="left_shoulder_yaw_joint" />
508
+ <jointvel name="left_elbow_vel" joint="left_elbow_joint" />
509
+ <jointvel name="left_wrist_roll_vel" joint="left_wrist_roll_joint" />
510
+ <jointvel name="left_wrist_pitch_vel" joint="left_wrist_pitch_joint" />
511
+ <jointvel name="left_wrist_yaw_vel" joint="left_wrist_yaw_joint" />
512
+ <jointvel name="right_shoulder_pitch_vel" joint="right_shoulder_pitch_joint" />
513
+ <jointvel name="right_shoulder_roll_vel" joint="right_shoulder_roll_joint" />
514
+ <jointvel name="right_shoulder_yaw_vel" joint="right_shoulder_yaw_joint" />
515
+ <jointvel name="right_elbow_vel" joint="right_elbow_joint" />
516
+ <jointvel name="right_wrist_roll_vel" joint="right_wrist_roll_joint" />
517
+ <jointvel name="right_wrist_pitch_vel" joint="right_wrist_pitch_joint" />
518
+ <jointvel name="right_wrist_yaw_vel" joint="right_wrist_yaw_joint" />
519
+
520
+ <jointactuatorfrc name="left_hip_pitch_torque" joint="left_hip_pitch_joint" />
521
+ <jointactuatorfrc name="left_hip_roll_torque" joint="left_hip_roll_joint" />
522
+ <jointactuatorfrc name="left_hip_yaw_torque" joint="left_hip_yaw_joint" />
523
+ <jointactuatorfrc name="left_knee_torque" joint="left_knee_joint" />
524
+ <jointactuatorfrc name="left_ankle_pitch_torque" joint="left_ankle_pitch_joint" />
525
+ <jointactuatorfrc name="left_ankle_roll_torque" joint="left_ankle_roll_joint" />
526
+ <jointactuatorfrc name="right_hip_pitch_torque" joint="right_hip_pitch_joint" />
527
+ <jointactuatorfrc name="right_hip_roll_torque" joint="right_hip_roll_joint" />
528
+ <jointactuatorfrc name="right_hip_yaw_torque" joint="right_hip_yaw_joint" />
529
+ <jointactuatorfrc name="right_knee_torque" joint="right_knee_joint" />
530
+ <jointactuatorfrc name="right_ankle_pitch_torque" joint="right_ankle_pitch_joint" />
531
+ <jointactuatorfrc name="right_ankle_roll_torque" joint="right_ankle_roll_joint" />
532
+ <jointactuatorfrc name="waist_yaw_torque" joint="waist_yaw_joint" />
533
+ <jointactuatorfrc name="waist_roll_torque" joint="waist_roll_joint" />
534
+ <jointactuatorfrc name="waist_pitch_torque" joint="waist_pitch_joint" />
535
+ <jointactuatorfrc name="left_shoulder_pitch_torque" joint="left_shoulder_pitch_joint" />
536
+ <jointactuatorfrc name="left_shoulder_roll_torque" joint="left_shoulder_roll_joint" />
537
+ <jointactuatorfrc name="left_shoulder_yaw_torque" joint="left_shoulder_yaw_joint" />
538
+ <jointactuatorfrc name="left_elbow_torque" joint="left_elbow_joint" />
539
+ <jointactuatorfrc name="left_wrist_roll_torque" joint="left_wrist_roll_joint" />
540
+ <jointactuatorfrc name="left_wrist_pitch_torque" joint="left_wrist_pitch_joint" />
541
+ <jointactuatorfrc name="left_wrist_yaw_torque" joint="left_wrist_yaw_joint" />
542
+ <jointactuatorfrc name="right_shoulder_pitch_torque" joint="right_shoulder_pitch_joint" />
543
+ <jointactuatorfrc name="right_shoulder_roll_torque" joint="right_shoulder_roll_joint" />
544
+ <jointactuatorfrc name="right_shoulder_yaw_torque" joint="right_shoulder_yaw_joint" />
545
+ <jointactuatorfrc name="right_elbow_torque" joint="right_elbow_joint" />
546
+ <jointactuatorfrc name="right_wrist_roll_torque" joint="right_wrist_roll_joint" />
547
+ <jointactuatorfrc name="right_wrist_pitch_torque" joint="right_wrist_pitch_joint" />
548
+ <jointactuatorfrc name="right_wrist_yaw_torque" joint="right_wrist_yaw_joint" />
549
+
550
+ <framequat name="imu_quat" objtype="site" objname="imu" />
551
+ <gyro name="imu_gyro" site="imu" />
552
+ <accelerometer name="imu_acc" site="imu" />
553
+
554
+ <framepos name="frame_pos" objtype="site" objname="imu" />
555
+ <framelinvel name="frame_vel" objtype="site" objname="imu" />
556
+ </sensor>
557
+ <sensor>
558
+ <force site="left_foot_contact_1" />
559
+ <force site="left_foot_contact_2" />
560
+ <force site="left_foot_contact_3" />
561
+ <force site="left_foot_contact_4" />
562
+ <force site="right_foot_contact_1" />
563
+ <force site="right_foot_contact_2" />
564
+ <force site="right_foot_contact_3" />
565
+ <force site="right_foot_contact_4" />
566
+ </sensor>
567
+
568
+ </mujoco>
assets/g1_29dof_with_hand.xml ADDED
@@ -0,0 +1,749 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <mujoco model="g1_29dof_with_hand">
2
+ <compiler angle="radian" meshdir="meshes" />
3
+
4
+ <default>
5
+ <default class="torso_motor">
6
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
7
+ </default>
8
+ <default class="leg_motor">
9
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
10
+ </default>
11
+ <default class="ankle_motor">
12
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
13
+ </default>
14
+ <default class="arm_motor">
15
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
16
+ </default>
17
+ <default class="wrist_motor">
18
+ <joint damping="0.05" armature="0.01" frictionloss="0.1"/>
19
+ </default>
20
+ <default class="finger_motor">
21
+ <joint damping="0.05" armature="0.01" frictionloss="0.1"/>
22
+ </default>
23
+ </default>
24
+ <asset>
25
+ <mesh name="pelvis" file="pelvis.STL" />
26
+ <mesh name="pelvis_contour_link" file="pelvis_contour_link.STL" />
27
+ <mesh name="left_hip_pitch_link" file="left_hip_pitch_link.STL" />
28
+ <mesh name="left_hip_roll_link" file="left_hip_roll_link.STL" />
29
+ <mesh name="left_hip_yaw_link" file="left_hip_yaw_link.STL" />
30
+ <mesh name="left_knee_link" file="left_knee_link.STL" />
31
+ <mesh name="left_ankle_pitch_link" file="left_ankle_pitch_link.STL" />
32
+ <mesh name="left_ankle_roll_link" file="left_ankle_roll_link.STL" />
33
+ <mesh name="right_hip_pitch_link" file="right_hip_pitch_link.STL" />
34
+ <mesh name="right_hip_roll_link" file="right_hip_roll_link.STL" />
35
+ <mesh name="right_hip_yaw_link" file="right_hip_yaw_link.STL" />
36
+ <mesh name="right_knee_link" file="right_knee_link.STL" />
37
+ <mesh name="right_ankle_pitch_link" file="right_ankle_pitch_link.STL" />
38
+ <mesh name="right_ankle_roll_link" file="right_ankle_roll_link.STL" />
39
+ <mesh name="waist_yaw_link" file="waist_yaw_link.STL" />
40
+ <mesh name="waist_roll_link" file="waist_roll_link.STL" />
41
+ <mesh name="torso_link" file="torso_link.STL" />
42
+ <mesh name="logo_link" file="logo_link.STL" />
43
+ <mesh name="head_link" file="head_link.STL" />
44
+ <mesh name="waist_support_link" file="waist_support_link.STL" />
45
+ <mesh name="left_shoulder_pitch_link" file="left_shoulder_pitch_link.STL" />
46
+ <mesh name="left_shoulder_roll_link" file="left_shoulder_roll_link.STL" />
47
+ <mesh name="left_shoulder_yaw_link" file="left_shoulder_yaw_link.STL" />
48
+ <mesh name="left_elbow_link" file="left_elbow_link.STL" />
49
+ <mesh name="left_wrist_roll_link" file="left_wrist_roll_link.STL" />
50
+ <mesh name="left_wrist_pitch_link" file="left_wrist_pitch_link.STL" />
51
+ <mesh name="left_wrist_yaw_link" file="left_wrist_yaw_link.STL" />
52
+ <mesh name="left_hand_palm_link" file="left_hand_palm_link.STL" />
53
+ <mesh name="left_hand_thumb_0_link" file="left_hand_thumb_0_link.STL" />
54
+ <mesh name="left_hand_thumb_1_link" file="left_hand_thumb_1_link.STL" />
55
+ <mesh name="left_hand_thumb_2_link" file="left_hand_thumb_2_link.STL" />
56
+ <mesh name="left_hand_middle_0_link" file="left_hand_middle_0_link.STL" />
57
+ <mesh name="left_hand_middle_1_link" file="left_hand_middle_1_link.STL" />
58
+ <mesh name="left_hand_index_0_link" file="left_hand_index_0_link.STL" />
59
+ <mesh name="left_hand_index_1_link" file="left_hand_index_1_link.STL" />
60
+ <mesh name="right_shoulder_pitch_link" file="right_shoulder_pitch_link.STL" />
61
+ <mesh name="right_shoulder_roll_link" file="right_shoulder_roll_link.STL" />
62
+ <mesh name="right_shoulder_yaw_link" file="right_shoulder_yaw_link.STL" />
63
+ <mesh name="right_elbow_link" file="right_elbow_link.STL" />
64
+ <mesh name="right_wrist_roll_link" file="right_wrist_roll_link.STL" />
65
+ <mesh name="right_wrist_pitch_link" file="right_wrist_pitch_link.STL" />
66
+ <mesh name="right_wrist_yaw_link" file="right_wrist_yaw_link.STL" />
67
+ <mesh name="right_hand_palm_link" file="right_hand_palm_link.STL" />
68
+ <mesh name="right_hand_thumb_0_link" file="right_hand_thumb_0_link.STL" />
69
+ <mesh name="right_hand_thumb_1_link" file="right_hand_thumb_1_link.STL" />
70
+ <mesh name="right_hand_thumb_2_link" file="right_hand_thumb_2_link.STL" />
71
+ <mesh name="right_hand_middle_0_link" file="right_hand_middle_0_link.STL" />
72
+ <mesh name="right_hand_middle_1_link" file="right_hand_middle_1_link.STL" />
73
+ <mesh name="right_hand_index_0_link" file="right_hand_index_0_link.STL" />
74
+ <mesh name="right_hand_index_1_link" file="right_hand_index_1_link.STL" />
75
+ </asset>
76
+
77
+ <worldbody>
78
+ <body name="pelvis" pos="0 0 0.793">
79
+ <inertial pos="0 0 -0.07605" quat="1 0 -0.000399148 0" mass="3.813"
80
+ diaginertia="0.010549 0.0093089 0.0079184" />
81
+ <joint name="floating_base_joint" type="free" limited="false" actuatorfrclimited="false" />
82
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
83
+ mesh="pelvis" />
84
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
85
+ mesh="pelvis_contour_link" />
86
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="pelvis_contour_link" />
87
+ <body name="left_hip_pitch_link" pos="0 0.064452 -0.1027">
88
+ <inertial pos="0.002741 0.047791 -0.02606" quat="0.954862 0.293964 0.0302556 0.030122"
89
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
90
+ <joint name="left_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
91
+ actuatorfrcrange="-88 88" class="leg_motor" />
92
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
93
+ mesh="left_hip_pitch_link" />
94
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="left_hip_pitch_link" />
95
+ <body name="left_hip_roll_link" pos="0 0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
96
+ <inertial pos="0.029812 -0.001045 -0.087934"
97
+ quat="0.977808 -1.97119e-05 0.205576 -0.0403793" mass="1.52"
98
+ diaginertia="0.00254986 0.00241169 0.00148755" />
99
+ <joint name="left_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.5236 2.9671"
100
+ actuatorfrcrange="-88 88" class="leg_motor" />
101
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
102
+ mesh="left_hip_roll_link" />
103
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_roll_link" />
104
+ <body name="left_hip_yaw_link" pos="0.025001 0 -0.12412">
105
+ <inertial pos="-0.057709 -0.010981 -0.15078" quat="0.600598 0.15832 0.223482 0.751181"
106
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
107
+ <joint name="left_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
108
+ actuatorfrcrange="-88 88" class="leg_motor" />
109
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
110
+ mesh="left_hip_yaw_link" />
111
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_yaw_link" />
112
+ <body name="left_knee_link" pos="-0.078273 0.0021489 -0.17734"
113
+ quat="0.996179 0 0.0873386 0">
114
+ <inertial pos="0.005457 0.003964 -0.12074"
115
+ quat="0.923418 -0.0327699 0.0158246 0.382067" mass="1.932"
116
+ diaginertia="0.0113804 0.0112778 0.00146458" />
117
+ <joint name="left_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
118
+ actuatorfrcrange="-139 139" class="leg_motor" />
119
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
120
+ rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
121
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
122
+ <body name="left_ankle_pitch_link" pos="0 -9.4445e-05 -0.30001">
123
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
124
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
125
+ <joint name="left_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
126
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor" />
127
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
128
+ rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
129
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
130
+ <body name="left_ankle_roll_link" pos="0 0 -0.017558">
131
+ <inertial pos="0.026505 0 -0.016425"
132
+ quat="-0.000481092 0.728482 -0.000618967 0.685065" mass="0.608"
133
+ diaginertia="0.00167218 0.0016161 0.000217621" />
134
+ <joint name="left_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
135
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor" />
136
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
137
+ rgba="0.2 0.2 0.2 1" mesh="left_ankle_roll_link" />
138
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
139
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
140
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
141
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
142
+ </body>
143
+ </body>
144
+ </body>
145
+ </body>
146
+ </body>
147
+ </body>
148
+ <body name="right_hip_pitch_link" pos="0 -0.064452 -0.1027">
149
+ <inertial pos="0.002741 -0.047791 -0.02606" quat="0.954862 -0.293964 0.0302556 -0.030122"
150
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
151
+ <joint name="right_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
152
+ actuatorfrcrange="-88 88" class="leg_motor" />
153
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
154
+ mesh="right_hip_pitch_link" />
155
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="right_hip_pitch_link" />
156
+ <body name="right_hip_roll_link" pos="0 -0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
157
+ <inertial pos="0.029812 0.001045 -0.087934" quat="0.977808 1.97119e-05 0.205576 0.0403793"
158
+ mass="1.52" diaginertia="0.00254986 0.00241169 0.00148755" />
159
+ <joint name="right_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-2.9671 0.5236"
160
+ actuatorfrcrange="-88 88" class="leg_motor" />
161
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
162
+ mesh="right_hip_roll_link" />
163
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_roll_link" />
164
+ <body name="right_hip_yaw_link" pos="0.025001 0 -0.12412">
165
+ <inertial pos="-0.057709 0.010981 -0.15078" quat="0.751181 0.223482 0.15832 0.600598"
166
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
167
+ <joint name="right_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
168
+ actuatorfrcrange="-88 88" class="leg_motor" />
169
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
170
+ mesh="right_hip_yaw_link" />
171
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_yaw_link" />
172
+ <body name="right_knee_link" pos="-0.078273 -0.0021489 -0.17734"
173
+ quat="0.996179 0 0.0873386 0">
174
+ <inertial pos="0.005457 -0.003964 -0.12074"
175
+ quat="0.923439 0.0345276 0.0116333 -0.382012" mass="1.932"
176
+ diaginertia="0.011374 0.0112843 0.00146452" />
177
+ <joint name="right_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
178
+ actuatorfrcrange="-139 139" class="leg_motor" />
179
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
180
+ rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
181
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
182
+ <body name="right_ankle_pitch_link" pos="0 9.4445e-05 -0.30001">
183
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
184
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
185
+ <joint name="right_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
186
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor" />
187
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
188
+ rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
189
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
190
+ <body name="right_ankle_roll_link" pos="0 0 -0.017558">
191
+ <inertial pos="0.026505 0 -0.016425"
192
+ quat="0.000481092 0.728482 0.000618967 0.685065" mass="0.608"
193
+ diaginertia="0.00167218 0.0016161 0.000217621" />
194
+ <joint name="right_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
195
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor" />
196
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
197
+ rgba="0.2 0.2 0.2 1" mesh="right_ankle_roll_link" />
198
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
199
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
200
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
201
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
202
+ </body>
203
+ </body>
204
+ </body>
205
+ </body>
206
+ </body>
207
+ </body>
208
+ <body name="waist_yaw_link">
209
+ <inertial pos="0.003964 0 0.018769" quat="-0.0178291 0.628464 0.0282471 0.777121"
210
+ mass="0.244" diaginertia="0.000158561 0.000124229 9.67669e-05" />
211
+ <joint name="waist_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.618 2.618"
212
+ actuatorfrcrange="-88 88" class="torso_motor" />
213
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
214
+ mesh="waist_yaw_link" />
215
+ <body name="waist_roll_link" pos="-0.0039635 0 0.035">
216
+ <inertial pos="0 -0.000236 0.010111" quat="0.99979 0.020492 0 0" mass="0.047"
217
+ diaginertia="7.515e-06 6.40206e-06 3.98394e-06" />
218
+ <joint name="waist_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.52 0.52"
219
+ actuatorfrcrange="-50 50" class="torso_motor"/>
220
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
221
+ mesh="waist_roll_link" />
222
+ <body name="torso_link" pos="0 0 0.019">
223
+ <camera name="head_camera" pos="0.06 0.0 0.45" euler="0 -0.8 -1.57" fovy="90"/>
224
+ <inertial pos="0.00331658 0.000261533 0.179856"
225
+ quat="0.999831 0.000376204 0.0179895 -0.00377704" mass="9.598"
226
+ diaginertia="0.12407 0.111951 0.0325382" />
227
+ <joint name="waist_pitch_joint" pos="0 0 0" axis="0 1 0" range="-0.52 0.52"
228
+ actuatorfrcrange="-50 50" class="torso_motor"/>
229
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
230
+ mesh="torso_link" />
231
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="torso_link" />
232
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
233
+ group="1" density="0" rgba="0.2 0.2 0.2 1" mesh="logo_link" />
234
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.2 0.2 0.2 1"
235
+ mesh="logo_link" />
236
+ <geom pos="0.0039635 0 -0.054" type="mesh" contype="0" conaffinity="0" group="1"
237
+ density="0" rgba="0.2 0.2 0.2 1" mesh="head_link" />
238
+ <geom pos="0.0039635 0 -0.054" type="mesh" rgba="0.2 0.2 0.2 1" mesh="head_link" />
239
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
240
+ group="1" density="0" rgba="0.7 0.7 0.7 1" mesh="waist_support_link" />
241
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.7 0.7 0.7 1"
242
+ mesh="waist_support_link" />
243
+ <site name="imu" size="0.01" pos="-0.03959 -0.00224 0.13792" />
244
+ <body name="left_shoulder_pitch_link" pos="0.0039563 0.10022 0.23778"
245
+ quat="0.990264 0.139201 1.38722e-05 -9.86868e-05">
246
+ <inertial pos="0 0.035892 -0.011628" quat="0.654152 0.0130458 -0.326267 0.68225"
247
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
248
+ <joint name="left_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
249
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
250
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
251
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_pitch_link" />
252
+ <geom size="0.03 0.025" pos="0 0.04 -0.01" quat="0.707107 0 0.707107 0"
253
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
254
+ <body name="left_shoulder_roll_link" pos="0 0.038 -0.013831"
255
+ quat="0.990268 -0.139172 0 0">
256
+ <inertial pos="-0.000227 0.00727 -0.063243"
257
+ quat="0.701256 -0.0196223 -0.00710317 0.712604" mass="0.643"
258
+ diaginertia="0.000691311 0.000618011 0.000388977" />
259
+ <joint name="left_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
260
+ range="-1.5882 2.2515" actuatorfrcrange="-25 25" class="arm_motor" />
261
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
262
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_roll_link" />
263
+ <geom size="0.03 0.015" pos="-0.004 0.006 -0.053" type="cylinder"
264
+ rgba="0.7 0.7 0.7 1" />
265
+ <body name="left_shoulder_yaw_link" pos="0 0.00624 -0.1032">
266
+ <inertial pos="0.010773 -0.002949 -0.072009"
267
+ quat="0.716879 -0.0964829 -0.0679942 0.687134" mass="0.734"
268
+ diaginertia="0.00106187 0.00103217 0.000400661" />
269
+ <joint name="left_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
270
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
271
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
272
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
273
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
274
+ <body name="left_elbow_link" pos="0.015783 0 -0.080518">
275
+ <inertial pos="0.064956 0.004454 -0.010062"
276
+ quat="0.541765 0.636132 0.388821 0.388129" mass="0.6"
277
+ diaginertia="0.000443035 0.000421612 0.000259353" />
278
+ <joint name="left_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
279
+ actuatorfrcrange="-25 25" class="arm_motor" />
280
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
281
+ rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
282
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
283
+ <body name="left_wrist_roll_link" pos="0.1 0.00188791 -0.01">
284
+ <inertial pos="0.0171394 0.000537591 4.8864e-07"
285
+ quat="0.575338 0.411667 -0.574906 0.411094" mass="0.085445"
286
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
287
+ <joint name="left_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
288
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
289
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
290
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
291
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
292
+ <body name="left_wrist_pitch_link" pos="0.038 0 0">
293
+ <inertial pos="0.0229999 -0.00111685 -0.00111658"
294
+ quat="0.249998 0.661363 0.293036 0.643608" mass="0.48405"
295
+ diaginertia="0.000430353 0.000429873 0.000164648" />
296
+ <joint name="left_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
297
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
298
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
299
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
300
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
301
+ <body name="left_wrist_yaw_link" pos="0.046 0 0">
302
+ <inertial pos="0.0885506 0.00212216 -0.000374562"
303
+ quat="0.487149 0.493844 0.513241 0.505358" mass="0.457415"
304
+ diaginertia="0.00105989 0.000895419 0.000323842" />
305
+ <joint name="left_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
306
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
307
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
308
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
309
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
310
+ <geom pos="0.0415 0.003 0" quat="1 0 0 0" type="mesh" contype="0"
311
+ conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
312
+ mesh="left_hand_palm_link" />
313
+ <geom pos="0.0415 0.003 0" quat="1 0 0 0" type="mesh" rgba="0.7 0.7 0.7 1"
314
+ mesh="left_hand_palm_link" />
315
+ <body name="left_hand_thumb_0_link" pos="0.067 0.003 0">
316
+ <inertial pos="-0.000884246 -0.00863407 0.000944293"
317
+ quat="0.462991 0.643965 -0.460173 0.398986" mass="0.0862366"
318
+ diaginertia="1.6546e-05 1.60058e-05 1.43741e-05" />
319
+ <joint name="left_hand_thumb_0_joint" pos="0 0 0" axis="0 1 0"
320
+ range="-1.0472 1.0472" actuatorfrcrange="-2.45 2.45"
321
+ class="finger_motor" />
322
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
323
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_0_link" />
324
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_0_link" />
325
+ <body name="left_hand_thumb_1_link" pos="-0.0025 -0.0193 0">
326
+ <inertial pos="-0.000827888 -0.0354744 -0.0003809"
327
+ quat="0.685598 0.705471 -0.15207 0.0956069" mass="0.0588507"
328
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
329
+ <joint name="left_hand_thumb_1_joint" pos="0 0 0" axis="0 0 1"
330
+ range="-0.724312 1.0472" actuatorfrcrange="-1.4 1.4"
331
+ class="finger_motor" />
332
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
333
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_1_link" />
334
+ <geom size="0.01 0.015 0.01" pos="-0.001 -0.032 0" type="box"
335
+ rgba="0.7 0.7 0.7 1" />
336
+ <body name="left_hand_thumb_2_link" pos="0 -0.0458 0">
337
+ <inertial pos="-0.00171735 -0.0262819 0.000107789"
338
+ quat="0.703174 0.710977 -0.00017564 -0.00766553" mass="0.0203063"
339
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
340
+ <joint name="left_hand_thumb_2_joint" pos="0 0 0" axis="0 0 1"
341
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
342
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
343
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_2_link" />
344
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_2_link" />
345
+ </body>
346
+ </body>
347
+ </body>
348
+ <body name="left_hand_middle_0_link" pos="0.1192 0.0046 -0.0285">
349
+ <inertial pos="0.0354744 0.000827888 0.0003809"
350
+ quat="0.391313 0.552395 0.417187 0.606373" mass="0.0588507"
351
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
352
+ <joint name="left_hand_middle_0_joint" pos="0 0 0" axis="0 0 1"
353
+ range="-1.5708 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
354
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
355
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_0_link" />
356
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_0_link" />
357
+ <body name="left_hand_middle_1_link" pos="0.0458 0 0">
358
+ <inertial pos="0.0262819 0.00171735 -0.000107789"
359
+ quat="0.502612 0.491799 0.502639 0.502861" mass="0.0203063"
360
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
361
+ <joint name="left_hand_middle_1_joint" pos="0 0 0" axis="0 0 1"
362
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
363
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
364
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_1_link" />
365
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_1_link" />
366
+ </body>
367
+ </body>
368
+ <body name="left_hand_index_0_link" pos="0.1192 0.0046 0.0285">
369
+ <inertial pos="0.0354744 0.000827888 0.0003809"
370
+ quat="0.391313 0.552395 0.417187 0.606373" mass="0.0588507"
371
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
372
+ <joint name="left_hand_index_0_joint" pos="0 0 0" axis="0 0 1"
373
+ range="-1.5708 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
374
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
375
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_index_0_link" />
376
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_index_0_link" />
377
+ <body name="left_hand_index_1_link" pos="0.0458 0 0">
378
+ <inertial pos="0.0262819 0.00171735 -0.000107789"
379
+ quat="0.502612 0.491799 0.502639 0.502861" mass="0.0203063"
380
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
381
+ <joint name="left_hand_index_1_joint" pos="0 0 0" axis="0 0 1"
382
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
383
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
384
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_index_1_link" />
385
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_index_1_link" />
386
+ </body>
387
+ </body>
388
+ </body>
389
+ </body>
390
+ </body>
391
+ </body>
392
+ </body>
393
+ </body>
394
+ </body>
395
+ <body name="right_shoulder_pitch_link" pos="0.0039563 -0.10021 0.23778"
396
+ quat="0.990264 -0.139201 1.38722e-05 9.86868e-05">
397
+ <inertial pos="0 -0.035892 -0.011628" quat="0.68225 -0.326267 0.0130458 0.654152"
398
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
399
+ <joint name="right_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
400
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
401
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
402
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_pitch_link" />
403
+ <geom size="0.03 0.025" pos="0 -0.04 -0.01" quat="0.707107 0 0.707107 0"
404
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
405
+ <body name="right_shoulder_roll_link" pos="0 -0.038 -0.013831"
406
+ quat="0.990268 0.139172 0 0">
407
+ <inertial pos="-0.000227 -0.00727 -0.063243"
408
+ quat="0.712604 -0.00710317 -0.0196223 0.701256" mass="0.643"
409
+ diaginertia="0.000691311 0.000618011 0.000388977" />
410
+ <joint name="right_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
411
+ range="-2.2515 1.5882" actuatorfrcrange="-25 25" class="arm_motor" />
412
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
413
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_roll_link" />
414
+ <geom size="0.03 0.015" pos="-0.004 -0.006 -0.053" type="cylinder"
415
+ rgba="0.7 0.7 0.7 1" />
416
+ <body name="right_shoulder_yaw_link" pos="0 -0.00624 -0.1032">
417
+ <inertial pos="0.010773 0.002949 -0.072009"
418
+ quat="0.687134 -0.0679942 -0.0964829 0.716879" mass="0.734"
419
+ diaginertia="0.00106187 0.00103217 0.000400661" />
420
+ <joint name="right_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
421
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
422
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
423
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
424
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
425
+ <body name="right_elbow_link" pos="0.015783 0 -0.080518">
426
+ <inertial pos="0.064956 -0.004454 -0.010062"
427
+ quat="0.388129 0.388821 0.636132 0.541765" mass="0.6"
428
+ diaginertia="0.000443035 0.000421612 0.000259353" />
429
+ <joint name="right_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
430
+ actuatorfrcrange="-25 25" class="arm_motor" />
431
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
432
+ rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
433
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
434
+ <body name="right_wrist_roll_link" pos="0.1 -0.00188791 -0.01">
435
+ <inertial pos="0.0171394 -0.000537591 4.8864e-07"
436
+ quat="0.411667 0.575338 -0.411094 0.574906" mass="0.085445"
437
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
438
+ <joint name="right_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
439
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
440
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
441
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
442
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
443
+ <body name="right_wrist_pitch_link" pos="0.038 0 0">
444
+ <inertial pos="0.0229999 0.00111685 -0.00111658"
445
+ quat="0.643608 0.293036 0.661363 0.249998" mass="0.48405"
446
+ diaginertia="0.000430353 0.000429873 0.000164648" />
447
+ <joint name="right_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
448
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
449
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
450
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
451
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
452
+ <body name="right_wrist_yaw_link" pos="0.046 0 0">
453
+ <inertial pos="0.0885506 -0.00212216 0.000573742"
454
+ quat="0.507224 0.511377 0.494292 0.486717" mass="0.457415"
455
+ diaginertia="0.0010598 0.000895373 0.0003238" />
456
+ <joint name="right_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
457
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
458
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
459
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
460
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
461
+ <geom pos="0.0415 -0.003 0" quat="1 0 0 0" type="mesh" contype="0"
462
+ conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
463
+ mesh="right_hand_palm_link" />
464
+ <geom pos="0.0415 -0.003 0" quat="1 0 0 0" type="mesh"
465
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_palm_link" />
466
+ <body name="right_hand_thumb_0_link" pos="0.067 -0.003 0">
467
+ <inertial pos="-0.000884246 0.00863407 0.000944293"
468
+ quat="0.643965 0.462991 -0.398986 0.460173" mass="0.0862366"
469
+ diaginertia="1.6546e-05 1.60058e-05 1.43741e-05" />
470
+ <joint name="right_hand_thumb_0_joint" pos="0 0 0" axis="0 1 0"
471
+ range="-1.0472 1.0472" actuatorfrcrange="-2.45 2.45"
472
+ class="finger_motor" />
473
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
474
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_0_link" />
475
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_0_link" />
476
+ <body name="right_hand_thumb_1_link" pos="-0.0025 0.0193 0">
477
+ <inertial pos="-0.000827888 0.0354744 -0.0003809"
478
+ quat="0.705471 0.685598 -0.0956069 0.15207" mass="0.0588507"
479
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
480
+ <joint name="right_hand_thumb_1_joint" pos="0 0 0" axis="0 0 1"
481
+ range="-1.0472 0.724312" actuatorfrcrange="-1.4 1.4"
482
+ class="finger_motor" />
483
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
484
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_1_link" />
485
+ <geom size="0.01 0.015 0.01" pos="-0.001 0.032 0" type="box"
486
+ rgba="0.7 0.7 0.7 1" />
487
+ <body name="right_hand_thumb_2_link" pos="0 0.0458 0">
488
+ <inertial pos="-0.00171735 0.0262819 0.000107789"
489
+ quat="0.710977 0.703174 0.00766553 0.00017564" mass="0.0203063"
490
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
491
+ <joint name="right_hand_thumb_2_joint" pos="0 0 0" axis="0 0 1"
492
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4"
493
+ class="finger_motor" />
494
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
495
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_2_link" />
496
+ <geom type="mesh" rgba="0.7 0.7 0.7 1"
497
+ mesh="right_hand_thumb_2_link" />
498
+ </body>
499
+ </body>
500
+ </body>
501
+ <body name="right_hand_middle_0_link" pos="0.1192 -0.0046 -0.0285">
502
+ <inertial pos="0.0354744 -0.000827888 0.0003809"
503
+ quat="0.606373 0.417187 0.552395 0.391313" mass="0.0588507"
504
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
505
+ <joint name="right_hand_middle_0_joint" pos="0 0 0" axis="0 0 1"
506
+ range="0 1.5708" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
507
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
508
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_0_link" />
509
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_0_link" />
510
+ <body name="right_hand_middle_1_link" pos="0.0458 0 0">
511
+ <inertial pos="0.0262819 -0.00171735 -0.000107789"
512
+ quat="0.502861 0.502639 0.491799 0.502612" mass="0.0203063"
513
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
514
+ <joint name="right_hand_middle_1_joint" pos="0 0 0" axis="0 0 1"
515
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
516
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
517
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_1_link" />
518
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_1_link" />
519
+ </body>
520
+ </body>
521
+ <body name="right_hand_index_0_link" pos="0.1192 -0.0046 0.0285">
522
+ <inertial pos="0.0354744 -0.000827888 0.0003809"
523
+ quat="0.606373 0.417187 0.552395 0.391313" mass="0.0588507"
524
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
525
+ <joint name="right_hand_index_0_joint" pos="0 0 0" axis="0 0 1"
526
+ range="0 1.5708" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
527
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
528
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_index_0_link" />
529
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_index_0_link" />
530
+ <body name="right_hand_index_1_link" pos="0.0458 0 0">
531
+ <inertial pos="0.0262819 -0.00171735 -0.000107789"
532
+ quat="0.502861 0.502639 0.491799 0.502612" mass="0.0203063"
533
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
534
+ <joint name="right_hand_index_1_joint" pos="0 0 0" axis="0 0 1"
535
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
536
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
537
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_index_1_link" />
538
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_index_1_link" />
539
+ </body>
540
+ </body>
541
+ </body>
542
+ </body>
543
+ </body>
544
+ </body>
545
+ </body>
546
+ </body>
547
+ </body>
548
+ </body>
549
+ </body>
550
+ </body>
551
+ </body>
552
+ </worldbody>
553
+
554
+ <actuator>
555
+ <motor name="left_hip_pitch" joint="left_hip_pitch_joint" ctrlrange="-88 88" />
556
+ <motor name="left_hip_roll" joint="left_hip_roll_joint" ctrlrange="-88 88" />
557
+ <motor name="left_hip_yaw" joint="left_hip_yaw_joint" ctrlrange="-88 88" />
558
+ <motor name="left_knee" joint="left_knee_joint" ctrlrange="-139 139" />
559
+ <motor name="left_ankle_pitch" joint="left_ankle_pitch_joint" ctrlrange="-50 50" />
560
+ <motor name="left_ankle_roll" joint="left_ankle_roll_joint" ctrlrange="-50 50" />
561
+
562
+ <motor name="right_hip_pitch" joint="right_hip_pitch_joint" ctrlrange="-88 88" />
563
+ <motor name="right_hip_roll" joint="right_hip_roll_joint" ctrlrange="-88 88" />
564
+ <motor name="right_hip_yaw" joint="right_hip_yaw_joint" ctrlrange="-88 88" />
565
+ <motor name="right_knee" joint="right_knee_joint" ctrlrange="-139 139" />
566
+ <motor name="right_ankle_pitch" joint="right_ankle_pitch_joint" ctrlrange="-50 50" />
567
+ <motor name="right_ankle_roll" joint="right_ankle_roll_joint" ctrlrange="-50 50" />
568
+
569
+ <motor name="waist_yaw" joint="waist_yaw_joint" ctrlrange="-88 88" />
570
+ <motor name="waist_roll" joint="waist_roll_joint" ctrlrange="-50 50" />
571
+ <motor name="waist_pitch" joint="waist_pitch_joint" ctrlrange="-50 50" />
572
+
573
+ <motor name="left_shoulder_pitch" joint="left_shoulder_pitch_joint" ctrlrange="-25 25" />
574
+ <motor name="left_shoulder_roll" joint="left_shoulder_roll_joint" ctrlrange="-25 25" />
575
+ <motor name="left_shoulder_yaw" joint="left_shoulder_yaw_joint" ctrlrange="-25 25" />
576
+ <motor name="left_elbow" joint="left_elbow_joint" ctrlrange="-25 25" />
577
+ <motor name="left_wrist_roll" joint="left_wrist_roll_joint" ctrlrange="-25 25" />
578
+ <motor name="left_wrist_pitch" joint="left_wrist_pitch_joint" ctrlrange="-5 5" />
579
+ <motor name="left_wrist_yaw" joint="left_wrist_yaw_joint" ctrlrange="-5 5" />
580
+
581
+ <motor name="left_hand_thumb_0" joint="left_hand_thumb_0_joint" ctrlrange="-2.45 2.45" />
582
+ <motor name="left_hand_thumb_1" joint="left_hand_thumb_1_joint" ctrlrange="-1.4 1.4" />
583
+ <motor name="left_hand_thumb_2" joint="left_hand_thumb_2_joint" ctrlrange="-1.4 1.4" />
584
+ <motor name="left_hand_middle_0" joint="left_hand_middle_0_joint" ctrlrange="-1.4 1.4" />
585
+ <motor name="left_hand_middle_1" joint="left_hand_middle_1_joint" ctrlrange="-1.4 1.4" />
586
+ <motor name="left_hand_index_0" joint="left_hand_index_0_joint" ctrlrange="-1.4 1.4" />
587
+ <motor name="left_hand_index_1" joint="left_hand_index_1_joint" ctrlrange="-1.4 1.4" />
588
+
589
+ <motor name="right_shoulder_pitch" joint="right_shoulder_pitch_joint" ctrlrange="-25 25" />
590
+ <motor name="right_shoulder_roll" joint="right_shoulder_roll_joint" ctrlrange="-25 25" />
591
+ <motor name="right_shoulder_yaw" joint="right_shoulder_yaw_joint" ctrlrange="-25 25" />
592
+ <motor name="right_elbow" joint="right_elbow_joint" ctrlrange="-25 25" />
593
+ <motor name="right_wrist_roll" joint="right_wrist_roll_joint" ctrlrange="-25 25" />
594
+ <motor name="right_wrist_pitch" joint="right_wrist_pitch_joint" ctrlrange="-5 5" />
595
+ <motor name="right_wrist_yaw" joint="right_wrist_yaw_joint" ctrlrange="-5 5" />
596
+
597
+ <motor name="right_hand_thumb_0" joint="right_hand_thumb_0_joint" ctrlrange="-2.45 2.45" />
598
+ <motor name="right_hand_thumb_1" joint="right_hand_thumb_1_joint" ctrlrange="-1.4 1.4" />
599
+ <motor name="right_hand_thumb_2" joint="right_hand_thumb_2_joint" ctrlrange="-1.4 1.4" />
600
+ <motor name="right_hand_middle_0" joint="right_hand_middle_0_joint" ctrlrange="-1.4 1.4" />
601
+ <motor name="right_hand_middle_1" joint="right_hand_middle_1_joint" ctrlrange="-1.4 1.4" />
602
+ <motor name="right_hand_index_0" joint="right_hand_index_0_joint" ctrlrange="-1.4 1.4" />
603
+ <motor name="right_hand_index_1" joint="right_hand_index_1_joint" ctrlrange="-1.4 1.4" />
604
+ </actuator>
605
+
606
+ <sensor>
607
+ <jointpos name="left_hip_pitch_pos" joint="left_hip_pitch_joint" />
608
+ <jointpos name="left_hip_roll_pos" joint="left_hip_roll_joint" />
609
+ <jointpos name="left_hip_yaw_pos" joint="left_hip_yaw_joint" />
610
+ <jointpos name="left_knee_pos" joint="left_knee_joint" />
611
+ <jointpos name="left_ankle_pitch_pos" joint="left_ankle_pitch_joint" />
612
+ <jointpos name="left_ankle_roll_pos" joint="left_ankle_roll_joint" />
613
+ <jointpos name="right_hip_pitch_pos" joint="right_hip_pitch_joint" />
614
+ <jointpos name="right_hip_roll_pos" joint="right_hip_roll_joint" />
615
+ <jointpos name="right_hip_yaw_pos" joint="right_hip_yaw_joint" />
616
+ <jointpos name="right_knee_pos" joint="right_knee_joint" />
617
+ <jointpos name="right_ankle_pitch_pos" joint="right_ankle_pitch_joint" />
618
+ <jointpos name="right_ankle_roll_pos" joint="right_ankle_roll_joint" />
619
+ <jointpos name="waist_yaw_pos" joint="waist_yaw_joint" />
620
+ <jointpos name="waist_roll_pos" joint="waist_roll_joint" />
621
+ <jointpos name="waist_pitch_pos" joint="waist_pitch_joint" />
622
+ <jointpos name="left_shoulder_pitch_pos" joint="left_shoulder_pitch_joint" />
623
+ <jointpos name="left_shoulder_roll_pos" joint="left_shoulder_roll_joint" />
624
+ <jointpos name="left_shoulder_yaw_pos" joint="left_shoulder_yaw_joint" />
625
+ <jointpos name="left_elbow_pos" joint="left_elbow_joint" />
626
+ <jointpos name="left_wrist_roll_pos" joint="left_wrist_roll_joint" />
627
+ <jointpos name="left_wrist_pitch_pos" joint="left_wrist_pitch_joint" />
628
+ <jointpos name="left_wrist_yaw_pos" joint="left_wrist_yaw_joint" />
629
+ <jointpos name="right_shoulder_pitch_pos" joint="right_shoulder_pitch_joint" />
630
+ <jointpos name="right_shoulder_roll_pos" joint="right_shoulder_roll_joint" />
631
+ <jointpos name="right_shoulder_yaw_pos" joint="right_shoulder_yaw_joint" />
632
+ <jointpos name="right_elbow_pos" joint="right_elbow_joint" />
633
+ <jointpos name="right_wrist_roll_pos" joint="right_wrist_roll_joint" />
634
+ <jointpos name="right_wrist_pitch_pos" joint="right_wrist_pitch_joint" />
635
+ <jointpos name="right_wrist_yaw_pos" joint="right_wrist_yaw_joint" />
636
+
637
+ <jointpos name="left_hand_thumb_0_pos" joint="left_hand_thumb_0_joint" />
638
+ <jointpos name="left_hand_thumb_1_pos" joint="left_hand_thumb_1_joint" />
639
+ <jointpos name="left_hand_thumb_2_pos" joint="left_hand_thumb_2_joint" />
640
+ <jointpos name="left_hand_middle_0_pos" joint="left_hand_middle_0_joint" />
641
+ <jointpos name="left_hand_middle_1_pos" joint="left_hand_middle_1_joint" />
642
+ <jointpos name="left_hand_index_0_pos" joint="left_hand_index_0_joint" />
643
+ <jointpos name="left_hand_index_1_pos" joint="left_hand_index_1_joint" />
644
+ <jointpos name="right_hand_thumb_0_pos" joint="right_hand_thumb_0_joint" />
645
+ <jointpos name="right_hand_thumb_1_pos" joint="right_hand_thumb_1_joint" />
646
+ <jointpos name="right_hand_thumb_2_pos" joint="right_hand_thumb_2_joint" />
647
+ <jointpos name="right_hand_middle_0_pos" joint="right_hand_middle_0_joint" />
648
+ <jointpos name="right_hand_middle_1_pos" joint="right_hand_middle_1_joint" />
649
+ <jointpos name="right_hand_index_0_pos" joint="right_hand_index_0_joint" />
650
+ <jointpos name="right_hand_index_1_pos" joint="right_hand_index_1_joint" />
651
+
652
+ <jointvel name="left_hip_pitch_vel" joint="left_hip_pitch_joint" />
653
+ <jointvel name="left_hip_roll_vel" joint="left_hip_roll_joint" />
654
+ <jointvel name="left_hip_yaw_vel" joint="left_hip_yaw_joint" />
655
+ <jointvel name="left_knee_vel" joint="left_knee_joint" />
656
+ <jointvel name="left_ankle_pitch_vel" joint="left_ankle_pitch_joint" />
657
+ <jointvel name="left_ankle_roll_vel" joint="left_ankle_roll_joint" />
658
+ <jointvel name="right_hip_pitch_vel" joint="right_hip_pitch_joint" />
659
+ <jointvel name="right_hip_roll_vel" joint="right_hip_roll_joint" />
660
+ <jointvel name="right_hip_yaw_vel" joint="right_hip_yaw_joint" />
661
+ <jointvel name="right_knee_vel" joint="right_knee_joint" />
662
+ <jointvel name="right_ankle_pitch_vel" joint="right_ankle_pitch_joint" />
663
+ <jointvel name="right_ankle_roll_vel" joint="right_ankle_roll_joint" />
664
+ <jointvel name="waist_yaw_vel" joint="waist_yaw_joint" />
665
+ <jointvel name="waist_roll_vel" joint="waist_roll_joint" />
666
+ <jointvel name="waist_pitch_vel" joint="waist_pitch_joint" />
667
+ <jointvel name="left_shoulder_pitch_vel" joint="left_shoulder_pitch_joint" />
668
+ <jointvel name="left_shoulder_roll_vel" joint="left_shoulder_roll_joint" />
669
+ <jointvel name="left_shoulder_yaw_vel" joint="left_shoulder_yaw_joint" />
670
+ <jointvel name="left_elbow_vel" joint="left_elbow_joint" />
671
+ <jointvel name="left_wrist_roll_vel" joint="left_wrist_roll_joint" />
672
+ <jointvel name="left_wrist_pitch_vel" joint="left_wrist_pitch_joint" />
673
+ <jointvel name="left_wrist_yaw_vel" joint="left_wrist_yaw_joint" />
674
+ <jointvel name="right_shoulder_pitch_vel" joint="right_shoulder_pitch_joint" />
675
+ <jointvel name="right_shoulder_roll_vel" joint="right_shoulder_roll_joint" />
676
+ <jointvel name="right_shoulder_yaw_vel" joint="right_shoulder_yaw_joint" />
677
+ <jointvel name="right_elbow_vel" joint="right_elbow_joint" />
678
+ <jointvel name="right_wrist_roll_vel" joint="right_wrist_roll_joint" />
679
+ <jointvel name="right_wrist_pitch_vel" joint="right_wrist_pitch_joint" />
680
+ <jointvel name="right_wrist_yaw_vel" joint="right_wrist_yaw_joint" />
681
+
682
+ <jointvel name="left_hand_thumb_0_vel" joint="left_hand_thumb_0_joint" />
683
+ <jointvel name="left_hand_thumb_1_vel" joint="left_hand_thumb_1_joint" />
684
+ <jointvel name="left_hand_thumb_2_vel" joint="left_hand_thumb_2_joint" />
685
+ <jointvel name="left_hand_middle_0_vel" joint="left_hand_middle_0_joint" />
686
+ <jointvel name="left_hand_middle_1_vel" joint="left_hand_middle_1_joint" />
687
+ <jointvel name="left_hand_index_0_vel" joint="left_hand_index_0_joint" />
688
+ <jointvel name="left_hand_index_1_vel" joint="left_hand_index_1_joint" />
689
+ <jointvel name="right_hand_thumb_0_vel" joint="right_hand_thumb_0_joint" />
690
+ <jointvel name="right_hand_thumb_1_vel" joint="right_hand_thumb_1_joint" />
691
+ <jointvel name="right_hand_thumb_2_vel" joint="right_hand_thumb_2_joint" />
692
+ <jointvel name="right_hand_middle_0_vel" joint="right_hand_middle_0_joint" />
693
+ <jointvel name="right_hand_middle_1_vel" joint="right_hand_middle_1_joint" />
694
+ <jointvel name="right_hand_index_0_vel" joint="right_hand_index_0_joint" />
695
+ <jointvel name="right_hand_index_1_vel" joint="right_hand_index_1_joint" />
696
+
697
+ <jointactuatorfrc name="left_hip_pitch_torque" joint="left_hip_pitch_joint" />
698
+ <jointactuatorfrc name="left_hip_roll_torque" joint="left_hip_roll_joint" />
699
+ <jointactuatorfrc name="left_hip_yaw_torque" joint="left_hip_yaw_joint" />
700
+ <jointactuatorfrc name="left_knee_torque" joint="left_knee_joint" />
701
+ <jointactuatorfrc name="left_ankle_pitch_torque" joint="left_ankle_pitch_joint" />
702
+ <jointactuatorfrc name="left_ankle_roll_torque" joint="left_ankle_roll_joint" />
703
+ <jointactuatorfrc name="right_hip_pitch_torque" joint="right_hip_pitch_joint" />
704
+ <jointactuatorfrc name="right_hip_roll_torque" joint="right_hip_roll_joint" />
705
+ <jointactuatorfrc name="right_hip_yaw_torque" joint="right_hip_yaw_joint" />
706
+ <jointactuatorfrc name="right_knee_torque" joint="right_knee_joint" />
707
+ <jointactuatorfrc name="right_ankle_pitch_torque" joint="right_ankle_pitch_joint" />
708
+ <jointactuatorfrc name="right_ankle_roll_torque" joint="right_ankle_roll_joint" />
709
+ <jointactuatorfrc name="waist_yaw_torque" joint="waist_yaw_joint" />
710
+ <jointactuatorfrc name="waist_roll_torque" joint="waist_roll_joint" />
711
+ <jointactuatorfrc name="waist_pitch_torque" joint="waist_pitch_joint" />
712
+ <jointactuatorfrc name="left_shoulder_pitch_torque" joint="left_shoulder_pitch_joint" />
713
+ <jointactuatorfrc name="left_shoulder_roll_torque" joint="left_shoulder_roll_joint" />
714
+ <jointactuatorfrc name="left_shoulder_yaw_torque" joint="left_shoulder_yaw_joint" />
715
+ <jointactuatorfrc name="left_elbow_torque" joint="left_elbow_joint" />
716
+ <jointactuatorfrc name="left_wrist_roll_torque" joint="left_wrist_roll_joint" />
717
+ <jointactuatorfrc name="left_wrist_pitch_torque" joint="left_wrist_pitch_joint" />
718
+ <jointactuatorfrc name="left_wrist_yaw_torque" joint="left_wrist_yaw_joint" />
719
+ <jointactuatorfrc name="right_shoulder_pitch_torque" joint="right_shoulder_pitch_joint" />
720
+ <jointactuatorfrc name="right_shoulder_roll_torque" joint="right_shoulder_roll_joint" />
721
+ <jointactuatorfrc name="right_shoulder_yaw_torque" joint="right_shoulder_yaw_joint" />
722
+ <jointactuatorfrc name="right_elbow_torque" joint="right_elbow_joint" />
723
+ <jointactuatorfrc name="right_wrist_roll_torque" joint="right_wrist_roll_joint" />
724
+ <jointactuatorfrc name="right_wrist_pitch_torque" joint="right_wrist_pitch_joint" />
725
+ <jointactuatorfrc name="right_wrist_yaw_torque" joint="right_wrist_yaw_joint" />
726
+
727
+ <jointactuatorfrc name="left_hand_thumb_0_torque" joint="left_hand_thumb_0_joint" />
728
+ <jointactuatorfrc name="left_hand_thumb_1_torque" joint="left_hand_thumb_1_joint" />
729
+ <jointactuatorfrc name="left_hand_thumb_2_torque" joint="left_hand_thumb_2_joint" />
730
+ <jointactuatorfrc name="left_hand_middle_0_torque" joint="left_hand_middle_0_joint" />
731
+ <jointactuatorfrc name="left_hand_middle_1_torque" joint="left_hand_middle_1_joint" />
732
+ <jointactuatorfrc name="left_hand_index_0_torque" joint="left_hand_index_0_joint" />
733
+ <jointactuatorfrc name="left_hand_index_1_torque" joint="left_hand_index_1_joint" />
734
+ <jointactuatorfrc name="right_hand_thumb_0_torque" joint="right_hand_thumb_0_joint" />
735
+ <jointactuatorfrc name="right_hand_thumb_1_torque" joint="right_hand_thumb_1_joint" />
736
+ <jointactuatorfrc name="right_hand_thumb_2_torque" joint="right_hand_thumb_2_joint" />
737
+ <jointactuatorfrc name="right_hand_middle_0_torque" joint="right_hand_middle_0_joint" />
738
+ <jointactuatorfrc name="right_hand_middle_1_torque" joint="right_hand_middle_1_joint" />
739
+ <jointactuatorfrc name="right_hand_index_0_torque" joint="right_hand_index_0_joint" />
740
+ <jointactuatorfrc name="right_hand_index_1_torque" joint="right_hand_index_1_joint" />
741
+
742
+ <framequat name="imu_quat" objtype="site" objname="imu" />
743
+ <gyro name="imu_gyro" site="imu" />
744
+ <accelerometer name="imu_acc" site="imu" />
745
+
746
+ <framepos name="frame_pos" objtype="site" objname="imu" />
747
+ <framelinvel name="frame_vel" objtype="site" objname="imu" />
748
+ </sensor>
749
+ </mujoco>
assets/g1_29dof_with_hand_original.xml ADDED
@@ -0,0 +1,748 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <mujoco model="g1_29dof_with_hand">
2
+ <compiler angle="radian" meshdir="meshes" />
3
+
4
+ <default>
5
+ <default class="torso_motor">
6
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
7
+ </default>
8
+ <default class="leg_motor">
9
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
10
+ </default>
11
+ <default class="ankle_motor">
12
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
13
+ </default>
14
+ <default class="arm_motor">
15
+ <joint damping="0.05" armature="0.01" frictionloss="0.2"/>
16
+ </default>
17
+ <default class="wrist_motor">
18
+ <joint damping="0.05" armature="0.01" frictionloss="0.1"/>
19
+ </default>
20
+ <default class="finger_motor">
21
+ <joint damping="0.05" armature="0.01" frictionloss="0.1"/>
22
+ </default>
23
+ </default>
24
+ <asset>
25
+ <mesh name="pelvis" file="pelvis.STL" />
26
+ <mesh name="pelvis_contour_link" file="pelvis_contour_link.STL" />
27
+ <mesh name="left_hip_pitch_link" file="left_hip_pitch_link.STL" />
28
+ <mesh name="left_hip_roll_link" file="left_hip_roll_link.STL" />
29
+ <mesh name="left_hip_yaw_link" file="left_hip_yaw_link.STL" />
30
+ <mesh name="left_knee_link" file="left_knee_link.STL" />
31
+ <mesh name="left_ankle_pitch_link" file="left_ankle_pitch_link.STL" />
32
+ <mesh name="left_ankle_roll_link" file="left_ankle_roll_link.STL" />
33
+ <mesh name="right_hip_pitch_link" file="right_hip_pitch_link.STL" />
34
+ <mesh name="right_hip_roll_link" file="right_hip_roll_link.STL" />
35
+ <mesh name="right_hip_yaw_link" file="right_hip_yaw_link.STL" />
36
+ <mesh name="right_knee_link" file="right_knee_link.STL" />
37
+ <mesh name="right_ankle_pitch_link" file="right_ankle_pitch_link.STL" />
38
+ <mesh name="right_ankle_roll_link" file="right_ankle_roll_link.STL" />
39
+ <mesh name="waist_yaw_link" file="waist_yaw_link.STL" />
40
+ <mesh name="waist_roll_link" file="waist_roll_link.STL" />
41
+ <mesh name="torso_link" file="torso_link.STL" />
42
+ <mesh name="logo_link" file="logo_link.STL" />
43
+ <mesh name="head_link" file="head_link.STL" />
44
+ <mesh name="waist_support_link" file="waist_support_link.STL" />
45
+ <mesh name="left_shoulder_pitch_link" file="left_shoulder_pitch_link.STL" />
46
+ <mesh name="left_shoulder_roll_link" file="left_shoulder_roll_link.STL" />
47
+ <mesh name="left_shoulder_yaw_link" file="left_shoulder_yaw_link.STL" />
48
+ <mesh name="left_elbow_link" file="left_elbow_link.STL" />
49
+ <mesh name="left_wrist_roll_link" file="left_wrist_roll_link.STL" />
50
+ <mesh name="left_wrist_pitch_link" file="left_wrist_pitch_link.STL" />
51
+ <mesh name="left_wrist_yaw_link" file="left_wrist_yaw_link.STL" />
52
+ <mesh name="left_hand_palm_link" file="left_hand_palm_link.STL" />
53
+ <mesh name="left_hand_thumb_0_link" file="left_hand_thumb_0_link.STL" />
54
+ <mesh name="left_hand_thumb_1_link" file="left_hand_thumb_1_link.STL" />
55
+ <mesh name="left_hand_thumb_2_link" file="left_hand_thumb_2_link.STL" />
56
+ <mesh name="left_hand_middle_0_link" file="left_hand_middle_0_link.STL" />
57
+ <mesh name="left_hand_middle_1_link" file="left_hand_middle_1_link.STL" />
58
+ <mesh name="left_hand_index_0_link" file="left_hand_index_0_link.STL" />
59
+ <mesh name="left_hand_index_1_link" file="left_hand_index_1_link.STL" />
60
+ <mesh name="right_shoulder_pitch_link" file="right_shoulder_pitch_link.STL" />
61
+ <mesh name="right_shoulder_roll_link" file="right_shoulder_roll_link.STL" />
62
+ <mesh name="right_shoulder_yaw_link" file="right_shoulder_yaw_link.STL" />
63
+ <mesh name="right_elbow_link" file="right_elbow_link.STL" />
64
+ <mesh name="right_wrist_roll_link" file="right_wrist_roll_link.STL" />
65
+ <mesh name="right_wrist_pitch_link" file="right_wrist_pitch_link.STL" />
66
+ <mesh name="right_wrist_yaw_link" file="right_wrist_yaw_link.STL" />
67
+ <mesh name="right_hand_palm_link" file="right_hand_palm_link.STL" />
68
+ <mesh name="right_hand_thumb_0_link" file="right_hand_thumb_0_link.STL" />
69
+ <mesh name="right_hand_thumb_1_link" file="right_hand_thumb_1_link.STL" />
70
+ <mesh name="right_hand_thumb_2_link" file="right_hand_thumb_2_link.STL" />
71
+ <mesh name="right_hand_middle_0_link" file="right_hand_middle_0_link.STL" />
72
+ <mesh name="right_hand_middle_1_link" file="right_hand_middle_1_link.STL" />
73
+ <mesh name="right_hand_index_0_link" file="right_hand_index_0_link.STL" />
74
+ <mesh name="right_hand_index_1_link" file="right_hand_index_1_link.STL" />
75
+ </asset>
76
+
77
+ <worldbody>
78
+ <body name="pelvis" pos="0 0 0.793">
79
+ <inertial pos="0 0 -0.07605" quat="1 0 -0.000399148 0" mass="3.813"
80
+ diaginertia="0.010549 0.0093089 0.0079184" />
81
+ <joint name="floating_base_joint" type="free" limited="false" actuatorfrclimited="false" />
82
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
83
+ mesh="pelvis" />
84
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
85
+ mesh="pelvis_contour_link" />
86
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="pelvis_contour_link" />
87
+ <body name="left_hip_pitch_link" pos="0 0.064452 -0.1027">
88
+ <inertial pos="0.002741 0.047791 -0.02606" quat="0.954862 0.293964 0.0302556 0.030122"
89
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
90
+ <joint name="left_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
91
+ actuatorfrcrange="-88 88" class="leg_motor" />
92
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
93
+ mesh="left_hip_pitch_link" />
94
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="left_hip_pitch_link" />
95
+ <body name="left_hip_roll_link" pos="0 0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
96
+ <inertial pos="0.029812 -0.001045 -0.087934"
97
+ quat="0.977808 -1.97119e-05 0.205576 -0.0403793" mass="1.52"
98
+ diaginertia="0.00254986 0.00241169 0.00148755" />
99
+ <joint name="left_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.5236 2.9671"
100
+ actuatorfrcrange="-88 88" class="leg_motor" />
101
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
102
+ mesh="left_hip_roll_link" />
103
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_roll_link" />
104
+ <body name="left_hip_yaw_link" pos="0.025001 0 -0.12412">
105
+ <inertial pos="-0.057709 -0.010981 -0.15078" quat="0.600598 0.15832 0.223482 0.751181"
106
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
107
+ <joint name="left_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
108
+ actuatorfrcrange="-88 88" class="leg_motor" />
109
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
110
+ mesh="left_hip_yaw_link" />
111
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hip_yaw_link" />
112
+ <body name="left_knee_link" pos="-0.078273 0.0021489 -0.17734"
113
+ quat="0.996179 0 0.0873386 0">
114
+ <inertial pos="0.005457 0.003964 -0.12074"
115
+ quat="0.923418 -0.0327699 0.0158246 0.382067" mass="1.932"
116
+ diaginertia="0.0113804 0.0112778 0.00146458" />
117
+ <joint name="left_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
118
+ actuatorfrcrange="-139 139" class="leg_motor" />
119
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
120
+ rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
121
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_knee_link" />
122
+ <body name="left_ankle_pitch_link" pos="0 -9.4445e-05 -0.30001">
123
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
124
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
125
+ <joint name="left_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
126
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor" />
127
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
128
+ rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
129
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_ankle_pitch_link" />
130
+ <body name="left_ankle_roll_link" pos="0 0 -0.017558">
131
+ <inertial pos="0.026505 0 -0.016425"
132
+ quat="-0.000481092 0.728482 -0.000618967 0.685065" mass="0.608"
133
+ diaginertia="0.00167218 0.0016161 0.000217621" />
134
+ <joint name="left_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
135
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor" />
136
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
137
+ rgba="0.2 0.2 0.2 1" mesh="left_ankle_roll_link" />
138
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
139
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
140
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
141
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
142
+ </body>
143
+ </body>
144
+ </body>
145
+ </body>
146
+ </body>
147
+ </body>
148
+ <body name="right_hip_pitch_link" pos="0 -0.064452 -0.1027">
149
+ <inertial pos="0.002741 -0.047791 -0.02606" quat="0.954862 -0.293964 0.0302556 -0.030122"
150
+ mass="1.35" diaginertia="0.00181517 0.00153422 0.00116212" />
151
+ <joint name="right_hip_pitch_joint" pos="0 0 0" axis="0 1 0" range="-2.5307 2.8798"
152
+ actuatorfrcrange="-88 88" class="leg_motor" />
153
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.2 0.2 0.2 1"
154
+ mesh="right_hip_pitch_link" />
155
+ <geom type="mesh" rgba="0.2 0.2 0.2 1" mesh="right_hip_pitch_link" />
156
+ <body name="right_hip_roll_link" pos="0 -0.052 -0.030465" quat="0.996179 0 -0.0873386 0">
157
+ <inertial pos="0.029812 0.001045 -0.087934" quat="0.977808 1.97119e-05 0.205576 0.0403793"
158
+ mass="1.52" diaginertia="0.00254986 0.00241169 0.00148755" />
159
+ <joint name="right_hip_roll_joint" pos="0 0 0" axis="1 0 0" range="-2.9671 0.5236"
160
+ actuatorfrcrange="-88 88" class="leg_motor" />
161
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
162
+ mesh="right_hip_roll_link" />
163
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_roll_link" />
164
+ <body name="right_hip_yaw_link" pos="0.025001 0 -0.12412">
165
+ <inertial pos="-0.057709 0.010981 -0.15078" quat="0.751181 0.223482 0.15832 0.600598"
166
+ mass="1.702" diaginertia="0.00776166 0.00717575 0.00160139" />
167
+ <joint name="right_hip_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.7576 2.7576"
168
+ actuatorfrcrange="-88 88" class="leg_motor" />
169
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
170
+ mesh="right_hip_yaw_link" />
171
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hip_yaw_link" />
172
+ <body name="right_knee_link" pos="-0.078273 -0.0021489 -0.17734"
173
+ quat="0.996179 0 0.0873386 0">
174
+ <inertial pos="0.005457 -0.003964 -0.12074"
175
+ quat="0.923439 0.0345276 0.0116333 -0.382012" mass="1.932"
176
+ diaginertia="0.011374 0.0112843 0.00146452" />
177
+ <joint name="right_knee_joint" pos="0 0 0" axis="0 1 0" range="-0.087267 2.8798"
178
+ actuatorfrcrange="-139 139" class="leg_motor" />
179
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
180
+ rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
181
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_knee_link" />
182
+ <body name="right_ankle_pitch_link" pos="0 9.4445e-05 -0.30001">
183
+ <inertial pos="-0.007269 0 0.011137" quat="0.603053 0.369225 0.369225 0.603053"
184
+ mass="0.074" diaginertia="1.89e-05 1.40805e-05 6.9195e-06" />
185
+ <joint name="right_ankle_pitch_joint" pos="0 0 0" axis="0 1 0"
186
+ range="-0.87267 0.5236" actuatorfrcrange="-50 50" class="ankle_motor" />
187
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
188
+ rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
189
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_ankle_pitch_link" />
190
+ <body name="right_ankle_roll_link" pos="0 0 -0.017558">
191
+ <inertial pos="0.026505 0 -0.016425"
192
+ quat="0.000481092 0.728482 0.000618967 0.685065" mass="0.608"
193
+ diaginertia="0.00167218 0.0016161 0.000217621" />
194
+ <joint name="right_ankle_roll_joint" pos="0 0 0" axis="1 0 0"
195
+ range="-0.2618 0.2618" actuatorfrcrange="-50 50" class="ankle_motor" />
196
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
197
+ rgba="0.2 0.2 0.2 1" mesh="right_ankle_roll_link" />
198
+ <geom size="0.005" pos="-0.05 0.025 -0.03" rgba="0.2 0.2 0.2 1" />
199
+ <geom size="0.005" pos="-0.05 -0.025 -0.03" rgba="0.2 0.2 0.2 1" />
200
+ <geom size="0.005" pos="0.12 0.03 -0.03" rgba="0.2 0.2 0.2 1" />
201
+ <geom size="0.005" pos="0.12 -0.03 -0.03" rgba="0.2 0.2 0.2 1" />
202
+ </body>
203
+ </body>
204
+ </body>
205
+ </body>
206
+ </body>
207
+ </body>
208
+ <body name="waist_yaw_link">
209
+ <inertial pos="0.003964 0 0.018769" quat="-0.0178291 0.628464 0.0282471 0.777121"
210
+ mass="0.244" diaginertia="0.000158561 0.000124229 9.67669e-05" />
211
+ <joint name="waist_yaw_joint" pos="0 0 0" axis="0 0 1" range="-2.618 2.618"
212
+ actuatorfrcrange="-88 88" class="torso_motor" />
213
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
214
+ mesh="waist_yaw_link" />
215
+ <body name="waist_roll_link" pos="-0.0039635 0 0.035">
216
+ <inertial pos="0 -0.000236 0.010111" quat="0.99979 0.020492 0 0" mass="0.047"
217
+ diaginertia="7.515e-06 6.40206e-06 3.98394e-06" />
218
+ <joint name="waist_roll_joint" pos="0 0 0" axis="1 0 0" range="-0.52 0.52"
219
+ actuatorfrcrange="-50 50" class="torso_motor"/>
220
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
221
+ mesh="waist_roll_link" />
222
+ <body name="torso_link" pos="0 0 0.019">
223
+ <inertial pos="0.00331658 0.000261533 0.179856"
224
+ quat="0.999831 0.000376204 0.0179895 -0.00377704" mass="9.598"
225
+ diaginertia="0.12407 0.111951 0.0325382" />
226
+ <joint name="waist_pitch_joint" pos="0 0 0" axis="0 1 0" range="-0.52 0.52"
227
+ actuatorfrcrange="-50 50" class="torso_motor"/>
228
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
229
+ mesh="torso_link" />
230
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="torso_link" />
231
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
232
+ group="1" density="0" rgba="0.2 0.2 0.2 1" mesh="logo_link" />
233
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.2 0.2 0.2 1"
234
+ mesh="logo_link" />
235
+ <geom pos="0.0039635 0 -0.054" type="mesh" contype="0" conaffinity="0" group="1"
236
+ density="0" rgba="0.2 0.2 0.2 1" mesh="head_link" />
237
+ <geom pos="0.0039635 0 -0.054" type="mesh" rgba="0.2 0.2 0.2 1" mesh="head_link" />
238
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" contype="0" conaffinity="0"
239
+ group="1" density="0" rgba="0.7 0.7 0.7 1" mesh="waist_support_link" />
240
+ <geom pos="0.0039635 0 -0.054" quat="1 0 0 0" type="mesh" rgba="0.7 0.7 0.7 1"
241
+ mesh="waist_support_link" />
242
+ <site name="imu" size="0.01" pos="-0.03959 -0.00224 0.13792" />
243
+ <body name="left_shoulder_pitch_link" pos="0.0039563 0.10022 0.23778"
244
+ quat="0.990264 0.139201 1.38722e-05 -9.86868e-05">
245
+ <inertial pos="0 0.035892 -0.011628" quat="0.654152 0.0130458 -0.326267 0.68225"
246
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
247
+ <joint name="left_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
248
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
249
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
250
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_pitch_link" />
251
+ <geom size="0.03 0.025" pos="0 0.04 -0.01" quat="0.707107 0 0.707107 0"
252
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
253
+ <body name="left_shoulder_roll_link" pos="0 0.038 -0.013831"
254
+ quat="0.990268 -0.139172 0 0">
255
+ <inertial pos="-0.000227 0.00727 -0.063243"
256
+ quat="0.701256 -0.0196223 -0.00710317 0.712604" mass="0.643"
257
+ diaginertia="0.000691311 0.000618011 0.000388977" />
258
+ <joint name="left_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
259
+ range="-1.5882 2.2515" actuatorfrcrange="-25 25" class="arm_motor" />
260
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
261
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_roll_link" />
262
+ <geom size="0.03 0.015" pos="-0.004 0.006 -0.053" type="cylinder"
263
+ rgba="0.7 0.7 0.7 1" />
264
+ <body name="left_shoulder_yaw_link" pos="0 0.00624 -0.1032">
265
+ <inertial pos="0.010773 -0.002949 -0.072009"
266
+ quat="0.716879 -0.0964829 -0.0679942 0.687134" mass="0.734"
267
+ diaginertia="0.00106187 0.00103217 0.000400661" />
268
+ <joint name="left_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
269
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
270
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
271
+ rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
272
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_shoulder_yaw_link" />
273
+ <body name="left_elbow_link" pos="0.015783 0 -0.080518">
274
+ <inertial pos="0.064956 0.004454 -0.010062"
275
+ quat="0.541765 0.636132 0.388821 0.388129" mass="0.6"
276
+ diaginertia="0.000443035 0.000421612 0.000259353" />
277
+ <joint name="left_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
278
+ actuatorfrcrange="-25 25" class="arm_motor" />
279
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
280
+ rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
281
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_elbow_link" />
282
+ <body name="left_wrist_roll_link" pos="0.1 0.00188791 -0.01">
283
+ <inertial pos="0.0171394 0.000537591 4.8864e-07"
284
+ quat="0.575338 0.411667 -0.574906 0.411094" mass="0.085445"
285
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
286
+ <joint name="left_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
287
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
288
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
289
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
290
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_roll_link" />
291
+ <body name="left_wrist_pitch_link" pos="0.038 0 0">
292
+ <inertial pos="0.0229999 -0.00111685 -0.00111658"
293
+ quat="0.249998 0.661363 0.293036 0.643608" mass="0.48405"
294
+ diaginertia="0.000430353 0.000429873 0.000164648" />
295
+ <joint name="left_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
296
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
297
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
298
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
299
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_pitch_link" />
300
+ <body name="left_wrist_yaw_link" pos="0.046 0 0">
301
+ <inertial pos="0.0885506 0.00212216 -0.000374562"
302
+ quat="0.487149 0.493844 0.513241 0.505358" mass="0.457415"
303
+ diaginertia="0.00105989 0.000895419 0.000323842" />
304
+ <joint name="left_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
305
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
306
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
307
+ rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
308
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_wrist_yaw_link" />
309
+ <geom pos="0.0415 0.003 0" quat="1 0 0 0" type="mesh" contype="0"
310
+ conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
311
+ mesh="left_hand_palm_link" />
312
+ <geom pos="0.0415 0.003 0" quat="1 0 0 0" type="mesh" rgba="0.7 0.7 0.7 1"
313
+ mesh="left_hand_palm_link" />
314
+ <body name="left_hand_thumb_0_link" pos="0.067 0.003 0">
315
+ <inertial pos="-0.000884246 -0.00863407 0.000944293"
316
+ quat="0.462991 0.643965 -0.460173 0.398986" mass="0.0862366"
317
+ diaginertia="1.6546e-05 1.60058e-05 1.43741e-05" />
318
+ <joint name="left_hand_thumb_0_joint" pos="0 0 0" axis="0 1 0"
319
+ range="-1.0472 1.0472" actuatorfrcrange="-2.45 2.45"
320
+ class="finger_motor" />
321
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
322
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_0_link" />
323
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_0_link" />
324
+ <body name="left_hand_thumb_1_link" pos="-0.0025 -0.0193 0">
325
+ <inertial pos="-0.000827888 -0.0354744 -0.0003809"
326
+ quat="0.685598 0.705471 -0.15207 0.0956069" mass="0.0588507"
327
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
328
+ <joint name="left_hand_thumb_1_joint" pos="0 0 0" axis="0 0 1"
329
+ range="-0.724312 1.0472" actuatorfrcrange="-1.4 1.4"
330
+ class="finger_motor" />
331
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
332
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_1_link" />
333
+ <geom size="0.01 0.015 0.01" pos="-0.001 -0.032 0" type="box"
334
+ rgba="0.7 0.7 0.7 1" />
335
+ <body name="left_hand_thumb_2_link" pos="0 -0.0458 0">
336
+ <inertial pos="-0.00171735 -0.0262819 0.000107789"
337
+ quat="0.703174 0.710977 -0.00017564 -0.00766553" mass="0.0203063"
338
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
339
+ <joint name="left_hand_thumb_2_joint" pos="0 0 0" axis="0 0 1"
340
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
341
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
342
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_2_link" />
343
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_thumb_2_link" />
344
+ </body>
345
+ </body>
346
+ </body>
347
+ <body name="left_hand_middle_0_link" pos="0.1192 0.0046 -0.0285">
348
+ <inertial pos="0.0354744 0.000827888 0.0003809"
349
+ quat="0.391313 0.552395 0.417187 0.606373" mass="0.0588507"
350
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
351
+ <joint name="left_hand_middle_0_joint" pos="0 0 0" axis="0 0 1"
352
+ range="-1.5708 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
353
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
354
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_0_link" />
355
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_0_link" />
356
+ <body name="left_hand_middle_1_link" pos="0.0458 0 0">
357
+ <inertial pos="0.0262819 0.00171735 -0.000107789"
358
+ quat="0.502612 0.491799 0.502639 0.502861" mass="0.0203063"
359
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
360
+ <joint name="left_hand_middle_1_joint" pos="0 0 0" axis="0 0 1"
361
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
362
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
363
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_1_link" />
364
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_middle_1_link" />
365
+ </body>
366
+ </body>
367
+ <body name="left_hand_index_0_link" pos="0.1192 0.0046 0.0285">
368
+ <inertial pos="0.0354744 0.000827888 0.0003809"
369
+ quat="0.391313 0.552395 0.417187 0.606373" mass="0.0588507"
370
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
371
+ <joint name="left_hand_index_0_joint" pos="0 0 0" axis="0 0 1"
372
+ range="-1.5708 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
373
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
374
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_index_0_link" />
375
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_index_0_link" />
376
+ <body name="left_hand_index_1_link" pos="0.0458 0 0">
377
+ <inertial pos="0.0262819 0.00171735 -0.000107789"
378
+ quat="0.502612 0.491799 0.502639 0.502861" mass="0.0203063"
379
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
380
+ <joint name="left_hand_index_1_joint" pos="0 0 0" axis="0 0 1"
381
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
382
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
383
+ rgba="0.7 0.7 0.7 1" mesh="left_hand_index_1_link" />
384
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="left_hand_index_1_link" />
385
+ </body>
386
+ </body>
387
+ </body>
388
+ </body>
389
+ </body>
390
+ </body>
391
+ </body>
392
+ </body>
393
+ </body>
394
+ <body name="right_shoulder_pitch_link" pos="0.0039563 -0.10021 0.23778"
395
+ quat="0.990264 -0.139201 1.38722e-05 9.86868e-05">
396
+ <inertial pos="0 -0.035892 -0.011628" quat="0.68225 -0.326267 0.0130458 0.654152"
397
+ mass="0.718" diaginertia="0.000465864 0.000432842 0.000406394" />
398
+ <joint name="right_shoulder_pitch_joint" pos="0 0 0" axis="0 1 0"
399
+ range="-3.0892 2.6704" actuatorfrcrange="-25 25" class="arm_motor" />
400
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
401
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_pitch_link" />
402
+ <geom size="0.03 0.025" pos="0 -0.04 -0.01" quat="0.707107 0 0.707107 0"
403
+ type="cylinder" rgba="0.7 0.7 0.7 1" />
404
+ <body name="right_shoulder_roll_link" pos="0 -0.038 -0.013831"
405
+ quat="0.990268 0.139172 0 0">
406
+ <inertial pos="-0.000227 -0.00727 -0.063243"
407
+ quat="0.712604 -0.00710317 -0.0196223 0.701256" mass="0.643"
408
+ diaginertia="0.000691311 0.000618011 0.000388977" />
409
+ <joint name="right_shoulder_roll_joint" pos="0 0 0" axis="1 0 0"
410
+ range="-2.2515 1.5882" actuatorfrcrange="-25 25" class="arm_motor" />
411
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
412
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_roll_link" />
413
+ <geom size="0.03 0.015" pos="-0.004 -0.006 -0.053" type="cylinder"
414
+ rgba="0.7 0.7 0.7 1" />
415
+ <body name="right_shoulder_yaw_link" pos="0 -0.00624 -0.1032">
416
+ <inertial pos="0.010773 0.002949 -0.072009"
417
+ quat="0.687134 -0.0679942 -0.0964829 0.716879" mass="0.734"
418
+ diaginertia="0.00106187 0.00103217 0.000400661" />
419
+ <joint name="right_shoulder_yaw_joint" pos="0 0 0" axis="0 0 1"
420
+ range="-2.618 2.618" actuatorfrcrange="-25 25" class="arm_motor" />
421
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
422
+ rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
423
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_shoulder_yaw_link" />
424
+ <body name="right_elbow_link" pos="0.015783 0 -0.080518">
425
+ <inertial pos="0.064956 -0.004454 -0.010062"
426
+ quat="0.388129 0.388821 0.636132 0.541765" mass="0.6"
427
+ diaginertia="0.000443035 0.000421612 0.000259353" />
428
+ <joint name="right_elbow_joint" pos="0 0 0" axis="0 1 0" range="-1.0472 2.0944"
429
+ actuatorfrcrange="-25 25" class="arm_motor" />
430
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
431
+ rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
432
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_elbow_link" />
433
+ <body name="right_wrist_roll_link" pos="0.1 -0.00188791 -0.01">
434
+ <inertial pos="0.0171394 -0.000537591 4.8864e-07"
435
+ quat="0.411667 0.575338 -0.411094 0.574906" mass="0.085445"
436
+ diaginertia="5.48211e-05 4.96646e-05 3.57798e-05" />
437
+ <joint name="right_wrist_roll_joint" pos="0 0 0" axis="1 0 0"
438
+ range="-1.97222 1.97222" actuatorfrcrange="-25 25" class="arm_motor" />
439
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
440
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
441
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_roll_link" />
442
+ <body name="right_wrist_pitch_link" pos="0.038 0 0">
443
+ <inertial pos="0.0229999 0.00111685 -0.00111658"
444
+ quat="0.643608 0.293036 0.661363 0.249998" mass="0.48405"
445
+ diaginertia="0.000430353 0.000429873 0.000164648" />
446
+ <joint name="right_wrist_pitch_joint" pos="0 0 0" axis="0 1 0"
447
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
448
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
449
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
450
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_pitch_link" />
451
+ <body name="right_wrist_yaw_link" pos="0.046 0 0">
452
+ <inertial pos="0.0885506 -0.00212216 0.000573742"
453
+ quat="0.507224 0.511377 0.494292 0.486717" mass="0.457415"
454
+ diaginertia="0.0010598 0.000895373 0.0003238" />
455
+ <joint name="right_wrist_yaw_joint" pos="0 0 0" axis="0 0 1"
456
+ range="-1.61443 1.61443" actuatorfrcrange="-5 5" class="wrist_motor" />
457
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
458
+ rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
459
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_wrist_yaw_link" />
460
+ <geom pos="0.0415 -0.003 0" quat="1 0 0 0" type="mesh" contype="0"
461
+ conaffinity="0" group="1" density="0" rgba="0.7 0.7 0.7 1"
462
+ mesh="right_hand_palm_link" />
463
+ <geom pos="0.0415 -0.003 0" quat="1 0 0 0" type="mesh"
464
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_palm_link" />
465
+ <body name="right_hand_thumb_0_link" pos="0.067 -0.003 0">
466
+ <inertial pos="-0.000884246 0.00863407 0.000944293"
467
+ quat="0.643965 0.462991 -0.398986 0.460173" mass="0.0862366"
468
+ diaginertia="1.6546e-05 1.60058e-05 1.43741e-05" />
469
+ <joint name="right_hand_thumb_0_joint" pos="0 0 0" axis="0 1 0"
470
+ range="-1.0472 1.0472" actuatorfrcrange="-2.45 2.45"
471
+ class="finger_motor" />
472
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
473
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_0_link" />
474
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_0_link" />
475
+ <body name="right_hand_thumb_1_link" pos="-0.0025 0.0193 0">
476
+ <inertial pos="-0.000827888 0.0354744 -0.0003809"
477
+ quat="0.705471 0.685598 -0.0956069 0.15207" mass="0.0588507"
478
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
479
+ <joint name="right_hand_thumb_1_joint" pos="0 0 0" axis="0 0 1"
480
+ range="-1.0472 0.724312" actuatorfrcrange="-1.4 1.4"
481
+ class="finger_motor" />
482
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
483
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_1_link" />
484
+ <geom size="0.01 0.015 0.01" pos="-0.001 0.032 0" type="box"
485
+ rgba="0.7 0.7 0.7 1" />
486
+ <body name="right_hand_thumb_2_link" pos="0 0.0458 0">
487
+ <inertial pos="-0.00171735 0.0262819 0.000107789"
488
+ quat="0.710977 0.703174 0.00766553 0.00017564" mass="0.0203063"
489
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
490
+ <joint name="right_hand_thumb_2_joint" pos="0 0 0" axis="0 0 1"
491
+ range="-1.74533 0" actuatorfrcrange="-1.4 1.4"
492
+ class="finger_motor" />
493
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
494
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_thumb_2_link" />
495
+ <geom type="mesh" rgba="0.7 0.7 0.7 1"
496
+ mesh="right_hand_thumb_2_link" />
497
+ </body>
498
+ </body>
499
+ </body>
500
+ <body name="right_hand_middle_0_link" pos="0.1192 -0.0046 -0.0285">
501
+ <inertial pos="0.0354744 -0.000827888 0.0003809"
502
+ quat="0.606373 0.417187 0.552395 0.391313" mass="0.0588507"
503
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
504
+ <joint name="right_hand_middle_0_joint" pos="0 0 0" axis="0 0 1"
505
+ range="0 1.5708" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
506
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
507
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_0_link" />
508
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_0_link" />
509
+ <body name="right_hand_middle_1_link" pos="0.0458 0 0">
510
+ <inertial pos="0.0262819 -0.00171735 -0.000107789"
511
+ quat="0.502861 0.502639 0.491799 0.502612" mass="0.0203063"
512
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
513
+ <joint name="right_hand_middle_1_joint" pos="0 0 0" axis="0 0 1"
514
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
515
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
516
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_1_link" />
517
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_middle_1_link" />
518
+ </body>
519
+ </body>
520
+ <body name="right_hand_index_0_link" pos="0.1192 -0.0046 0.0285">
521
+ <inertial pos="0.0354744 -0.000827888 0.0003809"
522
+ quat="0.606373 0.417187 0.552395 0.391313" mass="0.0588507"
523
+ diaginertia="1.28514e-05 1.22902e-05 5.9666e-06" />
524
+ <joint name="right_hand_index_0_joint" pos="0 0 0" axis="0 0 1"
525
+ range="0 1.5708" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
526
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
527
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_index_0_link" />
528
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_index_0_link" />
529
+ <body name="right_hand_index_1_link" pos="0.0458 0 0">
530
+ <inertial pos="0.0262819 -0.00171735 -0.000107789"
531
+ quat="0.502861 0.502639 0.491799 0.502612" mass="0.0203063"
532
+ diaginertia="4.61314e-06 3.86645e-06 1.53495e-06" />
533
+ <joint name="right_hand_index_1_joint" pos="0 0 0" axis="0 0 1"
534
+ range="0 1.74533" actuatorfrcrange="-1.4 1.4" class="finger_motor" />
535
+ <geom type="mesh" contype="0" conaffinity="0" group="1" density="0"
536
+ rgba="0.7 0.7 0.7 1" mesh="right_hand_index_1_link" />
537
+ <geom type="mesh" rgba="0.7 0.7 0.7 1" mesh="right_hand_index_1_link" />
538
+ </body>
539
+ </body>
540
+ </body>
541
+ </body>
542
+ </body>
543
+ </body>
544
+ </body>
545
+ </body>
546
+ </body>
547
+ </body>
548
+ </body>
549
+ </body>
550
+ </body>
551
+ </worldbody>
552
+
553
+ <actuator>
554
+ <motor name="left_hip_pitch" joint="left_hip_pitch_joint" ctrlrange="-88 88" />
555
+ <motor name="left_hip_roll" joint="left_hip_roll_joint" ctrlrange="-88 88" />
556
+ <motor name="left_hip_yaw" joint="left_hip_yaw_joint" ctrlrange="-88 88" />
557
+ <motor name="left_knee" joint="left_knee_joint" ctrlrange="-139 139" />
558
+ <motor name="left_ankle_pitch" joint="left_ankle_pitch_joint" ctrlrange="-50 50" />
559
+ <motor name="left_ankle_roll" joint="left_ankle_roll_joint" ctrlrange="-50 50" />
560
+
561
+ <motor name="right_hip_pitch" joint="right_hip_pitch_joint" ctrlrange="-88 88" />
562
+ <motor name="right_hip_roll" joint="right_hip_roll_joint" ctrlrange="-88 88" />
563
+ <motor name="right_hip_yaw" joint="right_hip_yaw_joint" ctrlrange="-88 88" />
564
+ <motor name="right_knee" joint="right_knee_joint" ctrlrange="-139 139" />
565
+ <motor name="right_ankle_pitch" joint="right_ankle_pitch_joint" ctrlrange="-50 50" />
566
+ <motor name="right_ankle_roll" joint="right_ankle_roll_joint" ctrlrange="-50 50" />
567
+
568
+ <motor name="waist_yaw" joint="waist_yaw_joint" ctrlrange="-88 88" />
569
+ <motor name="waist_roll" joint="waist_roll_joint" ctrlrange="-50 50" />
570
+ <motor name="waist_pitch" joint="waist_pitch_joint" ctrlrange="-50 50" />
571
+
572
+ <motor name="left_shoulder_pitch" joint="left_shoulder_pitch_joint" ctrlrange="-25 25" />
573
+ <motor name="left_shoulder_roll" joint="left_shoulder_roll_joint" ctrlrange="-25 25" />
574
+ <motor name="left_shoulder_yaw" joint="left_shoulder_yaw_joint" ctrlrange="-25 25" />
575
+ <motor name="left_elbow" joint="left_elbow_joint" ctrlrange="-25 25" />
576
+ <motor name="left_wrist_roll" joint="left_wrist_roll_joint" ctrlrange="-25 25" />
577
+ <motor name="left_wrist_pitch" joint="left_wrist_pitch_joint" ctrlrange="-5 5" />
578
+ <motor name="left_wrist_yaw" joint="left_wrist_yaw_joint" ctrlrange="-5 5" />
579
+
580
+ <motor name="left_hand_thumb_0" joint="left_hand_thumb_0_joint" ctrlrange="-2.45 2.45" />
581
+ <motor name="left_hand_thumb_1" joint="left_hand_thumb_1_joint" ctrlrange="-1.4 1.4" />
582
+ <motor name="left_hand_thumb_2" joint="left_hand_thumb_2_joint" ctrlrange="-1.4 1.4" />
583
+ <motor name="left_hand_middle_0" joint="left_hand_middle_0_joint" ctrlrange="-1.4 1.4" />
584
+ <motor name="left_hand_middle_1" joint="left_hand_middle_1_joint" ctrlrange="-1.4 1.4" />
585
+ <motor name="left_hand_index_0" joint="left_hand_index_0_joint" ctrlrange="-1.4 1.4" />
586
+ <motor name="left_hand_index_1" joint="left_hand_index_1_joint" ctrlrange="-1.4 1.4" />
587
+
588
+ <motor name="right_shoulder_pitch" joint="right_shoulder_pitch_joint" ctrlrange="-25 25" />
589
+ <motor name="right_shoulder_roll" joint="right_shoulder_roll_joint" ctrlrange="-25 25" />
590
+ <motor name="right_shoulder_yaw" joint="right_shoulder_yaw_joint" ctrlrange="-25 25" />
591
+ <motor name="right_elbow" joint="right_elbow_joint" ctrlrange="-25 25" />
592
+ <motor name="right_wrist_roll" joint="right_wrist_roll_joint" ctrlrange="-25 25" />
593
+ <motor name="right_wrist_pitch" joint="right_wrist_pitch_joint" ctrlrange="-5 5" />
594
+ <motor name="right_wrist_yaw" joint="right_wrist_yaw_joint" ctrlrange="-5 5" />
595
+
596
+ <motor name="right_hand_thumb_0" joint="right_hand_thumb_0_joint" ctrlrange="-2.45 2.45" />
597
+ <motor name="right_hand_thumb_1" joint="right_hand_thumb_1_joint" ctrlrange="-1.4 1.4" />
598
+ <motor name="right_hand_thumb_2" joint="right_hand_thumb_2_joint" ctrlrange="-1.4 1.4" />
599
+ <motor name="right_hand_middle_0" joint="right_hand_middle_0_joint" ctrlrange="-1.4 1.4" />
600
+ <motor name="right_hand_middle_1" joint="right_hand_middle_1_joint" ctrlrange="-1.4 1.4" />
601
+ <motor name="right_hand_index_0" joint="right_hand_index_0_joint" ctrlrange="-1.4 1.4" />
602
+ <motor name="right_hand_index_1" joint="right_hand_index_1_joint" ctrlrange="-1.4 1.4" />
603
+ </actuator>
604
+
605
+ <sensor>
606
+ <jointpos name="left_hip_pitch_pos" joint="left_hip_pitch_joint" />
607
+ <jointpos name="left_hip_roll_pos" joint="left_hip_roll_joint" />
608
+ <jointpos name="left_hip_yaw_pos" joint="left_hip_yaw_joint" />
609
+ <jointpos name="left_knee_pos" joint="left_knee_joint" />
610
+ <jointpos name="left_ankle_pitch_pos" joint="left_ankle_pitch_joint" />
611
+ <jointpos name="left_ankle_roll_pos" joint="left_ankle_roll_joint" />
612
+ <jointpos name="right_hip_pitch_pos" joint="right_hip_pitch_joint" />
613
+ <jointpos name="right_hip_roll_pos" joint="right_hip_roll_joint" />
614
+ <jointpos name="right_hip_yaw_pos" joint="right_hip_yaw_joint" />
615
+ <jointpos name="right_knee_pos" joint="right_knee_joint" />
616
+ <jointpos name="right_ankle_pitch_pos" joint="right_ankle_pitch_joint" />
617
+ <jointpos name="right_ankle_roll_pos" joint="right_ankle_roll_joint" />
618
+ <jointpos name="waist_yaw_pos" joint="waist_yaw_joint" />
619
+ <jointpos name="waist_roll_pos" joint="waist_roll_joint" />
620
+ <jointpos name="waist_pitch_pos" joint="waist_pitch_joint" />
621
+ <jointpos name="left_shoulder_pitch_pos" joint="left_shoulder_pitch_joint" />
622
+ <jointpos name="left_shoulder_roll_pos" joint="left_shoulder_roll_joint" />
623
+ <jointpos name="left_shoulder_yaw_pos" joint="left_shoulder_yaw_joint" />
624
+ <jointpos name="left_elbow_pos" joint="left_elbow_joint" />
625
+ <jointpos name="left_wrist_roll_pos" joint="left_wrist_roll_joint" />
626
+ <jointpos name="left_wrist_pitch_pos" joint="left_wrist_pitch_joint" />
627
+ <jointpos name="left_wrist_yaw_pos" joint="left_wrist_yaw_joint" />
628
+ <jointpos name="right_shoulder_pitch_pos" joint="right_shoulder_pitch_joint" />
629
+ <jointpos name="right_shoulder_roll_pos" joint="right_shoulder_roll_joint" />
630
+ <jointpos name="right_shoulder_yaw_pos" joint="right_shoulder_yaw_joint" />
631
+ <jointpos name="right_elbow_pos" joint="right_elbow_joint" />
632
+ <jointpos name="right_wrist_roll_pos" joint="right_wrist_roll_joint" />
633
+ <jointpos name="right_wrist_pitch_pos" joint="right_wrist_pitch_joint" />
634
+ <jointpos name="right_wrist_yaw_pos" joint="right_wrist_yaw_joint" />
635
+
636
+ <jointpos name="left_hand_thumb_0_pos" joint="left_hand_thumb_0_joint" />
637
+ <jointpos name="left_hand_thumb_1_pos" joint="left_hand_thumb_1_joint" />
638
+ <jointpos name="left_hand_thumb_2_pos" joint="left_hand_thumb_2_joint" />
639
+ <jointpos name="left_hand_middle_0_pos" joint="left_hand_middle_0_joint" />
640
+ <jointpos name="left_hand_middle_1_pos" joint="left_hand_middle_1_joint" />
641
+ <jointpos name="left_hand_index_0_pos" joint="left_hand_index_0_joint" />
642
+ <jointpos name="left_hand_index_1_pos" joint="left_hand_index_1_joint" />
643
+ <jointpos name="right_hand_thumb_0_pos" joint="right_hand_thumb_0_joint" />
644
+ <jointpos name="right_hand_thumb_1_pos" joint="right_hand_thumb_1_joint" />
645
+ <jointpos name="right_hand_thumb_2_pos" joint="right_hand_thumb_2_joint" />
646
+ <jointpos name="right_hand_middle_0_pos" joint="right_hand_middle_0_joint" />
647
+ <jointpos name="right_hand_middle_1_pos" joint="right_hand_middle_1_joint" />
648
+ <jointpos name="right_hand_index_0_pos" joint="right_hand_index_0_joint" />
649
+ <jointpos name="right_hand_index_1_pos" joint="right_hand_index_1_joint" />
650
+
651
+ <jointvel name="left_hip_pitch_vel" joint="left_hip_pitch_joint" />
652
+ <jointvel name="left_hip_roll_vel" joint="left_hip_roll_joint" />
653
+ <jointvel name="left_hip_yaw_vel" joint="left_hip_yaw_joint" />
654
+ <jointvel name="left_knee_vel" joint="left_knee_joint" />
655
+ <jointvel name="left_ankle_pitch_vel" joint="left_ankle_pitch_joint" />
656
+ <jointvel name="left_ankle_roll_vel" joint="left_ankle_roll_joint" />
657
+ <jointvel name="right_hip_pitch_vel" joint="right_hip_pitch_joint" />
658
+ <jointvel name="right_hip_roll_vel" joint="right_hip_roll_joint" />
659
+ <jointvel name="right_hip_yaw_vel" joint="right_hip_yaw_joint" />
660
+ <jointvel name="right_knee_vel" joint="right_knee_joint" />
661
+ <jointvel name="right_ankle_pitch_vel" joint="right_ankle_pitch_joint" />
662
+ <jointvel name="right_ankle_roll_vel" joint="right_ankle_roll_joint" />
663
+ <jointvel name="waist_yaw_vel" joint="waist_yaw_joint" />
664
+ <jointvel name="waist_roll_vel" joint="waist_roll_joint" />
665
+ <jointvel name="waist_pitch_vel" joint="waist_pitch_joint" />
666
+ <jointvel name="left_shoulder_pitch_vel" joint="left_shoulder_pitch_joint" />
667
+ <jointvel name="left_shoulder_roll_vel" joint="left_shoulder_roll_joint" />
668
+ <jointvel name="left_shoulder_yaw_vel" joint="left_shoulder_yaw_joint" />
669
+ <jointvel name="left_elbow_vel" joint="left_elbow_joint" />
670
+ <jointvel name="left_wrist_roll_vel" joint="left_wrist_roll_joint" />
671
+ <jointvel name="left_wrist_pitch_vel" joint="left_wrist_pitch_joint" />
672
+ <jointvel name="left_wrist_yaw_vel" joint="left_wrist_yaw_joint" />
673
+ <jointvel name="right_shoulder_pitch_vel" joint="right_shoulder_pitch_joint" />
674
+ <jointvel name="right_shoulder_roll_vel" joint="right_shoulder_roll_joint" />
675
+ <jointvel name="right_shoulder_yaw_vel" joint="right_shoulder_yaw_joint" />
676
+ <jointvel name="right_elbow_vel" joint="right_elbow_joint" />
677
+ <jointvel name="right_wrist_roll_vel" joint="right_wrist_roll_joint" />
678
+ <jointvel name="right_wrist_pitch_vel" joint="right_wrist_pitch_joint" />
679
+ <jointvel name="right_wrist_yaw_vel" joint="right_wrist_yaw_joint" />
680
+
681
+ <jointvel name="left_hand_thumb_0_vel" joint="left_hand_thumb_0_joint" />
682
+ <jointvel name="left_hand_thumb_1_vel" joint="left_hand_thumb_1_joint" />
683
+ <jointvel name="left_hand_thumb_2_vel" joint="left_hand_thumb_2_joint" />
684
+ <jointvel name="left_hand_middle_0_vel" joint="left_hand_middle_0_joint" />
685
+ <jointvel name="left_hand_middle_1_vel" joint="left_hand_middle_1_joint" />
686
+ <jointvel name="left_hand_index_0_vel" joint="left_hand_index_0_joint" />
687
+ <jointvel name="left_hand_index_1_vel" joint="left_hand_index_1_joint" />
688
+ <jointvel name="right_hand_thumb_0_vel" joint="right_hand_thumb_0_joint" />
689
+ <jointvel name="right_hand_thumb_1_vel" joint="right_hand_thumb_1_joint" />
690
+ <jointvel name="right_hand_thumb_2_vel" joint="right_hand_thumb_2_joint" />
691
+ <jointvel name="right_hand_middle_0_vel" joint="right_hand_middle_0_joint" />
692
+ <jointvel name="right_hand_middle_1_vel" joint="right_hand_middle_1_joint" />
693
+ <jointvel name="right_hand_index_0_vel" joint="right_hand_index_0_joint" />
694
+ <jointvel name="right_hand_index_1_vel" joint="right_hand_index_1_joint" />
695
+
696
+ <jointactuatorfrc name="left_hip_pitch_torque" joint="left_hip_pitch_joint" />
697
+ <jointactuatorfrc name="left_hip_roll_torque" joint="left_hip_roll_joint" />
698
+ <jointactuatorfrc name="left_hip_yaw_torque" joint="left_hip_yaw_joint" />
699
+ <jointactuatorfrc name="left_knee_torque" joint="left_knee_joint" />
700
+ <jointactuatorfrc name="left_ankle_pitch_torque" joint="left_ankle_pitch_joint" />
701
+ <jointactuatorfrc name="left_ankle_roll_torque" joint="left_ankle_roll_joint" />
702
+ <jointactuatorfrc name="right_hip_pitch_torque" joint="right_hip_pitch_joint" />
703
+ <jointactuatorfrc name="right_hip_roll_torque" joint="right_hip_roll_joint" />
704
+ <jointactuatorfrc name="right_hip_yaw_torque" joint="right_hip_yaw_joint" />
705
+ <jointactuatorfrc name="right_knee_torque" joint="right_knee_joint" />
706
+ <jointactuatorfrc name="right_ankle_pitch_torque" joint="right_ankle_pitch_joint" />
707
+ <jointactuatorfrc name="right_ankle_roll_torque" joint="right_ankle_roll_joint" />
708
+ <jointactuatorfrc name="waist_yaw_torque" joint="waist_yaw_joint" />
709
+ <jointactuatorfrc name="waist_roll_torque" joint="waist_roll_joint" />
710
+ <jointactuatorfrc name="waist_pitch_torque" joint="waist_pitch_joint" />
711
+ <jointactuatorfrc name="left_shoulder_pitch_torque" joint="left_shoulder_pitch_joint" />
712
+ <jointactuatorfrc name="left_shoulder_roll_torque" joint="left_shoulder_roll_joint" />
713
+ <jointactuatorfrc name="left_shoulder_yaw_torque" joint="left_shoulder_yaw_joint" />
714
+ <jointactuatorfrc name="left_elbow_torque" joint="left_elbow_joint" />
715
+ <jointactuatorfrc name="left_wrist_roll_torque" joint="left_wrist_roll_joint" />
716
+ <jointactuatorfrc name="left_wrist_pitch_torque" joint="left_wrist_pitch_joint" />
717
+ <jointactuatorfrc name="left_wrist_yaw_torque" joint="left_wrist_yaw_joint" />
718
+ <jointactuatorfrc name="right_shoulder_pitch_torque" joint="right_shoulder_pitch_joint" />
719
+ <jointactuatorfrc name="right_shoulder_roll_torque" joint="right_shoulder_roll_joint" />
720
+ <jointactuatorfrc name="right_shoulder_yaw_torque" joint="right_shoulder_yaw_joint" />
721
+ <jointactuatorfrc name="right_elbow_torque" joint="right_elbow_joint" />
722
+ <jointactuatorfrc name="right_wrist_roll_torque" joint="right_wrist_roll_joint" />
723
+ <jointactuatorfrc name="right_wrist_pitch_torque" joint="right_wrist_pitch_joint" />
724
+ <jointactuatorfrc name="right_wrist_yaw_torque" joint="right_wrist_yaw_joint" />
725
+
726
+ <jointactuatorfrc name="left_hand_thumb_0_torque" joint="left_hand_thumb_0_joint" />
727
+ <jointactuatorfrc name="left_hand_thumb_1_torque" joint="left_hand_thumb_1_joint" />
728
+ <jointactuatorfrc name="left_hand_thumb_2_torque" joint="left_hand_thumb_2_joint" />
729
+ <jointactuatorfrc name="left_hand_middle_0_torque" joint="left_hand_middle_0_joint" />
730
+ <jointactuatorfrc name="left_hand_middle_1_torque" joint="left_hand_middle_1_joint" />
731
+ <jointactuatorfrc name="left_hand_index_0_torque" joint="left_hand_index_0_joint" />
732
+ <jointactuatorfrc name="left_hand_index_1_torque" joint="left_hand_index_1_joint" />
733
+ <jointactuatorfrc name="right_hand_thumb_0_torque" joint="right_hand_thumb_0_joint" />
734
+ <jointactuatorfrc name="right_hand_thumb_1_torque" joint="right_hand_thumb_1_joint" />
735
+ <jointactuatorfrc name="right_hand_thumb_2_torque" joint="right_hand_thumb_2_joint" />
736
+ <jointactuatorfrc name="right_hand_middle_0_torque" joint="right_hand_middle_0_joint" />
737
+ <jointactuatorfrc name="right_hand_middle_1_torque" joint="right_hand_middle_1_joint" />
738
+ <jointactuatorfrc name="right_hand_index_0_torque" joint="right_hand_index_0_joint" />
739
+ <jointactuatorfrc name="right_hand_index_1_torque" joint="right_hand_index_1_joint" />
740
+
741
+ <framequat name="imu_quat" objtype="site" objname="imu" />
742
+ <gyro name="imu_gyro" site="imu" />
743
+ <accelerometer name="imu_acc" site="imu" />
744
+
745
+ <framepos name="frame_pos" objtype="site" objname="imu" />
746
+ <framelinvel name="frame_vel" objtype="site" objname="imu" />
747
+ </sensor>
748
+ </mujoco>
assets/meshes/head_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:005fb67fbd3eff94aa8bf4a6e83238174e9f91b6721f7111594322f223724411
3
+ size 932784
assets/meshes/left_ankle_pitch_link.STL ADDED
Binary file (71.2 kB). View file
 
assets/meshes/left_ankle_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c4092af943141d4d9f74232f3cfa345afc6565f46a077793b8ae0e68b39dc33f
3
+ size 653384
assets/meshes/left_elbow_link.STL ADDED
Binary file (88.8 kB). View file
 
assets/meshes/left_elbow_link_merge.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:73c8adc6346b900eb6a2ae7159e25dfda1be60cd98affe13536e01ab33a6c1de
3
+ size 3136784
assets/meshes/left_hand_index_0_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6b35f2f77211d5a366f0b9a4e47c4ee35e536731266f1a34e9efa12db579b892
3
+ size 475984
assets/meshes/left_hand_index_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9e315ebc8a7a0cb98e033985b586b20d81cf8aa761181ae61ce56fcb14077a06
3
+ size 1521784
assets/meshes/left_hand_middle_0_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6b35f2f77211d5a366f0b9a4e47c4ee35e536731266f1a34e9efa12db579b892
3
+ size 475984
assets/meshes/left_hand_middle_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9e315ebc8a7a0cb98e033985b586b20d81cf8aa761181ae61ce56fcb14077a06
3
+ size 1521784
assets/meshes/left_hand_palm_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:23a486b75bd78a9bf03cec25d84d87f97f3dae038cf21a743b6d469b337e4004
3
+ size 2140184
assets/meshes/left_hand_thumb_0_link.STL ADDED
Binary file (8.88 kB). View file
 
assets/meshes/left_hand_thumb_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:445c54a45bc13ce36001556f66bc0f49c83cb40321205ae4d676bb2874325684
3
+ size 475984
assets/meshes/left_hand_thumb_2_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3d8dbe5085acfc213d21aa8b0782e89cd79084e9678f3a85fc7b04a86b029db5
3
+ size 1521784
assets/meshes/left_hip_pitch_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4725168105ee768ee31638ef22b53f6be2d7641bfd7cfefe803488d884776fa4
3
+ size 181684
assets/meshes/left_hip_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:91f25922ee8a7c3152790051bebad17b4d9cd243569c38fe340285ff93a97acf
3
+ size 192184
assets/meshes/left_hip_yaw_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a16d88aa6ddac8083aa7ad55ed317bea44b1fa003d314fba88965b7ed0f3b55b
3
+ size 296284
assets/meshes/left_knee_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8d92b9e3d3a636761150bb8025e32514c4602b91c7028d523ee42b3e632de477
3
+ size 854884
assets/meshes/left_rubber_hand.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cff2221a690fa69303f61fce68f2d155c1517b52efb6ca9262dd56e0bc6e70fe
3
+ size 2287484
assets/meshes/left_shoulder_pitch_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f0d1cfd02fcf0d42f95e678eeca33da3afbcc366ffba5c052847773ec4f31d52
3
+ size 176784
assets/meshes/left_shoulder_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fb9df21687773522598dc384f1a2945c7519f11cbc8bd372a49170316d6eee88
3
+ size 400284
assets/meshes/left_shoulder_yaw_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1aa97e9748e924336567992181f78c7cd0652fd52a4afcca3df6b2ef6f9e712e
3
+ size 249184
assets/meshes/left_wrist_pitch_link.STL ADDED
Binary file (86 kB). View file
 
assets/meshes/left_wrist_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:edc387c9a0ba8c2237e9b296d32531426fabeb6f53e58df45c76106bca74148c
3
+ size 356184
assets/meshes/left_wrist_roll_rubber_hand.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e81030abd023bd9e4a308ef376d814a2c12d684d8a7670c335bbd5cd7809c909
3
+ size 3484884
assets/meshes/left_wrist_yaw_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:83f8fb3a726bf9613d65dd14f0f447cb918c3c95b3938042a0c9c09749267d3b
3
+ size 318684
assets/meshes/logo_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8571a0a19bc4916fa55f91449f51d5fdefd751000054865a842449429d5f155b
3
+ size 243384
assets/meshes/pelvis.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5ba6bbc888e630550140d3c26763f10206da8c8bd30ed886b8ede41c61f57a31
3
+ size 1060884
assets/meshes/pelvis_contour_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5cc5c2c7a312329e3feeb2b03d3fc09fc29705bd01864f6767e51be959662420
3
+ size 1805184
assets/meshes/right_ankle_pitch_link.STL ADDED
Binary file (71.2 kB). View file
 
assets/meshes/right_ankle_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4b66222ea56653e627711b56d0a8949b4920da5df091da0ceb343f54e884e3a5
3
+ size 653784
assets/meshes/right_elbow_link.STL ADDED
Binary file (88.8 kB). View file
 
assets/meshes/right_elbow_link_merge.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e6def7100e5bbb276c7498c5b7a8c8812f560ca35d6bd09c376ebab93595be7f
3
+ size 3058284
assets/meshes/right_hand_index_0_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:12ab4300c95e437e834f9aef772b3b431c671bf34338930b52ad11aef73bbd0d
3
+ size 475984
assets/meshes/right_hand_index_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c9c34efce4563cacdcfd29fc838a982976d40f5442c71219811dcbbf3923a33d
3
+ size 1521784
assets/meshes/right_hand_middle_0_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:12ab4300c95e437e834f9aef772b3b431c671bf34338930b52ad11aef73bbd0d
3
+ size 475984
assets/meshes/right_hand_middle_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c9c34efce4563cacdcfd29fc838a982976d40f5442c71219811dcbbf3923a33d
3
+ size 1521784
assets/meshes/right_hand_palm_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:86c0b231cc44477d64a6493e5a427ba16617a00738112dd187c652675b086fb9
3
+ size 2140184
assets/meshes/right_hand_thumb_0_link.STL ADDED
Binary file (8.88 kB). View file
 
assets/meshes/right_hand_thumb_1_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0a9a820da8dd10f298778b714f1364216e8a5976f4fd3a05689ea26327d44bf6
3
+ size 475984
assets/meshes/right_hand_thumb_2_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f1bfb37668e8f61801c8d25f171fa1949e08666be86c67acad7e0079937cc45
3
+ size 1521784
assets/meshes/right_hip_pitch_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e4f3c99d7f4a7d34eadbef9461fc66e3486cb5442db1ec50c86317d459f1a9c6
3
+ size 181284
assets/meshes/right_hip_roll_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4c254ef66a356f492947f360dd931965477b631e3fcc841f91ccc46d945d54f6
3
+ size 192684
assets/meshes/right_hip_yaw_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e479c2936ca2057e9eb2f7dff6c189b7419d7b8484dea0b298cbb36a2a6aa668
3
+ size 296284
assets/meshes/right_knee_link.STL ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:63c4008449c9bbe701a6e2b557b7a252e90cf3a5abcf54cee46862b9a69f8ec8
3
+ size 852284