| feat(sim): MuJoCo pick_banana scene — CoACD collision + physics tuning
Replace convex-hull collision proxies with CoACD convex decomposition for
accurate non-convex contact, and tune physics parameters to match real
STS3215 gripper dynamics.
Collision geometry:
- banana: 4-piece CoACD decomposition of banana_g_collision.stl (C-shape
cannot be represented by a single convex hull)
- wrist_roll_follower: 8-piece CoACD decomposition
- moving_jaw: 8-piece CoACD decomposition
- plate: mesh collision from plate_collision.stl (replaces cylinder proxy)
- scene_compiler: generates .mjb with SDF for gripper meshes at launch
Physics parameters:
- joint 6 kp: 200 → 3.0 N·m/rad (matches STS3215 stall torque ~1.47 N·m)
- banana free joint damping: 0.001 → 0.5 (air-resistance scale)
- banana/gripper solimp/solref: soft → rigid-body mode (0.99/0.004)
- banana mass: distributed by CoACD piece volume fraction (total 0.03 kg)
- friction: banana and gripper both set to 5.0 (MuJoCo takes min of pair)
New assets:
- banana_g.obj/stl + PBR textures (new low-poly model, 17.5 cm)
- banana_g_collision.stl (682-face watertight collision mesh)
- plate_collision.stl (19 cm diameter)
- scripts/decompose_banana.py (CoACD decomposition utility)
- requirements/setup-constraints.txt (pins mujoco==3.4.0)
Constraint: mujoco Python must match mujoco_ros2_control libmujoco.so 3.4.0
| 3 天前 |