-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPOA.txt
More file actions
73 lines (50 loc) · 2.2 KB
/
Copy pathPOA.txt
File metadata and controls
73 lines (50 loc) · 2.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Plan of Action
Project Setup
Install dependencies: Gym-PyBullet-Drones, PyBullet, NumPy, Matplotlib, etc.
Set up a version-controlled repository (e.g., GitHub) to manage code and documentation.
**Environment Setup**
Define the simulation environment in Gym-PyBullet-Drones.
Model static building layouts with obstacles like walls and furniture using convex shapes.
**Drone Modeling**
Utilize the existing quadrotor model from Gym-PyBullet-Drones.
Ensure dynamics and kinematics are consistent with the motion equations described.
**Motion Planning Implementation**
Implement or integrate the A*, RRT*, and motion primitives algorithms.
Add functions to generate paths in a known static environment.
Incorporate safety buffers around obstacles during path planning.
**Control System Integration**
Use PID and LQR controllers for trajectory tracking:
PID for smoothed waypoint following (A*).
LQR for real-time trajectory tracking (RRT*, Motion Primitives).
**Simulation and Validation**
Simulate drone motion in the environment for each algorithm.
Record metrics:
Path length.
Solving time.
Obstacle clearance.
Use PyBullet’s visualization tools to validate motion.
**Performance Analysis**
Compare algorithms based on metrics.
Develop plots and quantitative insights.
###########################################3
Implementation Steps
Initialize the Repository
Clone the Gym-PyBullet-Drones repository and create a virtual environment.
Model the Quadrotor
Adapt the default quadrotor model for your application, if necessary.
Design the Environment
Programmatically create environments with varying obstacle configurations.
Use convex shapes to simplify collision detection.
Implement Motion Planners
Begin with A* to establish the baseline.
Add RRT* for dynamic trajectory adjustments.
Develop or use a library for motion primitives.
Integrate Controllers
Test each controller with corresponding motion planners.
Tune parameters for optimal performance.
Run Simulations
Create scripts to automate testing across environments and record metrics.
Analyze Results
Use visualization tools and Jupyter notebooks to interpret simulation data.
Finalize Deliverables
Assemble the final report, presentation, and code for submission.