Utente:DaviBosco04/Arduino

Da Wikiversità, l'apprendimento libero.

Semaforo ad un Incrocio[modifica]

Il progetto che segue è un incrocio regolato da due semafori

Descrizione del progetto[modifica]

I 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[modifica]

Attaccare 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]

Diodo Led


Resistore


Componenti Numero Valore Colore
Resistenza 6 220Ω
Diodi led 6 2rosso, 2 giallo, 2verde


Codice[modifica]

const 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[modifica]

Questo progetto è semplice ma può essere migliorato magari con un pulsante per la chiamata per i pedoni e con esso un semaforo per i pedoni.