final project

This commit is contained in:
2025-05-12 16:51:27 +02:00
parent a2111224b3
commit ce91a4b418
15 changed files with 60 additions and 3 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@@ -0,0 +1,9 @@
# System integration
For system Integration is this my system design.
![alt text](Screenshot_20250512_095023.jpg)
So I will have 2 power systems in my drone. High voltage and low voltage. High voltage 16,8V will be for the motors while the 5v will be for the MCU's and the LED matrixes.
I found out from the page from the ESC's that they output 5v at 3 amps each. Which is in total $$5V \cdot 3A \cdot 4ESC = 60Watts$$
In one of my projects earlier I have ran 2 LED matrixes from a 60 watt power supply and it could easily power them. The mcu's don't consume a lot of power so the power situation should be good.

View File

@@ -244,7 +244,7 @@ There's one specific function I need to change.
} }
``` ```
What this function does is generate PWM values in software which is super inefficient. The esp32C6 according to it's datasheet supports 6 seperate PWM clocks in hardware. What this function does is generate PWM values in software which is super inefficient. The esp32C6 according to it's datasheet supports 6 seperate PWM clocks in hardware.
![alt text](image-2pc-4.jpg) ![alt text](image-pc-4.jpg)
So I wanna use these to reduce the overhead and so the loop doesn't have to run 20 times a second but faster making the drone respond faster. To use these I need to use this library. So I wanna use these to reduce the overhead and so the loop doesn't have to run 20 times a second but faster making the drone respond faster. To use these I need to use this library.
Right link: [https://docs.espressif.com/projects/arduino-esp32/en/latest/api/ledc.html](https://docs.espressif.com/projects/arduino-esp32/en/latest/api/ledc.html) Right link: [https://docs.espressif.com/projects/arduino-esp32/en/latest/api/ledc.html](https://docs.espressif.com/projects/arduino-esp32/en/latest/api/ledc.html)
@@ -255,8 +255,8 @@ So I really needed 2 functions of the library.
* To set pwm channel, pin and resolution (ledcAttach) * To set pwm channel, pin and resolution (ledcAttach)
* To set the PWM frequency (ledcWrite) * To set the PWM frequency (ledcWrite)
![alt text](image-2pc-5.jpg) ![alt text](image-pc-5.jpg)
![alt text](image-2pc-6.jpg) ![alt text](image-pc-6.jpg)
## Generative design ## Generative design
Online I saw a lot of organic designs that where created by generative design. Online I saw a lot of organic designs that where created by generative design.
@@ -359,6 +359,54 @@ Another thing that also could be the issue is that my ESC was surging above 40 A
I think the main reason was heat and the coating on the motors evaporating causing a chain reaction. I think the main reason was heat and the coating on the motors evaporating causing a chain reaction.
## Cables
The drone needs lots of cables to get power to the places where they need to be. I first started out by laying out everything that needed to be connected.
![alt text](image-31.jpg)
I first wanted to solder all the joints together but then I remembered how it looked in the past and then decided on using clips.
![alt text](image-32.jpg)
![alt text](image-33.jpg)
After cutting cables and soldering for a while I made this cable harness.
![alt text](image-34.jpg)
I still need to make a new board for both MCU's. The flight controller and the matrix controller.
## New board!
### Layout
So my new board needs to handle 60 watts of power and a lot of wiring. So I am first going to make a rough sketch of where I want every connector.
![alt text](image-35.jpg)
I first came up with this. But then I realized how complicated this wiring on a one side board is going to be. So I split it up in 2 boards and then I will stack them on top of each other with standoff screws.
![alt text](image-36.jpg)
### Schematic
I made both boards in the same file.
![alt text](image-39.jpg)
The upper board is the flight controller and the bottom board the matrix controller. I made them in the same file so I could easily copy over the edge cuts so I could stack the boards above each other.
#### Flight controller
* 4 outputs for ESC's
* One communication pin to other Matrix controller with power and ground
* Input BNO085
#### Matrix controller
* Communication from flight controller
* 2 output LED Matrixes
#### PCB
![alt text](image-40.jpg)
![alt text](image-41.jpg)
## Matrix subsystem
### Power
![alt text](image-37.jpg)
![alt text](image-38.jpg)
## TODO ## TODO
* [ ] Matrix panel subsystem * [ ] Matrix panel subsystem
* [x] Rewrite PWM esc control system in driver * [x] Rewrite PWM esc control system in driver

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB