Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Моделирование ЭМС Выкса 2015.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.73 Mб
Скачать

2.3.3. Применение системы Matlab для математического моделирования электродвигателей переменного тока

Matlab (сокращение от англ. Matrix Laboratory)— пакет прикладных программ для решения задач технических вычислений и одноимённый язык программирования, используемый в этом пакете [17]. Программы, написанные на Matlab, бывают двух типов — функции и скрипты (function, script). Функции имеют входные и выходные аргументы, а также собственное рабочее пространство для хранения промежуточных результатов вычислений и переменных. Скрипты же используют общее рабочее пространство. Как скрипты, так и функции не компилируются в машинный код и сохраняются в виде текстовых файлов. Используются также специальные pre-parsed программы, обработанные в вид, удобный для машинного исполнения. В общем случае такие программы выполняются быстрее обычных, Основной особенностью языка MATLAB являются его широкие возможности по работе с матрицами. Программы решения дифференциальных уравнений на Matlab выполняются существенно быстрее файлов Мathcad.

В простом применении исходные данные в Мatlab задаются с помощью присваивания. Для решения дифференциальных уравнений можно применять различные методы. Использованный в предыдущем разделе метод Рунге-Кутта четвёртого порядка с автоматическим выбором шага выполняется в Мatlab функцией ode45. Вызов функции для воспроизведения процесса пуска асинхронного двигателя с короткозамкнутым ротором на интервале (t_n,t) c начальными значениями вектора переменных состояния Y_0 осуществляется оператором

[T,Y]=ode45('fct_ad_kz',[t_n t],Y_0),

где fct_ad_kz - имя подпрограммы-функции вычисления правых частей уравнений (2.40), (2.43)-(2.44) (рис. 2.25).

В списке формальных аргументов подпрограммы указываются только время t и вектор переменных состояния Y, для которых требуется рассчитать вектор производных F. Угловая частота вращения системы координат, матрицы коэффициентов и остальные параметры передаются в подпрограмму из общей области через список global. Результат интегрирования уравнения состояния формируется в виде двумерного массива Y, представляющего по столбцам мгновенные значения переменных (ids, iqs, idr, iqr, ωr θr). Строки значений переменных в этом массиве соответствуют значениям моментов времени в выходном массиве Т. Результаты вычислений полностью повторяют результаты, полученные с помощью Mathcad (рис. 2.24).

% файл-функция вычисления правых частей уравнений АД КЗ в относительных единицах

function F=fct_ad_kz(t, Y)

global omega_k Lsr1 Esr ls lr lm rs rr j_m m_c

Jsr=[Y(1);Y(2);Y(3);Y(4)];

omega_r=Y(5);

teta_r=Y(6);

beta=omega_k-omega_r;

Rsr=[ rs -omega_k*(ls+lm) 0 -omega_k*lm;...

omega_k*(ls+lm) rs omega_k*lm 0;...

0 -beta*lm rr -beta*(lr+lm);...

beta*lm 0 beta*(lr+lm) rr];

RYsr=Rsr*Jsr;

Vsr=Lsr1*Esr-Lsr1*RYsr;

m=lm*(Jsr(2)*Jsr(3)-Jsr(1)*Jsr(4));

F=[Vsr;(m-m_c)/j_m;omega_r];

Рис. 2.25. Файл-функция вычисления правых частей уравнения