Easy Control Library for Cubic 0.01
Loading...
Searching...
No Matches
PID::PID Class Reference

Public Member Functions

 PID (double capableDutyCycle, double Kp, double Ki, double Kd, double current, double target, bool direction)
 コントローラのコンストラクタ
 
void setGains (double Kp, double Ki, double Kd)
 ゲインを変更する。
 
void setKp (double Kp)
 Set the Kp object.
 
void setKi (double Ki)
 Set the Ki object.
 
void setKd (double Kd)
 Set the Kd object.
 
void setTarget (double target)
 目標を変更する。
 
double getTarget () const
 目標を取得する。
 
double getCurrent () const
 現在値を取得する。
 
double getDutyCycle () const
 Duty比の取得
 
void reset ()
 制御器のリセット
 
void reset (double target)
 制御器のリセット
 
void reset (double Kp, double Ki, double Kd)
 制御器のリセット
 
void reset (double Kp, double Ki, double Kd, double target)
 制御器のリセット
 
double compute_PID (double current, bool logging=false)
 PID制御を行う関数
 
double getDt () const
 Get the Dt object.
 

Public Attributes

double dt
 dt[s]
 

Constructor & Destructor Documentation

◆ PID()

PID::PID::PID ( double capableDutyCycle,
double Kp,
double Ki,
double Kd,
double current,
double target,
bool direction )

コントローラのコンストラクタ

Parameters
capableDutyCycle出力最大Duty比(絶対値)
Kp比例ゲイン
Ki積分ゲイン
Kd微分ゲイン
current現在値
target目標
direction方向。trueで正方向、falseで負方向。

Member Function Documentation

◆ compute_PID()

double PID::PID::compute_PID ( double current,
bool logging = false )

PID制御を行う関数

Parameters
current現在値
loggingログを出力するかどうか。省略可能で、デフォルトではfalse。
Returns
int duty比

◆ getCurrent()

double PID::PID::getCurrent ( ) const
inline

現在値を取得する。

Returns
double 現在値

◆ getDt()

double PID::PID::getDt ( ) const
inline

Get the Dt object.

Returns
double dt[s]

◆ getDutyCycle()

double PID::PID::getDutyCycle ( ) const
inline

Duty比の取得

この関数は、compute_PID()によって計算されるduty比を取得するのに使用する。この関数内では、計算は行われない。基本的にこの関数を使用しなければならない場面は、マルチスレッドでもない限り想定されない。

Returns
int duty比

◆ getTarget()

double PID::PID::getTarget ( ) const
inline

目標を取得する。

Returns
double 目標

◆ reset() [1/4]

void PID::PID::reset ( )
inline

制御器のリセット

PID制御器のリセットを行う。

◆ reset() [2/4]

void PID::PID::reset ( double Kp,
double Ki,
double Kd )
inline

制御器のリセット

Parameters
Kp
Ki
Kd

◆ reset() [3/4]

void PID::PID::reset ( double Kp,
double Ki,
double Kd,
double target )
inline

制御器のリセット

Parameters
Kp
Ki
Kd
target

◆ reset() [4/4]

void PID::PID::reset ( double target)
inline

制御器のリセット

Parameters
target

◆ setGains()

void PID::PID::setGains ( double Kp,
double Ki,
double Kd )
inline

ゲインを変更する。

Parameters
Kp比例ゲイン
Ki積分ゲイン
Kd微分ゲイン

◆ setKd()

void PID::PID::setKd ( double Kd)
inline

Set the Kd object.

Parameters
Kd

◆ setKi()

void PID::PID::setKi ( double Ki)
inline

Set the Ki object.

Parameters
Ki

◆ setKp()

void PID::PID::setKp ( double Kp)
inline

Set the Kp object.

Parameters
Kp

◆ setTarget()

void PID::PID::setTarget ( double target)
inline

目標を変更する。

Parameters
target目標

The documentation for this class was generated from the following files: