Вы находитесь на странице: 1из 9

PRCTICAS ARDUINO SENSORES

- Ramn Arjona Quiones - Jos Manuel Bentez Monge - ngela Lpez Carballo

ndice (prctica 3 )
1. Finalidad 2. Hardware 3. Software 4. Funcionamiento 5. Valoracin personal y aportacin individual

(El apartado Comandos no est porque no hemos usado ninguno nuevo)

1. FINALIDAD
La finalidad de este circuito realizado con el software y el hardware de Arduino es crear un sensor de luz que encienda tres leds dependiendo de la luz del ambiente. Si no hay apenas luz, los tres permanecern apagados, y a medida que aumente, los tres se irn encendiendo. En el caso de que haya mucha luz, los leds se pondrn a parpadear. Esto se consigue haciendo intervalos de valores, basndose en los de la LDR. Los 3 leds van cada uno a un digital (10, 11 y 12) con su resistencia de 220 cada uno, y la LDR al Analgico 0 con su resistencia de 10k. El esquema de entradas y salidas es:

Y el

cronograma:

2. HARDWARE
+ Lista de materiales:
- Arduino Uno - Protoboard - Cables - Leds rojo, verde y blanco. - Resistencias :220 (x3), 10k - LDR

+ Esquema del circuito:

3. SOFTWARE
Esta es la programacin en Arduino:
/* Sensor de luz Enciende los leds en funcin de la luz que haya. */ //Leds conectados al digital 10,11 y 12. LDR conectada al Analgico 0. int ledrojo = 10; int ledverde = 11; int ledblanco= 12; int valLDR= 0; // Las instrucciones se ejecutan una vez al inicio del programa: void setup() { // Establece los tres leds como salidas (la LDR no hace falta) pinMode(ledrojo, OUTPUT); pinMode(ledverde, OUTPUT); pinMode(ledblanco, OUTPUT); } // El programa se repite una y otra vez hasta el infinito: void loop() { valLDR = analogRead(A0); //valLDR registra el valor de la LDR if(valLDR<450){ //Si es menor que 450, digitalWrite(ledrojo, LOW); // Todos los leds se apagan. digitalWrite(ledverde, LOW); digitalWrite(ledblanco, LOW); } else{ //Si no, if(valLDR<650){ //Si el valor es mayor que 650, digitalWrite(ledrojo, HIGH); //Se enciende el led rojo digitalWrite(ledverde, LOW); digitalWrite(ledblanco, LOW);

} if(valLDR<750 && valLDR>650){ //Si est entre 750 y 650, digitalWrite(ledrojo, HIGH); //Se encienden los leds rojo y verde. digitalWrite(ledverde, HIGH); digitalWrite(ledblanco, LOW); } if(valLDR<850 && valLDR>750){ //Si est entre 750 y 850, digitalWrite(ledrojo, HIGH); //Se encienden los tres leds. digitalWrite(ledverde, HIGH); digitalWrite(ledblanco, HIGH); } if(valLDR>850){ //Si es mayor que 850 (mximo de luz), digitalWrite(ledrojo, HIGH); //Los 3 leds parpadean uno detrs de otro con una... delay(150); // ...frecuencia de 150ms. digitalWrite(ledrojo, LOW); digitalWrite(ledverde, HIGH); delay(150); digitalWrite(ledverde, LOW); digitalWrite(ledblanco, HIGH); delay(150); digitalWrite(ledblanco, LOW); } } }

Y este el diagrama de flujo con S4A:

4. FUNCIONAMIENTO
- Vdeo del funcionamiento: http://www.youtube.com/watch?v=eMhde5xjp10 - Imagen del circuito:

5.VALORACIN Y APORTACIN INDIVIDUAL

+ Creemos que estas prcticas son ms divertidas y entretenidas que las de los otros bloques, aunque tengan un mayor nivel de complejidad. - Solo nos ha dado tiempo a hacer dos prcticas del tercer bloque esta semana, ya que hemos hecho el examen de Arduino, lo hemos corregido y adems un componente del grupo ha faltado un da.

Вам также может понравиться