Tabla de contenido:
- Paso 1: Conexión de piezas electrónicas
- Paso 2: uso de la aplicación de control de Android
- Paso 3: Interfaz abierta de Roomba en ejemplos
- Paso 4: Cámara web remota RPi
- Paso 5: Planes para un mayor desarrollo
- Paso 6: Conexión de piezas electrónicas - Versión 2 con carcasa
Video: Inspector Roomba: 6 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
La mayoría de nosotros usamos los robots iRobot Roomba solo para aspirar, pero pocos saben que es una gran base para nuevos proyectos robóticos. Todos los fabricantes deberían probar la interfaz abierta (OI) de Roomba para descubrir qué tan fácil es controlar este robot. En esta instrucción, aprenderá a agregar algunas funciones útiles a su Roomba. Al principio, describiré cómo controlar de forma remota Roomba a través de bluetooth y la aplicación de Android. Más adelante le mostraré cómo ejecutar la transmisión de video basada en el RPi y finalmente describo el plan para un mayor desarrollo de este proyecto.
Piezas necesarias en este proyecto:
- Módulo bluetooth BTM-222 u otro que funcione a una velocidad de 115200 baudios x1
- Regulador de voltaje reductor de 5 V D24V6F5 x1
- mini protoboard x1
- Algunos cables
versión con carcasa:
- Conector mini DIN de 8 pines x1
- interruptor de encendido x1
- led 3 mm x1
- resistencia 10k x1
- carcasa pequeña 50x40x20 mm x1
versión extendida:
- Frambuesa Pi 3 x1
- Disipador de calor de cobre RPi x1
- Adaptador WiFi USB x1
- tarjeta micro SD de 8 GB o más x1
- Cámara RPi - Lente ojo de pez x1
- Caso para RPi x1
- Paquete de baterías de alta capacidad 5 V (al menos 10 Ah) x1
- Una pieza de soporte de plástico x1
- Tuercas y tornillos M2 x4
Paso 1: Conexión de piezas electrónicas
En esta ocasión, este paso es muy sencillo porque solo necesitamos conectar dos módulos para poder controlar nuestro Roomba. El primero es un módulo Bluetooth que puede funcionar a 115200 bps. El segundo es el regulador de voltaje reductor de 5 V D24V6F5. La batería Roomba cargada tiene un voltaje de aproximadamente 14,4 V y nuestro módulo bluetooth necesita 5 V, por lo que debemos reducir el voltaje de la batería al nivel de 5 V utilizando un regulador de voltaje. El regulador D24V6F5 tiene una eficiencia entre el 80 y el 90% que es un valor muy bueno en comparación con los reguladores lineales clásicos que típicamente tienen una eficiencia por debajo del 40%. La forma más fácil de conectar estos dos módulos es colocándolos en una mini placa de pruebas y cableado de acuerdo con el diagrama de cableado anterior. Además, todas las conexiones se muestran en fotografías numeradas. Tenga cuidado al conectar a los terminales de la batería. ¡Un cortocircuito accidental puede dañar la batería!
Paso 2: uso de la aplicación de control de Android
Desarrollé una aplicación para Android que te permite controlar la aspiradora robótica Roomba serie 500 a través de bluetooth. Puede descargar mi aplicación de forma gratuita desde Google Play - Roomb Control. Funciona tanto con teléfonos inteligentes como con tabletas.
Cómo utilizar la aplicación Roomb Control:
- toca la esquina superior derecha de la pantalla (3 puntos verticales)
- seleccione la pestaña "Conectar"
- toque en la pestaña "BTM222" y después de un tiempo debería ver el mensaje "Conectado a BTM222"
- después de conectarse, puede controlar su Roomba
- si no ves tu dispositivo bluetooth, presiona el botón "Buscar dispositivos"
- en el primer uso de su módulo bluetooth, recuerde emparejarlo con su teléfono inteligente ingresando el código predeterminado dado en la especificación del módulo bluetooth
Paso 3: Interfaz abierta de Roomba en ejemplos
En este paso, encontrará ejemplos de comandos comunes que se utilizan para controlar el Roomba serie 500. Puede encontrar más información sobre la interfaz abierta de Roomba en este documento.
Roomba 500+ puede funcionar en uno de cuatro modos:
- El modo completo le brinda un control completo sobre Roomba (sin restricciones de seguridad, ya que es para el modo seguro y pasivo)
-
El modo seguro introduce algunas excepciones relacionadas con la seguridad cuando no puede controlar todos los actuadores:
- detección de caída de rueda
- detección de un acantilado mientras se mueve hacia adelante o hacia atrás
- cargador enchufado y alimentado
- El modo pasivo le permite solicitar y recibir datos del sensor, pero en este modo, no puede controlar los actuadores Roomba (motores, luces, altavoz)
- Modo apagado cuando se enciende por primera vez o después de un cambio de batería (esperando el comando de inicio)
Un modo de operación seguro y completamente funcional es el modo seguro, que es el modo preferido para el control remoto. Para ejecutar el modo seguro, primero debemos enviar el comando 128 que inicia la interfaz abierta y luego el comando 130 (o 131) para poner Roomba en modo seguro. Si queremos ejecutar uno de los modos de limpieza integrados (clean, spot, dock, etc.) debemos enviar el tercer comando con el código apropiado (Clean-135, Spot-134, Dock-143). La secuencia de serie completa para estos modos es la siguiente:
- Establecer modo seguro - (128, 130)
- Spot - (128, 130, 134)
- Limpio - (128, 130, 135)
- Muelle - (128, 130, 143)
Si el Roomba está en el modo seguro, podemos controlar las ruedas motrices del Roomba usando el comando 137. La secuencia en serie completa de 5 bytes es la siguiente: (137, Byte alto de velocidad, Byte bajo de velocidad, Byte alto de Radio, Byte bajo de radio). Ejemplos de secuencias en serie para el control de movimiento Roomba:
- Avanzar - (137, 100, 0, 128, 0)
- Volver - (137, 254, 12, 128, 0)
- Gire a la derecha - (137, 100, 0, 255, 255)
- Girar a la izquierda - (137, 100, 0, 0, 1)
Alternativamente, para controlar el movimiento del robot, podemos usar el comando 146. Este comando nos permite controlar PWM (Modulación de ancho de pulso) para la rueda derecha e izquierda: (146, byte alto de PWM derecho, byte bajo de PWM derecho, byte alto de PWM izquierdo, PWM izquierdo byte bajo). Ejemplo de control PWM:
- Mover arriba a la derecha - (146, 0, 130, 0, 255)
- Mover arriba a la izquierda - (146, 0, 255, 0, 130)
El comando 139 controla los colores de los LED. Podemos cambiar el color del LED de Limpieza / Encendido configurando el valor del byte de Color en secuencia en serie: (139, Bits de LED, Color, Intensidad). Si el byte de color se establece en 0, obtenemos el color verde. Incrementando este valor obtenemos colores intermedios (naranja, amarillo, etc) y color rojo para el valor máximo 255. Ejemplos de control de LED:
- verde - (139, 0, 0, 128)
- naranja - (139, 0, 128, 128)
- rojo - (139, 0, 255, 128)
El último comando que me gustaría mencionar es el comando 140 que te permite tocar canciones simples. Ejemplos de secuencias seriadas para reproducir canciones:
- canción 1 - (140, 0, 5, 72, 32, 74, 32, 76, 32, 77, 32, 79, 32, 141, 0)
- canción 2 - (140, 1, 5, 69, 16, 71, 16, 72, 16, 74, 16, 76, 16, 141, 1)
Paso 4: Cámara web remota RPi
Para poder ver la transmisión de video desde la cámara en cualquier dispositivo conectado a mi red local (PC, teléfono inteligente, tableta, etc.), he instalado el servidor de cámara web Motion. Puede encontrar detalles sobre cómo hacer esto en este Instructable. Los pasos principales son los siguientes:
- Editar: sudo nano / etc / modules - agregar al final del archivo: bcm2835-v4l2
- Instalar Motion: sudo apt-get install motion
- Abra el archivo motion.conf escribiendo: sudo nano /etc/motion/motion.conf y configure los parámetros de video (por ejemplo: demonio activado, ancho 640, alto 480, velocidad de fotogramas 30, webcam_localhost desactivado)
- Habilite el Daemon (servicio): sudo nano / etc / default / motion y busque y cambie start_motion_daemon = yes.
- Iniciar servicio: sudo service motion start o sudo motion -n -c /etc/motion/motion.conf
- Ahora abra el navegador web en su computadora o teléfono inteligente y escriba: RPi IP: 8081 (donde "RPi IP" es la IP de su Raspberry Pi y 8081 es el puerto predeterminado). Ejemplo: 192.168.1.14:8081. Si todo funciona bien después de un tiempo, debería ver la vista de su cámara en su navegador web.
Paso 5: Planes para un mayor desarrollo
Actualmente, mi Roomba está equipado con un pequeño brazo robótico descrito en estas instrucciones. Este brazo robótico se puede controlar de forma remota a través de bluetooth desde la aplicación de Android. En el siguiente paso, usaré la vista desde la cámara para agarrar y mover objetos a distancia al espacio marcado (operación en el modo semiautónomo).
Si desea ver mis otros proyectos relacionados con la robótica, visite:
- mi sitio web: www.mobilerobots.pl
- facebook: robots móviles
Paso 6: Conexión de piezas electrónicas - Versión 2 con carcasa
Si desea construir su propio receptor extraíble para controlar el Roomba, este paso adicional es para usted. Agregamos algunos elementos más y los cerraremos todos en una carcasa delgada. El componente principal que necesitaremos en este paso es un conector mini DIN de 8 pines. Además, necesitaremos el interruptor de encendido y el indicador basado en LED y resistencia de 10k.
Ahora no tiene que preocuparse por sobresalir los cables. El receptor bluetooth está cerrado en una pequeña carcasa con unas dimensiones de 50x40x20 mm. Cuando no quiera usarlo, puede quitarlo fácilmente de su Roomba tirando del enchufe mini DIN.
Recomendado:
Roomba Bot the Bulider: 5 pasos (con imágenes)
Roomba Bot the Bulider: Bot the Builder es un roomba, que con " grabbers " adjunto al frente podrá mover objetos alrededor. El código con él está configurado para registrar el primer movimiento con un cuadro de GUI que puede controlar con solo hacer clic con el mouse. Después
Cómo desmontar una computadora con sencillos pasos e imágenes: 13 pasos (con imágenes)
Cómo desmontar una computadora con sencillos pasos e imágenes: esta es una instrucción sobre cómo desmontar una PC. La mayoría de los componentes básicos son modulares y se quitan fácilmente. Sin embargo, es importante que se organice al respecto. Esto ayudará a evitar que pierda piezas y también a que el reensamblaje sea más fácil
Robot Roomba controlado por navegador con Raspberry Pi Model 3 A +: 6 pasos (con imágenes)
Robot Roomba controlado por navegador con Raspberry Pi Model 3 A +: descripción general Este Instructable se centrará en cómo darle a un Roomba muerto un nuevo cerebro (Raspberry Pi), ojos (cámara web) y una forma de controlar todo desde un navegador web. Hay muchos trucos de Roomba que permiten el control a través de la interfaz en serie. Yo no tengo
Roomblock: una plataforma para aprender la navegación ROS con Roomba, Raspberry Pi y RPLIDAR: 9 pasos (con imágenes)
Roomblock: una plataforma para aprender la navegación ROS con Roomba, Raspberry Pi y RPLIDAR: ¿Qué es esto? &Quot; Roomblock " es una plataforma de robot compuesta por un Roomba, una Raspberry Pi 2, un sensor láser (RPLIDAR) y una batería móvil. El marco de montaje puede fabricarse con impresoras 3D. El sistema de navegación ROS permite hacer un mapa de habitaciones y utilizar i
Roomba con MATLAB: 4 pasos (con imágenes)
Roomba con MATLAB: este proyecto utiliza MATLAB y un robot programable iRobot Create2. Al poner a prueba nuestro conocimiento de MATLAB, podemos programar Create2 para interpretar imágenes y detectar señales. La funcionalidad del robot depende principalmente de