Sensor ultrasónico de distancia

El módulo de ultrasonido HC-SR04 es un dispositivo popular utilizado para medir distancias utilizando ondas ultrasónicas. Consiste en un transmisor y un receptor ultrasónicos que trabajan en conjunto para calcular la distancia entre el módulo y un objeto.

El transductor ultrasónico emisor convierte una señal eléctrica en una onda ultrasónica, que es inaudible para los humanos debido a su alta frecuencia. Esta onda ultrasónica se emite desde el sensor y se propaga en el aire en forma de un «chirrido» o «clic» de corta duración.

Cuando la onda ultrasónica choca con un objeto en su camino, se refleja y regresa al sensor. El transductor ultrasónico receptor recibe esta onda ultrasónica reflejada y la convierte de nuevo en una señal eléctrica.

El sensor mide el tiempo transcurrido desde que se emitió la señal ultrasónica hasta que se recibió su eco. Basándose en el tiempo de ida y vuelta y la velocidad conocida del sonido en el aire, el sensor puede calcular la distancia al objeto utilizando la fórmula: distancia = (velocidad del sonido x tiempo de ida y vuelta) / 2.

Es importante tener en cuenta que la velocidad del sonido en el aire puede variar ligeramente según la temperatura y la humedad, por lo que se utiliza un valor aproximado de 343 metros por segundo para el cálculo.

El sensor HC-SR04 se conecta a una placa Arduino u otro microcontrolador, y a través de programación, se puede leer la señal de eco recibida y realizar los cálculos necesarios para obtener la distancia al objeto.

Este tipo de sensor se utiliza ampliamente en proyectos de robótica, sistemas de seguridad, sistemas de navegación y muchas otras aplicaciones donde se requiere medir distancias de manera precisa y sin contacto.

Aquí tienes un ejemplo más simple que muestra la distancia medida por el sensor HC-SR04 en el monitor serial:

#define TRIG_PIN 2
#define ECHO_PIN 3
void setup() {
  Serial.begin(9600);
}
void loop() {
  long duration, distance;
  
  // Generar un pulso de 10 microsegundos en el pin Trig
  pinMode(TRIG_PIN, OUTPUT);
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);

  // Medir la duración del pulso en el pin Echo
  pinMode(ECHO_PIN, INPUT);
  duration = pulseIn(ECHO_PIN, HIGH);

  // Calcular la distancia en centímetros
  distance = duration * 0.034 / 2;

  // Mostrar la distancia en el monitor serial
  Serial.print("Distancia: ");
  Serial.print(distance);
  Serial.println(" cm");

  delay(1000);
}



Que es y para que sirve un «Delay»

En Arduino, el delay se utiliza para pausar la ejecución de un programa durante un período de tiempo específico. Su función principal es introducir una demora controlada entre instrucciones o secciones de código.

void setup() {
// Configuración inicial
}

void loop() {
// Realizar alguna tarea

delay(1000); // Pausa durante 1 segundo (1000 milisegundos)
}

En este caso, después de realizar la tarea dentro de la función loop(), el programa se pausará durante 1 segundo antes de repetir el ciclo.




Informe sobre el ciclo for en Arduino

El ciclo for es una estructura de control utilizada en el lenguaje de programación Arduino para repetir una serie de instrucciones un número específico de veces. Es una de las estructuras de bucle más utilizadas y permite ejecutar código de manera eficiente y controlada.

La sintaxis general del ciclo for en Arduino es la siguiente:

for (inicialización; condición; incremento) {
  // Instrucciones a repetir
}

  • La inicialización se realiza antes de que comience la ejecución del ciclo y generalmente se utiliza para establecer una variable contador en un valor inicial.
  • La condición se verifica antes de cada iteración del ciclo. Si la condición es verdadera, las instrucciones dentro del ciclo se ejecutan; de lo contrario, el ciclo se detiene.
  • El incremento se realiza después de cada iteración del ciclo y generalmente se utiliza para aumentar o disminuir el valor del contador.

El ciclo for es especialmente útil cuando se conoce la cantidad exacta de veces que se debe repetir un bloque de código. Por ejemplo, si se desea realizar una acción 10 veces, se puede utilizar un ciclo for de la siguiente manera:


for (int i = 0; i < 10; i++) {
  // Instrucciones a repetir
}

En este caso, la variable i se utiliza como contador. Comienza con un valor de 0 y se incrementa en 1 en cada iteración del ciclo. El ciclo se ejecutará mientras i sea menor que 10. Una vez que i alcanza el valor de 10, la condición se vuelve falsa y el ciclo se detiene.

El ciclo for también puede ser utilizado con otros tipos de datos y condiciones más complejas. Por ejemplo, se puede iterar sobre elementos de un arreglo, utilizar valores flotantes en lugar de enteros, o utilizar condiciones más complejas para controlar la ejecución del ciclo.

Es importante tener en cuenta que el cuerpo del ciclo for puede contener cualquier tipo de instrucción o bloque de código válido en Arduino, como asignaciones, llamadas a funciones, operaciones matemáticas, entre otros.

En resumen, el ciclo for en Arduino es una estructura de control poderosa y versátil que permite repetir un bloque de código un número específico de veces. Proporciona una manera eficiente y controlada de ejecutar instrucciones y es ampliamente utilizado en el desarrollo de proyectos y aplicaciones en Arduino.




¿Que son las variables en Arduino?

Las variables en Arduino son contenedores que se utilizan para almacenar valores, como números, texto o datos de sensores. Las variables en Arduino pueden ser de diferentes tipos, como int (entero), float (punto flotante), char (carácter) y boolean (verdadero/falso).

Aquí te dejo un ejemplo de cómo se declara y se utiliza una variable int en Arduino:


int ledPin = 13; // Declarar una variable int llamada "ledPin" y asignarle el valor 13
int sensorValue; // Declarar una variable int llamada "sensorValue"