martes, 28 de junio de 2016

Sumativa: Uso De Potenciometro Y Botonera En Una Secuencia

El día de hoy el Mr. dio a conocer que cada uno debia obtener una pareja para asi poder trabajar de forma grupal un proyecto que el Mr. explicaria mas adelante. Al explicar el proyecto, el cual despues nos enteramos que seria la sumativa, la función que le debíamos dar a la botonera era que al ser pulsada realice una secuencia y al soltarlo se enciendan los de diferente forma (formando asi dos secuencias a realizar), mientras que el potenciometro se debía encargar de regular la rapidez con la cual se encendían los leds en cada secuencia.

En la primera secuencia los leds debían encenderse en serie continuamente mientras que una fila iba en dirección de izquierda a derecha, la otra fila de diodos leds se dirigía hacia la dirección opuesta.
En la segunda secuencia se debían encender la mitad de leds de cada fila mientras la otra mitad se encontraban apagados, pero luego se debían encender al revés, los que estaban apagados se prendian, y los que estaban prendidos se apagaban. La velocidad se ajustaba utilizando el potenciometro.
El resto de la hora fue dado para terminar dicho proyecto, el cual la proxima clase se revisaria.

martes, 21 de junio de 2016

Leds En Direcciones Opuestas (Uso De Pulsador Y Potenciometro)

En este proyecto se usarian los ultimos componentes usados recientemente, la botonera y el potenciometro, para que al pulsar o no, los leds parpadeen en una dirección y al mover el potenciometro se ajuste la intensidad / ritmo de las luces.

Para esto cada uno debia utilizar dos variables en la programación. También al momento de conectar el circuito debimos mezclar las dos conexiones realizadas anteriormente para los otros circuitos, quizas conectar a la linea del positivo para que asi esto conecte ambos componentes a 5v utilizando cables en a protoboard. 


'Use esta imagen para guiarme a lo largo de esta clase'

martes, 14 de junio de 2016

Uso Del Potenciometro

El día de hoy el Mr. dio a conocer un nuevo componente que se usara en practicas proximas, el potenciometro, componente el cual sirve para regular intensidad del paso de energia. Al momento de conectar esto se toma como una señal analógica por lo cual puede tener muchos estado, a diferencia de las digitales como se había estado trabajando en proyectos anteriores.

El potenciometro posee3 patas, que se enumeran viéndolo de frente. La primera (de izquierda a derecha) es de entrad, el cual debe estar conectado a una señal analógica que nosotros daremos; la de en medio es de salida, la cual debe estar conectada a '5v'; y la de la derecha que debe estar conectada a tierra (GND).

Para esta actividad trabajamos con el pin 13 de la placa Arduino. Consistía en que según se ajustaba la intensidad en el potenciometro, la rapidez del parpadeo del led iba aumentando o disminuyendo.

La variable a usar era analogRead, ademas el código para la salida que era la del led se mantenía con el formato normal parecido al del programa ejemplo Blink, pero en el delay se escribía el nombre que se le había dado a la variable -como el caso de int rapidez; - (y asi el correcto uso del potenciometro). 

Diodos Leds Al Contrario Con El Uso De Un Pulsador

Para la tarea enviada lo unico que se debia hacer era juntar los codigos de clases pasadas, el de "Leds en direcciones opuestas" con el uso de un pulsador, para que estas actuasen de cierta manera al ser pulsado dicho boton.

La conexión en la placa y protoboard es similar pero en lugar de conectarla al pin 13 se conecta a los demás pins que se encenderán en direcciones opuestas previamente ya establecidas.

 

martes, 7 de junio de 2016

Botonera En Arduino

El dia de hoy el Mr. procedio a explicar y a dar a conocer el uso de la botonera / pulsador. La botonera que yo utilice era de 2 patas, aunque me dio problemas conectarla.

En esta actividad trabajamos modificando el led del pin 13 que se encuentra en la placa Arduino para que al pulsar o no pulsar la botonera se encienda o se apague dicho led. Para esto se conectaba una de las patas del led a tierra pero, utilizando una resistencia de 1k ohmios y del otro lado se conectaba a la placa al pin de 5v y al pin 13 (o cualquier otro que se use).


'Modelo aparte'




Luego en la programación debíamos añadir una variable, con un nombre adecuado para el trabajo (ej. int rapidez;) que se insertaba como int antes del setup y esa misma variable se la añadía en el loop para que lea el estado utilizando digitalRead y lo que sucedia si el estado era postivo o negativo pues era una señal digital. Para finalizar, se le añadia else para el estado alterno y lo que ocurriria en dicho estado (ya sea en negativo o positivo).

Programar: "Leds En Direcciones Opuestas"

El dia de hoy la actividad se basaba en lograr algo similar, pero no igual, a la actividad del 'auto fantástico'. La diferencia es que, en lugar de iluminar en secuencia, los diodos leds partirian desde la mitad y haciéndolo en direcciones opuestas, de ida y vuelta.

Para que esto llegue a su cumbre, se necesitaba encender dos diodos leds a la vez, de cada lado, para lo cual se usaba dos salidas digitalWrite en la misma linea de la programación, siempre y cuando los diodos compartan su delay.
Después de hacer esto se iba contando los pines de la placa conectado a los leds en secuencia pero con un orden diferente.
Al termino de la primera secuencia, se debía repetir el código pero de manera inversa para que retroceda y así pueda volver a comenzar cuando la placa ejecute el programa, creando que los diodos leds vayan de manera contraria a si.



Codigo que use en el proyecto:
void setup() {
 // put your setup code here, to run once:
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT+);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
}

void loop() {
 // put your main code here, to run repeatedly:
 digitalWrite(7, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
  digitalWrite(8, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
 digitalWrite(6, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(9, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(5, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
 digitalWrite(10, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
  digitalWrite(4, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(11, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(50);    
   digitalWrite(11, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
  digitalWrite(4, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
 digitalWrite(10, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(5, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(9, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
 digitalWrite(6, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
  digitalWrite(8, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);              // wait for a second
digitalWrite(7, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(50);  
  digitalWrite(7, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(1000);   
  digitalWrite(8, LOW);   // turn the LED on (HIGH is the voltage level)
 delay(1000);