Porta AND con Arduino
Questa risorsa è stata scritta dagli studenti dell'Istituto ITIS "Enrico Mattei" di Urbino, della classe 3B/EN nell'a.s. 2021/2022, all'interno del corso di Sistemi automatici per le superiori 1.
Per favore, prima di apportare modifiche, attendi sino alla fine dell'anno scolastico (termina il 30 giugno 2022) oppure contatta il docente di riferimento Giacomo Alessandroni nel caso venissero rilevati contenuti non in linea con le linee guida della comunità. Se leggi questo avviso ad anno scolastico concluso puoi rimuoverlo. |
Questa lezione descrive come realizza un emulatore porta AND a tre ingressi con Arduino, il cui fine è accendere un led solo se i 3 interruttori sono accesi.
Sensori e attuatori
modificaLed: Un LED è un particolare tipo di diodo a giunzione p-n formato da sottili strati di materiale semiconduttore e in grado di emettere luce quando attraversato da corrente.
Interruttore: l'interruttore è un'apparecchiatura elettrica di comando che serve a stabilire o interrompere la continuità elettrica e metallica in un circuito elettrico.
Schema di montaggio
modificaCodice
modificaint Pulsante1=5; //pin del Pulsante
int Pulsante2=4;
int Pulsante3=3;
int Led=2; //pin del Led
void setup()
{
pinMode(Pulsante1, INPUT); //impostazione pin input
pinMode(Pulsante2, INPUT);
pinMode(Pulsante3, INPUT);
pinMode(Led, OUTPUT); //impostazione pin output
}
void loop() {
if(digitalRead(Pulsante1) == HIGH) { //se tutti gli interruttori sono accesi
if(digitalRead(Pulsante2) == HIGH) {
if(digitalRead(Pulsante3) == HIGH) {
digitalWrite(Led, HIGH); //il led si accende
}
}
}
if(digitalRead(Pulsante1) == LOW) { //se anche un solo interruttore è spento
digitalWrite(Led, LOW); //il led si spegne
}
if(digitalRead(Pulsante2) == LOW) {
digitalWrite(Led, LOW);
}
if(digitalRead(Pulsante3) == LOW) {
digitalWrite(Led, LOW);
}
}
Espansioni suggerite
modificaA questo progetto si possono applicare altri led che verranno accesi dalla porta AND, oppure aggiungere altri interruttori per aumentare i punti di accensione.