opspace::JPosTrjTask Class Reference

Joint-space posture trajectory task. More...

#include <task_library.hpp>

Inheritance diagram for opspace::JPosTrjTask:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 JPosTrjTask (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.
void quickSetup (double dt_seconds, double kp, double kd, double maxvel, double maxacc)


Detailed Description

Joint-space posture trajectory task.

Servos the joint position towards a desired posture using acceleration-bounded trajectories.

Parameters: inherited from TrajectoryTask.

Definition at line 361 of file task_library.hpp.


Constructor & Destructor Documentation

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

Definition at line 822 of file task_library.cpp.


Member Function Documentation

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

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

Here is the call graph for this function:

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

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

Here is the call graph for this function:

void opspace::JPosTrjTask::quickSetup ( double  dt_seconds,
double  kp,
double  kd,
double  maxvel,
double  maxacc 
)

Todo:
Maybe move this (or something similar) to the superclass?

Definition at line 846 of file task_library.cpp.

References opspace::TrajectoryTask::dt_seconds_, opspace::PDTask::kd_, opspace::PDTask::kp_, opspace::TrajectoryTask::maxacc_, and opspace::PDTask::maxvel_.


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