Chapter 9 Multi-Machine Communication and Intelligent Networking¶
UAV communication is a crucial component of 6G wireless communication networks, enhancing UAV mission execution efficiency and expanding wireless network coverage. Compared with terrestrial communication scenarios, UAV communication scenarios exhibit unique channel characteristics. UAV communication possesses distinct features and differences relative to other communication systems.
9.1 Background and Theory¶
In intelligent unmanned swarm systems, the communication system serves not only as a medium for data exchange among nodes but also as the core pillar for achieving collaborative intelligence, permeating critical stages such as perception, decision-making, and control.

9.1.1 Concept and Role of Networking Communication¶
Networking communication in unmanned systems refers to connecting multiple intelligent agents into a networked system structure capable of data exchange, state synchronization, and collaborative control, using wired or wireless communication technologies. This structure supports functionalities including environmental perception information sharing, vehicle state and intent synchronization, transmission of ground commands and information, fault detection, and anomaly reporting.
9.1.2 Typical Application Scenarios of Swarm Communication¶
Swarm networking communication can be categorized into two typical scenarios based on the number of nodes: small-scale and large-scale. Small-scale swarms require dynamic optimization of data forwarding paths to minimize power consumption, communication latency, and maximize network throughput. Large-scale swarms must address key issues such as scalability, self-organization, and resilience.
9.2 Framework and Interfaces¶
The RflySim toolchain constructs a complete technical closed-loop for communication and networking in unmanned swarm systems, spanning from underlying communication implementation to upper-layer swarm applications.
9.2.1 Communication Protocol Selection and Networking Topology¶
The toolchain supports multiple communication protocols (e.g., dedicated data links, Wi-Fi, 4G/5G, ZigBee, LoRa, and satellite communication) and networking topologies, enabling flexible deployment according to mission environments to meet the communication requirements of swarms of varying scales.
9.2.2 Network Modeling and Simulation¶
Based on the RflySim toolchain's networking communication simulation framework and interface mechanisms, combined with typical development cases, this section demonstrates the simulation configuration, code implementation, and algorithm verification process for swarm communication protocols, providing reproducible experimental references and engineering templates for subsequent research on distributed cooperative control and swarm system deployment.
9.3 Showcase of Excellent Cases¶
Swarm Communication Quality Simulation:
UAV Relay Communication Demonstration:
9.4 Course-Linked Video Lectures¶
Public Lecture Replay for This Chapter (Session 8: Multi-Machine Communication and Intelligent Networking):
9.5 Chapter Experiment Cases¶
The relevant verification experiments and guided cases for this chapter are located in the [Installation Directory]\RflySimAPIs\9.RflySimComm folder.
9.5.1 Interface Learning Experiments¶
Located in the 9.RflySimComm\0.ApiExps folder, covering foundational platform interface tutorials and general introductions to various tools.
Experiment 1: RflyNet Network Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/Readme.pdf
📝 Experiment Overview:
Based on the RflySim platform's communication framework, this experiment develops and validates network communication functionalities—including point-to-point communication, broadcast communication, and buf packet encapsulation/forwarding—for drone swarms using the Python library NetSimAPIV4.
Experiment 2: DDS Networking Environment Configuration
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.DDSDepsTestExps/Readme.pdf
📝 Experiment Overview: Configures a DDS networking environment, sets up the eProsima Fast DDS protocol, establishes sender/receiver ports to enable DDS communication, and introduces the core principles of the DDS (Data Distribution Service) mechanism.
Experiment 3: MQTT Network Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.MQTTDepsTestExps/Readme.pdf
📝 Experiment Overview: Introduces the lightweight MQTT network communication protocol; implements message publishing and subscription functions using Python, and mastering the publish/subscribe communication paradigm.
Experiment 4: Redis Communication Simulation Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e5.RedisDepsTestExps/Readme.pdf
📝 Experiment Overview: Learns Redis communication mechanisms, installs and configures a Redis server, connects to it via a Python client, and implements data storage/retrieval and publish/subscribe functionality based on the RESP protocol.
Experiment 5: RflySim Network Communication API Learning
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/0.APILearn/Readme.pdf
📝 Experiment Overview:
Learn how to use the RflySim platform's drone network communication APIs, including RedisUtils for data storage, NetUavAPI for heartbeat mechanisms, and NetSimAPIV4 for multi-drone simulation. Implement point-to-point, broadcast, and multicast communication modes.
Experiment 6: RflySim Point-to-Point Drone Data Forwarding
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/1.P2PSendData/Readme.pdf
📝 Experiment Overview: Demonstrates point-to-point communication and data forwarding among multiple drones on the RflySim platform, covering both automatic IP detection and manual IP assignment connection methods.
Experiment 7: Multi-Drone Broadcast Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/2.BroadSendData/Readme.pdf
📝 Experiment Overview:
Demonstrates broadcasting and receiving status data among multiple drones on the RflySim platform using NetSimAPIV4 and PX4MavCtrlV4 libraries. Covers establishing multi-drone communication links, configuring broadcast forwarding, and parsing received status data.
Experiment 8: Network Buffer Data Transmission
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/3.SendBufApi/Readme.pdf
📝 Experiment Overview:
Demonstrates sending and receiving binary buffer data via network interfaces. Covers struct module for data packing/unpacking, NetSimAPI network transmission, data validation, and multi-drone data management.
Experiment 9: Multi-Drone Broadcast Buffer Data Transmission
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/4.BroadSendbuf/Readme.pdf
📝 Experiment Overview:
Demonstrates broadcast buffer data transmission among multiple drones on the RflySim platform. Covers usage of the NetSimAPIV4 network simulation interface and struct module, and mastering buffer data transmission and reception between drones.
Experiment 10: NetBufAPI Multi-Drone Broadcast Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/5.BroadBufAPI/Readme.pdf
📝 Experiment Overview:
Learn to use NetBufAPI for data broadcasting and sharing among multiple drones. Master buffer data structure design, struct-based data packing, and cross-platform drone cooperative communication mechanisms.
Experiment 11: Python Network Simulation API Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/6.PythonNetSimAPI/Readme.pdf
📝 Experiment Overview:
By setting up an SITL simulation environment, this experiment teaches how to use the NetSimAPI for multi-UAV cooperative control and data sharing, and covers MAVLink communication protocols and network forwarding configuration.
Experiment 12: Python Multi-UAV Multicast Communication and Cooperative Monitoring
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/7.PythonAllUavDemo/Readme.pdf
📝 Experiment Overview:
Using the RflySim platform, this experiment establishes a multi-UAV cooperative simulation environment to achieve real-time state data sharing and monitoring among multiple UAVs. It introduces multicast communication mechanisms and teaches techniques for cooperative control based on network communication, as well as methods for constructing and debugging distributed simulation systems.
Experiment 13: Multi-UAV Cluster Filtering Broadcast Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/8.BroadReqDemo/Readme.pdf
📝 Experiment Overview:
Implements a filtering broadcast communication mechanism in a multi-UAV cluster environment. Using a request-response model, UAV #1 actively retrieves state data from UAVs #2 and #3 on demand, avoiding data congestion and resource waste caused by full-network broadcasting. This experiment introduces efficient cluster communication methods.
Experiment 14: Multi-UAV Network Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e6.NS3DepsTestExps/PythonAllUavDemo/Readme.pdf
📝 Experiment Overview:
Implements MAVLink communication among multiple UAVs via Python scripts, enabling each UAV to obtain flight status information from other UAVs, and introduces multi-UAV communication mechanisms.
9.5.2 Basic Application Experiments¶
Located in the 9.RflySimComm\1.BasicExps folder, these experiments guide users in applying the communication framework to multi-machine collaborative tasks.
Experiment 1: DDS Multi-UAV Networking Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.DDSUAVsCommExps/Readme.pdf
📝 Experiment Overview:
This experiment uses DDS (Data Distribution Service) to share flight status information among multiple UAVs. A DDS subscriber is created to subscribe to UavMessage-type data, and the Fast DDS library is used to configure the DDS environment, enabling UAVs to obtain flight status from other UAVs during flight.
Experiment 2: MQTT and MAVLink Four-UAV Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e3.MQTTUAVsCommExps/Readme.pdf
📝 Experiment Overview:
Conducts a communication network experiment among four UAVs using both MQTT and MAVLink protocols. It covers MQTT client creation, message publishing/subscribing, and inter-UAV connection configuration.
Experiment 3: Redis-Based UAV Network Communication Simulation
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.RedisUAVsCommExps/1.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview:
A coarse-grained network simulation experiment based on Redis, simulating signal quality, packet loss rate, and transmission rate in UAV-to-UAV communication, and evaluating network performance across multi-UAV nodes.
Experiment 4: Python Network Simulation Networked Control
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/1.PythonNetSimAPI-CentCtrl/Readme.pdf
📝 Experiment Overview:
Implements communication and data exchange among multiple UAVs using the Python network simulation API. This experiment introduces network communication mechanisms for UAV formation flight and teaches methods for transmitting state information among UAVs in networked simulations.
Experiment 5: NetSimMini_redis_nomat Coarse-Grained Cluster Networking Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.RedisUAVsCommExps/2.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview:
Establish a Redis communication environment and use the RflySim toolchain to simulate a four-drone swarm network. This enables state data publishing/subscribing among drones, communication latency calculation, and cooperative tracking control.
Experiment 6: Aircraft Networking Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/2.PythonNetSimAPI-CentCtrl/Readme.pdf
📝 Experiment Overview:
Achieve real-time sharing of flight status information and formation flight control among multiple aircraft via the Python network communication API, gaining proficiency in drone network data exchange mechanisms.
Experiment 7: Aircraft Networking Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/3.PythonNetSimAPI-SimpPack/Readme.pdf
📝 Experiment Overview:
Implement multi-drone network communication using the Python NetSimAPI. During flight, drones retrieve other drones' status information, and formation control for a four-drone swarm is realized via end-to-end port forwarding and multicast.
Experiment 8: Python Network Simulation and Heartbeat Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/4.Python/Readme.pdf
📝 Experiment Overview:
Build a network simulator for data relaying, employ heartbeat communication to verify drone online status, and learn MAVLink communication initialization, network forwarding service configuration, and heartbeat server startup.
9.5.3 Advanced Development Experiments¶
Stored in the 9.RflySimComm\2.AdvExps folder, these experiments further familiarize users with certain low-level firmware ecosystem configurations.
Experiment 1: RflySim Network Resource Allocation Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.NetResAlloc/Readme.pdf
📝 Experiment Overview:
Based on RflySim's network digital twin system, optimize network resource allocation for multiple drones, incorporating reinforcement learning algorithms and various optimization strategy models.
Experiment 2: NetSim4Demo Networking Simulation Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/1.NetSim4Demo/Readme.pdf
📝 Experiment Overview:
Conduct multi-drone networking simulations using RflySim's NetUavAPI communication interface. A network simulator emulates communication among four drones, enabling network quality visualization and data exchange.
Experiment 3: Redis Networking Signal Quality Testing Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/2.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview:
Learn to implement drone swarm networking communication using Redis, and evaluate network signal quality via simulation experiments, mastering data publishing/subscribing and network performance analysis techniques.
Experiment 4: Redis Multi-Drone Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/3.Redis/Readme.pdf
📝 Experiment Overview:
Explore Redis-based data communication in multi-drone systems, comparing the real-time performance, scalability, and system performance of three architectures: publish-subscribe, key-value storage, and multi-channel subscription.
9.5.4 Advanced Custom Development Experiments¶
Stored in the 9.RflySimComm\3.CustExps folder, these experiments are designed for advanced users' custom development.
Experiment 1: VR Clock Synchronization Test
- 📦 Version Requirement:
Full Version - 📁 File Path: e1.VRClockSyncTest/Readme.pdf
📝 Experiment Overview: Deploy the NTP time synchronization protocol to achieve high-precision clock synchronization in a virtual-physical integrated system, verifying that the system time error among all nodes in a local area network is below 1 ms.
Experiment 2: NS-3 Network Simulation
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/1.NS3/Readme.pdf
📝 Experiment Overview: Configure the NS-3 environment, set up the 802.11a wireless communication protocol, and simulate UAV swarm network communication with latency analysis.
Experiment 3: NS3-Udp-PyQtViz Network Communication Visualization
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/2.NS3-Udp-PyQtViz/Readme.pdf
📝 Experiment Overview: Configure the NS3 network simulation environment, set up the NS3 protocol to implement UDP network communication, and add communication quality visualization using PyQt based on the previous experiment.
Experiment 4: NS3-PyViz Network Simulation
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/3.NS3-PyViz/Readme.pdf
📝 Experiment Overview: Learn to configure the NS3 network simulation environment, set up the NS3 protocol, create sender/receiver ports for network communication, and master the use of communication quality visualization tools.
Experiment 5: NS3 UAV Control
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/4.NS3-Ctrl/Readme.pdf
📝 Experiment Overview: Configure the NS3 network simulation environment, set up the NS3 protocol, create sender/receiver ports for NS3 network communication, and determine UAV control commands based on communication status. Learn the application of discrete-event simulation in UAV network communication.
Experiment 6: Aircraft Networking Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/1.NS3/uav/Readme.pdf
📝 Experiment Overview: Achieve flight status information exchange among multiple aircraft during flight by configuring UDP port forwarding for multiple UAVs, mastering methods for multi-aircraft data interaction.
Experiment 7: Aircraft Networking Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/2.NS3-Udp-PyQtViz/uav/Readme.pdf
📝 Experiment Overview: Based on RflySim, implement UDP networking communication for four UAVs. Use a Python program to control the UAVs to take off sequentially and obtain each other's flight status, learning multi-UAV network communication and data forwarding mechanisms.
Experiment 8: Aircraft Networking Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/3.NS3-PyViz/uav/Readme.pdf
📝 Experiment Overview: Using the RflySim platform, implement networking communication for four UAVs, enabling each aircraft to obtain flight status information of other aircraft during flight. Learn the implementation of UDP network forwarding and multi-aircraft data interaction.
Experiment 9: Aircraft Networking Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/4.NS3-Ctrl/uav/Readme.pdf
📝 Experiment Overview: Using the RflySim toolchain, implement multi-UAV networking to enable each aircraft to obtain the status information of other aircraft during flight. Learn fundamental methods for inter-UAV network communication and data forwarding.
Experiment 1: RflyNetAPI Interface Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/Readme.pdf
📝 Experiment Overview: Based on the RflySim platform's communication framework, this experiment implements drone swarm network communication using the Python library NetSimAPIV4, covering core methods such as point-to-point communication, broadcasting, data encapsulation, and network monitoring.
Experiment 2: DDS Networking Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.DDSDepsTestExps/Readme.pdf
📝 Experiment Overview: Configure the Windows development environment for DDS networking communication, compile the Python bindings for Fast DDS and custom IDL communication types, and complete DDS publish-subscribe communication using Python publisher and subscriber endpoints.
Experiment 3: MQTT Network Communication Protocol Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.MQTTDepsTestExps/Readme.pdf
📝 Experiment Overview: This experiment involves installing an EMQX server and using Python to write MQTT publishers and subscribers, thereby implementing network communication based on the publish/subscribe model and learning the fundamentals of the MQTT protocol and client development.
Experiment 4: Redis Communication Simulation Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e5.RedisDepsTestExps/Readme.pdf
📝 Experiment Overview: This experiment aims to simulate and implement a real-time communication mechanism based on Redis using the RflySim toolchain and Redis database, learning Redis installation and configuration, the RESP protocol, and the data storage/retrieval and publish-subscribe functionalities of the RedisUtils class.
Experiment 5: NS3 Networking Communication Dependency Environment Construction and Validation
- 📦 Version Requirement:
Free Edition - 📁 File Path: e6.NS3DepsTestExps/Readme.pdf
📝 Experiment Overview: Build and validate the NS3-based networking communication dependency environment, understand the data forwarding relationship between UAV control scripts and NS3 network simulation, and provide foundational support for subsequent joint networking experiments.
Experiment 6: RflySim Data Communication and Network Simulation Interface Learning Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/0.APILearn/Readme.pdf
📝 Experiment Overview: This experiment aims to help learners deeply understand and master the usage and principles of the UAV network communication APIs in the RflySim platform, including the three core components RedisUtils, NetUavAPI, and NetSimAPIV4, to achieve the construction of a multi-UAV cluster communication system.
Experiment 7: Point-to-Point UAV Data Forwarding Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/1.P2PSendData/Readme.pdf
📝 Experiment Overview: This experiment demonstrates how to use the RflySim platform to implement point-to-point communication and data forwarding in a multi-UAV system, learning distributed simulation mechanisms, LAN configuration, Python API communication, and automatic/manual IP connection methods.
Experiment 8: Multi-UAV Broadcast Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/2.BroadSendData/Readme.pdf
📝 Experiment Overview: This experiment demonstrates how to implement broadcast communication among multiple UAVs using the RflySim platform, using the NetSimAPIV4 and PX4MavCtrlV4 libraries to master establishing communication links, configuring data broadcast forwarding, receiving and parsing status data, and the principles of distributed cooperative work.
Experiment 9: Network Buffer Data Transmission
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/3.SendBufApi/Readme.pdf
📝 Experiment Overview: Demonstrates sending and receiving binary buffer data via network interfaces, learning struct module packing/unpacking, NetSimAPI network transmission, data validation, and multi-UAV data management.
Experiment 10: Multi-UAV Broadcast Buffer Data Transmission
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/4.BroadSendbuf/Readme.pdf
📝 Experiment Overview: This experiment demonstrates the implementation of broadcast data transmission among multiple UAVs using the RflySim platform, learning the use of the NetSimAPIV4 network simulation interface and the struct module, and mastering the sending and receiving of buffer data between UAVs.
Experiment 11: NetBufAPI Multi-UAV Broadcast Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/5.BroadBufAPI/Readme.pdf
📝 Experiment Overview: Learn to use NetBufAPI to implement data broadcasting and sharing among multiple UAVs, mastering buffer data structure design, struct data packing, and cross-platform UAV cooperative communication mechanisms.
Experiment 12: Python Network Simulation API Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/6.PythonNetSimAPI/Readme.pdf
📝 Experiment Overview: This experiment involves setting up an SITL simulation environment to learn how to use NetSimAPI for cooperative control and data sharing among multiple UAVs, mastering MAVLink communication, multi-threaded programming, and formation tracking algorithms.
Experiment 13: Multi-UAV Multicast Communication and Status Cooperative Monitoring Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/7.PythonAllUavDemo/Readme.pdf
📝 Experiment Overview: Build a multi-UAV cooperative simulation environment using the RflySim platform to achieve status data sharing and real-time monitoring, mastering network communication-based multi-UAV cooperative control and multicast communication mechanisms.
Experiment 14: Multi-UAV Cluster Filtering Broadcast Communication
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetAPIExps/8.BroadReqDemo/Readme.pdf
📝 Experiment Overview: Implement a filtering broadcast communication mechanism in a multi-UAV cluster environment. Using a request-response model, UAV #1 actively retrieves status data from UAVs #2 and #3 on demand, avoiding data congestion and resource waste caused by full-network broadcasting, and learning efficient cluster communication methods.
Experiment 15: Python Multi-UAV Networking Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e6.NS3DepsTestExps/PythonAllUavDemo/Readme.pdf
📝 Experiment Overview: Through software-in-the-loop simulation, multiple UAVs obtain status information from each other during flight, learning multi-UAV communication mechanisms.
9.5.2 Basic Usage Experiments¶
Stored in the 9.RflySimComm\1.BasicExps folder, providing a comprehensive set of supplementary teaching materials for beginners.
Experiment 1: UAV Formation Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.DDSUAVsCommExps/Readme.pdf
📝 Experiment Overview: This experiment uses the DDS communication mechanism to achieve state information sharing among multiple UAVs, learning to use the Fast DDS library to create subscribers and publishers to obtain and publish UAV flight status data.
Experiment 2: MQTT and MAVLink Four-UAV Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e3.MQTTUAVsCommExps/Readme.pdf
📝 Experiment Overview: This experiment implements communication networking among four aircraft using MQTT and MAVLink protocols, covering EMQX server installation, MQTT client creation and message publishing, as well as multi-UAV formation flight control.
Experiment 3: UAV Network Simulation Signal Quality Assessment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.RedisUAVsCommExps/1.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview: This experiment uses the RflySim toolchain and Redis to simulate communication networks between UAVs, assess signal quality (packet loss rate, Ping, transmission rate), and visualize network performance.
Experiment 4: Python Network Simulation API Centralized Control
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/1.PythonNetSimAPI-CentCtrl/Readme.pdf
📝 Experiment Overview: This experiment implements multi-UAV formation flight using the Python network simulation API, learning how to establish communication instances between UAVs, configure port forwarding and listening, and achieve state information sharing and cooperative control.
Experiment 5: Coarse-Grained Cluster Networking Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e4.RedisUAVsCommExps/2.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview: This experiment sends data through UAV cluster networking, uses coarse-grained networking rules to determine whether data can reach the destination UAV and calculates packet loss, learning MAVLink communication, CopterSim simulation, Redis data publish/subscribe, and cooperative tracking algorithms.
Experiment 6: Python Network Simulation API Central Control
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/2.PythonNetSimAPI-CentCtrl/Readme.pdf
📝 Experiment Overview: This experiment implements multi-UAV formation flight using the Python network simulation API, learning how to configure communication ports and IP addresses to achieve real-time exchange of flight status information between aircraft.
Experiment 7: Python Network Simulation API Simplified Package
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/3.PythonNetSimAPI-SimpPack/Readme.pdf
📝 Experiment Overview: This experiment uses the Python network simulation API simplified package to achieve state information sharing and formation flight control among multiple UAVs, learning the aircraft networking mechanism based on UDP multicast.
Experiment 8: Python Network Simulator Data Relay Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.RflyNetSimExps/4.Python/Readme.pdf
📝 Experiment Overview: Create a network simulator via Python scripts to achieve data relay, use heartbeat communication to confirm aircraft online status, and control UAVs to complete takeoff and flight missions.
9.5.3 Advanced Development Experiments¶
Stored in the 9.RflySimComm\2.AdvExps folder, these experiments further familiarize users with certain low-level firmware ecosystem configurations.
Experiment 1: Multi-UAV MEC Network Resource Allocation Twin and Simulation System
- 📦 Version Requirement:
Free Edition - 📁 File Path: e2.NetResAlloc/Readme.pdf
📝 Experiment Overview: Build a multi-UAV mobile edge computing network resource allocation twin and simulation system based on RflySim, integrating the PX4 physics engine and multi-agent reinforcement learning algorithms to achieve a visual verification platform for dynamic network topology, channel modeling, and adaptive computation offloading tasks.
Experiment 2: Multi-UAV Coarse-Grained Networking Simulation Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/1.NetSim4Demo/Readme.pdf
📝 Experiment Overview: Master the construction of multi-UAV SITL simulation environments in the RflySim toolchain, understand distance-based signal attenuation models, routing table computation, and packet loss simulation, learn to control multiple UAVs with Python and communicate via custom protocols, and use PyQt5 to visualize network topology.
Experiment 3: Coarse-Grained Networking Simulation Redis Network Signal Quality Detection Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/2.NetSimMini_redis_nomat/Readme.pdf
📝 Experiment Overview: This experiment sends data to a Redis server through UAV cluster networking, simulates network networking, and calculates packet loss, aiming to learn UAV cluster communication and network quality detection methods.
Experiment 4: Redis UAV Networking Communication Experiment
- 📦 Version Requirement:
Free Edition - 📁 File Path: e1.CoaGraNetSimExps/3.Redis/Readme.pdf
📝 Experiment Overview: By comparing three Redis-based communication architectures (publish-subscribe, key-value storage, multi-channel subscription), analyze the real-time performance, scalability, and system performance of data communication in multi-UAV systems, and verify the practical applications of different communication modes.
9.5.4 Advanced Custom Development Experiments¶
Stored in the 9.RflySimComm\3.CustExps folder, these experiments are designed for advanced users' custom development.
Experiment 1: Virtual-Physical Integrated Clock Synchronization Scheme and Deployment Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e1.VRClockSyncTest/Readme.pdf
📝 Experiment Overview: This experiment deploys the NTP protocol to achieve high-precision virtual-physical integrated clock synchronization, verifying that the system time error among all nodes in a local area network is below 1 ms, thereby enhancing the synchronization and reliability of multi-node collaborative operations.
Experiment 2: NS3 Network Simulation
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/1.NS3/Readme.pdf
📝 Experiment Overview: Configure the NS3 environment, set up the NS3 protocol, create sender/receiver ports, and implement NS3 network communication simulation for UAV swarms, analyzing end-to-end transmission latency.
Experiment 3: NS3-Udp-PyQtViz Communication Quality Visualization
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/2.NS3-Udp-PyQtViz/Readme.pdf
📝 Experiment Overview: Based on the NS3 network simulation, this experiment uses PyQt to visualize communication quality among UAVs, learning NS3 environment configuration, UDP communication, and visualization interface development.
Experiment 4: NS3-PyViz Communication Visualization Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/3.NS3-PyViz/Readme.pdf
📝 Experiment Overview: This experiment configures the NS3 environment, uses the PyViz visualization tool to display network communication conditions among UAVs, and learns NS3 network simulation and communication quality visualization.
Experiment 5: NS3 Network Simulation UAV Control
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/4.NS3-Ctrl/Readme.pdf
📝 Experiment Overview: Configure the NS3 environment, set up network communication, generate control commands based on communication status, and implement joint control of UAV simulation and NS3 network simulation.
Experiment 6: UAV Networking Communication Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/1.NS3/uav/Readme.pdf
📝 Experiment Overview: This experiment uses the RflySim toolchain and NS3 simulation to implement status information forwarding, listening, and request mechanisms among multiple UAVs, verifying communication effectiveness in networking scenarios.
Experiment 7: UAV Networking Communication Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/2.NS3-Udp-PyQtViz/uav/Readme.pdf
📝 Experiment Overview: This experiment uses the RflySim toolchain and Python scripts to implement status information forwarding, listening, and request mechanisms among multiple UAVs in networking scenarios, verifying multi-UAV collaborative communication effectiveness.
Experiment 8: UAV Networking Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/3.NS3-PyViz/uav/Readme.pdf
📝 Experiment Overview: Using the RflySim toolchain and NS3 simulation, this experiment implements status forwarding, listening, and request mechanisms among multiple UAVs, verifying operational effectiveness in networking scenarios.
Experiment 9: UAV Formation Networking Communication Experiment
- 📦 Version Requirement:
Full Version - 📁 File Path: e2.NS3_UAVCommExps/4.NS3-Ctrl/uav/Readme.pdf
📝 Experiment Overview: Using the RflySim toolchain and NS3 simulation, this experiment implements formation flight for multiple UAVs, verifying the operational effectiveness of status forwarding, listening, and request mechanisms in networking scenarios.