ESERCIZI PER ARDUINO CORSO ITS ESERCIZIO 1 ESERCIZIO 2

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.