Portafolio de Actividades
Introduccion a Ing. Mecatrónica
Departamento de Ciencias e Ingenierías | Universidad Iberoamericana Puebla, México.
Práctica 1: Arduino Básico Salidas Digitales

- Resumen -
Esta práctica tuvo como objetivo principal el uso de la placa Arduino UNO para explorar y comprender el funcionamiento de las salidas digitales. A lo largo de una serie de nueve ejercicios progresivos, se abordaron desde los conceptos fundamentales de la programación y control de señales hasta aplicaciones más avanzadas, permitiendo a los participantes familiarizarse con el manejo de distintos componentes electrónicos. Durante el desarrollo de la práctica, se analizaron aspectos clave como la manipulación de pines digitales, la activación y desactivación de dispositivos externos, y la implementación de secuencias lógicas para el control de salidas. Este enfoque progresivo facilitó una comprensión más profunda de la interacción entre el software y el hardware, promoviendo el desarrollo de habilidades esenciales para la programación y automatización de sistemas electrónicos.
- Introducción -
Las salidas digitales desempeñan un papel fundamental en la electrónica y en la programación de microcontroladores, ya que permiten controlar dispositivos externos como LEDs, motores y relés mediante señales de encendido (HIGH) y apagado (LOW). En esta práctica, se emplea la placa Arduino UNO, una plataforma de desarrollo versátil y accesible, para explorar y aplicar el funcionamiento de las salidas digitales en distintos escenarios, facilitando así una comprensión más profunda de su uso en sistemas electrónicos.
- Materiales -
Placa Arduino UNO
Cable USB para la conexión con el ordenador
Protoboard
LEDs
Resistencias 220Ω
Cables de conexión
Display de 7 segmentos
- Desarrollo -
1. Ejemplo Blink
Este ejercicio introductorio utiliza el LED integrado en la placa Arduino UNO para demostrar el control básico de una salida digital.
Objetivo: Hacer parpadear el LED incorporado en la placa Arduino.
Concepto clave: Uso de las funciones digitalWrite() y delay() para controlar el estado del LED y el tiempo entre los cambios de estado.
Código:

2. Salida Digital HIGH
Objetivo: Mantener una salida digital en estado alto (HIGH) de forma continua.
Concepto clave: Comprensión del estado HIGH en salidas digitales y su aplicación práctica.
Código:

3. Salida Digital LOW
Objetivo: Mantener una salida digital en estado bajo (LOW) de forma continua.
Concepto clave: Comprensión del estado LOW en salidas digitales y su aplicación práctica.
Código:

4. Salida Digital Delay
Objetivo: Introducir retardos controlados entre cambios de estado en una salida digital.
Concepto clave: Uso de las funciones digitalWrite() y delay() para controlar el estado del LED y el tiempo entre los cambios de estado.
Código:

5. Salida Digital LED
Objetivo: Controlar un LED externo conectado a una salida digital del Arduino.
Concepto clave: Conexión y control de componentes externos (LED) mediante salidas digitales.
Código:

6. Salida Digital Protoboard
Objetivo: Implementar circuitos más complejos utilizando una protoboard.
Concepto clave: Expansión de las conexiones y posibilidades de circuitos utilizando una protoboard.
Código:

7. Salida Digital LEDs I
Objetivo: Controlar múltiples LEDs de forma secuencial.
Concepto clave: Manejo de varias salidas digitales simultáneamente para crear secuencias de iluminación.
Código:

8. Salida Digital LEDs II
Objetivo: Crear patrones de iluminación más complejos con múltiples LEDs.
Concepto clave: Programación de secuencias avanzadas y control preciso de múltiples salidas digitales.
Código:

9. Salida Digital Display 7 Segmentos
Objetivo: Controlar un display de 7 segmentos para mostrar números o caracteres.
Concepto clave: Integración de conocimientos previos para manejar un componente más complejo que requiere múltiples salidas digitales coordinadas.
Código:

10. Contador Digital Display 7 Segmentos
Objetivo: Controlar un display de 7 segmentos para realizar una cuenta ascendente del 0 al 2.
Concepto clave: Uso de las funciones digitalWrite() y delay() para manipular múltiples salidas en un ciclo, generando una cuenta ascendente en el display de 7 segmentos.
Código:


- Simulación -
Todos los ejercicios fueron llevados a cabo mediante simulaciones utilizando la plataforma Tinkercad. Esta herramienta en línea es especialmente útil para crear circuitos virtuales y programar dispositivos como Arduino, proporcionando un entorno interactivo y seguro para experimentar sin la necesidad de hardware físico. Gracias a sus funciones de simulación, los usuarios pueden probar y ajustar sus diseños y programas antes de realizar la implementación física, lo que permite una mejor comprensión del funcionamiento de los circuitos y reduce el riesgo de cometer errores en etapas posteriores del proceso.

- Diseño -
En la fase de diseño, se llevó a cabo un análisis detallado de la simulación de cada circuito, junto con el desarrollo y la verificación del código necesario para controlar el Arduino. Se evaluó cuidadosamente la selección de los componentes electrónicos, considerando sus características y compatibilidad con el sistema. Asimismo, se trabajó en la estructuración lógica del programa, asegurando una secuencia adecuada de instrucciones para el correcto funcionamiento de los dispositivos conectados. Este proceso permitió anticipar posibles errores y optimizar el rendimiento del sistema antes de su implementación física.
- Construcción -
1. Se recopilaron todos los componentes necesarios según el diseño especificado.
2. Se procedió al montaje del circuito en una protoboard, conectando cada componente de manera precisa y asegurando que las conexiones fueran correctas.
3. Se cargó el código previamente verificado en la placa Arduino UNO, asegurándose de que estuviera listo para la ejecución.
4. Se realizaron varias pruebas para verificar que el comportamiento físico del circuito coincidiera con el de la simulación, evaluando su funcionamiento en diferentes condiciones.
5. Se realizaron ajustes, como la revisión de las conexiones o el reemplazo de componentes, para garantizar el rendimiento óptimo del circuito.
- Resultados -
A lo largo de estos 9 ejercicios, se logró una progresión significativa, comenzando con el control básico de un solo LED y avanzando hasta la manipulación de displays de 7 segmentos. Este enfoque permitió evidenciar la versatilidad y el potencial de las salidas digitales del Arduino UNO en el control de diversos componentes electrónicos.
Cada ejercicio fue diseñado de manera que se construyera sobre el anterior, lo que facilitó una comprensión acumulativa de los conceptos y técnicas de programación necesarios. Este enfoque progresivo permitió desarrollar las habilidades necesarias para controlar de manera eficiente las salidas digitales, consolidando el aprendizaje de forma práctica y efectiva.
Ejercicio 1:
Ejercicio 2:
Ejercicio 3:
Ejercicio 4:
Ejercicio 5:
Ejercicio 6:
Ejercicio 7:
Ejercicio 8:
Ejercicio 9:
Ejercicio 10:
- Conclusiones -
Se destacó la versatilidad y flexibilidad del Arduino UNO al demostrar su capacidad para controlar una amplia variedad de componentes electrónicos mediante sus salidas digitales. A lo largo de los ejercicios, se evidenció cómo este microcontrolador es una herramienta poderosa para el diseño y la implementación de circuitos electrónicos, permitiendo la interacción con múltiples dispositivos de manera eficiente y precisa.
Todos los ejercicios fueron realizados con éxito y de forma progresiva, lo que nos permitió enfrentar retos cada vez más complejos. Esta metodología nos facilitó el aprendizaje gradual de conceptos avanzados, lo que a su vez nos permitió abordar diseños más sofisticados, tanto en la parte de conexión de circuitos como en el desarrollo de programación, mejorando nuestra comprensión y habilidades técnicas en el uso del Arduino.
- Referencias -