diff --git a/Inu/Src/main_matlab/init28335.c b/Inu/Src/main_matlab/init28335.c index af74fd7..6298fe1 100644 --- a/Inu/Src/main_matlab/init28335.c +++ b/Inu/Src/main_matlab/init28335.c @@ -13,6 +13,7 @@ #define FREQ_TIMER_3 (FREQ_PWM*2) void init28335(void) { + init_simple_scalar(); edrk.flag_second_PCH = 0; @@ -24,6 +25,9 @@ void init28335(void) { //svgen_pwm24_1.phase_sequence = SIMULINK_SEQUENCE; //svgen_pwm24_2.phase_sequence = SIMULINK_SEQUENCE; + edrk.zadanie.iq_Izad = _IQ(1); + //analog_zero.iqU_1 = 2048; + //analog_zero.iqU_2 = 2048; } //void init28335(void) void edrk_init_variables_matlab(void) diff --git a/Inu/Src/main_matlab/main_matlab.c b/Inu/Src/main_matlab/main_matlab.c index 6fe85ef..410c73b 100644 --- a/Inu/Src/main_matlab/main_matlab.c +++ b/Inu/Src/main_matlab/main_matlab.c @@ -50,6 +50,7 @@ void mcu_simulate_step(void) } + ramp_all_zadanie(0); // тут все по штатному calc_norm_ADC_0(0); diff --git a/Inu/Src/main_matlab/param.c b/Inu/Src/main_matlab/param.c index ef4357a..d9c5bd7 100644 --- a/Inu/Src/main_matlab/param.c +++ b/Inu/Src/main_matlab/param.c @@ -31,11 +31,10 @@ void readInputParameters(const real_T *u) { edrk.Go = u[nn++]; u[nn++]; - edrk.Mode_ScalarVectorUFConst = ALG_MODE_FOC_OBOROTS; - edrk.zadanie.iq_power_zad_rmp = _IQ(u[nn++]); - edrk.zadanie.iq_oborots_zad_hz_rmp = _IQ(u[nn++]); + edrk.zadanie.iq_power_zad = _IQ(u[nn++]); + edrk.zadanie.iq_oborots_zad_hz = _IQ(u[nn++]); edrk.MasterSlave = MODE_MASTER; edrk.master_theta; @@ -84,33 +83,18 @@ void writeOutputParameters(real_T* xD) { xD[nn++] = t12sim.ciB; // Только для просмотра - xD[nn++] = _IQtoF(0); - xD[nn++] = _IQtoF(0); - - xD[nn++] = 0; - xD[nn++] = 0; - xD[nn++] = 0; - - xD[nn++] = 0; - xD[nn++] = 0; - - xD[nn++] = 0; - xD[nn++] = _IQtoF(0);//rs.wmZ; - xD[nn++] = _IQtoF(0) * NORMA_FROTOR * 60.0 / N_BAZ;//csp.wmLimZi; - - xD[nn++] = 0;///P_NOM; - xD[nn++] = 0;///P_NOM; - xD[nn++] = 0;///P_NOM; - - xD[nn++] = _IQtoF(vect_control.iqId2);//_IQtoF(vect_control.iqPzad); - xD[nn++] = _IQtoF(vect_control.iqIq2);// * NORMA_ACP; - xD[nn++] = _IQtoF(vect_control.iqId1);//_IQtoF(vect_control.iqUqCompensation1);// - xD[nn++] = _IQtoF(vect_control.iqIq1); - xD[nn++] = _IQtoF(vect_control.Iq_zad1); - xD[nn++] = _IQtoF(vect_control.Id_zad1);//iqZ; - - xD[nn++] = 0; - xD[nn++] = xpwm_time.Ta0_0; xD[nn++] = xpwm_time.Ta0_1; + xD[nn++] = xpwm_time.Tb0_0; + xD[nn++] = xpwm_time.Tb0_1; + xD[nn++] = xpwm_time.Tc0_0; + xD[nn++] = xpwm_time.Tc0_1; + + xD[nn++] = _IQtoF(edrk.Iq_to_slave); + xD[nn++] = _IQtoF(WRotor.iqWRotorSumFilter); + xD[nn++] = 0; + xD[nn++] = 0; + + xD[nn++] = _IQtoF(WRotor.iqWRotorSumFilter); + } \ No newline at end of file diff --git a/Inu/controller.c b/Inu/controller.c index 1a5f80f..e24e2cc 100644 --- a/Inu/controller.c +++ b/Inu/controller.c @@ -245,5 +245,4 @@ void controller(SimStruct *S, const real_T *u, real_T *xD, real_T *rW, int_T *iW writeOutputParameters(xD); - mcu_simulate_step(); } //void controller(SimStruct ... diff --git a/inu_im_2wnd_3lvl.slx b/inu_im_2wnd_3lvl.slx index a0cb9bd..d6b5b83 100644 Binary files a/inu_im_2wnd_3lvl.slx and b/inu_im_2wnd_3lvl.slx differ