This shows you the differences between two versions of the page.
pm:prj2025:abirlica:andrei.badoiu2303 [2025/05/06 12:28] andrei.badoiu2303 |
pm:prj2025:abirlica:andrei.badoiu2303 [2025/05/30 05:00] (current) andrei.badoiu2303 [Bibliografie/Resurse] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Car Safety System ====== | ====== Car Safety System ====== | ||
- | ===== Introducere ===== | + | <note> |
- | + | **Nume**: Badoiu Andrei-Dragos\\ | |
- | <note tip> | + | **Grupa**: 335CA |
+ | </note> | ||
+ | ===== Introduction ===== | ||
The project intends to implement the general safety systems found in modern cars. | The project intends to implement the general safety systems found in modern cars. | ||
These functions include, but are not limited to: | These functions include, but are not limited to: | ||
Line 8: | Line 10: | ||
* emergency braking | * emergency braking | ||
* throttle by wire, simulated using bluetooth control | * throttle by wire, simulated using bluetooth control | ||
+ | <note tip> | ||
+ | For a better understanding of the possibilities these features allow, check out [[https://www.skoda-storyboard.com/en/press-kits/new-skoda-enyaq-press-kit-2/safety-new-parking-features-and-advanced-assistance-systems/|this rundown]] and [[https://cdn.skoda-storyboard.com/2025/03/New_Skoda_Enyaq_and_Skoda_Enyaq_Coupe_Assistance_systems_9373b3d7.jpg|infographic]] by Skoda. | ||
</note> | </note> | ||
- | ===== Descriere generală ===== | + | ===== General Description ===== |
- | <note tip> | + | The device starts automatically in stand-by mode after connecting to a power source. Control can be achieved through low energy bluetooth using a companion mobile app or a serial usb connection. As such, aside from engine start and stop option, the user can adjust engine speed, activate emergency braking sensors and configure braking tolerances for early or late intervention. |
- | O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează. | + | |
- | Exemplu de schemă bloc: http://www.robs-projects.com/mp3proj/newplayer.html | + | {{ :pm:prj2025:abirlica:andrei.badoiu_css_diagram.drawio.png?300 |}} |
- | </note> | + | |
===== Hardware Design ===== | ===== Hardware Design ===== | ||
- | |||
- | <note tip> | ||
Hardware used: | Hardware used: | ||
* AtMega328p based development board | * AtMega328p based development board | ||
Line 25: | Line 25: | ||
* HC-SR04 ultrasonic proximity sensor | * HC-SR04 ultrasonic proximity sensor | ||
* JS-50B bldc motor | * JS-50B bldc motor | ||
+ | * bjt darlington pair as motor-driver | ||
- | * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri, e.g. http://www.captain.at/electronic-atmega16-mmc-schematic.png) | + | {{ :pm:prj2025:abirlica:andrei.badoiu_schematic.png?300 |}} |
- | * diagrame de semnal | + | |
- | * rezultatele simulării | + | |
- | </note> | + | |
===== Software Design ===== | ===== Software Design ===== | ||
+ | **Development Environment**: Arduino IDE | ||
- | <note tip> | + | **External Sources**: SoftwareSerial.h library |
- | Descrierea codului aplicaţiei (firmware): | + | |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | |
- | * (etapa 3) surse şi funcţii implementate | + | |
- | </note> | + | |
- | ===== Rezultate Obţinute ===== | + | **Implementation**: |
+ | * Device initializes a Serial connection through software with the bluetooth module and loops indefinitely awaiting for commands | ||
+ | * Received commands are processed and errors are filtered by a command handler | ||
+ | * Proximity sensors loop distances and send a flag to stop the engine in the case of emergency braking | ||
- | <note tip> | + | **Functions**: |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | * setup() - called on startup, initializes modules |
- | </note> | + | * loop() - loop runs function calls and commands for instant response |
+ | * update_motor() - checks oob errors for pwm and sets pwm output | ||
+ | * check_prox() - checks values for proximity sensors | ||
+ | * exec() - command handler | ||
+ | * check_crash() - checks datasets of proximity sensors for an accurate crash estimate | ||
+ | |||
+ | ===== Conclusions ===== | ||
- | ===== Concluzii ===== | + | Car starts, runs and stops efficiently. Fail-safe functions for wireless connections should be implemented for better connectivity. Noisy or reflective environments may produce false-positives for the proximity sensors and as such, a less than adequate experience. A |
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | {{:pm:prj2025:abirlica:andrei.badoiu_carsafetysystems.zip|}} |
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | + | |
- | + | ||
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | + | |
- | </note> | + | |
- | + | ||
- | ===== Jurnal ===== | + | |
- | + | ||
- | <note tip> | + | |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
- | </note> | + | |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
- | |||
- | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | ||
- | </note> | ||
- | |||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||