Interface IPidController
Represents a Proportional, Integral, Derivative (PID) controller.
Assembly: Meadow.Contracts.dll
View Source
public interface IPidController
Properties
OutputMin
The minimum allowable control output value. The control output is clamped to this value after being calculated via the CalculateControlOutput method.
View Source
float OutputMin { get; set; }
OutputMax
The maximum allowable control output value. The control output is clamped to this value after being calculated via the CalculateControlOutput method.
View Source
float OutputMax { get; set; }
ActualInput
Represents the Process Variable (PV), or the actual signal reading of the system in its current state.
View Source
float ActualInput { get; set; }
TargetInput
Represents the set point (SP), or the reference target signal to achieve.
View Source
float TargetInput { get; set; }
IntegralComponent
The value to use when calculating the integral corrective action.
View Source
float IntegralComponent { get; set; }
DerivativeComponent
The value to use when calculating the derivative corrective action.
View Source
float DerivativeComponent { get; set; }
ProportionalComponent
The value to use when calculating the proportional corrective action.
View Source
float ProportionalComponent { get; set; }
OutputTuningInformation
Whether or not to print the calculation information to the output console in an comma-delimited form.
View Source
bool OutputTuningInformation { get; set; }
Methods
ResetIntegrator()
Resets the integrator error history.
View Source
void ResetIntegrator()
CalculateControlOutput()
Calculates the control output based on the difference (error) between the ActualInput and TargetInput, using the supplied ProportionalComponent, IntegralComponent, and DerivativeComponent.
View Source
float CalculateControlOutput()
Returns
System.Single