Evaluación 1 AO g2
Título | Evaluación 1 AO g2 |
---|---|
Asignatura | Interacción y Performatividad |
Del Curso | Interacción y Performatividad 2019 |
Carreras | Diseño |
Nº | 1 |
Alumno(s) | Tomás Vergara, María Jesús Ossandón, Gonzalo Rojas, Silvana Sarrocchi, Matías Rubio |
Evaluación 1 AO
Qué es un arduino
Arduino es una plataforma de desarrollo basada en una placa electrónica de hardware libre que tiene un microcontrolador re-programable y una serie de pines que permiten establecer conexiones entre el microcontrolador y los diferentes sensores y actuadores.
(http://arduino.cl/que-es-arduino/)
Descripción de la evaluación
En el siguiente registro se muestran las operaciones realizadas para programar a través del programa Arduino desde el computador, los pasos, los errores y los resultados. Las tareas específicas fueron las siguientes:
Crear un programa en Arduino que cumpla los siguientes requerimientos_
1. Encienda 5 leds con un patrón a definir por el alumno.
2. Encienda 3 leds con efecto "degradé" o "fade".
3. Encienda 1 led RGB con el que debe pasar por los 3 colores principales.
Primera aproximación
Como primera aproximación en clases programamos y probamos diferentes tipos de códigos, resultando en la realización de las tres tareas por separado, cada uno de los requerimientos: 5 led alternados, 3 led con fade y 1 led RGB.
Programación
Registro
Programación I: 5 leds con un patrón
A través de la programación del programa Arduino se deben encender cinco luces led con un patrón definido por el grupo. E este caso se trabaja a partir del ejemplo básico "fade".
Orden del circuito
Para partir se realiza una conexión a través de un cable que irá desde el punto GND (ground) a un punto de entrada de la Proto Board específico, donde se conectarán tres cables más en la misma columna, para que la energía del GND se replique en los tres cables. Estos tres serán la fuente que llegará a las luces led.
Serán solamente tres cables que darán la corriente del GND debido a que dos de esos cables encenderán dos luces en paralelo, no se necesitarán dos cables extra.
Es importante tener en cuenta que la luz led tiene dos patas que van en dos entradas del Proto Board, la entrada de una de esas patas debe estar en la misma fila que la Resistencia, y la otra debe estar en la misma fila que el cable GND. Gracias a la Resistencia y al GND la luz led tiene la energía para encender.
Programación
La siguiente programación muestra las tres tareas requeridas en la evaluación al mismo tiempo.
Programación II: 3 leds con efecto "fade"
Orden del circuito
Programación
Programación VI: 1 led RGB y sus 3 colores principales
Orden del circuito
Programación
Código
int led1 = 2; // the PWM pin the LED is attached to int led2 = 6; int led3 = 3; int led4 = 5; int rled = 12; int bled = 10; int gled = 9; int i; int repeat = 5; int brightness1 = 0; // how bright the LED is int fadeAmount1 = 5; // how many points to fade the LED by int brightness2 = 0; int fadeAmount2 = 5; int brightness3 = 0; int fadeAmount3 = 5; int brightness4 = 0; int fadeAmount4 = 5; void setup() { pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); pinMode(rled, OUTPUT); pinMode(bled, OUTPUT); pinMode(gled, OUTPUT); } void loop() { analogWrite(led1, brightness1); analogWrite(led3, brightness3); digitalWrite(led2, LOW); digitalWrite(led4, LOW); delay (500); int fadeAmount1 = 5; analogWrite (led1, HIGH); delay (10); int fadeAmount3 = 5; analogWrite (led3, LOW); delay (500); digitalWrite(led1, HIGH); digitalWrite(led3, HIGH); delay (10); brightness2 = brightness2 + fadeAmount2; brightness4 = brightness4 + fadeAmount4; analogWrite(led2, brightness2); analogWrite(led4, brightness4); digitalWrite(led2, LOW); digitalWrite(led4, LOW); delay (10); int fadeAmount2 = 5; analogWrite (led2, HIGH); delay (10); int fadeAmount4 = 5; analogWrite (led4, HIGH); delay (10); digitalWrite(led2, HIGH); digitalWrite(led4, HIGH); delay (10); brightness2 = brightness2 + fadeAmount2; brightness4 = brightness4 + fadeAmount4; for(i=0; i<repeat; i++){ //Se repite la ejecucion de la funcion rgbon() "repeat" veces rgbon(); delay(300); } } //Funcion para mostrar colores principales cada 500 ms void rgbon(){ analogWrite(rled,255); delay(300); analogWrite(rled,0); analogWrite(bled,0); delay(300); analogWrite(bled,0); analogWrite(gled,255); delay(300); analogWrite(gled,0); }