PID制御器
[詳解]
#include <Udon/Algorithm/PidController.hpp>
|
| PidController (double kPro, double kInt, double kDif, unsigned long callInterval_us, double maxIntPower=1023.0) noexcept |
| コンストラクタ
|
|
void | update (double controlValue, double targetValue) noexcept |
| データ更新
|
|
double | getPower () const noexcept |
| 操作量の取得 (操作量の範囲制限なし)
|
|
double | getPower (double min, double max) const noexcept |
| 操作量の取得
|
|
double | getPower (const Udon::Range< double > &range) const noexcept |
| 操作量の取得
|
|
double | operator() (double controlValue, double targetValue) noexcept |
| 更新、操作量の取得 (操作量の範囲制限なし)
|
|
double | operator() (double controlValue, double targetValue, double min, double max) noexcept |
| 更新、操作量の取得
|
|
double | operator() (double controlValue, double targetValue, const Udon::Range< double > &range) noexcept |
| 更新、操作量の取得
|
|
void | clearPower () noexcept |
| 操作量のクリア
|
|
void | clearIntegral () noexcept |
|
void | requestParamPro (double value) noexcept |
| 一周期のみ適用する比例係数の設定
|
|
void | requestParamInt (double value) noexcept |
| 一周期のみ適用する積分係数の設定
|
|
void | requestParamDif (double value) noexcept |
| 一周期のみ適用する微分係数の設定
|
|
void | requestParam (const Parameter &value) noexcept |
| 一周期のみ適用する係数の設定
|
|
void | setParamPro (double value) noexcept |
| 比例係数の設定
|
|
void | setParamInt (double value) noexcept |
| 積分係数の設定
|
|
void | setParamDif (double value) noexcept |
| 微分係数の設定
|
|
void | setParam (const Parameter &value) noexcept |
| 係数の設定
|
|
double | getParamPro () const noexcept |
| 比例係数の取得
|
|
double | getParamInt () const noexcept |
| 積分係数の取得
|
|
double | getParamDif () const noexcept |
| 微分係数の取得
|
|
const Parameter & | getParam () const noexcept |
| 係数の取得
|
|
double | getPowerPro () const noexcept |
| 比例量の取得
|
|
double | getPowerInt () const noexcept |
| 積分量の取得
|
|
double | getPowerDif () const noexcept |
| 微分量の取得
|
|
◆ PidController()
Udon::PidController::PidController |
( |
double | kPro, |
|
|
double | kInt, |
|
|
double | kDif, |
|
|
unsigned long | callInterval_us, |
|
|
double | maxIntPower = 1023.0 ) |
|
inlinenoexcept |
コンストラクタ
- 引数
-
kPro | 比例係数 |
kInt | 積分係数 |
kDif | 微分係数 |
callInterval_us | update()の呼び出し周期 |
maxIntPower | 積分量の最大値 |
◆ clearIntegral()
void Udon::PidController::clearIntegral |
( |
| ) |
|
|
inlinenoexcept |
◆ clearPower()
void Udon::PidController::clearPower |
( |
| ) |
|
|
inlinenoexcept |
操作量のクリア
- 覚え書き
- 内部の量をすべて0にする。
◆ getParam()
const Parameter & Udon::PidController::getParam |
( |
| ) |
const |
|
inlinenoexcept |
◆ getParamDif()
double Udon::PidController::getParamDif |
( |
| ) |
const |
|
inlinenoexcept |
◆ getParamInt()
double Udon::PidController::getParamInt |
( |
| ) |
const |
|
inlinenoexcept |
◆ getParamPro()
double Udon::PidController::getParamPro |
( |
| ) |
const |
|
inlinenoexcept |
◆ getPower() [1/3]
double Udon::PidController::getPower |
( |
| ) |
const |
|
inlinenoexcept |
操作量の取得 (操作量の範囲制限なし)
- 戻り値
- 操作量
◆ getPower() [2/3]
double Udon::PidController::getPower |
( |
const Udon::Range< double > & | range | ) |
const |
|
inlinenoexcept |
◆ getPower() [3/3]
double Udon::PidController::getPower |
( |
double | min, |
|
|
double | max ) const |
|
inlinenoexcept |
◆ getPowerDif()
double Udon::PidController::getPowerDif |
( |
| ) |
const |
|
inlinenoexcept |
◆ getPowerInt()
double Udon::PidController::getPowerInt |
( |
| ) |
const |
|
inlinenoexcept |
◆ getPowerPro()
double Udon::PidController::getPowerPro |
( |
| ) |
const |
|
inlinenoexcept |
◆ operator()() [1/3]
double Udon::PidController::operator() |
( |
double | controlValue, |
|
|
double | targetValue ) |
|
inlinenoexcept |
更新、操作量の取得 (操作量の範囲制限なし)
- 引数
-
controlValue | 制御量 |
targetValue | 目標値 |
- 戻り値
- 操作量
◆ operator()() [2/3]
double Udon::PidController::operator() |
( |
double | controlValue, |
|
|
double | targetValue, |
|
|
const Udon::Range< double > & | range ) |
|
inlinenoexcept |
更新、操作量の取得
- 引数
-
controlValue | 制御量 |
targetValue | 目標値 |
range | 操作量の範囲 |
- 戻り値
- 操作量
◆ operator()() [3/3]
double Udon::PidController::operator() |
( |
double | controlValue, |
|
|
double | targetValue, |
|
|
double | min, |
|
|
double | max ) |
|
inlinenoexcept |
更新、操作量の取得
- 引数
-
controlValue | 制御量 |
targetValue | 目標値 |
min | 操作量の最小値 |
max | 操作量の最大値 |
- 戻り値
- 操作量
◆ requestParam()
void Udon::PidController::requestParam |
( |
const Parameter & | value | ) |
|
|
inlinenoexcept |
◆ requestParamDif()
void Udon::PidController::requestParamDif |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ requestParamInt()
void Udon::PidController::requestParamInt |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ requestParamPro()
void Udon::PidController::requestParamPro |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ setParam()
void Udon::PidController::setParam |
( |
const Parameter & | value | ) |
|
|
inlinenoexcept |
◆ setParamDif()
void Udon::PidController::setParamDif |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ setParamInt()
void Udon::PidController::setParamInt |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ setParamPro()
void Udon::PidController::setParamPro |
( |
double | value | ) |
|
|
inlinenoexcept |
◆ update()
void Udon::PidController::update |
( |
double | controlValue, |
|
|
double | targetValue ) |
|
inlinenoexcept |
データ更新
- 引数
-
controlValue | 制御量 |
targetValue | 目標値 |
- 戻り値
- 操作量
このクラス詳解は次のファイルから抽出されました: