Ego-Task-Manager (QueQiao) is a global task manager for robots designed to enhance the extensibility and global planning capabilities of the Ego-Planner local path planner. Currently, it is mainly used for the FastLab aerial autonomous robot platform at Zhejiang University to quickly generate waypoints. In addition, with the rapid development of drone-related technologies such as trajectory planning, circling, return-to-home, SLAM, and target tracking in recent years, this project aims to provide a bridging platform for these projects and a user-friendly upper computer.
- Quickly generate waypoints that can be read by Ego-Planner
- Generate circling trajectories: generate circling waypoints through rotation matrices and circle-cutting methods
- Waypoint simulator: quickly calibrate global trajectories through the simulator and automatically generate waypoints.
Ego-Task-Manager
|-waypoint_generater.py # Simulator
|-hover.py # Circling trajectory generator, including rotation matrices and circle-cutting functions
|-outputFormater.py # Generates waypoints that can be read by Ego-planner and provides them to ROS
Output # Output
|-finalWaypoints.txt # Waypoints readable by Ego-planner
|-fixedPointsTemplet.txt # Template for Ego-planner
|-wayPoints.txt # Waypoints generated by the upper computer
- Rospy for communication with the ROS server
- Turtle for writing the simulator and connecting plugin functions
- Currently, path planning and obstacle avoidance use EgoPlanner, SLAM uses Vins-mono. It's necessary to study these in advance, and the underlying executor is px4 flight control.
- Run waypoint_generater.py to automatically open the simulator.
- Mouse click: Fly to the designated location. Press "C": Circle around a point 60 units from the current facing direction. Press "H": Return to the starting point. Press "E": Circle and return home.
- After planning the trajectory, press Q to exit and automatically save the waypoints in ./output/waypoint.txt.
- Run outputFormater to convert the waypoints into a format readable by Ego-planner and output them to ./final_waypoints.txt.
- Copy the waypoints to the waypoint section of single-run-in-sim.launch under Ego-planner through remote connection and start the Ego-planner simulator.
- Write a ROS adapter to add a bidirectional data chain for ROS, enabling direct real-time communication with the drone without the need for copying.
- Add a plugin extension manager and write a voice control plugin driven by a large language model.
- Separate related setting parameters into a JSON or YAML parameter file.
This project is free software released under the MIT license.