Scaricare la presentazione
PubblicatoGiulietta Valli Modificato 10 anni fa
1
ARDUINO Arduino è una piattaforma hardware low-cost programmabile, con cui è possibile creare circuiti "quasi" di ogni tipo per molte applicazioni, soprattutto in ambito di robotica ed automazione. Si basa su un Microcontrollore della ATMEL, l'ATMega168/328: per esempio l'Arduino Uno monta un ATMega328. Nasce a Ivrea, nel 2005, da un'idea di un professore universitario, un Ingegnere Elettronico, Massimo Banzi.
2
Questa piattaforma è Open Source, cioè è possibile trovare sul sito ufficiale i circuiti, i componenti e addirittura le istruzioni per realizzarla da soli. Un gruppo di studenti della facoltà di Ingegneria Informatica a scrivergli la libreria, l'IDE (libreria portabile su ogni sistema operativo) e le prime API.
3
C'è da aggiungere un particolare molto importante, ogni programma che si scrive su Arduino sarà naturalmente avviato a loop() finché non si toglie l'alimentazione dal dispositivo. Arduino può comandare sensori, luci, LED, motori e altri attuatori.
4
Linguaggio di programmazione
Il linguaggio di programmazione è basato su Wiring (un ambiente di programmazione Open-Source pensato per una facile applicazione per semplificare la programmazione in C e C++) e sull'interfaccia Processing.
5
Il linguaggio base di Arduino, basato sulla sintassi del linguaggio C
Strutture generali setup() loop() Strutture di controllo if if .. else for switch case while do .. while break continue return goto Segni di interpunzione usati ; { } // /*/
6
Direttive: #define #include Tipi di dati: void boolean char insigne char byte int insigne int word long intero a 32 bit con segno unsigned long intero a 32 sempre positivo float double string (di caratteri) String (oggetto) Array
7
Funzioni per la gestione dell’hardware
Digitali pinMode() digitalWrite() digitalRead() Analogici analogReference() analogRead() analogWrite() Gestione del tempo millis() micros() delay() delayMicroseconds() Come si vede, queste istruzioni, che consentono di operare a livello di singoli bit e piedini, e l’ottimizzazione che Arduino assicura per il codice macchina generato, rendono inutile il ricorso all’assembler.
8
Caratteristiche arduino
La scheda Arduino Uno, ultima nata, nel 2010, ha le seguenti caratteristiche: Microcontrollore ATmega328 Tensione di lavoro 5V Tensione di ingresso raccomandata 7-12 V Ingressi-Uscite 14 (di cui 6 possono fornire il comando PWM di motori) Ingressi analogici 6 Memoria Flash 32 KB SRAM 2 KB EEPROM 1 KB Clock 16 MHz
9
• PWM - I pin a disposizione con questa funzionalità sono 6
• PWM - I pin a disposizione con questa funzionalità sono 6. Il PWM, o pulse width modulation permette di creare un'onda di corrente regolabile. Questa è molto utile per comandare svariati sistemi elettronici. L'esempio piu' stupido è comandare i servomotori da modellismo. • TX - RX - porta seriale • RESET - Questo è un PIN digitale. Se la lettura di questo PIN=HIGH il controller si resetta • PIN uscita corrente a 3.3V • PIN uscita corrente a 5V
10
Vin - PIN input corrente per alimentazione controller • Analog in - PIN input analogici. Possono percepire molto precisamente una corrente DC tra 0 e 5V, resistuendo un valore da 0 a • Digital - PIN digitali programmabili per essere input o output, percepiscono se è presente o no corrente restituendo LOW se non c'è corrente e HIGH se c'è corrente, oppure possono essere programmati per generare corrente in output di massimo 40mA
11
I Pin sono connettori femmina, che hanno molteplici utilizzi, che vanno rispettate per evitare il rischio di un corto circuito che puo' arrivare anche al rischio di incendio e/o danneggiamento del computer a cui è collegato Arduino. • AREF - Questo pin regola il voltaggio di massima risoluzione degli input analogici • GND - massa
12
MICROPROCESSORE
13
Atmega328 è la sigla di questo microcontrollore
Atmega328 è la sigla di questo microcontrollore. All'interno di questo componente viene salvato il programma scritto dall'utente e tutta la configurazione di base che permette ad Arduino un funzionamento corretto. Quando acquisterete arduino riceverete uno di questi microcontrollori con solamente il Bootloader all'interno dell'ATMega. Questo "file" è una configurazione di base che permette l'utilizzo del software dedicato. Questo setting puo' essere modificato per utilizzare un software differente e per modificare la posizione e configurazione dei PIN
14
bootloader: è un pezzo di codice scritto sul chip della scheda Arduino
bootloader: è un pezzo di codice scritto sul chip della scheda Arduino. Permette di verificare se viene inviato un codice, lo sketch, tramite la porta seriale. Quindi se c'è un codice, lo legge e lo scrive nella memoria.
15
Hardware arduino L'hardware originale Arduino è interamente realizzato in Italia dalla Smart Projects, mentre i cloni della scheda possono essere realizzati da chiunque in qualsiasi parte del mondo. Una scheda Arduino tipica consiste in un microcontrollore a 8-bit AVR prodotto dalla Atmel, con l'aggiunta di componenti complementari per facilitarne l'incorporazione in altri circuiti. In queste schede sono usati chip della serie megaAVR - nello specifico i modelli ATmega8, ATmega168, ATmega328, ATmega1280 e ATmega2560.
16
Programmazione del microprocessore
In alcuni casi il microcontroller della scheda è pre-programmato con un bootloader che semplifica il caricamento dei programmi sullamemoria flash incorporata nel chip. A livello concettuale, tutte le schede sono programmate attraverso una porta seriale RS-232, ma il modo in cui questa funzionalità è implementata nell'hardware varia da versione a versione. Le schede seriali Arduino contengono un semplice circuito inverter che permette la conversione tra il livello della RS-232 e il livello dei segnali TTL. Le versioni attuali di Arduino sono gestite via USB: la versione Uno utilizza un microcontrollore Atmega8U2 programmato come convertitore USB-seriale
17
Input/output Per implementare il comportamento interattivo, Arduino è fornita di funzionalità di input/output (I/O), grazie alle quali essa riceve i segnali raccolti da sensori esterni. Il comportamento della scheda è gestito dal microcontroller in base ai valori provenienti dai sensori e alle decisioni determinate dal particolare programma in esecuzione in quel momento sulla scheda. L'interazione con l'esterno avviene attraverso attuatori pilotati dal programma attraverso i canali di output in dotazione.
18
I/O digitale La Arduino Uno, ad esempio, che ha soppiantato la Duemilanove, offre 14 connettori per l'I/O digitale (numerati da 0 a 13). La direzione di funzionamento, input o output, è decisa dallo sketch programmato sull'IDE Sei dei canali I/O possono produrre segnali Pulse-width modulation (PWM).
19
I/O digitale Attraverso i segnali PWM è possibile, ad esempio, regolare l'intensità di luminosità di un LED o la velocità di rotazione di un motorino elettrico[5]. L'hardware di tre dei pin di I/O (9, 10 e 11) implementa la possibilità di gestirli direttamente attraverso la funzione analogWrite(), che permette di controllare la PWM del segnale in uscita in maniera efficiente, senza dover eseguire linee di codice appositamente predisposte[
20
I/O analogico Sempre sulla Uno, sono presenti altri 6 connettori specificamente dedicati a ingressi di segnali analogici (collegati quindi ad una ADC), cioè valori di tensione letti da sensori esterni i cui valori, fino a un massimo di 5 Volt, sono convertiti in 1024 livelli discreti (da 0 a 1023). Questi 6 connettori possono essere riprogrammati (sempre dal codice dello sketchsull'IDE) per funzionare come normali entrate/uscite digitali.
21
Software di arduino L'ambiente di sviluppo integrato (IDE) di Arduino è un'applicazione multipiattaforma scritta in Java, ed è derivata dall'IDE creato per illinguaggio di programmazione Processing e per il progetto Wiring. È concepita per iniziare alla programmazione artisti e altri neofiti, che siano a digiuno di pratica nello sviluppo di software. Per permettere la stesura del codice sorgente, l'IDE include un editore di test dotato inoltre di alcune particolarità, come il syntax highlighting, il controllo delle parentesi, e l'indentazione automatica. L'editor è inoltre in grado di compilare e lanciare il programma eseguibile in una sola passata e con un solo click. In genere non vi è bisogno di creare dei Makefile o far girare programmi dalla riga di comando.Ogniprogramma scritto da noi viene denominato da sketch.
22
software arduino Per Arduino la sorgente di alimentazione viene selezionata automaticamente e può avvenire tramite porta USB o Jack di alimentazione. Appena la scheda è alimentata si accenderà il led verde PWR (power).
23
Avvio del programma arduino
24
Andiamo sulla cartella ‘esempi’,’basics’ e apriamo lo sketch denominato blink.
25
Dopo di che si aprirà un programma base per imparare e iniziare a scrivere il nostro sketch.
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.