
Lo Starter Kit è un ottimo modo per iniziare con Arduino, imparando la progettazione e la programmazione elettronica! Lo Starter Kit include i componenti necessari per un certo numero di progetti professionali: dal sensore di temperatura passando per il LED RGB e il motorino DC. Partendo dalle basi di elettronica, il kit vi aiuterà a progettare tutta una serie di circuiti, dai più semplici a quelli più impegnativi. In questo articolo presenteremo il nostro starter kit per Arduino UNO e cominceremo a programmare con semplici componenti. Successivamente presenteremo una serie di articoli dove impareremo a progettare e testare insieme alcuni semplici progetti elettronici. Clicca qui per scoprire come ricevere in omaggio il kit e Arduino UNO (o Arduino M0 PRO)!
Introduzione
Lo starter Kit a disposizione prevede oltre alla scheda Arduino UNO (al seguente link la categoria Arduino con tanti articoli), un insieme di componenti per approfondire (e divertirsi) molti aspetti della progettazione elettronica. Nella tabella 1 e 2 sono riassunti i codici presenti nel kit.
Bustina componenti | Q.tà | Componente | Codice |
0075 | 8 | LED GREEN - 5 mm | L-7113GT |
0077 | 8 | LED YELLOW - 5 mm | L-53YD |
0078 | 8 | LED RED - 5 mm | L-7113ID |
0080 | 5 | 100nF 63V CAPACITOR POLYESTER CERAMIC | B32529C0104J289 |
0081 | 3 | 100uF ELECTROLYTIC CAPACITOR 25 Vdc blu | CEV 100UF 25V |
0084 | 5 | BC547 - Transistor | BC547BTA |
0085 | 2 | 4N35 - Fotoaccoppiatore | 4N35 |
0086 | 3 | 10KΩ LINEAR POTENTIOMETER azz. | CA9MV10-10KA2020 |
0088 | 2 | IRF520PBF - Mosfet | IRF520PBF |
0089 | 10 | PUSHBUTTON 6x6 mm NERO - TH | DJ-1102-160-4.3 |
0147 | 3 | Alberino | 9006 |
0148 | 1 | 40x1 M V h 17 mm - Motore DC | PH254-140DF170A00V |
0263 | 1 | Busta Shield GRIGIA senza zip neutra | P30015A |
0274 | 1 | Buzzer D22 | PKM22EPPH4001-BO |
0352 | 5 | 100pF 50V Cond. Ceramico | TS15001H101JSASB0R |
0388 | 1 | TMP36 Sensore di Temperatura | TMP36GT9Z |
0400 | 1 | Led 5mm RGB - TH | L-154ASURKQBDCGKW |
0401 | 1 | LED WHITE - 5mm | C503B-WAN-CCaDa342/I |
0402 | 1 | 9V CABLE 150 | CBJL33431 |
0403 | 1 | L293D Dip 16 | L293DNE |
0450 | 3 | LED BLUE 5 mm | L-53QBDL-D |
1494 | 1 | TILT SENSOR | ASS131QE RBS040110 |
0763 | 1 | Sequenze Resistenze e diodo per KIT K000007 | 763 |
2512 | 6 | LDR - Fotoresistenza | NSL-19-033 |
0073 | 1 | Black PVC Wires, Male-Male | UL1007 26AWG, Black PVC Wires, Male-Male, 30cm |
0783 | 1 | Red PVC Wires, Male-Male | UL1007 26AWG, Red PVC Wires, Male-Male, 30cm |
0820 | 1 | Cutout - green | |
1662 | 1 | Cutout - red | |
1663 | 1 | Cutout - blu | |
0878 | 3 | Vite 3x12 | |
0881 | 3 | Dado esagonale per Vite M3 12x3 |
Tabella 1: Componenti del kit
Accessori | Q.tà | Componente | Codice |
1319 | 1 | Cable Type A/B Giallo | USBAB180G124 |
0649 | 1 | Breadboard+Kit fili x K000007 | 0165-4226-4-8010 |
Scheda elettronica | |||
A000066 | 1 | Arduino Uno Rev3 |
Tabella 2: Accessori del kit
In figura 1 è visualizzata la scheda Arduino UNO con il buzzer, il motore e la basetta di legno per una corretta posizione della scheda e della breadboard. Arduino Uno è una scheda basata sul microcontrollore ATmega328P. Dispone di 14 pin digitali di ingresso / uscita (di cui 6 possono essere utilizzati come uscite PWM), 6 ingressi analogici, un cristallo di quarzo a 16 MHz, una connessione USB, un jack di alimentazione, un header ICSP e un pulsante di reset. E' sufficiente collegarla ad un computer con il cavo USB in dotazione o alimentarla (da 7 a 12 V) con un adattatore AC-DC o una batteria per iniziare a conoscere il mondo dell'elettronica!

Figura 1: Arduino e la basetta di legno. In figura sono visualizzati anche il buzzer e il motore presenti nel kit
Le Breadboards (Figura 2 e 3) sono uno dei pezzi fondamentali quando si impara a costruire circuiti. E' una basetta senza saldatura per la produzione di circuiti temporanei e la prototipazione. In figura 4 sono visualizzate le connessioni della breadboard: oltre a righe orizzontali, si hanno quelle che vengono chiamati barre di alimentazione che corrono in verticale lungo i lati (indicati con i simboli + e -).
Alcuni componenti e l'interfaccia IDE
Cominciamo con il caso più semplice per introdurre l'interfaccia IDE, ovvero il lampeggio di un LED. Per far questo colleghiamo, come da figura 5, il LED rosso con una resistenza di 1 KΩ per limitare la corrente. Il circuito è una serie tra LED e resistenza: un'estremità (resistenza) collegata al pin 2 di Arduino (Digital, 5V), e l'altra (catodo del LED) collegata a GND.
Dopo aver scaricato l'interfaccia IDE per la programmazione Arduino dal sito http://www.arduino.org/downloads, è necessario collegare la board al PC con il cavo USB giallo in dotazione nel kit. La scheda sarà riconosciuta ma bisognerà impostarla come Arduino UNO nella sezione "scheda" del menu "strumenti" del programma, ricordatevi inoltre di selezionare nello stesso menù la porta COM di arduino attraverso la sezione di menù "porta" (Figura 6 e 7).
Il codice commentato da implementare per il lampeggio del LED è il seguente:
void setup() { // inizializza il PIN 2 come uscita pinMode(2, OUTPUT); } void loop() { digitalWrite(2, HIGH); // Accendi il LED delay(1000); // Aspetta 1 secondo digitalWrite(2, LOW); // Spegni il LED delay(1000); // Aspetta 1 secondo }
Tra i vari componenti c'è il sensore di temperatura TMP36GT9Z. TMP35, TMP36 e TMP37 sono sensori di temperatura ad alta precisione e a bassa tensione. Essi forniscono una tensione di uscita che è linearmente proporzionale alla temperatura in gradi Celsius. La bassa impedenza di uscita del TMP35 / TMP36 / TMP37, la sua uscita lineare e una precisa taratura semplificano di molto l'interfacciamento con i circuiti di controllo della temperatura e ai convertitori A / D. Tutti e tre i dispositivi sono previsti per l'utilizzo con un'alimentazione da 2,7 V a 5,5 V max, con una corrente di alimentazione ben al di sotto di 50 μA. In figura 8 è visualizzato il collegamento tra il sensore ed Arduino: il pin centrale relativo al segnale analogico è collegato al pin A0, gli altri due sono le alimentazioni a 5V e GND. Per approfondimento vi consiglio anche questo articolo.
Conclusioni
Partendo dall'ultima figura relativamente al sensore di temperatura, andremo a programmare il nostro Arduino per poter leggere il sensore. Tanti componenti per tanti progetti! Successivamente vedremo come far muovere il motore e tante altre applicazioni. Non perdetevi i prossimi articoli, ma soprattutto la promozione del nostro Kit Arduino!
Il kit è molto utile per imparare ma anche per mettere a punto soluzioni molto complesse. Dispone di vari componenti come un motore e il buzzer, oltre alla scheda Arduino ovviamente.
arrivato questa mattina il mio kit!
adesso inizio a sperimentare 🙂
il buzzer del kit arduino uno non ha polarità? se si, non riesco ad individuare i pin + e – …
non è polarizzato
grazie Paolo!
scusa….intendevo grazie Maurizio …sorry…
sto facendo degli esperimenti col sensore temperatura TMP36.
o sto sbagliando il codice (che è comunque copiato pari pari da un libro su arduino), oppure il TMP36 non è poi così preciso come indicato…:
avviando il codice su arduino con collegato il TMP36, dal monitor seriale nell’IDE leggo valori di temperatura dai 12 ai 14°, con punte rare fino a 15° C, mentre proprio in vicinanza (meno di 10 cm) un mio termometro indica 18,1°. possibile una tale differenza? (di sicuro la temperatura + verosimile è sui 18°, altrimenti non riuscirei a stare nella stanza con soli 14° ed una semplice tuta…)
riporto qui il codice che sto usando:
int min_in = 102 ; //corrisponde a 0,50 volt
int max_in = 205 ; //corrisponde a 1,00 volt
int min_out = 0 ; //corrisponde a 0° C
int max_out = 50 ; //corrisponde a 50° C
int raw_temp = 0; //variabile che memorizza la temperatura grezza
float temperatura = 0.00 ; //memorizza la temperatura calcolata con decimali
//programma le impostazioni alla partenza del programma
void setup() {
Serial.begin(9600); //inizializza la comunicazione seriale
pinMode(A0, INPUT); //imposta il pin analogico A0 come ingresso
}
//il ciclo loop legge all’infinito le righe di programma:
void loop() {
//legge la tensione sul pin analogico A0:
raw_temp = analogRead(A0);
//converte la tensione generata dal sensore in °C
temperatura = map(raw_temp, min_in, max_in, min_out, max_out);
//stampa il dato grezzo e la temperatura in °c:
Serial.print(temperatura); //stampa un dato senza ritorno a capo
Serial.println( ” °C”); //stampa una scritta con ritorno a capo
delay(500); //leggi la temperatura ogni 0,5 secondi
}
se il codice è corretto per la conversione del dato letto in A0, ed il TMP36 è così impreciso, qualcuno mi può consigliare uno o + sensori con maggiore precisione?
tra l’altro, il dato che mi restituisce nel monitor seriale, seppure impostato con 2 decimali dopo la virgola, mi esce sempre e comunque approssimato all’unità…mentre per un mio progettino vorrei avere una precisione almeno di 0,10° C…come posso risolvere?
Grazie infinite!!!
un sensore della TI TMP112AIDRLT ha una precisione come quella richiesta, circa 0,1 °C (12 bit).
fin quando è possibile inviare il progettino per il concorso?
purtroppo sono abbastanza in ritardo con la mia idea… 🙁