Sei sulla pagina 1di 11

UDA SEMAFORO

PROGETTO ‘ESSENZA DI ARDUINO’


COMANDI PRINCIPALI E COSA SIGNIFICANO
• int: visto che l’origine del programma è inglese, int si traduce come intero dalla parola integer. Questo ci permette di impostare il tipo di formato
della nostra variabile perché ad esempio possiamo assegnare anche un formato come float.
• delay: la cui funzione è chiara quanto il nome inglese che significa ritardo. Permette al led o altri componenti di ritardare l’accensione o lo
spegnimento ma il suo unico problema è quello che blocca il programma, cioè non fa eseguire altre istruzioni a meno che il delay non sia terminato.
• digitalWrite: Questo comando che significa scrittura digitale, ci permette di impostare lo stato del nostro componente che poi attraverso gli if ci
permette di utilizzare dei pulsanti per l’accensione o spegnimento del led.
• pinMode: tradotto anche come impostazione del pin. Ci permette di impostare quale pin della scheda Arduino usare.
• digitalRead : significa lettura digitale e ci permette di leggere lo stato del nostro componente se è accesso o no. Questo
ci torna molto utile con i pulanti.
• If: si traduce in italiano come funzione se e ci permette di eseguire un’istruzione solo a condizione di qualcosa.

• void loop: che tradotto s’intende ripetizione e in questa parte forniamo alla scheda tutte le informazioni relative all'esecuzione del programma, e
tutti i comandi ad esso relativi. La particolarità del void loop è che i comandi vengono ripetuti sempre in ordine, e quando il codice termina, il void
loop riparte da capo.

• void setup: diamo alla scheda tutte le informazioni necessarie prima dell'esecuzione di un programma, per esempio impostiamo alcune porte della
scheda come INPUT oppure OUTPUT.

• While: significa mentre è questa funzione rappresenta un ciclo di tipo precondizionale in cui la condizione è eseguita prima delle istruzIoni.
• Funzioni: è un modulo di programma autonomo predisposto per svolgere compiti specifici. Esistono funzioni senza passaggio di parametri.

FLAVIO G.
FUNZIONI
Le funzioni sono moduli predisposti per svolgere compiti specifici Il linguaggio C mette a disposizione diverse
e possono essere chiamati dal programma principale . Esistono librerie in cui sono presenti delle funzioni come
due tipi di funzioni : sqrt (). Per usufruire di queste il programmatore le
- Senza passaggio parametri indicati con il void e non c’è un deve semplicemente conoscere.
valore di return.
- Con il passaggio di dati in cui il programma chiamante passa
dei dati in ingresso detti parametri o argomenti di input.
Grazie ad esse il nostro programma viene scomposto e i
vantaggi di cui possiamo usufruire sono:
- la leggibilità: ogni funzione ha un nome che richiama i suoi
compiti e s’individuano facilmente le parti funzionali.
- sviluppo: si posso utilizzare funzioni fatte esternamente.
- manutenzione: si possono aggiornare i moduli che richiedono
una revisioni e si possono correggere i bug.
- efficienza: la funzione può essere chiamata più volte.

CAPPELLO GIUSEPPE
COME E’ FORMATA SCHEDA ARDUINO ?
PIN DIGITALI :
INGRESSO USB PER VENGONO LETTI 2
IL CARICO DEI DADI. STAI HIGH E LOW
LA TENSIONE CHE (ACCESSO E
ARDUINO RIDUCE E SPENTO)
DI 5V E
L’AMPERAGGIO PULSANTE DI RESET
MASSIMO E 40 mA
PIN PER
INGRESSO PER L’ENEGIA:GRO
BATTERIA A 9V UND (GND) E PIN ANALOGICI:IL
5V VALORE LETTO E
UNO CHE VIENE
MEMORIZZATO. SI
USA
PRINCIPALMENTE
MASSIMINO L. PER I SENSORI
COSTRUZIONE DEL NOSTRO CIRCUITO
Per la costruzione del nostro semaforo abbiamo utilizzato
8 led, 8 resistenze (220 ohm),2 pulsanti e diversi cavi. Gli
8 led sono stati messi in parallelo è sono stati
programmati in modo tale essere impostati come un
semaforo.
Mentre i pulsanti li abbiamo messi per funzionare uno da
sensore notturno e quindi lampeggiano e il secondo serve
ai pedoni per attraversare la strada in sicurezza. Quindi
il nostro circuito è temporizzato, i collegamenti che
abbiamo usato per i pulsanti è tipo pull up.

ANDREA G.
CHE COS’E’ UN COLLEGAMENTO PULL UP?
Un collegamento pull up viene utilizzato nei pulsanti per stabilire uno
stato logico fisso che in questo caso vale 1, quindi HIGH. Il
collegamento che riguarda questo pulsante è di mettere la gnd
(GROUND) in un piedino e nell’altro un filo collegato al pin che
abbiamo programmato per il pulsante, in questo caso la resistenza di
pull up l’abbiamo attivata all’interno del pulsante con il comando
digitalWrite altrimenti si poteva fare con un collegamento esterno.
La resistenza viene utilizzata per evitare errori logici tra i cambiamenti
di stato.
Questo collegamento è l’opposto del pull down.

CAPPELLO G.
CHE COS’E’ UN COLLEGAMENTO PULL DOWN?

Un collegamento pull down, al contrario del pull up, assumerà il


valore 0 , quello iniziale, quindi LOW. Il collegamento che
riguarda questo pulsante è di mettere la gnd (GROUND) in un
piedino insieme ad un filo collegato al pin che abbiamo
programmato per il pulsante è in un altro colleghiamo la 5V.
Ma cosa accade in particolare?
Quando il pulsante è aperto lo stato è 0 altrimenti 1 perché
quanto il pulsante è aperto l’unico collegamento ‘ chiuso’ che
avrà è quello con la gnd.

FLAVIO G.
REALIZZAZIONE DELLA STRUTTURA ESTERNA E
MATERILI USATI
Per la costruzione della struttura esterna abbiamo
utlizzato:
• ASSI DI LEGNO
• COLLA A CALDO
• DIVERSI COMPONENTI DI ARDUINO E COMPONENTI
ELETTRONICI CLASSICI
(LED,INTERRUTTORE,CAVI,BATTERIA)
• PLEXIGLASS
• STAFFE E CHIODI
Il nome del nostro progetto deriva dal fatto che sono
presenti diversi componenti appartenenti ad Arduino e
quindi formano come una sorta di cuore artificiale.

ANDREA G.
DIFFERENZA TRA MILLIS E DELAY?

Il delay in confronto al millis () e una funzione che


blocca il programma e non lo fa andare mentre
millis () è’ una funzione di Arduino che restituisce
il numero di millisecondi trascorsi dall’istante in
cui si fornisce l’alimentazione alla scheda.
In questo caso milllis è utile se vogliamo mettere
dei pulsanti e dobbiamo cambiare lo stato dei
led mentre si alternano, come ad esempio giallo
a rosso.

MASSIMINO L.
FUNZIONAMENTO PROGRAMMA
Il funzionamento del programma si divide in due parti la prima parte riguarda l’impostazione
dei vari led e pulsanti come devono essere (OUTPUT E INPUT) e poi l’altra parte riguarda
l’impostazione del pin, cioè quale pulsante o led dobbiamo collegare a quel pin, con
l’assegnazione del tipo di formato, che sono int e long La seconda parte riguarda il loop ch’è la
ripetizione quello che a noi è interessato.

Il funzionamento del programma si basa principalmente sulla funzione millis, di cui abbiamo
parlato, e sulle funzioni. Il programma inizialmente nel loop chiama altre funzioni che indicano i
vari stati, i cambiamenti tra uno stato e l’altro sono determinati dall’ istruzione millis che legge in
tempo reale i diversi secondi.

Nelle funzioni sono stati collegati degl’if che leggono il cambiamento di stato del ‘ sensore’ e
fanno attivare un’altra funzione che alla fine fa ricominciare il programma. Per millis il formato
deve essere di tipo long perché deve includere molti numeri e non è adatto il formatto int perché
include meno numeri.

Nel formato long il numero di byte è 4 quindi equivale a circa 4.900.000.000, cioè 50 giorni.
Allo scadere di questo tempo la scheda viene riavviata.

CAPPELLO G.
FOTO DEL LAVORO FINITO

Potrebbero piacerti anche