



Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Come controllare una soglia analogica utilizzando una scheda arduino uno. Include i requisiti hardware, lo schema del circuito e il codice necessario per acquisire un ingresso analogico e confrontarlo con una soglia, emettendo un allarme visivo o acustico. L'esempio pratico è ideale per studenti e appassionati di elettronica che desiderano imparare a utilizzare arduino per applicazioni di controllo e monitoraggio. Istruzioni dettagliate e spiegazioni chiare, rendendolo un'ottima risorsa per l'apprendimento pratico.
Tipologia: Dispense
1 / 5
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




Questo esempio mostra il procedimento di acquisizione di un ingresso analogico ed il controllo del segnale rispetto ad una soglia con emissione di un allarme.
REQUISITI HARDWARE
Scheda Arduino Uno Breadboard 2 LED 2 Resistenze da 220 ohm Potenziometro rotativo Cavo USB
Oltre allo schema del precedente esercizio di ingresso analogico ed uscita analogica PWM si aggiunge un ulteriore LED collegato al PIN 13 della morsettiera DIGITAL. Montare sulla breadboard il secondo LED e la resistenza. Il catodo del LED (polo negativo = piedino più corto) va direttamente collegato ad un lato della resistenza. L'anodo del LED (polo positivo = piedino più lungo) va collegato attraverso un filo di protipizzazione al pin 13 della morsettiera DIGITAL di Arduino. L'atro lato della resistenza va collegato al pin GND attraverso il collegamento della pre-esistente resistenza R2.
Lo schema elettrico del circuito è il seguente:
Collegare la scheda Arduino Uno al computer mediante i cavo USB ed avviare l'ambiente di sviluppo Arduino. In uno Sketch vuoto inserire il seguente programma:
/*
int analogValue; int brightness;
void setup(){ pinMode(9, OUTPUT); //uscita PWM pinMode(13, OUTPUT); //LED di allarme }
void loop(){ analogValue=analogRead(A0); brightness=analogValue/4; analogWrite(9, brightness); //controlla se il segnale supera la soglia if (brightness>128) { digitalWrite(8,HIGH); //soglia superata: accende LED di allarme } else { digitalWrite(8,LOW); //soglia non superata: spegne LED di allarme } }
FUNZIONE SETUP
Il pin 9 viene impostato come uscita per consentire l'emissione di un segnale PWM che piloti l'intensità di accensione di un LED. Il pin 13 viene impostato come uscita per consentire l'emissione del segnale digitale di allarme.
Si può aggiungere un allarme acustico collegando uno speaker piezoelettrico ad un pin di uscita PWM. Poiché l'uscita PWM per default emette un'onda quadra con frequenza di circa 490 Herz se questo segnale, con un duty cycle del 50%, viene inviato ad un altoparlante produce un tono acustico udibile. Se invece si invia un duty cycle di 0% l'altoparlante viene silenziato. Si collega lo speaker piezo tra il pin 10 (PWM) della morsettiera DIGITAL ed il pin GROUND attraverso il pre-esitente collegamento della resistenza R3.
Lo schema di montaggio della breadboard diventa:
con il seguente schema elettrico:
Nella funzione di setup si deve aggiungere l'impostazione dell'uscita PWM sul pin 10 per l'allarme audio:
... pinMode(10, OUTPUT); //uscita allarme acustico ...
Nella funzione loop si deve aggiungere l'attivazione dell'uscita audio PWM di allarme con duty cycle del 50%:
... if (brightness>128) { digitalWrite(8,HIGH); //soglia superata: accende LED di allarme analogWrite(10,128); //attiva cicalino } else { digitalWrite(8,LOW); //soglia non superata: spegne LED di allarme analogWrite(10,0); //spegni cicalino } ...