Post on 03-Feb-2016
transcript
Elaborado por Esteban Agüero22/04/23 1
Computación física conArduino y Firefly
Esteban Agüero (Valparaíso, Abril 2014)
Ejercicio 2: Desvanecimiento de LEDTaller de Métodos Computacionales en Arquitectura — ARQ331
Elaborado por Esteban Agüero22/04/23 2
FadeYa conectamos el LED a una salida digital, que nos permite escribir
valores 1 y 0 para encender y apagar el LED. Ahora vamos a probar una
de las salidas digitales con PWM para atenuar y aumentar la intensidad
de un LED.
Basado en los ejercicios publicados en:
BANZI, M. 2009. Getting started with Arduino, Sebastopol, USA, O’Reilly
Media / Make.
JONHSON, J. K.; PAYNE, A. 2011. Firefly Primer - Version 1.006. [Online]
Available in http://fireflyexperiments.com
Elaborado por Esteban Agüero
Componentes
22/04/23 3
Arduino UNOx1
LEDx1
Resistencia 330 Ohm x1
Cablesx3
Breadboardx1
Para este ejercicio necesitarás:
Elaborado por Esteban Agüero
Esquema
22/04/23 4
En este caso conectaremos el LED
al PIN digital 9 con PWM.
Elaborado por Esteban Agüero
PWM
22/04/23 5
Significa modulación por ancho de
pulso y es una técnica para simular
una salida analógica con una salida
digital. Fuente: http://arduino.cc/es/Tutorial/PWM
Elaborado por Esteban Agüero
PWM
22/04/23 6
Una señal PWM es una onda digital
cuadrada, donde la frecuencia es
constante y, por lo tanto, el tiempo de
ciclo o período. Sin embargo, la fracción
de tiempo en que la señal está
encendida con respecto al tiempo de
ciclo (el ciclo de trabajo, o duty cycle,
en inglés) puede variar entre el 0 y el
100%. Fuente: http://arduino.cc/es/Tutorial/PWM
Elaborado por Esteban Agüero
PWM
22/04/23 7
En las salidas digitales PWM el
rango de valores de salida va desde
0 hasta 255.
0 se correspondería con un ancho
de pulso del 0% del periodo (0V), y
255 se correspondería con un ancho
de pulso del 100% del periodo (5V).Fuente: http://rduinostar.com/tutoriales/tutorial-4-salidas-digitales-pwm-
led/
Elaborado por Esteban Agüero22/04/23 8
Montaje
1.
Montar el LED sobre la
“breadboard”, siguiendo el
esquema.
El cátodo (-) del LED se conecta
a un resistor y éste a tierra
(GND, ground en inglés). El
ánodo (+) del LED se conecta al
PIN 13 de Arduino.
Elaborado por Esteban Agüero22/04/23 9
Implementación
2.3.
Con el cable USB conecta Arduino al
computador
Para controlar Arduino desde Firefly, es
necesario cargar el Firmata mediante el
entorno Arduino IDE.
Elaborado por Esteban Agüero22/04/23 10
3.1.3.1.
Abre el entorno de programación Arduino
IDE.
En “Barra de herramientas” pulsa “Archivo >
Sketchbook” y selecciona “Firefly_Firmata”
Elaborado por Esteban Agüero22/04/23 11
3.2.3.3.
En “Barra de herramientas” pulsa
“Herramientas>Tarjeta” y selecciona
“Arduino UNO”
En “Barra de herramientas” pulsa
“Herramientas>Puerto Serial” y selecciona
el “Puerto COM” más alto disponible.
Elaborado por Esteban Agüero
En la barra de íconos
superior están dos de las
acciones más recurrentes:
Verificar
Cargar
22/04/23 12
3.4.
Carga el programa.
Pulsa “Verificar” y “Cargar”
Elaborado por Esteban Agüero22/04/23 13
4. Iniciar Grasshopper, tipeando el nombre de
esta aplicación en la “Barra de comandos”
de Rhinoceros®.
Elaborado por Esteban Agüero22/04/23 14
Arrastra el componente Open Port
(Firefly/Arduino & I/O Boards/Open
Port) al área de trabajo.
5. Copia la programación en
el área de trabajo de
Grasshopper.
Elaborado por Esteban Agüero22/04/23 15
Arrastra el componente COM Ports
Available (Firefly/Arduino & I/O
Boards/COM Ports Available) al área de
trabajo.
Elaborado por Esteban Agüero22/04/23 16
Arrastra Boolean Toggle
(Params/Input/ Boolean Toggle) al
área de trabajo.
Elaborado por Esteban Agüero22/04/23 17
Arrastra el componente Fader One
Way (Firefly/Utility/ Fader One
Way) al área de trabajo.
Elaborado por Esteban Agüero22/04/23 18
Arrastra Integer (Params/Primitive/
Integer) al área de trabajo.
Elaborado por Esteban Agüero22/04/23 19
Arrastra Timer (Params/Util/Timer)
al área de trabajo.
Elaborado por Esteban Agüero22/04/23 20
Haz click derecho en Timer y
establece el intervalo en 50 ms.
Elaborado por Esteban Agüero22/04/23 21
Arrastra el componente Uno Write
(Firefly/ Arduino & I/O Boards/Uno
Write) al área de trabajo.
Elaborado por Esteban Agüero22/04/23 22
Arrastra Boolean Toggle
(Params/Input/ Boolean Toggle) al
área de trabajo.
Elaborado por Esteban Agüero22/04/23 23
Haz click derecho en DPin11~ y
selecciona el modo PWM.
Elaborado por Esteban Agüero
¡Prueba!
22/04/23 24
5.Prueba el programa
reemplazando el valor
False por True en cada
componente Conmutador
(Toggle, en inglés).
Elaborado por Esteban Agüero22/04/23 25
1.
2.
Implementación en Arduino
Abre el entorno de programación Arduino
IDE.
En “Barra de herramientas” pulsa
“Archivo>Ejemplos>01.Basics” y selecciona
“Fade”.
Elaborado por Esteban Agüero22/04/23 26
3.¡Prueba!
Carga el programa. Para ello en la barra
superior pulsa “Verificar” y “Cargar”.
Elaborado por Esteban Agüero22/04/23 27
Contacto
Esteban Agüeroesteban.aguero@alumnos.usm.cl
Luis Felipe González BöhmeProfesor instructorUniversidad Técnica Federico Santa MaríaDepartamento de Arquitectura
Teléfono: 56 (0)32 2654773Fax: 56 (0)32
2654108Email: luisfelipe.gonzalez@usm.clUrl: www.arq.utfsm.clDirección: Avda. España 1680Casilla: 110-VCódigo postal: 2390123 Valparaíso - Chile