Arduino Uno ejercicios prácticos

27
Practicas con la placa electrónica Arduino Uno

Transcript of Arduino Uno ejercicios prácticos

Page 1: Arduino Uno ejercicios prácticos

Practicas con la placa electrónica Arduino Uno

Page 2: Arduino Uno ejercicios prácticos

Introducción

Este trabajo fue realizado con el objetivo de comprender las características yfuncionalidades que pueden desarrollarse con el Arduino Uno.

Con la realización de estas practicas pudimos visualizar los efectos querealizaba el “Arduino Uno” con la ayuda del Software (Arduino), en el cual seescribían los programas y se ejecutaban.

Gracias al apoyo del profesor pudimos despejar cada una de las dudas que senos presentaban, así como el apoyo en el seguimiento de cada programa que serealizo.

Page 3: Arduino Uno ejercicios prácticos

Materiales que se utilizaron

Zumbador Resistencias Pulsador

Arduino Uno

LED´s

Cable de impresora

Potenciómetro

Page 4: Arduino Uno ejercicios prácticos

Practica 1: Prender un led.

Materiales: Arduino, led, cable de impresora.

Procedimiento: Se coloco una de las patitas del led en el puerto numero 13 del

Arduino, se conecto el Arduino con el cable de impresora a la computadora.

Codigo:int led = 13;

void setup()

{

pinMode(led, OUTPUT);

}

void loop()

{

digitalWrite(led, HIGH);

delay(2000);

digitalWrite(led, LOW);

delay(2000);

}

Page 5: Arduino Uno ejercicios prácticos

Comentario:

Se coloco una variable de nombre led con salida 13, se coloco la instrucción

pinMode que acepta dos parámetros(led, OUTPUT), se indica la salida de señal

con el comando (led, HIGH) Y (led, LOW), se le agrega un retardo del led

delay(2000).

Conclusión:

Los resultados que obtuvimos fue que el led enciende y apaga y le podíamos

cambiar la frecuencia del encendido y apagado.

Page 6: Arduino Uno ejercicios prácticos

Practica 2: Prender 3 leds.

Materiales: Arduino, leds, resistencias, cable de impresora.

Procedimiento: se colocaron los leds en los puertos 6, 7 y 8 del Arduino, se

conectaron los leds mediante las resistencias que se le adaptaron en las patitas

mas cortas del led.

Codigo:int led1 = 6;

int led = 7;

int led = 8;

void setup() {

pinMode(led1, OUTPUT);

pinMode(led2, OUTPUT);

pinMode(led3, OUTPUT);

digitalWrite(led1, LOW);

digitalWrite(led2, LOW);

digitalWrite(led3, LOW);

}

Page 7: Arduino Uno ejercicios prácticos

void loop(){

digitalWrite(led1, HIGH);

delay(200);

digitalWrite(led1, LOW);

digitalWrite(led2, HIGH);

delay(200);

digitalWrite(led2, LOW);

digitalWrite(led3, HIGH);

delay(200);

digitalWrite(led3, LOW);

}

Comentario:

Se creo una variable para cada led, se declaro la salida de los leds con la

instrucción pinMode, se determinaron las instrucciones Low y High de forma

que los leds se apagaran y se encendieran.

Conclusión:El código permite que los tres leds enciendan al mismo tiempo.

Page 8: Arduino Uno ejercicios prácticos

Practica 3: Lectura de un pulsador.

Materiales: Arduino, leds, resistencias, pulsador, cable de impresora.

Procedimiento:

Se le conecta al pulsador en las dos partes inferiores los cables de color. A un

pulsador se le anexo un cable para el extremo de 5 voltios y del otro extremo de 5

se le anexo una resistencia que lo llevaba a tierra.

Código:

int led = 13;

int pulsador = 5;

int encendido = 0;

void setup() {

pinMode(led, OUTPUT);

pinMode(pulsador, INPUT);

}

void loop() {

encendido = digitalRead(pulsador);

If(encendido=HIGH){

digitalWrite(led, LOW);

}

Page 9: Arduino Uno ejercicios prácticos

else{

digitalWrite(led, LOW);

delay(200);

digitalWrite(led,HIGH);

delay(200);

}

}

Comentario:

Se creo una variable para el led, y una para el pulsador y el tiempo que

estará encendido, se inicializan el led y el pulsador, sucesivamente se leen la

entrada mediante la condición if.

Conclusión:

Al presionar el botón se apagaba el led y al soltarlo volvía a encender, este

suceso se debe a la condición “If” que se coloco en el código.

Page 10: Arduino Uno ejercicios prácticos

Practica 4: Recorrido de luces.

Materiales: Arduino, leds, resistencias, pulsador, cable de impresora.

Procedimiento:

Se conectan los leds en los puertos 13, 6 y 7 del arduino, se enlazan con ayuda

de los cables y la resistencia a modo de diseñar una red d leds pequeña.

Código:int leds[] ={13, 6, 7};

int contador = 0;

int temporizador = 100;

void setup() {

for (contador=0; contador<6;contador++){

pinMode(leds [contador],OUTPUT);

}

}

void loop() {

for (contador=0; contador<6;contador++){

digitalWrite(leds [contador],HIGH);

delay(temporizador);

digitalWrite(leds [contador],LOW);

delay(temporizador);

}

Page 11: Arduino Uno ejercicios prácticos

for (contador=5; contador>=0;contador--){

digitalWrite(leds [contador],HIGH);

delay(temporizador);

digitalWrite(leds [contador],LOW);

delay(temporizador);

}

}

Comentario:

Mediante la secuencia de control “for” se permite que los leds vayan encendiendo y

apagando de forma secuencial.

Conclusión:

Los leds ejecutan el programa correctamente de tal forma que encienden de una forma

continua y vuelven a encender de forma inversa

Page 12: Arduino Uno ejercicios prácticos

Practica 5: Estrella fugaz con leds.

Materiales: Arduino, leds, resistencias, pulsador, cable de impresora.

Procedimiento:

Se conectan los leds en los puertos 5, 6 y 7 del Arduino se enlazan los leds con la

resistencia y se conectan directamente con los cables.

Código:int pinArray[] = {5,6,7};

int controlLed = 13;

int waitNextLed = 100;

int tailLength = 4;

int lineSize = 11;

void setup()

{

int i;

pinMode (controlLed, OUTPUT);

for (i=0; i<lineSize; i++)

{

pinMode (pinArray[i],OUTPUT);

}

}

Page 13: Arduino Uno ejercicios prácticos

void loop() {

int i;

int tailCounter = tailLength;

digitalWrite(controlLed,HIGH);

for(i=0; i<lineSize; i++)

{

digitalWrite (pinArray[i],HIGH);

delay (waitNextLed);

if (tailCounter ==0)

{

digitalWrite(pinArray[i-tailLength],LOW);

}

else

if(tailCounter > 0)

tailCounter --;

}

for (i=(lineSize-tailLength); i<lineSize; i++)

{

digitalWrite(pinArray[i],LOW);

delay (waitNextLed);

}

}

Page 14: Arduino Uno ejercicios prácticos

Comentario:

El programa comienza encendiendo los leds hasta que llega al ultimo leds de la fila

Conclusión:

Los leds realizan la tarea definida por el programa todo con ayuda de la variable “delay

(waitNextLed)” que permite que los leds lleven un orden consecutivo al encenderse.

Page 15: Arduino Uno ejercicios prácticos

Practica 6: Contador con pulsador.

Materiales: Arduino, leds, resistencias, pulsador, cable de impresora.

Procedimiento:

El led se conecta en el puerto 13 del Arduino, se conecta la resistencia a una

parte del pulsador y se conecta al puerto 7.

Código:

int LED = 13;

int Boton = 7;

int valor = 0;

int contador = 0;

int estadoanteriorboton = 0;

void setup()

{

Serial.begin(9600);

pinMode(LED, OUTPUT);

pinMode(Boton, INPUT);

}

Page 16: Arduino Uno ejercicios prácticos

void loop()

{

valor = digitalRead(Boton);

digitalWrite(LED,valor);

if(valor != estadoanteriorboton){

if (valor == 1){

contador++;

Serial.print(contador);

Serial.write(10);

Serial.write(13);

if (contador==10);

contador=0;

}

}

}

Page 17: Arduino Uno ejercicios prácticos

Comentario:El programa lee el valor de la entrada del botón y de acuerdo este dato el led encenderá.

Conclusión:El led enciende un determinado numero de veces siempre y cuando se presione el botón.

Page 18: Arduino Uno ejercicios prácticos

Practica 7: Simulación de vela.

Materiales: Arduino, leds, resistencias, cable de impresora.

Procedimiento:

Las resistencias se unen con las patitas de cada led como son negativas se

conectan a tierra, y las patitas positivas se colocan en las líneas 13 y 7 del

Arduino.

Código:int ledPin = 13;

int ledPin2 = 7;

int val2 = 0;

int val = 0;

int delayval = 0;

void setup() {

randomSeed(0);

pinMode(ledPin, OUTPUT);

}

Page 19: Arduino Uno ejercicios prácticos

void loop() {

val=random(100,255);

val2=random(12,250);

analogWrite(ledPin, val);

analogWrite(ledPin2, val2);

delayval =random(50,150);

delay(delayval);

}

Comentario:El random seed inicializa los valores de los números, los datos que se le invirtieron permiten generar un orden aleatorio en ese rango y se realiza el proceso en la instrucción delay(delayval) que permitirá la duración que tenga el encendido y el apagado del led.

Conclusión:Los leds se apagan y se encienden lentamente.

Page 20: Arduino Uno ejercicios prácticos

Practica 8:Ciclo analógico con leds.

Materiales: Arduino, leds, resistencias, cable de impresora.

Procedimiento:

Se conecta el led a tierra y se toma la línea 13 del arduino.

Código:int value =0;

int ledpin = 13;

void setup()

{

// nothing fro setup

}

void loop()

{

for(value = 0 ; value <= 255; value+5)

{

analogWrite(ledpin, value);

delay(30);

}

for(value = 0 ; value <= 255; value+5)

{

analogWrite(ledpin, value);

delay(30);

} }

Page 21: Arduino Uno ejercicios prácticos

Comentario:Mediante el uso de los ciclos for se envia un valor ascendente y trascendente para elrango de entre el 0 y 255 en la implementación se cambia automáticamente lavariación porque se le va sumando un valor de 5.

Conclusión: El led cambia su frecuencia al encender y apagar.

Page 22: Arduino Uno ejercicios prácticos

Practica 9: Control de iluminación con botón.

Materiales: Arduino, leds, pulsador, resistencias, cable de impresora.

Procedimiento:

Se conecta el pulsador con un cable al puerto 2 del arduino, se le enlaza una

resistencia y un cable, el led se conecta a tierra en el puerto 2 y la resistencia

que se le agrego se conecta en el puerto 9.

Código:int ledpin = 9;

int inputpin = 2;

int val = 0;

int fadeval = 0;

void setup() {

pinMode(ledpin, OUTPUT);

pinMode (inputpin, INPUT);

}

void loop() {

val = digitalRead(inputpin);

if (val== HIGH){

digitalWrite (ledpin,LOW);

delay (50);

}

Page 23: Arduino Uno ejercicios prácticos

else{

for(fadeval =0; fadeval <=255; fadeval+=5) {

analogWrite(ledpin,fadeval);

delay (100);

}

for (fadeval = 255; fadeval >=0; fadeval-=5) {

analogWrite (ledpin,fadeval);

delay(100);

}

}

}

Comentario:Cuando se presionaba el pulsador el led cambiaba su luminosidad.

Conclusión: El led cambio su tipo de luminosidad con la ayuda de un pulsador.

Page 24: Arduino Uno ejercicios prácticos

Practica 10: Generar notas musicales con zumbador.

Materiales: Arduino, zumbador, resistencias, cable de impresora.

Procedimiento:

Se conecta un cable del zumbador al puerto 13 y el otro extremo al puerto 8.

Código:int piezo=10;

int notas[] = {1915, 1700, 1276};

int n=0;

int m= 0;

int tnota=100;

void setup() {

pinMode(piezo,OUTPUT);

}

void loop(){

for(n=0;n<8;n++){

for(m=0;m<=tnota;m++){

digitalWrite(piezo,HIGH);

delayMicroseconds(notas[n]);

digitalWrite(piezo,LOW);

delayMicroseconds(notas[n]);

}

delay(pausa);

}

}

Page 25: Arduino Uno ejercicios prácticos

Comentario:Se creo una variable con las notas que se desearon reproducir así también se creo el tiempo consecutivo para que se reprodujera cada nota, el ciclo for nos permito determinar el tiempo activo e inactivo del zumbador.

Conclusión: Se reprodujeron de forma secuencial las notas musicales dándole un pequeño lapso de tiempo para que continuaran.

Page 26: Arduino Uno ejercicios prácticos

Practica extra

Potenciómetro de lectura analógica.

Materiales: Arduino, led, potenciometro, cable de impresora.

Procedimiento:

Se conecto un led al puerto 12 y 13 del arduino y el potenciometro se conecto

con los cables al puerto GND.

Código:

Page 27: Arduino Uno ejercicios prácticos

Comentario:Se determinaron las variables con un numero que identificaba la potencia menory la mayor, lo que hacia que se ejecutara correctamente. Conclusión:Cuando se daba vuelta lentamente al potenciómetro, la luminosidad del ledaumentaba.