skid4_control
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends | List of all members
skid4_control::SoftTurnController Class Reference

#include <SoftTurnController.hpp>

Inheritance diagram for skid4_control::SoftTurnController:

Public Member Functions

 SoftTurnController (std::string const &name="skid4_control::SoftTurnController")
 
 ~SoftTurnController ()
 
bool configureHook ()
 The following lines are template definitions for the various state machine. More...
 
void updateHook ()
 

Protected Types

enum  State { FORWARD, BACKWARD }
 

Protected Member Functions

double leftController (double wantedSpeed, const base::samples::Joints &status)
 
double rightController (double wantedSpeed, const base::samples::Joints &status)
 
double getSpeed (const base::samples::Joints &status, const std::vector< std::string > &joints)
 

Protected Attributes

double turnSpeed
 
double translationalSpeed
 
State state
 
double turnVariance
 maximum allowed displacement while turning More...
 
double Kp
 PID Configuration. More...
 
double Ki
 
double Kd
 
double N
 
double B
 
double Tt
 
double YMin
 
double YMax
 
motor_controller::PID leftPid
 
motor_controller::PID rightPid
 
base::samples::Joints lastStatus
 
base::samples::Joints startStatus
 

Friends

class SoftTurnControllerBase
 

Member Enumeration Documentation

Enumerator
FORWARD 
BACKWARD 

Constructor & Destructor Documentation

SoftTurnController::SoftTurnController ( std::string const &  name = "skid4_control::SoftTurnController")
SoftTurnController::~SoftTurnController ( )

Member Function Documentation

bool SoftTurnController::configureHook ( )

The following lines are template definitions for the various state machine.

This hook is called by Orocos when the state machine transitions from PreOperational to Stopped. If it returns false, then the component will stay in PreOperational. Otherwise, it goes into Stopped.

It is meaningful only if the #needs_configuration has been specified in the task context definition with (for example):

task_context "TaskName" do needs_configuration ... end

maximum allowed displacement while turning

double SoftTurnController::getSpeed ( const base::samples::Joints &  status,
const std::vector< std::string > &  joints 
)
protected
double SoftTurnController::leftController ( double  wantedSpeed,
const base::samples::Joints &  status 
)
protected
double SoftTurnController::rightController ( double  wantedSpeed,
const base::samples::Joints &  status 
)
protected
void SoftTurnController::updateHook ( )

This hook is called by Orocos when the state machine transitions from Stopped to Running. If it returns false, then the component will stay in Stopped. Otherwise, it goes into Running and updateHook() will be called. This hook is called by Orocos when the component is in the Running state, at each activity step. Here, the activity gives the "ticks" when the hook should be called.

The error(), exception() and fatal() calls, when called in this hook, allow to get into the associated RunTimeError, Exception and FatalError states.

In the first case, updateHook() is still called, and recover() allows you to go back into the Running state. In the second case, the errorHook() will be called instead of updateHook(). In Exception, the component is stopped and recover() needs to be called before starting it again. Finally, FatalError cannot be recovered.

Friends And Related Function Documentation

friend class SoftTurnControllerBase
friend

Member Data Documentation

double skid4_control::SoftTurnController::B
protected
double skid4_control::SoftTurnController::Kd
protected
double skid4_control::SoftTurnController::Ki
protected
double skid4_control::SoftTurnController::Kp
protected

PID Configuration.

base::samples::Joints skid4_control::SoftTurnController::lastStatus
protected
motor_controller::PID skid4_control::SoftTurnController::leftPid
protected
double skid4_control::SoftTurnController::N
protected
motor_controller::PID skid4_control::SoftTurnController::rightPid
protected
base::samples::Joints skid4_control::SoftTurnController::startStatus
protected
State skid4_control::SoftTurnController::state
protected
double skid4_control::SoftTurnController::translationalSpeed
protected
double skid4_control::SoftTurnController::Tt
protected
double skid4_control::SoftTurnController::turnSpeed
protected
double skid4_control::SoftTurnController::turnVariance
protected

maximum allowed displacement while turning

double skid4_control::SoftTurnController::YMax
protected
double skid4_control::SoftTurnController::YMin
protected

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