Está en la página 1de 8

Introduccion

[editar] Qu es Arduino?
Arduino es una plataforma de hardware abierto basada en los microcontroladores AVR de ATMEL. Se trata de una sencilla placa con entradas y salidas (E/S) analgicas y digitales que incluye un entorno de desarrollo que implementa el lenguaje Processing/Wiring. Originalmente estaba pensada para el desarrollo de proyectos artsticos y entornos interactivos, pero debido a su versatlidad y facilidad de uso, se est usando en muchos otros proyectos, incluyendo cada vez ms robots.

[editar] Para qu sirve Arduino?


En la robtica, podemos usar Arduino de 2 formas:

Arduino usarse como "cerebro" de nuestro robot, ejerciendo de controlador y coordinador del resto de partes del robot. Si queremos usar un ordenador ms potente (o un porttil) como cerebro, Arduino puede servir como interfaz de control entre el ordenador y el resto de partes del robot.

[editar] Tipos de tarjetas


Existen varios modelos de tarjetas arduino, cada una tiene un tipo de interconexin con nuestro ordenador:

Tarjeta serie Tarjeta USB Tarjeta Bluetooth

La ms habitual y sencilla de usar es la tarjeta USB.

[editar] Instalacin
Para comenzar a utilizar arduino slo necesitamos seguir los siguientes pasos:

Instalar el IDE adecuado a nuestro sistema operativo. La ltima versin se puede obtener en la pgina de arduino. Conectar la placa arduino a nuestro ordenador y alimentarla. Si estamos usando una tarjeta usb, basta con conectarla a un puerto usb libre.

[editar] Instalacin del IDE en Windows


Para que el IDE de arduino funcione, necesitamos tener instalado el Java Runtime Enviroment (J2RE). Se puede descargar de pgina web de Sun y se instala siguiendo las instrucciones indicadas. Despus hay que descargar la ltima versin del IDE Arduino, que se puede obtener de la pgina web de arduino y seguimos los siguientes pasos: 1) Descomprimir el fichero zip dnde queramos que quede instalado el IDE. 2) Instalar los drivers USB. Si hemos instalado el IDE en la carpeta c:\ los drivers USB estarn en: c:\arduino-0012\drivers Estos drivers son necesarios para el funcionamiento de Arduino en Windows. Para hacer la instalacin de los drivers hay que seguir estos pasos: - Conectar la placa arduino a un puerto USB libre de nuestro ordenador. - Se abrir automticamente el asistente de windows para nuevo hardware encontrado - Seleccionar "No por el momento" y presionar "Siguiente" - Seleccionar "Instalar desde una lista o ubicacin especfica (avanzado)" y presionar "Siguiente" - Seleccionar "Buscar el controlador ms adecuado en estas ubicaciones" presiona "Examinar" y seleccionar la carpeta donde hayas descomprimido el driver y presiona "Siguiente". 3) Abrir el IDE Arduino. Slo tenemos que ejecutar el fichero Arduino.exe. Tan slo hay que configurar el puerto USB al que tenemos conectado nuestra placa arduino y seleccionar el modelo de tarjeta apropiado.

[editar] Primeros pasos


[editar] Carga del primer programa en la tarjeta

1) Ide de arduino 1) ste es el aspecto del ide de arduino al iniciarlo. En este caso est cargado uno de los ejemplos incluidos en el ide, el ejemplo "blink".

2) Seleccin de tarjeta 2) Antes de cargar nuestro el programa de prueba, debemos seleccionar el tipo de tarjeta que tenemos, cmo se muestra a la derecha.

3) seleccin de puerto serie 3) A continuacin seleccionamos el puerto serie al que hemos conectado nuestra tarjeta.

4) carga de un programa 4) Por ltimo, pulsamos en "Upload to I/O board" dentro de "File" y nuestro programa se cargar en la tarjeta.

[editar] Ejemplos de Arduino


El ejemplo ms sencillo, al igual que con cualquier lenguaje de programacin, es construir un hola mundo. En el caso de Arduino, podemos escribir un hola mundo "fsico" que haga parpadear un led de la placa. Con este pequeo programa podemos familiarizarnos con la funcionalidad bsica del entorno y que nuestra placa funciona correctamente.

[editar] Hola Mundo con Delay


1. /** 2. * Archivo: HelloWorldDelay.c 3. * Descripcin: Hola mundo con delay (led) 4. * Autores: Boops y Gizer20 5. * Asociacin de Robtica y Domtica de Espaa (A.R.D.E.) 6. * http:\\www.webdearde.com 7. * Revisiones: 8. * +RRR+ AAAA/MM/DD Nombre Descripcin 9. * -----------------------------------------10. * +001+ 2009/02/23 Ranganok Modificada cabecera 11. */ 12. 13. int Led = 13; // Pin de la placa arduino donde se conecta el led. 14. 15. void setup() // Funcion para inicializar los pines de la placa 16. { 17. pinMode(Led, OUTPUT); // Asignamos la variable Led ,que corresponde al pin 13,como salida 18. } 19. 20. void loop() //Iniciamos lo que es propiamente el programa

21. { 22. digitalWrite(Led, HIGH); encender el led 23. delay(500); 24. digitalWrite(Led, LOW); apagar el led 25. delay(500); 26. }

// Ponemos a 1 el pin 13 para // esperamos medio segundo // Ponemos a 0 el pin 13 para // esperamos medio segundo

[editar] Hola Mundo sin Delay


1. /** 2. * Archivo: HelloWorldNoDelay.c 3. * Descripcin: Hola mundo sin delay (led) 4. * En este ejemplo utilizaremos la funcion milis() para hacer parpadear el led. 5. * Esta funcion nos devuelve un long con el tiempo que el codigo ha estado funcionando y se resetea aproximadamente a los 50 dias. 6. * Autores: Boops y Gizer20 7. * Asociacin de Robtica y Domtica de Espaa (A.R.D.E.) 8. * http:\\www.webdearde.com 9. * Revisiones: 10. * +RRR+ AAAA/MM/DD Nombre Descripcin 11. * -----------------------------------------12. * +001+ 2009/02/23 Ranganok Modificada cabecera 13. */ 14. 15. int led = 13; // LED conectado al pin digital 13 16. int estado = LOW; // estado del led 17. long millisanteriores = 0; // guarda el ultimo intante del led ON 18. long intervalo_parpadeo = 1000; // intervalo de parpadeo del led en milisegundos 19. 20. void setup() 21. { 22. pinMode(led, OUTPUT); // configura el pin 13 (led==13) como salida digital 23. } 24. 25. void loop() // codigo del programa a ejecutar 26. {

27.

if (millis() - millisanteriores > intervalo_parpadeo) //compara los milisegunos anteriores con los actuales 28. //y si estos son mas grandes de 1000 (variable intervalo) activa el led 29. { 30. millisanteriores = millis(); //actualizamos el valor de los milisegundos 31. 32. if (estado == LOW) //si esta apagado , lo encendemos 33. { 34. estado = HIGH; 35. } 36. else 37. { 38. estado = LOW; //si esta encencido lo apagamos 39. } 40. digitalWrite(led, estado); //activamos o desactivamos el led 41. } 42. }

[editar] Coche Fantastico


1. /** 2. * Archivo: FantasticCar.c 3. * Descripcin: Coche Fantastico 4. * Autores: Boops y Gizer20 5. * Asociacin de Robtica y Domtica de Espaa (A.R.D.E.) 6. * http:\\www.webdearde.com 7. * Revisiones: 8. * +RRR+ AAAA/MM/DD Nombre Descripcin 9. * -----------------------------------------10. * +001+ 2009/02/23 Ranganok Modificada cabecera 11. */ 12. 13. int timer = 100; 14. int pins[] = { 2, 3, 4, 5, 6, 7, 8 }; 15. int num_pins = 7; 16. 17. void setup() 18. { 19. int i; 20. for (i = 0; i < num_pins; i++)

21.

pinMode(pins[i], OUTPUT); // se declara cada pin del array pins[] como salida 22. } 23. void loop() 24. { 25. int i; 26. 27. 28. for (i = 0; i < num_pins; i++) // bucle que pasa por cada pin del array 29. { 30. digitalWrite(pins[i], HIGH); // enciende el led correspondiente, 31. delay(timer); 32. digitalWrite(pins[i], LOW); // y apaga el led encendido antes 33. } 34. 35. for ( i = num_pins-1; i > 0 ; i--) 36. { 37. digitalWrite(pins[i], HIGH); 38. delay(timer); 39. digitalWrite(pins[i], LOW); 40. } 41. }

[editar] PWM con led


1. /** 2. * Archivo: LedPWM.c 3. * Descripcin: LEDs con Pulse Width Modulation(PWM) 4. * Autores: Boops y Gizer20 5. * Asociacin de Robtica y Domtica de Espaa (A.R.D.E.) 6. * http:\\www.webdearde.com 7. * Revisiones: 8. * +RRR+ AAAA/MM/DD Nombre Descripcin 9. * -----------------------------------------10. * +001+ 2009/02/23 Ranganok Modificada cabecera 11. */ 12. 13. int led = 11; // Pin digital PWM 14. int time = 5; 15. int pulsewidth; // define la variable pulsewidth (0-255)

16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.

void setup() { } void loop() { // Subida del led for (pulsewidth=0; pulsewidth <= 255; pulsewidth++){ analogWrite(led, pulsewidth); delay(time); } // Bajada del led for (pulsewidth=255; pulsewidth >= 0; pulsewidth--){ analogWrite(led, pulsewidth); delay(time); } }

[editar] Enlaces relacionados


[editar] Tutoriales

"Arduino Programming Notebook" en Castellano (traducido por Rafael Enriquez Salvador), y el cdigo fuente (.tar.gz) Tutorial de Arduino.

[editar] Aplicaciones

theP. Una propuesta entertainment fcil de implementar

Obtenido de http://wiki.webdearde.com/index.php?title=Tutorial:_Comenzando_con_Arduino&oldid= 5012 Categora:

Tutorial

También podría gustarte