// settings for pmsm_estim.cpp experiment={ Ndat = 120000; // Ndat = 100000; // Ndat = 50000; }; system= { class= "pmsmDSctrl"; params = "pmsm107@./cfg/zcu.cfg"; tstep = 1; // steps for profile in [s] // profileW = [0, 10, 0, 2 ]; // profileW = [0, 500, 1000, 1500, 2000, 2500, 3000 ]; // profileW = [0, -10, 30, 60, 90, 60, 30, 0, -30, -60, -30]; profileW = [0, -1, 3, 6, 9, 6, 3, 0, 0, 0, 0, 0,0,-3, -6, -3]; // profileW = [1, 10, 50, 200, 200, 30, 0, 0, -30, -30, -100, -100, -40, 0, 0]; // profileW = [1, 10, 50, 200, 200, 30, 1, 1, -1, -10, -50, -200, -200, -30, 0]; // profileW = [250, 500, 750, 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000, 3000]; // profileM = [0, 30, 0, 0, 30, 0, 0, 0, 0, 0, 10, 0, 0]; profileM = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; }; UD = {class="EKF_UD"; IM = {class="IMpmsmStat"; params = "pmsm107@./cfg/zcu.cfg"; }; OM = {class="OMpmsm";}; // dQ=[0.1, 0.1, 0.1, 0.001]; ///??????????????? // dQ=[0.1, 0.1, 10.01, 10.01]; dQ=[0.1, 0.1, 0.1, 0.01]; dR=[0.05, 0.05]; //connect log_level="logmean,logU,logD,logC"; name = "Est0"; }; OT= {class="EKFfull"; IM = {class="IMpmsmOT"; params = "pmsm107@./cfg/zcu.cfg"; }; name = "ekf"; OM = {class="OMpmsmOT"; params = "pmsm107@./cfg/zcu.cfg"; }; dQ=[0.1, 0.01]; ///////// <====== OK dR=[0.5, 0.5]; dP0=[0.1, 0.1]; //connect log_level="logmean,logevidence,logbounds"; }; PF= {class = "PF";name="pf"; particle = {class ="BootstrapParticle"; parameter_pdf = {class="mgnorm"; g={class="IMpmsmOT"; params = "pmsm107@./cfg/zcu.cfg"; }; dR=[0.001,0.0001]; rv ={class="RV";names=("om","th");}; rvc ={class="RV";names=("om","th","o_ua","o_ub","o_ia","o_ib");times=[-1,-1,0,0,-1,-1];}; }; observation_pdf= {class="mgnorm"; g={class="OMpmsmOT"; params = "pmsm107@./cfg/zcu.cfg"; }; dR=[0.5,0.5]; rv ={class="RV";names=("o_ia","o_ib");}; rvc = {class="RV";names=("om","th","o_ua","o_ub","o_ia","o_ib");times=[0,0,0,0,-1,-1];}; }; }; n = 100; log_level="logbounds,logmean"; prior = {class="euni"; high = [ 0.1, 1.0]; low = [ -0.1, -1.0]; rv ={class="RV";names=("om","th");}; }; }; controllers=({ // class = "PMSM_PICtrl"; // class = "PMSM_LQCtrl"; // class = "PMSM_LQCtrl_dq"; // class = "PMSM_LQCtrl_dq2"; // class = "PMSM_LQCtrl_bic"; // class = "PMSM_LQCtrl_bic2"; class = "PMSM_LQCtrl_bic3"; // class = "PMSM_LQCtrl_EKF_Inj"; //biver legenda estim = "UD"; // 0 - nic navic // estim = "PF"; // 1 - signum // r = 0.0001; // 2 - signum + casovy posun r = 0.001; // 3 - 3 KF v dq // 30 - pocita det misto varth // r = 0.04; // 4 - 5 KF v albe // 40 - pocita det misto varth h = 10; // 5 - konst v d MAXu = 400; // 6 - injektaz do d // MAXu = 100; // 7 - injektaz albe MAXuflag = 2; // 8 - injektaz do d i do q // rpd = 0.1; // 9 - nahodny vyber jako 5 KF rpd = 0.00417; // 10 - postupne jako 5 KF bcbv = 6.0; // 11 - injektaz albe round sin resp. cos //bcbv = 0.0; biver = 11; injkon = 6.0; injome = 16000.0; // injome = 500.0; injphi = 0.0; //multiple Kalman Q & R mat. Qred00 = 1.0; Qred11 = 1.0; Qred01 = 0.0; Qred10 = 0.0; Rred00 = 0.0;//00000001; Rred11 = 0.0;//00000001; // Rred01 = 0.0000000001; // Rred10 = 0.0000000001; // PI parametry PIw_Pd = 3.0; PIw_Pi = 0.0037; PIu_Pd = 20.0; PIu_Pi = 0.5; log_level = "logModel"; } ); logger= { class="dirfilelog"; maxlen = 100; // dirname = "exp/ctrlPI"; // dirname = "exp/ctrlLQ"; // dirname = "exp/ctrlLQdq"; // dirname = "exp/ctrlLQdq2"; // dirname = "exp/ctrlLQbic"; // dirname = "exp/ctrlLQbic2"; dirname = "exp/ctrlLQbic3"; // dirname = "exp/ctrlLQEKFInj"; };