Public Member Functions | Static Public Member Functions | Public Attributes | Private Attributes | List of all members
mvsim::DynamicsDifferential::ControllerTwistPID Class Reference

#include <VehicleDifferential.h>

Inheritance diagram for mvsim::DynamicsDifferential::ControllerTwistPID:
Inheritance graph
[legend]

Public Member Functions

virtual void control_step (const DynamicsDifferential::TControllerInput &ci, DynamicsDifferential::TControllerOutput &co) override
 
 ControllerTwistPID (DynamicsDifferential &veh)
 
virtual void load_config (const rapidxml::xml_node< char > &node) override
 
virtual bool setTwistCommand (const double vx, const double wz) override
 
virtual void teleop_interface (const TeleopInput &in, TeleopOutput &out) override
 
- Public Member Functions inherited from mvsim::ControllerBaseTempl< VEH_DYNAMICS >
virtual void clearLogs ()
 
virtual void control_step (const typename VEH_DYNAMICS::TControllerInput &ci, typename VEH_DYNAMICS::TControllerOutput &co)=0
 
 ControllerBaseTempl (VEH_DYNAMICS &veh)
 
virtual void newLogSession ()
 
virtual void setLogRecording (bool recording)
 
virtual ~ControllerBaseTempl ()
 

Static Public Member Functions

static const char * class_name ()
 

Public Attributes

double KD
 PID controller parameters. More...
 
double KI
 
double KP
 
double max_torque
 Maximum abs. value torque (for clamp) [Nm]. More...
 
double setpoint_ang_speed
 desired velocities (m/s) and (rad/s) More...
 
double setpoint_lin_speed
 

Private Attributes

double m_distWheels
 
PID_Controller m_PID [2]
 

Additional Inherited Members

- Protected Attributes inherited from mvsim::ControllerBaseTempl< VEH_DYNAMICS >
VEH_DYNAMICS & m_veh
 

Detailed Description

PID controller that controls the vehicle twist: linear & angular velocities

Definition at line 71 of file VehicleDifferential.h.

Constructor & Destructor Documentation

DynamicsDifferential::ControllerTwistPID::ControllerTwistPID ( DynamicsDifferential veh)

Definition at line 16 of file VehicleDifferential_ControllerTwistPID.cpp.

Member Function Documentation

static const char* mvsim::DynamicsDifferential::ControllerTwistPID::class_name ( )
inlinestatic

Directly set these values to tell the controller the desired setpoints

Definition at line 75 of file VehicleDifferential.h.

void DynamicsDifferential::ControllerTwistPID::control_step ( const DynamicsDifferential::TControllerInput ci,
DynamicsDifferential::TControllerOutput co 
)
overridevirtual

Definition at line 33 of file VehicleDifferential_ControllerTwistPID.cpp.

void DynamicsDifferential::ControllerTwistPID::load_config ( const rapidxml::xml_node< char > &  node)
overridevirtual

Override to load class-specific options from the <controller> node

Reimplemented from mvsim::ControllerBaseTempl< VEH_DYNAMICS >.

Definition at line 68 of file VehicleDifferential_ControllerTwistPID.cpp.

virtual bool mvsim::DynamicsDifferential::ControllerTwistPID::setTwistCommand ( const double  vx,
const double  wz 
)
inlineoverridevirtual

Accept a Twist command.

Returns
true if the controller supports this kind of commands, false otherwise

Reimplemented from mvsim::ControllerBaseInterface.

Definition at line 90 of file VehicleDifferential.h.

void DynamicsDifferential::ControllerTwistPID::teleop_interface ( const TeleopInput in,
TeleopOutput out 
)
overridevirtual

This is to handle basic need of all the controllers.

Reimplemented from mvsim::ControllerBaseTempl< VEH_DYNAMICS >.

Definition at line 84 of file VehicleDifferential_ControllerTwistPID.cpp.

Member Data Documentation

double mvsim::DynamicsDifferential::ControllerTwistPID::KD

PID controller parameters.

Definition at line 87 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::KI

Definition at line 87 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::KP

Definition at line 87 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::m_distWheels
private

Definition at line 98 of file VehicleDifferential.h.

PID_Controller mvsim::DynamicsDifferential::ControllerTwistPID::m_PID[2]
private

Definition at line 99 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::max_torque

Maximum abs. value torque (for clamp) [Nm].

Definition at line 88 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::setpoint_ang_speed

desired velocities (m/s) and (rad/s)

Definition at line 78 of file VehicleDifferential.h.

double mvsim::DynamicsDifferential::ControllerTwistPID::setpoint_lin_speed

Definition at line 78 of file VehicleDifferential.h.


The documentation for this class was generated from the following files:


mvsim
Author(s):
autogenerated on Fri May 7 2021 03:05:52