Utente:DaviBosco04/Arduino
Semaforo ad un Incrocio
modificaIl progetto che segue è un incrocio regolato da due semafori
Descrizione del progetto
modificaI due semafori si accendono insieme uno con il rosso e l'altro con il verde. il semaforo 2 diventa giallo e poi rosso e nello stesso momento il semaforo 1 diventa verde e cosi continua in loop come un semaforo stradale.
Schema elettrico
modificaAttaccare con dei cavetti i pin ai morsetti della resistenza che va poi collegata all'anodo del led e ripetere questo per ogni diodo led.
Dal catodo di ogni led si deve far partire un cavetto che si deve collegare al ground dell'Arduino.
Schema di montaggio
modifica
Componenti | Numero | Valore | Colore |
---|---|---|---|
Resistenza | 6 | 220Ω | |
Diodi led | 6 | 2rosso, 2 giallo, 2verde |
Codice
modificaconst int led_red_01 = 2;
const int led_yel_01 = 3;
const int led_gre_01 = 4;
const int led_red_02 = 5;
const int led_yel_02 = 6;
const int led_gre_02 = 7;
void setup() {
pinMode(led_red_01, OUTPUT);
pinMode(led_yel_01, OUTPUT);
pinMode(led_gre_01, OUTPUT);
pinMode(led_red_02, OUTPUT);
pinMode(led_yel_02, OUTPUT);
pinMode(led_gre_02, OUTPUT);
}
void loop() {
digitalWrite(led_gre_01, HIGH);// il led1 verde si accende
digitalWrite(led_gre_02, LOW);// il led2 verde rimane spento
digitalWrite(led_red_01, LOW);//il led1 rosso rimane spento
digitalWrite(led_red_02, HIGH);//il led2 rosso si accende
delay(3000);
digitalWrite(led_gre_01, LOW);//il led1 verde si spegne
digitalWrite(led_yel_01, HIGH);//il led1 giallo si accende
delay(1000);
digitalWrite(led_yel_01, LOW);//il led1 giallo si spegne
digitalWrite(led_red_01, HIGH);//il led1 rosso si accende
digitalWrite(led_red_02, LOW);// il led2 rosso si spegne
digitalWrite(led_gre_02, HIGH);//ilo led2 verde si accende
delay(2000);
digitalWrite(led_gre_02, LOW);// il led2 verde si spegne
digitalWrite(led_yel_02, HIGH);//il led2 giallo si accende
delay(1500);
digitalWrite(led_yel_02, LOW);// il led2 giallo si spegne
digitalWrite(led_red_02, HIGH);//il led2 rosso si accende
delay(500);
digitalWrite(led_red_01, LOW);// il led1 rosso si spegne
digitalWrite(led_gre_01, HIGH);// il de1 verde si accende
delay(3000);
}
Conclusioni
modificaQuesto progetto è semplice ma può essere migliorato magari con un pulsante per la chiamata per i pedoni e con esso un semaforo per i pedoni.