Home
Accesso / Registrazione
 di 

VeroBoardUino, costruire una board compatibile con Arduino a basso costo

VeroBoardUino scheda compatibile con Arduino

Avete creato il vostro circuito partendo da Arduino su una breadbord ed ora volete renderlo permanente ma così facendo dovrete prendere un nuovo Arduino per i prossimi esperimenti. Allora vediamo come creare una board compatibile con Arduino di modo da non dover ricomprare un nuovo Arduino ogni volta.

 

Utilizzare Arduino per i propri "esperimenti" elettronici è oggi una pratica largamente diffusa peccato che ogni qual volta siamo sodisfatti del risultato per ottenere il circuito permanente dobbiamo "sacrificare" Arduino. Vediamo allora come ovviare al problema in modo economico.

 

Il materiale necessario è il seguente:

- Un microcontrollore ATMega con il bootloader per Arduino preinstallato (semplifica il tutto)

- Una stripboard come base per il circuito permanente con almeno 23x14 fori

- Un LM7805

- 2 condensatori elettrolitici a 25V da 100 micro Farad (C1,C2 nello schematico)

- 2 condensatori ceramico da 100 nano Farad (C3,C4 nello schematico)

- 2 condensatori ceramici a disco (C5,C6 nello schematico)

- un socket Dual in-line (DIL) con 28 pin (o equivalente adatto per l'ATMega)

- un connetore femmina a 6 pin

- switch per attivare reset del controllore

- due resistenze da 10K Ohm (marrone,nero,arancione) (R1,R2 nello schematico)

- 2 cavetti isolati di collegamento in rame o allminio

- quarzo da 16MHz (X1 nello schematico)

- cavo USB - seriale

 

Partiamo dalla realizzazione del sistema di alimentazione. Come per Arduino vorremmo poter alimentare la board con un batteria od altra sorgente tra 7 e 12 V. Usando i tre condensatori e l'LM7805 effettuare i collegamenti sulla striboard riportati in figura sottostante.

Prestare molta attenzione alla polarità dei condensatori seguendo le istruzioni in figura sopra.

L'alimentazione andrà applicata alle righe (row) 1 (positiva) e 2 (negativa). Se tutto è andato bene sulla riga 2 avremo l'uscita in tensione negativa e sulla riga tre l'uscita positiva (5V). Fare molta ATTENZIONE a non invertire la polarità dell'alimentazione, ciò causerebbe la rottura del regolatore di tensione LM7805. Si potrebbe aggiungere un diodo per prevenire questo problema ed un fusibile per prevenire sovra alimentazioni ma tali accortezze non sono lo scopo di questo articolo.

Se disponete di un multimetro o di un voltmetro potete verificare il corretto funzionamento del sistema di alimentazione misurando la tensione di input (alimentazione), provare con una batteria da 9V per esempio, e l'output atteso (tra riga 2 e 3) sarà circa 5V.

Passiamo al posizionamento del controllore...

Saldare il socket DIL ed il connottore a 6 pin come mostrato in figura sottostante con la stessa posizione sulla stripboard

Il connettore seriale femmina sarà usato per programmare l'ATMega tramite la IDE di Arduino.

Creiamo adesso il circuito per resettare l'ATMega. Saldare la resistenza tra riga 3 (+5V) e 8 (per mantenere lo stato di reset del ATMega alto) e lo switch di modo che colleghi la riga 6 con la 2 quando premuto. Vedere figura sottostante.

Collegando con un cacetto riga 4 e 8, agendo sullo switch si esclude la resistenza collegata a +5V resettando l'ATMega.

Adesso colleghiamo il connettore seriale che sarà usato per caricare i programmi (sketches) sull'ATMega con la IDE di Arduino.

Dobbiamo collegare l'ingresso di tensione del connettore VCC, l'ingresso di trasmissione TX al pin RX del ATMega ed al contrario per RX del connettore. Usando dei cavetti ed una resistenza i collegamenti da effettuare sono illustrati nella figura sottostante.

Aggiungiamo un oscillatore al quarzo necessario al'ATMega per scandire gli intervalli di tempo. Saldare quindi l'oscillatore al quarzo ed i due condensatori ceramici come in figura sottostante.

Collegare:

- condensatore A da riga 15 a 17

- condensatore B da riga 15 a 16

- quarzo C da riga 16 a 17

nessuno di questo ha una polarità specifica quindi non preoccuparsi sul collegamento esatto dei pin.

Completiamo l'opera con alcuni collegamenti tra le varie parti illustrati in figura sotto.

A questo punto possiamo montare l'ATMega e vogliamo, ma non è indispensabile, si può aggiungere un altro connettore femmina a tre pin per leggere l'uoput del ATMega, per il collegamento vedere la figura sotto.

 

Ora non resta che caricare il nostro programma usando il cavo USB - seriale e la IDE di Arduino ed il circuito è pronto!

Per completezza si riporta in figura sotto lo schema del circuito realizzato.

 

Abbiamo visto come rendere permanenti i risultati dei nostri "esprimenti" con Arduino senza dover sacrificare un Arduino ogni volta, con ovvio rispario 

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog
ritratto di argaar

progetto carino,

progetto carino, personalmente preferisco far funzionare l'atmega stand-alone e ricreare il circuito prototipato sull'arduino attorno all'atmega stesso

ritratto di temuccio

Cosa intendi per far

Cosa intendi per far funzionare l'atmega stand-alone e ricreare il circuito? Ti fai un circuito ad-hoc per ogni applicazione?

ritratto di Berni

Se non ho capito male...

L'idea di argaar è questa: Usiamo Arduino per fare prove e sviluppare nuove soluzioni, quando siamo contenti del risultato e vogliamo utilizzare in modo permanente il circuito ottenuto invece di continuare ad usare Arduino facciamo un circuito ad-hoc per l'applicazione creata di modo da poter riutilizzare Arduino per prove future.

ritratto di temuccio

Quindi il circuito base,

Quindi il circuito base, esclusa la parte seriale (nel caso non mi occorra nel progetto) rimane identica giusto?

ritratto di Berni

Esatto

Esatto

ritratto di temuccio

Perfetto, adesso la cosa è

Perfetto,
adesso la cosa è più chiara, ma ho un'altro dubbio...Ha senso caricare sull'AVR in questo caso anche il Bootloader, considerando che va programmato esternamente? È possibile avere un codice più "compatto" partendo da un arduino senza aver bisogno di un Programmatore AVR?

ritratto di Berni

Re:

Rispondo affermativamente ad entrambe le domande. Sono possibili ottimizzazioni non considerate nell'articolo poichè complicherebbero un pochino il tutto ed in prima battuta conviene far funzionare le cose, lasciando le ottimizzazioni in una fase successiva, comunque importante.

ritratto di Antonio Mazza

Collegamento al computer

Ciao,
mi sto avvicinando da poco ad Arduino, ho delle basi di elettronica e programmo in VB6
La mia domanda è, l'adattatore USB-Seriale serve solo per programmare l'ATMega?
Mi spiego meglio, se io lo programassi su Arduino UNO e poi lo inserissi nel circuito, potrei collegare l'USB direttamente per inviare dei comandi dal PC, per esempio per far attivare dei relé, oppure in ogni caso ci vuole l'adattatore?
E nel caso lo si possa collegare direttamente o con un qualcosa nel mezzo, mi sai indicare dove trovare degli schemi?

Grazie. Antonio

ritratto di Berni

USB e schemi

Ciao Antonio,

l'adattatore USB-seriale serve solo per il progetto descritto nell'articolo, Arduino Uno offre nativamente un ingresso USB.
Per quanto riguarda gli schemi ogni articolo di Open Source Elettronica descrive gli schemi necessari o indica dove scaricarli. La filosofia open source applicata all'elettronica implica che gli schemi siano resi disponibili, quindi quando trovi un progetto che ti interessa gli schemi dovrebbero essere disponibili con esso.

Berni

ritratto di LucaF

Capacità dei 2 condensatori C5 e C6

Ciao,
ti chiedo gentilmente se puoi indicarmi la capacità dei due condensatori ceramici denominati C5 e C6 ,
Grazie, Luca

ritratto di LucaF

Capacità dei 2 condensatori C5 e C6

Scusate, penso di aver trovato la risposta sull'articolo originale...
C5 & C6 – 22pF ceramic disc capacitor
Luca

ritratto di Emanuele

Esatto

In genere con 15 - 22 pF copri tutte le frequenze di quarzi piu comuni 4, 8 e 16MHz.

Comunque nel datasheet del microcontrollore c'è sempre un'apposita sezione Frequency - Crystal Oscillator dove consigliano i giusti condensatori.

ritratto di Franco Da Re

Una correzione

La frase :"... lo switch di modo che colleghi la riga 6 con la 2 quando premuto. " non è corretta ( la funzione di collegamento tra la riga 6 e la riga 2 viene permanentemente svolta dal ponticello nero A ) ; la frase andrebbe modificata in :"...lo switch di modo che colleghi la riga 8 con la 2 quando premuto." . Molto utile e pulita la schedina , Franco

ritratto di Emanuele

Grazie della segnalazione

Grazie della segnalazione,
devo dire che procedere in questo modo è abbastanza laborioso e si può cadere facilmente in errore. Invece di "ragionare" per righe, sarebbe meglio "lavorare" sui simboli, GND, VCC, PIN del microcontrollore etc.

Fermo restando poi la rappresentazione del collegamento sulle righe/colonne della breadboard.

ritratto di andrea2

come fare l'upload di uno sketch

ciao,
ho caricato un bootloader su un atmega e mi appresto a costruirmi la tua scheda, complimenti per il tutorial!!

Ora volevo chiederti una conferma. Per inviare lo sketch pensavo di fare così:
da un cavo usb tagliato prelevo VCC ,GND ,TX e RX li piazzo nel connettore femmina.
Poi con l'IDE gli faccio l'upload. E' corretto?

scusa per l'eventuale banalità della domanda!

ciao e grazie

ritratto di Martyn

L'articolo originale

E 'bello vedere che si stanno facendo Veroboarduino! Si prega di fornire un link per l'articolo originale nel tuo post.

It's nice to see you are making Veroboarduino! Please provide a link to the original article in your post.

http://www.martyndavis.com/?p=105

ritratto di Emanuele

Veroboarduino

Hi Martyn the link at the source is in the second sentence of the article, after the link to arduino.cc http://www.martyndavis.com/?p=133
(from the beginning of publication)

Thanks for sharing Veroboarduino!

ritratto di marco.pilati.39

Tradurre (e anche male) è peggio che starsene zitti!

Scusa, sai: ho costruito l'oggetto credendolo tuo originale. Lo stavo collegando alla presa USB, da perfetto neofita, quando fortunatamente mi ha assalito il dubbio che NON è all'USB che lo si deve connettere, ma a un adattatore FTDI. E dirlo esplicitamente, no? Ti pare argomento secondario, passibile di omissioni?
Fortuna - dicevo - che ho scoperto da dove hai copiato l'articolo, ho letto ccome collegarlo opportunamente al PC, e ho evitato danni all'hardware.
Piuttosto che tradurre e mal-interpretare lavori altrui, è meglio starsene zitti o occuparsi di altre cose. Ci bastava il link originale.

ritratto di Ivan Scordato

non sapere leggere è anche peggio

Punto 1
Questo quì si sà che è un articolo riportato dato che è stato già segnalato.
Fra il materiale necessario è specificato che serve anche un cavo USB - seriale.

Punto 2
Per effettuare il caricamento degli sketch è ESPRESSAMENTE scritto:
"Ora non resta che caricare il nostro programma usando il cavo USB - seriale e la IDE di Arduino ed il circuito è pronto!"

Perciò, il problema che vedo io non sta nell'articolo, bensì nella capacità di comprendere un testo avendo delle conoscenze MINIME di base.

Saluti,
Ivan

ritratto di marco.pilati.39

pur non sapendo leggere, alla laurea in fisica ci sono arrivato

"USB seriale", per un perfetto neofita, suona come "il cavetto USB dotato di serie...". E che ne so se magari, in qualche kit venduto da chissà chi, ti corredano pure Arduino col cavetto USB di serie, oltre al manualetto, la scheda multiforata e via cantando? Ammetterai che si tratta invece di un chip, e non di una serie di semplici fili? Io, magari, avrei usato espressamente la parola chiave: CONVERTITORE. L'autore anglofono, infatti, è addirittura andato oltre, linkando datasheets e fotografie di ciò che intendeva SPIEGARE.
Spiegare, appunto: arte difficile nella quale, se non si hanno "conoscenze minime", è meglio non cimentarsi nemmeno, pena fare danni. Grazie per l'attenzione.

ritratto di Ivan Scordato

Ciao Marco, Ho capito quello

Ciao Marco,
Ho capito quello che vuoi dire :)
Certo come hai scritto tu il malinteso è scaturito dal fatto che sei un neofita e di conseguenza non hai compreso bene il significato del termine cavo usb - seriale.
Però avresti anche potuto chiedere un chiarimento al posto di criticare immediatamente :D

Comunque sia, ti consiglio di approfondire almeno le basi dell'elettronica affinche tu possa capire al volo determinate espressioni e perchè no, potere creare qualcosa da zero.

Saluti,
Ivan

ritratto di marco.pilati.39

approfondimento

Capito e chiarito ciò, a me resta ancora il dubbio se, visto che ormai gli ingressi seriali previsti nel tuo schema li ho già costruiti, possa io o no caricare i miei programmini sul processore attraverso la sola posta seriale tipo RS232 (quella del modem, per capirci) evitando l'USB e i vari convertitori USB-seriali. Se la risposta fosse sì, riferendomi a quale piedinatura dell'RS232 del mio PC devo collegare gli ingressi della tua scheda?

Mi verrebbe da dire:
GND col pin 5
TX con TDX (pin 3)
RX con RXD (pin 2)
Vcc con??? quale pin della RS232 per Vcc?
Grazie per la risposta.
Salute!

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Ultimi Commenti