PID_Controller.h
Go to the documentation of this file.
1 /*+-------------------------------------------------------------------------+
2  | MultiVehicle simulator (libmvsim) |
3  | |
4  | Copyright (C) 2014-2024 Jose Luis Blanco Claraco |
5  | Copyright (C) 2017 Borys Tymchenko (Odessa Polytechnic University) |
6  | Distributed under 3-clause BSD License |
7  | See COPYING |
8  +-------------------------------------------------------------------------+ */
9 #pragma once
10 
11 namespace mvsim
12 {
15 {
16  PID_Controller() = default;
17 
18  double KP = 1.0, KI = 0, KD = 0;
19  double max_out = 0;
20 
22  double compute(double err, double dt);
23 
26  void reset();
27 
28  private:
29  double lastOutput = 0;
30  double e_n = 0, e_n_1 = 0, e_n_2 = 0;
31 };
32 } // namespace mvsim
mvsim
Definition: Client.h:21
mvsim::PID_Controller::e_n_2
double e_n_2
Definition: PID_Controller.h:30
mvsim::PID_Controller::PID_Controller
PID_Controller()=default
mvsim::PID_Controller::KP
double KP
Definition: PID_Controller.h:18
mvsim::PID_Controller
Definition: PID_Controller.h:14
mvsim::PID_Controller::compute
double compute(double err, double dt)
Definition: PID_Controller.cpp:15
mvsim::PID_Controller::KI
double KI
Definition: PID_Controller.h:18
mvsim::PID_Controller::KD
double KD
Definition: PID_Controller.h:18
mvsim::PID_Controller::reset
void reset()
Definition: PID_Controller.cpp:41
mvsim::PID_Controller::lastOutput
double lastOutput
Definition: PID_Controller.h:29
mvsim::PID_Controller::e_n
double e_n
Definition: PID_Controller.h:30
mvsim::PID_Controller::e_n_1
double e_n_1
Definition: PID_Controller.h:30
mvsim::PID_Controller::max_out
double max_out
For clamping (0=no clamp)
Definition: PID_Controller.h:19


mvsim
Author(s):
autogenerated on Wed May 28 2025 02:13:08