/* * ForceControllerAutotuningFeatureEstimate.hh * * Created on: 4 мая 2022 г. * Author: titov */ #ifndef UMLIBRARY_PROCESSING_FORCECONTROLLERAUTOTUNINGFEATUREESTIMATE_HH_ #define UMLIBRARY_PROCESSING_FORCECONTROLLERAUTOTUNINGFEATUREESTIMATE_HH_ #include "../systemic/ISignal.hh" #include "../systemic/IProcess.hh" #include "../control/regulator/ForceController.hh" namespace processing { //!Модуль оценки критериев автонастройки алгоритма набора и поддержания усилия. class ForceControllerAutotuningFeatureEstimate : public systemic::IProcess { systemic::ISignal & force; systemic::ISignal & dforce; const control::regulator::ForceController & fc; float aggregated_dynamic_error; float dynamic_error; float _Ts; public: ForceControllerAutotuningFeatureEstimate( systemic::ISignal & force, systemic::ISignal & dforce, const control::regulator::ForceController & fc ); const float & getDynamicError() const; const float & getAggregatedDynamicError() const; const float & getEndMismatch() const; void reset(); void process(); void setSampleTime( float ts_in_second ); }; } #endif /* UMLIBRARY_PROCESSING_FORCECONTROLLERAUTOTUNINGFEATUREESTIMATE_HH_ */