Tutorial Ba%cc%81sico Arduino 2010[1]

Post on 19-Jun-2015

422 views 2 download

Transcript of Tutorial Ba%cc%81sico Arduino 2010[1]

ArduinoUn tutorial básico

Antes de comenzar•Descarga el programa de

www.arduino.cc

•Descomprime la carpeta

•Conecta el Arduino

•Instala los drivers FTDI

•Anota el puerto COM del Arduino

Introducción•Arduino es un microcontrolador

•Suele denominarse como “computación física”

•Está basado en el micro ATMEGA328

•Se programa en C (con algunas variantes)

Historia

•Es el sucesor de Wiring, de Héctor Barragán

•http://wiring.uniandes.edu.co

El hardware•Es un sistema mínimo sofisticado

•Tiene un convertidor TTL a USB (el chip FTDI)

•Tiene un cristal de 16 MHz

•Un switch de reset (y se puede resetear por software)

•Puede alimentarse externamente

Las prestaciones• Salidas digitales (son 14 o 20)

• Salidas análogas (son 6, usan PWM)

• Entradas digitales (puedes activar una resistencia de pull-up desde el software)

• Entradas análogas (son 6, 10 bits resol.)

• Comunicación serial (pin 0 y pin 1, Rx, Tx)

Los shields

•Son placas de circuito que expanden las posibilidades del Arduino incluyendo funciones que no trae originalmente

El software•El IDE (entorno de desarrollo) está

basado en Processing (programado en Java)

•La versión actual (feb 2010) es la 0018

•Existen librerías para un número grande de aplicaciones y dispositivos

Sketches•Son los programas de Arduino

•Para las personas que han trabajado en otras plataformas puede ser confuso utilizar el término sketches, ya que generalmente se conoce como programa, firmware o código

•Se fomenta la curiosidad y la investigación -- tinkering

Comunicación•Para el hardware es un puerto

serial

•El software lo recibe como un puerto virtual

•Cualquier lenguaje de programación que pueda mandar/recibir datos seriales puede interactuar con el Arduino

Sensores y actuadores

•El Arduino recibe señales externas a través de sensores

•El Arduino se relaciona con el mundo a través de actuadores

•El comportamiento lo define el código

Primer ejercicio

•Abra el sketch en File > Examples > Digital > Blink

•Verifique que en el menú Tools esté seleccionado correctamente el puerto COM y el modelo de Arduino

Cont.•Cargue el programa con el

comando localizado en File > Upload to IO Board

•Observe que al cargarse parpadean los LEDs Tx y Rx

•Modifique el código para que el LED parpadee rápido. Suba el código.

Para pensar / discutir

•Trata de describir qué hace cada línea del código del programa Blink

•¿Qué aplicaciones puede tener esta función?

•Un parpadeo lento vs. uno rápido pueden emplearse para diferentes fines. ¿Cuáles se te ocurren?

Ejercicio 2

•Ahora vamos a activar el LED respondiendo a la señal de un botón

•Coloque un pushbutton en un protoboard

•Switch: 5V, pin 2, R de tierra a Sw

cont.

•Cargue el programa ubicado en File > Examples > Digital > Button

•Observe el comportamiento del LED al presionar el botón

•Invierta el comportamiento

Para pensar / discutir

•Prender un LED con un botón puede parecer trivial o un desperdicio de tecnología si puede realizarse sin utilizar un microcontrolador

•¿Por qué entonces hicimos este ejercicio?

Ejercicio 3: PWM

•Vamos a implementar una salida análoga

•Conecta un LED al pin 9, una R de 330 y a tierra

•Cargar el programa File > Examples > Analog > Fading

cont.

•El programa hará que el LED se encienda gradualmente y luego se apague igual

•Revise el código y cambie la velocidad a la cuál se realiza el desvanecimiento

Ej4: entrada analógica

•Conecta un potenciómetro como divisor de voltaje, un lado a 5V, otro a tierra y el central al pin análogo 0

•Carga el programa de File > Examples > Analog > Analog Input

ej4. cont.

•El programa debe hacer parpadear el LED del Arduino a una velocidad que depende de la posición del potenciómetro

Ejercicios avanzados•Con lo aprendido en el ejercicio 1

construye un semáforo (tiempo y secuencia adecuado)

•Implementa debouncing para el ejercicio 2

•Ahora modifica el semáforo para que siempre esté en verde a menos que un peatón presione el botón de cruce

Ej. avanzados (cont.)•El PWM del ejercicio 3 puede

usarse para modificar la velocidad de un motor. Conecta un TIP29A que reciba PWM y modifique la velocidad de un motor

•Envia por serial el valor del potenciómetro del ejercicio 4 hacia Processing y graficar la señal

Ej. avanzados (cont.)

•En vez de utilizar un potenciómetro en el ejercicio 4 haz la misma función con un divisor de voltaje donde una de las resistencias sea una fotorresistencia

Ej. avanzados (cont.)

•Conecta un sensor de temperatura LM35 a la entrada análoga 0 (como en ej. 4) y utilízalo para activar un motor al llegar a cierta temperatura

Ej. avanzados (cont.)

•Lee datos análogos o digitales y envíalos serialmente hacia la computadora. Recíbelos con Flash, Processing, PD y representa visualmente los cambios recibidos