## Submodules¶

class openai_ros.task_envs.parrotdrone.parrotdrone_goto.ParrotDroneGotoEnv[source]
__init__()[source]

Make parrotdrone learn how to navigate to get to a point

__module__ = 'openai_ros.task_envs.parrotdrone.parrotdrone_goto'
_compute_reward(observations, done)[source]
_get_obs()[source]

Here we define what sensor data defines our robots observations To know which Variables we have acces to, we need to read the droneEnv API DOCS :return:

_init_env_variables()[source]

Inits variables needed to be initialised each time we reset at the start of an episode. :return:

_is_done(observations)[source]

The done can be done due to three reasons: 1) It went outside the workspace 2) It detected something with the sonar that is too close 3) It flipped due to a crash or something 4) It has reached the desired point

_set_action(action)[source]

This set action will Set the linear and angular speed of the drone based on the action number given. :param action: The action integer that set s what movement to do next.

_set_init_pose()[source]

Sets the Robot in its init linear and angular speeds and lands the robot. Its preparing it to be reseted in the world.

drone_has_flipped(current_orientation)[source]

Based on the orientation RPY given states if the drone has flipped

get_distance_from_desired_point(current_position)[source]

Calculates the distance from the current position to the desired point :param start_point: :return:

get_distance_from_point(pstart, p_end)[source]

Given a Vector3 Object, get distance from current position :param p_end: :return:

get_orientation_euler(quaternion_vector)[source]
is_in_desired_position(current_position, epsilon=0.05)[source]

It return True if the current position is similar to the desired poistion

is_inside_workspace(current_position)[source]

Check if the Drone is inside the Workspace defined

sonar_detected_something_too_close(sonar_value)[source]

Detects if there is something too close to the drone front