lib/AccObsrv.hh
00001 // 蜉�騾溷コヲ繧ェ繝悶じ繝シ繝舌け繝ゥ繧ケ
00002 // 2011/02/16 Yuki YOKOKURA
00003 //
00004 // 蜉�騾溷コヲ繧ェ繝悶じ繝シ繝�
00005 // 蜉�騾溷コヲ蜿ら�ァ蛟、縺ィ螟紋ケア繧ェ繝悶じ繝シ繝舌↓繧医k謗ィ螳壼、紋ケア縺九i蜉�騾溷コヲ蠢懃ュ泌�、繧定ィ育ョ励☆繧�
00006 //
00007 // Copyright (C) 2011 Yuki YOKOKURA
00008 // This program is free software;
00009 // you can redistribute it and/or modify it under the terms of the GNU General Public License
00010 // as published by the Free Software Foundation; either version 3 of the License, or any later version.
00011 // This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
00012 // without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00013 // See the GNU General Public License for more details <http://www.gnu.org/licenses/>.
00014 // Besides, you can negotiate about other options of licenses instead of GPL.
00015 // If you would like to get other licenses, please contact us<yuki@katsura.sd.keio.ac.jp>.
00016 
00017 #ifndef ACCOBSRV
00018 #define ACCOBSRV
00019 
00020 namespace ARCS {        // ARCS蜷榊燕遨コ髢�
00021         class AccObsrv {
00022                 private:
00023                         double gacc;    // [rad/s]                      蜉�騾溷コヲ繧ェ繝悶じ繝シ繝舌�ョ蟶ッ蝓�
00024                         double gdis;    // [rad/s]                      螟紋ケア繧ェ繝悶じ繝シ繝舌�ョ蟶ッ蝓�
00025                         double Mn;              // [kg] or [kgm^2]      諷」諤ァ
00026                         double Ts;              // [s]                          蛻カ蠕。蜻ィ譛�
00027                         double XDDrefZ1;//                                      迥カ諷句、画焚1
00028                         double FdisZ1;  //                                      迥カ諷句、画焚2
00029                         double XDDresZ1;//                                      迥カ諷句、画焚3
00030                 
00031                 public:
00032                         AccObsrv(double AccBandwidth, double DistBandwidth, double Mass, double SmplTime);
00033                         // 繧ウ繝ウ繧ケ繝医Λ繧ッ繧ソ
00034                         // gdis�シ媼rad/s] 蟶ッ蝓滂シ勲ass�シ媼kg] or [kgm^2] 諷」諤ァ
00035                         // TrqConst�シ媼N/A] or [Nm/A] 繝医Ν繧ッ螳壽焚�シ郡mplTime�シ媼s] 蛻カ蠕。蜻ィ譛�
00036                         ~AccObsrv();                                                                            // 繝�繧ケ繝医Λ繧ッ繧ソ
00037                         double GetAcceleration(double XDDref, double Fdis);     // 蜉�騾溷コヲ蠢懃ュ斐�ョ蜿門セ� XDDref�シ媼m/s^2] 蜉�騾溷コヲ蜿ら�ァ蛟、�シ熊dis�シ媼N] 謗ィ螳壼、紋ケア
00038                         void SetAccBandwidth(double Bandwidth);                         // 蜉�騾溷コヲ繧ェ繝悶じ繝シ繝舌�ョ蟶ッ蝓溘�ョ蜀崎ィュ螳� Bandwidth�シ媼rad/s] 蟶ッ蝓�
00039                         void SetDistBandwidth(double Bandwidth);                        // 螟紋ケア繧ェ繝悶じ繝シ繝舌�ョ蟶ッ蝓溘�ョ蜀崎ィュ螳� Bandwidth�シ媼rad/s] 蟶ッ蝓�
00040                         void SetInertia(double Mass);                                           // 諷」諤ァ縺ョ蜀崎ィュ螳� Mass�シ媼kg] or [kgm^2] 諷」諤ァ
00041                         void SetSmplTime(double SmplTime);                                      // 蛻カ蠕。蜻ィ譛溘�ョ蜀崎ィュ螳� SmplTime�シ媼s] 蛻カ蠕。蜻ィ譛�
00042                         void ClearStateVars(void);                                                      // 縺吶∋縺ヲ縺ョ迥カ諷句、画焚縺ョ繝ェ繧サ繝�繝�
00043         };
00044 }
00045 
00046 #endif
00047 
00048 
00049 
 All Classes Files