Evaluación 1 AO g2

De Casiopea



TítuloEvaluación 1 AO g2
AsignaturaInteracción y Performatividad
Del CursoInteracción y Performatividad 2019
CarrerasDiseño
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.

Arduino ejemplo.png

(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

Codigo11.jpg
Codigo12.jpg
Codigo13.jpg
Codigo14.jpg
Codigo16.jpg

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.


Circuito 5 leds.png

Programación

La siguiente programación muestra las tres tareas requeridas en la evaluación al mismo tiempo.

Primera parte c2.png
Segunda parre c2.png
Tercera parte c2.png

Programación II: 3 leds con efecto "fade"

Orden del circuito

Circuito fade.png

Programación

Primera parte c2.png
Segunda parre c2.png
Tercera parte c2.png

Programación VI: 1 led RGB y sus 3 colores principales

Orden del circuito

Circuito led y rgb.png

Programación

Primera parte c2.png
Segunda parre c2.png
Tercera parte c2.png

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);   
}
  



Registro