Arduino (hardware)
Arduino è una piattaforma hardware per il physical computing, creata in Italia nel 2005, e basata su una semplicissima scheda di I/O e su un ambiente di sviluppo che usa una libreria Wiring pre semplificare la scrittura di programmi in C e C++ da far girare sulla scheda.
Arduino può essere utilizzato per sviluppare oggetti interattivi stand-alone o può interagire, tramite collegamento, con un software residente su un computer, come Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider).
La piattaforma hardware Arduino è distribuita agli hobbisti solo attraverso la rete e viene spedita in versione pre-assemblata, ma le informazioni sul progetto hardware sono disponibili per chiunque volesse costruirsi un Arduino con le proprie mani.
Il team di Arduino è composto da Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, e David Mellis.
Il progetto ha preso avvio in Italia, nel 2005, con lo scopo di rendere disponibile agli appassionati di robotica fai da te un device per controllare robot auto-costruiti, in maniera più economica rispetto ad altri sistemi di prototipazione disponibili all'epoca. I progettisti riuscirono nell'intento di creare una piattaforma di semplice utilizzo e che, al contempo, permettesse un significativo taglio di costi rispetto a molti prodotti concorrenti.
Fino al mese di ottobre 2008, erano state ordinate più di 50.000 schede Arduino in tutto il mondo.
Piattaforma
Hardware
Una scheda Arduino consiste in di un microcontroller a 8-bit AVR prodotto dalla Atmel, con dei componenti complementari per facilitarne l'incorporazione in altri circuiti. Gli Arduino ufficiali hanno usato chip della serie megaAVR, nello specifico i modelli ATmega8, ATmega168, ATmega328, e ATmega1280. Ma i suo cloni si sono servito di una mnaciata di altri processori. Molte schede includono un regolatore lineare di tensione a 5-volt e un a 16MHz oscillatore a cristallo (o un risonatore ceramico in alcune varianti), sebbene alcune implementazioni, come LilyPad, girino a 8Mhz e fanno a meno dello stabilizzatore di voltaggio a causa delle specifiche restrizioni al fattore di forma. Inoltre, il controller Arduino è pre-programmato con un bootloader che semplifica il caricamento dei programmi nella memoria flash incorporata nel chip, rispetto ad altri device che richiedono, solitamente, un programmer esterno.
A livello concettuale , tutte le schede sono programmate attraverso un porta seriale RS-232, ma il modo in cui questo è implementato 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 attuali schede Arduino sono programmate tramite USB, grazie a un'implementazione che usa dei chip adattatori USB-seriale come gli FT232 della FTDI. Alcune varianti, come la Arduino Mini e la versione non ufficiale Boarduino, usano una scheda o un cavo adattatore USB-to-serial staccabile.
La Arduino mostra molti dei connettori di Input/Output per microcontroller usati da altri circuiti. La Diecimila, ora soppiantata dalla Duemilanove, per esempio, offre 14 connettori per l'I/O digitale, 6 dei quali possono produrre segnali PWM, e 6 dedicati a input di segnali analogici. Questi pin sono disponibili sulla parte superiore della scheda, mediante connettori femmina di 0.1 pollici. Inoltre, sono disponibili commercialmente molte schede applicative plug-in, note come "shields".
Le Barebones e Boarduino, compatibili con la Arduino, sono fornite di connettori maschio sul lato inferiore del circuito in modo da poter essere connessi a una breadboard senza saldature.