lunes, 26 de febrero de 2024

MANEJO DE BOTONES EN ARDUINO

CONECTAR BOTON PARA ENCENDER UN LED

 


Clic aquí para descargar codigo sin control de rebotes: DESCARGAR

Clic aquí para descargar codigo con control de rebotes: DESCARGAR


Conceptos
La conexión pull-up o pull-down en un circuito con Arduino se utiliza comúnmente para manejar la entrada de un botón. Ambas configuraciones se utilizan para establecer el estado inicial del pin cuando el botón no está siendo presionado, y cambian el estado cuando el botón se presiona.

 

1. Resistencia Pull-Up:

Cuando utilizas una resistencia pull-up, conectas una resistencia desde el pin del botón hasta el voltaje de alimentación (VCC o 5V en Arduino). Esto se hace para asegurar que el pin esté en un estado lógico alto (HIGH) cuando el botón no está siendo presionado. Cuando presionas el botón, el pin se conecta a tierra (GND), y el estado del pin cambia a bajo (LOW).

 

Circuito:

·         Pin del botón conectado a tierra (GND).

·         Resistor conectado desde el pin del botón a 5V (pull-up).

·         Cuando el botón está sin presionar, el pin está en estado HIGH.

 

Arduino Configuración:

pinMode(botonPin, INPUT_PULLUP);

 

2. Resistencia Pull-Down:

Cuando utilizas una resistencia pull-down, conectas una resistencia desde el pin del botón hasta tierra (GND). Esto se hace para asegurar que el pin esté en un estado lógico bajo (LOW) cuando el botón no está siendo presionado. Cuando presionas el botón, el pin se conecta a VCC (5V), y el estado del pin cambia a alto (HIGH).

 

Circuito (el de la imagen):

·         Pin del botón conectado a VCC (5V).

·         Resistor conectado desde el pin del botón a tierra (pull-down).

·         Cuando el botón está sin presionar, el pin está en estado LOW.

 

3. Los rebotes:

Los rebotes en un botón son pequeñas fluctuaciones eléctricas que ocurren cuando se presiona o suelta un botón físico. Estas fluctuaciones pueden generar lecturas erráticas del estado del botón, lo que puede afectar negativamente la respuesta esperada en un programa Arduino. Veamos más detenidamente el fenómeno de los rebotes y cómo manejarlo:

 

¿Qué son los Rebotes?

Cuando presionas o sueltas un botón, los contactos dentro del botón pueden hacer contacto y separarse varias veces antes de establecerse en su posición final.

Estos contactos pueden generar un fenómeno llamado "rebote" debido a la mecánica interna del botón.

 

¿Cómo se Manifiestan los Rebotes?

Los rebotes pueden aparecer como una serie rápida de pulsos eléctricos.

Estos pulsos pueden hacer que el programa Arduino detecte múltiples cambios de estado en un corto período de tiempo.

 

Problemas Asociados con los Rebotes:

Dificultad para obtener una única lectura clara del estado del botón.

Puede llevar a comportamientos no deseados, como múltiples activaciones de una acción con un solo toque.

 

Cómo Manejar los Rebotes en Arduino:

Uso de Resistencias y Condensadores:

Se pueden utilizar resistencias y condensadores en circuito para filtrar los rebotes.

Sin embargo, esto puede ser complicado y a menudo se prefiere un enfoque de software más sencillo.

 

Uso de Software (Debouncing /Anti-rebote):

Un método común para manejar los rebotes es implementar una lógica de "debouncing" en el código.

El debouncing implica ignorar cualquier cambio de estado del botón durante un breve período después de que se detecta un cambio.

 

Ejemplo de Debouncing en Arduino:

const int botonPin = 2;   // Pin conectado al botón

int estadoBoton;          // Variable para almacenar el estado del botón

int estadoAnterior = LOW;  // Variable para almacenar el estado anterior del botón

unsigned long tiempoAnterior = 0;  // Variable para almacenar el tiempo del último cambio de estado

 

void setup() {

  pinMode(botonPin, INPUT);  // Configura el pin del botón como entrada

}

 

void loop() {

  // Lee el estado actual del botón

  int estadoBoton = digitalRead(botonPin);

 

  // Verifica si ha habido un cambio en el estado del botón

  if (estadoBoton != estadoAnterior) {

    // Si hay un cambio, actualiza el tiempo del último cambio

    tiempoAnterior = millis();

  }

 

  // Verifica si ha pasado un tiempo suficiente desde el último cambio

  if (millis() - tiempoAnterior > 50) {

    // Si ha pasado suficiente tiempo, actualiza el estado anterior y realiza acciones

    estadoAnterior = estadoBoton;

    // Realiza acciones según el estado actual del botón

    if (estadoBoton == HIGH) {

      // Acciones cuando el botón está presionado

    } else {

      // Acciones cuando el botón no está presionado

    }

  }

}

En este ejemplo, se utiliza millis() para medir el tiempo desde el último cambio. Si ha pasado un tiempo suficiente (50 milisegundos en este caso), se actualiza el estado anterior y se realiza alguna acción. Esto ayuda a ignorar los cambios rápidos asociados con los rebotes.

 

Conclusión:

Los rebotes son fenómenos eléctricos comunes en botones físicos.

Pueden manejarse con hardware (resistencias y condensadores) o con software (debouncing).

El debouncing en software es una técnica comúnmente utilizada y puede implementarse en el código Arduino para garantizar una lectura confiable del estado del botón.


martes, 13 de febrero de 2024

LAS BOBINAS – TRABAJO SOCIAL

                                       LAS BOBINAS – TRABAJO SOCIAL

 VER EL VIDEO: https://www.youtube.com/watch?v=0w0ycQobkq0

Estructura de las Bobinas:

Conductor (alambre de cobre o aluminio preferiblemente magnetico):

Las bobinas están compuestas principalmente por un conductor, que es generalmente un alambre de cobre o aluminio. Estos materiales son excelentes conductores eléctricos y permiten que la corriente eléctrica fluya eficientemente a través de la bobina.

 

Número de Espiras (una espira es una vuelta del hilo de alambre en la bobina):

La eficiencia y la potencia de una bobina pueden verse afectadas por el número de espiras (vueltas) en la bobina. Un mayor número de espiras aumenta la resistencia eléctrica, pero también puede aumentar la inducción electromagnética.

 

Núcleo Magnético:

Algunas bobinas tienen un núcleo magnético en su interior, que puede ser de hierro o algún material ferromagnético. El núcleo magnético concentra y guía las líneas de flujo magnético, mejorando la eficiencia de la bobina.

Funcionamiento de las Bobinas:

 

Inducción Electromagnética:

Cuando una bobina se encuentra en un campo magnético y experimenta un cambio en el flujo magnético (por ejemplo, al girar en presencia de imanes), se induce una fuerza electromotriz (fem) según la Ley de Faraday.

 

Generación de Corriente:

La corriente inducida en la bobina es el resultado del flujo magnético que corta las espiras del conductor. Esta corriente generada es eléctricamente utilizable y puede ser dirigida hacia otros componentes del sistema.

 

Tipos de Bobinas:

Bobinas de Aire:

No tienen un núcleo magnético y su eficiencia puede ser menor que las bobinas con núcleo. Son comunes en aplicaciones de radiofrecuencia y en la fabricación de inductancias.

 

Bobinas con Núcleo de Hierro o Ferrita:

Estos núcleos magnéticos aumentan la inductancia y son utilizados en transformadores y dispositivos inductivos donde se busca concentrar el flujo magnético.

 

Bobinas de Autoinducción:

Tienen una sola espira y se utilizan para inducir una corriente en sí mismas. Se emplean en dispositivos como relés y en aplicaciones de almacenamiento de energía.

 

Aplicaciones de las Bobinas:

Generación de Energía:

Como en tu proyecto, las bobinas se utilizan en generadores y sistemas de energía renovable para convertir el movimiento mecánico en energía eléctrica.

Transformadores:

 

En transformadores, las bobinas están acopladas magnéticamente para transferir energía eléctrica de un circuito a otro, ya sea aumentando o disminuyendo el voltaje.

 

Inductores en Circuitos Electrónicos:

En circuitos eléctricos, las bobinas se utilizan como inductores para almacenar energía magnética y regular la corriente.

 

Bobinas de Antena:

En aplicaciones de comunicación, como en antenas, las bobinas se utilizan para sintonizar frecuencias y mejorar la recepción de señales.

 

Dispositivos Electromagnéticos:

Se emplean en relés, solenoides y otros dispositivos electromagnéticos donde se necesita generar un campo magnético para realizar un trabajo mecánico.

 

En resumen, las bobinas son componentes esenciales en la ingeniería eléctrica y electrónica, desempeñando un papel vital en la generación, transformación y regulación de la energía eléctrica en una amplia gama de aplicaciones.

 

Generación de energía:

a. Principios electromagnéticos: Explora los principios de la inducción electromagnética, que es la base de la generación de energía en tu proyecto.

b. Ley de Faraday: Introduce la ley de Faraday y cómo un campo magnético cambiante induce una corriente eléctrica en una bobina.

 

Componentes eléctricos:

a. Bobinas y núcleos magnéticos: Explica cómo el diseño de las bobinas y la presencia de núcleos magnéticos afectan la eficiencia de la generación de energía.

b. Imanes de neodimio: Analiza las propiedades magnéticas de los imanes de neodimio y cómo afectan la generación de energía en la bobina.

 

Conversión de energía:

a. Conversión electromecánica: Describe cómo se convierte la energía mecánica del giro del abanico en energía eléctrica en la bobina.

b. Eficiencia de conversión: Habla sobre la importancia de la eficiencia en la conversión de energía y cómo se pueden mejorar los diseños para aumentarla.

 

Almacenamiento de energía:

a. Baterías: Explica los conceptos básicos de cómo funcionan las baterías, incluyendo los tipos de baterías que podrían ser adecuados para tu proyecto.

b. Controladores de carga: Introduce la función de los controladores de carga en la gestión eficiente del proceso de carga de las baterías.

 

Circuitos eléctricos y electrónica:

a. Inversores: Explica el papel de los inversores en convertir la corriente continua de las baterías en corriente alterna para alimentar el abanico.

b. Controladores de carga: Examina cómo los controladores de carga garantizan la carga segura y eficiente de las baterías.

jueves, 8 de febrero de 2024

EL SENSOR TCRT5000 SEGUIDOR DE LINEAS

 EL SENSOR TCRT5000 SEGUIDOR DE LINEAS


El MODULO TCRT5000

 



El módulo TCRT5000 es un sensor infrarrojo utilizado comúnmente en proyectos de robótica, específicamente en robots seguidores de línea. Este sensor consta de un emisor infrarrojo y un receptor montados en la misma carcasa. El emisor emite luz infrarroja y el receptor detecta la luz reflejada. La cantidad de luz reflejada depende de la superficie sobre la que incide, por lo que se puede utilizar para seguir líneas en superficies contrastantes.

 

Aquí hay algunas características clave del módulo TCRT5000:

 Emisor y receptor infrarrojo: La unidad cuenta con un diodo emisor infrarrojo y un fototransistor como receptor en el mismo encapsulado.

 Distancia de trabajo: La distancia efectiva de trabajo del TCRT5000 suele ser de unos pocos milímetros a unos pocos centímetros, lo que lo hace adecuado para aplicaciones de detección cercana.

 Sensibilidad ajustable: Algunos módulos TCRT5000 tienen un potenciómetro incorporado que permite ajustar la sensibilidad del sensor, lo que puede ser útil para adaptarse a diferentes condiciones de iluminación o colores de superficie.

 Respuesta a contrastes: Este sensor es particularmente efectivo en la detección de contrastes, como líneas negras sobre fondos blancos o viceversa.

 Cuando se utiliza en un robot seguidor de línea, el TCRT5000 se monta en la parte inferior del robot, mirando hacia el suelo. Al detectar el contraste entre la línea y el fondo, el robot puede ajustar sus motores para mantenerse en la trayectoria deseada.

 

 

Pines del sensor

 Algunos módulos TCRT5000 pueden tener cuatro pines en lugar de tres. La configuración adicional suele ser un pin de salida analógica. Aquí está la explicación para cada uno de los cuatro pines:

 VCC (Voltage Common Collector): Este pin se conecta a la alimentación positiva, típicamente 5V.

 GND (Ground): Este pin se conecta a la tierra o el polo negativo del circuito.

 OUT (Salida Digital): Este pin proporciona una salida digital y puede tener dos estados posibles: alto (1) o bajo (0). Similar a la explicación anterior, este pin se conecta a un pin digital de entrada en un microcontrolador y se utiliza para determinar si el sensor está sobre una línea o no.

 AOUT (Salida Analógica A0): Algunos módulos TCRT5000 cuentan con una salida analógica adicional (AOUT / A0). Este pin proporciona una señal analógica proporcional a la intensidad de la luz infrarroja reflejada. La salida analógica puede ser útil en situaciones donde se necesita una lectura más precisa de la cantidad de luz reflejada, lo que puede ser beneficioso en algunas aplicaciones de detección de línea.

 Cuando utilizas un módulo TCRT5000 con salida analógica, conectas el pin AOUT a un pin analógico en tu microcontrolador, como los pines A0, A1, etc., en Arduino. Luego, puedes leer esta señal analógica para obtener información más detallada sobre la intensidad de la reflexión infrarroja y ajustar tu lógica en consecuencia.

 Para utilizar el módulo TCRT5000, generalmente se conecta a una placa de desarrollo o microcontrolador como Arduino. El microcontrolador recibe las señales del sensor y puede realizar acciones específicas, como ajustar la dirección del robot para seguir la línea.

 Es importante señalar que la calibración y el ajuste fino son cruciales para el rendimiento efectivo del robot seguidor de línea. Los cambios en la iluminación o en las condiciones del suelo pueden afectar la respuesta del sensor, por lo que algunos proyectos incorporan métodos de calibración automática o adaptación dinámica para mejorar la robustez del sistema en diferentes entornos.

MANEJO BASICO DE LA LCD 16X2 PARA MOSTRAR DATOS

  MANEJO BASICO DE LA LCD 16X2 PARA MOSTRAR DATOS Introducción a la Interfaz I2C: I2C (Inter-Integrated Circuit) es un bus de comunicación s...