Version 1.2
-Added capability for Proportional On Measurement -Changed license from GPLv3 to MIT
This commit is contained in:
36
examples/PID_PonM/PID_PonM.ino
Normal file
36
examples/PID_PonM/PID_PonM.ino
Normal file
@ -0,0 +1,36 @@
|
||||
/********************************************************
|
||||
* PID Proportional on measurement Example
|
||||
* Setting the PID to use Proportional on measurement will
|
||||
* make the output move more smoothly when the setpoint
|
||||
* is changed. In addition, it can eliminate overshoot
|
||||
* in certain processes like sous-vides.
|
||||
********************************************************/
|
||||
|
||||
#include <PID_v1.h>
|
||||
|
||||
//Define Variables we'll be connecting to
|
||||
double Setpoint, Input, Output;
|
||||
|
||||
//Specify the links and initial tuning parameters
|
||||
PID myPID(&Input, &Output, &Setpoint,2,5,1,P_ON_M, DIRECT); //P_ON_M specifies that Proportional on Measurement be used
|
||||
//P_ON_E (Proportional on Error) is the default behavior
|
||||
|
||||
void setup()
|
||||
{
|
||||
//initialize the variables we're linked to
|
||||
Input = analogRead(0);
|
||||
Setpoint = 100;
|
||||
|
||||
//turn the PID on
|
||||
myPID.SetMode(AUTOMATIC);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
Input = analogRead(0);
|
||||
myPID.Compute();
|
||||
analogWrite(3,Output);
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user