Skip to content

Commit 6448c37

Browse files
authored
Project/daria.niculescu (#1355)
* docs * am adaugat diagrama * fixed image * added demo and completed the logs * modified photos type * hopefully fixed all images * added schemtics and everything is DONE * fixed last image * remove invalid schematics files
1 parent ef0fa91 commit 6448c37

8 files changed

Lines changed: 72 additions & 19 deletions

File tree

22.2 KB
Loading
37.2 KB
Loading
24.6 KB
Loading
57.6 KB
Loading
52 KB
Loading
28 KB
Loading
27.7 KB
Loading

website/versioned_docs/version-acs_cc/project/2026/daria.niculescu/index.md

Lines changed: 72 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,25 @@ The project is divided into a few main parts that work together.
3333

3434
![Diagram](./images/diagrama.svg)
3535

36+
## Gallery
37+
**Step 1**
38+
![Photo](./images/step1.webp)
39+
40+
**Step 2**
41+
![Photo](./images/step2.webp)
42+
43+
**Step 3**
44+
![Photo](./images/step4.webp)
45+
46+
**Step 4**
47+
![Photo](./images/step5.webp)
48+
49+
**Step 5**
50+
![Photo](./images/step6.webp)
51+
52+
## Video Demonstration
53+
[Watch the project demo here](https://drive.google.com/drive/folders/1OKeiW1OGHsNHTvHbE8E_I3Dv4BRAlutm?usp=drive_link)
54+
3655
## Log
3756

3857
### Week 20 - 24 April
@@ -41,31 +60,65 @@ Ordered the hardware components.
4160
### Week 27 - 30 April
4261
Picked up the hardware components and started the documentation process.
4362

63+
### Week 4 - 10 May
64+
Created the constellation design. Cut up the model for the sky and made the holes for the stars.
65+
Also connected the NEMA Motor to the driver.
66+
67+
### Week 11 - 17 May
68+
Started working on the electric circuit and sticking the 92 LEDs into the right position.
69+
Grouped the LEDs into 2 groups controlled by four pins. As I was makeing them, I was testing them
70+
one by one. On Sunday night, I short-circuited the microcontroller.
71+
72+
### Week 18 - 24 May
73+
Got a new microcontroller, then I started redoing the circuit and better isolating the wires.
74+
On Tuesday, it worked!! Added the OLED screen, the motor and started the software part, which was the easiest.
75+
76+
### Week 25 - 27 May
77+
Completed the documentation.
4478

4579
## Hardware
46-
**Fastening**: Structural screws were eliminated in favor of Kapton tape for securing modules onto the aluminum arm, ensuring a lightweight and non-conductive mounting solution.
80+
**Fastening**: Structural screws were eliminated in favor of hot gun glue for securing modules onto the aluminum arm, ensuring a lightweight and non-conductive mounting solution.
4781

48-
**Constellations**: The star map is implemented via a manually perforated cardstock panel, with rear-mounted LEDs aligned to the apertures to create a precise point-source light effect.
82+
**Constellations**: The star map is implemented via a manually perforated wood panel, with rear-mounted LEDs aligned to the apertures to create a precise point-source light effect.
4983

5084
### Bill of Materials
5185

52-
| Device| Usage |
53-
| :---- | :---- |
54-
| **STM32 Blue Pill** | Central Processing Unit |
55-
| **Motor NEMA 17** | Stepper motor for the orbital motion of the arm |
56-
| **Driver A4988** | Current and step control for the motor |
57-
| **OLED 0.96" I2C** | Real-time telemetry display and menu |
58-
| **Encoder Rotativ** | User input device (speed, navigation) |
59-
| **Inel 12 LED RGB** | Visual representation of the Sun (light center) |
60-
| **Sursă 12V 20A** | Main power supply for the entire system |
61-
| **LM2596 Step-Down** | Efficient 12V to 5V conversion for logic |
62-
| **Cuplaj 5x8mm** | Mechanical motor-shaft connection |
63-
| **Banda Kapton** | Insulating mechanical fastening |
64-
| **Adaptor DC Jack** | Simple power interface |
65-
| **LED-uri 5mm** | Point-source lighting for the constellation map |
86+
| Device| Usage | Price |
87+
| :---- | :---- | :---- |
88+
| **STM32 Blue Pill** | Central Processing Unit | free |
89+
| **Motor NEMA 17** | Stepper motor for the orbital motion of the arm | ~70 lei |
90+
| **Driver A4988** | Current and step control for the motor | ~ 8 lei |
91+
| **OLED 0.96" I2C** | Real-time telemetry display and menu | ~ 18 lei |
92+
| **Encoder Rotativ** | User input device (speed, navigation) | ~ 4 lei |
93+
| **Plastic Sun** | Visual representation of the Sun| ~ 15 lei |
94+
| **Sursă 12V 20A** | Main power supply for the entire system | ~ 65 lei |
95+
| **Cuplaj 5x8mm** | Mechanical motor-shaft connection | ~ 10 lei |
96+
| **Glue gun** | Insulating mechanical fastening | borrowed |
97+
| **LED-uri 5mm & 3mm** | Point-source lighting for the constellation map | ~27 lei |
98+
99+
100+
### Schematics
101+
![Scheme](./images/schematics.webp)
102+
103+
### Electric Circuit for one pin
104+
105+
![Scheme](./images/schema.webp)
66106

67107
## Software
68-
TBD
69108

70-
## Links
71-
TBD
109+
My program runs on an STM32 microcontroller using the Embassy async framework and spawns three
110+
concurrent tasks: a stepper motor driver that continuously pulses a STEP pin with precise
111+
microsecond timing, a LED sequencer that cycles through four constellation/season LED groups
112+
on a 2-second base timer, and a main loop that drives a 128×64 SSD1306 OLED display over I2C,
113+
rendering a simple calendar that cycles through the 12 Romanian month abbreviations every 2 seconds.
114+
115+
| Library | Description | Usage |
116+
| :---- | :---- | :---- |
117+
| [embassy-stm32](https://docs.embassy.dev/embassy-stm32) | Async framework for embedded Rust | Peripheral drivers, I2C, GPIO |
118+
| [embassy-executor](https://docs.embassy.dev/embassy-executor) | Async task executor for embedded | Running 3 parallel async tasks |
119+
| [embassy-time](https://docs.embassy.dev/embassy-time) | Time management in Embassy | Async timers and delays |
120+
| [ssd1306](https://crates.io/crates/ssd1306) | OLED display driver | Real-time data display via I2C |
121+
| [embedded-graphics](https://crates.io/crates/embedded-graphics) | 2D graphics library for embedded | Text rendering on OLED |
122+
| [defmt](https://crates.io/crates/defmt) | Lightweight logging framework | Debug output over RTT |
123+
| [panic-probe](https://crates.io/crates/panic-probe) | Panic handler for embedded | Debugging and error reporting |
124+

0 commit comments

Comments
 (0)