nAxesControllerPos Class Reference
[The Joint Control Components]

This component can control the positions of multiple axes. More...

#include <nAxesControllerPos.hpp>

List of all members.

Public Member Functions

 nAxesControllerPos (std::string name)
 Constructor of the class.
virtual bool configureHook ()
 Configures the component, make sure the properties are updated using the OCL::DeploymentComponent or the marshalling interface of the component.
virtual bool startHook ()
 Starts the component.
virtual void updateHook ()
 Updates the output using the control equation, the measured and the desired position.
virtual void stopHook ()

Protected Attributes

RTT::Command< bool(double, int)> measureOffset
 Command to measure a velocity offset on the axes.
RTT::ReadDataPort< std::vector
< double > > 
p_meas_port
 The measured positions.
RTT::ReadDataPort< std::vector
< double > > 
p_desi_port
 The desired positions.
RTT::WriteDataPort
< std::vector< double > > 
v_out_port
 The output velocities.
RTT::Attribute< std::vector
< double > > 
offset_attr
 Attribute containing the calculated offsets after executing the measureOffset Command.
RTT::Property< std::vector
< double > > 
gain_prop
 The control gain values for the axes.
RTT::Property< unsigned int > num_axes_prop
 The number of axes to configure the components with.

Detailed Description

This component can control the positions of multiple axes.

It uses a simple position-feedback to calculate an output velocity. velocity_out = K_gain * ( position_desired - position_measured)

The initial state of the component is PreOperational

Definition at line 46 of file nAxesControllerPos.hpp.


Constructor & Destructor Documentation

nAxesControllerPos ( std::string  name  ) 

Member Function Documentation

bool configureHook (  )  [virtual]

Configures the component, make sure the properties are updated using the OCL::DeploymentComponent or the marshalling interface of the component.

The number of axes and the control gains are updated.

Returns:
false if the gains property does not match the number of axes, true otherwise

Definition at line 67 of file nAxesControllerPos.cpp.

References nAxesControllerPos::gain_prop, nAxesControllerPos::num_axes_prop, nAxesControllerPos::offset_attr, and nAxesControllerPos::v_out_port.

bool startHook (  )  [virtual]

Starts the component.

Returns:
failes if the input-ports are not ready or the size of the input-ports does not match the number of axes this component is configured for.

Definition at line 94 of file nAxesControllerPos.cpp.

References nAxesControllerPos::p_desi_port, and nAxesControllerPos::p_meas_port.


Member Data Documentation

RTT::Command<bool(double,int)> measureOffset [protected]

Command to measure a velocity offset on the axes.

The idea is to keep the robot at the same position. If a velocity output is needed to do this, this is the offset you need on your axes output. The command stops after the measurement.

Parameters:
treshold_moving duration of the measurement
num_samples number of samples.
Returns:
false if still measurering, true otherwise

Definition at line 103 of file nAxesControllerPos.hpp.

Referenced by nAxesControllerPos::nAxesControllerPos().


The documentation for this class was generated from the following files:
Generated on Thu Dec 23 15:05:29 2010 for OrocosComponentLibrary by  doxygen 1.6.3