![]() |
RobWorkProject
25.2.11-
|
a JointController that use a PD loop on each joint to control the velocity such that the position target is reached. More...
#include <PoseController.hpp>
Inherits Controller, and SimulatedController.
Public Types | |
typedef rw::core::Ptr< PoseController > | Ptr |
smart pointer type | |
![]() | |
typedef rw::core::Ptr< Controller > | Ptr |
smart poiner definition for controller | |
![]() | |
typedef rw::core::Ptr< SimulatedController > | Ptr |
smart pointer type of this class | |
![]() | |
typedef rw::core::Ptr< Stateless > | Ptr |
Smart pointer type to a Stateless. | |
typedef rw::core::Ptr< const Stateless > | CPtr |
Smart pointer type to a constant Stateless. | |
Public Member Functions | |
PoseController (const std::string &name, rw::core::Ptr< rwsim::dynamics::DynamicDevice > rdev, const rw::kinematics::State &state, double dt) | |
constructor More... | |
PoseController (const std::string &name, rw::core::Ptr< rwsim::dynamics::DynamicDevice > rdev, const rw::kinematics::State &state, double dt, rw::core::Ptr< rw::kinematics::Frame > endframe) | |
constructor More... | |
virtual | ~PoseController () |
destructor | |
double | getSampleTime () |
the time between samples More... | |
void | setSampleTime (double stime) |
set the time between samples in seconds More... | |
void | update (const rwlibs::simulation::Simulator::UpdateInfo &info, rw::kinematics::State &state) |
updates/steps the controller with time step dt. It will update the state state accordingly More... | |
void | reset (const rw::kinematics::State &state) |
reset the controller to the applied state More... | |
Controller * | getController () |
get the name of this controller More... | |
std::string | getControllerName () |
get the name of this controller More... | |
rw::core::Ptr< rw::models::Device > | getControlledDevice () |
get the device that is controlled by this controller More... | |
void | setEnabled (bool enabled) |
disable or enable this controller More... | |
bool | isEnabled () const |
true if this controller is enabled More... | |
void | setTarget (const rw::math::Transform3D<> &target) |
sets the target joint value for the current control mode. More... | |
void | setTarget (const rw::math::Transform3D<> &target, const rw::math::VelocityScrew6D<> &vals) |
sets target which is a cartesean position and the target velocity in that position More... | |
rwlibs::control::Controller::Ptr | getControllerHandle (rwlibs::simulation::Simulator::Ptr sim) |
![]() | |
virtual | ~Controller () |
destructor | |
const std::string & | getName () const |
get the unique name of this controller More... | |
void | setName (const std::string &name) |
set the name of the controller More... | |
![]() | |
virtual rw::core::Ptr< rwlibs::control::Controller > | getControllerHandle (rw::core::Ptr< rwlibs::simulation::Simulator > sim)=0 |
get the controller handle eg. statefull handle, associated with this simulated controller More... | |
rw::core::Ptr< rw::models::ControllerModel > | getControllerModel () |
get the controllermodel of this simulated controller More... | |
![]() | |
virtual | ~Stateless () |
destructor | |
virtual void | registerIn (State &state) |
initialize this stateless data to a specific state More... | |
virtual void | registerIn (StateStructure::Ptr state) |
register this stateless object in a statestructure. | |
virtual void | unregister () |
unregisters all state data of this stateless object | |
StateStructure::Ptr | getStateStructure () |
Get the state structure. More... | |
const StateStructure::Ptr | getStateStructure () const |
Get the state structure. More... | |
bool | isRegistered () |
Check if object has registered its state. More... | |
Additional Inherited Members | |
![]() | |
Controller (const std::string &name) | |
constructor More... | |
![]() | |
SimulatedController (rw::models::ControllerModel::Ptr model) | |
Constructor. More... | |
![]() | |
Stateless () | |
constructor | |
template<class T > | |
void | add (StatelessData< T > &data) |
implementations of sensor should add all their stateless data on initialization | |
void | add (StateData *data) |
Add data. More... | |
void | add (rw::core::Ptr< StateData > data) |
implementations of sensor should add all their state data on initialization | |
![]() | |
bool | _registered |
True if object has registered its state. | |
std::vector< rw::core::Ptr< StateData > > | _datas |
Data. | |
StateStructure::Ptr | _stateStruct |
The state structure. | |
a JointController that use a PD loop on each joint to control the velocity such that the position target is reached.
PoseController | ( | const std::string & | name, |
rw::core::Ptr< rwsim::dynamics::DynamicDevice > | rdev, | ||
const rw::kinematics::State & | state, | ||
double | dt | ||
) |
constructor
name | |
rdev | [in] device that is to be controlled |
state | [in] target state |
dt | [in] the sampletime (time between samples in seconds) used in the control loop, this should be larger than the expected update sample time. |
PoseController | ( | const std::string & | name, |
rw::core::Ptr< rwsim::dynamics::DynamicDevice > | rdev, | ||
const rw::kinematics::State & | state, | ||
double | dt, | ||
rw::core::Ptr< rw::kinematics::Frame > | endframe | ||
) |
constructor
name | |
rdev | [in] device that is to be controlled |
state | [in] target state |
dt | [in] the sampletime (time between samples in seconds) used in the control loop, this should be larger than the expected update sample time. |
endframe |
|
inline |
get the device that is controlled by this controller
|
inline |
get the name of this controller
|
inlinevirtual |
double getSampleTime | ( | ) |
the time between samples
|
inlinevirtual |
|
virtual |
reset the controller to the applied state
state | [in] the state to reset to |
Implements SimulatedController.
|
inlinevirtual |
void setSampleTime | ( | double | stime | ) |
set the time between samples in seconds
stime | [in] sample time |
void setTarget | ( | const rw::math::Transform3D<> & | target | ) |
sets the target joint value for the current control mode.
void setTarget | ( | const rw::math::Transform3D<> & | target, |
const rw::math::VelocityScrew6D<> & | vals | ||
) |
sets target which is a cartesean position and the target velocity in that position
target | |
vals |
|
virtual |
updates/steps the controller with time step dt. It will update the state state accordingly
info | [in] update information related to the time step. |
state | [in/out] the current state |
Implements SimulatedController.