15#ifndef RESOLOOPCUTDISTOBSRVS
16#define RESOLOOPCUTDISTOBSRVS
29 #define arcs_assert(a) (assert(a))
32 #define EventLogVar(a)
45 ResoLoopCutDistObsrvs(
const std::array<struct TwoInertiaParams, N>& Params,
const double Bandwidth,
const double SmplTime)
48 for(
size_t i = 0; i < N; ++i) RLCDObs.at(i).SetParameters(Params.at(i), Bandwidth, SmplTime);
68 for(
size_t i = 0; i < N; ++i) RLCDObs.at(i).SetBandwidth(Bandwidth);
76 for(
size_t i = 1; i <= N; ++i) CompTorque[i] = RLCDObs.at(i - 1).GetCompTorque(TorqueRef[i], TorsionTorque[i]);
95 for(
size_t i = 1; i <= N; ++i) RLCDObs.at(i - 1).GetPDgainForRLCTTC(wt, zt, Kpt[i], Kdt[i]);
101 std::array<ResoLoopCutDistObsrv, N> RLCDObs;
#define PassedLog()
イベントログ用マクロ(ファイルと行番号のみ記録版)
Definition ARCSeventlog.hh:26
行列/ベクトル計算クラス(テンプレート版)
Definition Matrix.hh:44
共振ループ切断外乱オブザーバ(ベクトル版)
Definition ResoLoopCutDistObsrvs.hh:39
ResoLoopCutDistObsrvs(const std::array< struct TwoInertiaParams, N > &Params, const double Bandwidth, const double SmplTime)
コンストラクタ
Definition ResoLoopCutDistObsrvs.hh:45
void GetPDgainForRLCTTC(const double wt, const double zt, Matrix< 1, N > &Kpt, Matrix< 1, N > &Kdt)
RLC-TTC用のP-D制御ゲインを計算する関数(仮設)
Definition ResoLoopCutDistObsrvs.hh:94
Matrix< 1, N > GetCompTorque(const Matrix< 1, N > &TorqueRef, const Matrix< 1, N > &TorsionTorque)
モータ側トルク補償値を取得する関数(戻り値で返す版)
Definition ResoLoopCutDistObsrvs.hh:83
~ResoLoopCutDistObsrvs()
デストラクタ
Definition ResoLoopCutDistObsrvs.hh:61
void SetBandwidth(const double Bandwidth)
推定帯域を設定する関数
Definition ResoLoopCutDistObsrvs.hh:67
ResoLoopCutDistObsrvs(ResoLoopCutDistObsrvs &&r)
ムーブコンストラクタ
Definition ResoLoopCutDistObsrvs.hh:54
void GetCompTorque(const Matrix< 1, N > &TorqueRef, const Matrix< 1, N > &TorsionTorque, Matrix< 1, N > &CompTorque)
モータ側トルク補償値を取得する関数(引数で返す版)
Definition ResoLoopCutDistObsrvs.hh:75