Tabla de contenido:
- Paso 1: ¿Cuál es exactamente el problema con los sensores ultrasónicos y los microcontroladores?
- Paso 2: ¿Cómo funciona?
- Paso 3: Detalles técnicos
- Paso 4: ¿Cómo implementar?
Video: Detecta obstáculos de forma asincrónica con ultrasonidos: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Estoy construyendo por diversión un robot que quiero mover de forma autónoma dentro de una casa.
Es un trabajo largo y lo estoy haciendo paso a paso.
Este instructable se centra en la detección de obstáculos con Arduino Mega
Los sensores ultrasónicos HC-SR04 vs HY-SRF05 son baratos y fáciles de usar, pero pueden resultar difíciles de integrar en el circuito del microcontrolador en un robot complejo. Quería ejecutar la detección de obstáculos de forma asincrónica.
_
Ya publiqué 3 instructivos sobre las características de este robot:
- Haz tu codificador de rueda
- Haz tu puerta de enlace WIFI
- Usar unidad de módulo inercial
Y una documentación sobre la combinación de inteligencia artificial y ultrasonidos para localizar el robot.
Paso 1: ¿Cuál es exactamente el problema con los sensores ultrasónicos y los microcontroladores?
Espera sincrónica y limitaciones de Arduino
El código de los microcontroladores se ejecuta en un bucle y no admite subprocesos múltiples. Los sensores ultrasónicos se basan en la duración de la señal. Esta duración dura hasta 30 m s, lo que es muy largo dentro del circuito cuando los microcontroladores tienen que lidiar con múltiples motores y sensores (por ejemplo, servomotores y motores de CC con codificadores de rueda).
Así que quería desarrollar un objeto que se ejecutara de forma asincrónica.
Paso 2: ¿Cómo funciona?
Ha sido diseñado para Atmega para la detección de obstáculos. Admite hasta 4 sensores ultrasónicos.
Gracias a la interrupción periódica del tiempo, el sistema puede monitorear hasta 4 sensores ultrasónicos. El código principal solo tiene que definir qué sensor activar con condición y umbral. El principal solo se interrumpirá en caso de que aparezca (condición, umbral).
Las funciones principales son:
- La alerta es la detección básica de obstáculos y proporciona una interrupción si al menos 1 de los 4 sensores detecta una distancia por debajo de su umbral
- El monitor es una función extendida que proporciona interrupciones en una combinación de condición de distancia de hasta 4 sensores. Las posibles condiciones son superiores, inferiores, iguales o no iguales a los umbrales.
Paso 3: Detalles técnicos
Use timer4 para que el pin 6 7 8 no se pueda usar como PWM.
Para cada sensor, el objeto necesita un PIN de activación y un PIN de interrupción.
Además de los PIN de interrupción de los sensores, el objeto necesita otro PIN de interrupción para el uso del software.
Paso 4: ¿Cómo implementar?
Conecte los sensores como arriba
Descarga desde este repositorio de GitHub
- EchoObstacleDetection.cpp,
- EchoObstacleDetection.h
- ExampleEchoObstacleDetection.ino
Cree el directorio EchoObstacleDetection dentro de su biblioteca IDE y mueva el.cpp y.h
Pruébalo
Abra ExampleEchoObstacleDetection.ino.
Este es un ejemplo simple de detección de obstáculos que se ejecuta con 2 sensores ultrasónicos.
La salida se dirige al monitor en serie. Al principio, imprimirá las distancias detectadas por los 2 sensores y luego imprimirá alertas según las distancias por debajo de los umbrales.
Recomendado:
Envío de SMS si se detecta humo (Arduino + GSM SIM900A: 5 pasos
Envío de SMS si se detecta humo (Arduino + GSM SIM900A: ¡Hola a todos! En mi primer instructable haré una alarma de gas que envía un mensaje al usuario si se detecta contaminación. Este será un prototipo simple usando Arduino, módulo GSM y electroquímico. sensor de humo. En el futuro, esto se puede ampliar a
Sistema de acceso basado en ultrasonidos: 6 pasos (con imágenes)
Sistema de acceso basado en ultrasonidos: En esta ocasión les presento un sistema de acceso basado en ultrasonidos que creo que podría ser interesante, se basa en ondas ultrasónicas por lo que es un sistema de acceso sin contacto que no necesita ningún otro dispositivo electrónico, sino cualquier objeto, incluso sus manos. para intentar t
Detector de ladrones con ultrasonidos y NodeMCU: 5 pasos
Detector de ladrones con ultrasonido y NodeMCU: este dispositivo puede detectar a los ladrones e informarle sobre ellos. Como las ondas ultrasónicas no son visibles para los humanos, el ladrón no lo sabe y puede ser atrapado fácilmente
Sistema de posicionamiento basado en ultrasonidos: 4 pasos (con imágenes)
Sistema de posicionamiento basado en ultrasonidos: todas las versiones de radares ultrasónicos que he encontrado para dispositivos arduino (Arduino - Radar / Ultrasonic Detector, Arduino Ultrasonic Radar Project) son radares muy agradables, pero todos son " ciegos ". Quiero decir, el radar detecta algo, pero lo que yo
Pike: ¡conduce de forma más segura, conduce de forma más inteligente, conduce un lucio !: 5 pasos
Pike - ¡Conduce de forma más segura, conduce de forma más inteligente, conduce un lucio !: ¡Bienvenido a mi proyecto llamado Pike! Este es un proyecto que forma parte de mi educación. Soy un estudiante NMCT en Howest en Bélgica. El objetivo era hacer algo inteligente usando una Raspberry Pi. Teníamos total libertad en la que queríamos ser inteligentes. Para mí era