Ir al contenido

Formación multi-drone

El vuelo en formación es una aplicación avanzada de la cooperación multi-drone. En este proyecto aprenderás a implementar el vuelo en formación de 3 drones.

  • Sistemas multiagente
  • Algoritmos de control cooperativo
  • Estrategias de control de formación
  • Modo líder-seguidor
Artículo Cantidad Descripción
3 drones ESP32-S3 3 -
Ordenador 1 Con Python + Pygame
formation_simulator.py 1 Simulador de formaciones

Paso 1: Elegir la estrategia de control de formación

Sección titulada «Paso 1: Elegir la estrategia de control de formación»

El modo líder-seguidor (Leader-Follower) es la estrategia de control de formaciones más utilizada.

Descomprime formation_flight.zip y ábrelo con VS Code.

Paso 3: Implementar la estrategia líder-seguidor

Sección titulada «Paso 3: Implementar la estrategia líder-seguidor»

Abre formation.c e implementa el control de los seguidores:

void follower_control(float leader_x, float leader_y, float leader_z,
float offset_x, float offset_y, float offset_z) {
// 1. Calcular la posición deseada: pos_líder + desfase
float desired_x = leader_x + offset_x;
float desired_y = leader_y + offset_y;
float desired_z = leader_z + offset_z;
// 2. Calcular los comandos de velocidad con un controlador PID
float vx = pid_controller(&pos_pid_x, desired_x, current_x);
float vy = pid_controller(&pos_pid_y, desired_y, current_y);
float vz = pid_controller(&pos_pid_z, desired_z, current_z);
// 3. Convertir los comandos de velocidad en revoluciones de los motores
motorsSetRatio(MOTOR_M1, current_ratio + vx - vy + vz);
motorsSetRatio(MOTOR_M2, current_ratio - vx - vy + vz);
motorsSetRatio(MOTOR_M3, current_ratio - vx + vy + vz);
motorsSetRatio(MOTOR_M4, current_ratio + vx + vy + vz);
}

Paso 4: Configurar los parámetros de la formación

Sección titulada «Paso 4: Configurar los parámetros de la formación»
  • Líder (drone 1): posición (0, 0, 1)
  • Seguidor 1 (drone 2): posición (1, 0, 1) (1 metro a la derecha del líder)
  • Seguidor 2 (drone 3): posición (0.5, sqrt(3)/2, 1) (1 metro al frente-izquierda del líder, formando un triángulo equilátero)
  1. La estación terrestre envía el comando “iniciar formación”
  2. Observa si los 3 drones forman y mantienen una figura triangular
  3. Reto: implementa un “cambio de formación”, pasando del triángulo a una formación en línea
  • Ajusta los parámetros PID
  • Optimiza la frecuencia de comunicación
  • Aumenta la velocidad de seguimiento
  • Reduce la separación de la formación

¡Enhorabuena! Has implementado el vuelo en formación de varios drones, ¡una aplicación avanzada de la cooperación multi-drone!

En el siguiente proyecto aprenderás a desarrollar un sistema de seguimiento e identificación visual basado en IA.

Publicado por primera vez endrone.imagrove.com/es/advanced/formation/Al citar o reproducir, indica la fuente Imagrove y enlaza a esta página.

¿Dudas o problemas con este tutorial?

Inicia sesión con GitHub para comentar. Si un paso te falla, avísanos: lo verificamos y actualizamos el tutorial.

ImagroveMás tutoriales sobre ESP32 · ESP32 IoT Tutorial

© 2026 ESP32 Drone. Todos los derechos reservados.