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