ESERCIZI PER ARDUINO CORSO ITS Sia dato un sensore di posizione collegato all'ingresso analogico 1. Il pin 2 e il pin 8 siano collegati a pulsanti Il pin 3 è collegato a un led verde Il pin 5 è collegato a un led blu Il pin 6 è collegato a un led rosso Il pin 10 è collegato a un motore dc L'ingresso analogico 0 è collegato a un LDR L'ingresso analogico 0 è collegato a un potenziometro (sens. di posizione) ESERCIZIO 1 Se il sensore di posizione dà un esito compreso tra 500 e 700 (500<x<700) accendere il led verde a luce piena, se invece è compreso tra 700 e 1023 (700 ≤ x<1023), accendere il led a metà potenza; altrimenti, spengere il LED. ESERCIZIO 2 Se il sensore di posizione restituisce un dato >800, accendere il led verde e spengere tutti gli altri. Se il sensore di posizione restituisce un dato >800 e il pulsante è premuto, spengere il led verde e accendere quello blu. Se il sensore di posizione restituisce un dato <=800, accendere solo il led rosso. ESERCIZIO 3 Se il sensore LDR restituisce un dato >800, impedire l'accensione dei led. Se il sensore di posizione restituisce un dato <800 e il pulsante A è premuto e subito rilasciato, consentire l'accensione simultanea per soli 5 secondi di tutti i led. ESERCIZIO 4 Legare l'intensità della luce emessa dal led verde alla posizione del cursore del potenziometro (spento se potenziometro = 0, max emissione se potenziometro = 1023). ESERCIZIO 5 Legare la velocità del motore dc alla posizione del cursore del potenziometro (fermo se potenziometro = 0, max velocità se potenziometro = 1023). ESERCIZIO 6 se il sensore potenziometrico e restituisce un dato >800 e il pulsante è premuto e subito rilasciato, portare per 2 volte il servomotore da posizione angolare 0° a 90° e da 90° a 0°. ESERCIZIO 7 Legare la velocità con cui il servomotore si sposta da 0 a 180° alla posizione del cursore del potenziometro (un grado ogni 500 ms se potenziometro = 0, un grado ogni 10 ms se potenziometro = 1023). Per consentire al motore di posizionarsi da 0 a 180° e ritornare a 0°, premere il pulsante A. ESERCIZIO 8 Premendo istantaneamente il pulsante 8, si generi attraverso una function una melodia. Premendo in modo prolungato (800 ms) lo stesso pulsante, se ne generi un'altra. Complicazione Premendo il pulsante 2 si attivi un interrupt e si stoppi ogni musica, disabilitando il pulsante 8. Ripremendo il pulsante 2 a distanza di almeno 2 s, si riabiliti la possibilità di suonare attraverso la pressione del pulsante 8. ESERCIZI IN PREPARAZIONE AL COMPITO L'allievo definisca liberamente (e dichiari con commenti iniziali) pin I/O digitali e analogici a disposizione sulla tavoletta didattica per adattarli al caso pratico proposto. Se necessario ricorrere alla libreria Timer ESERCIZIO C1 Qualora il livello di un serbatoio raggiunga il limite max, ruotare una paratia di 90° rispetto alla posizione di riposo (0°). La paratia rimanga aperta per 10 s. Nel corso di questo tempo, con periodo di un secondo, lampeggi una segnalazione rossa. Una luce verde segnali comunque la condizione di livello normale. Si usi la libreria Timer. ESERCIZIO C2 Premendo un pulsante, con un ritardo di 3 s, si ecciti permanentemente un relé; trascorsi altri 5 s, si accenda una spia rossa per 4 s. Premendo un altro pulsante, si disecciti tutto in qualsiasi istante. ESERCIZIO C3 Un sensore di livello di un serbatoio ha fondo scala 10 m. Qualora il livello salga in misura maggiore di 0.1 m/s, azionare una pompa alla metà della velocità, segnalando l'allarme con una luce rossa. In condizioni di normale funzionamento, si accenda una luce verde. La pressione di un pulsante spenga la pompa, riportando l'impianto nella condizione di cessato allarme. Non si usi la libreria Timer. ESERCIZIO C4 Un impianto automatico assistito da Arduino ha il compito di confezionare scatole contenenti flaconi di medicinali. Si faccia riferimento alla seguente tabella per l'assegnazione dei pin: FUNZIONE PIN MOTORE AVANZAMENTO NASTRO TRASPORTATORE 10 Cellula fotoelettrica conteggio bottiglie 12 LED avvenuto riempimento 5 LED peso pancale 6 PULSANTE DI EMERGENZA 2 SERVOMOTORE 9 SIRENA EMERGENZA SENSORE PESO PANCALE 11 ANALOGICO 1 Il nastro si muove trasportando flaconi di medicinali. Una fotocellula segnala il passaggio dei flaconi e consente il conteggio. Quando sono passati 10 flaconi, 1. il nastro si ferma 2. si accende il LED di avvenuto riempimento 3) Il servomotore fa ruotare la scatola coi flaconi di 90° 4) si riazzera il contatore Quando il servomotore ha raggiunto la posizione di consegna, torna a 0° e si spenge il led di avvenuto riempimento. Un sensore misura il peso del pancale ove si accumulano i flaconi; quando il peso supera i 70 kg, si accende il led di peso pancale. Azionando il pulsante di emergenza, si fermano i motori, si accende la spia di emergenza e si attiva una sirena con un suono alla frequenza di 1000 Hz.
© Copyright 2025 ExpyDoc