ARDUINO
Universidad tecnolgica del cono sur de Lima
UNIVERSIDAD TECNOLOGICA DEL CONO SUR DE LIMA
Proyecto Arduino
Nace en 2005. David Cuartielles y Massimo Banzi. Problemas existentes: o Limitacin tecnolgica: El usuario no es experto. Las plataformas existentes son muy complejas, especializadas o cerradas. o Limitacin econmica: El usuario final cambia: particulares, equipos docentes, entidades sin nimos de lucro, ... Solucin: Crear una propia plataforma. Filosofa OpenSource. Compartir conocimiento.
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Origen del Nombre
Su nombre viene del nombre del bar Bar di Re Arduino donde Massimo Banzi pasaba algunas horas, el cual a su vez viene del nombre de un antiguo rey europeo all por el ao 1002.
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Sistema electrnico
Un sistema electrnico toma informacin de una magnitud externa de un sistema fsico, la transforma en una seal elctrica (sensor), la procesa y genera otra seal, de la magnitud que corresponda, que acta sobre el sistema fsico
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Entradas, procesamiento, salidas
S E C
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Wiring y Processing
El hardware Wiring es un pequeo circuito que incluye un diminuto computador del tamao de una estampilla conocido como microcontrolador. Este computador puede ser programado en el entorno de programacin Wiring para controlar toda clase de sensores y actuadores.
Processing es un lenguaje de programacin de cdigo abierto y el medio ambiente para las personas que desean crear imgenes, animaciones e interacciones.
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Placas
Hardware Hay multitud de diferentes versiones de placas Arduino. El Duemilanove, usa Atmel ATmega328 . La anterior Diecimila, y las primeras unidades de Duemilanove usaban el Atmel ATmega168 , mientras que las placas mas antiguas usan el ATmega8 . El Arduino Mega esta basado en el ATmega1280.
Arduino ADK
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
PLACAS CLONES
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Shields
Shield Xbee - Este shield permite conectar inalmbricamente varios Arduino a distancias de 100 pies en edificios y 300 pies en el exterior usando el mdulo Maxstream Xbee Zigbee. Shield Motores- Este shield permite a Arduino controlar motores elctricos de corriente continua, servos y motores paso a paso y leer encoders. Mas info Shield Ethernet - Este shield permite a una placa Arduino conectarse a una red Ethernet y tener acceso a y desde Internet
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
APLICACIONES
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Aplicaciones: Arte Digital
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Aplicaciones: Android
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
HARDWARE
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino Uno
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino Uno
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino - Alimentacin
Dos alternativas: Puerto USB. Regulador de tensin: 5 a 15 V
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino - Alimentacin
3V3 3,3 voltios 5V 5 voltios GND 0 voltios Vin Voltaje de alimentacin externa AREF Voltaje de referencia para entradas analgicas
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino E/S
14 (hasta 20) pines de E/S digitales. 6 entradas analgicas . 6 salidas analgicas (PWM).
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino - Comunicaciones
Puerto serie: Rx/Tx ICSP. Puerto USB. (FTDI/Atmega 8U2)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Placa Arduino - Varios
Botn de reset. Reloj a 16/20 Mhz. Microcontrolador Atmega328. Bootloader.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Introduccin Resumen: Uno
Especificaciones: Microprocesador ATmega328 Tensin operativa 5V Tensin de alimentacin (recomendado) 7-12V Tensin de alimentacin (limites) 6-20V 14 Entradas/Salidas Digitales (6 de estas se pueden utilizar para salidas PWM) 6 Entradas Analgicas Mxima corriente continua para las entradas: 40 mA Mxima corriente continua para los pines 3.3V: 50 mA Flash Memory 32 KB (el bootloader usa 0.5 KB). SRAM 2 KB EEPROM 1 KB Velocidad del Clock 16 MHz Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
El entorno IDE
Descarga de la ltima versin:[Link]
Instalacin en el PC: Windows: Drivers + descomprimir y ejecutar. Linux: Descomprimir el paquete y ejecutar. MAC: Drivers + descomprimir y ejecutar
Gua: rpida:[Link] aRapida
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
El entorno Arduino (IDE)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
El entorno Arduino (IDE): Placa
Tools -> Board: Seleccionar el tipo de placa.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
El entorno Arduino (IDE): Puerto
Mi Pc -> Administrar -> Administrador de dispositivos -> Puertos (COM & LPT) . Tools -> Serial Port -> Seleccionar el puerto al que est conectada la placa.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
El entorno Arduino (IDE): Bloques
Bloque 0 Comentarios (OPCIONAL) Bloque 1 Declaracin de las variables que vamos a utilizar. Bloque 2 Configuracin inicial del programa. Bloque 3 Bucle infinito que contiene el conjunto de instrucciones que se repiten constantemente.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Digitales
Los pines digitales se pueden emplear como salidas o entradas digitales, es decir, se puede escribir niveles altos (5V) o bajos (0V) de tensin a cada uno de los pines y viceversa, excepto los pines 0 (TX) y 1 (RX) que se emplean para la comunicacin serie o comunicacin de Arduino con otros dispositivos. Comandos bsicos: pinMode(pin, modo), sirve para declarar un pin digital como entrada (INPUT) o como salida (OUTPUT). Los pines analgicos son, por defecto,de entrada. delay(tiempo), sirve para parar los procesos de la placa durante tiempo milisegundos y delayMicroseconds(tiempo) sirve para parar los procesos de la placa durante tiempo microsegundos. digitalWrite(pin, valor),sirve para escribir un valor al pin digital, el valor podr ser 1 lgico (HIGH=5v) o 0 lgico (LOW=0v) . setup() es la funcin de configuracin de los pines de Arduino y slo se ejecuta una vez, mientras que loop() se ejecuta una y otra vez hasta que apaguemos el sistema, o se gasten las bateras. Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Digitales- Encender LEDs
Componentes: Diodo LED, polaridad, pata positiva la ms larga, regla mnemotcnica del tringulo, transforma la electricidad en luz (actuador). Para que no se funda, debe ir acompaado por una resistencia.
PIN13, tiene una resistencia por defecto para poder colocar un LED directamente. Es el que se utiliza en el ejemplo bsico : blink. Para ello debemos acceder a travs del men File --> Sketchbook - -> Examples --> Digital --> Blink (Parpadeo de un led conectado al pin13)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Digitales-Encender LEDs
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Entradas Digitales
Comandos bsicos: digitalRead(pin),sirve para leer un valor del pin digital que sealemos, el valor podr ser 1 lgico (HIGH=5v) o 0 lgico (LOW=0v)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Entradas Digitales - Pulsador
int ledPin = 13; // PIN del LED int inPin = 10; // PIN del pulsador int value = 0; // Valor del pulsador void setup() { pinMode(ledPin, OUTPUT); // Inicializa el pin 13 como salida digital pinMode(inPin, INPUT); // Inicializa el pin 10 como entrada digital } void loop() { value = digitalRead(inPin); // Lee el valor de la entrada digital digitalWrite(ledPin, value); } Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Entradas Analgica
Los pines analgicos se emplean como entradas analgicas, es decir, se puede recibir tensiones entre 5V y 0 voltios. Los pines analgicos, al contrario que los pines digitales, no necesitan ser declarados como modo INPUT (entrada) o OUTPUT (salida). Conversin analgico-->digital(ADC) en Arduino: consiste en transformar un valor de tensin en un nmero que pueda ser comprendido por un dispositivo de lgica digital. Arduino puede convertir tensiones de 0 a 5 voltios en nmeros enteros que van del 0 al 1023. En otras palabras representa la informacin en nmeros de 10 bits (resolucin). Comandos bsicos: analogRead(pin), Lee o captura el valor de entrada del especificado pin analgico, la tarjeta Arduino realiza una conversin analgica a digital de 10 bits. Esto quiere decir que mapear los valores de voltage de entrada, entre 0 y 5 voltios, a valores enteros comprendidos entre 0 y 1023.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Entradas Analgica - Potencimetro
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
ADUINO
Entradas Analgica - Potencimetro
int ledPin = 13; // LED conectado a pin digital 13 int analogPin = 3; // potentimetro conectado a pin analgico 3 int val = 0; // variable para almacenar el valor capturado int threshold = 512; // valor de disparo o umbral (1024/2) void setup() { pinMode(ledPin, OUTPUT); // asigna modo salida el pin digital 13 } void loop() { val = analogRead(analogPin); // captura el pin de entrada if (val >= threshold) { digitalWrite(ledPin, HIGH); // enciende el LED } else { digitalWrite(ledPin, LOW); // apaga el LED } }
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Analgicas - PWM
El chip Atmega de Arduino, como muchos microcontroladores, no puede generar una salida analgica, por lo que tiene que utilizar la tcnica PWM (Pulse Width Modulation). PWM consiste en simular mediante una salida digital un salida analgica. Tres caractersticas de las seales PWM:Altura (heigth) Anchura (width) Periodo (period)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Analgicas - PWM
El chip Atmega de Arduino, como muchos microcontroladores, no puede generar una salida analgica, por lo que tiene que utilizar la tcnica PWM (Pulse Width Modulation). PWM consiste en simular mediante una salida digital un salida analgica. Tres caractersticas de las seales PWM:Altura (heigth) Anchura (width) Periodo (period)
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA
Salidas Analgicas
Arduino dispone de varios pines para generar salidas PWM, a travs algunos de los pines digitales. Dependiendo del modelo de la placa y sobre todo del chip Atmega de que disponga la placa tendremos 3 o 6 salidas PWM, que estn marcadas en la placa: Arduino serie, Arduino NG (chip Atmega8) 3 pines digitalesparaPWM: 9, 10 y 11. Arduino NG (chip Atmega168), Arduino Diecimilla 6 pines digitalesparaPWM: 3, 5, 6, 9, 10 y 11.
A diferencia de las entradas analgicas, en las que el conversor analgico digital nos daba un valor entre 0 y 1023, para generar una salida digital el rango es de 0 a 255. Donde 0 equivale a 0V y 255 a 5V Los pines analgicos, al contrario que los pines digitales, no necesitan ser declarados como modo INPUT(entrada) o OUTPUT (salida). Comandos bsicos: analogWrite(pin, value), Escribe el valor especificado en el pin PWM correspondiente. Dicho valor, como se ha mencionado, tiene que estar entre 0 y 255.
Fuente. MediaLab
UNIVERSIDAD TECNOLOGICA DEL CONO UNIVERSIDAD TECNOLOGICA SUR DEL CONO SUR DE LIMA