Experimentos con Módulo Ultrasónico y Servo en ESP32
Modulo ultrasónico y servo en ESP32: En nuestros experimentos con el ESP32, hemos explorado la combinación del módulo ultrasónico y el servo para crear proyectos emocionantes y prácticos. Estos componentes nos permiten medir distancias con precisión y controlar movimientos mecánicos, lo que abre un mundo de posibilidades para la creación de dispositivos interactivos.
Medición Precisa de Distancias
El módulo ultrasónico nos brinda la capacidad de medir distancias de manera precisa utilizando ondas ultrasónicas. Al enviar un pulso ultrasónico y registrar el tiempo que tarda en rebotar en un objeto y regresar al sensor, podemos calcular la distancia con una gran precisión. Esta funcionalidad es fundamental en una amplia variedad de aplicaciones, desde sistemas de seguridad hasta dispositivos de detección de obstáculos para robots.
Control de Movimientos con Servo
El servo nos proporciona un control preciso sobre movimientos mecánicos. Al enviar señales de control al servo, podemos hacer que gire a una posición específica, lo que lo convierte en una opción ideal para mecanismos de dirección, brazos robóticos y más. La capacidad de controlar la posición angular con precisión nos permite diseñar sistemas que respondan de manera inteligente a su entorno.
Integración en Proyectos Prácticos
Al combinar el módulo ultrasónico y el servo en el ESP32, podemos crear una amplia gama de proyectos prácticos. Desde un sistema de alarma que detecta intrusos y activa una sirena, hasta un dispositivo de seguimiento solar que ajusta automáticamente la posición de un panel solar para maximizar la captación de energía, las posibilidades son infinitas.
Conexión de los Módulos Ultrasónico y Servo en ESP32
Aprende y Experimenta con Modulo ultrasónico y servo en ESP32
Nuestros experimentos con el módulo ultrasónico y el servo en ESP32 son solo el comienzo. Te invitamos a explorar estas tecnologías por ti mismo y descubrir las emocionantes aplicaciones que pueden tener en tus propios proyectos. Con un poco de creatividad y experimentación, ¡las posibilidades son infinitas!
Código Arduino de la Conexión de los Módulos Ultrasónico y Servo en ESP32
#include <ESP32Servo.h>
Servo myservo; // crea un objeto servo para controlar un servo
int servoPin = 15; // pin del servo
int trigPin = 13; // pin de trigPin
int echoPin = 14; // pin de echoPin
int MAX_DISTANCE = 500; // máxima distancia del sensor en cm
float timeOut = MAX_DISTANCE * 58.8; // tiempo máximo de espera para la medición en microsegundos
int soundVelocity = 340; // velocidad del sonido en m/s
void setup() {
pinMode(trigPin, OUTPUT); // establece el pin trigPin como salida
pinMode(echoPin, INPUT); // establece el pin echoPin como entrada
myservo.setPeriodHertz(50); // servo estándar a 50 Hz
myservo.attach(servoPin, 500, 2500); // adjunta el servo al pin servoPin
Serial.begin(115200); // Inicia comunicación serial a 115200 baudios
}
void loop() {
float distance = getSonar(); // obtiene la distancia medida por el sensor ultrasónico
Serial.print("Distance: ");
Serial.print(distance); // Imprime la distancia en cm
Serial.println(" cm");
if (distance < 5) { // Si la distancia es inferior a 5 cm
myservo.write(90); // Mueve el servo a la posición deseada
delay(2000); // Espera 2 segundos
myservo.write(0); // Devuelve el servo a la posición inicial
} else { // Si la distancia es mayor o igual a 5 cm
myservo.write(0); // Deja el servo en la posición inicial
}
delay(100); // Espera 100ms entre mediciones
}
float getSonar() {
unsigned long pingTime;
float distance;
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
pingTime = pulseIn(echoPin, HIGH, timeOut);
distance = (float)pingTime * soundVelocity / 2 / 10000;
return distance; // Devuelve el valor de la distancia
}
Para el correcto funcionamiento hay que instalar la librería: ESP32Servo