Public Member Functions | Private Member Functions | Private Attributes | List of all members
uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator Class Reference
Inheritance diagram for uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator:
Inheritance graph
[legend]

Public Member Functions

def __del__ (self)
 
def __init__ (self, full_dof=False, use_finite_diff=True, interpolation_method='cubic', stamped_pose_only=False)
 
def add_waypoint (self, waypoint, add_to_beginning=False)
 
def closest_waypoint (self)
 
def closest_waypoint_idx (self)
 
def generate_pnt (self, t, pos, rot)
 
def generate_reference (self, t, args)
 
def get_interpolation_method (self)
 
def get_max_time (self)
 
def get_samples (self, step=0.005)
 
def get_visual_markers (self)
 
def get_waypoints (self)
 
def init_waypoints (self, waypoint_set, init_rot=(0, 0, 0, 1))
 
def interpolate (self, t, args)
 
def interpolator (self)
 
def interpolator_tags (self)
 
def is_finished (self)
 
def is_full_dof (self)
 
def reset (self)
 
def set_duration (self, t)
 
def set_interpolation_method (self, method)
 
def set_interpolator_parameters (self, method, params)
 
def set_start_time (self, t)
 
def stamped_pose_only (self)
 
def stamped_pose_only (self, flag)
 
def started (self)
 
def update_dt (self, t)
 
def use_finite_diff (self)
 
def use_finite_diff (self, flag)
 

Private Member Functions

def _generate_vel (self, s=None)
 
def _motion_regression_1d (self, pnts, t)
 
def _motion_regression_6d (self, pnts, qt, t)
 

Private Attributes

 _cur_s
 
 _dt
 
 _has_ended
 
 _has_started
 
 _init_rot
 
 _interp_method
 
 _is_full_dof
 
 _last_pnt
 
 _last_t
 
 _logger
 
 _path_generators
 
 _regression_window
 
 _stamped_pose_only
 
 _t_step
 
 _this_pnt
 
 _use_finite_diff
 

Detailed Description

Class that generates a trajectory from the interpolated path generated
from a set of waypoints. It uses the information given for the waypoint's
maximum forward speed to estimate the velocity between waypoint and
parametrize the interpolated curve.
The velocity and acceleration profiles are the generated through finite
discretization. These profiles are not optimized, this class is a
simple solution for quick trajectory generation for waypoint navigation.

> *Input arguments*

* `full_dof` (*type:* `bool`, *default:* `False`): `True` to generate 6 DoF 
trajectories
* `use_finite_diff` (*type:* `bool`, *default:* `True`): Use finite differentiation
if `True`, otherwise use the motion regression algorithm
* `interpolation_method` (*type:* `str`, *default:* `cubic`): Name of the interpolation
method, options are `cubic`, `dubins`, `lipb` or `linear`
* `stamped_pose_only` (*type:* `bool`, *default:* `False`): Generate only position 
and quaternion vectors, velocities and accelerations are set to zero

Definition at line 30 of file wp_trajectory_generator.py.

Constructor & Destructor Documentation

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.__init__ (   self,
  full_dof = False,
  use_finite_diff = True,
  interpolation_method = 'cubic',
  stamped_pose_only = False 
)
Class constructor.

Definition at line 52 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.__del__ (   self)

Definition at line 107 of file wp_trajectory_generator.py.

Member Function Documentation

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._generate_vel (   self,
  s = None 
)
private

Definition at line 385 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._motion_regression_1d (   self,
  pnts,
  t 
)
private
Computation of the velocity and acceleration for the target time t
using a sequence of points with time stamps for one dimension. This
is an implementation of the algorithm presented by [1].

!!! note

    [1] Sittel, Florian, Joerg Mueller, and Wolfram Burgard. Computing
velocities and accelerations from a pose time sequence in
three-dimensional space. Technical Report 272, University of
Freiburg, Department of Computer Science, 2013.

Definition at line 257 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._motion_regression_6d (   self,
  pnts,
  qt,
  t 
)
private
Compute translational and rotational velocities and accelerations in
the inertial frame at the target time t.

!!! note

    [1] Sittel, Florian, Joerg Mueller, and Wolfram Burgard. Computing
velocities and accelerations from a pose time sequence in
three-dimensional space. Technical Report 272, University of
Freiburg, Department of Computer Science, 2013.

Definition at line 305 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.add_waypoint (   self,
  waypoint,
  add_to_beginning = False 
)
Add waypoint to the existing waypoint set. If no waypoint set has
been initialized, create new waypoint set structure and add the given
waypoint.

Definition at line 224 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.closest_waypoint (   self)
Return the closest waypoint to the current position on the path.

Definition at line 118 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.closest_waypoint_idx (   self)
`int`: Index of the closest waypoint to the current position on the
path.

Definition at line 123 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.generate_pnt (   self,
  t,
  pos,
  rot 
)
Return trajectory sample for the current parameter s.

Definition at line 342 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.generate_reference (   self,
  t,
  args 
)

Definition at line 416 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.get_interpolation_method (   self)

Definition at line 160 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.get_max_time (   self)
Return maximum trajectory time.

Definition at line 187 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.get_samples (   self,
  step = 0.005 
)
Return pose samples from the interpolated path.

Definition at line 246 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.get_visual_markers (   self)

Definition at line 163 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.get_waypoints (   self)
Return waypoint set.

Definition at line 230 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.init_waypoints (   self,
  waypoint_set,
  init_rot = (0, 0, 0, 1) 
)
Initialize the waypoint set.

Definition at line 218 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.interpolate (   self,
  t,
  args 
)

Definition at line 423 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.interpolator (   self)
`str`: Name of the interpolation method

Definition at line 130 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.interpolator_tags (   self)
List of `str`: List of all interpolation method

Definition at line 135 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.is_finished (   self)
Return true if the trajectory has finished.

Definition at line 202 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.is_full_dof (   self)
Return true if the trajectory is generated for all 6 degrees of
freedom.

Definition at line 181 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.reset (   self)
Reset all class attributes to allow a new trajectory to be
computed.

Definition at line 206 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.set_duration (   self,
  t 
)
Set a new maximum trajectory time.

Definition at line 191 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.set_interpolation_method (   self,
  method 
)

Definition at line 166 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.set_interpolator_parameters (   self,
  method,
  params 
)

Definition at line 175 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.set_start_time (   self,
  t 
)
Set a custom starting time to the interpolated trajectory.

Definition at line 251 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.stamped_pose_only (   self)
`bool`: Flag to enable computation of stamped poses

Definition at line 152 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.stamped_pose_only (   self,
  flag 
)

Definition at line 157 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.started (   self)
`bool`: Flag set to true if the interpolation has started.

Definition at line 113 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.update_dt (   self,
  t 
)
Update the time stamp.

Definition at line 234 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.use_finite_diff (   self)
`bool`: Use finite differentiation for computation of 
trajectory points

Definition at line 140 of file wp_trajectory_generator.py.

def uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator.use_finite_diff (   self,
  flag 
)

Definition at line 147 of file wp_trajectory_generator.py.

Member Data Documentation

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._cur_s
private

Definition at line 103 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._dt
private

Definition at line 69 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._has_ended
private

Definition at line 100 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._has_started
private

Definition at line 99 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._init_rot
private

Definition at line 105 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._interp_method
private

Definition at line 82 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._is_full_dof
private

Definition at line 86 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._last_pnt
private

Definition at line 73 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._last_t
private

Definition at line 71 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._logger
private

Definition at line 54 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._path_generators
private

Definition at line 62 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._regression_window
private

Definition at line 92 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._stamped_pose_only
private

Definition at line 77 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._t_step
private

Definition at line 79 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._this_pnt
private

Definition at line 74 of file wp_trajectory_generator.py.

uuv_trajectory_generator.wp_trajectory_generator.WPTrajectoryGenerator._use_finite_diff
private

Definition at line 90 of file wp_trajectory_generator.py.


The documentation for this class was generated from the following file:


uuv_trajectory_control
Author(s):
autogenerated on Thu Jun 18 2020 03:28:42