2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
In acest tutorial impariamo come create un semaforo stradale e come controlarlo used the board Drivemall. Vedremo come realizzare semafori for auto e per pedoni with button of prenotazione.
Tutto questo sarà valido sia se utiliziamo l'Arduino e sia folosind Drivemall Board.
a urmat linkul pentru realizarea Drivermall.
Il vantaggio di preferire il Drivemall alla classica scheda Arduino è quello di ridurre la complessità delle connessioni portando ad un setup più ordinato. Cu toate acestea, acest lucru este opțional: toate rezultatele sunt încă valide cu placa arduino, o breadboard și destul de jumper dupont pentru colegii.
Pasul 1: Di Cosa Abbiamo Bisogno
- Baord Drivemall- 4 led rossi - 4 led verdi - 4 led gialli - 8 transistor npn - 16 resistori 220 ohm - 8 resistori 22k ohm - 1 resistenza 1k ohm - cavo - 1 pulsante
Pasul 2: Connessioni
Per andare a comandare il nostro semaforo utiliziamo due transistor PNP collegati secondo lo schema in figura 2. Il functionamento del transistor PNP è molto semplice when the base è collegata a GND viene abilitata il passaggio di corrente tra l’emettitore e il collettore.
Quindi se entrambe le BASI sono a VDD si accende il led rosso o per essere più chiar chiar il Led 21 17 14 6.
Se alimentează BASE del secondo transistor si accenderanno i Led 3 15 18 19.
Per ultimo se colleghiamo entrambe le BASI a GND si accenderanno i Led 20 16 13 10.
Il collegamento del bottone è invece il classico resistenza collegata a GND su un pin del bottone e l'altro a VDD
i Pin dell'arduino utilizati sono quelli da 1 a 10.
Pasul 3: Firmware
Per poter gestire la chiamata del bottone per i pedoni fără ritardo in real time si è utilizata the function millis () care restituisce il tempo in millisecondi dall’accensione del device apoi per poterla use
exemplu
curent lung nesemnat Millis = millis ();.
if (currentMillis - anteriorMillis> 2000 și bt03 == adevărat și bbot == fals)
{
Serial.println (1);
T1 ();
previousMillis = curentMillis;
bt1 = adevărat;
bt03 = fals;
}
Carichiamo ad ogni loop il tempo current e se il current meno il precedente è maggiore del tempo scelto entra nell'if per modifica lo stato del semaforo andando ad activare la variabile booleana pentru transiția succesivă, naturalmente prima variabilă booleana è già vera prima dell 'entrata del loop.
Pasul 4: Renunțare
Questo tutorial è stato prodotto nell'ambito del project Makerspace for Inclusion, cofinanziato dal Programma Erasmus + della Commissione Europea.
Il proiect mira a promuovere o formă de educație informală come mezzo per favorire incluziunea socială a giovani, educația informațională vine și poate folosi în interiorul makerspace.
Questo tutorial riflette solo le opinioni degli autori e la Commissione Europea nu può fi ritenuta responsabil pentru orice utilizare care poate fi fatto delle informazioni in esso contentute.