Progetto 4 Semaforo
1. Descrizione
Il modulo semaforo è un dispositivo utilizzato per controllare il percorso di pedoni e veicoli. Include una luce rossa, una gialla e una verde, che indicano istruzioni diverse.
Rosso per Stop: Pedoni e veicoli devono fermarsi.
Giallo per Attenzione: Pedoni e veicoli devono prepararsi a fermarsi. Se la marcia è già in corso, la velocità deve essere ridotta.
Verde per Procedere: Pedoni e veicoli possono continuare rispettando il codice della strada.
In questo progetto, puoi usare Arduino per scrivere codice che controlli i semafori. Ad esempio, impostare la durata di ogni luce e l’intervallo di tempo tra di esse. Inoltre, puoi aggiungere un timer per modificare i colori delle luci secondo una programmazione.
2. Schema di Collegamento

3. Codice di Test
/*
keyestudio ESP32 Inventor Learning Kit
Project 4 Traffic Light
http://www.keyestudio.com
*/
int greenPin = 27; //Green LED connects to IO27
int yellowPin = 26; //Yellow LED connects to IO26
int redPin = 25; //Red LED connects to IO25
void setup()
{
//Set all LED interfaces to output mode
pinMode(greenPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(redPin, OUTPUT);
}
void loop()
{
digitalWrite(greenPin, HIGH); //Light green LED up
delay(5000); //Delay 5s
digitalWrite(greenPin, LOW); //Turn green LED off
for (int i = 1; i <= 3; i++) //Execute for 3 times
{
digitalWrite(yellowPin, HIGH); //Light yellow LED up
delay(500); //Delay 0.5s
digitalWrite(yellowPin, LOW); // Turn yellow LED off
delay(500); //Delay 0.5s
}
digitalWrite(redPin, HIGH); //Light red LED up
delay(5000); //Delay 5s
digitalWrite(redPin, LOW); //Turn red LED off
}
4. Risultato del Test
Dopo aver caricato il codice, il LED verde si accenderà per 5 secondi, il LED giallo lampeggerà 3 volte e il LED rosso si accenderà per 5 secondi, in ciclo continuo.