Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
youbot::JointTrajectoryController Class Reference

Joint Trajectory Controller. More...

#include <JointTrajectoryController.hpp>

Public Member Functions

void cancelCurrentTrajectory ()
 
void getConfigurationParameter (double &PParameter, double &IParameter, double &DParameter, double &IClippingMax, double &IClippingMin)
 
void getLastTargetPosition (JointAngleSetpoint &position)
 
void getLastTargetVelocity (JointVelocitySetpoint &velocity)
 
bool isTrajectoryControllerActive ()
 
 JointTrajectoryController ()
 
void setConfigurationParameter (const double PParameter, const double IParameter, const double DParameter, const double IClippingMax, const double IClippingMin)
 
void setEncoderTicksPerRound (const int &encoderTicks)
 
void setGearRatio (const double &ratio)
 
void setInverseMovementDirection (const bool invDirection)
 
void setTrajectory (const JointTrajectory &input_traj)
 
bool updateTrajectoryController (const SlaveMessageInput &actual, SlaveMessageOutput &velocity)
 
virtual ~JointTrajectoryController ()
 

Private Types

typedef std::vector< SegmentSpecifiedTrajectory
 

Private Member Functions

void generatePowers (const int n, const double x, double *powers)
 
void getCubicSplineCoefficients (const double start_pos, const double start_vel, const double end_pos, const double end_vel, const double time, std::vector< double > &coefficients)
 
void getQuinticSplineCoefficients (const double start_pos, const double start_vel, const double start_acc, const double end_pos, const double end_vel, const double end_acc, const double time, std::vector< double > &coefficients)
 
 JointTrajectoryController (const JointTrajectoryController &source)
 
JointTrajectoryControlleroperator= (const JointTrajectoryController &source)
 
void sampleQuinticSpline (const std::vector< double > &coefficients, const double time, double &position, double &velocity, double &acceleration)
 
void sampleSplineWithTimeBounds (const std::vector< double > &coefficients, const double duration, const double time, double &position, double &velocity, double &acceleration)
 

Private Attributes

double actualpose
 
double actualvel
 
DataObjectLockFree< boost::shared_ptr< const SpecifiedTrajectory > > current_trajectory_box_
 
double duration
 
int encoderTicksPerRound
 
double gearRatio
 
bool inverseDirection
 
bool isControllerActive
 
boost::posix_time::ptime last_time
 
PidController pid
 
double pose_error
 
double targetAcceleration
 
double targetPosition
 
double targetVelocity
 
boost::posix_time::ptime time
 
double time_till_seg_start
 
double velocity_error
 
double velsetpoint
 

Detailed Description

Joint Trajectory Controller.

Definition at line 90 of file JointTrajectoryController.hpp.

Member Typedef Documentation

Definition at line 146 of file JointTrajectoryController.hpp.

Constructor & Destructor Documentation

youbot::JointTrajectoryController::JointTrajectoryController ( )

Definition at line 56 of file JointTrajectoryController.cpp.

youbot::JointTrajectoryController::~JointTrajectoryController ( )
virtual

Definition at line 83 of file JointTrajectoryController.cpp.

youbot::JointTrajectoryController::JointTrajectoryController ( const JointTrajectoryController source)
private

Member Function Documentation

void youbot::JointTrajectoryController::cancelCurrentTrajectory ( )

Definition at line 253 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::generatePowers ( const int  n,
const double  x,
double *  powers 
)
private

Definition at line 424 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::getConfigurationParameter ( double &  PParameter,
double &  IParameter,
double &  DParameter,
double &  IClippingMax,
double &  IClippingMin 
)

Definition at line 88 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::getCubicSplineCoefficients ( const double  start_pos,
const double  start_vel,
const double  end_pos,
const double  end_vel,
const double  time,
std::vector< double > &  coefficients 
)
private

Definition at line 403 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::getLastTargetPosition ( JointAngleSetpoint position)

Definition at line 339 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::getLastTargetVelocity ( JointVelocitySetpoint velocity)

Definition at line 345 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::getQuinticSplineCoefficients ( const double  start_pos,
const double  start_vel,
const double  start_acc,
const double  end_pos,
const double  end_vel,
const double  end_acc,
const double  time,
std::vector< double > &  coefficients 
)
private

Definition at line 349 of file JointTrajectoryController.cpp.

bool youbot::JointTrajectoryController::isTrajectoryControllerActive ( )

Definition at line 264 of file JointTrajectoryController.cpp.

JointTrajectoryController& youbot::JointTrajectoryController::operator= ( const JointTrajectoryController source)
private
void youbot::JointTrajectoryController::sampleQuinticSpline ( const std::vector< double > &  coefficients,
const double  time,
double &  position,
double &  velocity,
double &  acceleration 
)
private

Definition at line 377 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::sampleSplineWithTimeBounds ( const std::vector< double > &  coefficients,
const double  duration,
const double  time,
double &  position,
double &  velocity,
double &  acceleration 
)
private

Definition at line 433 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::setConfigurationParameter ( const double  PParameter,
const double  IParameter,
const double  DParameter,
const double  IClippingMax,
const double  IClippingMin 
)

Definition at line 96 of file JointTrajectoryController.cpp.

void youbot::JointTrajectoryController::setEncoderTicksPerRound ( const int &  encoderTicks)
inline

Definition at line 122 of file JointTrajectoryController.hpp.

void youbot::JointTrajectoryController::setGearRatio ( const double &  ratio)
inline

Definition at line 120 of file JointTrajectoryController.hpp.

void youbot::JointTrajectoryController::setInverseMovementDirection ( const bool  invDirection)
inline

Definition at line 124 of file JointTrajectoryController.hpp.

void youbot::JointTrajectoryController::setTrajectory ( const JointTrajectory input_traj)

Definition at line 104 of file JointTrajectoryController.cpp.

bool youbot::JointTrajectoryController::updateTrajectoryController ( const SlaveMessageInput actual,
SlaveMessageOutput velocity 
)

Definition at line 268 of file JointTrajectoryController.cpp.

Member Data Documentation

double youbot::JointTrajectoryController::actualpose
private

Definition at line 170 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::actualvel
private

Definition at line 171 of file JointTrajectoryController.hpp.

DataObjectLockFree< boost::shared_ptr<const SpecifiedTrajectory> > youbot::JointTrajectoryController::current_trajectory_box_
private

Definition at line 148 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::duration
private

Definition at line 169 of file JointTrajectoryController.hpp.

int youbot::JointTrajectoryController::encoderTicksPerRound
private

Definition at line 156 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::gearRatio
private

Definition at line 158 of file JointTrajectoryController.hpp.

bool youbot::JointTrajectoryController::inverseDirection
private

Definition at line 160 of file JointTrajectoryController.hpp.

bool youbot::JointTrajectoryController::isControllerActive
private

Definition at line 138 of file JointTrajectoryController.hpp.

boost::posix_time::ptime youbot::JointTrajectoryController::last_time
private

Definition at line 144 of file JointTrajectoryController.hpp.

PidController youbot::JointTrajectoryController::pid
private

Definition at line 140 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::pose_error
private

Definition at line 162 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::targetAcceleration
private

Definition at line 154 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::targetPosition
private

Definition at line 150 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::targetVelocity
private

Definition at line 152 of file JointTrajectoryController.hpp.

boost::posix_time::ptime youbot::JointTrajectoryController::time
private

Definition at line 142 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::time_till_seg_start
private

Definition at line 168 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::velocity_error
private

Definition at line 164 of file JointTrajectoryController.hpp.

double youbot::JointTrajectoryController::velsetpoint
private

Definition at line 166 of file JointTrajectoryController.hpp.


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


youbot_driver
Author(s): Jan Paulus
autogenerated on Mon Jun 10 2019 15:46:27