Upload
gilberto-alvarado
View
47
Download
2
Embed Size (px)
Citation preview
Arduino
Un tutorial bsico
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
Introduccin
Arduino es un microcontrolador
Suele denominarse como computacin fsica
Est basado en el micro ATMEGA328
Se programa en C (con algunas variantes)
El hardware
Es un sistema mnimo 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 anlogas (son 6, usan PWM)
Entradas digitales (puedes activar una resistencia de pull-up desde el software)
Entradas anlogas (son 6, 10 bits resol.)
Comunicacin 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)
Existen libreras para un nmero 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 trmino sketches, ya que generalmente se conoce como programa, firmware o cdigo
Se fomenta la curiosidad y la investigacin -- tinkering
Comunicacin
Para el hardware es un puerto serial
El software lo recibe como un puerto virtual
Cualquier lenguaje de programacin que pueda mandar/recibir datos seriales puede interactuar con el Arduino
Sensores y actuadores
El Arduino recibe seales externas a travs de sensores
El Arduino se relaciona con el mundo a travs de actuadores
El comportamiento lo define el cdigo
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 cdigo para que el LED parpadee rpido. Suba el cdigo.
Para pensar / discutir
Trata de describir qu hace cada lnea del cdigo del programa Blink
Qu aplicaciones puede tener esta funcin?
Un parpadeo lento vs. uno rpido pueden emplearse para diferentes fines. Cules se le ocurren?
Ejercicio 2
Ahora vamos a activar el LED respondiendo a la seal de un botn
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 botn
Invierta el comportamiento
Para pensar / discutir
Prender un LED con un botn puede parecer trivial o un desperdicio de tecnologa si puede realizarse sin utilizar un microcontrolador
Por qu entonces hicimos este ejercicio?
Ejercicio 3: PWM
Vamos a implementar una salida anloga
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 cdigo y cambie la velocidad a la cul se realiza el desvanecimiento
Ej4: entrada analgica
Conecta un potencimetro como divisor de voltaje, un lado a 5V, otro a tierra y el central al pin anlogo 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 posicin del potencimetro
Ejercicios avanzados
Con lo aprendido en el ejercicio 1 construye un semforo (tiempo y secuencia adecuado)
Implementa debouncing para el ejercicio 2
Ahora modifica el semforo para que siempre est en verde a menos que un peatn presione el botn 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 potencimetro del ejercicio 4 hacia Processing y graficar la seal
Ej. avanzados (cont.)
En vez de utilizar un potencimetro en el ejercicio 4 haz la misma funcin 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 anloga 0 (como en ej. 4) y utilzalo para activar un motor al llegar a cierta temperatura
Ej. avanzados (cont.)
Lee datos anlogos o digitales y envalos serialmente hacia la computadora. Recbelos con Flash, Processing, PD y representa visualmente los cambios recibidos