-
Notifications
You must be signed in to change notification settings - Fork 43
Catalog of Behaviors
This catalog shows the available behaviors provided by Aerostack. They are presented according to the following categories: motion behaviors, behaviors for environment understanding, and behaviors for communication.
It is important to note that there are two types of behaviors:
-
Goal-based behaviors. These behaviors are defined to reach a final state (attain a goal). For example, the behavior TAKE_OFF ends when the drone has reached a certain height.
-
Recurrent behaviors. These behaviors perform an activity recurrently or maintain a desired state (for example, the behavior PAY_ATTENTION_TO_VISUAL_MARKERS).
You can consult the following link to know how to add your own behaviors:
Behavior TAKE_OFF
The robot takes off vertically from a static surface to the normal altitude. Type: goal-based behavior.
Behavior LAND
The robot lands vertically in the current position. This behavior assumes that the floor is static. Type: goal-based behavior.
Behavior KEEP_HOVERING
The robot keeps hovering. Hovering is a maneuver in which the robot is maintained in nearly motionless flight over a reference point at a constant altitude and on a constant heading. This behavior does not avoid moving obstacles. Type: recurrent behavior.
Behavior KEEP_MOVING
The robot keeps moving at a constant speed in some direction (forward, backward, left,right). If the speed value is not given a default value is considered. This behavior does not avoid obstacles. Type: recurrent behavior.
Arguments | Format | Example |
---|---|---|
direction | {FORWARD, BACKWARD, LEFT, RIGHT} | direction: FORWARD |
speed | number (m/sec) | speed: 12 |
Behavior ROTATE
The robot rotates some degrees in a certain axis (yaw). Type: goal-based behavior.
Arguments | Format | Example |
---|---|---|
angle | number (degrees) | angle: 90 |
relative_angle | number (degrees) | relative_angle: 90 |
Behavior WAIT
The robot keeps doing the action while waiting for timeout or seeing a certain visual marker or both. Type: goal-based behavior.
Arguments | Format | Example |
---|---|---|
timeout | number(seconds) | timeout: 30 |
until_observed_visual_marker | number (visual marker id) | until_observed_visual_marker: 1 |
Behavior FOLLOW_OBJECT_IMAGE
The robot follows the image of a moving object, keeping a certain constant distance between the robot and the object. The operator selects the image to follow through the user interface. Type: recurrent behavior.
To select the object image to follow using the OpenTLD GUI you have to press the F5 button to refresh the image on the screen, select the area you want the drone to follow and then press and hold (just for few seconds) the ENTER key. Then the drone will start following the selected area.
Behavior GO_TO_POINT
The robot goes to a given point avoiding obstacles. The robot generates automatically a trajectory that avoids obstacles. The trajectory follows horizontal movements in two dimensions (2D). The point can be expressed using absolute coordinates (argument “coordinates”) or coordinates relative to the vehicle (argument “relative coordinates”). Type: goal-based behavior.
Arguments | Format | Example |
---|---|---|
coordinates | Tuple of 3 numbers x, y, z (meters) | coordinates: [1.23, 2, 0.5] |
relative_coordinates | Tuple of 3 numbers x, y, z (meters) | relative_coordinates: [1.23, 2, 0.5] |
Behavior PAY_ATTENTION_TO_VISUAL_MARKERS
The robot pays attention to visual markers (ArUco markers). The recognized markers are stored as beliefs.Type: recurrent behavior.
Behavior SELF_LOCALIZE_BY_ODOMETRY
The robot self localizes using odometry. To obtain good trajectories with visual odometry it is necessary to fly in a controlled environment (e.g., good illumination without reflections and a non visually uniform ground). Type: recurrent behavior.
Behavior SELF_LOCALIZE_BY_VISUAL_MARKERS
The robot self localizes using visual markers (ArUco markers). Type: recurrent behavior.
Behavior REQUEST_OPERATOR_ASSISTANCE
This behavior presents (e.g., through a pop-up window) a text message and a list of options to select. The operator selects one of the options and the selection is written in the belief memory. Type: goal-based behavior.
Arguments | Format | Example |
---|---|---|
MESSAGE | text | MESSAGE: "The light intensity is very low" |
OPTIONS | list of texts | OPTIONS: ["Turn on light","Land"] |
Contact: We thank and welcome any suggestion or comment about Aerostack. For any question or bug report you can read and/or write at the issues page. You can also contact the team support at the following address: [email protected]
The content of the Aerostack wiki is licensed under Creative Commons license CC BY 4.0