Skip to main content

Sensor Ultrasónico

El sensor ultrasónico de Seeed es un módulo de medición de distancia sin contacto, también compatible con la plataforma electronic brick. Está diseñado para facilitar proyectos modulares con rendimiento industrial.

Características

  • Rango de detección: 3 cm a 4 m
  • Óptimo a 30° de ángulo
  • Interfaz compatible con electronic brick
  • Alimentación de 5 VDC
  • Compatible con protoboard
  • Doble transductor
  • Librería Arduino disponible

Especificaciones

Voltaje de alimentación5V
Consumo de corriente15 mA
Frecuencia ultrasónica40k Hz
Rango máximo400 cm
Rango mínimo3 cm
Resolución1 cm
Ancho del pulso de disparo10 μs
Dimensiones43x20x15 mm

Primeros pasos

El sensor transmite un pulso ultrasónico corto en el tiempo 0, que es reflejado por un objeto. Luego, el sensor recibe la señal reflejada y la convierte en señal eléctrica. El siguiente pulso puede ser enviado cuando se disipe el eco. Este periodo se llama período de ciclo, y se recomienda que sea mayor a 50 ms.

Cuando se envía un pulso de disparo de 10 μs al pin de señal, el módulo ultrasónico genera ocho señales de 40 kHz y espera el eco.
La distancia medida es proporcional al ancho del pulso de eco y se puede calcular con la fórmula correspondiente.
Si no se detecta ningún obstáculo, el pin de salida dará una señal alta de 38 ms.

Usar con Arduino

Hardware

  • Paso 1. Prepara los siguientes componentes:
Seeeduino V4.2Base ShieldMódulo ultrasónico
ComprarComprarComprar
  • Paso 2. Conecta el módulo ultrasónico al puerto D2 del Grove Base Shield.
  • Paso 3. Inserta el Base Shield en el Seeeduino.
  • Paso 4. Conecta el Seeeduino a la PC mediante un cable USB.
note

Si no tienes un Grove Base Shield, puedes conectar directamente el módulo al Seeeduino como se indica abajo:

SeeeduinoMódulo Ultrasónico
5VRojo
GNDNegro
No conectadoBlanco
D2Amarillo

Software

  • Paso 1. Copia el código de ejemplo y súbelo a tu placa controladora.
  • Paso 2. Abre el monitor serial para observar la salida.
#include "Arduino.h"
class Ultrasonic
{
public:
Ultrasonic(int pin);
void DistanceMeasure(void);
double microsecondsToCentimeters(void);
double microsecondsToInches(void);
private:
int this_pin;//pin number of Arduino that is connected with SIG pin of Ultrasonic Ranger.
long duration;// the Pulse time received;
};
Ultrasonic::Ultrasonic(int pin)
{
this_pin = pin;
}
/*Begin the detection and get the pulse back signal*/
void Ultrasonic::DistanceMeasure(void)
{
pinMode(this_pin, OUTPUT);
digitalWrite(this_pin, LOW);
delayMicroseconds(2);
digitalWrite(this_pin, HIGH);
delayMicroseconds(5);
digitalWrite(this_pin,LOW);
pinMode(this_pin,INPUT);
duration = pulseIn(this_pin,HIGH);
}
/*The measured distance from the range 0 to 400 Centimeters*/
double Ultrasonic::microsecondsToCentimeters(void)
{
return duration/29.0/2.0;
}
/*The measured distance from the range 0 to 157 Inches*/
double Ultrasonic::microsecondsToInches(void)
{
return duration/74.0/2.0;
}

Ultrasonic ultrasonic(2);
void setup()
{
Serial.begin(9600);
}
void loop()
{
double RangeInInches;
double RangeInCentimeters;
ultrasonic.DistanceMeasure();// get the current signal time;
RangeInInches = ultrasonic.microsecondsToInches();//convert the time to inches;
RangeInCentimeters = ultrasonic.microsecondsToCentimeters();//convert the time to centimeters
Serial.println("The distance to obstacles in front is: ");
Serial.print(RangeInInches);//0~157 inches
Serial.println(" inch");
Serial.print(RangeInCentimeters);//0~400cm
Serial.println(" cm");
delay(1000);
}

Soporte Técnico y Discusión

Si tienes algún problema técnico, publícalo en nuestro foro.
¡Gracias por elegir nuestros productos! Estamos aquí para ayudarte y asegurarnos de que tu experiencia sea lo más fluida posible.

Loading Comments...