Merged
Conversation
Phase 1 — New action definitions: - task_msgs/action/TakeoffTask.action — new - task_msgs/action/LandTask.action — new - task_msgs/action/FixedTrajectoryTask.action — goal updated to FixedTrajectory spec Phase 2 — New executables: - takeoff_landing_task.cpp — new takeoff_landing_task executable with TakeoffTask + LandTask action servers (precondition checks, reuses TakeoffTrajectory) - fixed_trajectory_task.cpp — new fixed_trajectory_task executable in trajectory_controller package (ports all 6 trajectory types from Python) - behavior/drone_safety_monitor/ — moved here, adds command topic (pause/resume/rewind) and auto-pause on state estimate timeout Phase 3 — Launch file updates: - local.launch.xml and local_droan_cpu.launch.xml — replaced old nodes with new action server nodes - behavior.launch.xml — replaced BT+BehaviorExecutive with just drone_safety_monitor - Interface bringup and px4_interface launch — removed drone_safety_monitor (now in behavior bringup) Phase 4 — Deleted: behavior_tree/, behavior_executive/, rqt_fixed_trajectory_generator/, interface/drone_safety_monitor/, both copies of fixed_trajectory_generator.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this pull request do?
Which issue number does this address? Discussion #308
Tasks in the task panel are all now connected. Takeoff landing planner is a task too.
Takeoff/landing added better logic. After landing it's now possible to take off again. Landing disarms the drone. Takeoff both arms and requests control.
Interactive waypoint markers for Navigate Task:

Polygon bounds region for Exploration/Coverage/Search tasks

Tasks have simple boolean variable logic to check whether they can execute. All tasks except takeoff require is_airborne to be true (can only execute tasks once flying). Only one task may execute at a time, must be cancelled before starting another task.
Removed RQT GUI from launching. Main GUI is now RViz until we do it better with FoxGlove.
How did you implement it?
Claude and me:)
Testing
How do you run the tests?
Do
airstack up. Use the RViz GUI to takeoff, navigate, and explore. Navigate requires placing waypoints with the waypoint tool (hit 1). Explore requires using the polygon tool to draw a polygon then fetching the points. Random walk logic does NOT respect the polygon right now though.What do the tests do?
Makes the drone perform the tasks.
What are the expected results of the tests?
Drone should move according to the plan.
Did you update the docs (and where)?
Yes, the READMEs in common/ros_packages/gui/rviz/rviz_tasks_panel/README.md and robot/ros_ws/src/local/planners/takeoff_landing_planner/README.md