ARCS6 AR6-REV.24062600
読み取り中…
検索中…
一致する文字列を見つけられません
ARCS::TwoInertiaSimulator クラス

2慣性共振系シミュレータV4 [詳解]

#include <ARCS6/lib/TwoInertiaSimulator.hh>

公開メンバ関数

 TwoInertiaSimulator (void)
 空コンストラクタ
 
 TwoInertiaSimulator (const struct TwoInertiaParamDef &Params, const double SmplTime)
 コンストラクタ
 
 TwoInertiaSimulator (const struct TwoInertiaParams &Params, const double SmplTime)
 コンストラクタ
 
 TwoInertiaSimulator (TwoInertiaSimulator &&r)
 ムーブコンストラクタ
 
 ~TwoInertiaSimulator ()
 デストラクタ
 
void SetParameters (const struct TwoInertiaParamDef &Params, const double SmplTime)
 2慣性共振系のパラメータを設定する関数
 
void SetParameters (const struct TwoInertiaParams &Params, const double SmplTime)
 2慣性共振系のパラメータを設定する関数
 
void SetCurrentAndLoadTorque (const double Current, const double LoadTorque)
 モータ電流と負荷トルクを設定し状態を更新する関数
 
void GetResponses (double &LoadSpeed, double &TorsionAngle, double &MotorSpeed)
 現在の負荷側速度&ねじれ角&モータ側速度を取得する関数(引数で返す版)
 
std::tuple< double, double, double > GetResponses (void)
 現在の負荷側速度&ねじれ角&モータ側速度を取得する関数(タプルで返す版)
 
double GetLoadPosition (void)
 現在の負荷側位置を取得する関数
 
double GetMotorPosition (void)
 現在のモータ側位置を取得する関数
 
double GetMotorSpeed (void)
 現在のモータ側速度を取得する関数
 
double GetTorsionTorque (void)
 現在のねじれトルクを取得する関数
 
void GetResponses (const double Current, const double LoadTorque, double &LoadSpeed, double &TorsionAngle, double &MotorSpeed)
 電流と負荷を設定 → 状態更新 → 負荷側速度&ねじれ角&モータ側速度を取得する関数(引数で返す版)
 
std::tuple< double, double, double > GetResponses (double Current, double LoadTorque)
 電流と負荷を設定 → 状態更新 → 負荷側速度&ねじれ角&モータ側速度を取得する関数(タプルで返す版)
 
void SetLoadInertia (double Inertia)
 負荷側慣性を設定する関数
 
void SetSpring (double Stiffness)
 ばね定数を設定する関数
 
void Reset (void)
 シミュレータをリセットする関数
 

詳解

2慣性共振系シミュレータV4

構築子と解体子

◆ TwoInertiaSimulator() [1/3]

TwoInertiaSimulator::TwoInertiaSimulator ( const struct TwoInertiaParamDef & Params,
const double SmplTime )

コンストラクタ

コンストラクタ(Ds無し版)

引数
[in]Params2慣性共振系パラメータ構造体
[in]SmplTimeサンプリング周期 [s]

◆ TwoInertiaSimulator() [2/3]

TwoInertiaSimulator::TwoInertiaSimulator ( const struct TwoInertiaParams & Params,
const double SmplTime )

コンストラクタ

コンストラクタ(Ds有り版)

引数
[in]Params2慣性共振系パラメータ構造体
[in]SmplTimeサンプリング周期 [s]

◆ TwoInertiaSimulator() [3/3]

TwoInertiaSimulator::TwoInertiaSimulator ( TwoInertiaSimulator && r)

ムーブコンストラクタ

引数
[in]r右辺値

関数詳解

◆ GetLoadPosition()

double TwoInertiaSimulator::GetLoadPosition ( void )

現在の負荷側位置を取得する関数

戻り値
負荷側位置応答 [rad]

◆ GetMotorPosition()

double TwoInertiaSimulator::GetMotorPosition ( void )

現在のモータ側位置を取得する関数

戻り値
モータ側位置応答 [rad]

◆ GetMotorSpeed()

double TwoInertiaSimulator::GetMotorSpeed ( void )

現在のモータ側速度を取得する関数

戻り値
モータ側速度応答 [rad/s]

◆ GetResponses() [1/4]

void TwoInertiaSimulator::GetResponses ( const double Current,
const double LoadTorque,
double & LoadSpeed,
double & TorsionAngle,
double & MotorSpeed )

電流と負荷を設定 → 状態更新 → 負荷側速度&ねじれ角&モータ側速度を取得する関数(引数で返す版)

引数
[in]Currentq軸電流 [A]
[in]LoadTorque負荷トルク [Nm]
[out]LoadSpeed負荷側速度 [rad/s]
[out]TorsionAngleねじれ角 [rad]
[out]MotorSpeedモータ側速度 [rad/s]

◆ GetResponses() [2/4]

void TwoInertiaSimulator::GetResponses ( double & LoadSpeed,
double & TorsionAngle,
double & MotorSpeed )

現在の負荷側速度&ねじれ角&モータ側速度を取得する関数(引数で返す版)

引数
[out]LoadSpeed負荷側速度 [rad/s]
[out]TorsionAngleねじれ角 [rad]
[out]MotorSpeedモータ側速度 [rad/s]

◆ GetResponses() [3/4]

std::tuple< double, double, double > TwoInertiaSimulator::GetResponses ( double Current,
double LoadTorque )

電流と負荷を設定 → 状態更新 → 負荷側速度&ねじれ角&モータ側速度を取得する関数(タプルで返す版)

引数
[in]Currentq軸電流 [A]
[in]LoadTorque負荷トルク [Nm]
戻り値
タプル( 負荷側速度 [rad/s], ねじれ角 [rad], モータ側速度 [rad/s] )

◆ GetResponses() [4/4]

std::tuple< double, double, double > TwoInertiaSimulator::GetResponses ( void )

現在の負荷側速度&ねじれ角&モータ側速度を取得する関数(タプルで返す版)

戻り値
タプル( 負荷側速度 [rad/s], ねじれ角 [rad], モータ側速度 [rad/s] )

◆ GetTorsionTorque()

double TwoInertiaSimulator::GetTorsionTorque ( void )

現在のねじれトルクを取得する関数

戻り値
ねじれトルク応答 [Nm]

◆ SetCurrentAndLoadTorque()

void TwoInertiaSimulator::SetCurrentAndLoadTorque ( const double Current,
const double LoadTorque )

モータ電流と負荷トルクを設定し状態を更新する関数

引数
[in]Currentq軸電流 [A]
[in]LoadTorque負荷トルク [Nm]

◆ SetLoadInertia()

void TwoInertiaSimulator::SetLoadInertia ( double Inertia)

負荷側慣性を設定する関数

引数
[in]Inertia負荷側慣性 [kgm^2]

◆ SetParameters() [1/2]

void TwoInertiaSimulator::SetParameters ( const struct TwoInertiaParamDef & Params,
const double SmplTime )

2慣性共振系のパラメータを設定する関数

2慣性共振系のパラメータを設定する関数(Ds無し版)

引数
[in]Params2慣性共振系パラメータ構造体
[in]SmplTimeサンプリング周期 [s]

◆ SetParameters() [2/2]

void TwoInertiaSimulator::SetParameters ( const struct TwoInertiaParams & Params,
const double SmplTime )

2慣性共振系のパラメータを設定する関数

2慣性共振系のパラメータを設定する関数(Ds有り版)

引数
[in]Params2慣性共振系パラメータ構造体
[in]SmplTimeサンプリング周期 [s]

◆ SetSpring()

void TwoInertiaSimulator::SetSpring ( double Stiffness)

ばね定数を設定する関数

引数
[in]Stiffnessばね定数 [Nm/rad]

このクラス詳解は次のファイルから抽出されました: