From 86dd009bddb601816b25a534dc1116410ff940ee Mon Sep 17 00:00:00 2001 From: agherghiceanu Date: Tue, 28 Apr 2026 00:39:36 +0300 Subject: [PATCH 1/3] Added Quadraped Robot Documentation Signed-off-by: agherghiceanu --- .../project/2026/agherghiceanu/index.md | 131 ++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md diff --git a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md new file mode 100644 index 00000000000..e62f0552551 --- /dev/null +++ b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md @@ -0,0 +1,131 @@ +# Quadraped Robot +A bluetooth-controlled spider robot that can move around via 8 servos. + +:::info + +**Author**: Alexandru-Bogdan Gherghiceanu \ +**GitHub Project Link**: https://github.com/UPB-PMRust-Students/acs-project-2026-alexgherghiceanu + +::: + + + +## Description + +This project is a bluetooth controlled spider robot that you can sync up to your phone/tablet. From your device you can control it's speed,direction of travel and issue it extra gestures and commands, such as a wave. + +## Motivation + +From a young age, I have been interested in robots and the process of building them. Futhermore, I have been following the +progress of boston dynamics projects for a long time, so I knew that I wanted to build a quadraped robot myself. When I recently +watched the movie Project Hail Mary, I decided that a spider is the best shape for my project to take. + +## Architecture +```mermaid +flowchart TD + subgraph ext ["External Inputs"] + U["Android/iOS Device"] + BT_Mod["HM-10 Bluetooth Module"] + end + + subgraph stm ["STM32 Microcontroller (Rust Code)"] + BTH["Bluetooth Handler Module"] + MP["Motion Planner Module"] + KE["Kinematics Engine (IK) Module"] + I2C["I2C Controller Module"] + end + + subgraph periph ["Logic Peripherals"] + ServoD["PCA9685 Servo Driver Module"] + Motors["Servomotors (x8)"] + end + + U -- "Bluetooth (BLE) Commands" --> BT_Mod + BT_Mod -- "Serial Data (UART)" --> BTH + BTH -- "Parsed Command (e.g., 'F', 'L', 'W')" --> MP + MP -- "Pose/Leg Positions (X,Y,Z)" --> KE + KE -- "Servo Angles" --> I2C + I2C -- "I2C Commands" --> ServoD + ServoD -- "PWM Signals" --> Motors +``` +## Log + + +### Week 16 - 22 March + +Decided on the project idea + + +### Week 13 - 19 April + +Ordered the necessary hardware components. + +### Week 20 - 26 April + +All hardware components arrived. + +## Week 27 April - 3 May + +Started writing the documentation and modifying the source chasis to fit my components. + +### Week 5 - 11 May + +### Week 12 - 18 May + +### Week 19 - 25 May + +## Hardware + +The main brain of the project is the STM32 Nucleo-U545RE-Q microcontroller provided by the PM team. This takes the input from the HM-10 Bluetooth module and processes it into a signal the i2c controller can then give to the PCA9685 Servo Driver. From there, the signal is passed on to the 8 servomotors that power our robot spider, 2 in each leg. The system is powered by a 1000mAh 7.4v LiPo 2 cell batery and will be built on a modified version of the chasis of the Sesame spider-robot linked in the link section. + +### Schematics + +Place your KiCAD or similar schematics here in SVG format. + +### Bill of Materials + + + +| Device | Usage | Price | +|--------|--------|-------| +| [STM32 Nucleo-U545RE-Q](https://www.st.com/en/evaluation-tools/nucleo-u545re-q.html) | The microcontroller | [~120 RON]() | +| [Servomotor MG90S, angrenaje Aluminiu](https://sigmanortec.ro/servomotor-mg90s-angrenaje-aluminiu) | The servomotors, we will use 8 | [19,34 RON]() | +| [Modul PCA9685, interfata I2C, 16 CH, servo motor](https://sigmanortec.ro/Modul-PCA9685-interfata-I2C-16-CH-servo-motor-p126016016) | Used to interface the microcontroller and the servomotors | [27.27 RON]() | +| [Modul coborator tensiune XL4015, 8-36VDC, 5A, 75W](https://sigmanortec.ro/Modul-coborator-tensiune-XL4015-8-36VDC-5A-75W-p158483017) | Used to interface the microcontroller and the servomotors | [9,96 RON]() | +| [Intrerupator KCD-1, SPST, On/Off, 23mm](https://sigmanortec.ro/Modul-coborator-tensiune-XL4015-8-36VDC-5A-75W-p158483017) | Used to turn the robot on or off | [1,85 RON]() | +| [4.0 Bluetooth Module (3.3 V and 5 V Compatible)](https://www.optimusdigital.ro/en/wireless-bluetooth/862-modul-bluetooth-40-cu-adaptor-compatibil-33v-si-5v.html?search_query=4.0+Bluetooth+Module+%283.3+V+and+5+V+Compatible%29&results=21) | Used to connect from the phone to the robot | [29,99 RON]() | +| [Electrolytic Capacitor 1000 uF, 50 V](https://www.optimusdigital.ro/en/capacitors/3006-electrolytic-condensator-from-1000-uf-to-50-v.html?search_query=0104210000027129&results=1) | Used to store excess voltage | [1,49 RON]() | +| [0.25 W 1K Ω Resistor](https://www.optimusdigital.ro/en/resistors/848-025w-22k-resistor.html?search_query=0.25+W+1K+%CE%A9+Resistor&results=32) | Used to provide resistance in the circuit | [0,10 RON]() | +| [Undervoltage Battery Alarm Module](https://www.optimusdigital.ro/en/others/2237-alarma-scadere-tensiune-acumulatori.html?search_query=Undervoltage+Battery+Alarm+Module&results=1) | Used to signal when the battery is low | [7,99 RON]() | +| [Incarcator B3 20W 1.6A pentru Acumulatori 2S si 3S cu Echilibrare Celule](https://www.emag.ro/incarcator-b3-20w-1-6a-pentru-acumulatori-2s-si-3s-cu-echilibrare-celule-b3-20w-1600-2s3s/pd/DGCKNZ3BM/?ref=history-shopping_484971926_47538_1) | Used to charge the batery | [29,90 RON]() | +| [Baterie Gens Ace G-Tech Soaring 1000mAh 7.4V 30C 2S1P XT60](https://www.emag.ro/baterie-gens-ace-g-tech-soaring-1000mah-7-4v-30c-2s1p-xt60-kxg0060208/pd/D5RNQWMBM/?ref=history-shopping_484971926_36153_1) | Used to power the robot | [58,20 RON]() | +| [Set conectori electrici Amass XT60, 1 mama si 1 tata si 2 carcase](https://www.emag.ro/set-conectori-electrici-amass-xt60-1-mama-si-1-tata-si-2-carcase-amxt60/pd/DN37BB3BM/?ref=history-shopping_484971926_3410_1) | Used to connect the battery | [8,82 RON]() | +| [10 x Fire Dupont mama-mama 20cm](https://www.emag.ro/10-x-fire-dupont-mama-mama-20cm-ai307-s465/pd/D1J66JBBM/?ref=history-shopping_484971926_38837_1) | Used to connect different parts of the project | [2,67 RON]() | +| [40 x Fire Dupont mama-tata 20cm](https://www.emag.ro/40-x-fire-dupont-mama-tata-20cm-zcbozh-fdp-fm-40x20/pd/DRQD522BM/?ref=history-shopping_484971926_156063_1) | Used to connect different parts of the project | [19,72 RON]() | + + + + + +## Software + +| Library | Description | Usage | +|---------|-------------|-------| +| [st7789](https://github.com/almindor/st7789) | Display driver for ST7789 | Used for the display for the Pico Explorer Base | + +## Links + + + +1. [Laboratoarele PM](https://embedded-rust-101.wyliodrin.com/docs/acs_cc/category/lab) +2. [Proiectul de inspiratie](https://www.doriantodd.com/sesame) +3. [Repository-ul Proiectului Sesame](https://github.com/dorianborian/sesame-robot/tree/main) +... From 2b262e124749463e7e53a7508bb85bae013b7987 Mon Sep 17 00:00:00 2001 From: agherghiceanu Date: Tue, 12 May 2026 21:01:01 +0300 Subject: [PATCH 2/3] added schematics Signed-off-by: agherghiceanu --- .../2026/agherghiceanu/images/schematics.webp | Bin 0 -> 147306 bytes .../project/2026/agherghiceanu/index.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/images/schematics.webp diff --git a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/images/schematics.webp b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/images/schematics.webp new file mode 100644 index 0000000000000000000000000000000000000000..75ebad365451be2db81da3cb7ce4e7311dad607a GIT binary patch literal 147306 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

xM2 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 a;7Q;~;7Q;~;7Q;~;7Q;~;7Q=W7WiN82-jc$ literal 0 HcmV?d00001 diff --git a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md index e62f0552551..6abe1ba05ba 100644 --- a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md +++ b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md @@ -80,7 +80,7 @@ The main brain of the project is the STM32 Nucleo-U545RE-Q microcontroller provi ### Schematics -Place your KiCAD or similar schematics here in SVG format. +![Diagram](images/schematics.webp) ### Bill of Materials From a8d3dd6dd808c48430d03042539d09c5232a6a93 Mon Sep 17 00:00:00 2001 From: agherghiceanu Date: Wed, 20 May 2026 22:39:27 +0300 Subject: [PATCH 3/3] Completed the software table Signed-off-by: agherghiceanu --- .../project/2026/agherghiceanu/index.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md index 6abe1ba05ba..f6d69ef27af 100644 --- a/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md +++ b/website/versioned_docs/version-acs_cc/project/2026/agherghiceanu/index.md @@ -70,10 +70,16 @@ Started writing the documentation and modifying the source chasis to fit my comp ### Week 5 - 11 May +Finalized source chasis and printed the first version in order to start test-fitting components. + ### Week 12 - 18 May +Tested all individual components, finalized the second version of the chasis and started writing the software required to run the robot. + ### Week 19 - 25 May +Completed and uploaded the main portion of the software, with only minor addition left if time allows. Also performed first complete assembly to confirm everything fits correctly. + ## Hardware The main brain of the project is the STM32 Nucleo-U545RE-Q microcontroller provided by the PM team. This takes the input from the HM-10 Bluetooth module and processes it into a signal the i2c controller can then give to the PCA9685 Servo Driver. From there, the signal is passed on to the 8 servomotors that power our robot spider, 2 in each leg. The system is powered by a 1000mAh 7.4v LiPo 2 cell batery and will be built on a modified version of the chasis of the Sesame spider-robot linked in the link section. @@ -114,12 +120,16 @@ The format is - ## Software -| Library | Description | Usage | +| Library / Tool | Description | Usage | |---------|-------------|-------| -| [st7789](https://github.com/almindor/st7789) | Display driver for ST7789 | Used for the display for the Pico Explorer Base | +| [embassy-stm32](https://github.com/embassy-rs/embassy) | STM32 Hardware Abstraction Layer | Used to control the Nucleo board's pins, allowing the microcontroller to talk to the PCA9685 driver via I2C and to the HM-10 Bluetooth module via UART. | +| [embassy-executor](https://github.com/embassy-rs/embassy) | Async executor for embedded devices | Used to run the main loop of the robot, processing incoming Bluetooth commands and updating motor angles smoothly. | +| [embassy-time](https://github.com/embassy-rs/embassy) | Timekeeping and delay library | Used to create the necessary delays between the robot's animation frames so it walks correctly, and to handle Bluetooth read timeouts. | +| [defmt](https://github.com/knurling-rs/defmt) & [defmt-rtt](https://github.com/knurling-rs/defmt) | Logging framework and transport | Used to print debugging info and state changes directly to my laptop's terminal to track what the brain is doing. | +| [panic-probe](https://github.com/knurling-rs/probe-rs) | Panic handler | Used to catch program crashes and print the error backtrace to the terminal, making debugging much easier. | +| [probe-rs](https://probe.rs/) | Debugging and flashing tool | Used to seamlessly compile, flash, and run the Rust code onto the STM32 board using the simple `cargo run` command. | ## Links