Complete implementation of path planning modules: - AI RRT* algorithm with intelligent sampling strategies - Collision detection wrapper for PyBullet - Hole crossing strategy with dynamic approach calculation - Path optimization with simplification - Path executor for trajectory execution - GUI integration with planning and execution buttons System is now feature-complete and ready for testing phase. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
137 lines
2.1 KiB
JSON
137 lines
2.1 KiB
JSON
{
|
|
"robot": {
|
|
"model_path": "models/manual_robot.urdf",
|
|
"base_position": [
|
|
0.0,
|
|
1.6,
|
|
0.0
|
|
],
|
|
"base_orientation": [
|
|
0.0,
|
|
0.0,
|
|
1.5
|
|
]
|
|
},
|
|
"wall": {
|
|
"position": [
|
|
0.0,
|
|
0.0,
|
|
0.0
|
|
],
|
|
"dimensions": {
|
|
"width": 3.0,
|
|
"height": 2.5,
|
|
"thickness": 0.2
|
|
},
|
|
"material": {
|
|
"color": [
|
|
0.8,
|
|
0.8,
|
|
0.8,
|
|
1.0
|
|
],
|
|
"type": "concrete"
|
|
}
|
|
},
|
|
"hole": {
|
|
"position_relative_to_wall": [
|
|
0.0,
|
|
0.0,
|
|
0.0
|
|
],
|
|
"dimensions": {
|
|
"width": 0.6,
|
|
"height": 0.6
|
|
},
|
|
"shape": "rectangle"
|
|
},
|
|
"task_points": {
|
|
"point_A": {
|
|
"position": [
|
|
1.0,
|
|
0.5,
|
|
0.8
|
|
],
|
|
"description": "取物点,与机械臂同侧"
|
|
},
|
|
"point_B": {
|
|
"position": [
|
|
3.0,
|
|
0.5,
|
|
0.8
|
|
],
|
|
"description": "目标点,墙体另一侧"
|
|
}
|
|
},
|
|
"transport_object": {
|
|
"initial_position": [
|
|
1.0,
|
|
0.5,
|
|
0.5
|
|
],
|
|
"dimensions": {
|
|
"width": 0.1,
|
|
"height": 0.1,
|
|
"depth": 0.1
|
|
},
|
|
"mass": 0.5,
|
|
"shape": "cube",
|
|
"material": {
|
|
"color": [
|
|
1.0,
|
|
0.0,
|
|
0.0,
|
|
1.0
|
|
],
|
|
"friction": 0.7
|
|
}
|
|
},
|
|
"simulation": {
|
|
"timestep": 0.01,
|
|
"gravity": [
|
|
0.0,
|
|
0.0,
|
|
-9.81
|
|
],
|
|
"real_time": false
|
|
},
|
|
"camera": {
|
|
"distance": 4.0,
|
|
"yaw": 45,
|
|
"pitch": -30,
|
|
"target": [
|
|
0,
|
|
0,
|
|
0
|
|
]
|
|
},
|
|
"gui": {
|
|
"window_size": "1200x800"
|
|
},
|
|
"kinematics": {
|
|
"max_iterations": 1500,
|
|
"epsilon": 1e-5
|
|
},
|
|
"path_planning": {
|
|
"ai_rrt_star": {
|
|
"enabled": true,
|
|
"max_iterations": 5000,
|
|
"step_size": 0.1,
|
|
"goal_sample_rate": 0.15,
|
|
"search_radius": 0.5,
|
|
"hole_bias_rate": 0.3
|
|
},
|
|
"collision": {
|
|
"check_resolution": 0.05,
|
|
"safety_margin": 0.02
|
|
},
|
|
"optimization": {
|
|
"shortcut_iterations": 50,
|
|
"smoothing_factor": 0.5
|
|
},
|
|
"execution": {
|
|
"velocity_scaling": 1.0,
|
|
"position_tolerance": 0.01
|
|
}
|
|
}
|
|
} |