https://mooseframework.inl.gov
Loading...
Searching...
No Matches
PIDChainControl.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "ChainControl.h"
13
18{
19public:
21
23
24 virtual void execute() override;
25
26protected:
28 void updateValues();
29
31 const Real & _input;
33 const Real & _set_point;
35 const Real & _K_p;
37 const Real & _K_i;
39 const Real & _K_d;
40
42 Real & _error;
44 const Real & _error_old;
45
49 Real & _integral;
51 const Real & _integral_old;
54
56 Real & _output;
57
60};
Control that additionally provides the capability to produce/consume data values, to allow control op...
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
Implements a proportional-integral-derivative (PID) controller.
const Real & _K_p
The coefficient for the proportional term.
const Real & _K_d
The coefficient for the derivative term.
Real & _previous_time
Previous time for which value was computed.
static InputParameters validParams()
Real & _derivative
The derivative component.
const Real & _input
input data
const Real & _integral_old
The old value of _integral.
const Real & _set_point
set point
void updateValues()
Updates all control data values.
virtual void execute() override
Execute the control.
Real & _output
The output computed by the PID controller.
Real & _error
The current value of the error.
const Real & _error_old
The old value of the error.
Real & _integral
The integral component.
const Real & _K_i
The coefficient for the integral term.
Real & _proportional
The proportional component.