Basicamente,
ARDUINO es una plataforma de desarrollo libre. Esta basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica.
El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida. Los microcontroladores más usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste que permiten el desarrollo de múltiples diseños.
Por otro lado el software consiste en un entorno de desarrollo que implementa el lenguaje de programación Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa.
Las placas pueden ser hechas a mano o compradas montadas de fábrica; el software puede ser descargado de forma gratuita.
Componentes
Colormap | Descripción |
|
Terminal de referencia analógica |
|
Tierra digital |
|
Terminales digitales 2-13 |
|
Terminales digitales 0-1/ E/S serie TX/RX. Estos pines no se pueden utilizar como e/s digitales |
|
Botón de reinicio - S1 |
|
Programador serie en circuito "In-circuit Serial Programmer" o "ICSP" |
|
Terminales de entrada analógica 0-5 |
|
Terminales de alimentación y tierra |
|
Entrada de alimentación externa (9-12VDC) - X1 |
|
Selector de alimentación externa o por USB. En las versiones nuevas de Arduino la selección de alimentacion es automática por lo que puede que no tengas este selector. |
|
USB (utilizado para subir programas a la placa y para comunicaciones serie entre la placa y el ordenador; puede utilizarse como alimentación de la placa) |
Microcontroladores Utilizados
IC1 |
Atmega168 |
Atmega328 |
Atmega1280 |
Voltaje operativo |
5 V |
5 V |
5 V |
Voltaje de entrada recomendado |
7-12 V |
7-12 V |
7-12 V |
Voltaje de entrada límite |
6-20 V |
6-20 V |
6-20 V |
Pines de entrada y salida digital |
14 (6 proporcionan PWM) |
14 (6 proporcionan PWM) |
54 (14 proporcionan PWM) |
Pines de entrada analógica |
6 |
6 |
16 |
Intensidad de corriente |
40 mA |
40 mA |
40 mA |
Memoria Flash |
16KB (2KB reservados para el bootloader) |
32KB (2KB reservados para el bootloader) |
128KB (4KB reservados para el bootloader) |
SRAM |
1 KB |
2 KB |
8 KB |
EEPROM |
512 bytes |
1 KB |
4 KB |
Frecuencia de reloj |
16 MHz |
16 MHz |
16 MHz |
Terminales Digitales:
Las terminales digitales de una placa Arduino pueden ser utilizados para entradas o salidas de propósito general a través de los comandos pinMode(), digitalRead(), y digitalWrite(). Cada terminal tiene una resistencia pull-up que puede activarse o desactivarse utilizando DigitalWrite() (con un valor de HIGH o LOW, respectivamente) cuando el pin esta configurado como entrada. La corriente máxima por salida es 40 mA.
- Serial: 0 (RX) y 1 (TX): Utilizado para recibir (RX) y transmitir (TX) datos serie TTL.
- Interrupciones externas: 2 y 3: Estas terminales pueden ser configuradas para disparar una interrupción con un valor bajo, un pulso de subida o bajada, o un cambio de valor.
- PWM: 3, 5, 6, 9, 10, y 11: Proporcionan salidas PWM de 8 bit con la función analogWrite(). En placas con ATmega8, las salidas PWM solo están disponibles en los pines 9, 10, y 11.
- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): Estas terminales soportan comunicación SPI. Aunque esta funcionalidad esta proporcionada por el hardware, no está incluida actualmente el el lenguaje Arduino.
- LED: 13: Conectado al pin digital 13, cuando el pin tiene valor HIGH, el LED está encendido, cuando el pin está en LOW, está apagado
Pines analogicos:
En adición a las funciones específicas listadas abajo, los pines de entrada analógicos soportan conversiones analógico-digital (ADC) de 10 bit utilizando la función analogRead(). Las entradas analógicas pueden ser también usadas como pines digitales: entrada analógica 0 como pin digital 14 hasta la entrada analógica 5 como pin digital 19.
- I2C: 4 (SDA) y 5 (SCL): Soportan comunicaciones I2C (TWI) utilizando la librería Wire
Alimentación
- VIN (9V): Es el voltaje de entrada a la placa Arduino cuando se está utilizando una fuente de alimentación externa
- 5V: La alimentación regulada utilizada para alimentar el microcontrolador y otros componentes de la placa. Esta puede venir de VIN a través de un regulador en placa o ser proporcionada por USB u otra fuente regulada de 5V.
- GND: Pines de tierra
- AREF: Referencia de voltaje para las entradas analógicas.
- Reset: Pon esta línea a LOW para resetear el microcontrolador
Tipos de Arduino
Arduino Duemilanove
Es una placa con microcontrolador basada en el ATmega168 o ATmega328. Tiene 14 pines con entradas/salidas digitales (6 de las cuales pueden ser usadas como salidas PWM), 6 entradas analógicas, un cristal oscilador a 16Mhz, conexión USB, entrada de alimentación, una cabecera ISCP, y un botón de reset. Contiene todo lo necesario para utilizar el microcontrolador; simplemente conectalo a tu ordenador a través del cable USB o aliméntalo con un transformador o una batería para empezar a trabajar con el.
"Duemilanove" significa 2009 en italiano que fue el año cuando salio al mercado. El Duemilanove es el mas popular en dentro de las series de placas con USB
|
Microcontrolador | ATmega368 o ATmega168 |
Voltaje de funcionamiento | 5V |
Voltaje de entrada (recomendado) | 7-12V |
Voltaje de entrada (limite) | 6-20V |
Pines E/S digitales | 14 (6 proporcionan salida PWM) |
Pines de entrada analógica | 6 |
Intensidad por pin | 40 mA |
Intensidad en pin 3.3V | 50 mA |
Memoria Flash | 16 KB (ATmega168) o 32 KB (ATmega328) de las cuales 2 KB las usa el gestor de arranque (bootloader) |
SRAM | 1 KB (ATmega168) o 2 KB (ATmega328) |
EEPROM | 512 bytes (ATmega168) o 1 KB (ATmega328) |
Velocidad de reloj | 16 MHz |
Arduino Mega
El Arduino Mega es una placa microcontrolador basada ATmeg1280. Tiene 54 entradas/salidas digitales (de las cuales 14 proporcionan salida PWM), 16 entradas digitales, 4 UARTS (puertos serie por hardware), un cristal oscilador de 16MHz, conexión USB, entrada de corriente, conector ICSP y botón de reset. Contiene todo lo necesario para hacer funcionar el microcontrolador; simplemente conectálo al ordenador con el cable USB o aliméntalo con un trasformador o batería para empezar. El Mega es compatible con la mayoría de shields diseñados para el Arduino Duemilanove o Diecimila.
|
Microcontrolador | ATmega1280 |
Voltaje de funcionamiento | 5V |
Voltaje de entrada (recomendado) | 7-12V |
Voltaje de entrada (limite) | 6-20V |
Pines E/S digitales | 54 (14 proporcionan salida PWM) |
Pines de entrada analógica | 16 |
Intensidad por pin | 40 mA |
Intensidad en pin 3.3V | 50 mA |
Memoria Flash | 128 KB de las cuales 4 KB las usa el gestor de arranque(bootloader) |
SRAM | 8 KB |
EEPROM | 4 KB |
Velocidad de reloj | 16 MHz |
Arduino Bluetooth
Es una placa Arduino con el módulo Blueetooh incorporado, que permite la comunicación inalámbrica.
El uso de un convertidor DC-DC,permite que la placa sea alimentada con un mínimo de 1,2 V, pero con un máximo de 5,5 V. Los voltajes superiores o la polaridad invertida en la fuente de alimentación estropeará la placa.
Un ATmega168 para montaje en superficie (como con el Arduino Mini). Esto duplica la cantidad de espacio disponible para tus sketches y agrega tres pines PWM más y dos entradas analógicas.
El Pin 7 está conectado al pin de reinicio (reset) del módulo bluetooth.
Utiliza sólo la comunicación serie a 115200 baudios, que es la velocidad a la que el módulo ha sido configurado para usar.
Arduino Nano
El Arduino Nano es una pequeña y completa placa basada en el ATmega328 (Arduino Nano 3.0) o ATmega168 (Arduino Nano 2.x) que se usa conectándola a una protoboard. Tiene más o menos la misma funcionalidad que el Arduino Duemilanove, pero con una presentación diferente. No posee conector para alimentación externa, y funciona con un cable USB Mini-B en vez de el cable estandar. El nano fue diseñado y está siendo producido por Gravitech.
|
Microcontrolador | Atmel ATmega168 o ATmega328 |
Voltaje de funcionamiento | 5V |
Voltaje de entrada (recomendado) | 7-12V |
Voltaje de entrada (limite) | 6-20V |
Pines E/S digitales | 14 (de los cuales 6 proveen de salida PWM) |
Pines de entrada analógica | 8 |
Corriente máx por cada PIN de E/S | 40 mA |
Memoria Flash | 16 KB (ATmega168) o 32 KB (ATmega328) de los cuales 2KB son usados por el bootloader |
SRAM | 1 KB (ATmega168) o 2 KB (ATmega328) |
EEPROM | 512 bytes (ATmega168) o 1 KB (ATmega328) |
Velocidad de reloj | 16 MHz |
Dimensiones | 18,5mm x 43.2mm |
Arduino Mini
Arduino Mini es una placa con un pequeño microcontrolador basada en el ATmega168, pensada para ser usada en placas de prototipado y donde el espacio es un bien escaso. Cuenta con 14 entradas/salidas digitales (de las cuales 6 pueden ser usadas como salidas PWM ), 8 entradas analógicas y un cristal de 16 MHZ. Puede ser programada con el adaptador Mini USB u otros adpatadores USB o RS232 a TTL serial
|
Microcontrolador | ATmega168 |
Voltaje de funcionamiento | 5V |
Voltaje de entrada (recomendado) | 7-9V |
Voltaje de entrada (limite) | 6-20V |
Pines E/S digitales | 14 (de los cuales 6 proveen de salida PWM) |
Pines de entrada analógica | 8 (de las cuales 4 se extienden en pines) |
Corriente máx por cada PIN de E/S | 40 mA |
Memoria Flash | 16 KB (de las cuales 2 KB son usadas por el bootloader) |
SRAM | 1 KB |
EEPROM | 512 bytes |
Velocidad de reloj | 16 MHz |
LilyPad Arduino
El LilyPad Arduino es una placa con microcontrolador diseñado para prendas y e-textiles. Puede utilizar con complementos similares como fuentes de alimentación, sensores actuadores unidos por hilo conductor. La placa esta basada en el ARmega168V (la versión de baja consumo del ATmega168), o el ATmega328V. El LilyPad Arduino ha sido diseñado y desarrollado por Leah Buechley y SparkFun Electronics.
|
Microcontrolador | ATmega168V |
Voltaje de funcionamiento | 2.7-5.5 V |
Voltaje de entrada | 2.7-5.5 V |
Pines E/S digitales | 14 (de los cuales 6 proveen de salida PWM) |
Pines de entrada analógica | 6 |
Corriente máx por cada PIN de E/S | 40 mA |
Memoria Flash | 16 KB (de las cuales 2 KB son usadas por el bootloader) |
SRAM | 1 KB |
EEPROM | 512 bytes |
Velocidad de reloj | 8 MHz |
Arduino Serial
Es una placa básica que utiliza una interfaz RS232 para comunicarse con el ordenador o para la carga de sketches. Esta placa es fácil de montar, incluso como ejercicio de aprendizaje. Se ha diseñado para utilizar los componentes más simples posibles, de manera que sea fácil de construir, incluso si buscas las componentes en la tienda de la esquina.
Arduino Shields
Los Shields son placas que se colocan encima de la placa Arduino y que amplían una nueva función para que sea controlada desde Arduino, para controlar diferentes aparatos, adquirir datos, etc.
XBEE Shield
La Xbee shield permite a una placa Arduino comunicarse de forma inalámbrica usando Zigbee. Está basada en el módulo Xbee de MaxStream. El módulo puede comunicarse hasta 100ft (30 metros) en interior o 300ft (90 metros) al aire libre (en visión directa). Puede ser usado como reemplazo del puerto serie/usb o puedes ponerlo en modo de comandos y configurarlo para una variedad de opciones de redes broadcast o malladas. La shield tiene pistas desde cada pin del Xbee hasta un orificio de soldar. También provee conectores hembra para usar los pines digitales desde 2 hasta 7 y las entradas analógicas, las cuales están cubiertas por la shield (los pines digitales de 8 a 13 no están cubiertos por la placa, así que puedes usar los conectores de la placa directamente).
Ethernet Shield
La Arduino Ethernet Shield permite a una placa Arduino conectarse a internet. Está basada en el chip ethernet Wiznet W5100. El Wiznet W5100 provee de una pila de red IP capaz de TCP y UDP. Soporta hasta cuatro conexiones de sockets simultáneas. Usa la librería Ethernet para escribir programas que se conecten a internet usando la shield.
Por favor notar que el actual diseño de la ethernet shield no es compatible con el Arduino Mega.
La ethernet shield dispone de unos conectores que permiten conectar a su vez otras placas encima y apilarlas sobre la placa Arduino.
Arduino usa los pines digitales 10, 11, 12, y 13 (SPI) para comunicarse con el W5100 en la ethernet shield. Estos pines no pueden ser usados para e/s genéricas.
La shield provee un conector ethernet estándar RJ45
El botón de reset en la shield resetea ambos, el W5100 y la placa Arduino.
La shield contiene un número de LEDs para información:
- PWR: indica que la placa y la shield están alimentadas
- LINK: indica la presencia de un enlace de red y parpadea cuando la shield envía o recibe datos
- FULLD: indica que la conexión de red es full duplex
- 100M: indica la presencia de una conexión de red de 100 Mb/s (de forma opuesta a una de 10Mb/s)
- RX: parpadea cuando la shield recibe datos
- TX: parpadea cuando la shield envía datos
- COLL: parpadea cuando se detectan colisiones en la red
El jumper soldado marcado como "INT" puede ser conectado para permitir a la placa Arduino recibir notificaciones de eventos por interrupción desde el W5100, pero esto no está soportado por la librería Ethernet. El jumper conecta el pin INT del W5100 al pin digital 2 de Arduino.
El slot SD en la shield no está soportado por el software Arduino.
Referencias