opspace::CartPosTrjTask Class Reference

Cartesian position trajectory task. More...

#include <task_library.hpp>

Inheritance diagram for opspace::CartPosTrjTask:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 CartPosTrjTask (std::string const &name)
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.

Protected Member Functions

taoDNode const * updateActual (Model const &model)

Protected Attributes

int end_effector_id_
Vector control_point_


Detailed Description

Cartesian position trajectory task.

Servos a control point, specified with respect to a given end_effector link, to the goal position.

Note:
This task is always three dimensional.
Parameters (see also TrajectoryTask for inherited parameters):

Definition at line 337 of file task_library.hpp.


Constructor & Destructor Documentation

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

Definition at line 758 of file task_library.cpp.

References control_point_, opspace::ParameterReflection::declareParameter(), end_effector_id_, and opspace::PARAMETER_FLAG_NOLOG.

Here is the call graph for this function:


Member Function Documentation

Status opspace::CartPosTrjTask::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 769 of file task_library.cpp.

References opspace::Task::actual_, control_point_, end_effector_id_, opspace::TrajectoryTask::initTrajectoryTask(), and updateActual().

Here is the call graph for this function:

Status opspace::CartPosTrjTask::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 785 of file task_library.cpp.

References opspace::Task::actual_, opspace::Task::command_, jspace::Model::computeJacobian(), opspace::TrajectoryTask::computeTrajectoryCommand(), jspace::Model::getState(), opspace::Task::jacobian_, and updateActual().

Here is the call graph for this function:

taoDNode const * opspace::CartPosTrjTask::updateActual ( Model const &  model  )  [protected]

Definition at line 805 of file task_library.cpp.

References opspace::Task::actual_, jspace::Model::computeGlobalFrame(), control_point_, end_effector_id_, and jspace::Model::getNode().

Referenced by init(), and update().

Here is the call graph for this function:


Member Data Documentation

int opspace::CartPosTrjTask::end_effector_id_ [protected]

Definition at line 347 of file task_library.hpp.

Referenced by CartPosTrjTask(), init(), and updateActual().

Vector opspace::CartPosTrjTask::control_point_ [protected]

Definition at line 348 of file task_library.hpp.

Referenced by CartPosTrjTask(), init(), and updateActual().


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