Examples
Examples
Try the starting example
- First-order plant static gain
- 1
- First-order plant time constant (seconds)
- 2
- Proportional gain Kp
- 2
- Integral gain Ki (per second)
- 0.5
- Derivative gain Kd (seconds)
- 0.1
- Setpoint samples
- 1,1,1,1,1,1,1,1,1,1
- Sample interval (seconds)
- 0.1
- Actuator lower limit
- -2
- Actuator upper limit
- 2
- No anti-windup [output,control,integrator] trace (JSON)
- [[0.0975411509986,2,0.05],[0.180692950367,1.80249948945,0.0951229424501],[0.254378347185,1.69155059483,0.136088294932],[0.319562608133,1.59092728638,0.173369377572],[0.377283518769,1.50308176995,0.207391247166],[0.428441687263,1.42623912305,0.238527071227],[0.473828645904,1.35906344384,0.267104986864],[0.514139509479,1.30036930412,0.293413554569],[0.549984769872,1.24911669656,0.317706579095],[0.581900613455,1.20439254047,0.340207340601]]
- Conditional anti-windup [output,control,integrator] trace (JSON)
- [[0.0975411509986,2,0],[0.178254421592,1.75249948945,0.0451229424501],[0.249982949865,1.64898810759,0.0862102213705],[0.313483882539,1.55201664588,0.123711073877],[0.369769237998,1.467568182,0.15803687975],[0.419708129625,1.39372458639,0.18954841785],[0.464064954916,1.32920786049,0.218563011369],[0.503510990133,1.2728730285,0.245359763623],[0.538635812629,1.22371619863,0.270184214117],[0.569957259581,1.18085597573,0.293252423485]]
Try another scenario
- First-order plant static gain
- 2
- First-order plant time constant (seconds)
- 2
- Proportional gain Kp
- 2
- Integral gain Ki (per second)
- 0.5
- Derivative gain Kd (seconds)
- 0.1
- Setpoint samples
- [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
- Sample interval (seconds)
- 0.1
- Actuator lower limit
- -2
- Actuator upper limit
- 2
- No anti-windup [output,control,integrator] trace (JSON)
- [[0.195082301997,2,0.05],[0.332367358513,1.50499897891,0.0902458849001],[0.445068751624,1.32160774343,0.123627516974],[0.535391936186,1.14853518303,0.151374079393],[0.608138268773,1.01349742565,0.174604482584],[0.666770797418,0.905174699013,0.194197569145],[0.714107469918,0.818684905793,0.210859029274],[0.75239708375,0.749602043442,0.225153655778],[0.783439699259,0.694450020259,0.237533801591],[0.808675541258,0.650439802602,0.248361816628]]
- Conditional anti-windup [output,control,integrator] trace (JSON)
- [[0.195082301997,2,0],[0.327490300964,1.45499897891,0.0402458849001],[0.437003420539,1.28648276896,0.073871369852],[0.524790410389,1.11850123817,0.102021198825],[0.595607106374,0.988413867678,0.125781678306],[0.65278249668,0.883970414254,0.146001322987],[0.69903949194,0.800621814488,0.163362198153],[0.73654938034,0.734074244414,0.178410223556],[0.767050441224,0.680974105458,0.191582754539],[0.791933488152,0.638628289146,0.203230232478]]
Calculation method
Calculation method
No anti-windup [output,control,integrator] trace (JSON)
Compare identical saturated sampled first-order PID simulations with and without conditional integration; freeze integration when its update pushes farther into saturation.
Conditional anti-windup [output,control,integrator] trace (JSON)
Compare identical saturated sampled first-order PID simulations with and without conditional integration; freeze integration when its update pushes farther into saturation.
Symbols and units
- a
- First-order plant static gain
- b
- First-order plant time constant (seconds)
- c
- Proportional gain Kp
- d
- Integral gain Ki (per second)
- e
- Derivative gain Kd (seconds)
- f
- Setpoint samples
- g
- Sample interval (seconds)
- h
- Actuator lower limit
- i
- Actuator upper limit
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Assumptions & limits
Assumptions & limits
- User-supplied measurements and assumptions; Compare identical saturated sampled first-order PID simulations with and without conditional integration; freeze integration when its update pushes farther into saturation. Supported limits: Finite numeric values bounded to 1e9 magnitude; lists and tables contain 1–100 records unless a stricter bound is stated. Inputs use the units shown. Lists explicitly paired by a method must have matching lengths; independent polynomial coefficient vectors may differ. Respect stated physical, interpolation, policy and computational domain limits.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.
Further reading
Background reading; this does not imply endorsement or independent review of SumFizz.