UNIVERSIDAD VALLE DEL GRIJALVA
ALUMNO:
LEONEL MANUEL RAMIREZ CRUZ
DOCENTE:
MTRA. MARIANA BOCANERA LARA
CARRERA:
INGENIERIA INDUSTRIAL
CUATRIMESTRE:
7MO
MATERIA:
PROGRAMA DE MICROCONTROLADOR
TEMA:
PRACTICA 2
Introducción
¿Te has preguntado alguna vez cómo funcionan esos semáforos que ves todos
los días cuando vas caminando o manejando por la calle? Bueno, pues en esta
práctica vamos a descubrir el secreto que esconden detrás de sus luces de
colores. Los semáforos son parte fundamental para mantener el orden en el
tráfico. Si no existieran, imagina el caos: coches cruzándose por todos lados,
peatones corriendo, bicicletas esquivando carros, ¡un verdadero desastre! Por
eso, en esta práctica nos vamos a meter de lleno en la programación de un
semáforo utilizando Arduino y LEDs de colores. ¡Sí, vamos a crear nuestro propio
semáforo! Pero eso no es todo, también vamos a entender por qué es tan
importante elegir las variables adecuadas, porque, aunque parezca algo muy
técnico, es clave para que todo funcione correctamente.
En este experimento, vamos a usar materiales sencillos: un Arduino UNO, LEDs,
resistencias, un protoboard y unos cuantos cables. La idea es armar el circuito de
manera correcta para que las luces verde, amarilla y roja se enciendan en el orden
que todos conocemos: verde para avanzar, amarillo para prepararnos y rojo para
detenernos. ¿Fácil, no? Pero hay más, porque además de aprender a encender y
apagar luces, nos vamos a dar cuenta de la importancia de cosas como las
resistencias, esos pequeños componentes que muchas veces pasamos por alto,
pero que en realidad son como los "guardaespaldas" de nuestros LEDs. Sin ellas,
las luces podrían quemarse y nuestro semáforo fallaría en cuestión de segundos.
Otra parte interesante es la programación. No es solo conectar cables y ya, ¡hay
que decirle al Arduino qué hacer! Y aquí entra el código que vamos a usar para
controlar el semáforo. Vamos a darle instrucciones claras: cuánto tiempo debe
estar encendida cada luz, en qué orden deben hacerlo y qué hacer después.
Aunque al principio puede parecer complicado, es como hablarle al Arduino en su
propio lenguaje. Lo mejor es que, si algo no sale bien, podemos revisar el código o
el montaje, y corregirlo fácilmente.
Practica 2: Semáforo con LEDs
OBJETIVO:
Entender los tipos de variables (boolean, byte, char, int, float, entre otros) que podemos
encontrar dentro de la programación de microcontroladores, las diferencias y el por qué
cada una es esencial según lo que necesitemos.
Material para trabajar:
Laboratorio Material Equipo Reactivos Cantidad Especificaciones
Computo/ Computadora 1
redes personal
Arduino 1
UNO con
cable
USB
Protoboar 1
d
Led 3(1c/u)
verde,
Led
amarillo y
Led rojo.
Resistenc 3
ia de 330
ohms
Jumpers 10
macho a
macho
¿Qué es un semáforo?
El semáforo es un dispositivo esencial en la regulación del tráfico, que utiliza luces de
colores para gestionar el flujo de vehículos y peatones. Cada color de los semáforos
tienen su propio significado. Habitualmente suelen tener tres colores: rojo, naranja y
verde, salvo excepciones.
Un semáforo es un dispositivo eléctrico cuya principal función es regular el tráfico a través
de señales luminosas de colores. No se encuentran en todas las ciudades, pero sí en las
zonas con más densidad de tráfico.
Es una forma más visible para dar prioridad tanto a los coches como a los transeúntes, o
en caso de que no exista un paso de peatones, entre vehículos. Todos deben de respetar
la señal que nos indican los semáforos, ya seas un usuario viandante de la vía publica, un
ciclista, camiones o el resto de vehículos. (López, 2023)
¿Qué elementos debes considerar para el funcionamiento de un semáforo para un
cruce de calles?
Para el funcionamiento de un semáforo en un cruce de calles, es esencial considerar los
siguientes elementos:
1. Lámparas de señalización:
Tres luces: Rojo (detener), Amarillo (precaución) y Verde (avanzar).
Cada luz debe estar claramente visible para los conductores y peatones.
2. Temporizador:
Controla el tiempo que cada luz permanece encendida.
Los tiempos deben ser adecuados para permitir el flujo del tráfico de manera
segura, considerando la cantidad de vehículos y peatones en el cruce.
3. Controlador de tráfico:
Un dispositivo central que coordina el encendido y apagado de las luces en el
semáforo.
Puede estar programado para operar de manera fija o adaptativa, dependiendo del
flujo de tráfico (más avanzado).
4. Sensores de tráfico:
Detectan la presencia de vehículos en los carriles o el flujo de peatones.
Se pueden utilizar para ajustar los tiempos de los semáforos según la demanda
real de tráfico.
5. Fases de semáforo:
Fase para vehículos: Momentos en los que los vehículos pueden avanzar.
Fase para peatones: Tiempo en el que los peatones pueden cruzar de manera
segura. Esto suele estar acompañado de una señalización especial (luces para
peatones).
Interfase: Períodos entre cambios de luces (por ejemplo, la luz amarilla antes de
cambiar de verde a rojo).
6. Control de emergencia:
Permite a vehículos de emergencia (ambulancias, bomberos) controlar los
semáforos para abrir paso durante situaciones críticas.
7. Luces de cruce peatonal:
Indicadores visuales para que los peatones sepan cuándo pueden cruzar de
manera segura. A menudo, se complementan con sonidos para personas con
discapacidades visuales.
8. Energía eléctrica y respaldo:
Fuente de alimentación que garantice el funcionamiento continuo del semáforo.
Respaldo con baterías o sistemas alternos para mantener el funcionamiento en
caso de fallas eléctricas.
9. Sincronización entre cruces:
Si hay varios cruces cercanos, los semáforos deben estar sincronizados para
evitar conflictos y mejorar el flujo del tráfico.
10. Visibilidad y ubicación:
Los semáforos deben estar colocados en lugares visibles para todos los
conductores y peatones.
Se deben evitar obstáculos visuales como árboles o señales publicitarias.
11. Normas de tráfico:
El semáforo debe cumplir con las regulaciones de tráfico locales para garantizar su
correcto uso y seguridad.
Estos elementos permiten que el semáforo funcione de manera eficiente y segura en un
cruce de calles, regulando tanto el tráfico vehicular como el peatonal.
¿Qué es la comunicación Serial en Arduino?
LA Comunicación serial on Arduino es un recurso utilizado para comunicarse entre
Arduino y una computadora, un módulo o incluso otro Arduino.
Cada Arduino tiene los puertos TX – Transmisor y RX – Receptor, ya que son los puertos
digitales utilizados para realizar la comunicación en serie.
Esta comunicación en serie en el Arduino es un Duplex completo, Como se utilizan dos
cables, uno para enviar y otro para recibir datos, simultáneamente.
Por lo tanto, el puerto RX se usa para recibir datos y el puerto TX se usa para enviar
datos. Vea en la imagen a continuación cómo funciona esto:
Sin embargo, los casos donde solo hay un cable para enviar y recibir se llaman Medio
duplex, pero este no es el caso de Arduino.
Estos puertos funcionan con una señal TTL de 5v, por lo que para comunicarse con un
dispositivo que funcione con un voltaje diferente, necesitará un convertidor de nivel.
(todo sobre circuitos, s.f.)
Teniendo los materiareles que vamos a utilizar, empezamos a ensamblar
Tomamos en cuenta que los colores sirven para distinguir dónde va conectado cada
componente y hacia dónde; sobre todo, cuando manejamos voltaje (rojo) y tierra (negro),
estos dos elementos son esenciales para cualquier circuito y también alimentar el
protoboard.
Para conectar los LEDs sólo se debe distinguir cuál es Tierra y cuál es el Voltaje, en el
caso de los que van a tierra se realiza el puente con las resistencias y las patitas de
Voltaje, cada uno al pin correspondiente del Arduino que se definieron anteriormente.
El uso de las resistencias es importante para evitar que el LED se pueda quemar, sólo se
usan como un puente para conducir la electricidad de forma controlada.
Ya que teniendo listo el circuito
continuamos con el código que lo hará funcionar.
Código
void setup () {
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
}
void loop (){
digitalWrite(13,LOW);
digitalWrite(11,LOW);
delay(5000);
digitalWrite(11,LOW);
digitalWrite(12,LOW);
delay(1000);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
delay(5000);
}
Para cargar el programa en el Arduino y funcione, se conecta mediante USB el cable que
va hacia el Arduino
Si no marca error, el programa está listo, de lo contrario revisa tu código nuevamente o
que el cable esté bien conectado.
¿Por qué es importante usar el monitor en serie Arduino?
Es importante porque permite depurar el código, monitorear datos en tiempo real,
comunicarte con la placa y seguir la ejecución del programa sin detenerlo. Facilita la
identificación de errores y ajustes de parámetros, mejorando el desarrollo y la eficiencia
del proyecto.
¿Qué observaste al tratar de realizar el parpadeo del LED verde?
Que encendió primero, estuvo un momento encendido y luego se apagó y encendió el
LED rojo
¿Cuáles fueron las dificultades que encontraste?
Al principio el código no se subía al Arduino, me marcaba error, intentamos con otro
código y seguía marcando error, ya que lo estábamos realizando en el programa de
Arduido, luego verificamos que estuvieran conectado bien los jumpers y las resistencias y
aun así no procesaba el código.
¿Qué más podríamos agregar para mejorar nuestro semáforo?
Temporizador visual
Se podría agregar un display de 7 segmentos que muestre el tiempo restante para cada
fase del semáforo. Esto ayudaría tanto a los conductores como a los peatones a anticipar
los cambios de luces.
Sensor de a proximidad al peatón
Implementar un sensor de proximidad como el HC-SR04 para detectar vehículos o
peatones que se acerquen al cruce. El semáforo podría cambiar automáticamente en
función de la presencia de tráfico.
Conclusión
Al estar frente al montaje del semáforo en Arduino, la verdad me sentí un poco
preocupado al ver cómo los códigos no cargaban y los LEDs no encendían, realizamos
varias pruebas y al final no era yo que estaba en el error, probablemente fue el programa.
Es una experiencia donde realmente te das cuenta de cómo las piezas pequeñas, como
las resistencias, los cables y los LEDs, se ensamblan para dar lugar a algo más grande,
un sistema que regula el tránsito, pero en miniatura. Lo curioso es cómo cada
componente tiene un propósito específico, como los LEDs que representan las señales de
tráfico, y el Arduino como el cerebro que controla todo el flujo.
Lo que ya sabía es que los semáforos tienen un patrón, pero nunca había entendido
realmente cómo ese patrón se traducía a nivel de código y componentes electrónicos.
Sabía que las resistencias eran importantes para proteger los LEDs, pero verlo en la
práctica y comprobar que sin ellas los LEDs podrían quemarse fue revelador.
Lo más interesante fue comprender cómo funciona la lógica detrás del temporizador que
controla los tiempos entre las luces, y cómo ese mismo principio está presente en muchos
aparatos que usamos a diario, desde el microondas que tiene temporizadores hasta el
semáforo real que ves en las calles. Al experimentar con este sistema en algo tan básico
como encender y apagar luces, me doy cuenta de cómo esos mismos principios se
aplican a muchas cosas más complejas en nuestra vida diaria, y que todo se reduce a
controlar el flujo, ya sea de electricidad, datos o tiempo.
Al final, enfrenté algunas dificultades con el código y las conexiones. Tuve que aprender
que no siempre las cosas funcionan a la primera, y que revisar pacientemente cada parte,
como los jumpers o la conexión del USB, es fundamental para que el sistema funcione
como debe. Ahora entiendo mejor cómo interactúan todos estos elementos, y cómo esa
lógica de funcionamiento está en muchos de los dispositivos que usamos a diario, solo
que no lo notamos.
Bibliografía
(s.f.). Obtenido de todo sobre circuitos: https://www.circuitos-electricos.com/comunicacion-en-
serie-de-arduino-que-es-y-como-usar/#:~:text=LA%20Comunicaci%C3%B3n%20serial
%20on%20Arduino%20es%20un%20recurso%20utilizado%20para
López, M. (20 de febrero de 2023). Obtenido de Motor.es:
https://www.motor.es/que-es/semaforo