no lo se
Páginas: 5 (1167 palabras)
Publicado: 4 de septiembre de 2013
“INTRODUCCIÓN A
LA ROBÓTICA CON ARDUINO”
ROBÓTICA EDUCATIVA
Entradas Analógicas.
Manuel Hidalgo Díaz
Enero 2011
ROBÓTICA EDUCATIVA
Entradas analógicas.
El controlador Atmega de Arduino lleva incluido un conversor
analógico-digital (A/D) de 6 canales. Tiene una resolución de 10 bits,
retornando enteros desde 0 a 1023.
El uso principal de estos pines (ANALOGIN 0,…5) es para la
lectura de sensores analógicos, estos pines tienen también toda la
funcionalidad de los pines de entrada-salida digital (14-19).
Los
pines
de
entradas
analógicas
no
son
necesarios
Veamos un ejemplo (SensorPotenciometro)
de lectura
configurarlos en el setup().
analógica del valor de un potenciómetro y lo vemos en el monitor del
entorno Arduinocada segundo.
Conectamos 3 cables a la placa Arduino. El primero desde masa
a uno de los pines extremos del potenciómetro. El segundo, desde 5
INTRODUCCIÓN A LA ROBÓTICA CON ARDUINO
2/10
ROBÓTICA EDUCATIVA
voltios al otro pin extremo del potenciómetro. El tercero desde el pin
analógico 0 al pin medio del potenciómetro.
Al girar el eje del potenciómetro, cambiamos el valor de laresistencia entre los pines de los extremos y el pin central del
potenciómetro. Esto cambia la "cercanía" relativa del pin central a 5
Voltios y a masa, ofreciendo diferentes valores analógicos de entrada.
Cuando giramos el eje a tope en un sentido, llegarán 0 voltios al pin
central, y leeremos 0. Cuando giramos el eje a tope, pero en el otro
sentido, llegarán 5 voltios al pin central yleeremos 1023. Entre
medias, analogRead() retorna un número entre 0 y 1023 que es
proporcional al valor del voltaje aplicado al pin central.
INTRODUCCIÓN A LA ROBÓTICA CON ARDUINO
3/10
ROBÓTICA EDUCATIVA
Código
// SensorPotenciometro
// Lectura de un sensor analogico (potenciometro)
// connectedo a analog in 0
int sensorPot=0;
int val;
void setup(){
Serial.begin(9600);
}
voidloop(){
int val=analogRead(sensorPot);
Serial.println(val);
delay(1000);
}
Ejemplo (ControlTiempo)de lectura analógica del valor de un
potenciómetro que controla el tiempo de encendido de un led.
El
valor
analógico
leído
del
potenciómetro
controlará
la
frecuencia con la que parpadeará un LED
Código
/* ControlTiempo. Controla el tiempo de parpadeo por la entradaanalógica 0*/
int sensorPin = 0; // selecciona el pin de entrada para el potenciómetro
int ledPin = 13;
// selecciona el pin para el LED
int sensorValue = 0; // variable para almacenar el valor que ofrece el sensor
void setup() {
// declara el ledPin como salida (OUTPUT)
pinMode(ledPin, OUTPUT);
}
void loop() {
sensorValue = analogRead(sensorPin); // lee el valor del sensor:digitalWrite(ledPin, HIGH); // enciende el ledPin
// detiene el programa durante milisegundos:
delay(sensorValue);
digitalWrite(ledPin, LOW); // apaga el ledPin :
// detiene el programa durante milisegundos:
delay(sensorValue);
}
INTRODUCCIÓN A LA ROBÓTICA CON ARDUINO
4/10
ROBÓTICA EDUCATIVA
PRÁCTICA. SENSOR LDR.
Descripción:
Un LDR es una resistencia variable, que varia su valor dependiendode la cantidad de luz que incide sobre su superficie.
Cuanta mas intensidad de luz incide en la superficie de la LDR menor
será su resistencia y cuanto menos luz incide mayor será la
resistencia.
Suelen ser utilizados como sensores de luz ambiental o como una
fotocélula que activa un determinado proceso en ausencia o presencia
de luz.
Un sensor de luz se compone de una LDR como parte deun divisor de
tensión resistivo.
Ejemplo:
Vout=((Rbottom/(Rbottom+Rtop))*Vin
Si la LDR es usada como Rtop, como en el primer circuito, da
tensión alta (HIGH) en la salida cuando la LDR está en la luz,y una
tensión baja (LOW) en la salida cuando la LDR está en la sombra.
La acción del divisor de tensión es inversa cuando la LDR es
usada como Rbottom en lugar de Rtop, como en el...
Leer documento completo
Regístrate para leer el documento completo.