Controller using ARX model for estimation and LQG designer for control. More...
Controller using ARX model for estimation and LQG designer for control.
#include <arx_ctrl.h>
Public Member Functions | |
| LQG_ARX () | |
| void | initialize () |
| void | adapt () |
| adaptation is to store arx estimates in stsp | |
| void | from_settings (const Settings &set) |
| LQG is defined by quadratic loss function. | |
| virtual void | adapt (const vec &data) |
| function processing new observations and adapting control strategy accordingly | |
| virtual vec | ctrlaction (const vec &data) |
| returns designed control action | |
| void | from_setting (const Setting &set) |
| This method arrange instance properties according the data stored in the Setting structure. | |
| const RV & | _urv () |
| access function | |
| const RV & | _yrv () |
| access function | |
| const RV & | _drv () |
| access function | |
| virtual void | log_add (logger &L, const string &name="") |
| register this controller with given datasource under name "name" | |
| virtual void | logit (logger &L) |
| write requested values into the logger | |
| virtual string | to_string () |
| This method returns a basic info about the current instance. | |
| virtual void | to_setting (Setting &set) const |
| This method save all the instance properties into the Setting structure. | |
| virtual void | validate () |
| This method TODO. | |
Protected Attributes | |
| shared_prt< ARX > | ar |
| Internal ARX estimator. | |
| LQG | lq |
| Internal LQG designer. | |
| sharer_ptr< StateSpace > | stsp |
| Intermediate StateSpace model. | |
| RV | yrv |
| identifier of the system output; | |
| RV | urv |
| identifier of the system input; | |
| RV | drv |
description of data needed for ctrlaction , required for automatic connection to DS | |
| ivec | LIDs |
| vector of logger IDs | |
| bdm::LQG_ARX::LQG_ARX | ( | ) | [inline] |
Default constructor
| void bdm::LQG_ARX::from_settings | ( | const Settings & | set | ) | [inline] |
LQG is defined by quadratic loss function.
expected input
{ class="LQG";
arx = {class="ARX", ...} // internal arx model, see
Qy = ("matrix", ...);
Qu = ("matrix", ...);
yreq = []; // requested output
ureq = []; // requested input value
}
References bdm::RV::_dsize(), ar, bdm::UI::get(), bdm::Controller::urv, and bdm::Controller::yrv.
1.6.1