Skyward boardcore
Loading...
Searching...
No Matches
Boardcore::PIController Class Reference

Proportional and integral controller with saturation. More...

#include <PIController.h>

Public Member Functions

 PIController (float Kp, float Ki, float Ts=1, float uMin=-std::numeric_limits< float >::infinity(), float uMax=std::numeric_limits< float >::infinity())
 
float update (float error)
 Update the PI internal state.
 
float antiWindUp (float u)
 
float antiWindUp (float u, float uMin, float uMax)
 Anti-windup mechanism.
 
float getI ()
 
float getLastOutput ()
 
bool isSaturated ()
 

Public Attributes

float Kp
 
float Ki
 
float Ts
 
float uMin
 
float uMax
 

Detailed Description

Proportional and integral controller with saturation.

Definition at line 33 of file PIController.h.

Constructor & Destructor Documentation

◆ PIController()

Boardcore::PIController::PIController ( float Kp,
float Ki,
float Ts = 1,
float uMin = -std::numeric_limits<float>::infinity(),
float uMax = std::numeric_limits<float>::infinity() )
inline

Definition at line 36 of file PIController.h.

Member Function Documentation

◆ antiWindUp() [1/2]

float Boardcore::PIController::antiWindUp ( float u)
inline

Definition at line 57 of file PIController.h.

◆ antiWindUp() [2/2]

float Boardcore::PIController::antiWindUp ( float u,
float uMin,
float uMax )
inline

Anti-windup mechanism.

Definition at line 62 of file PIController.h.

◆ getI()

float Boardcore::PIController::getI ( )
inline

Definition at line 82 of file PIController.h.

◆ getLastOutput()

float Boardcore::PIController::getLastOutput ( )
inline

Definition at line 84 of file PIController.h.

◆ isSaturated()

bool Boardcore::PIController::isSaturated ( )
inline

Definition at line 86 of file PIController.h.

◆ update()

float Boardcore::PIController::update ( float error)
inline

Update the PI internal state.

Definition at line 46 of file PIController.h.

Member Data Documentation

◆ Ki

float Boardcore::PIController::Ki

Definition at line 89 of file PIController.h.

◆ Kp

float Boardcore::PIController::Kp

Definition at line 88 of file PIController.h.

◆ Ts

float Boardcore::PIController::Ts

Definition at line 90 of file PIController.h.

◆ uMax

float Boardcore::PIController::uMax

Definition at line 91 of file PIController.h.

◆ uMin

float Boardcore::PIController::uMin

Definition at line 91 of file PIController.h.


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