You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: website/versioned_docs/version-acs_cc/project/2026/vlad.raris/index.md
+62-16Lines changed: 62 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,15 +11,15 @@ Un sistem mecatronic destinat aruncării mingilor de ping-pong către un coș de
11
11
12
12
## Descriere
13
13
14
-
Acest proiect implementează un lansator automat pentru basket în miniatură. Sistemul folosește o catapultă pentru mingi de ping-pong, montată pe o bază rotativă. Lansatorul detectează panoul coșului cu ajutorul unui senzor de distanță VL53L0X, se orientează pe axa orizontală și apoi declanșează mecanismul de aruncare.
14
+
Acest proiect implementează un lansator automat pentru basket în miniatură. Sistemul folosește o catapultă pentru mingi de ping-pong, montată pe o bază rotativă. Lansatorul detectează panoul coșului cu ajutorul unui senzor ultrasonic HC-SR04, se orientează pe axa orizontală și apoi declanșează mecanismul de aruncare.
15
15
16
16
Controlul este realizat cu o placă NUCLEO-U545RE-Q, iar codul proiectului este scris în Rust. Coșul este construit separat și are un panou gri în spate, folosit ca suprafață de detecție pentru senzor. Pentru a simplifica problema de poziționare, lansatorul este deplasat pe un cerc în jurul coșului, iar sistemul trebuie să determine unghiul potrivit de orientare către panou.
17
17
18
18
## Motivație
19
19
20
20
Alegerea acestui proiect a fost determinată de dorința de a combina controlul mecanic, măsurarea distanței și programarea embedded în Rust într-un sistem vizibil și ușor de testat.
21
21
22
-
***Control embedded:** Proiectul folosește semnale PWM pentru servomotoare și I2C pentru senzorul de distanță.
22
+
***Control embedded:** Proiectul folosește semnale PWM pentru servomotoare și semnale GPIO pentru senzorul de distanță.
23
23
***Rust în sisteme embedded:** Implementarea urmărește folosirea Rust pentru controlul sigur și predictibil al perifericelor.
24
24
***Integrare hardware-software:** Sistemul combină partea mecanică a catapultei cu detecția panoului și controlul mișcării.
25
25
***Prototipare practică:** Coșul, panoul și mecanismul de lansare permit testarea rapidă a comportamentului real al sistemului.
Senzorul VL53L0X este conectat la placa NUCLEO-U545RE-Q prin I2C. Servo-ul MG995 rotește baza lansatorului, iar servo-ul SG90 acționează mecanismul de declanșare al catapultei. Butonul este folosit pentru comandă, iar LED-ul RGB oferă feedback vizual pentru stările sistemului.
56
+
Senzorul HC-SR04 este conectat la placa NUCLEO-U545RE-Q prin doi pini GPIO: unul pentru impulsul de declanșare (`TRIG`) și unul pentru citirea impulsului de răspuns (`ECHO`). Servo-ul MG995 rotește baza lansatorului, iar servo-ul SG90 acționează mecanismul de declanșare al catapultei. Butonul este folosit pentru comandă, iar LED-ul RGB oferă feedback vizual pentru stările sistemului.
57
57
58
58
Servomotoarele sunt alimentate separat, folosind sursa de laborator în timpul testelor și modulul XL4005 pentru o alimentare stabilizată la 5-6V. Masa sursei pentru servomotoare este comună cu masa plăcii Nucleo, însă tensiunea `+5V_SERVO` nu este conectată la pinul de 5V al plăcii.
59
59
60
60
### Schema Electrică
61
61
62
-
Schema electrică a fost realizată în EasyEDA și arată conexiunile dintre placa NUCLEO-U545RE-Q, senzorul VL53L0X, servomotoare, buton, LED RGB și alimentarea externă a servourilor.
62
+
Schema electrică a fost realizată în EasyEDA și arată conexiunile dintre placa NUCLEO-U545RE-Q, senzorul de distanță, servomotoare, buton, LED RGB și alimentarea externă a servourilor. Varianta curentă folosește HC-SR04 pentru detecție, conectat prin `TRIG` și `ECHO`.
Servomotoarele sunt alimentate dintr-o sursă externă de 5V. Masa sursei externe este comună cu masa plăcii Nucleo, dar alimentarea de 5V a servourilor nu este conectată la pinul de 5V al plăcii.
82
+
83
+
## Galerie și demonstrații
84
+
85
+
### Fotografii
86
+
87
+

88
+
89
+

90
+
91
+

92
+
93
+

94
+
95
+
### Video-uri Demonstrative
96
+
97
+
*["Servo 180° - for fun"](https://drive.google.com/file/d/13tZFudmJhNiFWu0m0lhWfMDMGThURpQ5/view?usp=drivesdk)
@@ -71,7 +107,7 @@ Am realizat documentația inițială a proiectului și am stabilit ideea general
71
107
72
108
### Săptămâna 2
73
109
74
-
Am simplificat arhitectura sistemului. În loc să pun electronică pe coș, am decis ca senzorul să fie montat pe lansator, iar coșul să rămână o țintă pasivă. Lansatorul este deplasat pe un cerc în jurul coșului, iar sistemul trebuie să determine unghiul potrivit de orientare către panou. Pentru detecție am ales senzorul VL53L0X, care măsoară distanța până la panoul gri din spatele coșului.
110
+
Am simplificat arhitectura sistemului. În loc să pun electronică pe coș, am decis ca senzorul să fie montat pe lansator, iar coșul să rămână o țintă pasivă. Lansatorul este deplasat pe un cerc în jurul coșului, iar sistemul trebuie să determine unghiul potrivit de orientare către panou. Pentru detecție am ales inițial senzorul VL53L0X, care măsoară distanța până la panoul gri din spatele coșului.
75
111
76
112
### Săptămâna 3
77
113
@@ -85,12 +121,21 @@ Am construit coșul fizic, format din bază, suport vertical, panou gri și inel
85
121
86
122
Am realizat schema electrică în EasyEDA și am asamblat partea hardware principală a proiectului. Schema include placa NUCLEO-U545RE-Q, senzorul VL53L0X, servomotoarele MG995 și SG90, butonul, LED-ul RGB, condensatorul de filtrare și alimentarea externă pentru servouri. Am documentat explicit faptul că `+5V_SERVO` este alimentare externă și nu trebuie conectată la pinul de 5V sau 3V3 al plăcii Nucleo, iar masa este comună între alimentarea servourilor și placa de dezvoltare.
87
123
124
+
### Săptămâna 6
125
+
126
+
Am trecut de la senzorul VL53L0X la senzorul ultrasonic HC-SR04, deoarece în teste senzorul ToF nu oferea citiri stabile pentru panoul coșului. Am actualizat firmware-ul în Rust pentru citirea distanței prin `TRIG` și `ECHO`, am adăugat loguri RTT pentru fiecare citire și am integrat scanarea bazei cu servomotorul MG995. În această etapă am testat și mecanismul de declanșare cu SG90, alimentarea externă pentru servouri și primele aruncări ale catapultei.
127
+
128
+
### Săptămâna 7
129
+
130
+
Am asamblat varianta curentă a prototipului: catapulta printată 3D este montată pe baza rotativă, senzorul HC-SR04 este montat frontal pe lansator, iar coșul cu panou gri este folosit ca țintă. Am realizat fotografii și video-uri cu montajul, testele de servo și demonstrațiile de lansare, pe care le-am adăugat în documentație.
131
+
88
132
## Hardware
89
133
90
134
Sistemul utilizează următoarele componente hardware principale:
91
135
92
136
***NUCLEO-U545RE-Q:** Placa de dezvoltare folosită pentru controlul sistemului.
93
-
***VL53L0X:** Senzor ToF folosit pentru măsurarea distanței până la panoul coșului.
137
+
***HC-SR04:** Senzor ultrasonic folosit în varianta curentă pentru măsurarea distanței până la panoul coșului.
138
+
***VL53L0X:** Senzor ToF testat inițial pentru detecția panoului.
94
139
***Servo MG995:** Servomotor pentru rotirea bazei lansatorului.
95
140
***Servo SG90:** Servomotor pentru mecanismul de declanșare.
96
141
***XL4005 Step-Down:** Modul coborâtor de tensiune pentru alimentarea servomotoarelor.
@@ -101,7 +146,7 @@ Sistemul utilizează următoarele componente hardware principale:
| Catapultă printată 3D | Mecanism de aruncare |în lucru|
167
+
| Catapultă printată 3D | Mecanism de aruncare |realizată|
122
168
| Coș și panou | Țintă pentru lansator | realizat |
123
169
|**Total cumpărat estimativ**|**-**|**~97 RON**|
124
170
125
171
## Software
126
172
127
173
### Prezentare Generală
128
174
129
-
Implementarea software folosește Rust pe placa NUCLEO-U545RE-Q. Aplicația controlează servomotoarele prin PWM, citește senzorul VL53L0X prin I2C și gestionează stările sistemului în funcție de buton și de distanțele măsurate.
175
+
Implementarea software folosește Rust pe placa NUCLEO-U545RE-Q. Aplicația controlează servomotoarele prin PWM, citește senzorul HC-SR04 prin semnale GPIO `TRIG`/`ECHO` și gestionează stările sistemului în funcție de buton și de distanțele măsurate.
0 commit comments