This component can control the velocities of multiple axes. More...
#include <nAxesControllerVel.hpp>
Public Member Functions | |
| nAxesControllerVel (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::Method< void(void)> | reset_all_mtd |
| Method to reset the controller of all axes. | |
| RTT::Method< void(int)> | resetAxis_mtd |
| Method to reset the controller of axis. | |
|
RTT::ReadDataPort< std::vector < double > > | p_m_port |
| The measured positions. | |
|
RTT::ReadDataPort< std::vector < double > > | v_d_port |
| The desired velocities. | |
|
RTT::WriteDataPort < std::vector< double > > | v_out_port |
| The calculated output velocities. | |
|
RTT::Property< std::vector < double > > | gain_prop |
| The control gain value for each axis. | |
| RTT::Property< unsigned int > | num_axes_prop |
| The number of axes to configure the components with. | |
This component can control the velocities of multiple axes.
It uses a simple position-feedback and velocity feedforward to calculate an output velocity. velocity_out = K_gain * ( position_desired - position_measured) + velocity_desired. The desired position is calculated by integrating the desired velocity
The initial state of the component is PreOperational
Definition at line 46 of file nAxesControllerVel.hpp.
| nAxesControllerVel | ( | std::string | name | ) |
Constructor of the class.
| name | name of the TaskContext |
Definition at line 31 of file nAxesControllerVel.cpp.
References nAxesControllerVel::gain_prop, nAxesControllerVel::num_axes_prop, nAxesControllerVel::p_m_port, nAxesControllerVel::reset_all_mtd, nAxesControllerVel::resetAxis_mtd, nAxesControllerVel::v_d_port, and nAxesControllerVel::v_out_port.
| 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.
Definition at line 62 of file nAxesControllerVel.cpp.
References nAxesControllerVel::gain_prop, nAxesControllerVel::num_axes_prop, and nAxesControllerVel::v_out_port.
| bool startHook | ( | ) | [virtual] |
Starts the component.
Definition at line 89 of file nAxesControllerVel.cpp.
References nAxesControllerVel::p_m_port, and nAxesControllerVel::v_d_port.
RTT::Method<void(int)> resetAxis_mtd [protected] |
Method to reset the controller of axis.
| axis | axis controller to be reset |
Definition at line 98 of file nAxesControllerVel.hpp.
Referenced by nAxesControllerVel::nAxesControllerVel().
1.6.3