Plataforma de electrónica abierta para la creación de prototipos basada en software y hardware flexibles y fáciles de usar.
Pepotis @pepotis Offline #1
Tras mi indignación por el hecho de que los graditos no deis nada de microcontroladores antes de decidir la especialidad. Me permito tratar de presentaros (a todos aquellos que lo desconozcan) a una de las mejores maneras de adentrarse en el mundo de la Electrónica, concretamente en el continente de los micros: El Arduino.

Imagen


¿Qué es Arduino?

Arduino es un proyecto basado en Hardware Libre que implementa microcontroladores AVR de Atmel en una placa con entradas salidas e interfaz USB.


Ah, que bien. Pero... ¿Qué es un microcontrolador?

Un microcontrolador es un circuito integrado que incluye las partes fundamentales de un ordenador: Microprocesador, Memoria e Interfaz de Entrada/Salida. En lenguaje coloquial, viene a ser un ordenador básico pero plenamente programable integrado en un solo chip. En la superior cacharreábamos bastante con el Intel 80C537 (de la famosa familia de los 8051) en segundo y tercero. De hecho había una asignatura (LSP) que consistía básicamente en utilizar unas máquetas que tenía el profesor para hacer movidas con el micro. A mí me toco un motór que era controlado remotamente por un mando, pudiendo asignar a las teclas del mando distintas funciones como cambiar la velocidad o la dirección de giro. Una chorrada, pero te lo pasabas bien. Había también un coche teledirigido, una puerta de garaje automática, un Pong programado en un osciloscopio utilizando un ratón de bola como teclado (ese era muy gracioso, en mi curso los tíos que lo hicieron se curraron la posibilidad de aumentar el nivel e introdujeron que un segundo jugador pudiese ser controlado utilizando los mandos de ajuste del osciloscopio), etc.
Muchos aparatos de nuestro alrededor incorporan microcontroladores. Los microondas, hornos, lavadoras, coches (lo que no incorporan ordenadores más avanzados) e incluso algunas tostadoras llevan microcontroladores en su interior. En general, cualquier aparato programable de nuestro entorno, lleva un micro en su interior.


Bien. Ahora que sé lo que es un micro, te repito la pregunta: ¿Qué es Arduino?

Arduino es una placa que contiene un micro AVR de Atmel de la familia Atmega así como puertos de entrada salida e interfaz USB para conectarlo a un PC. Concretamente, el Arduino UNO incluye un Atmega8U2.
Los AVR son una familia de microcontroladores RISC (reduced instruction set) de arquitectura Harvard, que fueron ideados para ser programados en C.
Pero es que Arduino da un valor añadido al hardware anteriormente citado, ya que aporta un bootloader propio que permite compilar el código en una versión modificada de C, que hace la programación mucho más simple, además de incorporar funciones que facilitan mucho las cosas, como cambiar una salida analógica (mediante señales PWM), mover un servo, o dar una determinada nota a un altavoz.
Si se quiere, claro está, se puede también flashear el bootloader original de Atmel y programar el micro directamente en C, e incluso en ensamblador.
Arduino además, es Hardware Libre, es decir, sus especificaciones y diagramas esquemáticos son de acceso público. Es decir, cualquiera puede construirse un Arduino (o cualquier otro dispositivo libre) si lo desea. De hecho, obtendrá la ayuda de la comunidad.
Además, el propio proyecto construye sus placas, existiendo varias versiones:
Arduino UNO (que sucedió al Arduino Diecimilla): Es la placa estandar. Incorpora 14 entradas/salidas (6 de ello con salida PWM) y 6 entradas analógicas.
Arduino Mega: Básicamente una versión más grande que incluye más entradas y salidas.
Arduino Nano: La versión miniaturizada de Arduino. Mide 43x18 mm.
Y malgunos más (podéis visitar el apartado Hardware de la página de Arduino del final del post)


Mola. ¿Y qué puedo hacer con él?

Al estar sus principios basados en los del Software Libre, el Hardware Libre tiene detrás una gran comunidad de desarrolladores. Existen miles de proyectos hechos con Arduino. Si queréis echar un vistazo, pasaros por hackaday.com, o por la propia web del proyecto y fliparéis. Incluso solo metiendo "arduino" en youtube. Se han hecho robots, lámparas led chulísimas... Hasta hay un chisme que lo pegas a la puerta y te la abre si tocas con los nudillos de una forma concreta (previamente programada) xD. Os dejo algún video:







Desde un punto de vista más "telequil", puedes montar hasta un pequeño DSP con él. A un nivel muy básico, este fin de semana, por ejemplo, he montado un led RGB que cambia de colores según el tono de la música (y siguiéndole el ritmo). Consiste en conectar el jack del pc (previa T) al Arduino y procesar la señal digitalizándola y haciéndole la DFT (encontré una librería en el foro que incorporaba directamente el algoritmo fft). Después agrupar en tres grupos el valor del espectro y asignarlos a las patillas de cada color del led RGB. Yo además le he puesto una pantalla de plástico que tenía de una lámpara led y mola bastante más que el LED desnudo). Cuando vuelva a tener móvil os pongo un video si queréis.


¡Quiero uno! ¿A quién tengo que tirarme?

Imagen

Afortunadamente a ninguno de sus fundadores. xD. Si quieres un Arduino puedes construirtelo tu mismo (Taringa, esa fuente de saber infinito) o comprártelo ya hecho.
Si decides comprártelo, tienes dos opciones:

1) Comprar el original, manufacturado en Itaia, en cualquier tienda de internet. Yo el mío lo compré en Electan.com, porque fue donde más barato lo encontré, además me junté con varios compañeros y conseguimos und descuento del 10%. Pero hay miles de tiendas más, en la propia web de Arduino (arduino.cc) hay enlaces a tiendas españolas.

2) Como en casi todo hoy en día, tenemos la opción de comprarnos una copia china. En las típicas páginas de Hong Kong las hay a patadas. En DealExtreme, por ejemplo, están bastante baratas. Casi todas las de ebay (sobretodo las de procedencia china) son, obviamente, clones. xD. Los clones de Arduino funcionan exactamente igual de bien que los vendidos por la marca. Al ser hardware libre llevan los mismos componentes y el mismo bootloader, por lo que son 100% compatibles con el IDE.

Comprar uno u otro es decision tuya. Yo me lo compré original, porque me moló el proyecto y quise aportar mi granito de arena (comprándolo original, ayudas a que la comunidad se mantenga). Pero también tengo claro que si hago un proyecto que vaya a ser más o menos fijo me compraré una copia. xD


Para más información

http://arduino.cc

La versión en español está bastante desactualizada, así que mi consejo es que la pongáis en inglés. En la sección de Playground tiene proyectos de muchos usuarios, y por supuesto, un foro muy interesante.
Última edición por pepotis el 30 Ene 2012, 02:29, editado 3 veces en total
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.
Los siguientes usuarios han agradecido a pepotis este post
ferre7 (30 Ene 2012, 09:10), Metaldeth (30 Ene 2012, 10:56), Jaime (30 Ene 2012, 12:18), Andrés (30 Ene 2012, 13:04), Alex (30 Ene 2012, 13:05), pabl0 (30 Ene 2012, 14:14), Gerardo (30 Ene 2012, 15:17), Iván (30 Ene 2012, 16:06), Olga (31 Ene 2012, 13:47), sroca (31 Ene 2012, 23:28), Mogwai (01 Feb 2012, 21:45), davidsaavedra (02 Feb 2012, 18:30), francisco javier (02 Feb 2012, 21:24)


Pepotis @pepotis Offline #2
¡Que bonico m'ha quedao!
Animo a todos los Arduineros del foro (me consta que hay al menos uno porque lo compró conmigo) a participar, a ver si los capullos del Staff nos abren un subforo, y al final conseguimos que se abra un Club de Arduino en la Escuela (que los bolonios tenéis mucha iniciativa)
:-D
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.

@Zero Offline #3
Joer, pos sí que te quedó bonito el post :P. Hace unos años me entusiasmaban este tipo de cosas, cuando estaba aprendiendo ASM, de hecho me compré un robotito que me valió unos 100€ euracos para probar cosas que me decepcionó bastante porque no podías programar en ASM desde 0, tenías que usar las librerías que te traía y eso era como programar en C, o en VB incluso. Viendo los precios de Dealextreme seguramente cuando vuelva a pedir me pille uno o dos para probar, sabía que existía pero no sabía que fueran tan baratos :P .

Y bueno, también saldrá en los próximos días a la venta el RaspberryPI, que a priori no tiene mucho que ver con Arduino, pero que creo que en marzo o así sacaran una placa de "expansión" para el Raspberry con leds sensores y conectores para motores y todo eso, lo que lo hará muy similar, más caro, pero más potente.

Saludos
Avatar de Usuario
Veterano
Jacobiano
Nov 2010 | 331 Mens.

Pepotis @pepotis Offline #4
No conocia el RaspberryPI, pero tiene muy muy buena pinta.
Efectivamente no tiene nada que ver con Arduino. Para empezar tiene hasta SO.
Estoy viendo que está a punto de salir. Si cuando lo haga pillas uno envía un privi o monta un post porque probablemente me interese y si nos juntamos varios podríamos achuchar el precio.
Un saludo
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.

Iván P. @Iván Offline #5
Pepotis todos sabemos que electronica es una secta con estructura piramidal y cobras por cada teleco amargado que se meta en esa rama
jajajjajajajaja

pero muy bueno el post, a mi electronica la verdad q es la q mas me llama y si me pones cacharritos de estos ya la bomba :)
Imagen
Avatar de Usuario
Veterano
Java
Dic 2010 | 634 Mens.

Jaime Alonso Lorenzo @Jaime Offline #6
A mí me ha flipado lo que has hecho con la música y el led, es increíble lo que se puede hacer con ese cacharro xDD
Avatar de Usuario
Administrador
Dios
Nov 2010 | 1880 Mens.

Andrés Álvarez Palacio @Andrés Offline #7
A mi me gustaria para inicializarme en esto, que nos pongas algo muy muy facilito, rollo "Hola mundo" de arduino, para ver si somos capaces de hacer lo mas simple, o requiere demasiado conocimiento en el tema. Me moló mucho la idea, la verdad es que me dieron ganas de comprarme un Arduino y empezar con el jugueteo.
Avatar de Usuario
Veterano
Robot
Nov 2010 | 1484 Mens.

Iván P. @Iván Offline #8
Jaime andres totalmente deacuerdo

a mi lo de la puerta es una chorrada mero tambien me gustó mucho
Imagen
Avatar de Usuario
Veterano
Java
Dic 2010 | 634 Mens.

Pepotis @pepotis Offline #9
Bajaros el IDE de la página e id mirando códigos de ejemplo (Archivo->Ejemplos). Trae unos cuantos y muy ilustrativos.
Básicamente, un programa en Arduino tiene que tener (al menos) dos funciones:
setup(): Se ejecuta al inicializar el micro.
loop(): Como su propio nombre indica, se ejecuta una y otra vez.
Dado que no hay salida por pantalla, el "Hello World" de Arduino es hacer parpadear un link que viene en la propia placa (conectada al pin 13), de hecho, viene con este programa metido de fábrica.
Viene a ser algo tan sencillo como (copy-paste del propio ejemplo):
Código: Seleccionar todo
  1.  
  2. /*
  3.   Blink
  4.   Turns on an LED on for one second, then off for one second, repeatedly.
  5.  
  6.   This example code is in the public domain.
  7.  */
  8.  
  9. void setup() {                
  10.   // initialize the digital pin as an output.
  11.   // Pin 13 has an LED connected on most Arduino boards:
  12.   pinMode(13, OUTPUT);    
  13. }
  14.  
  15. void loop() {
  16.   digitalWrite(13, HIGH);   // set the LED on
  17.   delay(1000);              // wait for a second
  18.   digitalWrite(13, LOW);    // set the LED off
  19.   delay(1000);              // wait for a second
  20. }
  21.  
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.

Pepotis @pepotis Offline #10
Animaros y compraros uno. Mi recomendación es que al menos el primero lo compreis original.
Cuando pillé el mío miré muchos proveedores, y donde lo encontré más barato (y además enviado desde España) fue en Electan (http://electan.com).
Además, tienen un kit que te incluye cables, una protoboard pequeñita, resistencias (para LED y pull-ups), un mini servo, leds (entre ellos uno RGB), un potenciómetro, botones, interruptores... Y es bastante asequible.
Si os juntáis unos cuantos y hacéis un pedido de más de 250 € os hacen un descuento del 10%.
Y si no... Dealextreme los tiene realmente baratos. O si os animáis, os vais a Electroson (en la calle Venezuela) y por cuatro duros tenéis los componentes. Para meterle el bootloader tendríais que compraros un programador, o utilizar el que incorpora la placa comprada (pidiéndomela a mí, por ejemplo xD).
Es un mundo muy muy chulo. Y repito que es una pena que no veáis nada de él antes de decidir especialidad. Al final lo que pasará es que los únicos electrónicos que saldrán de la UVigo serán Industriales. Y es una pena, ya que (y que me perdonen los industriales) la electrónica que vemos nosotros es mucho más bonita.
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.

Alejandro Alonso Rodriguez @Alex Offline #11
Sí. La verdad es que molaria cacharrear un poco e ir entrando en calor de cara a la especialidad :D . Yo me compraré uno ¿Quien se anima a hacer compra conjunta?


POST DE COMPRA ARDUINO UNO PACK:

La idea seria comprar entre minimo 5 personas para que nos hagan descuento en el envio.

http://www.electan.com/arduino-uno-pack ... -3056.html

51,21€

Para envios superiores a 150€ gastos de envio gratuitos.

¿Quien se anima? :)

Compradores [COMPRA CERRADA]:
-Alex
-Jaime
-Rubén (Copérnico)
-Andrés
-sroca

-Zarza
-Gerardo
"Un discurso político tiene que ser como una buena minifalda. Lo suficientemente corto como para llamar la atención, pero lo suficientemente largo como para tapar lo importante"
Google+ || Twitter
Avatar de Usuario
Administrador
Legendario
Nov 2010 | 2053 Mens.

Jaime Alonso Lorenzo @Jaime Offline #12
Yo estoy viéndome como va el tema y a lo mejor me animo :)
Por si alguien quiere ver que trae en concreto el kit que incluyen con el Arduino:
http://www.electan.com/kit-basico-sin-a ... -3042.html
Avatar de Usuario
Administrador
Dios
Nov 2010 | 1880 Mens.

Pepotis @pepotis Offline #13
Ese es exactamente el que tengo yo :D
Avatar de Usuario
Veterano
Diferencial
Ene 2011 | 190 Mens.

Jaime Alonso Lorenzo @Jaime Offline #14
Venga Alex, apúntame :D
Avatar de Usuario
Administrador
Dios
Nov 2010 | 1880 Mens.

Jaime Alonso Lorenzo @Jaime Offline #15
Estoy curioseando por la página oficial de Arduino y sus posibilidades son infinitas, hasta puedes tener un servidor Web.
El lenguaje por lo que veo es clavado a C, así que no problem :)
Avatar de Usuario
Administrador
Dios
Nov 2010 | 1880 Mens.

Volver a Arduino