I. OBJETIVOS
Realizar el sketch de programacin en sentencias C
Realizar el conexionado de un diodo LED correctamente en la tarjeta Arduino.
II. MATERIALES Y EQUIPO
1 Computador con el programa Arduino ver 1.0.5
1 tarjeta Arduino Uno/Mega + 1 cable de conexin USb
1 diodo LED color Rojo de 5 mm
1 diodo LED color Amarillo (o mbar) de 5 mm
1 diodo LED color Verde de 5 mm
3 Resistencia de 270 x Watts
1 Resistencia de 100K x Watts
1 pulsador en miniatura para conmutacin
1 sensor de temperatura LM35Z
1potenciometro de 100K
int ledPin=10;
int switchPin=11;
void setup()
{
pinMode(ledPin, OUTPUT );
pinMode(switchPin, INPUT);
}
Ahora que ya sabemos cmo establecer un pin digital para que acte como entrada,
pasemos a construir un proyecto de modelo de semforo con la utilizacin de LEDs rojo,
amarillo y verde.
VI. PROCEDIMIENTO
Proyecto 01: Semforo
Cada vez que pulsemos el botn, la luz del semforo cambiar al color siguiente de la secuencia
prevista. En el Reino unido, la secuencia de los semforos es: rojo, rojo y amarillo juntas,
verde, amarillo y, a continuacin, vuelve al rojo.
Al presionar el pulsador, las luces cambiarn solas siguiendo la secuencia prevista, aunque
con un cierto retardo entre cada paso. Tambin haciendo un pulso, las luces cambian.
El esquema electrnico del proyecto se muestra en la Figura 1. Los LEDs estn
conectados cada uno con su resistencia limitadora de corriente. El pin digital 5 est puesto a masa
(GND) a travs de R4, y cuando pulsamos S1, ste pasa a 5 V.
El sketch del proyecto es bastante auto explicativo y se muestra a continuacin. Una vez
por segundo, el programa comprueba si se ha presionado el pulsador, de forma que si lo
pulsamos varias veces con rapidez no cambiar la secuencia de luces. Sin embargo, si
mantenemos presionado el pulsador, las luces harn la secuencia completa automticamente.
/* Semaforo
Proyecto de modelo de semforo con la utilizacin de LEDs rojo, amarillo y verde.
*/
// Cada vez que pulsemos el botn, la luz del semforo cambiar al color siguiente
// de la secuencia prevista. En el Reino unido, la secuencia de los semforos es:
// rojo, rojo y amarillo juntas, verde, amarillo y, a continuacin, vuelta al rojo.
int estado= 0;
// Creamos una rutina que corre una vez cuando se presiona el boton RESET:
void setup()
{
pinMode(rojoPin, OUTPUT); // Inicializa el pin digital 2 como una salida
// (OUTPUT)
pinMode(amarilloPin, OUTPUT);
pinMode(verdePin, OUTPUT);
pinMode(botonPin, INPUT); // Inicializa el pin digital 5 como una entrada
}
El sketch tambin utiliza una funcin independiente, setLuces, para establecer el estado de cada
LED. Reduciendo as tres lneas de cdigo a una.
Docentes: MSc. Alberto E. Cohaila B. / Ing. Katherine Elas Q. 3 T/11/07/2017
UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE INGENIERIAS
ESCUELA PROFESIONAL DE INGENIERA EN INFORMATICA Y SISTEMAS
CURSO : ARQUITECTURA DE COMPUTADORES
AO DE ESTUDIOS : QUINTO CICLO SEMESTRE : I
Nivel 0 0V
Nivel 512 2.5 V
Nivel 1023 5V
Esta caracterstica la podemos aprovechar para conocer cul es la posicin del mando de un
potencimetro de manera que al variar su resistencia este acte como un divisor de tensin
para nuestro pin analgico. La Figura 11 muestra la estructura interna de un potencimetro.
A
Simbologa
B
2.5 V 0V
Al Arduino
A C
B
C
Por lo tanto, si nuestra entrada analgica cambia de 0 a 1023, el clculo que necesitamos para
determinar el valor de tensin o voltaje es:
(valor de nivel * 5 v)
Voltaje
1023 Dnde: Valor de nivel = 0 .1023
El valor de nivel es lo que lee la entrada analgica del Arduino, por ejemplo si A0 = 512, su
correspondiente nivel de voltaje es de:
(512 * 5)
Voltaje 2.5024 Voltios , que podemos aproximar a 2.5 V.
1023
Procedimiento:
5V Potencimetro de 10 K
A0
/* LecturaVoltajeAnalgico
Lee una entrada analogical del pin 0 (A0), convierte a voltaje, e imprime el resultado en el
Monitor Serial.
Coloque el pin central del potencimetro en el pin A0, y los pines extremos a +5V y tierra
(GND) respetivamente. */
void setup()
{
//Inicializa la comunicacin serial a velocidad de 9600 bits por segundo (bps):
Serial.begin(9600);
}
void loop()
{
// Lee la entrada analogical del pin 0:
int valorSensor = analogRead(A0);
// Convierte la lectura analgica (que vas desde 0 - 1023) a un voltaje (0-5V):
float voltaje = valorSensor * (5.0 / 1023.0);
RETO 2:
Realice un programa que v i s u a l i c e e l m a y o r y e l m e n o r v a l o r d e v o l t a j e a
medida que va girando la perilla del potencimetro.
Del grfico anterior, la recta b, que hace referencia al sensor TMP36, cuya respuesta es lineal.
Docentes: MSc. Alberto E. Cohaila B. / Ing. Katherine Elas Q. 7 T/11/07/2017
UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN FACULTAD DE INGENIERIAS
ESCUELA PROFESIONAL DE INGENIERA EN INFORMATICA Y SISTEMAS
CURSO : ARQUITECTURA DE COMPUTADORES
AO DE ESTUDIOS : QUINTO CICLO SEMESTRE : I
Procedimiento:
1. El esquema electrnico del proyecto se muestra en la Figura 16. Tendremos que montar el
siguiente circuito sobre la placa protoboard:
2. Ya sobre la protoboard real, realice el montaje, tal como muestra la figura 21.
Sensor
LM335Z
3. Se debe tener cuidado de poner correctamente cada cable donde corresponda, el azul - el de
seal-, entre la pata del centro del sensor y el pin A0de Arduino, el cable rojo entre la pata que
queda ms a la izquirda y el pin 5V del Arduino y finalmente el cable negro entre la pata que
queda ms a la derecha y el pin GND del Arduino.
4. Una vez realizado el montaje, vamos a programar el cdigo sobre la placa Arduino Uno. El
sketch de la aplicacin, a continuacin se muestra en el listado.
/* TEMPERATURA:
Medicin de temperatura con sensor TMP36 o LM35
*/
float temp;
int tempPin=A0; //Entrada analgica 0
void setup()
{
Serial.begin(9600);
}
void loop()
{
temp=analogRead(tempPin);
temp=(5.0*temp*100)/1024.0;
Serial.print(Temperatura : );
Serial.print(temp);
Serial.println(" grados C");
delay(500);
}
5. Compilamos el cdigo para asegurarnos que no hay errores con el botn . Si no hay errores
en la compilacin veremos el siguiente mensaje en la parte inferior del IDE de
Arduino
6. Guarde el sketch con nombre de archivo TemperaturaCenti.ini
9. Finalmente probar que el sensor funciona, con precaucin podemos acercar una fuente de calor
al sensor y ver como efectivamente la temperatura sube, o simplemente poniendo la mano
cerca. Puede poner para este caso el sensor cerca al ventilador de la laptop.
RETO 3:
Modifique el programa de modo que visualice el registro de temperatura en grados
Farentheth y Kelvin.
1. Realice todos los pasos indicados en la presente prctica incluido los Retos.
2. Realice la simulacin en Proteus de los programas respectivos
3. Realizar la programacin y la simulacin en Proteus de un sistema de temperatura que
de una alarma (encienda un LED) a medida que la temperatura aumenta por encima de
30 grados C y encienda otro LED a medida que la temperatura disminuya por debajo de
20 C. En todo momento los datos se debe guardar en una hoja de Excel.
4. Vea el siguiente link y de su opinin:
https://www.youtube.com/watch?v=NaDrt-rH5JY
5. Vea el siguiente link. Donde lo puede aplicar en su carrera de Ing. Inf&Sist (de su
comentario)
https://www.youtube.com/watch?v=xftEjHPU_U4
6. De 4 conclusiones ms importantes del presente laboratorio
7. De 3 observaciones ms importantes del presente laboratorio