1#ifndef __PIDController_H
2#define __PIDController_H
44#include <fhsim/simobject/SimObject.h>
54 PIDController(
const std::string& simObjectName, ISimObjectCreator*
const creator);
55 virtual void OdeFcn(
const double T,
const double*
const X,
double*
const XDot)
const;
58 #ifdef FH_VISUALIZATION
60 virtual void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator){}
63 virtual void RenderUpdate(
const double T,
const double*
const X){}
67 const double*
Out(
const double T,
const double *
const X);
70 double m_ControlValue;
71 ISignalPort* m_InCurrent;
Definition PIDController.h:52
ISignalPort * m_InCurrentRate
Current position.
Definition PIDController.h:72
int m_IErrorIntegral
Desired position.
Definition PIDController.h:75
double m_LastTime
used in numerical differentiation
Definition PIDController.h:79
void AcceptedStep(double T, const double *X) override
returns object derivatives as a function of time, states and input ports
double m_CurrentNumericalDerivative
The relative index of the StatePositionErrorSum state in the state array.
Definition PIDController.h:77
const double * Out(const double T, const double *const X)
updates the numerical derivative of Current, with Differentiation="Numerical"
virtual void OdeFcn(const double T, const double *const X, double *const XDot) const
reads parameters, registers states, input/output ports and shared resources
ISignalPort * m_InDesired
Current position.
Definition PIDController.h:73
ISignalPort * m_InDesiredRate
Desired position.
Definition PIDController.h:74
Simple waypoint object.
Definition CableAttach.h:58