Docs and Controllers Update
This commit is contained in:
@@ -7,7 +7,10 @@ Implement your landing algorithm in `drone_controller.py`.
|
||||
1. Edit `drone_controller.py`
|
||||
2. Find `calculate_landing_maneuver()`
|
||||
3. Implement your algorithm
|
||||
4. Test: `python controllers.py --pattern stationary`
|
||||
4. Test with any mode:
|
||||
- `python standalone_simulation.py --pattern stationary` (standalone)
|
||||
- `python run_bridge.py --pattern stationary` (PyBullet + ROS 2)
|
||||
- `python run_gazebo.py --pattern stationary` (Gazebo + ROS 2)
|
||||
|
||||
## GPS-Denied Challenge
|
||||
|
||||
@@ -176,12 +179,29 @@ def process_camera(telemetry):
|
||||
## Testing
|
||||
|
||||
```bash
|
||||
# Easy
|
||||
python controllers.py --pattern stationary
|
||||
# Easy - stationary rover
|
||||
python standalone_simulation.py --pattern stationary
|
||||
|
||||
# Medium
|
||||
python controllers.py --pattern circular --speed 0.2
|
||||
# Medium - slow circular movement
|
||||
python standalone_simulation.py --pattern circular --speed 0.2
|
||||
|
||||
# Hard
|
||||
python controllers.py --pattern random --speed 0.3
|
||||
# Hard - faster random movement
|
||||
python standalone_simulation.py --pattern random --speed 0.3
|
||||
|
||||
# With ROS 2 (Gazebo)
|
||||
ros2 launch gazebo/launch/drone_landing.launch.py # Terminal 1
|
||||
python run_gazebo.py --pattern circular # Terminal 2
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
Edit `config.py` to tune controller gains:
|
||||
|
||||
```python
|
||||
CONTROLLER = {
|
||||
"Kp_z": 0.5, # Altitude proportional gain
|
||||
"Kd_z": 0.3, # Altitude derivative gain
|
||||
"Kp_xy": 0.3, # Horizontal proportional gain
|
||||
"Kd_xy": 0.2, # Horizontal derivative gain
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user