Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SEÑALES DE TRÁFICO
En esta lección, investigarás cómo los circuitos son operados por microcontroladores
como el de tu placa Arduino. Más específicamente, explorarás la diferencia entre
dispositivos digitales y analógicos y cómo estos dispositivos pueden usarse como
entradas para recopilar información o salidas para realizar una tarea.
Resumen
¿Qué se te viene a la cabeza cuando piensas en la comunicación? ¿Cómo se comunican
comúnmente las personas entre sí? Ciertamente, la comunicación implica hablar y
escuchar, pero también hay otras formas de comunicación. Por ejemplo, las luces y los
LEDs a menudo se usan como indicadores visuales en las máquinas para comunicar el
estado de la máquina. Los vehículos tienen luces que comunican poco combustible, baja
presión de aceite, batería baja y otros problemas del motor. Incluso los semáforos nos
indican cuando debemos cruzar una intersección. Todos estos ejemplos, y muchos
otros requieren un control preciso del flujo de electricidad en circuito. Este control a
menudo lo lleva a cabo un programa de computadora que le dice a las luces cuándo
encenderlas o apagarlas.
En esta lección, investigarás cómo los circuitos son operados por microcontroladores
como el de tu placa Arduino UNO R3. Más específicamente, explorarás la diferencia
entre dispositivos digitales y analógicos y cómo estos dispositivos pueden usarse como
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 1/63
8/2/23, 10:15 Student Kit!
entradas para recopilar información o salidas para realizar una tarea. También
explorarás el entorno de programación de Arduino y cómo se comunica con la placa
Arduino UNO R3. Después de construir un circuito LED, escribirás programas para
controlar los LEDs en el circuito, incluido un programa para un semáforo. Con el
programa del semáforo completo y en funcionamiento, usarás un multímetro para
tomar medidas eléctricas en el circuito.
TEACHER NOTES
Los tiempos listados aquí son solo una guía y es posible que deban ajustarse a
medida que verifica la comprensión y ajusta/re-enseña
Semáforo Básico
Recoger 1 minuto
Objetivos de Aprendizaje
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 3/63
8/2/23, 10:15 Student Kit!
Vocabulario
Algoritmo – Un conjunto de pasos o reglas que deben seguirse para resolver un
problema.
Umbral – Una cantidad que debe alcanzarse para que se cumpla una determinada
condición o se produzca una acción.
Verificar – Evaluar el código para determinar si es legible y puede ser compilado por
una computadora.
TEACHER NOTES
Hay numerosas actividades de vocabulario que puedes hacer que hagan tus
alumnos. Sin embargo, el tiempo para completar estas actividades no se tiene
en cuenta en el plazo de 90 minutos para la lección. Considere estas actividades
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 4/63
8/2/23, 10:15 Student Kit!
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 5/63
8/2/23, 10:15 Student Kit!
Inventos Destacados
Historia del semáforo
A los inventores, programadores e ingenieros les encanta cuando llega la inspiración.
Pero incluso las ideas brillantes rara vez salen bien a la primera. Quizás recuerdas que el
equipo de Thomas Edison desarrolló más de 1.000 prototipos de la bombilla antes de
que su idea de un filamento en una caja de vidrio fuera realmente exitosa. La
complicaciones y descuidos deben ser resueltos antes de que una idea funcione según
lo previsto. Estos defectos de diseño se llaman bugs (errores).
Incluso en la era del caballo y la carroza, era necesario dirigir el tráfico. Un gerente
ferroviario británico llamado John Peake Knight creó el semáforo en 1868. A diferencia
de los semáforos modernos, el dispositivo fue operado por un oficial de policía que
cambiaba el semáforo manualmente. Usó luces de gas para iluminar las palabras en la
señalización. Lamentablemente, solo unas pocas semanas después de ser instalado el
dispositivo, una fuga de gas causó una explosión que hirió gravemente al oficial.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 6/63
8/2/23, 10:15 Student Kit!
Se han realizado innumerables otras mejoras en los diseños de los semáforos a lo largo
de los años. Trabajar a través de bugs de diseño a menudo puede ser una gran fuente
de innovación.
Pero, ¿de dónde vino el término bug en primer lugar? Según sus cartas, parece que
proviene de Thomas Edison. Sin embargo, una historia más colorida que rodea el
término se centra en la Contralmirante de la Marina Grace Hopper.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 7/63
8/2/23, 10:15 Student Kit!
Hopper fue una de las primeras científicas en prever que era posible crear un lenguaje
de programación usando palabras en inglés. En consecuencia, desarrolló el primer
compilador, un sistema que convirtió el lenguaje humano en lenguaje máquina. Y
cuando se creó el lenguaje informático COBOL en 1959, Hopper era asesora. Murió en
1992, pero los informáticos todavía se refieren a ella cariñosamente por sus apodos
"Amazing Grace" y "Grandma COBOL".
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 8/63
8/2/23, 10:15 Student Kit!
Semáforo Básico
En esta primera actividad, conectarás un circuito básico de semáforo con tres LEDs.
Después de construir el circuito, escribirás un programa y lo cargarás en la placa
Arduino UNO R3 para controlar el semáforo.
TEACHER NOTES
Componentes Necesarios
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 9/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
Alarma de humo
Controles de limpiaparabrisas
Multímetro
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 10/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
Diagrama esquemático
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 11/63
8/2/23, 10:15 Student Kit!
Step 1
Usa un cable de conexión para conectar el pin digital 5 de la placa Arduino UNO R3 al
orificio 3a en la placa de prototipado.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 12/63
8/2/23, 10:15 Student Kit!
Step 2
Busca un LED rojo. Inserta el ánodo del LED en el orificio 3e. Inserta el cátodo en el
orificio 3f.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 13/63
8/2/23, 10:15 Student Kit!
Step 3
Busca un resistor de 220 ohmios. Inserta un pin del resistor en el orificio 3j. Inserta el
otro pin del resistor en el terminal negativo en el lado derecho de la placa.
Step 4
Usa otro cable de conexión para conectar el pin digital 4 de la placa Arduino UNO R3 al
orificio 10a en la placa de prototipado
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 14/63
8/2/23, 10:15 Student Kit!
Step 5
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 15/63
8/2/23, 10:15 Student Kit!
Step 6
Usa otro resistor de 220 ohmios para conectar el LED amarillo a tierra. Inserta un pin
del resistor en el orificio 10j. Inserta el otro pin del resistor en el terminal negativo en el
lado derecho de la placa.
Step 7
Un LED verde será controlado por el pin digital 3 de la placa Arduino UNO R3. Usa un
cable de conexión para conectar el pin digital 3 al orificio 17a en la placa de prototipado
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 16/63
8/2/23, 10:15 Student Kit!
Step 8
Conecta un LED verde a la fila 17 de la placa de prototipado. El ánodo del LED debe
conectarse al orificio 17e y el cátodo al orificio 17f.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 17/63
8/2/23, 10:15 Student Kit!
Step 9
Usa un resistor de 220 ohmios más para conectar el LED verde a tierra. Un pin del
resistor debe conectarse al orificio 17j. El otro pin debe conectarse al terminal negativo
de la placa de prototipado. Tu circuito está casi completo. Sin embargo, ¿notaste que el
circuito no es un circuito cerrado? Le falta un componente. ¿Puedes adivinar qué es?
Step 10
El circuito no está completo porque su terminal negativo no está conectado a tierra. Los
tres caminos del circuito se unen en el terminal negativo en el lado derecho de la placa
de prototipado. Debe conectar el terminal al pin de tierra de la placa Arduino UNO R3
para completar el circuito. Usa el cable de alimentación negro para conectar cualquier
orificio desde el terminal negativo derecho a uno de los pines de tierra (marcado como
GND) en la placa Arduino UNO R3.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 18/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
Es posible que debas recordar qué pin es el ánodo y qué pin es el cátodo.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 19/63
8/2/23, 10:15 Student Kit!
Ahora tienes un circuito en paralelo completo con tres ramas, una para color de LED. La
potencia de cada rama será controlada por los pines digitales en la placa Arduino UNO
R3. Estos pines actuarán como interruptores que activan y desactivan el flujo de
corriente.
FURTHER NOTES
En la placa Arduino UNO R3, hay tres pines marcados como tierra (GND). Todos
estos pines funcionan igual y puedes conectar a tierra tu circuito con cualquiera
de ellos.
FURTHER NOTES
Puede ser difícil leer la pantalla desde muy lejos. Para ayudarte con esto, ve
a File > Preferences y aumenta el tamaño de la fuente de 18 a 24. Esto hace
que sea más fácil leer la pantalla desde lejos.
TEACHER NOTES
2) En el menú File, elije New. Esto comenzará un nuevo sketch en una nueva ventana.
Puedes cerrar la otra ventana de sketch.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 20/63
8/2/23, 10:15 Student Kit!
Hay dos métodos para ver el IDE de Arduino y las instrucciones de este curso. Usa el
método que mejor te resulte.
Método 1 – Maximiza la ventana Arduino IDE a pantalla completa. Luego, alterna entre la
venta IDE y las instrucciones del curso utilizando la barra de tareas en la parte inferior
de la pantalla
Método 2 – Organiza la ventana IDE de Arduino y las instrucciones del curso una al lado
de la otra para que pueda ver ambas al mismo tiempo. Ambas ventanas serán más
pequeñas, posiblemente haciendo que sea más difícil de ver, pero la ventaja es que no
tienes que alternar de un lado a otro.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 21/63
8/2/23, 10:15 Student Kit!
3) Guarda el sketch con un nuevo nombre. En el menú File, elije Save As... La localización
del sketch debe ser el Arduino Sketchbook. Si no es así, elige dónde debes guardar el
sketch en la computadora. Nombra el archivo como "Lesson3_V1" seguido de tus
iniciales. Después haz click en Save.
Nota: Cuando guardes sketches, es una buena idea guardar los cambios
importantes como una versión del sketch. Esto te permitirá hacer una copia de
seguridad de una versión anterior del sketch por si algo sale mal en el sketch y no
puedes diagnosticar el problema. A medida que guardas sketchs a lo largo de cada
lección, aumentará el número de versión (V1) cada vez que realices cambios
importantes.
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 22/63
8/2/23, 10:15 Student Kit!
4) Observa que en tu nuevo sketch hay dos secciones: una sección llamada void setup()
y una sección llamada void loop(). Estas secciones son llamadas funciones. Cada sketch
de Arduino tiene estas dos funciones. La función void setup() contiene comandos que
quieres ejecutar una vez al comienzo de tu programa. La función void loop() contiene
comandos que quieres que la placa Arduino UNO R3 ejecute continuamente.
Los comandos para la función void setup() o void loop() deben introducirse entre llaves
para esa función. La llave de apertura – { – indica el comienzo de la función, y la llave de
cierre – } – indica el final de la función.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 23/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 24/63
8/2/23, 10:15 Student Kit!
Nota: Además de las llaves, las funciones void setup() y void loop() también tienen
paréntesis. Los paréntesis tienen otro propósito que no se cubrirá en esta guía.
Sin embargo, es importante no confundir paréntesis con llaves.
5) Tu circuito está utilizando tres pines digitales en la placa Arduino UNO R3. Cada uno
de los pines digitales de la placa se puede configurar como un pin de salida o un pin de
entrada. Los pines de salida envían cinco voltios de electricidad. Los pines de entrada
leen si el voltaje regresa a la placa Arduino UNO R3. Para su circuito, los pines 3, 4 y 5
deben configurarse como pines de salida.
Ejemplos:
pinMode(A1, OUTPUT);
Es hora de añadir tu primera línea de código a la función void setup(). Debajo del
primer comentario de código, escribe el siguiente comando:
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 25/63
8/2/23, 10:15 Student Kit!
Para verificar tu código, haz click en el botón con la marca de verificación en la esquina
superior izquierda de la ventana.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 26/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 27/63
8/2/23, 10:15 Student Kit!
TEACHER NOTES
7) Además del pin 3, tu circuito está utilizando otros dos pines en la placa Arduino UNO
R3 para controlar los LEDs - pines 4 y 5. Bajo el primer comando pinMode(), añade dos
comandos más para configurar pinMode() para los pines 4 y 5 como pines de salida
8) Verifica tu código nuevamente para verificar si hay errores. Depura tu código si has
cometido un error. Vuelve a verificar que tu función void setup() se ve así:
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 28/63
8/2/23, 10:15 Student Kit!
9) Los comentarios de código son útiles para recordar lo que hacen las líneas o
secciones de código. Cambia el comentario de código para la función void setup() a algo
más descriptivo sobre lo que hacen las líneas de código en esta sección. Por ejemplo,
puedes cambiar el comentario de código para decir:
10) Estás listo para pasar a la función void loop(). Esta es la sección principal del sketch
o programa. Para encender un LED que está conectado a la placa Arduino UNO R3, debe
suministrar voltaje al circuito. La placa puede enviar electricidad a través de cualquiera
de los pines digitales o analógicos. Para los pines digitales, digitalWrite(pin, ESTADO) es
el comando que controla si el voltaje se enciende o apaga para cada pin. El pin puede
ser cualquiera de los pines digitales (0 a 13) en la placa Arduino UNO R3. El ESTADO
puede ser HIGH (que suministra cinco voltios) o LOW (que suministra cero voltios).
Ejemplos
Debajo del comentario para la función void loop(), escribe un comando para encender
el LED verde conectado al pin 3. No olvides terminar el comando con un punto y coma.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 29/63
8/2/23, 10:15 Student Kit!
Nota: Los Recursos se pueden usar para revisar los comandos y cómo deben
formatearse en el IDE de Arduino.
13) Añade comandos digitalWrite() para encender los LEDs amarillos y rojos
conectados a los pines 4 y 5. Añade comentarios de código al final de cada línea. Cuando
termine, verifica y depura tu código.
Nota: Al programar, copiar y pegar es una gran herramienta para escribir líneas
de código similares. Copia una línea o una sección de código libre de errores, pega
el código en su ubicación correcta y cambia las partes que deban cambiarse.
Verifica el código cuando hayas terminado.
TEACHER NOTES
14) Busca el cable USB. Conecta el extremo plano del cable USB a su computadora.
Conecta el otro extremo del cable al puerto USB de la placa Arduino UNO R3.
Tu placa Arduino UNO R3 debe tener una luz verde encendida que indica que está
encendida.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 30/63
8/2/23, 10:15 Student Kit!
Nota: Cuando la placa Arduino UNO R3 está alimentada, también puede tener una
luz amarilla encendida. Esta luz es un indicador de estado para el pin 13. Puedes
ignorar esta luz por ahora.
15) En el IDE de Arduino, ve al menú Tools y luego coloca el ratón sobre Port. Debería
aparecer un menú emergente donde puedes seleccionar el puerto al que está
conectada tu placa Arduino UNO R3.
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 31/63
8/2/23, 10:15 Student Kit!
16) En el IDE, haz clic en el botón Upload para transferir el código a la placa Arduino. El
botón Upload es el botón con una flecha que apunta hacia la derecha en la esquina
superior izquierda de la ventana.
17) Si tus LEDs no se encendieron, depura tu código y repite el Paso 15. Tu código
debería ser similar a esto:
18) Guarda tu sketch antes de continuar. Haz clic en Save o ve al menú File y selecciona
Save.
TEACHER NOTES
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 32/63
8/2/23, 10:15 Student Kit!
TEACHER NOTES
En esta actividad, los alumnos añadirán código a su sketch y harán que los LEDs
parpadeen. Se les presentarán estos comandos:
1) Si es necesario, inicia el IDE de Arduino y abre tu sketch Lesson3_V1. Usa el cable USB
para conectar la placa Arduino UNO R3 al puerto USB de la computadora.
2) Guarda el sketch con un nuevo nombre. En el menú File, elije Save as... La localización
del sketch debe ser el Arduino Sketchbook. Si no es así, elige dónde debes guardar el
sketch en la computadora. Nombra el archivo como "Lesson3_V2" seguido de tus
iniciales. Después haz click en Save.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 33/63
8/2/23, 10:15 Student Kit!
Para que los LEDs parpadeen, debes apagarlos. En sus tres nuevos comandos
digitalWrite(), el estado debe ser LOW en lugar de HIGH.
Nota: Copiar y pegar puede ser el mejor amigo de un programador. Copiar una
sección de código libre de errores, pegarla en una nueva ubicación y modificar sus
parámetros puede ser más rápido y más limpio. Siempre asegúrate de que una
sección del código esté libre de errores antes de copiarla y pegarla. Copia tus
primeros tres comandos de digitalWrite(). Pega una copia de estos comandos
después de los primeros tres comandos. Cambia el estado de HIGH a LOW. Cambia
los comentarios de tu código para que coincidan.
Añade comentarios de código a tus comandos explicando lo que hace cada comando.
Tus nuevas líneas de código deberían ser similares a esto:
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 34/63
8/2/23, 10:15 Student Kit!
6) Haz clic en el botón Upload para transferir el sketch a la placa Arduino UNO R3.
Cuando se complete la transferencia, se ejecutará el código. ¿Tus luces parpadean? Lo
más probable es que no estén parpadeando. Discute con tu compañero por qué crees
que tus luces no parpadean.
El problema con tu sketch no es que las luces no estén parpadeando, lo están haciendo.
Están parpadeando tan rápido que tus ojos no pueden verlo. Las líneas de código se
ejecutan muy rápidamente. De hecho, el IDE de Arduino te permite controlar qué tan
rápido se ejecutan los comandos hasta el microsegundo. Eso es una millonésima de
segundo (1/1,000,000).
delay(2000);
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 35/63
8/2/23, 10:15 Student Kit!
Es importante entender que durante un delay, la placa Arduino UNO R3 no puede hacer
nada. No puede ejecutar ningún otro comando hasta que finalice el delay. Un comando
de delay simplemente hace que la placa se siente y espere el tiempo designado.
Tu sketch tiene tres líneas que encienden los LEDs. Después de estas tres líneas, añade
un comando delay(). Establece el tiempo de delay por un segundo. Asegúrate de añadir
un punto y coma al final del comando.
9) Carga tu sketch a la placa Arduino UNO R3. Cuando esté completo, los LEDs deberían
parpadear en intervalos de dos segundos.
TEACHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 36/63
8/2/23, 10:15 Student Kit!
intersección concurrida.
TEACHER NOTES
1) Si es necesario, inicia el IDE de Arduino y abre tu sketch Lesson3_V2. Usa el cable USB
para conectar la placa Arduino UNO R3 al puerto USB de la computadora.
2) Guarda el sketch con un nuevo nombre. En el menú File, elije Guardar como... La
localización del sketch debe ser el Arduino Sketchbook. Si no es así, elige dónde debes
guardar el sketch en la computadora. Nombra el archivo como "Lesson3_V3" seguido de
tus iniciales. Después haz click en Save.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 37/63
8/2/23, 10:15 Student Kit!
4) Hasta ahora en este sketch, has escrito comandos para parpadear los tres LEDs
conectados a tu placa Arduino UNO R3. Para modificar estos LEDs para que actúen
como un semáforo, tomará un poco de tiempo pensarlo. Busca el cuaderno de
actividades para estudiantes y pasa a la Lección 3, página 9.
5) Considera lo que debe suceder para que tu circuito funcione como un semáforo. En el
espacio provisto en tu cuaderno, escribe un pseudocódigo que describa cómo
funcionará tu semáforo. Utiliza el inglés estándar. Las siguientes preguntas pueden
ayudarte a escribir tu pseudocódigo:
¿Qué deben hacer las otras luces cuando se encienda una luz?
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 38/63
8/2/23, 10:15 Student Kit!
digitalWrite() y delay() según sea necesario. Aquí hay algunos consejos mientras
programas:
Tu función void loop() debe tener tres secciones. Uno para la luz verde, uno para la
luz amarilla y otro para la luz roja.
8) Carga tu sketch a la placa Arduino UNO R3. Cuando el sketch se transfiera por
completo, se ejecutará el código.
FURTHER NOTES
Los sketchs deberían verse como uno de estos ejemplos. El segundo ejemplo ha
sido optimizado para eliminar comandos innecesarios.
<
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 39/63
8/2/23, 10:15 Student Kit!
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 40/63
8/2/23, 10:15 Student Kit!
Componentes Necesarios
FURTHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 41/63
8/2/23, 10:15 Student Kit!
Diagrama esquemático
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 42/63
8/2/23, 10:15 Student Kit!
Step 1
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 43/63
8/2/23, 10:15 Student Kit!
Step 2
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 44/63
8/2/23, 10:15 Student Kit!
Step 3
Usa un cable de conexión para conectar el pin superior izquierdo del botón al pin digital
2 en la placa Arduino UNO R3. Inserta un extremo del cable de conexión en el orificio
25a. Inserta el otro extremo del cable de conexión en el pin 2.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 45/63
8/2/23, 10:15 Student Kit!
Step 4
Usa un cable de conexión corto para conectar el pin inferior izquierdo del botón al
terminal positivo de la placa de prototipado. Inserta un extremo del cable de conexión
en el orificio 27a. Inserta el otro extremo en el terminal positivo en el lado izquierdo de
la placa de prototipado.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 46/63
8/2/23, 10:15 Student Kit!
Step 5
Conecta un resistor de 10K ohmios entre el pin superior derecho del botón y tierra.
Inserta un extremo del resistor en el orificio 25j. Inserta el otro extremo del resistor en
el terminal negativo de la placa de prototipado en el lado derecho.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 47/63
8/2/23, 10:15 Student Kit!
Step 6
Por último, debes enviar energía al interruptor a través del terminal positivo. Usa el
cable de alimentación rojo para conectar el terminal positivo en el lado izquierdo de la
placa de prototipado con el pin de 5V en la placa Arduino UNO R3.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 48/63
8/2/23, 10:15 Student Kit!
Ya sabes cómo funciona la parte de los LEDs del circuito. Cada LED actúa como una
salida y es controlado por un pin diferente en la placa Arduino UNO R3. Pero el pulsador
conectado al pin 2 en la placa es diferente. Es un dispositivo de entrada. El pin 2 leerá el
voltaje que entra en lugar de enviarlo.
Hay dos caminos conductores que puede tomar la corriente hasta el pin 2 dependiendo
de si el interruptor está arriba o abajo. Cuando el interruptor está abajo, el pin 2 leerá
cinco voltios a medida que la corriente fluye a través del interruptor. Cuando el
interruptor abajo, la corriente no puede fluir a través de él, en su lugar, el camino
conductor pasa a través del resistor de 10K ohmios, que baja el voltaje a cero. La
sección de Resistores pull-down explica cómo funciona esto con más detalle.
TEACHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 49/63
8/2/23, 10:15 Student Kit!
buena idea volver a este concepto más adelante en el curso después de que los
estudiantes tengan más experiencia para desarrollar aún más su comprensión.
TEACHER NOTES
1) Si es necesario, inicia el IDE de Arduino y abre tu sketch Lesson3_V3. Usa el cable USB
para conectar la placa Arduino UNO R3 al puerto USB de la computadora
2) Guarda el sketch con un nuevo nombre. En el menú File, elije Save As... La
localización del sketch debe ser el Arduino Sketchbook. Si no es así, elige dónde debes
guardar el sketch en la computadora. Nombra el archivo como "Lesson3_V4_" seguido
de tus iniciales. Después haz click en Save.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 50/63
8/2/23, 10:15 Student Kit!
4) Su placa Arduino UNO R3 está configurado para usar el pin digital 2 como entrada. En
la función void setup(), añade otro comando pinMode() que declare el pin 2 como
entrada. Luego, añade un comentario de código que explique tu nuevo comando.
Sentencia Condicional
Hay dos comportamientos diferentes que el semáforo debe mostrar dependiendo de si
el botón es presionado. Cuando el botón está presionado, la parte del código para que
crucen los peatones debe ejecutarse y el LED verde debe parpadear. Cuando el botón
no esté presionado, el semáforo debe funcionar normalmente tal y como ya lo
programaste. Para programar ambos comportamientos, necesitarás usar una nueva
función de programación llamada sentencia condicional.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 51/63
8/2/23, 10:15 Student Kit!
Una sentencia condicional a veces se llama sentencia if-then o, más simplemente, solo
una sentencia if. Las sentencias condicionales te permiten ejecutar ciertas líneas de
código si una determinada situación o condición es verdadera. Utilizas condicionales
para tomar decisiones todo el tiempo en tu día a día. Aquí hay algunos ejemplos
básicos:
if (condicion) {
Operador de
Significado Ejemplo
Comparación
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 52/63
8/2/23, 10:15 Student Kit!
**Nota:** Observa que la comparación "es igual a" es un signo de doble igual. Se
utiliza un solo signo igual para asignar un valor a una variable. Se utiliza un doble
signo igual para comparar dos valores. Aprenderás más sobre las variables y
asignar valores en la Lección 4
Cuando se comparan los dos valores en la condición, el resultado puede ser verdadero
o falso. Si la condición es verdadera, se completan los comandos dentro de las llaves. Si
la condición es falsa, los comandos dentro de las llaves se omiten.
**Nota:** Recuerda que cada función en el IDE de Arduino que tiene una llave de
apertura debe tener una llave de cierre. Cuando trabajas con sentencias
condicionales, puede ser confuso qué llaves pertenecen a qué función. En el IDE, si
mueves el cursor directamente detrás de una llave de apertura o cierre, la pareja
de esa llave se resaltará con un cuadro
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 53/63
8/2/23, 10:15 Student Kit!
La declaración if que acabas de crear compara el estado del pin 2 con un valor LOW.
Recuerda que el valor de voltaje LOW se produce cuando no se presiona el botón y la
ruta conductora es a través del resistor de 10K ohmios. En otras palabras, esta
sentencia condicional dice: "si el botón no está presionado".
6) A continuación, debes añadir los comandos que deseas ejecutar cuando el pin 2 es
LOW y el botón no este presionado. Estos son los comandos que ya creaste que
ejecutan el semáforo normal. Puedes cortar y pegar estos comandos entre las llaves
para la sentencia if, o simplemente puedes mover la llave de cierre para la declaración if
después del último delay. Usa el método que te resulte más conveniente. Cuando
termines, tu función void loop() debería ser similar a esto
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 54/63
8/2/23, 10:15 Student Kit!
Nota: Observa en el código cómo se sangran los comandos para la instrucción if.
El uso de sangría ayuda a mantener el código ordenado y deja en claro qué
comandos se ejecutan en una función. Aunque puede tomar unos segundos
adicionales, usa sangría, saltos de línea y comentarios de código para que su
código se vea bien. Valdrá la pena a la larga.
FURTHER NOTES
8) Has programado la parte del circuito que opera el semáforo cuando el botón no está
presionado. Ahora es el momento de escribir el código que permite a un peatón cruzar
la calle cuando se presiona el botón. Esto requerirá una segunda sentencia condicional.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 55/63
8/2/23, 10:15 Student Kit!
Sin embargo, esta vez, debes comparar el valor digitalRead() del pin 2 con HIGH en
lugar de LOW. Escribe la siguiente sentencia condicional al final de tu sketch antes de la
llave de cierre para la función void loop().
9) Cuando se pulsa el botón, el semáforo debe detener todo el tráfico e indicar a los
peatones que está bien cruzar la calle. Para hacer esto, apaga el LED rojo y LED amarillo
y haz que el LED verde parpadee. Dentro de las llaves de su segunda sentencia
condicional, añade tres comandos digitalWrite()
10) Tu tarea final es hacer que el LED verde parpadee mientras se presiona el botón.
Recuerda que la velocidad de parpadeo está determinada por sus sentencias de delay().
Puedes elegir la velocidad de parpadeo del LED verde. Antes de la llave de cierre de tu
segunda sentencia if, añade una declaración de delay seguida de una sentencia
digitalWrite() para apagar el LED verde y luego añade una sentencia de delay final.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 56/63
8/2/23, 10:15 Student Kit!
11) Añade comentarios de código a tus nuevos comandos que expliquen lo que hace
cada uno.
12) Verifica y depura tu código si es necesario. Tu sketch debería ser similar a esto:
13) Carga tu sketch a la placa Arduino UNO R3. Cuando el sketch se transfiera por
completo, se ejecutará el código
Probar y Modificar
En la Lección 2, aprendiste sobre circuitos en serie y en paralelo. La mayoría de los
circuitos generalmente no son 100% en serie o 100% en paralelo. La mayoría de los
circuitos son una combinación de circuitos en serie y en paralelo. De hecho, el semáforo
que has construido tiene elementos de circuitos en serie y en paralelo. En esta
actividad, identificarás partes de tu circuito que están cableadas en serie y en paralelo.
También usarás el multímetro para explorar cómo el botón controla el voltaje que entra
a la placa Arduino. Necesitarás tu cuaderno de actividades para estudiantes para esta
actividad.
TEACHER NOTES
1) Si es necesario, inicia el IDE de Arduino y abre tu sketch para la lección 3. Usa el cable
USB para conectar la placa Arduino UNO R3 al puerto USB de la computadora.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 57/63
8/2/23, 10:15 Student Kit!
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 58/63
8/2/23, 10:15 Student Kit!
4) Recuerda que el voltaje es una diferencia en la energía potencial entre dos partes del
circuito. Los pines de la placa Arduino UNO R3 siempre miden esta diferencia en
comparación con tierra. Para encontrar el voltaje del pin 2, debes conectar el
multímetro a tierra. Conecta un cable de conexión al terminal negativo de la placa de
prototipado.
5) Con el botón en la posición superior, mide el voltaje entre el botón y tierra. Con la
punta de prueba roja toca uno de los pines superiores del botón. Con la punta de
prueba negra toca el otro extremo del cable de conexión que está conectado a tierra.
Registra tu medida de voltaje como el Voltaje del Pin 2 cuando el botón está arriba.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 59/63
8/2/23, 10:15 Student Kit!
6) Un pin digital tiene dos estados, HIGH o LOW. Un pin está en estado HIGH cuando
recibe más de 3 voltios de electricidad. Un pin está en estado LOW cuando recibe menos
de 1.5. En tu cuaderno de actividades, registra si el pin es HIGH o LOW cuando el botón
está arriba.
7) Presiona el botón para que el semáforo pase al modo peatonal. Con el botón
presionado, mide el voltaje entre el botón y tierra. Con la punta de prueba roja toca uno
de los pines superiores del botón. Con la punta de prueba negra toca el otro extremo
del cable de conexión que está conectado a tierra. Registra tu medición de voltaje en la
columna Voltaje de Pin 2 cuando el botón está presionado.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 60/63
8/2/23, 10:15 Student Kit!
TEACHER NOTES
Los estudiantes que trabajan solos tendrán problemas con esta parte de la
actividad.
FURTHER NOTES
Se necesitan más de dos manos para pulsar el botón y medir el voltaje al mismo
tiempo. Estate preparado para pedir ayudar si es necesario.
9) Mira los datos que acabas de reunir. Usa estos datos para explicar cómo el circuito
del botón se lee como HIGH o LOW en el pin 2 de la placa Arduino UNO R3. Asegúrate de
incluir una explicación de por qué se necesita el resistor de 10K ohmios.
10) Limpia tu área de trabajo y guarda todo el equipo en sus cajas correspondientes.
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 61/63
8/2/23, 10:15 Student Kit!
FURTHER NOTES
IDEAS DE EXTENSIÓN
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 62/63
8/2/23, 10:15 Student Kit!
TEACHER NOTES
https://studentkit.arduino.cc/studentkit/module/student-kit/lesson/traffic-signals 63/63