0% encontró este documento útil (0 votos)
10 vistas8 páginas

Experimentos Prácticos con Arduino UNO

El informe presenta experimentos realizados con Arduino UNO para explorar su funcionamiento y aplicaciones prácticas, utilizando componentes como sensores, displays LCD, LEDs y teclados matriciales. Se abordaron conceptos de lectura digital y analógica, comunicación con periféricos y control de salidas, fortaleciendo la lógica de programación y la resolución de problemas. Los resultados incluyen la implementación de sistemas como un semáforo y mediciones de distancia, demostrando la versatilidad de Arduino en proyectos de automatización y electrónica.

Cargado por

David Ariel
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas8 páginas

Experimentos Prácticos con Arduino UNO

El informe presenta experimentos realizados con Arduino UNO para explorar su funcionamiento y aplicaciones prácticas, utilizando componentes como sensores, displays LCD, LEDs y teclados matriciales. Se abordaron conceptos de lectura digital y analógica, comunicación con periféricos y control de salidas, fortaleciendo la lógica de programación y la resolución de problemas. Los resultados incluyen la implementación de sistemas como un semáforo y mediciones de distancia, demostrando la versatilidad de Arduino en proyectos de automatización y electrónica.

Cargado por

David Ariel
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Lunes 6 de Mayo del 2025

Informe de Laboratorio: Arduino


Angela Andrango1 , Cristian Barba2 , Ariel Guanoluisa3

Abstract
En este trabajo se presentan una serie de experimentos realizados con la placa Arduino UNO, orientados a
comprender mejor como funciona esta plataforma y cómo se pueden aplicar sus capacidades en distintos
escenarios prácticos. Se trabajó con sensores, displays LCD, LEDs y un teclado matricial, realizando montajes
paso a paso que permitieron validar el funcionamiento de cada componente y su integración. A lo largo de los
experimentos, se exploraron conceptos como lectura digital y analógica, comunicación con periféricos, y control
de salidas en función de entradas especı́ficas. Todo esto sirvió para fortalecer la lógica de programación y la
capacidad de resolución de problemas, acercándonos a una comprensión más profunda de la electrónica y la
automatización.

Contents
1 Fundamentos Teóricos 1
1.1 Introducción general al sistema de Arduino . . . . 1
1.2 Componentes utilizados y su funcionamiento . . . 1
1.3 Principios básicos de programación en Arduino . 2
2 Resultados y Discusión 3
2.1 Blinking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Figure 1. Placa Electrónica

2.2 Semaforo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3 Valor entrada . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 Componentes utilizados y su funcionamiento
2.4 Hello world . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 • Potenciometro El potenciómetro es un dispositivo
2.5 Medición de distancia con sensor ultrasónico . . 6 electrónico que actúa como un divisor de voltaje vari-
able. Al girar su eje, varı́a la resistencia interna, lo que
2.6 Control de ángulo de un servo mediante potenciómetro
permite modificar el voltaje de salida que se lee desde
6
una entrada analógica del Arduino. En este proyecto se
2.7 Keypad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 usó para controlar la intensidad de las luces (LEDs).
3 Conclusiones 8
References 8

1. Fundamentos Teóricos
1.1 Introducción general al sistema de Arduino
Arduino es una plataforma de prototipado electrónico de
código abierto que permite a los usuarios desarrollar sis-
temas interactivos mediante una combinación de hardware y
software fácil de programar.[1] Está basada en una serie de Figure 2. Estructura de un potenciometro
placas electrónicas que incluyen un microcontrolador (como
el ATmega328P en la placa Arduino UNO) y un entorno de
desarrollo integrado (IDE) para escribir y cargar código al El potenciómetro está formado por una pista resistiva,
dispositivo[2]. dos terminales fijos en los extremos y un terminal
Su versatilidad lo convierte en una herramienta ideal móvil (cursor) que permite ajustar la resistencia según
para proyectos educativos, ya que permite controlar una gran la posición que se le dé manualmente. Esta estructura
variedad de sensores, actuadores y pantallas, facilitando el simple pero efectiva hace que sea muy útil para con-
aprendizaje de electrónica, programación y automatización. trolar volúmenes, luces, o como sensor de posición en
Informe de Laboratorio: Arduino — 2/8

diferentes dispositivos electrónicos


• Pantalla LCD 16x2 En este proyecto se utilizó una pan-
talla LCD 16x2 de tipo paralelo, es decir, sin módulo
I2C. Este tipo de pantalla puede mostrar hasta 16 carac-
teres por 2 lı́neas y se comunica con Arduino mediante
6 pines de datos y control, lo que implica un mayor uso
de pines digitales.

Figure 3. Pantalla LCD 16x2 Figure 5. Keypad

• Sensor Ultrasónico HC-SR04 El funcionamiento del 0° y 180° normalmente). Es ideal para proyectos de
HC-SR04 se basa en la emisión y recepción de ondas movimiento controlado, como puertas automáticas o
ultrasónicas. Cuando se activa, el sensor emite una señal brazos robóticos. [3]
ultrasónica a través del pin Trigger. Esta onda viaja hasta
encontrar un obstáculo, rebota, y es recibida de nuevo
por el sensor a través del pin Echo. A partir del tiempo
que tarda la señal en regresar, Arduino puede calcular
la distancia aproximada al objeto. En este proyecto, el
sensor fue conectado a los pines digitales 9 (Trig) y
10 (Echo) del Arduino UNO. Los datos obtenidos se
mostraron en tiempo real en la pantalla LCD 16x2, lo
cual facilitó al usuario observar la distancia detectada
sin necesidad de utilizar un monitor serial.

Figure 6. Servo

1.3 Principios básicos de programación en Ar-


duino
Durante el desarrollo del laboratorio, se aplicaron di-
Figure 4. Sensor ultrasónico HC-SR04 versos principios fundamentales de programación y
control en la plataforma Arduino. Esta experiencia per-
mitió comprender cómo interactúan los componentes
• Keypad El Keypad es una matriz de botones organizada electrónicos a través de instrucciones lógicas y cómo
en filas y columnas. Arduino detecta qué tecla fue se puede diseñar un sistema funcional mediante progra-
presionada mediante el escaneo de estas filas y columnas. mación estructurada.
Se puede usar para introducir datos, como contraseñas,
opciones o comandos. El primer concepto trabajado fue el de entradas analógicas,
utilizando un potenciómetro para regular la intensidad
• Servo motor El servo motor es un actuador que permite de una señal. Este dispositivo permitió simular una
controlar de forma precisa la posición angular de un entrada variable, que luego fue usada para controlar
eje. Se controla mediante señales PWM, donde la otros elementos del sistema, como la intensidad de una
duración del pulso determina el ángulo deseado (entre luz o el movimiento de un motor.
Informe de Laboratorio: Arduino — 3/8

Otro elemento importante fue la salida de información


a través de una pantalla. Se utilizó una pantalla LCD de
dos lı́neas y dieciséis caracteres para mostrar mensajes
y datos relevantes del sistema. Esta interacción visual
facilitó la comprensión del estado del dispositivo y la
lectura en tiempo real de información como la distancia
medida por un sensor.

En cuanto a los sensores, se integró un sensor ultrasónico.


Este sensor funcionó mediante el envı́o y la recepción
de señales, procesando el tiempo que tarda en recibir el
rebote de la señal para estimar la distancia. La lectura
de este sensor fue fundamental para entender cómo
un sistema puede percibir su entorno y reaccionar en
Figure 7. Esquema del circuito “blinking”.
consecuencia.

También se implementó un teclado matricial, que sirvió


como método de entrada de datos por parte del usuario.
Esta herramienta permitió interactuar directamente con
el sistema, introduciendo comandos o valores que podı́an
ser utilizados en diferentes funciones del prototipo.

Finalmente, se trabajó con un motor tipo servo, el


cual permitió observar cómo un sistema puede generar
movimiento mecánico de forma controlada. El servo fue
regulado a partir de los valores del potenciómetro, de-
mostrando cómo una entrada analógica puede traducirse
en una respuesta fı́sica precisa.

Durante todas estas actividades, se aplicaron estructuras


lógicas básicas como condiciones, ciclos repetitivos y
manejo de variables, lo cual permitió desarrollar una
base sólida en el control de sistemas electrónicos por Figure 8. Circuito “blinking”.
medio de programación. Estos principios son funda-
mentales para cualquier proyecto de automatización o
robótica. La conexión es la siguiente:

• LED 1 (rojo) al pin digital 13.


• LED 2 (amarillo) al pin digital 12.

2. Resultados y Discusión • LED 3 (verde) al pin digital 11.


• LED 4 (rojo) al pin digital 10.
2.1 Blinking
• LED 5 (amarillo) al pin digital 9.
Implementar un sistema de control de encendido secuencial
para múltiples LEDs utilizando una placa Arduino UNO, con • LED 6 (verde) al pin digital 8.
el fin de simular un ciclo de encendido programado en distintos
patrones. Todos los LEDs comparten una conexión común a tierra a
través de sus respectivas resistencias.
El programa cargado en el Arduino enciende y apaga los
LEDs en una secuencia especı́fica, utilizando instrucciones
Montaje
digitalWrite() para establecer el estado de cada pin, y
El circuito consta de seis LEDs conectados a los pines digitales funciones delay() para definir los tiempos entre cambios.
del Arduino. Cada LED está conectado en serie con una El ciclo de funcionamiento alterna el encendido de los
resistencia de 1 kΩ para limitar la corriente. grupos de LEDs para mostrar un patrón de iluminación. Cada
Informe de Laboratorio: Arduino — 4/8

grupo de tres LEDs se activa de forma exclusiva en diferentes Cada grupo contiene un LED rojo, uno amarillo y uno
momentos, siguiendo este orden: verde, conectados respectivamente a los pines digitales del
Arduino:
1. Activación del grupo 1: LED rojo, luego LED amarillo,
luego LED verde. • Grupo 1 (Vı́a 1):

2. Activación del grupo 2: LED rojo, luego LED amarillo, – Rojo: pin 13
luego LED verde. – Amarillo: pin 12
Cada estado tiene una duración determinada, simulando – Verde: pin 11
una secuencia organizada y controlada.
• Grupo 2 (Vı́a 2):
Durante las pruebas del circuito se verificó que:
– Rojo: pin 10
• Los LEDs responden correctamente a las señales envi-
adas por el Arduino. – Amarillo: pin 9
– Verde: pin 8
• Los retardos programados permiten una observación
clara del comportamiento secuencial. Cada LED se conecta con una resistencia limitadora de
1 kΩ y a tierra.
2.2 Semaforo El código implementado en Arduino simula el compor-
Diseñar y simular un sistema de semáforo para dos vı́as tamiento tı́pico de un semáforo vehicular, alternando entre los
utilizando una placa Arduino UNO. El sistema debe alternar dos sentidos. Las transiciones siguen el siguiente orden:
correctamente los estados de los LEDs para representar las
señales de tránsito de forma secuencial y sincronizada. 1. Vı́a 1 en rojo y Vı́a 2 en verde (5 s).
Montaje 2. Vı́a 1 en rojo y Vı́a 2 en amarillo (2 s).
El circuito se compone de seis LEDs distribuidos en dos
grupos que representan los semáforos de dos vı́as. 3. Ambas vı́as en rojo (1 s).

4. Vı́a 1 en verde y Vı́a 2 en rojo (5 s).

5. Vı́a 1 en amarillo y Vı́a 2 en rojo (2 s).

6. Ambas vı́as en rojo (1 s).

El uso de delay() permite definir los tiempos de du-


ración de cada estado. Las funciones digitalWrite()
activan y desactivan los LEDs correspondientes.
Durante la ejecución del programa se observó lo siguiente:

• Las secuencias de encendido y apagado de los LEDs sim-


Figure 9. Esquema del circuito “semaforo”. ulan adecuadamente el comportamiento de un semáforo
doble.

• No hay interferencia entre las dos vı́as.

• El retardo entre fases permite una transición clara y


segura.

2.3 Valor entrada


El objetivo de este montaje es leer mediante Arduino el valor
de tensión de una baterı́a (canal A0), mapearlo al rango 0–20V
y mostrar el nivel en cinco LEDs de diferente color según el
valor obtenido.
El esquema fı́sico se muestra en la Figura 11. Los LEDs
rojo, amarillo, verde, naranja y azul van conectados a los pines
digitales 13, 12, 11, 10 y 9 respectivamente, cada uno con su
resistencia de 1k a GND. La entrada analógica A0 toma la
Figure 10. Circuito “semaforo”. señal de un divisor de tensión que reduce la baterı́a a 0–5V.
Informe de Laboratorio: Arduino — 5/8

añadir un pequeño filtrado (ej. RC) o suavizado por


software (media móvil) para estabilizar la lectura.

2.4 Hello world


Mostrar un mensaje en una pantalla LCD 16x2 mediante una
placa Arduino UNO, utilizando la librerı́a LiquidCrystal.h.
Este circuito permite comprender la comunicación entre micro-
controlador y periféricos externos a través de señales digitales.
El circuito se conectó como se muestra en la Figura 13.
Figure 11. Esquema del circuito “Valor de entrada”. La pantalla LCD se controla por interfaz paralela de 4 bits
conectada a los pines digitales 2 a 5 y controladores RS y EN
en los pines 12 y 11, respectivamente. El contraste se ajusta
con un potenciómetro de 10 kΩ.

Figure 12. Circuito “Valor de entrada”. Figure 13. Esquema del circuito “hello world”.

En la Tabla 1 se recogen algunas lecturas tı́picas obtenidas


desde el Monitor Serie y el estado de los LEDs observados:

Valor Serie Tensión (V) LED activo


2 2V Rojo
6 6V Amarillo
10 10 V Verde
14 14 V Naranja
18 18 V Azul
Table 1. Lecturas de valorBateria1 y LEDs correspondientes.

• Linealidad de la lectura: Se comprobó que map()


entrega valores aproximados al valor real de tensión
dividido por 1V, con un error medio de ±0.2V. Esto
se debe principalmente a la tolerancia del divisor de
tensión y a la precisión del ADC (4mV por LSB).

• Respuesta de los LEDs: Los umbrales teóricos (0–4,


4–8, . . . ) coinciden con lo observado en el montaje
fı́sico. Sólo en los bordes (por ejemplo, 3.8–4.2V) se
detectaron parpadeos breves al pasar de un LED a otro, Figure 14. Circuito “hello world”.
atribuibles al retardo (delay(100)) y al ruido en la
señal analógica. Una vez cargado el programa, la pantalla LCD muestra:
• Comparación con simulación: En Proteus los cambios • En la primera fila: ESTEFANI
de LED fueron instantáneos y sin oscilaciones en los
umbrales, mientras que en la práctica es conveniente • En la segunda fila: STEFANY
Informe de Laboratorio: Arduino — 6/8

Esta visualización es estática, ya que no se actualiza • La actualización en pantalla era casi inmediata, con un
dinámicamente el contenido, sino que permanece fijo a menos retardo imperceptible.
que se reinicie el Arduino o se modifique el código.

2.5 Medición de distancia con sensor ultrasónico Este experimento permitió comprobar el funcionamiento
Implementar un sistema de medición de distancia utilizando el práctico del sensor HC-SR04, ası́ como el uso de una pantalla
sensor ultrasónico HC-SR04 y mostrar los valores obtenidos LCD para mostrar datos en tiempo real. Algunos aspectos
en tiempo real en una pantalla LCD 16x2 mediante una placa relevantes incluyen:
Arduino UNO.

Montaje • Precisión: Aunque no es un sensor de alta precisión,


El circuito se montó según el diagrama mostrado en la sus lecturas son adecuadas para aplicaciones básicas de
Figura 15. Se utilizó un sensor ultrasónico HC-SR04 conec- robótica o automatización.
tado a los pines digitales 9 (Trig) y 10 (Echo), y una pantalla
LCD controlada por interfaz de 4 bits, empleando los pines 2,
3, 4, 5, 11 y 12 del Arduino. Se incluyó un potenciómetro de • Integración: El uso conjunto de sensor y pantalla
10 kΩ para ajustar el contraste de la pantalla. permite visualizar resultados sin necesidad de una com-
putadora.

• Aplicaciones: Esta implementación es fácilmente apli-


cable en sistemas de medición de nivel de lı́quidos,
distancia de obstáculos, alarmas de proximidad, entre
otros.

2.6 Control de ángulo de un servo mediante po-


tenciómetro
Implementar un sistema de control de posición para un servo-
motor mediante un potenciómetro, utilizando Arduino UNO
Figure 15. Esquema del circuito de distancia ultrasonido.
para leer el valor analógico del potenciómetro y traducirlo a
un ángulo comprendido entre 0° y 180°.
El sistema funciona enviando una señal ultrasónica desde
el pin Trig del sensor. Dicha señal rebota en un objeto frente al
sensor y es captada nuevamente por el pin Echo. Midiendo el Montaje
tiempo que tarda la señal en ir y volver, se calcula la distancia. El circuito fue construido conectando un potenciómetro de
Esta distancia es luego convertida a centı́metros y pulgadas, y 10 kΩ al pin analógico A0 del Arduino UNO. El terminal cen-
mostrada en tiempo real en las dos lı́neas de la pantalla LCD. tral (wiper) del potenciómetro se conectó al pin A0, mientras
El cálculo de la distancia se realiza utilizando las siguientes que los extremos se conectaron a 5 V y GND, respectivamente.
fórmulas: Un servomotor fue conectado al pin digital 9, recibiendo
alimentación de 5 V y tierra desde el Arduino.
• Distancia (cm) = duración del pulso × 0.034 / 2

• Distancia (pulgadas) = duración del pulso × 0.0133 / 2

La división entre 2 se debe a que el tiempo medido corre-


sponde al viaje de ida y vuelta de la señal ultrasónica.
Durante las pruebas, se pudo observar que el sistema
respondı́a adecuadamente a variaciones de distancia en tiempo
real. Los valores mostrados en la pantalla LCD correspondı́an
de forma aceptable a las mediciones hechas manualmente con
una regla o cinta métrica.
Se observó lo siguiente:

• Para distancias menores a 400 cm, los resultados fueron


estables y precisos. Figure 16. Esquema del circuito servo
Informe de Laboratorio: Arduino — 7/8

• LED verde conectado al pin digital 10.


• Arduino UNO.
• Resistencias de 1 kΩ para limitar la corriente de los
LEDs.

El teclado se conecta a los pines digitales del 2 al 8,


utilizando los pines 5–2 para las filas y 8–6 para las columnas.

Figure 17. Circuito servo.

El funcionamiento del sistema se basa en la lectura del


valor analógico proporcionado por el potenciómetro. Esta
lectura genera valores entre 0 y 1023, los cuales se mapean
linealmente a un rango de 0 a 180, que corresponde al ángulo
de rotación del servo.
El microcontrolador lee el valor del potenciómetro, realiza
el mapeo y envı́a dicho valor al servomotor utilizando la bib-
lioteca Servo.h, la cual proporciona funciones simplificadas
para controlar el ángulo de giro del servo. El valor se imprime
también en el monitor serial para facilitar la observación del
comportamiento del sistema. Figure 18. Esquema del circuito ”keypad”
Durante el experimento se observó lo siguiente:

• Al girar el potenciómetro en sentido horario, el servo-


motor rotaba gradualmente desde 0° hasta aproximada-
mente 180°.

• El movimiento del servo era suave y proporcional al


ajuste del potenciómetro.

• El valor del ángulo era mostrado en el monitor serial,


facilitando la comprobación de la correspondencia entre
el valor del potenciómetro y el ángulo del servo.

2.7 Keypad
Implementar un sistema de verificación de clave mediante
un teclado matricial 3x4 conectado a un Arduino UNO. El
sistema debe comparar una clave ingresada por el usuario con
una clave predefinida y, según el resultado, activar un LED
verde (acceso concedido) o un LED rojo (acceso denegado).

Montaje
El circuito está compuesto por los siguientes elementos: Figure 19. Circuito ”keypad”.

• Teclado matricial 3x4.


El programa usa la librerı́a Keypad.h para leer los valores
• LED rojo conectado al pin digital 9. presionados en el teclado. El usuario debe ingresar una clave
Informe de Laboratorio: Arduino — 8/8

de cuatro dı́gitos luego de presionar el sı́mbolo *, y debe


finalizar la entrada con el sı́mbolo #. El sistema almacena
los cuatro caracteres presionados y luego los compara con la
clave predefinida (en este caso, 1234).

• Si la clave ingresada es correcta, se enciende el LED


verde.
• Si la clave ingresada es incorrecta, se enciende el LED
rojo.

El resultado también se imprime por el monitor serial.


Durante las pruebas, el sistema respondió adecuadamente
a diferentes combinaciones de entrada. Los LEDs indicaron
correctamente si la clave era válida o no. La respuesta del
sistema es rápida y visualmente clara.

3. Conclusiones
• Las practicas realizadas permitieron aplicar de forma ´
integrada conocimientos de electronica, programaci ´
on´ y simulacion para el dise ´ no de sistemas interac-
tivos con ˜ Arduino UNO.

References
[1] S. Monk, Programming Arduino: Getting Started with
Sketches. McGraw-Hill Education, 2013.
[2] M. Banzi and M. Shiloh, Getting Started with Arduino,
3rd ed. Maker Media, Inc., 2014.
[3] M. McRoberts, Beginning Arduino, 2nd ed. Apress, 2013.

También podría gustarte