1 A 4 Leds Semáforo Botón Potenciómetro

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 3

IES Gabriel Alonso de Herrera

Departamento de Tecnología

Prácticas básicas 1 a 4: led, semáforo, botón,


potenciómetro, LDR, Monitor Serial.

Práctica 1: mi primer programa, LED intermitente (Blink)

Programa 1. Monta un solo led en el pin 12 para que


void setup() parpadee. La resistencia en serie con el led
{ de 220 ohmios.
pinMode(12,OUTPUT);
}
2. Prueba varios valores para ON y para OFF.
Por ejemplo, 3 segundos encendido y 1
void loop() segundo apagado
{
digitalWrite(12,HIGH);
delay(50);
digitalWrite(12,LOW);
delay(50);
}

Práctica 2: semáforo
1. Monta 3 leds en las salidas 9, 10 y 11 para
que funcionen según una secuencia lógica
de un SEMÁFORO. Puedes guiarte para el
montaje con la imagen que tienes a tu
derecha.
El programa es una ampliación de la
práctica 1, introduciendo dos leds más.

1
IES Gabriel Alonso de Herrera
Departamento de Tecnología

Práctica 3: led + botón (pulsador)


Añadimos una entrada digital: botón o pulsador. Vamos a realizar el encendido de un led
con un botón. Realiza el siguiente ejercicio y comprueba que funciona correctamente. Es
muy importante que comprendas la secuencia de comandos
(Si tienes alguna duda de las conexiones en la protoboard, recuerda que en los apuntes
del tema tienes las conexiones de elementos como un botón o un potenciómetro)

Programa

int buttonPin = 2;
int ledPin = 13;
int buttonState = 0;

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
}

Práctica 4: lectura de valores de potenciómetro y LDR


Realiza el programa que muestra por el monitor serial el valor óhmico de los resistores
LDR por una parte y potenciómetro por otra, de tal manera que al mover el potenciómetro
o proyectar más o menos luz en el LDR, veamos cómo nos indica una lectura. Es muy
importante que comprendas los nuevos comandos en arduino.
IMPORTANTE: fíjate en los valores máximos y mínimos que lee. Conecta la placa y
comprueba su funcionamiento.
int pot_pin = 0; // conectar a la entrada analógica 0
int sensor_luz_pin = 1; // conectar a la entrada analógica 1
int valor_pot = 0; // valor inicial del potenciometro
int valor_sensor_luz = 0; // valor inicial del sensor LDR

void setup() {
Serial.begin(9600); // inicializa el Monitor Serial
}

void loop() {
valor_pot = analogRead(pot_pin); // lectura anal. de la posición del potenciómetro
Serial.println(valor_pot); // impresión Monitor serial, con salto de línea
valor_sensor_luz = analogRead(sensor_luz_pin); // lectura anal. del valor del LDR
Serial.println(valor_sensor_luz); // impresión Monitor Serial, con salto de línea
delay (2000);
}
En este caso ya no se muestra el circuito de conexiones de potenciómetro y LDR a la
placa Arduino mediante la protoboard. Recurre a los apuntes del tema para observar
cómo se conectan.

2
IES Gabriel Alonso de Herrera
Departamento de Tecnología

MONITOR SERIAL.... A SABER

• El serial monitor sirve para ver por pantalla valores de lectura de


sensores, valores de variables o texto que nosotros escribamos. Hay
un serial monitor integrado en el entorno de programación Arduino.
Este se inicia desde el botón de la parte superior derecha:
• En el void setup() tenemos que iniciar la comunicación e indicar la velocidad de la
misma. Para ello se añade la línea siguiente en este void setup()
◦ Serial.begin(9600); //abre el puerto serie a 9600
baudios
◦ 9600 puede ser otro número, ya que es la velocidad
de comunicación del ordenador con la tarjeta. Esta
velocidad es en bits/segundo o baudios.
◦ En cualquier caso, la velocidad que se ponga en la
llamada begin debe ser la misma que la que se
seleccione en el serial monitor
• Y después, en el void loop() se dan instrucciones de
escritura en ese serial monitor. Ejemplos:
◦ Serial.print(78) da "78"
◦ Serial.print("Hello world.") da "Hello world."
◦ Serial.print() imprime lo que va en el paréntesis
◦ Serial.println() lo mismo pero añade un salto de línea
• Aunque lo único que se hace en un programa de ejemplo de arduino.cc sobre la
instrucción Serial es escribir en pantalla textos, no se puede hacer nada sin
conectar la placa arduino porque en realidad el programa se está ejecutando en
ella.
• Programa de ejemplo:
/* Programa para probar el monitor serial
Escribe en el serial port la palabra "Hola" cada segundo.
No hace falta conectar nada al arduino pero el arduino
debe estar conectado al ordenador y con el programa cargado.*/
void setup()
{
Serial.begin(9600);
}

void loop()
{
Serial.println("Hola");
delay(1000);
}

PRÁCTICA 1a4: Propuesta de tarea final de esta primera entrega


Como resumen de estas cuatro primeras prácticas, se propone el siguiente ejercicio:
Disponemos de un potenciómetro y 3 leds del mismo color. Debemos realizar un programa
que encienda los leds a medida que vayamos moviendo el potenciómetro. Para ello,
podemos establecer 4 estados de funcionamiento según la posición del potenciómetro.
Por ejemplo, para uno de 10 KΩ, sería:
Posición < 2500 Ω todos apagados
Posición > 2500 y <5000 Ω luce uno
Posición >5000 y < 7500 Ω lucen dos
Posición > 7500 Ω lucen tres
Debes hacer uso de la condicional if...else

También podría gustarte