ROS ha proporcionado una serie de paquetes de funciones como mapeo, navegación, posicionamiento, etc. ¿Cómo construir un robot móvil basado en ROS? El documento oficial de ROS tiene una descripción muy detallada, puede ver http://wiki.ros.org/navigation/Tutorials/RobotSetup . Sin embargo, para los recién llegados que recién comienzan, todavía hay algunos difíciles de entender.
Este artículo hará un breve resumen aquí.
Según los requisitos específicos del robot, supongamos que solo usamos sensores lidar e IMU para construir un robot móvil que trabaje en una escena fija. El trabajo que debe hacerse puede dividirse aproximadamente en las siguientes partes.
1 modelado de robots
Obviamente, primero debe saber cómo se ve el robot. Esto requiere un modelo de robot, la posición relativa y el tamaño del cuerpo del robot y cada sensor. Muchas herramientas de modelado pueden hacer esto y luego convertirlo al formato de datos compatible con ROS.
Lanzamiento de datos de 2 TF
Con el modelo de robot, debe publicar la apariencia del robot para que otros nodos de ROS conozcan esta información. Esto requiere la implementación del nodo TF y la liberación de los datos del robot / TF. Por supuesto, ROS también ha proporcionado las herramientas correspondientes
3 Desarrollo de nodo de controlador Lidar
La conversión de datos LIDAR a un formato reconocido por ROS requiere un controlador. Algunos fabricantes de radares han proporcionado controladores ROS para su propio lidar, lo cual es simple y ahorra mucho trabajo. Por lo tanto, al elegir el radar, intente elegir productos que ofrezcan controladores ROS.
4 nodo de unidad IMU 开发
También necesita convertir los datos de la IMU a un formato que ROS pueda reconocer, que también requiere un controlador. Algunos fabricantes de IMU también han proporcionado controladores ROS para sus IMU, lo cual es simple y ahorra mucho trabajo. Por lo tanto, al elegir una IMU, intente elegir productos que ofrezcan controladores ROS.
5 Selección y configuración del algoritmo SLAM
Hay muchos algoritmos SLAM basados en Lidar, elija un algoritmo adecuado para el escenario de su aplicación y configure los parámetros de acuerdo con el hardware real
6 Selección y configuración del algoritmo de navegación
Move_base en ROS tiene múltiples componentes para elegir, seleccione el complemento apropiado y configure los parámetros necesarios de acuerdo con las necesidades
7 Desarrollo del nodo Base_controller
Este es el nodo que controla el movimiento del robot, recibe los resultados de navegación de la base de movimiento y luego controla el movimiento del motor del robot.
8 configuración del servidor de mapas
Este es el nodo que publicó el mapa.
9 configuración de AMCL
Función de posicionamiento, configure los parámetros requeridos por el nodo AMCL de acuerdo con los requisitos
Después de completar el trabajo anterior, básicamente se forma un robot ROS.
Es simple, pero es difícil de hacer. Pruébalo.