Update readme.md
This commit is contained in:
parent
658d178db3
commit
464aff8bdc
151
readme.md
151
readme.md
@ -1,112 +1,97 @@
|
||||
ESP32-S3 Drone Stabilization Project
|
||||
# ESP32-S3 Drone Stabilization Project
|
||||
|
||||
This project implements a robust flight stabilization system for a quadcopter drone using the ESP32-S3 Super Mini microcontroller and an MPU6050 IMU. The firmware leverages the dual-core architecture of the ESP32-S3 to separate real-time stabilization from command processing, ensuring smooth and responsive flight control.
|
||||
Features
|
||||
This project implements a robust flight stabilization system for a quadcopter drone using the **ESP32-S3 Super Mini** microcontroller and an **MPU6050 IMU**. The firmware leverages the dual-core architecture of the ESP32-S3 to separate real-time stabilization from command processing, ensuring smooth and responsive flight control.
|
||||
|
||||
Dual-Core Architecture:
|
||||
---
|
||||
|
||||
Core 0: Dedicated to high-priority, real-time sensor reading and PID-based stabilization.
|
||||
## Features
|
||||
|
||||
Core 1: Handles lower-priority tasks such as receiving and processing flight commands.
|
||||
- **Dual-Core Architecture:**
|
||||
- **Core 0:** Dedicated to high-priority, real-time sensor reading and PID-based stabilization.
|
||||
- **Core 1:** Handles lower-priority tasks such as receiving and processing flight commands.
|
||||
- **Autonomous Hover:**
|
||||
- Maintains stable hover when no control commands are received.
|
||||
- **IMU Integration:**
|
||||
- Uses the MPU6050 for accurate attitude estimation and stabilization.
|
||||
- **Motor Mixing:**
|
||||
- Dynamically adjusts motor outputs for balanced flight.
|
||||
- **Command Input:**
|
||||
- Supports input via serial, WiFi, or Bluetooth (customizable).
|
||||
|
||||
Autonomous Hover:
|
||||
---
|
||||
|
||||
Maintains stable hover when no control commands are received.
|
||||
## Hardware Requirements
|
||||
|
||||
IMU Integration:
|
||||
- **ESP32-S3 Super Mini**
|
||||
- **MPU6050 IMU**
|
||||
- **4x ESCs and motors**
|
||||
- **3.7V LiPo battery (2S-4S)**
|
||||
- **Optional:** WiFi/BLE module for wireless control
|
||||
|
||||
Uses the MPU6050 for accurate attitude estimation and stabilization.
|
||||
---
|
||||
|
||||
Motor Mixing:
|
||||
## Wiring Guide
|
||||
|
||||
Dynamically adjusts motor outputs for balanced flight.
|
||||
- **MPU6050:**
|
||||
- SCL → `GPIO39`
|
||||
- SDA → `GPIO40`
|
||||
- **ESCs:**
|
||||
- ESC1 → `GPIO4`
|
||||
- ESC2 → `GPIO5`
|
||||
- ESC3 → `GPIO6`
|
||||
- ESC4 → `GPIO7`
|
||||
|
||||
Command Input:
|
||||
---
|
||||
|
||||
Supports input via serial, WiFi, or Bluetooth (customizable).
|
||||
## Software Requirements
|
||||
|
||||
Hardware Requirements
|
||||
- **Arduino IDE** (with ESP32 board support)
|
||||
- **Libraries:**
|
||||
- `Adafruit_MPU6050`
|
||||
- `ESP32Servo`
|
||||
- `Wire`
|
||||
|
||||
ESP32-S3 Super Mini
|
||||
---
|
||||
|
||||
MPU6050 IMU
|
||||
## Getting Started
|
||||
|
||||
4x ESCs and motors
|
||||
1. **Clone the Repository:**
|
||||
2. **Open the project in Arduino IDE.**
|
||||
3. **Install the required libraries.**
|
||||
4. **Connect your hardware as described above.**
|
||||
5. **Upload the firmware to your ESP32-S3.**
|
||||
6. **Calibrate the IMU and test with props removed for safety.**
|
||||
|
||||
3.7V LiPo battery (2S-4S)
|
||||
---
|
||||
|
||||
Optional: WiFi/BLE module for wireless control
|
||||
## Usage
|
||||
|
||||
Wiring Guide
|
||||
- **Serial Commands:**
|
||||
- Send flight commands via the serial monitor.
|
||||
- No commands = autonomous hover.
|
||||
- **Customization:**
|
||||
- Adjust PID constants in the code for optimal flight performance.
|
||||
- Integrate WiFi or Bluetooth for wireless control.
|
||||
|
||||
MPU6050:
|
||||
---
|
||||
|
||||
SCL → GPIO39
|
||||
## Safety Warning
|
||||
|
||||
SDA → GPIO40
|
||||
|
||||
ESCs:
|
||||
|
||||
ESC1 → GPIO4
|
||||
|
||||
ESC2 → GPIO5
|
||||
|
||||
ESC3 → GPIO6
|
||||
|
||||
ESC4 → GPIO7
|
||||
|
||||
Software Requirements
|
||||
|
||||
Arduino IDE (with ESP32 board support)
|
||||
|
||||
Libraries:
|
||||
|
||||
Adafruit_MPU6050
|
||||
|
||||
ESP32Servo
|
||||
|
||||
Wire
|
||||
|
||||
Getting Started
|
||||
|
||||
Clone the Repository:
|
||||
|
||||
bash
|
||||
git clone https://github.com/yourusername/esp32s3-drone-stabilization.git
|
||||
|
||||
Open the project in Arduino IDE.
|
||||
|
||||
Install the required libraries.
|
||||
|
||||
Connect your hardware as described above.
|
||||
|
||||
Upload the firmware to your ESP32-S3.
|
||||
|
||||
Calibrate the IMU and test with props removed for safety.
|
||||
|
||||
Usage
|
||||
|
||||
Serial Commands:
|
||||
|
||||
Send flight commands via the serial monitor.
|
||||
|
||||
No commands = autonomous hover.
|
||||
|
||||
Customization:
|
||||
|
||||
Adjust PID constants in the code for optimal flight performance.
|
||||
|
||||
Integrate WiFi or Bluetooth for wireless control.
|
||||
|
||||
Safety Warning
|
||||
|
||||
Always test with props removed and use a safety switch!
|
||||
**Always test with props removed and use a safety switch!**
|
||||
PID tuning and calibration are essential for stable flight.
|
||||
Contributing
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
Pull requests and feedback are welcome! Please open an issue or submit a PR for any improvements or bug fixes.
|
||||
License
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
MIT License
|
||||
|
||||
---
|
||||
|
||||
Happy flying! 🚁
|
Loading…
x
Reference in New Issue
Block a user