opspace::DraftPIDTask Class Reference

#include <task_library.hpp>

Inheritance diagram for opspace::DraftPIDTask:

Inheritance graph
[legend]
Collaboration diagram for opspace::DraftPIDTask:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 DraftPIDTask (std::string const &name)
virtual Status check (double const *param, double value) const
 Default implementation always returns succes.
virtual Status check (Vector const *param, Vector const &value) const
 Verifies that kp, kd, and maxvel are non-negative.
virtual Status init (Model const &model)
 Abstract, implemented by subclasses in order to initialize the task.
virtual Status update (Model const &model)
 Abstract, implemented by subclasses in order to compute the current task state, the command acceleration, and the Jacobian.
virtual void dbg (std::ostream &os, std::string const &title, std::string const &prefix) const

Protected Member Functions

Status initDraftPIDTask (Vector const &initpos)
Status computeDraftPIDCommand (Vector const &curpos, Vector const &curvel, Vector &command)

Protected Attributes

double dt_seconds_
Vector ki_
Vector errsum_
Vector limitpos_
Vector limitvel_
Vector triggerpos_


Detailed Description

Definition at line 134 of file task_library.hpp.


Constructor & Destructor Documentation

opspace::DraftPIDTask::DraftPIDTask ( std::string const &  name  )  [explicit]

Definition at line 207 of file task_library.cpp.

References opspace::ParameterReflection::declareParameter(), dt_seconds_, errsum_, ki_, limitpos_, limitvel_, opspace::PARAMETER_FLAG_NOLOG, and triggerpos_.

Here is the call graph for this function:


Member Function Documentation

Status opspace::DraftPIDTask::check ( double const *  param,
double  value 
) const [virtual]

Default implementation always returns succes.

Reimplemented from opspace::ParameterReflection.

Definition at line 221 of file task_library.cpp.

References dt_seconds_.

Status opspace::DraftPIDTask::check ( Vector const *  param,
Vector const &  value 
) const [virtual]

Verifies that kp, kd, and maxvel are non-negative.

If initialized, also verifies the vector dimension for kp, kd, maxvel, goalpos, and goalvel.

Returns:
Failure if any of the mentioned checks fail, and success otherwise.

Reimplemented from opspace::PDTask.

Definition at line 233 of file task_library.cpp.

References errsum_, opspace::PDTask::goalpos_, opspace::PDTask::initialized_, ki_, limitpos_, limitvel_, and triggerpos_.

Status opspace::DraftPIDTask::init ( Model const &  model  )  [virtual]

Abstract, implemented by subclasses in order to initialize the task.

This is important for stateful tasks, for instance in order to initialize a trajectory-following behavior. The init() method also gets called when tasks are switched at runtime, so subclasses should NOT assume that init() only gets called once at startup.

Implements opspace::Task.

Definition at line 367 of file task_library.cpp.

References opspace::Task::actual_, jspace::Model::getNDOF(), jspace::Model::getState(), initDraftPIDTask(), and opspace::Task::jacobian_.

Here is the call graph for this function:

Status opspace::DraftPIDTask::update ( Model const &  model  )  [virtual]

Abstract, implemented by subclasses in order to compute the current task state, the command acceleration, and the Jacobian.

Given the current joint-space model passed as argument to this method, subclasses have to set the actual_, command_, and jacobian_ fields. These will then get retrieved according to the task hierarchy and assembled into joint torque commands using dynamically consistent nullspace projection.

Note:
Make sure your subclass sets the actual_, command_, and jacobian_ fields in the implementation of this method.

Implements opspace::Task.

Definition at line 376 of file task_library.cpp.

References opspace::Task::actual_, opspace::Task::command_, computeDraftPIDCommand(), and jspace::Model::getState().

Here is the call graph for this function:

void opspace::DraftPIDTask::dbg ( std::ostream &  os,
std::string const &  title,
std::string const &  prefix 
) const [virtual]

Reimplemented from opspace::Task.

Definition at line 386 of file task_library.cpp.

References opspace::PDTask::errpos_, errsum_, opspace::ParameterReflection::instance_name_, ki_, jspace::pretty_print(), and triggerpos_.

Here is the call graph for this function:

Status opspace::DraftPIDTask::initDraftPIDTask ( Vector const &  initpos  )  [protected]

Definition at line 258 of file task_library.cpp.

References dt_seconds_, errsum_, opspace::PDTask::initPDTask(), ki_, limitpos_, limitvel_, and triggerpos_.

Referenced by init().

Here is the call graph for this function:

Status opspace::DraftPIDTask::computeDraftPIDCommand ( Vector const &  curpos,
Vector const &  curvel,
Vector &  command 
) [protected]

Definition at line 318 of file task_library.cpp.

References opspace::PDTask::computePDCommand(), dt_seconds_, opspace::PDTask::errpos_, errsum_, opspace::PDTask::errvel_, ki_, limitpos_, limitvel_, and triggerpos_.

Referenced by update().

Here is the call graph for this function:


Member Data Documentation

double opspace::DraftPIDTask::dt_seconds_ [protected]

Definition at line 157 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), DraftPIDTask(), and initDraftPIDTask().

Vector opspace::DraftPIDTask::ki_ [protected]

Definition at line 158 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), dbg(), DraftPIDTask(), and initDraftPIDTask().

Vector opspace::DraftPIDTask::errsum_ [protected]

Definition at line 159 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), dbg(), DraftPIDTask(), and initDraftPIDTask().

Vector opspace::DraftPIDTask::limitpos_ [protected]

Definition at line 160 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), DraftPIDTask(), and initDraftPIDTask().

Vector opspace::DraftPIDTask::limitvel_ [protected]

Definition at line 161 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), DraftPIDTask(), and initDraftPIDTask().

Vector opspace::DraftPIDTask::triggerpos_ [protected]

Definition at line 162 of file task_library.hpp.

Referenced by check(), computeDraftPIDCommand(), dbg(), DraftPIDTask(), and initDraftPIDTask().


The documentation for this class was generated from the following files:
Generated on Fri Aug 26 01:35:00 2011 for Stanford Whole-Body Control Framework by  doxygen 1.5.4