Arduino
Arduino | |
---|---|
Caracter�stiques | |
CPU | Microcontroladors AVR ARM |
Lloc web | arduino.cc |
Arduino �s una placa de circuit impr�s simple basada en el microcontrolador de codi obert provinent de la plataforma de codi obert Wiring[1][2] amb l'objectiu de fer m�s simple i accessible el disseny de circuits electr�nics amb microcontroladors.
El maquinari consisteix en dissenys simples de maquinari lliure amb processadors Atmel AVR en una placa amb pins E/S. L'entorn de desenvolupament implementa el llenguatge Processing de Wiring, molt semblant a C++. Arduino es pot utilitzar per desenvolupar objectes interactius aut�noms o pot ser connectat a programari de l'ordinador (p. ex. Macromedia Flash, Processing, Max/MSP, Pure Data). Les plaques es poden muntar a m� o adquirir-se i els IDE de codi font obert es poden descarregar de franc.
El projecte Arduino va rebre una menci� honor�fica a la categoria de Comunitats Digital al Prix Ars Electronica 2006 Arxivat 2006-12-06 a Wayback Machine. (angl�s).
Arduino �s un nom propi mascul� itali� que significa "gran amic".
Tipus de plaques
[modifica]Existeixen diferents versions d'Arduino. En funci� del nostre projecte podem triar la que s'adapti millor al projecte en q�esti�:
- Placa s�rie:
�s la placa b�sica, i s'utilitza una interf�cie RS232. Aquesta interf�cie pot ser utilitzada, a m�s a m�s, per a la programaci� de la placa, per a comunicar-se amb altres elements externs que utilitzin el port s�rie, com per exemple un PC.
- Placa USB:
�s una evoluci� de la placa s�rie que incorpora un port USB per a comunicar-se amb el PC.
- Placa de prototips:
Aquesta placa est� pensada per a poder incorporar hardware addicional al disseny base de l'Arduino. Incorpora una matriu de forats en la que s'hi pot afegir el nostre hardware addicional. No disposa de port s�rie ni USB, per la qual cosa �s necessari disposar d'una altra placa per a programar el xip.
- Bluetooth:
�s l'�ltima versi� en la qual es treballa. Elimina la necessitat de cables per a comunicar-se amb el PC o qualsevol altre dispositiu bluetooth, com per exemple un tel�fon m�bil.
Esquem�tic de pins
[modifica]Entrades i sortides
[modifica]Consta de 14 entrades digitals configurables d'entrada i/o sortida que operen a 5 volts. Cada pin pot proporcionar o rebre com a m�xim 40mA. Els pins 3, 5, 6, 9, 10 i 11 poden proporcionar una sortida PWM (Pulse Width Modulation). Si es connecta qualsevol cosa als pins 0 i 1, aix� interferir� amb la comunicaci� USB. Diecimila tamb� t� 6 entrades anal�giques les quals proporcionen una resoluci� de 10 bits. Per defecte mesuren des de 0 volts (massa) fins a 5 volts, tot i que �s possible canviar el nivell m�s alt, utilitzant el pin Aref i algun codi de baix nivell.
Esquema i pins
[modifica]Elements amb els quals podem interaccionar: (prenent d'exemple la placa USB)
Comen�ant en el sentit de les agulles del rellotge des del centre de la part superior:
Pin de refer�ncia anal�gica (taronja)
Senyal de terra digital (verd clar)
Pins digitals 2-13 (verd)
Pins digitals 0-1 / entrada i sortida del port s�rie:TX/RX (blau)
Bot� de reset (negre)
Entrada del circuit del programador s�rie (marr�)
Pins d'entrada anal�gica 0-5 (blau fosc)
Pins d'alimentació i terra (taronja i taronja clar)
Entrada de la font d'alimentació externa (9-12V DC) – X1 (gris)
Commutació entre font d'alimentació externa o alimentació a través del port USB – SV1
Port USB (vermell).
Especificacions
[modifica]El microcontrolador Arduino Duemilanove està basat en el Atmega 328.
El microcontrolador Arduino Diecimila està basat en Atmega168.
Instal·lació en Windows
[modifica]Per la instal·lació de la placa Arduino en el sistema operatiu windows cal seguir els següents pasos: Amb la placa desconnectada:
1.- Descarregar i instal�lar el Java Runtime Enviroment (J2RE).
2.- Descarregar l'�ltima versi� de l'IDE d'Arduino.
Nota: �s recomanable descomprimir el fitxer en el directori arrel (c:\) mantenint l'estructura original.
3.- Entre totes les carpetes creades en el directori arduino, cal destacar les seg�ents:
- c:\arduino-0012\hardware\bootloader:
Aquesta cont� el programari necessari per a carregar el firmware en el xip Atmega168, per treballar amb Arduino. Nom�s cal si us heu muntat la placa vosaltres mateixos, o en el cas que s'hagi espatllat el xip i n'h�giu comprat un de nou.
-c:\arduino-0012\drivers: Cont� els drivers necessaris per al funcionament de la placa Arduino amb el PC amb S.O. Windows: FTDI USB Drivers
4.- Instal�lar FTDI USB Drivers.
Ara s�, connectar la placa USB. S'obrir� autom�ticament l'assistent de windows per a nou maquinari trobat:
-Selecciona "No por el momento"i prem"Siguiente".
-Selecciona "Instalar desde una lista o ubicaci�n espec�fica (avanzado)" i prem "Siguiente".
-Selecciona "Buscar el controlador m�s adecuado en estas ubicaciones" prem "Examinar".Selecciona la carpeta on hagis descomprimit el driver i prem "Siguiente".
Si tot ha anat correctament el driver de la placa estar� instal�lat.
5.- Obrir l'IDE d'Arduino.
Executarem el fitxer Arduino.exe per obrir la interf�cie. Aqu� configurem el port USB on tenim connectada la placa per a comen�ar-hi a treballar.
Instal�laci� en Linux
[modifica]Per instal�lar arduino en un sistema GNU/LINUX necessitem els seg�ents programes per resoldre les depend�ncies:
Sun java runtime, jre.
avr-gcc, compilador per la familia de microcontroladors avr d'atmel.
avr-libc, libc del compilador avr-gcc.
Per instal�lar-los, podem utilitzar el gestor de paquets. O b� per comandes a trav�s del terminal:
apt-get install sun-java5-jre gcc-avr avr-libc
En algunes distribucions cal desinstal�lar, sin� es necessita, el programa "brltty". Aquest s'encarrega de permetre l'acc�s al terminal per persones cegues a trav�s d'un dispositiu especial en braille.
killall brltty
apt-get remove brltty
Els dos s�ntomes d'aquest problema s�n:
- No apareix l'opci� /dev/ttyUSB0 en el men� Tools, Serial Port.
- Si s'observa el LED Rx de la placa Arduino, aquest s'ilumina de 3 a 5 vegades cada 5 o 6 segons.
Per acabar, descarreguem el framework d'arduino. El descomprimim a la carpeta desitjada i l'exectuem:
./arduino
Si tot ha anat b� ja el tindrem en funcionament.
Primer contacte
[modifica]El primer pas abans de comprovar que la instal�laci� �s correcte i comen�ar a treballar amb Arduino �s obrir alguns exemples pr�ctics que venen disponibles amb el dispositiu. �s recomanable obrir l'exemple "led_blink". Aquest codi el que fa �s crear una intermit�ncia per segon en un led connectat a un pin, en el nostre cas el n�mero 13. �s q�esti� de comprovar que el codi font �s correcte, per aix�, premerem el bot� que �s un triangle (en forma de "play").
# define LED_PIN 13
void setup () {
// configura el pin 13 com a sortida digital
pinMode (LED_PIN, OUTPUT);
}
// bucle principal
void loop () {
// escriu un 1 l�gic a la sortida 13
digitalWrite (LED_PIN, HIGH);
// pausa de 1000ms
delay (1000);
// escriu un 0 l�gic a la sortida 13
digitalWrite (LED_PIN, LOW);
// pausa de 1000ms
delay (1000);
}
Com a resultat d'aquest codi obtindrem una intermit�ncia al led 13, amb una freq��ncia de 2 segons.
Aplicacions
[modifica]Prove�ts de sensors es poden crear aplicacions senzilles enfocades a la doc�ncia per a estudiants d'electr�nica, projectes m�s elaborats per a la ind�stria o sistemes adre�ats a l'oci.
Pduino
[modifica]Pduino neix de la fusi� de Pure Data i Arduino. Ambd�s d'Open Source permeten treballar l'un de l'altre d'una manera gr�fica i molt intu�tiva. Carregant el fimware de Pure Data (PD) a la placa Arduino podem accedir-hi a trav�s d'aquest llenguatge de programaci� gr�fic. Es pot observar que tenim tot l'esquema f�sic de la placa, amb els ports, pins digitals, pins anal�gics, entrades i sortides... en una interf�cie gr�fica, gr�cies a PD.
Snap4Arduino
[modifica]Snap4Arduino �s una extensi� de Snap! que permet la programaci� visual per blocs de les diverses plaques Arduino. Ambd�s d'Open Source permeten treballar l'un de l'altre d'una manera molt intu�tiva.[3][4][5][6]
Versions de maquinari
[modifica]Les versions originals d'Arduino s�n manufacturades per Smart Projects.
Arduino | Procesador | Flash KiB |
EEPROM KiB |
SRAM KiB |
Pins E/S Digitals |
PWM |
Pins de Sortida Anal�gica |
Tipus d'interf�cie USB |
Dimensions polzades |
Dimensions mm |
---|---|---|---|---|---|---|---|---|---|---|
Diecimila | ATmega168 | 16 | 0.5 | 1 | 14 | 6 | 6 | FTDI | 2.7" x 2.1" | 68.6mm x 53.3mm |
Duemilanove | ATmega168/328P | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 6 | FTDI | 2.7" x 2.1" | 68.6mm x 53.3mm |
Uno | ATmega328P | 32 | 1 | 2 | 14 | 6 | 6 | ATmega8U2 | 2.7" x 2.1" | 68.6mm x 53.3mm |
Mega | ATmega1280 | 128 | 4 | 8 | 54 | 14 | 16 | FTDI | 4" x 2.1" | 101.6mm x 53.3mm |
Mega2560 | ATmega2560 | 256 | 4 | 8 | 54 | 14 | 16 | ATmega8U2 | 4" x 2.1" | 101.6mm x 53.3mm |
Fio Arxivat 2011-05-26 a Wayback Machine. | ATmega328P | 32 | 1 | 2 | 14 | 6 | 8 | None | 1.6" x 1.1" | 40.6mm x 27.9mm |
Nano | ATmega168 or ATmega328 | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 8 | FTDI | 1.70" x 0.73" | 43mm x 18mm |
LilyPad | ATmega168V or ATmega328V | 16 | 0.5 | 1 | 14 | 6 | 6 | None | 2" � | 50mm � |
Due | Atmel 91SAM3X8E | 512 | None | 96 | 54 | 12 | 12 | ATmega16U2 | 20.98" x 4" | 53.3mm x 101.52mm |
Micro | ATmega 32u4 | 32 | 1 | 2.5 | 20 | 7 | 7 | Interna | 1.89" x 0.7" | 48mm x 18mm |
Equip de desenvolupament
[modifica]L'equip de desenvolupadors d'Arduino es compon bàsicament de Massimo Banzi, David Cuartielles, Tom Igoe, David Mellis i Nicholas Zambetti.
Vegeu també
[modifica]Referències
[modifica]- ↑ «Interview with Casey Reas and Ben Fry».
- ↑ «Wiring». [Consulta: 7 octubre 2012].
- ↑ Pàgina oficial
- ↑ Introducció a Snap4Arduino[Enllaç no actiu]
- ↑ Snap4Arduino, ¡Un mundo que programar! Universidad de Navarra
- ↑ Snap4Arduino: ventajas, instalación e importación de proyectos de Scratch
Enllaços externs
[modifica]- Pàgina del projecte Arduino: http://www.arduino.cc/ (anglès)
- El wiki de desenvolupador Arduino, àlies Playground (anglès)