Вы находитесь на странице: 1из 26

Arduino

Un 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

Вам также может понравиться