User guide - JoseAndresMR/ros_magna GitHub Wiki

Hyperparameters

The parameters that define the general aspects of the mission to accomplish are defined in the main script of the master node under the dictionary variable "hyperparameters".

Hyperparameter Definition
world Name of the folder where world definition is
subworld Name of JSON file inside the specified world folder
mission Name of the folder where mission definition is
submission Name of JSON file inside the specified mission folder
n_dataset Number of the dataset to create
n_simulation Number of simulation where to start instide the dataset
N_uav Number of aerial vehicles to be aware of
N_obs Number of static obstacles to be aware of
path_length Length of the path for roles that follow one
solver_algorithm Algorithm for obstacle-avoiding
N_iter Bunch of simulations developed in the defined dataset
smach_view Flag to decide if smach introspector is actived

World definition

The world structure follows a tree definition implemented in JSON format. Each tree depth level has particular features to be defined gathers its child elements. Those levels and its definition are:

Scenario

This is the top level. Every element of the world descends from it.

Feature Definition
world_boundaries Maximum limits on three axes referred to the global origin
volumes List of sets of geometries

Volume

The elements positioned on the full world are gathered in volumes, all referenced to a common frame.

Feature Definition
name Unique identification
prefix Short identification to differenciate its elements
origin Volume frame location referenced to global frame
geometries List of shapes inside the volume

Geometries

Related to a specific shape, spatial distribution of obstacles and Free Space Points (FSP) accessible for mission.

Feature Definition
name Unique identification
prefix Short identification to differenciate its elements
shape Geometric elemental shape
origin Frame location referenced to volume frame
dimensions Characteristic dimensions of the specified shape
color RGB for visualisation marker
alpha Transparency for visualisation marker
poses_sets Spatial distribution of obstacles and FSP

Poses sets

Groups of poses arranged in a logical distribution used to locate obstacles or FSP.

Feature Definition
type Logical distribution of the set
use Whether obstacle or FSP
poses_orientation Orientation of every pose
set_orientation General set orientation if required
obstacles_shape Only for obstacles use
obstacles_dimensions Only for obstacles use

Mission definition

A JSON file describes the UAVs that take part on the mission and the State Machine that implement it.

UAVs

A list containing the features of each drone.

Feature Definition
ID Unique identifier of the UAV
model Aircraft frame
mode Simulation level
marker_color RGB & alpha for visualisation
uav_manager_on_gs Nodes of aerial segment executed onboard or on the Ground Station

Mission state machine

The state machine is a sort of nested states or state machines (SM). The user must define the type, parameters and outcomes that interconect every state and state machine. The general structure to define them is very similar.

States:

Feature Definition
type SMACH state type
state_type One of the implemented types of the SMACH state
name Unique identifier
parameters Inputs to the execution of the state
outcomes Pointer to other states/SM

State Machines:

Feature Definition
type SMACH SM type
name Unique identifier
ids Second identification sorting
var Variable that takes the value of the ids feature
occurencies List of element SMACH elements
outcome_cb [optional] Auxiliar autput selection function
occurrencies_outcome_map [only for Concurrences] Outcome selection from internal outcomes
outcomes Pointer to other states/SM

UAV configuration

Each UAV aircraft has a sort of features associated to its nature independently of the mission.

Feature Definition
autopilot Company builder of its navigation software
ual_use Availability to use UAL
safety_radius Minimum radius to detect collision
max_speed Maximum velocity module the UAV should reach
Specifics Features concerning a single autopilot or aircraft