ROBOWORKS-LOGO

ALGORITMOS MULTIAGENTE DE ROBOWORKS Robofleet

PRODUCTO DE ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet

Presupuesto

  • Nombre del producto: ROBOWORKS
  • Versión: 20240501
  • Preparado por: Wayne Liu y Janette Lin
  • Fecha: 1 May 2024

Información del producto

ROBOWORKS es un sistema multiagente que permite la implementación de diversos algoritmos para la coordinación y comunicación de robots.

Preguntas frecuentes

P: ¿Qué debo hacer si el robot no puede conectarse automáticamente al Wifi?

R: Si el robot no logra conectarse automáticamente, intente desconectar y volver a conectar la tarjeta de red e intente conectarse nuevamente.

RESUMEN

Este documento explica principalmente el uso del paquete de funciones de formación de múltiples robots llamado wheeltec_multi.

Este documento se divide en cuatro partes:

  • La primera parte trata principalmente de la introducción del método de formación de múltiples robots;
  • La segunda parte describe principalmente la configuración de la comunicación entre múltiples máquinas de ROS, incluida la comunicación entre múltiples máquinas de construcción de ROS y los problemas que pueden encontrarse en el proceso de comunicación de ROS;
  • la tercera parte describe principalmente los pasos operativos de la sincronización horaria de múltiples máquinas;
  • La cuarta parte explica el uso específico del paquete de funciones de formación de múltiples máquinas.

El propósito de este documento es una introducción a los sistemas robóticos multiagente y permite a los usuarios iniciar rápidamente el proyecto de formación de múltiples robots.

INTRODUCCIÓN A LOS ALGORITMOS MULTIAGENTES

Algoritmos de formación de múltiples agentes.

Este paquete ROS presenta un problema típico de múltiples agentes en el control colaborativo durante una unidad de formación. Este tutorial establece una base para el desarrollo futuro de este tema. El algoritmo de control de formación se refiere a un algoritmo que controla múltiples agentes para formar una formación específica para realizar una tarea. La colaboración se refiere a la cooperación entre múltiples agentes que utilizan una cierta relación de restricción para completar una tarea. Tome la unidad de formación de múltiples robots como un ejemplo.ampLa colaboración significa que varios robots forman juntos una formación deseada. Su esencia es una cierta relación matemática que se satisface entre las posiciones de cada robot. Los métodos de formación se dividen principalmente en control de formación centralizado y control de formación distribuido. Los métodos de control de formación centralizado incluyen principalmente el método de estructura virtual, el método de teoría gráfica y el método de predicción de modelos. Los métodos de control de formación distribuido incluyen principalmente un método de líder-seguidor, un método basado en el comportamiento y un método de estructura virtual.
Este paquete ROS aplica el método líder-seguidor en el método de control de formación distribuida para ejecutar el accionamiento de formación de múltiples robots. Un robot en la formación se designa como líder y otros robots se designan como esclavos para seguir al líder. El algoritmo utiliza la trayectoria de movimiento del robot líder para establecer las coordenadas que deben seguir los robots siguientes con una dirección y velocidad determinadas. Al corregir las desviaciones de posición con respecto a las coordenadas de seguimiento, los seguidores eventualmente reducirán la desviación entre el seguidor y las coordenadas de seguimiento esperadas a cero para lograr los objetivos del accionamiento de formación. De esta manera, el algoritmo es relativamente menos complicado.

Algoritmos de evitación de obstáculos

Un algoritmo común para evitar obstáculos es el método del campo de potencial artificial. El movimiento del robot en un entorno físico se considera un movimiento en un campo de fuerza artificial virtual. El obstáculo más cercano se identifica mediante LiDAR. El obstáculo proporciona un campo de fuerza repulsiva para generar repulsión hacia el robot y el punto objetivo proporciona un campo gravitacional para generar fuerza gravitacional hacia el robot. De esta manera, controla el movimiento del robot bajo la acción combinada de repulsión y atracción.
Este paquete ROS es una mejora basada en el método de campo de potencial artificial. En primer lugar, el algoritmo de formación calcula la velocidad lineal y angular del seguidor esclavo. Luego aumenta o disminuye la velocidad lineal y angular según los requisitos de evitación de obstáculos. Cuando la distancia entre el seguidor esclavo y el obstáculo es más cercana, la fuerza de repulsión del obstáculo hacia el seguidor esclavo es mayor. Mientras tanto, el cambio de la velocidad lineal y las variaciones de la velocidad angular son mayores. Cuando el obstáculo está más cerca del frente del seguidor esclavo, la repulsión del obstáculo hacia el seguidor esclavo se vuelve mayor (la repulsión frontal es la mayor y la repulsión lateral es la menor). Como resultado, las variaciones de la velocidad lineal y la velocidad angular son mayores. A través del método de campo de potencial artificial, mejora una solución cuando un robot podría dejar de responder frente a un obstáculo. Esto sirve para el propósito de una mejor evitación de obstáculos.

CONFIGURACIÓN DE COMUNICACIÓN MULTIAGENTE

La comunicación entre múltiples agentes es uno de los pasos clave para completar una formación de múltiples robots. Cuando se desconocen las posiciones relativas de varios robots, los robots necesitan compartir la información de los demás a través de la comunicación para facilitar el establecimiento de conexiones. La arquitectura distribuida de ROS y las comunicaciones en red son muy potentes. No solo son convenientes para la comunicación entre procesos, sino también para la comunicación entre diferentes dispositivos. A través de la comunicación en red, todos los nodos pueden ejecutarse en cualquier computadora. Las tareas principales, como el procesamiento de datos, se completan en el lado del host. Las máquinas esclavas son responsables de recibir los datos ambientales recopilados por varios sensores. El host aquí es el administrador que ejecuta el nodo maestro en ROS. El marco de comunicación multiagente actual es a través de un administrador de nodos y un administrador de parámetros para manejar las comunicaciones entre múltiples robots.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (1)

Los pasos para configurar comunicaciones multiagente

  • Configurar controles ROS en la misma red
    • Hay 2 formas de configurar controles ROS maestro/esclavo en la misma red.

Opción 1:

El host maestro crea una red wifi local ejecutando el administrador de nodos maestros. Generalmente, uno de los robots designado como maestro crea esta red wifi. Otros robots o máquinas virtuales se unen a esta red wifi como esclavos.

Opciones 2:

La red wifi local es proporcionada por un enrutador de terceros como centro de retransmisión de información. Todos los robots están conectados al mismo enrutador. El enrutador también se puede utilizar sin conexión a Internet. Seleccione uno de los robots como maestro y ejecute el administrador de nodos maestro. Los demás robots se designan como esclavos y ejecutan el administrador de nodos maestro desde el maestro.
La decisión sobre qué opción elegir depende de los requisitos de su proyecto. Si la cantidad de robots que necesitan comunicarse no es grande, se recomienda la opción 1, ya que ahorra costos y es fácil de configurar. Cuando la cantidad de robots es grande, se recomienda la opción 2. La restricción en la potencia de procesamiento del control maestro de ROS y el ancho de banda wifi integrado limitado pueden causar fácilmente demoras e interrupciones de la red. Un enrutador puede solucionar fácilmente estos problemas. Tenga en cuenta que al realizar una comunicación con múltiples agentes, si la máquina virtual se usa como esclava de ROS, su modo de red debe configurarse en modo puente.

Configurar las variables de entorno maestro/esclavo

Una vez que todos los maestros ROS están en la misma red, es necesario configurar las variables de entorno para la comunicación multiagente. Esta variable de entorno se configura en el archivo .bashrc en el directorio principal. Ejecute el comando gedit ~/.bashrc para iniciarlo. Tenga en cuenta que es necesario configurar los archivos .bashrc del maestro y del esclavo en la comunicación multiagente. Lo que se debe cambiar son las direcciones IP al final del archivo. Las dos líneas son ROS_MASTER_URI y ROS_HOSTNAME, como se muestra en la Figura 2-1-4. ROS_MASTER_URI y ROS_HOSTNAME del host ROS son ambas IP locales. ROS_MASTER_URI en el archivo .bashrc del esclavo ROS debe cambiarse a la dirección IP del host mientras que ROS_HOSTNAME permanece como una dirección IP local.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (2)

La comunicación entre varias máquinas de ROS no está limitada por la versión de lanzamiento de ROS. En el proceso de comunicación entre varias máquinas, se debe tener en cuenta lo siguiente:

  1. El funcionamiento del programa esclavo de ROS depende del programa maestro de ROS del dispositivo maestro de ROS. El programa maestro de ROS debe iniciarse primero en el dispositivo maestro antes de ejecutar el programa esclavo en el dispositivo esclavo.
  2. Las direcciones IP de las máquinas maestra y esclava en comunicación entre varias máquinas deben estar en la misma red. Esto significa que la dirección IP y la máscara de subred están en la misma red.
  3. No se recomienda utilizar localhost en ROS_HOSTNAME en el archivo de configuración del entorno .bashrc. Se recomienda utilizar una dirección IP específica.
  4. En el caso de que la dirección IP esclava no esté configurada correctamente, el dispositivo esclavo aún puede acceder al maestro ROS pero no puede ingresar información de control.
  5. Si la máquina virtual participa en la comunicación entre múltiples agentes, su modo de red debe configurarse en modo puente. No se puede seleccionar una IP estática para la conexión de red.
  6. La comunicación entre varias máquinas no puede view o suscribirse a temas de tipo de datos de mensaje que no existen localmente.
  7. Puede utilizar la demostración de simulación de Little Turtle para verificar si la comunicación entre los robots es exitosa:
    • a. Huir del maestro
      • Rescore #lanzar servicios ROS
      • Tortugas de tribuna turtlesim_node #launch interfaz de tortugas
    • b. Huye del esclavo
      • Rerun turtles turtle_teleop_key #lanzar el nodo de control del teclado para tortugas

Si puede manipular los movimientos de la tortuga desde el teclado del esclavo, significa que la comunicación maestro/esclavo se ha establecido exitosamente.

Conexión wifi automática en ROS

Los siguientes procedimientos explican cómo configurar el robot para que se conecte automáticamente a la red del host o a la red del enrutador.

Configuración automática de la conexión wifi para Jetson Nano

  1. Conecte Jetson Nano a través de la herramienta remota VNC o directamente a la pantalla de la computadora. Haga clic en el ícono de wifi en la esquina superior derecha y luego haga clic en “Editar conexiones”.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (3)
  2. Haga clic en el botón + en Conexiones de red:ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (4)
  3. En la ventana "Elegir un tipo de conexión", haga clic en el menú desplegable y haga clic en el botón "Crear...":ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (5)
  4. En el Panel de control, haz clic en la opción Wi-Fi. Introduce el nombre de la red Wi-Fi a la que deseas conectarte en los campos “Nombre de conexión” y SSID. Selecciona “Cliente” en el menú desplegable “Modo” y selecciona “wlan0” en el menú desplegable “Dispositivo”.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (6)
  5. En el Panel de control, haz clic en la opción “General” y marca la opción “Conectarse automáticamente a esta red…”. Establece la prioridad de conexión en 1 en la opción “Prioridad de conexión para activación automática”. Marca la opción “Todos los usuarios pueden conectarse a esta red”. Cuando la opción está establecida en 0 en “Prioridad de conexión para activación automática” para otras redes wifi, esto significa que esta es la red wifi preferida en el pasado.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (7)
  6. Haga clic en la opción “Seguridad Wi-Fi” en el Panel de control. Seleccione “WPA y WPA2 Personal” en el campo “Seguridad”. Luego ingrese la contraseña Wi-Fi en el campo “Contraseña”.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (8)

Nota: Si el robot no puede conectarse automáticamente a la red wifi después de arrancar cuando la prioridad wifi está establecida en 0, puede deberse a un problema de señal wifi débil. Para evitar este problema, puede optar por eliminar todas las opciones wifi a las que se haya conectado en el pasado. Solo conserve la red wifi creada por el host o el enrutador. Haga clic en la opción “Configuración IPv4” en el panel de control de configuración de red. Seleccione la opción “Manual” en el campo “Método”. Luego haga clic en “Agregar”, complete la dirección IP de la máquina esclava en el campo “Dirección”. Complete “24” en el campo “Máscara de red”. Complete el segmento de red IP en “Puerta de enlace”. Cambie los últimos tres dígitos del segmento de red IP a “1”. El objetivo principal de este paso es arreglar la dirección IP. Una vez completado esto por primera vez, la dirección IP permanecerá sin cambios cuando se conecte al mismo WIFI posteriormente.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (9)

Una vez que se hayan configurado todos los ajustes, haga clic en “Guardar” para guardar los ajustes. Una vez que el proceso se haya realizado correctamente, el robot se conectará automáticamente a la red del host o enrutador cuando se encienda.

Nota:

  1. La dirección IP establecida aquí debe ser la misma que la dirección IP establecida en el archivo .bashrc en la Sección 2.1.
  2. La dirección IP del maestro y de cada esclavo debe ser única.
  3. Las direcciones IP maestra y esclava deben estar en el mismo segmento de red.
  4. Debe esperar a que el host o enrutador envíe la señal WiFi antes de que el robot esclavo pueda encenderse y conectarse automáticamente a la red WiFi.
  5. Una vez configurado el ajuste, si el robot no puede conectarse automáticamente al WiFi cuando está encendido, conecte y desconecte la tarjeta de red e intente conectarse nuevamente.

Configuración automática de conexión wifi para Raspberry Pi

El procedimiento para Raspberry Pi es el mismo que para Jetson Nano.

Configuración automática de la conexión Wi-Fi para Jetson TX1

La configuración en Jetson TX1 es casi la misma que en Jetson Nano con una excepción: Jetson TX1 debe seleccionar el dispositivo “wlan1” en “Dispositivo” en el panel de control de configuración de red.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (10)

CONFIGURACIÓN DE SINCRONIZACIÓN MULTIAGENTE

En el proyecto de formación de múltiples agentes, la configuración de la sincronización horaria de múltiples agentes es un paso crucial. En el proceso de formación, se producirán muchos problemas debido a la hora del sistema asincrónica de cada robot. La sincronización horaria de múltiples agentes se divide en dos situaciones, a saber, la situación en la que tanto el robot maestro como el esclavo están conectados a la red y la situación en la que ambos están desconectados de la red.

Conexión exitosa de la red maestro/esclavo

Una vez configurada la comunicación entre múltiples agentes, si las máquinas maestra y esclava pueden conectarse correctamente a la red, sincronizarán automáticamente la hora de la red. En este caso, no se requieren acciones adicionales para lograr la sincronización horaria.

Solución de problemas de desconexiones de red

Una vez configurada la comunicación entre múltiples agentes, si los dispositivos maestro y esclavo no pueden conectarse correctamente a la red, es necesario sincronizar la hora manualmente. Usaremos el comando de fecha para completar la configuración de la hora.

Primero, instale la herramienta terminadora. Desde la herramienta Terminator, use la herramienta de división de ventanas para colocar los terminales de control del maestro y el esclavo en la misma ventana de terminal (haga clic con el botón derecho para configurar una ventana dividida e inicie sesión en las máquinas maestra y esclava mediante ssh en diferentes ventanas). .

  • sudo apt-get install terminator # Descargue terminator para dividir la ventana de terminal

Haga clic en el botón de la parte superior izquierda, seleccione la opción [Transmitir a todos]/[Transmitir a todos] e ingrese el siguiente comando. Luego, use la herramienta Terminator para configurar la misma hora para el maestro y el esclavo.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (11)

  • sudo date -s “2022-01-30 15:15:00” # Configuración manual de la hora

PAQUETE ROS MULTIAGENTE

Introducción al paquete ROS

Configurar el nombre del esclavo

En el paquete de funciones wheeltec_multi, es necesario establecer un nombre único para cada robot esclavo para evitar errores. Por ejemplo:ampes decir, el n.° 1 para el esclavo 1 y el n.° 2 para el esclavo 2, etc. El propósito de establecer nombres diferentes es agrupar los nodos en ejecución y distinguirlos por diferentes espacios de nombres. Por ejemplo,ampes decir, el tema del radar del esclavo 1 es /slave1/scan, y el nodo LiDAR del esclavo 1 es /slave1/laser.

Configurar coordenadas esclavas

El paquete wheeltec_multi puede implementar formaciones personalizadas. Cuando se requieren formaciones diferentes, solo hay que modificar las coordenadas deseadas de los robots esclavos. Slave_x y slave_y son las coordenadas x e y del esclavo con el maestro como punto de referencia original. El frente del maestro es la dirección positiva de la coordenada x, y el lado izquierdo es la dirección positiva de la coordenada y. Una vez que se completa la configuración, se emitirá una coordenada TF slave1 como la coordenada esperada del esclavo. Si hay un maestro y dos esclavos, se puede configurar la siguiente formación:

  1. Formación horizontal: puede establecer las coordenadas del esclavo de la izquierda en slave_x:0, slave_y: 0.8, y las coordenadas del esclavo de la derecha en slave_x:0, slave_y:-0.8.
  2. Formación de columnas: las coordenadas de un esclavo se pueden configurar en: esclavo_x:-0.8, esclavo_y:0, y las coordenadas del otro esclavo se pueden configurar en: esclavo_x:-1.8, esclavo_y:0.
  3. Formación triangular: las coordenadas de un esclavo se pueden establecer en: esclavo_x:-0.8, esclavo_y: 0.8, y las coordenadas del otro esclavo se pueden establecer en: esclavo_x:-0.8, esclavo_y:-0.8.

Se pueden personalizar otras formaciones según sea necesario.

Nota:

  • La distancia recomendada entre los dos robots se establece en 0.8 y no se recomienda que sea inferior a 0.6. Se recomienda establecer la distancia entre los esclavos y el maestro por debajo de 2.0. Cuanto más lejos esté del maestro, mayor será la velocidad lineal del esclavo cuando el maestro esté girando. Debido a la limitación de la velocidad máxima, la velocidad del esclavo se desviará si no cumple los requisitos. La formación de robots se volverá caótica.

Inicialización de la posición del esclavo

  1. La posición inicial del esclavo se encuentra en las coordenadas esperadas de manera predeterminada. Antes de ejecutar el programa, simplemente coloque el robot esclavo cerca de sus coordenadas esperadas para completar la inicialización. Esta función se implementa mediante el nodo pose_setter en el archivo llamado turn_on_wheeltec_robot.launch en el paquete wheeltec_multi, como se muestra en la Figura 4-1-3.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (12)

Si el usuario desea personalizar la posición inicial del esclavo, solo necesita configurar los valores de esclavo_x y esclavo_y como se muestra en la Figura 4-1-4 en wheeltec_slave.launch. Los valores de Slave_x y Slave_y se pasarán a turn_on_wheeltec_robot.launch y se asignarán al nodo pose_setter. Simplemente coloque el robot en una posición personalizada antes de ejecutar el programa.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (13)

Configuración de posición

En una formación de múltiples agentes, el primer problema que se debe resolver es el posicionamiento del maestro y el esclavo. El maestro construirá primero un mapa 2D. Después de crear y guardar el mapa, ejecute el paquete de navegación 2D y use el algoritmo de posicionamiento de Monte Carlo adaptativo (posicionamiento amcl) en el paquete de navegación 2D para configurar el posicionamiento del maestro. Dado que el maestro y los esclavos están en la misma red y comparten el mismo administrador de nodos, el maestro ha lanzado el mapa desde el paquete de navegación 2D, todos los esclavos pueden usar el mismo mapa bajo el mismo administrador de nodos. Por lo tanto, el esclavo no necesita crear un mapa. En wheeltec_slave.launch, ejecute el posicionamiento de Monte Carlo (posicionamiento amcl), los esclavos pueden configurar sus posiciones usando el mapa creado por el maestro.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (14)

Cómo crear formación y mantener la formación

En el proceso de movimiento de la formación, el movimiento del maestro puede ser controlado por Rviz, teclado, control remoto y otros métodos. El esclavo calcula su velocidad a través del nodo slave_tf_listener para controlar su movimiento y lograr el objetivo de la formación. El nodo slave_tf_listener limita la velocidad del esclavo para evitar una velocidad excesiva por parte del cálculo del nodo, lo que provocará una serie de impactos. El valor específico puede modificarse en wheeltec_slave.launch.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (15)

Los parámetros relevantes del algoritmo de formación son los siguientes: ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (16)

Información para evitar obstáculos

En una formación de múltiples agentes, el maestro puede usar el nodo move_base para completar la evitación de obstáculos. Sin embargo, la inicialización del esclavo no utiliza el nodo move_base. En este punto, se debe llamar al nodo multi_avoidance en el programa esclavo. El nodo de evitación de obstáculos está habilitado de manera predeterminada en el paquete. Si es necesario, avoidance se puede configurar como “false” para deshabilitar el nodo de evitación de obstáculos. ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (17)

En la figura siguiente se muestran algunos parámetros relevantes del nodo de evitación de obstáculos, donde safe_distance es el límite de distancia segura del obstáculo y danger_distance es el límite de distancia peligrosa del obstáculo. Cuando el obstáculo se encuentra dentro de la distancia segura y la distancia peligrosa, el esclavo ajusta su posición para evitar el obstáculo. Cuando el obstáculo se encuentra dentro de la distancia peligrosa, el esclavo se alejará del obstáculo.ALGORITMOS MULTIAGENTE DE ROBOWORKS-Robofleet-FIG- (18)

Procedimiento de operación

Ingrese el comando de ejecución

Preparativos antes de iniciar la formación de múltiples agentes:

  • El maestro y el esclavo se conectan a la misma red y configuran la comunicación multiagente correctamente
  • El maestro construye un mapa 2D de antemano y lo guarda.
  • El maestro se coloca en el punto de inicio del mapa y el esclavo se coloca cerca de la posición de inicialización (la posición de formación de esclavo predeterminada)
  • Después de iniciar sesión en Jetson Nano/Raspberry Pi de forma remota, realice la sincronización horaria.

sudo fecha -s “2022-04-01 15:15:00”

  • Paso 1:Abre un mapa 2D desde el maestro.

roslaunch turn_on_wheeltec_robot navegación.launch

  • Paso 2:Ejecute el programa de formación desde todos los esclavos.

roslaunch wheeltec_multi wheeltec_slave.launch

  • Paso 3:Abra el nodo de control del teclado desde el maestro o use el joystick para controlar de forma remota el movimiento del maestro.

Relanzar wheeltec_robot_rc keyboard_teleop.launch

  • Paso 4: (Opcional) Observe los movimientos del robot desde Rviz.

Visítenos

Nota: 

  1. Asegúrese de completar la operación de sincronización de hora antes de ejecutar el programa.
  2. Al controlar el maestro de una formación de múltiples agentes, la velocidad angular no debe ser demasiado rápida. La velocidad lineal recomendada es de 0.2 m/s, con un grado de velocidad angular inferior a 0.3 rad/s. Cuando el maestro está haciendo un giro, cuanto más lejos esté el esclavo del maestro, mayor será la velocidad lineal necesaria. Debido al límite de velocidad lineal y velocidad angular en el paquete, cuando el vehículo esclavo no puede alcanzar la velocidad requerida, la formación será caótica. En general, la velocidad lineal excesiva puede dañar fácilmente el robot.
  3. Cuando el número de esclavos es mayor que uno, debido al ancho de banda wifi integrado limitado del host ROS, es fácil que se produzcan retrasos significativos y desconexiones en la comunicación entre múltiples agentes. El uso de un enrutador puede resolver este problema.
  4. El árbol TF de la formación multirobot (2 esclavos) es: rqt_tf_tree
  5. El diagrama de relación de nodos de la formación de múltiples robots (2 esclavos) es: rqt_graph

Documentos / Recursos

ALGORITMOS MULTIAGENTE DE ROBOWORKS Robofleet [pdf] Manual del usuario
Algoritmos multiagente de Robofleet, Robofleet, Algoritmos multiagente, Algoritmos de agente, Algoritmos

Referencias

Deja un comentario

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *