Ir al contenido

Red de comunicación multi-drone

La cooperación multi-drone es una frontera de la tecnología de drones. En este proyecto aprenderás a implementar una red MESH de múltiples drones con el protocolo ESP-NOW.

  • Protocolo ESP-NOW
  • Topología de redes MESH
  • Diseño de sistemas distribuidos
  • Mecanismos de intercambio de información
Artículo Cantidad Descripción
3 drones ESP32 3 -
Ordenador 1 Con Python + Socket
ground_station.py 1 Software de estación terrestre

ESP-NOW es un protocolo de comunicación de baja latencia y punto a punto, adecuado para la comunicación entre múltiples dispositivos a corta distancia.

Descomprime mesh_network.zip y ábrelo con VS Code.

Paso 3: Implementar las funciones centrales de la red MESH

Sección titulada «Paso 3: Implementar las funciones centrales de la red MESH»

Abre mesh.c e implementa la inicialización de la red:

void mesh_init(void) {
// 1. Inicializar ESP-NOW
esp_now_init();
// 2. Añadir las direcciones MAC de todos los drones a la lista de pares
uint8_t peer_macs[3][6] = {
{0x11, 0x22, 0x33, 0x44, 0x55, 0x66}, // MAC del drone 1
{0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}, // MAC del drone 2
{0x00, 0x11, 0x22, 0x33, 0x44, 0x55} // MAC del drone 3
};
for (int i = 0; i < 3; i++) {
esp_now_add_peer(peer_macs[i], ESP_NOW_ROLE_COMBO, 0, NULL, 0);
}
// 3. Registrar las funciones de callback de envío/recepción de datos
esp_now_register_send_cb(on_data_sent);
esp_now_register_recv_cb(on_data_recv);
}
void mesh_broadcast_data(uint8_t* data, size_t len) {
// 1. Recorrer todos los nodos pares
for (int i = 0; i < 3; i++) {
// 2. Enviar los datos a cada nodo
esp_now_send(peer_macs[i], data, len);
}
}

Paso 4: Implementar el intercambio de información

Sección titulada «Paso 4: Implementar el intercambio de información»
  1. Cada drone transmite periódicamente su posición, nivel de batería y estado de la tarea
  2. Recibe las transmisiones de los demás drones y actualiza el estado global
  1. Haz volar los 3 drones a la vez
  2. Observa si la estación terrestre recibe los datos en tiempo real de todos los drones
  3. Reto: implementa una “detección de fallos” para que, cuando un drone tenga poca batería, los demás ajusten automáticamente sus tareas
  • Comprueba la conexión de la antena
  • Reduce la distancia de comunicación
  • Añade un mecanismo de retransmisión de datos
  • Optimiza el tamaño de los paquetes

¡Enhorabuena! Has implementado una red MESH de múltiples drones, ¡la base de la cooperación multi-drone!

En el siguiente proyecto aprenderás a implementar el vuelo en formación de varios drones.

Publicado por primera vez endrone.imagrove.com/es/advanced/mesh-network/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.