02 Controlando El Parpadeo de Un Led Con Un Potenciometro

http://arduineando.matem.unam.mx/proyectos/potenciometroLed Controlando el parpadeo de un led con un potenciometro - co

Views 110 Downloads 0 File size 358KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

http://arduineando.matem.unam.mx/proyectos/potenciometroLed

Controlando el parpadeo de un led con un potenciometro - componentes - circuito - diagrama - código - variantes - referencias - otros -

En este proyecto vamos a sensar un potenciómetro y con el valor que obtengamos, vamos a controlar la frecuencia con la que va a parpadear un led. El valor que obtenemos del potenciometro con la función analogRead(), un valor entre 0 y 1023, lo usaremos con la función delay() para controlar la frecuencia en la que va a parpadear el led Usaremos un sketch muy similar al sketch Blink pero en éste cambiaremos el valor del delay() usando los valores que nos da el potenciometro. - al inicio

Componentes     

arduino protoboard un potenciometro un led una resistencia de 220 ohms (rojo, rojo, café)

- al inicio

Circuito En este proyecto vamos a tener dos citcuitos que ya hemos utilizado, uno de salida, con el led que vamos a hacer parpadear y el otro el de entrada, con un potenciometro del que obtendremos un voltaje entre 0 y 5 volts. El led lo conectaremos como lo hemos venido haciendo, con una resistencia de 220 ohms conectado por un lado a un pin digital y por el otro a tierra. El otro circuito es el del potenciometro, con los dos conectores laterales del potenciometro conectados uno al pin de 5 volts del arduino y el otro a pin de tierra. El conector central lo conectaremos a uno de los pines analógicos del arduino.

- al inicio

Diagrama

- al inicio

Código En este proyecto vamos a usar un sketch muy similar al que utilizamos para hacer parpadear un led. La diferencia es que en este código vamos a usar la función analogRead() para leer los valores analógicos que nos proporciona el potenciometro. A esta función, igual que con el digitalRead(), hay que pasarle un sólo parámetro, el número del pin analógico que queremos leer o sensar. El valor que nos devuelve esta función es un valor entre 0 y 1023. Y vamos a usar este valor en la función delay() para determinar la frecuencia con la que el led va a parpadear. /* En este proyecto leemos el valor analogico de un potenciometro El valor leido lo usamos para controlar la frecuencia

con la que va a parpadear un led usandolo en la funcion delay() Tambien enviamos este valor a la computadora utilizando la biblioteca Serial */ const int pinPot = A0; const int pinLed = 9; int valorPot potenciometro

= 0;

// pin del potenciometro, analogico // pin del led, digital // variable para guardar el valor del

void setup() { // ponemos el pin del led como de salida pinMode(pinLed, OUTPUT); // Aunque no es necesario Incializa el pin del potenciometro como de entrada pinMode(pinPot, INPUT); // Inicializa la comunicacion serial Serial.begin(9600); } void loop(){ // lee el valor del potenciometro valorPot = analogRead(pinPot); // manda el valor por el serial Serial.print("Valor del sensor analogico = "); Serial.println(valorPot); digitalWrite(9, HIGH); // pone el LED en HIGH, encendido delay(valorPot); // espera de acuerdo al valor leido digitalWrite(9, LOW); // pone el LED en LOW, apagado delay(valorPot); // espera de acuerdo al valor leido } - al inicio

Variantes Podemos agregar un valor al valor obtenido del potenciometro para que no empiece desde cero y con este valor no veamos el parapadeo. Podemos quitar el codigo que envia el valor del potenciometro para que el tiempo de parpadeo sea igual entre apagado y prendido. - al inicio

Referencias: Arduino Reference: analogRead() Referencia Arduino: analogRead() Función para leer el estado de un pin analógico.

Arduino Reference: Serial.begin() Referencia Arduino: Serial.begin() Función para inicializar la biblioteca Serial y definir la velocidad de comunicación.

Arduino Reference: Serial.print() Referencia Arduino: Serial.print() Función para enviar por el puerto serial los datos. Con println(), envía tambien un retorno de carro. - al inicio