В этом примере показано, как оценить обратную эдс и константы крутящего момента постоянного магнита синхронного двигателя (PMSM) черного ящика с неизвестным потокосцеплением. Можно использовать или обратную эдс или закрутить постоянный, чтобы описать потокосцепление и параметризовать блок Simscape™ Electrical™ PMSM. Эта параметризация позволяет вам точно реплицировать поведение двигателя черного ящика в симуляцию.
В этом примере, количестве пар полюса, сопротивления статора и индуктивности статора симуляции и черного ящика PMSMs уже заданы, чтобы соответствовать.
Откройте модель.
model='ee_pmsm_parameterization'; open_system(model) set_param(find_system('ee_pmsm_parameterization','FindAll', 'on','type','annotation','Tag','ModelFeatures'),'Interpreter','off')
Выберите опцию параметризации обратной эдс для симуляции PMSM и инициализируйте его значение к произвольному значению по умолчанию 0.1 V*s/rad.
Simulation_PMSM = [model,'/Simulation PMSM']; Ke = 0.1; set_param(Simulation_PMSM,'pmflux_param','3');
В качестве альтернативы можно установить опцию параметризации обратной эдс и задать ее значение от маски блока PMSM путем выбора обратной эдс Specify при параметризации потокосцепления Постоянного магнита и определения постоянной Обратной эдс.
Симулируйте модель и стройте напряжение в зависимости от времени через обмотку и для экспериментального и для симуляции PMSMs. Заметьте, что существует значительная разница в амплитуде напряжения между экспериментальным и симуляцией PMSMs.
sim(model); v_a_exp = simlog_ee_pmsm_parameterization.v_Ra_exp.V; v_a_sim = simlog_ee_pmsm_parameterization.v_Ra_sim.V; simscape.logging.plot({v_a_exp,v_a_sim},... 'names',{'Experimental PMSM','Simulation PMSM'}); title('Voltage across a-winding') ylabel('Voltage, V');
Вычислите напряжение, постоянное из черного ящика экспериментальный PMSM при помощи уравнения определения
,
где скорость вращения вала PMSM и является падением напряжения через обмотку двигателя. Это уравнение допустимо только, когда ток через обмотки очень мал. Небольшое текущее ограничение осуществляется в модели путем присоединения каждого из извилистых свободных концов, чтобы основываться через очень высокое сопротивление, эффективно создания каждой обмотки разомкнутой цепи.
вычисляется путем взятия среднего значения максимальных и минимальных значений падения напряжения через обмотку и деления результата два. Можно улучшить точность этого вычисления путем первого отфильтровывания высокочастотного шума измеренного сигнала напряжения:
window_size = 100; v_a_exp_filt = filter(1/window_size*ones(1,window_size),1,v_a_exp.series.values); v_a_exp_peak = (max(v_a_exp_filt)-min(v_a_exp_filt))/2;
Скорость вращения может быть измерена непосредственно от исходного блока:
angular_velocity_exp = mean(simlog_ee_pmsm_parameterization.Experiment_Angular_Velocity_Source.w.series.values);
Постоянная обратная эдс может теперь быть вычислена от вышеупомянутых результатов:
Ke = v_a_exp_peak / angular_velocity_exp; disp(Ke);
0.1803
Измените обратную эдс, постоянную для двигателя симуляции к ориентировочной стоимости, вычисленной в предыдущем разделе.
Simulation_PMSM = [model,'/Simulation PMSM']; set_param(Simulation_PMSM,'pmflux_param','3');
Повторно симулируйте модель и постройте напряжение через обмотку. Новая параметризация постоянного напряжения улучшает способность PMSM's симуляции реплицировать поведение экспериментального PMSM.
sim(model); v_a_exp = simlog_ee_pmsm_parameterization.v_Ra_exp.V; v_a_sim = simlog_ee_pmsm_parameterization.v_Ra_sim.V; simscape.logging.plot({v_a_exp,v_a_sim},... 'names',{'Experimental PMSM','Simulation PMSM'}); title('Voltage across a-winding') ylabel('Voltage, V');
Вычислите крутящий момент, постоянный из черного ящика PMSM использование уравнения определения:
,
то, где максимальный ток через обмотку и полный механический крутящий момент, управляет PMSM.
i_a_exp = simlog_ee_pmsm_parameterization.Ra_exp.i; i_a_sim = simlog_ee_pmsm_parameterization.Ra_sim.i; T = abs(mean(simlog_ee_pmsm_parameterization.Experiment_Angular_Velocity_Source.t.series.values)); window_size = 100; i_a_exp_filt = filter(1/window_size*ones(1,window_size),1,i_a_exp.series.values); i_a_exp_peak = (max(i_a_exp_filt)-min(i_a_exp_filt))/2; Kt = 2/3*T/i_a_exp_peak; disp(Kt); simscape.logging.plot({i_a_exp,i_a_sim},... 'names',{'Experimental PMSM','Simulation PMSM'}); title('Current across a-winding') ylabel('Current, A');
0.1797
Как ожидалось измеренный крутящий момент и константы обратной эдс имеют приблизительно то же значение (0.18) и связаны с потокосцеплением постоянного магнита через количество пар полюса двигателя:
Можно параметризовать потокосцепление постоянного магнита двигателя путем определения любого из, или в маске блока Simulation PMSM. Обратная эдс и константы крутящего момента чаще всего даются, чем потокосцепление постоянного магнита на моторных таблицах данных.
Смотрите страницу блока PMSM для получения дополнительной информации.