Tahograf analogic
Autor
Introducere
În cadrul acestui proiect voi realiza implementarea unui tahograf analogic care înregistrează activitatea conducătorilor auto ale masinilor de mare tonaj. Odată introdusa distanta parcursa, vor fi calculate atat timpul de desfasurare al cursei curente, cat si timpul ramas pana la incheierea programului si sosirea urmatoarei pauze. În acest mod, vor fi foarte bine contorizate informații importante.
Descriere generală
Schema bloc
Funcționalitate
Înainte cu 5 minute de încheierea programului, atunci când șoferul este obligat să efectueze o pauză a cărei durată poate varia, acesta va fi avertizat prin intermediul unui semnal sonor.
De asemenea, tahograful va fi capabil să calculeze timpul ramas pana la urmatoarea pauza.
La final, pe ecranul tahografului vor fi afisate informatii importante, precum data curenta, distanta parcursa in cadrul cursei curente si timpul ramas pana la urmatoarea pauza.
Astfel, șoferul nu va mai fi nevoit să își țină evidența singur și se va concentra mai mult pe îndeplinirea atribuțiilor mai importante, cum ar fi ca marfa să ajungă intactă la destinație.
Hardware Design
1. Listă de componente
Arduino Uno
Ecran LCD
Buzzer
Real Time Clock
Fire de legătură
Breadboard
2. Tabel de prețuri
Piesă | Cantitate | Preț |
Kit Arduino Uno R3 | 1 buc. | 100.00 RON |
Modul RTC DS1302 | 1 buc. | 13.00 RON |
Modul Buzzer activ | 1 buc. | 6.50 RON |
Ecran LCD 2004 CU I2C | 1 buc. | 40.25 RON |
Total | | 159.75 RON |
3. Schema electrică
Software Design
Mediul de dezvoltare
→ Draw.io: schema bloc
→ Tinkercad: schema electrica
→ Arduino IDE: cod
Biblioteci
→ LiquidCrystal_I2C.h: folosita pentru ecranul LCD
→ virtuabotixRTC.h: folosita pentru RTC
Functii utilizate
Detalii implementare
In setup am realizat initializarea modulelor, iar implementarea de baza se afla in functia loop.
Am calculat timpul in functie de distanta pe care am introdus-o de la tastatura si de o viteza medie.
Am calculat timpul in secunde pentru a-mi fi mai usor sa determin timpul ramas pana la urmatoarea pauza.
Am folosit functia delay() pentru a afisa datele fara a deranja din punct de vedere vizual.
Rezultate Obţinute
Concluzii
Realizarea proiectului a fost interesanta, cu atat mai mult cu cat am reusit sa duc la bun sfarsit ceva cu totul nou pentru mine, obtinand un rezultat satisfacator.
Mi-am imbunatatit cunostintele de programare necesare materiei de PM, in special pe cele hardware, realizand asamblarea completa a unui dispozitiv functional.
Download
Jurnal
25 Aprilie:
alegerea temei proiectului
10 Mai:
achiziționare piese
30 Mai:
schema electrica
3 iunie:
finalizare pagina, upload cod + poze
Bibliografie/Resurse