Behavior Tree Node Reference
Here is an extensive list of all behavior tree nodes that are available out of the box after installing AutoAPMS inside your workspace.
We also include the documentation of those nodes that natively come with BehaviorTree.CPP so you have a better overview.
There's a C++ node model class available for all of the registration names mentioned below. You can include them like so:
#include "auto_apms_behavior_tree/behavior_tree_nodes.hpp"
namespace standard_node_models = auto_apms_behavior_tree::model;
#include "auto_apms_simulation/behavior_tree_nodes.hpp"
namespace simulation_node_models = auto_apms_simulation::model;
#include "auto_apms_px4_behavior/behavior_tree_nodes.hpp"
namespace px4_node_models = auto_apms_px4_behavior::model;Overview auto-apms
| Registration Name | Class Name | Package |
|---|---|---|
| AlwaysFailure | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| AlwaysSuccess | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| AsyncFallback | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| AsyncSequence | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Delay | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Fallback | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ForceFailure | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ForceSuccess | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| IfThenElse | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Inverter | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| KeepRunningUntilFailure | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| LoopBool | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| LoopDouble | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| LoopInt | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| LoopString | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Parallel | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ParallelAll | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Precondition | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ReactiveFallback | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ReactiveSequence | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Repeat | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| RetryUntilSuccessful | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| RunOnce | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Script | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| ScriptCondition | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Sequence | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| SequenceWithMemory | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| SetBlackboard | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| SkipUnlessUpdated | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Sleep | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| SubTree | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Switch2 | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Switch3 | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Switch4 | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Switch5 | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Switch6 | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Timeout | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| UnsetBlackboard | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| WaitValueUpdate | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| WasEntryUpdated | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| WhileDoElse | None | auto_apms_behavior_tree (BehaviorTree.CPP) |
| Error | auto_apms_behavior_tree::ThrowException | auto_apms_behavior_tree |
| GetParameter | auto_apms_behavior_tree::GetParameter | auto_apms_behavior_tree |
| GetParameterBool | auto_apms_behavior_tree::GetParameterBool | auto_apms_behavior_tree |
| GetParameterBoolVec | auto_apms_behavior_tree::GetParameterBoolVec | auto_apms_behavior_tree |
| GetParameterByteVec | auto_apms_behavior_tree::GetParameterByteVec | auto_apms_behavior_tree |
| GetParameterDouble | auto_apms_behavior_tree::GetParameterDouble | auto_apms_behavior_tree |
| GetParameterDoubleVec | auto_apms_behavior_tree::GetParameterDoubleVec | auto_apms_behavior_tree |
| GetParameterInt | auto_apms_behavior_tree::GetParameterInt | auto_apms_behavior_tree |
| GetParameterIntVec | auto_apms_behavior_tree::GetParameterIntVec | auto_apms_behavior_tree |
| GetParameterString | auto_apms_behavior_tree::GetParameterString | auto_apms_behavior_tree |
| GetParameterStringVec | auto_apms_behavior_tree::GetParameterStringVec | auto_apms_behavior_tree |
| HaltExecutor | auto_apms_behavior_tree::HaltExecutor | auto_apms_behavior_tree |
| HasParameter | auto_apms_behavior_tree::HasParameter | auto_apms_behavior_tree |
| Logger | auto_apms_behavior_tree::Logger | auto_apms_behavior_tree |
| PauseExecutor | auto_apms_behavior_tree::PauseExecutor | auto_apms_behavior_tree |
| PublishPose | auto_apms_behavior_tree::PublishPose | auto_apms_behavior_tree |
| ResumeExecutor | auto_apms_behavior_tree::ResumeExecutor | auto_apms_behavior_tree |
| SetBool | auto_apms_behavior_tree::SetBool | auto_apms_behavior_tree |
| SetEmpty | auto_apms_behavior_tree::SetEmpty | auto_apms_behavior_tree |
| SetParameter | auto_apms_behavior_tree::SetParameter | auto_apms_behavior_tree |
| SetParameterBool | auto_apms_behavior_tree::SetParameterBool | auto_apms_behavior_tree |
| SetParameterBoolVec | auto_apms_behavior_tree::SetParameterBoolVec | auto_apms_behavior_tree |
| SetParameterByteVec | auto_apms_behavior_tree::SetParameterByteVec | auto_apms_behavior_tree |
| SetParameterDouble | auto_apms_behavior_tree::SetParameterDouble | auto_apms_behavior_tree |
| SetParameterDoubleVec | auto_apms_behavior_tree::SetParameterDoubleVec | auto_apms_behavior_tree |
| SetParameterInt | auto_apms_behavior_tree::SetParameterInt | auto_apms_behavior_tree |
| SetParameterIntVec | auto_apms_behavior_tree::SetParameterIntVec | auto_apms_behavior_tree |
| SetParameterString | auto_apms_behavior_tree::SetParameterString | auto_apms_behavior_tree |
| SetParameterStringVec | auto_apms_behavior_tree::SetParameterStringVec | auto_apms_behavior_tree |
| SetTrigger | auto_apms_behavior_tree::SetTrigger | auto_apms_behavior_tree |
| StartExecutor | auto_apms_behavior_tree::StartExecutor | auto_apms_behavior_tree |
| TerminateExecutor | auto_apms_behavior_tree::TerminateExecutor | auto_apms_behavior_tree |
| GetRobotState | auto_apms_simulation::GetRobotState | auto_apms_simulation |
| IsLocationOccupied | auto_apms_simulation::IsLocationOccupied | auto_apms_simulation |
| NavigateToLocation | auto_apms_simulation::NavigateToLocation | auto_apms_simulation |
| PickObject | auto_apms_simulation::PickObject | auto_apms_simulation |
| PlaceObject | auto_apms_simulation::PlaceObject | auto_apms_simulation |
| RobotSharesCurrentLocation | auto_apms_simulation::RobotSharesCurrentLocation | auto_apms_simulation |
| SetLocationState | auto_apms_simulation::SetLocationState | auto_apms_simulation |
auto_apms_behavior_tree (BehaviorTree.CPP)
AlwaysFailure
C++ Model: auto_apms_behavior_tree::AlwaysFailure
Node Type: Action
Description: No description provided.
This node doesn't have any ports.
AlwaysSuccess
C++ Model: auto_apms_behavior_tree::AlwaysSuccess
Node Type: Action
Description: No description provided.
This node doesn't have any ports.
AsyncFallback
C++ Model: auto_apms_behavior_tree::AsyncFallback
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
AsyncSequence
C++ Model: auto_apms_behavior_tree::AsyncSequence
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
Delay
C++ Model: auto_apms_behavior_tree::Delay
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| delay_msec | unsigned int | ❌ | Tick the child after a few milliseconds |
Fallback
C++ Model: auto_apms_behavior_tree::Fallback
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
ForceFailure
C++ Model: auto_apms_behavior_tree::ForceFailure
Node Type: Decorator
Description: No description provided.
This node doesn't have any ports.
ForceSuccess
C++ Model: auto_apms_behavior_tree::ForceSuccess
Node Type: Decorator
Description: No description provided.
This node doesn't have any ports.
IfThenElse
C++ Model: auto_apms_behavior_tree::IfThenElse
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
Inverter
C++ Model: auto_apms_behavior_tree::Inverter
Node Type: Decorator
Description: No description provided.
This node doesn't have any ports.
KeepRunningUntilFailure
C++ Model: auto_apms_behavior_tree::KeepRunningUntilFailure
Node Type: Decorator
Description: No description provided.
This node doesn't have any ports.
LoopBool
C++ Model: auto_apms_behavior_tree::LoopBool
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| if_empty | BT::NodeStatus | SUCCESS | Status to return if queue is empty: SUCCESS, FAILURE, SKIPPED |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | bool | ❌ |
Bidirectional Ports
| Port Name | Type | Default Value | Description |
|---|---|---|---|
| queue | std::shared_ptr<std::deque<bool, std::allocator<bool> > > | ❌ |
LoopDouble
C++ Model: auto_apms_behavior_tree::LoopDouble
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| if_empty | BT::NodeStatus | SUCCESS | Status to return if queue is empty: SUCCESS, FAILURE, SKIPPED |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | double | ❌ |
Bidirectional Ports
| Port Name | Type | Default Value | Description |
|---|---|---|---|
| queue | std::shared_ptr<std::deque<double, std::allocator<double> > > | ❌ |
LoopInt
C++ Model: auto_apms_behavior_tree::LoopInt
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| if_empty | BT::NodeStatus | SUCCESS | Status to return if queue is empty: SUCCESS, FAILURE, SKIPPED |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | int | ❌ |
Bidirectional Ports
| Port Name | Type | Default Value | Description |
|---|---|---|---|
| queue | std::shared_ptr<std::deque<int, std::allocator<int> > > | ❌ |
LoopString
C++ Model: auto_apms_behavior_tree::LoopString
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| if_empty | BT::NodeStatus | SUCCESS | Status to return if queue is empty: SUCCESS, FAILURE, SKIPPED |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::string | ❌ |
Bidirectional Ports
| Port Name | Type | Default Value | Description |
|---|---|---|---|
| queue | std::shared_ptr<std::deque<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > | ❌ |
Parallel
C++ Model: auto_apms_behavior_tree::Parallel
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| failure_count | int | 1 | number of children that need to fail to trigger a FAILURE |
| success_count | int | -1 | number of children that need to succeed to trigger a SUCCESS |
ParallelAll
C++ Model: auto_apms_behavior_tree::ParallelAll
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| max_failures | int | 1 | If the number of children returning FAILURE exceeds this value, ParallelAll returns FAILURE |
Precondition
C++ Model: auto_apms_behavior_tree::Precondition
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| else | BT::NodeStatus | FAILURE | Return status if condition is false |
| if | std::string | ❌ |
ReactiveFallback
C++ Model: auto_apms_behavior_tree::ReactiveFallback
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
ReactiveSequence
C++ Model: auto_apms_behavior_tree::ReactiveSequence
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
Repeat
C++ Model: auto_apms_behavior_tree::Repeat
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| num_cycles | int | ❌ | Repeat a successful child up to N times. Use -1 to create an infinite loop. |
RetryUntilSuccessful
C++ Model: auto_apms_behavior_tree::RetryUntilSuccessful
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| num_attempts | int | ❌ | Execute again a failing child up to N times. Use -1 to create an infinite loop. |
RunOnce
C++ Model: auto_apms_behavior_tree::RunOnce
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| then_skip | bool | true | If true, skip after the first execution, otherwise return the same NodeStatus returned once by the child. |
Script
C++ Model: auto_apms_behavior_tree::Script
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| code | std::string | ❌ | Piece of code that can be parsed |
ScriptCondition
C++ Model: auto_apms_behavior_tree::ScriptCondition
Node Type: Condition
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| code | BT::AnyTypeAllowed | ❌ | Piece of code that can be parsed. Must return false or true |
Sequence
C++ Model: auto_apms_behavior_tree::Sequence
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
SequenceWithMemory
C++ Model: auto_apms_behavior_tree::SequenceWithMemory
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
SetBlackboard
C++ Model: auto_apms_behavior_tree::SetBlackboard
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| value | BT::AnyTypeAllowed | ❌ | Value to be written into the output_key |
Bidirectional Ports
| Port Name | Type | Default Value | Description |
|---|---|---|---|
| output_key | BT::AnyTypeAllowed | ❌ | Name of the blackboard entry where the value should be written |
SkipUnlessUpdated
C++ Model: auto_apms_behavior_tree::SkipUnlessUpdated
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| entry | BT::Any | ❌ | Entry to check |
Sleep
C++ Model: auto_apms_behavior_tree::Sleep
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| msec | unsigned int | ❌ |
SubTree
C++ Model: auto_apms_behavior_tree::SubTree
Node Type: SubTree
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| _autoremap | bool | false | If true, all the ports with the same name will be remapped |
Switch2
C++ Model: auto_apms_behavior_tree::Switch2
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| case_2 | std::string | ❌ | |
| case_1 | std::string | ❌ | |
| variable | std::string | ❌ |
Switch3
C++ Model: auto_apms_behavior_tree::Switch3
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| case_3 | std::string | ❌ | |
| case_2 | std::string | ❌ | |
| case_1 | std::string | ❌ | |
| variable | std::string | ❌ |
Switch4
C++ Model: auto_apms_behavior_tree::Switch4
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| case_4 | std::string | ❌ | |
| case_3 | std::string | ❌ | |
| case_2 | std::string | ❌ | |
| case_1 | std::string | ❌ | |
| variable | std::string | ❌ |
Switch5
C++ Model: auto_apms_behavior_tree::Switch5
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| case_5 | std::string | ❌ | |
| case_4 | std::string | ❌ | |
| case_3 | std::string | ❌ | |
| case_2 | std::string | ❌ | |
| case_1 | std::string | ❌ | |
| variable | std::string | ❌ |
Switch6
C++ Model: auto_apms_behavior_tree::Switch6
Node Type: Control
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| case_5 | std::string | ❌ | |
| case_4 | std::string | ❌ | |
| case_6 | std::string | ❌ | |
| case_3 | std::string | ❌ | |
| case_2 | std::string | ❌ | |
| case_1 | std::string | ❌ | |
| variable | std::string | ❌ |
Timeout
C++ Model: auto_apms_behavior_tree::Timeout
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| msec | unsigned int | ❌ | After a certain amount of time, halt() the child if it is still running. |
UnsetBlackboard
C++ Model: auto_apms_behavior_tree::UnsetBlackboard
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| key | std::string | ❌ | Key of the entry to remove |
WaitValueUpdate
C++ Model: auto_apms_behavior_tree::WaitValueUpdate
Node Type: Decorator
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| entry | BT::Any | ❌ | Entry to check |
WasEntryUpdated
C++ Model: auto_apms_behavior_tree::WasEntryUpdated
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| entry | BT::Any | ❌ | Entry to check |
WhileDoElse
C++ Model: auto_apms_behavior_tree::WhileDoElse
Node Type: Control
Description: No description provided.
This node doesn't have any ports.
auto_apms_behavior_tree
Error
Plugin Class: auto_apms_behavior_tree::ThrowException
C++ Model: auto_apms_behavior_tree::Error
Node Type: Action
Description: Throws an exception to interrupt behavior tree execution
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| message | std::string | ❌ | Error message. Creates a generic error message if empty. |
GetParameter
Plugin Class: auto_apms_behavior_tree::GetParameter
C++ Model: auto_apms_behavior_tree::GetParameter
Node Type: Action
Description: Retrieves a parameter value from a ROS2 node. The type of the output will be BT::Any and the user must make sure to cast it to the correct type when using it.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | BT::AnyTypeAllowed | ❌ | Output port for the parameter's value. |
GetParameterBool
Plugin Class: auto_apms_behavior_tree::GetParameterBool
C++ Model: auto_apms_behavior_tree::GetParameterBool
Node Type: Action
Description: Retrieves a boolean parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | bool | ❌ | Output port for the parameter's value. |
GetParameterBoolVec
Plugin Class: auto_apms_behavior_tree::GetParameterBoolVec
C++ Model: auto_apms_behavior_tree::GetParameterBoolVec
Node Type: Action
Description: Retrieves a boolean array parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::vector<bool, std::allocator<bool> > | ❌ | Output port for the parameter's value. |
GetParameterByteVec
Plugin Class: auto_apms_behavior_tree::GetParameterByteVec
C++ Model: auto_apms_behavior_tree::GetParameterByteVec
Node Type: Action
Description: Retrieves a byte array parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::vector<unsigned char, std::allocator<unsigned char> > | ❌ | Output port for the parameter's value. |
GetParameterDouble
Plugin Class: auto_apms_behavior_tree::GetParameterDouble
C++ Model: auto_apms_behavior_tree::GetParameterDouble
Node Type: Action
Description: Retrieves a double precision floating point parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | double | ❌ | Output port for the parameter's value. |
GetParameterDoubleVec
Plugin Class: auto_apms_behavior_tree::GetParameterDoubleVec
C++ Model: auto_apms_behavior_tree::GetParameterDoubleVec
Node Type: Action
Description: Retrieves a double precision floating point array parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::vector<double, std::allocator<double> > | ❌ | Output port for the parameter's value. |
GetParameterInt
Plugin Class: auto_apms_behavior_tree::GetParameterInt
C++ Model: auto_apms_behavior_tree::GetParameterInt
Node Type: Action
Description: Retrieves an integer parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | long | ❌ | Output port for the parameter's value. |
GetParameterIntVec
Plugin Class: auto_apms_behavior_tree::GetParameterIntVec
C++ Model: auto_apms_behavior_tree::GetParameterIntVec
Node Type: Action
Description: Retrieves an integer array parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::vector<long, std::allocator<long> > | ❌ | Output port for the parameter's value. |
GetParameterString
Plugin Class: auto_apms_behavior_tree::GetParameterString
C++ Model: auto_apms_behavior_tree::GetParameterString
Node Type: Action
Description: Retrieves a string parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::string | ❌ | Output port for the parameter's value. |
GetParameterStringVec
Plugin Class: auto_apms_behavior_tree::GetParameterStringVec
C++ Model: auto_apms_behavior_tree::GetParameterStringVec
Node Type: Action
Description: Retrieves a string array parameter value from a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to get. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| value | std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > | ❌ | Output port for the parameter's value. |
HaltExecutor
Plugin Class: auto_apms_behavior_tree::HaltExecutor
C++ Model: auto_apms_behavior_tree::HaltExecutor
Node Type: Action
Description: Halts an executor by sending a halt command
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| executor | std::string | ❌ | Name of the executor to command. |
HasParameter
Plugin Class: auto_apms_behavior_tree::HasParameter
C++ Model: auto_apms_behavior_tree::HasParameter
Node Type: Action
Description: Checks if a ROS2 node has a specific parameter defined
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
Logger
Plugin Class: auto_apms_behavior_tree::Logger
C++ Model: auto_apms_behavior_tree::Logger
Node Type: Action
Description: Logs a message to the ROS2 logging system
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| message | BT::AnyTypeAllowed | ❌ | Message to be logged via rclcpp::Logger. |
| level | std::string | INFO | Logger level. Must be one of [UNSET, DEBUG, INFO, WARN, ERROR, FATAL] but is not case sensitive. |
PauseExecutor
Plugin Class: auto_apms_behavior_tree::PauseExecutor
C++ Model: auto_apms_behavior_tree::PauseExecutor
Node Type: Action
Description: Pauses an executor by sending a pause command
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| executor | std::string | ❌ | Name of the executor to command. |
PublishPose
Plugin Class: auto_apms_behavior_tree::PublishPose
C++ Model: auto_apms_behavior_tree::PublishPose
Node Type: Condition
Description: Publishes a geometry_msgs/PoseStamped message with position and orientation
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| x | double | 0.000000 | Target x position in meters. |
| y | double | 0.000000 | Target y position in meters. |
| z | double | 0.000000 | Target z position in meters. |
| frame_id | std::string | map | Frame ID for the pose. |
| roll | double | 0.000000 | Target roll angle in radians (or degrees if use_degrees is true). |
| use_degrees | bool | false | If true, interpret roll, pitch, yaw as degrees instead of radians. |
| pitch | double | 0.000000 | Target pitch angle in radians (or degrees if use_degrees is true). |
| yaw | double | 0.000000 | Target yaw angle in radians (or degrees if use_degrees is true). |
| topic | std::string | ❌ | Name of the ROS 2 topic to publish to. |
ResumeExecutor
Plugin Class: auto_apms_behavior_tree::ResumeExecutor
C++ Model: auto_apms_behavior_tree::ResumeExecutor
Node Type: Action
Description: Resumes a paused executor by sending a resume command
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| executor | std::string | ❌ | Name of the executor to command. |
SetBool
Plugin Class: auto_apms_behavior_tree::SetBool
C++ Model: auto_apms_behavior_tree::SetBool
Node Type: Action
Description: Sets a std_srvs/SetBool service with the given boolean value
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| data | bool | ❌ | Boolean data to set (true, false, 1, 0). |
| topic | std::string | ❌ | Name of the ROS 2 service. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| message | std::string | ❌ | Service response: informational message. |
SetEmpty
Plugin Class: auto_apms_behavior_tree::SetEmpty
C++ Model: auto_apms_behavior_tree::SetEmpty
Node Type: Action
Description: Calls a std_srvs/Empty service
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| topic | std::string | ❌ | Name of the ROS 2 service. |
SetParameter
Plugin Class: auto_apms_behavior_tree::SetParameter
C++ Model: auto_apms_behavior_tree::SetParameter
Node Type: Action
Description: Sets a parameter on a ROS2 node. This node can infer the type from a blackboard pointer. For passing a string literal as value, use one of the statically typed versions.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | BT::AnyTypeAllowed | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterBool
Plugin Class: auto_apms_behavior_tree::SetParameterBool
C++ Model: auto_apms_behavior_tree::SetParameterBool
Node Type: Action
Description: Sets a boolean parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | bool | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterBoolVec
Plugin Class: auto_apms_behavior_tree::SetParameterBoolVec
C++ Model: auto_apms_behavior_tree::SetParameterBoolVec
Node Type: Action
Description: Sets a boolean array parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::vector<bool, std::allocator<bool> > | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterByteVec
Plugin Class: auto_apms_behavior_tree::SetParameterByteVec
C++ Model: auto_apms_behavior_tree::SetParameterByteVec
Node Type: Action
Description: Sets a byte array parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::vector<unsigned char, std::allocator<unsigned char> > | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterDouble
Plugin Class: auto_apms_behavior_tree::SetParameterDouble
C++ Model: auto_apms_behavior_tree::SetParameterDouble
Node Type: Action
Description: Sets a double precision floating point parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | double | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterDoubleVec
Plugin Class: auto_apms_behavior_tree::SetParameterDoubleVec
C++ Model: auto_apms_behavior_tree::SetParameterDoubleVec
Node Type: Action
Description: Sets a double precision floating point array parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::vector<double, std::allocator<double> > | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterInt
Plugin Class: auto_apms_behavior_tree::SetParameterInt
C++ Model: auto_apms_behavior_tree::SetParameterInt
Node Type: Action
Description: Sets an integer parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | long | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterIntVec
Plugin Class: auto_apms_behavior_tree::SetParameterIntVec
C++ Model: auto_apms_behavior_tree::SetParameterIntVec
Node Type: Action
Description: Sets an integer array parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::vector<long, std::allocator<long> > | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterString
Plugin Class: auto_apms_behavior_tree::SetParameterString
C++ Model: auto_apms_behavior_tree::SetParameterString
Node Type: Action
Description: Sets a string parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::string | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetParameterStringVec
Plugin Class: auto_apms_behavior_tree::SetParameterStringVec
C++ Model: auto_apms_behavior_tree::SetParameterStringVec
Node Type: Action
Description: Sets a string array parameter on a ROS2 node
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| parameter | std::string | ❌ | Name of the parameter to be set. |
| value | std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > | ❌ | Value of the parameter to be set. |
| node | std::string | ❌ | Name of the targeted ROS 2 node. Leave empty to target this executor's node. |
SetTrigger
Plugin Class: auto_apms_behavior_tree::SetTrigger
C++ Model: auto_apms_behavior_tree::SetTrigger
Node Type: Action
Description: Calls a std_srvs/Trigger service
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| topic | std::string | ❌ | Name of the ROS 2 service. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| message | std::string | ❌ | Service response: informational message. |
StartExecutor
Plugin Class: auto_apms_behavior_tree::StartExecutor
C++ Model: auto_apms_behavior_tree::StartExecutor
Node Type: Action
Description: Starts an executor by calling its start action
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| executor | std::string | ❌ | Name of the executor responsible for building and running the specified behavior tree. |
| build_request | std::string | ❌ | String passed to the tree build handler defining which tree is to be built. |
| build_handler | std::string | Fully qualified class name of the build handler that is supposed to take care of the request. If empty, use the current one. | |
| entrypoint | std::string | Entrypoint for the behavior. If empty, let the build handler determine the entrypoint. | |
| node_manifest | std::string | YAML/JSON formatted string encoding the name and the registration options for the tree nodes supposed to be loaded before building the tree. | |
| clear_blackboard | bool | true | Boolean flag wether to clear the existing blackboard entries before the execution starts or not. |
| attach | bool | true | Boolean flag wether to attach to the execution process or start in detached mode. |
TerminateExecutor
Plugin Class: auto_apms_behavior_tree::TerminateExecutor
C++ Model: auto_apms_behavior_tree::TerminateExecutor
Node Type: Action
Description: Terminates an executor by sending a terminate command
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| executor | std::string | ❌ | Name of the executor to command. |
auto_apms_simulation
GetRobotState
Plugin Class: auto_apms_simulation::GetRobotState
C++ Model: auto_apms_simulation::GetRobotState
Node Type: Condition
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| robot | std::string | ❌ | Name of the robot. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| location | std::string | Current location name. | |
| battery | double | Current battery state [%]. |
IsLocationOccupied
Plugin Class: auto_apms_simulation::IsLocationOccupied
C++ Model: auto_apms_simulation::IsLocationOccupied
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| target_loc | std::string | ❌ | Name of the location to test for occupancy. |
| filter_loc | std::string | .* | Regex filter for locations to match against the target location. |
| filter_robot | std::string | .* | Regex filter for robots to consider. |
NavigateToLocation
Plugin Class: auto_apms_simulation::NavigateToLocation
C++ Model: auto_apms_simulation::NavigateToLocation
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| robot | std::string | ❌ | Name of the robot. |
| target | std::string | ❌ | Name of the target to navigate to (Terms for the knowledge query are separated by whitespace). |
PickObject
Plugin Class: auto_apms_simulation::PickObject
C++ Model: auto_apms_simulation::PickObject
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| robot | std::string | ❌ | Name of the robot. |
| object | std::string | Name of the object to pick. Empty for the nearest object. |
PlaceObject
Plugin Class: auto_apms_simulation::PlaceObject
C++ Model: auto_apms_simulation::PlaceObject
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| robot | std::string | ❌ | Name of the robot. |
RobotSharesCurrentLocation
Plugin Class: auto_apms_simulation::RobotSharesCurrentLocation
C++ Model: auto_apms_simulation::RobotSharesCurrentLocation
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| robot | std::string | ❌ | Target robot in question to be the first at the given location. |
| filter_loc | std::string | .* | Regex filter for locations to consider. |
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| current_loc | std::string | Current location name. |
SetLocationState
Plugin Class: auto_apms_simulation::SetLocationState
C++ Model: auto_apms_simulation::SetLocationState
Node Type: Action
Description: No description provided.
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| open | bool | true | Open/Close the location. |
| location | std::string | ❌ | Name of the location. |
| lock | bool | false | Lock/Unlock the location. |
Overview auto-apms-px4
| Registration Name | Class Name | Package |
|---|---|---|
| Arm | auto_apms_px4_behavior::ArmAction | auto_apms_px4_behavior |
| Disarm | auto_apms_px4_behavior::DisarmAction | auto_apms_px4_behavior |
| EnableHold | auto_apms_px4_behavior::EnableHoldAction | auto_apms_px4_behavior |
| GetGlobalPosition | auto_apms_px4_behavior::GetPosition<GlobalPositionMsg> | auto_apms_px4_behavior |
| GetLocalPosition | auto_apms_px4_behavior::GetPosition<LocalPositionMsg> | auto_apms_px4_behavior |
| GoTo | auto_apms_px4_behavior::GoToAction | auto_apms_px4_behavior |
| GoToGlobal | auto_apms_px4_behavior::GoToAction | auto_apms_px4_behavior |
| GoToLocal | auto_apms_px4_behavior::GoToAction | auto_apms_px4_behavior |
| Land | auto_apms_px4_behavior::LandAction | auto_apms_px4_behavior |
| Mission | auto_apms_px4_behavior::MissionAction | auto_apms_px4_behavior |
| RTL | auto_apms_px4_behavior::RTLAction | auto_apms_px4_behavior |
| Takeoff | auto_apms_px4_behavior::TakeoffAction | auto_apms_px4_behavior |
auto_apms_px4_behavior
Arm
Plugin Class: auto_apms_px4_behavior::ArmAction
C++ Model: auto_apms_px4_behavior::Arm
Node Type: Action
Description: Arms the vehicle, making it ready for takeoff
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| wait_until_ready_to_arm | bool | false | Wait for the UAV to be ready for arming. If false and UAV is not ready to arm, will be rejected. |
Disarm
Plugin Class: auto_apms_px4_behavior::DisarmAction
C++ Model: auto_apms_px4_behavior::Disarm
Node Type: Action
Description: Disarms the vehicle if it is landed
This node doesn't have any ports.
EnableHold
Plugin Class: auto_apms_px4_behavior::EnableHoldAction
C++ Model: auto_apms_px4_behavior::EnableHold
Node Type: Action
Description: Enables or disables the position loiter mode
This node doesn't have any ports.
GetGlobalPosition
Plugin Class: auto_apms_px4_behavior::GetPosition<GlobalPositionMsg>
C++ Model: auto_apms_px4_behavior::GetGlobalPosition
Node Type: Condition
Description: Gets the current position of the vehicle in the global coordinate frame
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| alt | double | Current altitude in meter (AMSL) | |
| lon | double | Current longitude in degree [°] | |
| lat | double | Current latitude in degree [°] | |
| vector | Eigen::Matrix<double, -1, -1, 0, -1, -1> | Current global position vector (latitude [°], longitude [°], altitude AMSL [m]) |
GetLocalPosition
Plugin Class: auto_apms_px4_behavior::GetPosition<LocalPositionMsg>
C++ Model: auto_apms_px4_behavior::GetLocalPosition
Node Type: Condition
Description: Gets the current position of the vehicle in the local coordinate frame
Output Ports
| Output Name | Type | Default Value | Description |
|---|---|---|---|
| down | double | Current down [m] relative to origin | |
| east | double | Current east [m] relative to origin | |
| north | double | Current north [m] relative to origin | |
| vector | Eigen::Matrix<double, -1, -1, 0, -1, -1> | Current local position vector (north [m], east [m], down [m]) |
GoTo
Plugin Class: auto_apms_px4_behavior::GoToAction
C++ Model: auto_apms_px4_behavior::GoTo
Node Type: Action
Description: Commands the vehicle to go to a specified position. The reference frame can be set via the 'frame' input port
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| reached_thresh_yaw | double | 7.000000 | Maximum heading error [°] under which the position is considered reached |
| reached_thresh_vel | double | 0.300000 | Maximum velocity error [m/s] under which the position is considered reached |
| reached_thresh_pos | double | 0.500000 | Maximum position error [m] under which the position is considered reached |
| max_heading_rate | double | 30.000000 | Maximum heading rate [°/s] |
| max_vertical_vel | double | 5.000000 | Maximum vertical velocity [m/s] |
| max_horizontal_vel | double | 10.000000 | Maximum horizontal velocity [m/s] |
| yaw | double | ❌ | Desired yaw position in degree from north (heading) [-180°, 180) |
| z | double | ❌ | Override vector entry Z |
| y | double | ❌ | Override vector entry Y |
| x | double | ❌ | Override vector entry X |
| vector | Eigen::Matrix<double, -1, -1, 0, -1, -1> | ❌ | Target position as a row vector (separated by ';') |
| frame | std::string | global | Reference frame: 'global' (Latitude, longitude, altitude (AMSL)) or 'local' (North, east, down from start) |
GoToGlobal
Plugin Class: auto_apms_px4_behavior::GoToAction
C++ Model: auto_apms_px4_behavior::GoToGlobal
Node Type: Action
Description: Commands the vehicle to go to a specified position in the global coordinate frame
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| reached_thresh_yaw | double | 7.000000 | Maximum heading error [°] under which the position is considered reached |
| reached_thresh_vel | double | 0.300000 | Maximum velocity error [m/s] under which the position is considered reached |
| reached_thresh_pos | double | 0.500000 | Maximum position error [m] under which the position is considered reached |
| max_heading_rate | double | 30.000000 | Maximum heading rate [°/s] |
| max_vertical_vel | double | 5.000000 | Maximum vertical velocity [m/s] |
| max_horizontal_vel | double | 10.000000 | Maximum horizontal velocity [m/s] |
| yaw | double | ❌ | Desired yaw position in degree from north (heading) [-180°, 180) |
| z | double | ❌ | Override vector entry Z |
| y | double | ❌ | Override vector entry Y |
| x | double | ❌ | Override vector entry X |
| vector | Eigen::Matrix<double, -1, -1, 0, -1, -1> | ❌ | Target position as a row vector (separated by ';') |
| frame | std::string | global | Reference frame: 'global' (Latitude, longitude, altitude (AMSL)) or 'local' (North, east, down from start) |
GoToLocal
Plugin Class: auto_apms_px4_behavior::GoToAction
C++ Model: auto_apms_px4_behavior::GoToLocal
Node Type: Action
Description: Commands the vehicle to go to a specified position in the local coordinate frame
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| reached_thresh_yaw | double | 7.000000 | Maximum heading error [°] under which the position is considered reached |
| reached_thresh_vel | double | 0.300000 | Maximum velocity error [m/s] under which the position is considered reached |
| reached_thresh_pos | double | 0.500000 | Maximum position error [m] under which the position is considered reached |
| max_heading_rate | double | 30.000000 | Maximum heading rate [°/s] |
| max_vertical_vel | double | 5.000000 | Maximum vertical velocity [m/s] |
| max_horizontal_vel | double | 10.000000 | Maximum horizontal velocity [m/s] |
| yaw | double | ❌ | Desired yaw position in degree from north (heading) [-180°, 180) |
| z | double | ❌ | Override vector entry Z |
| y | double | ❌ | Override vector entry Y |
| x | double | ❌ | Override vector entry X |
| vector | Eigen::Matrix<double, -1, -1, 0, -1, -1> | ❌ | Target position as a row vector (separated by ';') |
| frame | std::string | local | Reference frame: 'global' (Latitude, longitude, altitude (AMSL)) or 'local' (North, east, down from start) |
Land
Plugin Class: auto_apms_px4_behavior::LandAction
C++ Model: auto_apms_px4_behavior::Land
Node Type: Action
Description: Commands the vehicle to land at its current position
This node doesn't have any ports.
Mission
Plugin Class: auto_apms_px4_behavior::MissionAction
C++ Model: auto_apms_px4_behavior::Mission
Node Type: Action
Description: Starts a mission that has been previously uploaded to the vehicle
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| do_restart | bool | false | Wether to restart (true) or resume (false) the mission. |
RTL
Plugin Class: auto_apms_px4_behavior::RTLAction
C++ Model: auto_apms_px4_behavior::RTL
Node Type: Action
Description: Commands the vehicle to return to its home position and land
This node doesn't have any ports.
Takeoff
Plugin Class: auto_apms_px4_behavior::TakeoffAction
C++ Model: auto_apms_px4_behavior::Takeoff
Node Type: Action
Description: Commands the vehicle to take off to a specified altitude
Input Ports
| Input Name | Type | Default Value | Description |
|---|---|---|---|
| alt | double | ❌ | Target takeoff altitude in meter (AMSL) |