anafi_mission_planning's People
anafi_mission_planning's Issues
Action-usage in search fails
Cleanup required
Searched fucked? Always centered around origin
Track for helipad
PDDL did not like to track helipad within the same tracking function.
Use another tracking-function specifically for the helipad?
Replanning with the same goals
Must be able to replan with the same goals, and not just when the state of the fsm changes.
If an action is cancelled when an action server is running, the action will continue to run
Actions are not properly cancelled
Search does not register that it has finished when person detected
Fuck!!!!!!!!!!!!!!!!!!!!!!!!!!
Olympe messages
Currently, the olympe-messages are included in the anafi_uav_interface / anafi_uav_msgs in the ros1-bridge. May want to:
- split into separate packages
- add more messages taylored for our use case
- delete some messages left over from M.F.
Emergency during rescue will abort rescue
@simenallum Any thoughts on this problem? Currently there is no selection of emergency priority. Could either continue the rescue and potentially lose the drone, but possible save a life, or it could abort the rescue and potentially save the drone, but possible lose someone's life
Split land action into track and land
Bug in pddl regarding tracking
Bugs:
-
executor crashes with message "[plansys2_node-1] ===> [(tracking d1 h1)] [plansys2_node-1] plansys2_node: /home/killah/colcon_ws/src/ros2_planning_system/plansys2_executor/src/plansys2_executor/BTBuilder.cpp:521: plansys2::Graph::Ptr plansys2::BTBuilder::get_graph(const Plan&): Assertion `at_start_requirements.empty()' failed."
-
tracking incorrect for drop and land-actions, which must run after tracking and not during
Use a file for position of people
Concurrent read/write can create race-conditions
Be careful!
Remove duplication of code between drop_marker and drop_lifevest
Tried to avoid duplicating the code (see branches), but linker-problems, so I "gave up".
TODO
Theory: Plansys2 can only support one goal at a time
Testing shows that Plansys2 struggles with multiple goals. As such, using the for-loop for setting goals iteratively may be wrong, as the last goal may overwrite the previous ones.
Possible solution for setting goals: Use a simple for-loop for appending goals to a string, and set said goals via the problem-expert
Possible problem: If the theory is correct, the save_remaining_goal-function is wrong!
on_deactivate() must ensure the drone is in stable state (likely hovering...)
Goals are never cleared!
A goal is never cleared when the state machine transitions into another state
Move implementation of actions into own package
Currently, the implementations are inside the nodes that are called by the executor. This forces some hacky code, and reduces the node-frequency. It would be better to implement the actions as their own package, using ros2-actions to start/stop the functions
Modify land to use track-action server
Ensure that the config-file is same as described in the thesis
At-start / at-end conditions will interfere with over-all
Using over-all conditions will trigger issues with at-start or at-end conditions for other actions. Testing shows that the behaviour-tree from plansys2 is incorrect, and likely linked to the issue observed in issue 211 at the plansys2-github repo.
Force replan at action failure
Try to set constant durations as function, instead of forcing the planner / parser to calculate ufins multiple functions
Battery monitoring
May want some form of monitoring about the battery usage within the actions.
For example, that the move action estimates the expected battery drain based on the distance and the estimated battery usage. Checking this in the preconditions allows the system to abort the move or similar
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.