1. Collegamento in serie e parallelo
Nel collegamento in serie si collegano il polo negativo di un generatore con
il polo positivo dell'altro generatore.
Nel collegamento in parallelo si collegano tra loro tutti i poli positivi dei
generatori da un lato e tutti i poli negativi dall'altro
2. Anodo e catodo
Questo è un led…
come si vede ha due connessioni…
Queste connessioni si chiamano
Anodo e Catodo
• L’anodo è positivo (+)
• Il Catodo è negativo (-)
• L’anodo è positivo (+)
• Il Catodo è negativo (-)
Dunque?
• L’anodo va collegato al polo positivo (+)
• Il Catodo va collegato al polo negativo (-)
…
… magari usando una resistenza …
altrimenti il led può bruciarsi…
(ora prova tu a farlo con TinkerCad)
3. Arduino
Arduino è una piattaforma HW low-cost programmabile.
Con Arduino è possibile creare circuiti di
qualsiasi tipo per molte applicazioni,
soprattutto in ambito di robotica ed
automazione.
E composto da:
• il microcontrollore e un led di power.
• 14 pin digitali (sia input che output)
• 6 pin analogici
• pin di alimentazione
• una porta USB
• un jack di alimentazione
Per comunicare con Arduino occorre un software
chiamato Arduino IDE che trasforma il linguaggio
oggetto in linguaggio sorgente
4. I pin pwm sono
contrassegnati da un
trattino ondulato(~)
detto TILDE
Pin digitali e pin PWM
5. Programma (= sketch) minimo
void setup(){
// inizializzazione pin, seriale, ecc.ecc
// viene eseguito solo una volta all’inizio
}
void loop(){
// ciclo di vita vero e proprio
// viene eseguito all’infinito
}
6. Alcuni comandi di base
• pinMode => definisce se i pin sono input o output
• digitalWrite => serve per accendere o spegnere un pin digitale (HIGH, LOW)
• analogWrite => serve per accendere o spegnere un pin analogico (valore)
• delay => si usa per dare dlle pause tra operazioni
pinMode
• nome del pin che si vuole inizializzare
• INPUT o OUTPUT
Es pinMode(13, OUTPUT);
Sto dicendo che il pin 13 è una uscita
digitalWrite
• nome del pin su cui scrivere
• HIGH o LOW
Es digitalWrite(13, HIGH);
Sto accendendo il pin 13
analogWrite
• nome del pin su cui scrivere
• Un valore da 0 a 255
Es analogWrite(11, 60);
Sto accendendo il pin 11
NON COMPLETAMENTE!
8. Variabili … e #define
Una variabile è un modo per nominare e memorizzare un valore
(numerico o non) per un successivo utilizzo da parte del programma.
Esistono svariate variabili ma la più utilizzata e int
Per dichiarare una variabile bisogna scrivere;
int nome_della_variabile = valore;
La costante e diversa dalla variabile perché
mentre la variabile può cambiare all’interno
dello sketch la costante rimane fissa e uguale
Si scrive:
#define nome variabile valore
10. L’istruzione for usa una variabile detta contatore
Questa cambia valore ogni volta che viene ripetuto il gruppo di istruzioni.
Viene usata per stabilire se continuare il ciclo o meno.
Nella struttura for troviamo tre elementi separati da un punto e virgola:
•la condizione iniziale;
•la condizione che deve essere vera per continuare il ciclo
•l’incremento del contatore
La sintassi e:
for(int contatore = valore; test; incremento del contatore) {
"codice da eseguire"
}
La struttura di controllo for
12. Uso della seriale
La seriale di arduino e utile per scambiare dati con il processore arduino
La sintassi è:
Nel setup
Serial.begin(9600); // inizializzazione della seriale e va inserito
Nel loop
Serial.print ( variabile o "testo "); serve per stampare a seriale variabili o testo
Serial.println (variabile o "testo "); serve per stampare a seriale variabili o testo però alla fine della
scrittura va a caponome variabile)/("testo "
14. libreria
Una libreria per Arduino è un codice contenente delle funzioni
aggiuntive.
Sintassi
#include <nome libreria>
Esempio: Il Servo
Il servomotore è un dispositivo capace di eseguire dei
movimenti meccanici in funzione del segnale applicato
al suo ingresso.
Arduino dispone, secondo i modelli, di uscite PWM per
far muovere un servo
Sintassi:
Fuori dal setup e loop va inizializzata la liberira e il nome che gli vogliamo
dare con:
#include<Servo.h>
Nel setup
Servo.attach(pin che abbiamo collegato il servomotore)
Nel loop
Servo.write(valore in gradi che deve assumere il servo)