A drone control and telemetry wireless communication system and method
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- YANGZHOU UNIV
- Filing Date
- 2026-06-03
- Publication Date
- 2026-08-04
AI Technical Summary
[0007]因此,亟需一种技术方案以解决现有技术中通信距离受限、链路稳定性不足、异常恢复能力差和系统维护困难等问题
[0027] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: (1) It utilizes the Quectel EC20 module to access the operator's 4G network, realizing long-distance and cross-regional transmission of UAV wireless control and telemetry links; (2) Combined with the Ubuntu operating system, it realizes functions such as module detection, APN configuration, dialing management, and automatic reconnection, improving the stability and reliability of UAV communication; (3) It is compatible with the ICF5 flight controller, realizing reliable transmission of control commands and telemetry data; (4) It improves flight safety in the event of link interruption through heartbeat mechanism, reconnection mechanism and safe mode triggering mechanism; (5) It improves system maintainability and upgradeability through systemd guardian, SSH maintenance and log recording mechanism; (6) The control link has a smaller burden, which is more conducive to maintaining control stability in bandwidth-limited or fluctuating environments.
Smart Images

Figure CN122513745A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a drone communication and flight control technology, and more particularly to a drone control and telemetry wireless communication system and method based on the Ubuntu operating system and a 4G cellular communication module. Background Technology
[0002] Unmanned aerial vehicles (UAVs) are widely used in fields such as inspection, surveying, security, agriculture, and emergency rescue. As UAV applications gradually shift from close-range visual control to long-range, cross-regional, and semi-autonomous operations, higher demands are being placed on their wireless communication systems. Existing UAV control and telemetry communication methods mainly include traditional remote control links, data transmission radio links, and cellular network-based links.
[0003] Traditional remote control or data transmission links typically operate in frequency bands such as 2.4GHz, 433MHz, and 915MHz. While they can achieve control and status feedback over a certain distance in open environments, these solutions are generally dependent on line-of-sight conditions and are easily affected by building obstructions, terrain barriers, and co-channel interference. As the drone's flight distance increases and the scene becomes more complex, communication quality deteriorates significantly, even leading to control link interruptions. Furthermore, traditional links generally have limited communication bandwidth and insufficient protocol flexibility, making efficient integration with existing internet platforms, cloud-based dispatch platforms, and remote ground stations difficult.
[0004] With the development of cellular mobile communication networks, applying 4G modules to drone communication has become a feasible solution. Accessing the internet via 4G networks can overcome the distance limitations of traditional point-to-point wireless links, enabling long-distance communication across regions. However, many existing drone solutions based on 4G modules simply connect the cellular module to a microcontroller or host computer, which presents the following problems:
[0005] It lacks operating system-level network management capabilities, and its dialing, reconnection, and link monitoring functions are incomplete; control commands and telemetry data lack dedicated reliability design, making them prone to delays or loss during link jitter; it lacks adaptation mechanisms for specific flight controllers, hindering engineering applications; it cannot quickly trigger flight control safety policies in the event of network anomalies, posing flight safety risks; and it lacks daemon processes, logging, remote maintenance, and upgrade capabilities, making it unsuitable for large-scale deployment.
[0006] The Ubuntu operating system, with its mature and stable Linux network protocol stack, comprehensive serial and USB driver support, rich software development environment, systemd service management mechanism, and reliable logging and remote maintenance capabilities, is suitable as an onboard communication and computing platform for UAVs. Quectel EC20 is a mature 4G LTE communication module with good network compatibility and engineering usability. The ICF5 flight controller has a certain application foundation in industrial-grade UAVs. If a UAV control and telemetry wireless communication system based on Ubuntu, adapted to the ICF5 flight controller, and combined with the Quectel EC20 module can be established, the reliability, maintainability, and engineering deployment efficiency of the UAV remote control link can be improved.
[0007] Therefore, there is an urgent need for a technical solution to address the problems of limited communication distance, insufficient link stability, poor anomaly recovery capability, and difficult system maintenance in existing technologies. Summary of the Invention
[0008] Purpose of the invention: The purpose of this invention is to provide a wireless communication system for UAV control and telemetry that enables long-distance transmission of control commands and telemetry data back between a UAV equipped with an ICF5 flight controller and a ground control terminal. Another purpose of this invention is to provide a method for applying this system.
[0009] Technical Solution: The present invention discloses a wireless communication system for UAV control and telemetry, comprising a communication processing unit running an Ubuntu operating system, an ICF5 flight controller, and a Quectel EC20 cellular communication module. The communication processing unit is connected to both the ICF5 flight controller and the Quectel EC20 cellular communication module, acquiring UAV telemetry data and sending control commands through an interface with the ICF5 flight controller. The Quectel EC20 cellular communication module accesses a 4G network and establishes a control and telemetry data communication link with a ground control station. The Ubuntu operating system runs a communication service program to receive, verify, forward, and confirm control commands, collect, encapsulate, and send telemetry data, monitor the telemetry data communication link, and send a safety mode command to the ICF5 flight controller when the telemetry data communication link is abnormal.
[0010] The communication processing unit is connected to the ICF5 flight controller via at least one interface, such as a serial port, CAN bus, or Ethernet, and to the Quectel EC20 cellular communication module via a USB interface.
[0011] The communication service program is deployed on the Ubuntu operating system, and the deployment modules include a flight control communication module, a 4G access management module, a control command processing module, a telemetry transmission module, a link monitoring module, and a log and protection module.
[0012] The communication service program is managed and protected by systemd in the Ubuntu operating system. It automatically restarts when it exits abnormally and records the flight controller connection status, 4G connection status, control command processing results, and link abnormal events through the system log.
[0013] The 4G access management module is configured to perform module detection, APN configuration, data connection establishment, network status detection, and abnormal reconnection on the Quectel EC20 cellular communication module.
[0014] The control command processing module receives control command data packets from the ground control station and performs validity checks, duplicate checks, and expiration checks on the control command data packets. After the checks pass, the control command is forwarded to the ICF5 flight controller for execution. The control command data packet includes device identifier, command type, parameters, timestamp, serial number, and verification field.
[0015] The telemetry transmission module encapsulates at least one of the attitude, position, altitude, speed, battery status, flight mode, and fault status output by the ICF5 flight controller and sends it to the ground control station according to a fixed period or event triggering method.
[0016] The link monitoring module monitors the telemetry data communication link status through a heartbeat mechanism. When a preset number of consecutive heartbeat responses are not received, the telemetry data communication link is determined to be abnormal. When the telemetry data communication link is determined to be abnormal, the communication processing unit sends at least one safety mode command among hovering, return to home, or automatic landing to the ICF5 flight controller and executes the reconnection process of the Quectel EC20 cellular communication module.
[0017] The present invention provides a wireless communication method for unmanned aerial vehicle (UAV) control and telemetry, comprising:
[0018] (1) Start the communication processing unit that runs the Ubuntu operating system;
[0019] (2) Initialize the Quectel EC20 cellular communication module and access the 4G network through it;
[0020] (3) Establish a local communication connection between the communication processing unit and the ICF5 flight controller;
[0021] (4) Establish a remote control and telemetry data communication link;
[0022] (5) Receive control commands from the ground control station, verify, deduplicate and confirm the control commands and then forward them to the ICF5 flight controller;
[0023] (6) Collect the telemetry data output by the ICF5 flight controller and send it to the ground control station;
[0024] (7) Monitor the status of telemetry data communication links through a heartbeat mechanism;
[0025] (8) When the telemetry data communication link is detected to be abnormal and the preset conditions are met, a safety mode command is sent to the ICF5 flight controller and the telemetry data communication link is reconnected.
[0026] (9) Continue to perform control and communicate with telemetry data after the telemetry data communication link is restored.
[0027] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: (1) It utilizes the Quectel EC20 module to access the operator's 4G network, realizing long-distance and cross-regional transmission of UAV wireless control and telemetry links; (2) Combined with the Ubuntu operating system, it realizes functions such as module detection, APN configuration, dialing management, and automatic reconnection, improving the stability and reliability of UAV communication; (3) It is compatible with the ICF5 flight controller, realizing reliable transmission of control commands and telemetry data; (4) It improves flight safety in the event of link interruption through heartbeat mechanism, reconnection mechanism and safe mode triggering mechanism; (5) It improves system maintainability and upgradeability through systemd guardian, SSH maintenance and log recording mechanism; (6) The control link has a smaller burden, which is more conducive to maintaining control stability in bandwidth-limited or fluctuating environments. Attached Figure Description
[0028] Figure 1 This is a system structure diagram of the present invention;
[0029] Figure 2 This is a diagram of the airborne hardware structure of the present invention;
[0030] Figure 3 This is a diagram of the communication software architecture based on the Ubuntu operating system of the present invention;
[0031] Figure 4 This is a flowchart of the control and telemetry communication process of the present invention;
[0032] Figure 5 This is a diagram of the AT dialing input method of the present invention;
[0033] Figure 6 This is a diagram of the AT dialing output of the present invention;
[0034] Figure 7 This is a diagram of the AT dial-up networking data of the present invention;
[0035] Figure 8 This is a ground station receiving diagram for the present invention. Detailed Implementation
[0036] The technical solution of the present invention will be further described below with reference to the accompanying drawings.
[0037] This implementation provides a wireless communication method and system for UAV control and telemetry based on the Ubuntu operating system and Quectel EC20 cellular communication module. The specific steps of the method are as follows:
[0038] (1) Start the airborne communication processing unit and load the Ubuntu operating system.
[0039] The first step is the power-on and startup process of the airborne communication processing unit. After the UAV is powered on, the airborne communication processing unit, which serves as an embedded computing platform, starts up and is guided into the Ubuntu operating system initialization process by the bootloader. The Ubuntu operating system relies on the systemd component to complete the deployment of basic services and simultaneously loads the Quectel EC20 module hardware driver. The system log records the startup status and initialization results. Throughout the process, the power management module continuously provides a stable power supply. (See the overall system structure diagram for reference.) Figure 1 This includes the interconnection between the airborne terminal, the ground terminal, and the operator's 4G network. The airborne terminal includes a communication processing unit (running the Ubuntu operating system), an ICF5 flight controller, a Quectel EC20 module, and a power management module. The airborne terminal and the ground terminal establish a long-distance communication link through the operator's 4G network. The input relationship is: the ground terminal sends commands to the airborne terminal, and the operator network relays the data. The output relationship is: the airborne terminal transmits telemetry data back to the ground terminal, and the status information is updated to the control terminal through the network.
[0040] After the Ubuntu operating system loads, it will run the entire communication service program. The software is divided into multiple independent functional modules and relies on the system to complete scheduling and integration. For the relevant software layer operation logic, please refer to [link / reference]. Figure 3 The communication software architecture diagram based on the Ubuntu system covers a flight control communication module, a 4G access management module, a control command processing module, a telemetry transmission module, a link monitoring module, a log and protection module, and a security policy triggering module. Among them, the flight control communication module collects telemetry data output by the ICF5 flight controller, the control command processing module receives flight commands issued by the ground, the 4G access management module configures and manages the network status of the Quectel EC20 module, the data exchange between the modules realizes the UAV control and telemetry functions, the telemetry transmission module encapsulates the UAV status data and sends it to the ground, and the security policy triggering module instructs the flight controller to execute safety commands when the link is abnormal.
[0041] (2) Initialize the Quectel EC20 module on the Ubuntu system, and complete module identification, APN configuration and 4G network access.
[0042] The Ubuntu system detects and identifies the Quectel EC20 cellular communication module via the USB interface (this is accomplished by the system loading the USB driver). The system starts the preset initialization script in the communication service program, checks whether the EC20 module is connected normally. If the module is not connected or its status is abnormal, it logs and attempts to reinitialize. It checks the SIM card status, completes the APN configuration, including entering the APN name provided by the operator, starts the 4G network data connection using a PPP dialing tool or QMI tool, verifies the network connection status, and checks the connection quality with the ground station server by sending test data packets. After completing the above steps, the module is marked as successfully initialized, and detailed success information is recorded in the log.
[0043] The airborne hardware structure block diagram is as follows: Figure 2 As shown, the communication processing unit is connected to the ICF5 flight controller via a serial port (UART), and to the Quectel EC20 module via a USB interface. The power management module supplies power to the communication processing unit, flight controller, and cellular communication module. The input relationship is as follows: the power management module provides stable voltage to each hardware functional module, the ICF5 flight controller receives control commands, and the Quectel EC20 module receives network information from the ground. The output relationship is as follows: the ICF5 flight controller outputs UAV attitude data, and the airborne communication processing unit outputs telemetry data to the ground.
[0044] Figure 5 and Figure 6 This shows the dialing initialization input and output process of Quectel EC20. Figure 5 The AT dialing input diagram specifies the set of input commands that the Quectel EC20 module will use to perform dialing. AT commands are used to complete module status detection, SIM card detection, APN settings, etc. The dialing initialization parameters are specified, and the module completes the dialing preparation status update. Figure 6 This is the output diagram for AT dialing. After a successful dialing, the module responds and provides status feedback. The module executes the internal dialing process and displays the status of the network connection established, including information such as IP address allocation.
[0045] (3) The communication service program is started and a local communication connection with the ICF5 flight controller is established.
[0046] The communication service program starts automatically through the systemd service management tool of the Ubuntu system. The flight control communication module of the communication service program is initialized, the communication port of the ICF5 flight controller is opened through the serial port, a data communication connection is established with the ICF5 flight controller according to the preset baud rate, the flight controller communication connectivity is tested, and the status data output by the ICF5, such as attitude, speed or GPS information, is attempted to be read. If successful, the service running status is updated to "normal" and the communication log with the flight controller is started. If the flight controller connection fails, the error log is recorded and the process of retrying the connection is initiated. Figure 2 As can be seen, the communication processing unit is connected to the ICF5 flight controller via a serial port. Figure 3 The information flow of the flight control communication module is shown in the structural diagram of the communication module.
[0047] (4) The communication service program establishes a remote control and telemetry data link with the ground control station through the 4G network.
[0048] The communication service program establishes a transparent data channel through the 4G network based on the preset ground station IP address and port number. It creates network sockets using TCP or UDP protocols, with TCP being preferred to ensure data reliability. Alternatively, it combines UDP with a heartbeat data sending mechanism to test network connectivity to the ground station (by sending heartbeat commands). When the network connection is normal, it records the timestamp of the successful connection, the remote IP address, and the connection status. If the connection fails, it executes an automatic reconnection mechanism and records the connection retry information in the system log. Figure 4 This flowchart illustrates the control and telemetry communication process, demonstrating the logical interaction between the airborne communication processing unit and the ground station. First, the communication service program is started and initialized. Next, communication is established with the flight controller, and telemetry data is periodically read. Then, a communication link is established with the ground control station. Finally, commands are received and verified to ensure reliability. The input relationship is: control commands sent from the ground station, and telemetry data periodically transmitted by the ICF5 flight controller. The output relationship is: processed telemetry data sent to the ground station, and confirmation of control command execution fed back to the ground station.
[0049] (5) The ground control station sends control commands. After receiving the commands, the airborne communication service program verifies, deduplicates, confirms, and forwards them, and then sends them to the ICF5 flight controller for execution.
[0050] The control commands sent by the ground station contain important information such as device identifier, command type, timestamp, and verification fields. The communication service program receives the command packets via socket and verifies the commands according to the following steps: verifying the correctness of the command packet format and length, verifying the validity of the verification fields, determining whether the device identifier matches the airborne terminal, determining whether the timestamp has expired, and determining whether the serial number is duplicated. After successful verification, the control command is translated into a protocol format recognizable by the ICF5 flight controller and sent to the flight controller via serial port. The confirmation acknowledgment after execution is sent back to the ground station by the communication service program. The detailed logic of control command verification, deduplication, and execution is shown in the figure below. Figure 4 As shown.
[0051] Ground station reception diagram as shown Figure 8As shown, this display shows the UAV telemetry data received by the ground control station and the feedback of control command execution results, including the UAV's real-time operating status and control command execution feedback data. The UAV's real-time status information includes location information, flight mode, battery level, etc., and displays link status (e.g., heartbeat latency, online status). The input relationship is: telemetry data sent by the airborne terminal, and control execution confirmation returned by the airborne terminal; the output relationship is: the ground station control interface displays the UAV's current status information, and the log records anomalies and key events during the communication process.
[0052] (6) The ICF5 flight controller periodically outputs telemetry data, which is collected, encapsulated, and sent to the ground control station via a 4G link by the airborne communication service program.
[0053] The flight control communication module in the communication service program reads telemetry data from the ICF5 flight controller at fixed intervals. This telemetry data includes attitude angles, GPS latitude and longitude, altitude, speed, battery status, and alarm information. The collected telemetry data is encapsulated into telemetry packets, timestamped, and sequenced, then sent to the ground station via socket. The ground station parses and displays the received telemetry data. The periodic acquisition and transmission process of telemetry data is as follows: Figure 4 As shown, this displays the ground station's reception and display of telemetry data. Figure 8 As shown.
[0054] (7) The communication service program periodically sends heartbeat packets and checks the link status.
[0055] The communication service program sends heartbeat packets to the ground station at fixed time intervals (e.g., 1 second). The heartbeat packets are simple, containing the onboard device ID, timestamp, and a verification field. If a heartbeat response times out or is not received, link anomaly information is recorded. The latency of heartbeat returns is statistically analyzed to assess the current network communication quality. A link detection diagram is shown below. Figure 7 The diagram shown illustrates the AT dial-up network data, illustrating the heartbeat packet sending and response process, and testing the network connection status between the Quectel EC20 module and the server. The input relationship is: AT commands attempt to establish a data connection; the output relationship is: returning the detection results, including communication stability and data transmission status.
[0056] (8) When a link anomaly is detected and the preset conditions are met, the communication service program sends a safety policy instruction to the ICF5 flight controller and performs a 4G link reconnection.
[0057] The link monitoring module determines whether the number of unresponsive heartbeats has reached a specified threshold. If a link anomaly is confirmed, the communication service program sends safety control commands (such as hovering, return to home, or landing) to the ICF5 flight controller, initiating the automatic reconnection mechanism of the 4G network and reinitializing the Quectel EC20 module. During the link reconnection process, the system log records each reconnection status for traceability. Figure 6 The AT dialing output diagram shows the reconnection dialing process.
[0058] (9) Continue control and telemetry communication after the link is restored.
[0059] After confirming the link has been restored via heartbeat, the communication service program immediately sends an online status message to the ground station, resuming command issuance and telemetry transmission with the ground station, confirming the UAV's flight safety status, and adjusting subsequent actions based on ground station instructions if a return-to-home or hovering operation was performed during the link anomaly. Figure 4 The flowchart illustrates the communication recovery process after the link is restored.
[0060] This method is applied to an unmanned aerial vehicle (UAV) control and telemetry wireless communication system, which includes:
[0061] Airborne components: ICF5 flight controller; communication processing unit running Ubuntu operating system; Quectel EC20 4G cellular communication module; power management module.
[0062] Ground end: Ground control station; network access equipment.
[0063] The communication processing unit connects to both the ICF5 flight controller and the Quectel EC20 module, and is used to complete flight control data acquisition, control command forwarding, network access management, link monitoring, anomaly recovery, and safety policy triggering. The communication processing unit accesses the operator's 4G network through the Quectel EC20 module and establishes a control and telemetry data communication link with the ground control station.
[0064] Airborne architecture: Sensor data fusion and flight mode management, connected to the communication processing unit via at least one interface selected from serial port, CAN bus, or Ethernet. The ICF5 flight controller can output at least one or more of the following telemetry data: attitude information; latitude and longitude position information; altitude information; speed information; flight mode information; satellite positioning status; battery voltage, current, and remaining power; warning or fault status information. The ICF5 flight controller can receive control commands from the communication processing unit, including at least one or more of the following: unlock / lock commands; takeoff commands; landing commands; return-to-home commands; flight mode switching commands; waypoint mission upload commands; hovering commands; emergency response commands.
[0065] Communication Processing Unit: The communication processing unit includes at least a processor, memory, serial port interface, USB interface, and power input interface. The communication processing unit runs a communication service program on the Ubuntu system, performing the following functions: communicating with the ICF5 flight controller via serial port or other interfaces; communicating with the Quectel EC20 module via USB interface; calling Ubuntu network management functions to complete 4G access; establishing a data communication connection with the ground control station; receiving, verifying, forwarding, and confirming the execution of control commands; collecting, encapsulating, sending, and retransmitting telemetry data; monitoring 4G link latency, packet loss, and connection status; triggering a safe mode when the link is abnormal; running as a systemd service; and recording operation logs and link logs.
[0066] Quectel EC20 cellular communication module: used for accessing operator 4G LTE networks. The communication processing unit uses drivers, dial-up tools, and network management components in Ubuntu to identify, dial, configure APNs, automatically reconnect, and configure interface routing for the Quectel EC20 module. The Quectel EC20 module provides the communication processing unit with public or private network IP data connectivity, enabling remote data interaction between the airborne unit and the ground control station.
[0067] Power Management Module: Provides stable operating power to the ICF5 flight controller, communication processing unit, and Quectel EC20 module. The power management module can also provide voltage and current detection information to the flight controller or communication processing unit as part of the telemetry data transmitted to the ground.
[0068] Ground-based architecture: This architecture runs the ground control software, generates control commands, receives telemetry information, and displays the UAV's status. The ground control station can be a PC, laptop, industrial tablet, server terminal, or dedicated ground station equipment. The ground control software has at least one of the following functions: displaying the UAV's position, attitude, altitude, speed, and battery status; sending control commands such as takeoff, landing, return to home, unlocking, and mode switching; uploading waypoint tasks and parameter settings; recording communication logs and telemetry records; and displaying link latency, packet loss rate, and online status.
[0069] Network access devices can be 4G routers, wired broadband, Wi-Fi access devices, or private network access terminals, used to enable ground control stations to access the Internet or private networks.
[0070] Communication implementation scheme in Ubuntu environment: Run the Ubuntu operating system and run the communication service program within the operating system environment. The communication service program is preferably run as a daemon process and managed by systemd.
[0071] Flight control communication module: This module accesses the serial port device connected to the ICF5 flight controller via the Ubuntu serial port driver and interacts with the ICF5 according to the preset flight control communication protocol. This module periodically reads flight control telemetry data and translates control commands issued from the ground into protocol messages recognizable by the ICF5 before sending them to the flight controller.
[0072] 4G Access Management Module: Detects whether the EC20 module is online; configures APN parameters; initiates dialing or network interface; detects network interface status; automatically restarts network connection or reinitializes EC20 module when link is abnormal.
[0073] Control and telemetry communication module: This module establishes control and telemetry data links in Ubuntu via a socket interface. Preferably, the control and telemetry uses one of the following mechanisms: UDP with application layer sequence numbers, checksums, and acknowledgments; TCP long connection mechanism; UDP, heartbeat keep-alive, and critical command retransmission mechanism.
[0074] Link monitoring module: This module uses the Ubuntu system time interface, socket status information, and network interface statistics to monitor link status. Monitoring content includes: heartbeat round-trip time; number of consecutive timeouts; number of send and receive failures; interface online status; and 4G dial-up status.
[0075] Safety policy triggering module: When the link monitoring module determines that the communication link is interrupted, the abnormal delay is too large, or the continuous timeout exceeds the threshold, the safety policy triggering module sends a safety control command to the ICF5 flight controller. The safety control command is preferably one or more of the following: hovering; automatic return to home; automatic landing.
[0076] Logs and Maintenance Module: This module utilizes Ubuntu's logging mechanism to record: system startup logs; flight controller connection logs; 4G module dialing logs; communication error logs; heartbeat latency logs; and control command issuance and confirmation logs. This module also supports remote maintenance via SSH, facilitating configuration and software version updates.
[0077] The specific implementation includes:
[0078] Hardware Components: The UAV utilizes a quadcopter platform. Its onboard communication and control system includes: one ICF5 flight controller; one embedded computing platform, serving as the communication processing unit and running Ubuntu 20.04; one Quectel EC20 4G module, connected to the embedded computing platform via USB; one power management module; and one external 4G antenna. The ICF5 flight controller connects to the communication processing unit via a UART serial port. The Quectel EC20 connects to the communication processing unit via a USB interface. The power management module converts the onboard battery output to a stable voltage required by the ICF5, communication processing unit, and EC20 module.
[0079] Ubuntu System Deployment: Install the Ubuntu 20.04 Server system in the communication processing unit, pre-installed with the following software or functional components: serial communication library; QMI / PPP dial-up tool; NetworkManager or custom network script; systemd service management; SSH remote access service; log collection and storage tool. After Ubuntu boots, it automatically loads the USB driver and identifies the EC20 module's relevant device nodes and network interfaces. Then, it executes the EC20 network initialization script, including detecting the module's online status; reading the SIM card status; configuring the APN; establishing a data connection; and combining... Figure 7 Test connectivity with the server or ground station.
[0080] Communication service program: Deploy a communication service program named in Ubuntu and register it as a systemd service.
[0081] Flight control communication thread: Opens the ICF5 flight control communication port via serial port and communicates with the flight controller at a preset baud rate. Periodically reads the status data output by the ICF5 and parses it to obtain: attitude angle; GPS positioning information; altitude; heading; flight mode; battery status; and alarm status. Simultaneously, it receives control requests from the control command thread, encapsulates them into control protocol frames recognizable by the ICF5, and sends them.
[0082] Control command processing thread: Receives control command data packets sent by the ground control station via UDP or TCP sockets. Each control command data packet preferably includes: device ID; command type; parameter area; timestamp; sequence number; and checksum field. Figure 4 The thread processes the command as follows: verifies the data format and checksum; determines if the target device ID matches; determines if the timestamp has expired; determines if the serial number is duplicated; if valid, submits it to the flight control communication thread; generates an execution confirmation response and sends it back to the ground station.
[0083] Telemetry transmission thread: At fixed intervals, such as 5Hz, 10Hz, or 20Hz, it retrieves the latest telemetry data from the flight control communication thread, encapsulates it into telemetry data packets, and sends them to the ground control station. The telemetry packet may contain: UAV ID; timestamp; longitude and latitude; altitude; speed; attitude; battery level; flight mode; and communication status.
[0084] Link monitoring thread: This thread sends heartbeat packets to the ground control station at set intervals and waits for heartbeat confirmation. If no confirmation is received multiple times consecutively, the link is considered abnormal. Simultaneously, this thread also reads the Ubuntu network interface status information to determine if the EC20 network interface is offline. If an anomaly is detected, the following actions are taken: log the changes; notify the control command thread to suspend receiving new, non-essential commands; send a return-to-home or hover command to the flight controller; and execute the EC20 network reconnection procedure.
[0085] Logs and daemons module: Uses the systemd daemon to record events such as program startup, control commands, abnormal disconnection, and successful reconnection in the Ubuntu logging system.
[0086] Ground control station: Establishes a connection with the UAV's onboard terminal via the internet. Ground control software sends control commands to the UAV and receives telemetry data. According to... Figure 8 The displayed content should include at least: drone online status; current location; attitude information; battery voltage and charge; flight mode; heartbeat latency; and alarm information.
[0087] Operation process: Combining Figure 3 First, the drone is powered on and the Ubuntu system starts; uav_ctrl_linkd is automatically started by systemd; the program detects the EC20 module status and completes 4G network connection; the program opens the serial port connection with the ICF5 flight controller; the program registers its online status with the ground control station; the ground station can issue control commands such as unlock, take-off, and return to home; the airborne terminal executes the control commands and sends back confirmation; at the same time, it continuously sends telemetry data; if the 4G link is abnormal, the program triggers the ICF5 to enter return to home or hover; when the 4G is restored, the communication connection with the ground station is re-established.
[0088] In summary, by leveraging the mature and robust Linux network protocol stack of the Ubuntu operating system to enhance network management capabilities, including dialing, reconnection, and link monitoring, the reliability and stability of UAV communication are improved. Dedicated reliability design is implemented for control commands and telemetry data, reducing latency or loss during link jitter. Verification and heartbeat monitoring mechanisms ensure the continuity and stability of the communication link. In the event of network anomalies, flight control safety mode commands (hovering, return to home, or landing) are automatically triggered, improving flight safety. Ubuntu's systemd service management mechanism is used for protection and automatic restart, recording system logs for remote maintenance and upgrades, improving system maintainability. Furthermore, it is adapted to the ICF5 flight controller and combined with the Quectel EC20 cellular communication module to form a complete engineering-ready solution, enabling remote control command transmission and telemetry data feedback.
Claims
1. A wireless communication system for unmanned aerial vehicle (UAV) control and telemetry, characterized in that, The system includes a communication processing unit running the Ubuntu operating system, an ICF5 flight controller, and a Quectel EC20 cellular communication module. The communication processing unit is connected to both the ICF5 flight controller and the Quectel EC20 cellular communication module, acquiring UAV telemetry data and sending control commands through the interface with the ICF5 flight controller. The Quectel EC20 cellular communication module accesses a 4G network and establishes a control and telemetry data communication link with the ground control station. The Ubuntu operating system runs a communication service program to receive, verify, forward, and confirm control commands, collect, encapsulate, and send telemetry data, monitor the telemetry data communication link, and send a safety mode command to the ICF5 flight controller when the telemetry data communication link is abnormal.
2. The UAV control and telemetry wireless communication system according to claim 1, characterized in that, The communication processing unit is connected to the ICF5 flight controller via at least one interface, such as a serial port, CAN bus, or Ethernet, and is connected to the Quectel EC20 cellular communication module via a USB interface.
3. The UAV control and telemetry wireless communication system according to claim 1, characterized in that, The communication service program is deployed on the Ubuntu operating system, and the deployment modules include a flight control communication module, a 4G access management module, a control command processing module, a telemetry transmission module, a link monitoring module, and a log and protection module.
4. The UAV control and telemetry wireless communication system according to claim 3, characterized in that, The communication service program is managed and protected by systemd in the Ubuntu operating system. It automatically restarts when it exits abnormally and records the flight controller connection status, 4G connection status, control command processing results, and link abnormal events through the system log.
5. The unmanned aerial vehicle (UAV) control and telemetry wireless communication system according to claim 3, characterized in that, The 4G access management module is configured to perform module detection, APN configuration, data connection establishment, network status detection, and abnormal reconnection on the Quectel EC20 cellular communication module.
6. The UAV control and telemetry wireless communication system according to claim 3, characterized in that, The control command processing module receives control command data packets from the ground control station and performs validity checks, duplicate checks, and expiration checks on the control command data packets. After the checks pass, the control command is forwarded to the ICF5 flight controller for execution. The control command data packet includes device identifier, command type, parameters, timestamp, serial number, and verification field.
7. The UAV control and telemetry wireless communication system according to claim 3, characterized in that, The telemetry transmission module encapsulates at least one of the attitude, position, altitude, speed, battery status, flight mode, and fault status output by the ICF5 flight controller and sends it to the ground control station according to a fixed period or event triggering method.
8. The unmanned aerial vehicle (UAV) control and telemetry wireless communication system according to claim 3, characterized in that, The link monitoring module monitors the status of the telemetry data communication link through a heartbeat mechanism. When a preset number of consecutive heartbeat responses are not received, the telemetry data communication link is determined to be abnormal.
9. The unmanned aerial vehicle (UAV) control and telemetry wireless communication system according to claim 8, characterized in that, When the telemetry data communication link is determined to be abnormal, the communication processing unit sends at least one safety mode command among hovering, return to home, or automatic landing to the ICF5 flight controller and executes the reconnection process of the Quectel EC20 cellular communication module.
10. A wireless communication method for unmanned aerial vehicle (UAV) control and telemetry, characterized in that, include: (1) Start the communication processing unit that runs the Ubuntu operating system; (2) Initialize the Quectel EC20 cellular communication module and access the 4G network through it; (3) Establish a local communication connection between the communication processing unit and the ICF5 flight controller; (4) Establish a remote control and telemetry data communication link; (5) Receive control commands from the ground control station, verify, deduplicate and confirm the control commands and then forward them to the ICF5 flight controller; (6) Collect the telemetry data output by the ICF5 flight controller and send it to the ground control station; (7) Monitor the status of telemetry data communication links through a heartbeat mechanism; (8) When the telemetry data communication link is detected to be abnormal and the preset conditions are met, a safety mode command is sent to the ICF5 flight controller and the telemetry data communication link is reconnected. (9) Continue to perform control and communicate with telemetry data after the telemetry data communication link is restored.