ARCS6 AR6-REV.24062600
読み取り中…
検索中…
一致する文字列を見つけられません
I-P-I-Pcontroller.hh
[詳解]
1
5//
6// Copyright (C) 2011-2019 Yuki YOKOKURA
7// This program is free software;
8// you can redistribute it and/or modify it under the terms of the FreeBSD License.
9// For details, see the License.txt file.
10
11#ifndef IPIPCONTROLLER
12#define IPIPCONTROLLER
13
14#include "Integrator.hh"
15
16namespace ARCS { // ARCS名前空間
19 template <IntegralType T>
21 public:
28 IPIPcontroller(double Igain1, double Pgain1, double Igain2, double Pgain2, double SmplTime)
29 : Ki1(Igain1), Kp1(Pgain1), Ki2(Igain2), Kp2(Pgain2), Ts(SmplTime), Integ1(SmplTime), Integ2(SmplTime)
30 {
31
32 }
33
37 : Ki1(r.Ki1), Kp1(r.Kp1), Ki2(r.Ki2), Kp2(r.Kp2), Ts(r.Ts), Integ1(r.Integ1), Integ2(r.Integ2)
38 {
39
40 }
41
44
45 }
46
51 double GetSignal(double ref, double res){
52 return Integ2.GetSignal( Integ1.GetSignal(ref - res)*Ki1 - Kp1*res )*Ki2 - Kp2*res;
53 }
54
55 private:
56 IPIPcontroller(const IPIPcontroller&) = delete;
57 const IPIPcontroller& operator=(const IPIPcontroller&) = delete;
58 double Ki1;
59 double Kp1;
60 double Ki2;
61 double Kp2;
62 double Ts;
63 Integrator<T> Integ1;
64 Integrator<T> Integ2;
65 };
66}
67
68#endif
69
積分器(テンプレート版)
I-P-I-P制御器
Definition I-P-I-Pcontroller.hh:20
~IPIPcontroller()
デストラクタ
Definition I-P-I-Pcontroller.hh:43
double GetSignal(double ref, double res)
I-P-I-P制御器出力信号の計算
Definition I-P-I-Pcontroller.hh:51
IPIPcontroller(IPIPcontroller &&r)
ムーブコンストラクタ
Definition I-P-I-Pcontroller.hh:36
IPIPcontroller(double Igain1, double Pgain1, double Igain2, double Pgain2, double SmplTime)
コンストラクタ
Definition I-P-I-Pcontroller.hh:28
積分器
Definition Integrator.hh:40
double GetSignal(const double u)
出力信号の取得
Definition Integrator.hh:79