[1290] | 1 | // settings for pmsm_estim.cpp |
---|
| 2 | |
---|
| 3 | experiment={ |
---|
[1298] | 4 | Ndat = 120000; |
---|
[1385] | 5 | // Ndat = 100000; |
---|
[1402] | 6 | // Ndat = 10000; |
---|
[1290] | 7 | }; |
---|
| 8 | |
---|
| 9 | system= { |
---|
| 10 | class= "pmsmDSctrl"; |
---|
| 11 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
| 12 | tstep = 1; // steps for profile in [s] |
---|
[1298] | 13 | // profileW = [0, 10, 0, 2 ]; |
---|
[1303] | 14 | // profileW = [0, 500, 1000, 1500, 2000, 2500, 3000 ]; |
---|
[1290] | 15 | // profileW = [0, -10, 30, 60, 90, 60, 30, 0, -30, -60, -30]; |
---|
[1400] | 16 | // profileW = [0, -1, 3, 6, 9, 6, 3, 0, 0, 0, 0, 0,0,-3, -6, -3]; |
---|
| 17 | profileW = [1, 10, 50, 200, 200, 30, 0, 0, -30, -30, -100, -100, -40, 0, 0]; |
---|
[1387] | 18 | // profileW = [1, 10, 50, 200, 200, 30, 1, 1, -1, -10, -50, -200, -200, -30, 0]; |
---|
[1385] | 19 | // profileW = [250, 500, 750, 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000, 3000]; |
---|
[1400] | 20 | // profileM = [0, 3, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0]; |
---|
[1290] | 21 | profileM = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; |
---|
| 22 | }; |
---|
| 23 | |
---|
[1387] | 24 | UD = {class="EKF_UD"; |
---|
[1400] | 25 | IM = {class="IMpmsm"; |
---|
[1290] | 26 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
[1402] | 27 | compensate = 0; |
---|
[1290] | 28 | }; |
---|
| 29 | OM = {class="OMpmsm";}; |
---|
[1385] | 30 | // dQ=[0.1, 0.1, 0.1, 0.001]; ///??????????????? |
---|
| 31 | // dQ=[0.1, 0.1, 10.01, 10.01]; |
---|
[1402] | 32 | dQ=[0.1, 0.1, 0.1, 0.001];//, 0.0000000000000000001]; |
---|
[1400] | 33 | // dQ=[0.1, 0.1, 0.1, 0.00001]; |
---|
| 34 | dR=[0.05, 0.05]; |
---|
| 35 | // dR=[0.00001, 0.00001]; |
---|
[1290] | 36 | //connect |
---|
[1387] | 37 | log_level="logmean,logU,logD,logC"; |
---|
[1290] | 38 | name = "Est0"; |
---|
| 39 | }; |
---|
| 40 | |
---|
[1298] | 41 | OT= {class="EKFfull"; |
---|
| 42 | IM = {class="IMpmsmOT"; |
---|
| 43 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
| 44 | }; |
---|
| 45 | name = "ekf"; |
---|
| 46 | OM = {class="OMpmsmOT"; |
---|
| 47 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
| 48 | }; |
---|
| 49 | dQ=[0.1, 0.01]; ///////// <====== OK |
---|
| 50 | dR=[0.5, 0.5]; |
---|
| 51 | dP0=[0.1, 0.1]; |
---|
| 52 | //connect |
---|
| 53 | log_level="logmean,logevidence,logbounds"; |
---|
| 54 | }; |
---|
| 55 | |
---|
| 56 | PF= {class = "PF";name="pf"; |
---|
| 57 | particle = {class ="BootstrapParticle"; |
---|
| 58 | parameter_pdf = {class="mgnorm<ldmat>"; |
---|
| 59 | g={class="IMpmsmOT"; |
---|
| 60 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
| 61 | }; |
---|
| 62 | dR=[0.001,0.0001]; |
---|
| 63 | rv ={class="RV";names=("om","th");}; |
---|
| 64 | rvc ={class="RV";names=("om","th","o_ua","o_ub","o_ia","o_ib");times=[-1,-1,0,0,-1,-1];}; |
---|
| 65 | }; |
---|
| 66 | observation_pdf= {class="mgnorm<ldmat>"; |
---|
| 67 | g={class="OMpmsmOT"; |
---|
| 68 | params = "pmsm107@./cfg/zcu.cfg"; |
---|
| 69 | }; |
---|
| 70 | dR=[0.5,0.5]; |
---|
| 71 | rv ={class="RV";names=("o_ia","o_ib");}; |
---|
| 72 | rvc = {class="RV";names=("om","th","o_ua","o_ub","o_ia","o_ib");times=[0,0,0,0,-1,-1];}; |
---|
| 73 | }; |
---|
| 74 | }; |
---|
| 75 | n = 100; |
---|
| 76 | log_level="logbounds,logmean"; |
---|
| 77 | prior = {class="euni"; |
---|
| 78 | high = [ 0.1, 1.0]; |
---|
| 79 | low = [ -0.1, -1.0]; |
---|
| 80 | rv ={class="RV";names=("om","th");}; |
---|
| 81 | }; |
---|
| 82 | }; |
---|
| 83 | |
---|
| 84 | |
---|
| 85 | |
---|
[1290] | 86 | controllers=({ |
---|
[1298] | 87 | // class = "PMSM_PICtrl"; |
---|
[1385] | 88 | // class = "PMSM_LQCtrl"; |
---|
[1303] | 89 | // class = "PMSM_LQCtrl_dq"; |
---|
[1385] | 90 | // class = "PMSM_LQCtrl_dq2"; |
---|
| 91 | // class = "PMSM_LQCtrl_bic"; |
---|
| 92 | // class = "PMSM_LQCtrl_bic2"; |
---|
| 93 | class = "PMSM_LQCtrl_bic3"; |
---|
[1392] | 94 | // class = "PMSM_LQCtrl_EKF_Inj"; //biver legenda |
---|
| 95 | estim = "UD"; // 0 - nic navic |
---|
| 96 | // estim = "PF"; // 1 - signum |
---|
| 97 | // r = 0.0001; // 2 - signum + casovy posun |
---|
| 98 | r = 0.001; // 3 - 3 KF v dq // 30 - pocita det misto varth |
---|
[1399] | 99 | // r = 0.04; // 4 - 5 KF v albe // 40 - pocita det misto varth //44 - uprava |
---|
[1392] | 100 | h = 10; // 5 - konst v d |
---|
| 101 | MAXu = 400; // 6 - injektaz do d |
---|
| 102 | // MAXu = 100; // 7 - injektaz albe |
---|
| 103 | MAXuflag = 2; // 8 - injektaz do d i do q |
---|
| 104 | // rpd = 0.1; // 9 - nahodny vyber jako 5 KF |
---|
| 105 | rpd = 0.00417; // 10 - postupne jako 5 KF |
---|
| 106 | bcbv = 6.0; // 11 - injektaz albe round sin resp. cos |
---|
[1402] | 107 | //bcbv = 0.0; // 13 - grid |
---|
| 108 | biver = 13; |
---|
[1392] | 109 | injkon = 6.0; |
---|
| 110 | injome = 16000.0; |
---|
| 111 | // injome = 500.0; |
---|
[1385] | 112 | injphi = 0.0; |
---|
[1387] | 113 | |
---|
[1392] | 114 | //multiple Kalman Q & R mat. |
---|
[1402] | 115 | Qred00 = 0.1; |
---|
| 116 | Qred11 = 0.01; |
---|
| 117 | // Qred01 = 0.1; |
---|
| 118 | // Qred10 = 0.000001; |
---|
| 119 | // Qred10 = 0.01; |
---|
| 120 | Rred00 = 0.05;//00000001; |
---|
| 121 | Rred11 = 0.05;//00000001; |
---|
| 122 | // Rred00 = 0.000000001; |
---|
| 123 | // Rred11 = 0.000000001; |
---|
[1392] | 124 | // Rred01 = 0.0000000001; |
---|
| 125 | // Rred10 = 0.0000000001; |
---|
| 126 | |
---|
[1387] | 127 | // PI parametry |
---|
| 128 | PIw_Pd = 3.0; |
---|
[1399] | 129 | PIw_Pi = 0.0037; |
---|
[1387] | 130 | PIu_Pd = 20.0; |
---|
| 131 | PIu_Pi = 0.5; |
---|
[1399] | 132 | //PIw_Pd = 5.0; |
---|
| 133 | //PIw_Pi = 0.0037; |
---|
| 134 | //PIu_Pd = 4.0; |
---|
| 135 | //PIu_Pi = 0.5; |
---|
[1387] | 136 | |
---|
| 137 | log_level = "logModel"; |
---|
[1290] | 138 | } |
---|
| 139 | ); |
---|
| 140 | |
---|
| 141 | logger= { |
---|
| 142 | class="dirfilelog"; |
---|
| 143 | maxlen = 100; |
---|
[1303] | 144 | // dirname = "exp/ctrlPI"; |
---|
[1385] | 145 | // dirname = "exp/ctrlLQ"; |
---|
[1303] | 146 | // dirname = "exp/ctrlLQdq"; |
---|
[1385] | 147 | // dirname = "exp/ctrlLQdq2"; |
---|
| 148 | // dirname = "exp/ctrlLQbic"; |
---|
| 149 | // dirname = "exp/ctrlLQbic2"; |
---|
| 150 | dirname = "exp/ctrlLQbic3"; |
---|
| 151 | // dirname = "exp/ctrlLQEKFInj"; |
---|
| 152 | |
---|
[1290] | 153 | }; |
---|