Skip to content

Commit 1881f55

Browse files
authored
Project/pascu.eric (#1317)
* Add initial project documentation for Gimbal Stabilizer * Remove outdated diagram and replace with new architecture SVG in project 2026 * Update architecture diagram and fix image path in Eric Pascu's project documentation - Changed the image path for the architecture diagram in index.md to a relative path. - Added new SVG file for the architecture diagram in the images directory. * Fixed username issue * Add architecture diagram SVG for STM32 Nucleo project * fix: correct spelling of 'architecture' in index.md * Added Kicad schematic * Modified files for schematic * Changed schematic format to fit in the 300 kb limit * Resolution issues of course * Modified schematic to look cleaner, added renders and link to components * Resized to fit resolution * Remove reference to deleted components.zip file from project documentation
1 parent 75d8fb5 commit 1881f55

4 files changed

Lines changed: 23 additions & 2 deletions

File tree

10.2 KB
Loading
7.05 KB
Loading
45.9 KB
Loading

website/versioned_docs/version-acs_cc/project/2026/eric.pascu/index.md

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,24 @@ As a photography and videography enthusiast, I have always been fascinated by ho
3131

3232
Initial upload with the description, motivation, BOM and architecture scheme.
3333

34+
### Week 4 - 10 April
35+
36+
Added the KiCad schematic with the pinout for the STM32.
37+
38+
### Week 18 - 24 April
39+
40+
Uploaded the renders of the gimbal, as well as the link with the STL files for the case.
41+
42+
3443
## Hardware
3544

3645
The gimbal uses an STM32 Nucleo as the main microcontroller, running both the sensor fusion and PID control firmware as well as the FOC algorithms for the motors. Three brushless gimbal motors (one per axis) are driven by three individual FOC driver boards. An MPU-6050 module provides 6-DoF inertial measurements for sensor fusion. A joystick provides manual operator input for orientation control. Power is supplied by a 3S LiPo battery, with a buck converter regulating the logic-level voltages.
3746

47+
The case for the gimbal and the platform are both inspired by [this website](https://howtomechatronics.com/projects/diy-arduino-gimbal-self-stabilizing-platform/).
48+
3849
### Schematics
3950

40-
![Diagram](./images/schematic.webp)
51+
![Diagram](./images/schem.webp)
4152

4253
### Bill of Materials
4354

@@ -61,12 +72,22 @@ The format is
6172
| 3S LiPo battery (x1) | Main power source (~11.1 V) | [90 RON](https://www.aliexpress.com/item/1005007883555706.html?spm=a2g0o.order_list.order_list_main.20.21ef1802e31OeE) |
6273
| Buck converter (x1) | Steps down battery voltage to 5 V / 3.3 V for logic | [14 RON](https://www.aliexpress.com/item/1005009823447391.html?spm=a2g0o.order_list.order_list_main.10.21ef1802e31OeE) |
6374

75+
## Renders
76+
77+
![Diagram](./images/Render.webp)
78+
![Diagram](./images/Exploded_Render.webp)
6479

6580
## Software
6681

6782
| Library | Description | Usage |
6883
|---------|-------------|-------|
69-
| [embassy-stm32](https://github.com/embassy-rs/embassy/tree/main/embassy-stm32) | Embassy HAL for STM32 | GPIO, I2C, ADC, PWM timers on the Nucleo |
84+
| [embassy-stm32](https://github.com/embassy-rs/embassy/tree/main/embassy-stm32) | Embassy HAL for STM32 | Manages low-level hardware abstractions including I2C telemetry, ADC analog pins, GPIO states, and complementary high-speed PWM timers on the Nucleo. |
85+
| [embassy-executor](https://github.com/embassy-rs/embassy/tree/main/embassy-executor) | Async runtime executor for Embassy | Handles the main task allocation and spawning architecture (`Spawner`) for asynchronous resource execution. |
86+
| [embassy-time](https://github.com/embassy-rs/embassy/tree/main/embassy-time) | Modern time keeping and delay tracking library | Provides the deterministic async `Timer` abstraction to enforce the strict 10ms execution loop. |
87+
| [defmt](https://github.com/knurling-rs/defmt) | Efficient, deferred logging framework for embedded systems | Provides macro definitions (`info!`, `debug!`) to serialize telemetry strings without wasting MCU cycle performance. |
88+
| [defmt-rtt](https://github.com/knurling-rs/defmt) | SEGGER Real-Time Transfer (RTT) logging target | Directs the serialized logging packets through the physical debug probe link to your computer's terminal. |
89+
| [panic-probe](https://github.com/knurling-rs/panic-probe) | Embedded panic handler tailored for hardware debugging | Catches standard execution panics and forces them directly out through the RTT channel alongside accurate stack trace prints. |
90+
| [micromath](https://github.com/tarkah/micromath) | Lightweight, fast `no_std` math library | Empowers the firmware with advanced floating-point trigonometry functions (`atan2`, `sqrt`) required for complementary sensor fusion. |
7091

7192
## Links
7293

0 commit comments

Comments
 (0)