Table of Contents

IpidRun()

IpidRun() calculates the PID output from the current value and setpoint.

IpidRun command operation flow

float IpidRun(uint8_t id, float pv, float sv)

Commands

Command Arguments Return Value Operation
IpidRun(id, pv, sv) uint8_t id — PID loop number. Supports 0 ~ 255
float pv — Current value. Present Value
float sv — Setpoint. Set Value
float Calculates the PID output from the current value and setpoint.

Example

void setup() {
  IpidSet(2, 4.0, 0.2, 0.0, 100, 0, 255);  // Set PID coefficients, calculation interval and output range.
  IpidReverse(2, true);  // Select direct or reverse PID action.
}
 
void loop() {
  float pv = ntcRead(4) / 10.0;  // Return the NTC 3950 10kΩ sensor temperature as an integer in 0.1°C units.
  float sv = 25.0;
  int output = (int)IpidRun(2, pv, sv);  // Calculate the PID output from the current value and setpoint.
 
  analogWrite(11, output);
}

Precautions

Built-in Commands in the Same Category

← Built-in Command List