WP3-26

From COMP4DRONES
Jump to navigation Jump to search

Droneport: An autonomous drone battery management system

ID WP3-26
Contributor UWB and SM
Levels Functional
Require Communication service to obtain data from the assigned drones and master controller
Provide Autonomous battery exchange and management for UAV
Input
  • MAVLink-based request for battery exchange
  • UAV mission
  • UAV battery status
Output Available battery resources
C4D building block Health management, Mission management
TRL 4
Contact osevera at ntis.zcu.cz

Description

Droneport (DP) is a system for autonomous drone battery management. It complies with a reference architecture, dealing with drone power management, more precisely, battery management. DP consists of a battery management unit for charging and storage, a robotic manipulator for an automatic battery exchange, a data link to the drone, telemetry data, and a human-machine interface (HMI) for remote command and control. Power and storage management building blocks are implemented in Droneport, with a datalink connection to the outside world. Users can use telemetry data via MAVLink protocol to monitor the state of the DP. The DP acts autonomously, it monitors the state of the batteries, controls the battery exchange and charging, provides necessary navigation information for drone landing, and broadcasts the status of the remaining batteries.

Droneport overview
Detail of the gripper
Droneport battery exchange

Contribution and Improvement

The Droneport aims to extend the UAV missions by autonomously changing the battery of the drones.

The main goal was to develop a drone Battery management architecture fulfilling a few fundamental objectives:

  • battery charging and swapping automatically
  • extending the UAV operational time from minutes to hours or more
  • MAVLink based data communication standards
  • compact and easy handling
  • reasonable purchasing/maintenance costs

The DP behaves as a standalone autonomous unit that is wirelessly interconnected with one or more UAVs. It is compatible with other C4D components. It uses an open MAVLink protocol with defined messages for communication and commands. The DP was developed as a part of Comp4Drones project from the scratch up to the technology readiness level 4 (TRL4). At the beginning of the project, there was only a notion of how to extend the operational time of UAV missions.

Design and Implementation

Droneport internal components and communication buses

The Droneport development is done together with SmartMotion company. DP is a unique device that is able to communicate with various UAVs. For better support of battery exchange, the DP contains a newly designed gripper and a special battery holder. Droneport hardware consists of:

  • Drone landing place with ArUco based landing markers
  • Uniquely designed robotic manipulator
  • Uniquely designed gripper
  • Battery management unit for charging and storage
  • Wireless communication to the UAVs
  • The whole device communicates wirelessly over MAVLink protocol with other devices in the network. The device is controlled using Linux based PC with REXYGEN as real-time control software.

Droneport SW architecture consists of:

  • Drone to DP communication protocol (defined MAVLink messages)
  • Drone landing assistant - vision navigation to ArUco markers
  • Battery exchange system control - manipulator controller
  • Charge control - communication interface between charges and battery slots
  • Battery management software
  • DP software provides an open API for interoperability with various drones flight controllers.

Droneport Traffic Control

The Droneport Traffic Control (DPTC) component provides a whole system for multiple drone battery management. It provides means for the orchestration of the drone fleets. Based on the monitoring and prediction of the drone battery states and the states of the batteries provided by the Droneport it plans the interruption and resumption of the drone missions. It also makes it possible to coordinate multiple Droneports and redistribute the battery replacement requests between available Droneports.

DPTC component currently includes three subcomponents. The first subcomponent is the Droneport Commander, which communicates with drones and Droneports. Droneport Commander receives the drone status (location, mission and mission progress information, speed, and battery information). It commands the drones to fly to the Droneport, initiates the battery swapping, and ensures a smooth mission follow-up. It sends commands to Droneport to change the drone's battery. The second subcomponent is the Droneport Trajectory Planner which plans the collision-free trajectory of the drone concerning battery discharge. The last subcomponent is the Droneport Orchestrator, which takes care of optimal scheduling of drone battery replacement concerning Droneport occupancy with minimum mission cost (in terms of distance, fuel, etc.).

Droneport Commander

Simplified chart of drone states

In the current version, Droneport Commander monitors the status of the drones and withdraws them to the Droneport as needed when the battery State of Charge (SoC) is low. Droneport Commander was tested in a simulated scenario with two drones, where each drone is assigned to its own Droneport. Two different missions were designed for testing in the simulation, in which the park and adjacent buildings are monitored.

Simulation
Map with simulated devices

DP Commander is implemented in Python and utilizes the pymavlink library to communicate with drones and the platform. A simple console user interface was designed using the Urwid library. The monitoring of the whole simulation includes QGroundControl (QGC) as a standard control center (the client-side), the simulation of the physical devices in Gazebo, and the previously mentioned DPTC interface. The console user interface contains information and commands for both drones, and it is easily adaptable for more drones.

Droneport Trajectory Planning

As part of the study for the Droneport Trajectory Planning subsystem, a non-collisional drone trajectory that is optimal in terms of battery State of Charge (SoC) was found for the demonstration. The trajectory planning problem was described as an Optimal Control Problem using the Chebyshev pseudospectral method.

For the Droneport system, it has not been necessary to consider collision avoidance yet, hence this part remains purely experimental. In the current state, the drone is sent directly to the Droneport coordinates. Possible collision avoidance can be performed by control systems at the drone level.

Droneport Orchestrator

Droneport Traffic Control has no ambition to organize the customer's flight missions themselves, but to provide services to maximize the flight time of drones. We consider static Droneports, the drone mission is given by the customer. The DPTC interrupts the mission at a convenient moment so that the drone battery is recharged, and the mission can continue.

In the scheduling of battery exchange the appropriate time to withdraw the drone is sought with the well-known A* algorithm (see example). According to predicted SoC and evaluated costs for flight to Droneport platforms, the optimal schedule is sought, which is composed of Drone ID, Droneport ID, and mission sequence ID. The prediction of discharge rate is acquired based on distances between mission waypoints, the drone’s velocity, maximum flight time, and initial SoC. The cost of battery replacement is determined by the predicted drone battery drain during its flight to the Droneport platform and back to the mission. The task is further limited by a fixed number of charged batteries in the Droneport platforms. The Orchestrator also performs a calculation of the expected flight time to the Droneport platform, based on which a time slot is entered into the schedule with a safe time reserve to avoid drone collisions near the DP platform. The Droneport Orchestrator passes the found solution to the Droneport Commander. The solution is found periodically by running the problem with updated data. Droneport Commander monitors the progress of the missions, sends commands to the drones according to the plan, and verifies that battery replacements are performed at specified intervals.

Simulation

At first, the Droneport can be used in the simulation environment. The software in the loop (SIL) simulation is suitable for designing various traffic scenarios, checking the necessary number of landing platforms, etc. More information about the simulation tools can be found in the tool repository WP6-09

Videos

You can see the video of the Droneport here:

Droneport basic principle

Droneport in action

Software Repository

References

[1] Severa, O., Bouček, Z., Neduchal, P., Bláha, L., Myslivec, T., & Flidr, M. (2022). Droneport: From Concept To Simulation. In System Engineering for constrained embedded systems (pp. 33-38). DOI:10.1145/3522784.3522800

[2] Bouček, Z., Neduchal, P., & Flídr, M. (2021, September). Droneport: Smart Drone Battery Management System. In International Conference on Interactive Collaborative Robotics (pp. 14-26). Springer, Cham. DOI:10.1007/978-3-030-87725-5_2

[3] Bláha, L., Severa, O., Barták, P., Myslivec, T., Jáger, A., & Reitinger, J. (2022, August). Droneport: From Concept To Prototype. In 2022 26th International Conference on Methods and Models in Automation and Robotics (MMAR) (pp. 134-139). IEEE. DOI:10.1109/MMAR55195.2022.9874309