View
424
Download
2
Category
Preview:
Citation preview
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
Recommended