Display numerico con i LED

Documenti analoghi
Relazione progetto Arduino

Relazione attività di laboratorio - Arduino

Far lampeggiare un led o forse un semaforo?

FONDAMENTI DI ARDUINO

PRIMI PASSI CON ARDUINO

Controllo di una soglia analogica

Relazione finale del progetto Arduino - NIMT

L abc di Arduino. Rocco Pelosi, Gianluca Palù, Davide Lodi Rizzini 24 febbraio 2016

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca

SEA Descrizione. Centralina Controllo Strip LED RGB

Circuito logico AND / AND Gate

Facciamo lampeggiare un led

ACCENDERE E SPEGNERE UN DIODO LED

Corso di programmazione Arduino DI MALVEZZI DAVIDE

La Keyes 4 relay non è proprio una shield nel senso classico definito nel mondo arduino in quanto una shield dovrebbe essere concepita per essere

SVOLGIMENTO SECONDA PROVA 2017 SISTEMI AUTOMATICI: PARTE 1

Corso Arduino Maggio Riccardo Binetti Lezione 1 - Blinking LEDs with style

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

ARDUINO. Colleghiamolo al PC/MAC - FUNZIONA?

Domotica con Arduino. Prima di proseguire con la descrizione del progetto, elenco, di seguito, il materiale utilizzato:

Arduino Tutorial #7 - Nunchuk materiale utilizzato Arduino, cavi elettrici, breadboard, nunchuk, 3 led.

SENSORI OTTICI - FOTORESISTENZE

Tipologie dei dati nell SDK di Arduino come in un vero LP ad alto livello :

8^ parte: Pilotare Motori passo-passo unipolari usando l integrato ULN2003A. Author: Ing. Sebastiano Giannitto (ITIS M.

Arduino - Tutorial #2 - Iniziamo a programmare

Per controllare un motore DC (funzionante in corrente continua) con Arduino, devi utilizzare il circuito integrato Ponte H (nel mio caso un L293NE

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca

In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

8^ parte : Come pilotare i motori passo-passo unipolari. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Arduino: Programmazione

Relazione progetto Arduino

E labirinto cronaca di un fallimento

CONTASECONDI CON DISPLAY A 7 SEGMENTI ARDUINO LIKE

Arduino Uno INTRODUZIONE CONOSCENZE NECESSARIE

12 - timer da cucina display a 4 cifre

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Lezione 3 PWM e motori. Stefano Panichi e Giulio Fieramosca

Art C C C C MINIBARRIERA RADIO AD INFRAROSSO, SERIE C

CORSO ARDUINO. Jacopo Beli Giulio Fieramosca Luca Mati GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii 1

Corso Base Arduino ed Elettronica

Bravo io. tester per la verifica di alternatori e motorini di avviamento

5^ parte : Controllare un LED RGB con 3 potenziometri. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Realizzate il circuito come indicato nello schema seguente:

TESTER PER CAVI Modello: KT-200 MANUALE D USO

Salvare i dati rilevati dai sensori di Arduino

D sistema d allarme con sensori magnetici

Manuale di Riferimento

Macchina con Arduino Uno comandata tramite dispositivo Android e sensore ultrasuoni per fermarsi istantaneamente di fronte ad un ostacolo

Configurazione di Visualino 01. Collegate la scheda Arduino alla porta USB del computer

Per vedere tutti i tutorial:

Topward electronics TPS ALTERA Max EPM7128SLC84-15

Università degli Studi di Cagliari

Cablaggio ponte H con integrato L293B

Corso Base Arduino ed Elettronica

INSEGUITORE SOLARE CON ARDUINO. Dispositivo che insegue il movimento solare realizzato con: 1. Arduino 2. 2 foto resistenze 3.

DIP SWITCH 1-4 LED 2 LED 1. SW1 pulsante di programmazione SEQUENZA DI PROGRAMMAZIONE MODALITÀ FUNZIONAMENTO SCHEDA

Digital Voltmeter and Ammeter. Parsic Italia. Strumenti digitali low cost per applicazioni generali

Circuiti antirimbalzo

Quindi dopo aver collegato tutto avremo qualcosa di simile:

6^ parte : Acquisizione della temperatura con LM35. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

emota Apparecchio di rilevazione Dotazione Amministrazione Istruzioni d uso Montaggio/Smontaggio Messa in funzione e manutenzione Analisi

Tesina di Maturità. Gianfriddo Giuseppe Classe: 5^B I.T.I.S Indirizzo: Elettronica ed elettrotecnica Anno: 2014/15. Autore: Gianfriddo Giuseppe

CTU Presenta. Contest Automation con Arduino. IK0XBX - Francesco

Programma di simulazione per Arduino

Relazione laboratorio di fisica

Introduzione teorica al microcontrollore Arduino UNO

Arduino& Potenziometro

TM1638 BOARD con ARDUINO

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico

Circuiti Sequenziali & Somma FP

MESH Francisco Gomez Paz. Made in Light

ISTRUZIONI D USO SISTEMA DI CONTROLLO ABBATTITORI PLUS DI MACCHEF-

Applicazioni dei microcontrollori PIC

M A N U A L E D U S O REGOLATORE DI TENSIONE RTAC ITALIANO

TVD RM1 VAL / SKC RILEVATORE DI VIBRAZIONI NEL PUNTO DI CONTATTO PER SISTEMA DI MISURAZIONE RMS MANUALE

..a cura di Cammisuli Chiara

HP LED Driver Shield. EtherMania di Signorini Marco Via Cadore MALNATE (VA) P.I REA VA

GARA NAZIONALE DI ELETTRONICA E TELECOMUNICAZIONI. Progetto di un sistema di riempimento e svuotamento di un contenitore.

Corso Base Arduino ed Elettronica

AUTOCLAVE Modello BABY S

CONTROLLORI DA INCASSO PER SISTEMI DI ASPIRAZIONE PROFESSIONALI E INDUSTRIALI

Cos'è Arduino? rilasciata con licenza di tipo open source.

Ricerca guasti generale KRONOS. August 03

RELAZIONE DI TELECOMUNICAZIONI - ITIS Vobarno. Parte prima

Termometro digitale. Ivancich Stefano

SIMULATORE DI PARCHEGGIO A DUE ZONE DL 2120RM. Laboratorio di Automazione

Camar Elettronica s.r.l. Via Mulini Esterna n CARPI (Modena) ITALY. 2 Temperature Pt100 - Collegamento 3 fili

Radar con Arduino. da Emanuele Lovera - Blogger

Dipartimento di Ingegneria Industriale e dell Informazione. Laboratorio di acquisizione dati

8^ parte: Pilotare Motori passo-passo bipolari usando l integrato SN754410NE. Author: Ing. Sebastiano Giannitto (ITIS M.

Compact 300B MASTERSOUND. Amplificatore integrato in classe A Single ended. Congratulazioni per la Vostra scelta

APPUNTI DI ELETTRONICA DIGITALE

CORSO ARDUINO. Giulio Fieramosca Stefano Panichi. Corsi GOLEM 2014

Metronomo. Realizzato da Andrea Corda

Security 6. Centrale Allarme 6 Zone. Manuale Tecnico di Installazione

Istruzioni per l uso Modulo AS-i AC2520 AC / / 2009

Transcript:

Display numerico con i LED Ferrari, Porti, Zannetti 1 febbraio 2016 1 Scheda Questo progetto prevede l unione di più caratteristiche prese dai vari progetti fatti in precedenza, per riuscire a formare una sorta di display con l uso dei LED in grado di accendersi in base a cosa viene rilevato dal potenziometro: L elettricità, come si può facilmente intuire, parte direttamente dai cavi collegati ad arduino, poi l elettricità passerà poi dai LED e infine con dei nuovi cavi (cavi arancioni e gialli laterali della figura iniziale del progetto) arriverà alle due colonne negative della breadboard, nelle quali finirà il ciclo di elettricità. 1

L elemento principale del progetto è il potenziometro, che, collegato direttamente ad arduino (cavo giallo), dà le informazioni che poi faranno attivare i vari LED; esso è inoltre collegato elettricamente dai due piedini laterali, collegati rispettivamente: quello in basso con la carica positiva (cavo rosso) e quello in alto con la carica negativa (cavo bianco). 2

2 Codice int const potpin = A0; int potval; int angle; void setup() { pinmode(2, OUTPUT); pinmode(3, OUTPUT); pinmode(4, OUTPUT); pinmode(5, OUTPUT); pinmode(6, OUTPUT); pinmode(7, OUTPUT); pinmode(8, OUTPUT); pinmode(9, OUTPUT); pinmode(10, OUTPUT); pinmode(11, OUTPUT); void loop() { potval = analogread(potpin); Serial.print("potVal:"); Serial.print(potVal); if(potval < 100){ // 0 digitalwrite(7, LOW); digitalwrite(9, HIGH); else if(potval > 100 && potval < 200){ // 1 digitalwrite(5, LOW); digitalwrite(6, LOW); digitalwrite(7, LOW); digitalwrite(8, LOW); digitalwrite(10, LOW); digitalwrite(11, LOW); 3

else if(potval > 200 && potval < 300){ // 2 digitalwrite(2, LOW); digitalwrite(5, LOW); digitalwrite(9, HIGH); else if(potval > 300 && potval < 400){ // 3 digitalwrite(5, LOW); else if(potval > 400 && potval < 500){ // 4 digitalwrite(8, LOW); digitalwrite(11, LOW); else if(potval > 500 && potval < 600){ // 5 digitalwrite(3, LOW); else if(potval > 600 && potval < 700){ // 6 4

digitalwrite(3, LOW); digitalwrite(9, HIGH); else if(potval > 700 && potval < 800){ // 7 digitalwrite(5, LOW); digitalwrite(7, LOW); digitalwrite(10, LOW); digitalwrite(11, LOW); else if(potval > 800 && potval < 900){ // 8 digitalwrite(9, HIGH); else if(potval > 900){ // 9 5

Elementi del codice: int const potpin = A0 Questo comando implica l inserimento di una variabile e di una costante, che in questo caso è il potenziometro, che come riferito da = A0 è collegato ad arduino nella presa A0; int potval Serve per contenere il valore di ingresso analogico; int angle Serve per contenere l angolo al quale si vuole che si giri; void setup() Nel void setup andremo ad inserire le configurazioni di tutti i piedini digitali, rendendoli ingressi o uscite; in questo caso abbiamo inserito tramite il comando pinmode() i vari LED inserendo prima della virgola a che presa sono collegati e dopo se sono uscite (OUTPUT) o entrate (INPUT), in questo caso sono tutte uscite; void loop () Nel void loop andremo ad inserire tutto il meccanismo del nostro progetto, dato che il loop () è il posto dove si verifica la tensione sugli oggetti e dove si controllano le uscite. potval = analogread(potpin); Serial.print("potVal:"); Serial.print(potVal); Questa serie di comandi inseriscono la variabile del potenziometro che poi andremo ad utilizzare nei successivi comandi; if(potval x){ Questo comando va riscritto per ogni combinazione di LED si vuole fare dato che serve per far accendere i vari LED in sequenza poichè dice se (if) il potenziometro (potval) è maggiore o minore di un qualche valore (x) allora...({); Dopo la parentesi graffa troveremo tutti i vari LED: digitalwrite(y, HIGH/LOW); Questo comando dovremo ripeterlo per ogni LED, dato che va prima inserita la sua "presa" (y) e poi se il LED va acceso bisognerà inserire HIGH, se invece è spento LOW; 6

3 Storia delle costruzioni Le prime costruzioni che abbiamo fatto sono quelle basilari cioè quelle dove si comprende il meccanismo di base: Con questa prima costruzione abbiamo imparato il percorso che compie l elettricità all interno della breadboard; per questo progetto non è presente neanche il codice; Con questa nuova costruzione abbiamo invece imparato l uso del pulsante collegato direttamente al LED in modo tale che esso si accende solo se il pulsante è premuto; da questa costruzione poi siamo passati ad altre con l uso di più pulsanti contemporaneamente; Nella terza costruzione abbiamo iniziato a studiare il codice e le sue caratteristiche, poichè in questa costruzione sia il pulsante che i LED sono collegati direttamente con arduino e quindi è necessario un codice per controllare il tutto; In questa costruzione abbiamo iniziato ad interagire con elementi più complessi come il TMP36, cioè il sensore di temperatura, attraverso il quale in base al calore percepito si accendono i vari LED; Con questa costruzione abbiamo studiato l uso delle fotoresistenze collegate a un LED RGB, cioè un LED a quattro gambe, questo LED in base alla luce assorbita dalle varie fotoresistenze cambia colore e intensità; 7

Nell ultima costruzione che abbiamo fatto in classe abbiamo utilizzato il potenziometro per muovere il servo e con l uso dei condensatori per eliminare i cali di tensione, questo progetto è stato il più complicato sia dal punto di vista del codice che della costruzione; 4 Componenti elettronici Per questo circuito non abbiamo utilizzato molti componenti elettronici, infatti abbiamo: 13 LED un potenziometro 36 ponticelli 5 Problemi del progetto Durante lo svolgimento del progetto abbiamo riscontrato solamente due problemi: il primo problema riguardava i led e la loro posizione sulla breadboard, infatti i LED che si trovavano sulla stessa riga erano collegati dallo stesso cavo ad arduino e di conseguenza in questo modo non si poteva accenderne uno senza accendere anche l altro o viceversa, per risolvere questo problema è bastato allargare i piedini dei led della fila centrale in modo tale che tra i due piedini ci fosse uno spazio, però in questo modo abbiamo dovuto aumentare i cavi collegati ad arduino da 10 a 13, e quindi è spuntato un nuovo problema: Il secondo problema è quindi nato con la soluzione del primo, questo problema consisteva nel fatto che non erano presenti nell arduino 13 "prese" per i cavi collegati ai LED, per questo motivo per risolvere questo problema abbiamo analizzato le combinazioni e abbiamo notato che alcuni LED si accendevano e si spegnevano entrambi in tutte le combinazioni, per questo motivo abbiamo collegato questi LED insieme, riducendo i cavi da 13 a 10; 8

6 NIMT Obiettivo: Produrre una sequenza di numeri da 0 a 9 attraverso l accensione dei led e l utilizzo del potenziometro. Ci prefiggiamo di raggiungere il nostro obiettivo mediante le conoscenze acquisite riproducendo i progetti proposti dal libro, che ci hanno aiutato a capire il meccanismo di funzionamento di Arduino. La nostra idea è nata proprio tramite l analisi di alcune delle attività descritte dal manuale, ne abbiamo preso spunto per il nostro progetto. 6.1 Procedimento Prima di tutto abbiamo progettato un modello cartaceo in modo da capire la struttura che avremmo dovuto creare, attraverso lo studio dei singoli componenti di Arduino. Successivamente abbiamo posizionato sulla breadboard i vari ponticelli su ogni coppia di led, collegato i cavi principali di corrente e inserito il potenziometro. Infine abbiamo realizzato il codice con cui far funzionare Arduino. 7 Conclusione L esperienza di Arduino è stata molto istruttiva, ci ha dato un piccolo assaggio di ciò che significa programmare, inoltre è una attività che stimola l ingegno e la fantasia di chi ci lavora. Abbiamo raggiunto l obiettivo che ci eravamo prefissati all inizio grazie all attenta analisi dei passaggi da effettuare. Il progetto è riuscito alla perfezione. Per le future generazioni di Arduino suggeriamo di prendere atto dei progetti realizzati dalle classi precedenti e di riuscire a creare qualcosa di più articolato e innovativo. 9