ee_calculateFluxPartialDerivatives

Вычислите частные производные потока для блока FEM-Parameterized PMSM

Описание

пример

[dFdA,dFdB,dFdC,dFdX] = ee_calculateFluxPartialDerivatives(A,B,C,X,F) вычисляет частные производные от редактирования потока. Для улучшения числовой эффективности FEM-Parameterized PMSM блок работает с производными от потока редактирования частными производными, а не непосредственно с редактированием потока. Если ваш конечный моторный Design Tool не имеет опции для вывода частных производных, то можно использовать эту функцию, чтобы вычислить частные производные из редактирования потока. Поток редактирования F должна быть четырехмерной матрицей с первыми тремя размерностями, соответствующими A, B, и C токи фаз и четвертая размерность, соответствующий углу ротора X. Функция возвращает четырехмерные матрицы для четырех частных производных. Используйте этот синтаксис в сочетании с вариантом 4-D Данные блока.

пример

[dFdA,dFdB,dFdC,dFdX,D,Q] = ee_calculateFluxPartialDerivatives(A,B,C,X,F) возвращает два дополнительных выходных аргументов, соответствующих d-ось и q-токи осей, соответственно. В этом случае четыре частные производные являются трехмерными, первые две размерности, соответствующие d-ось и q-токи оси и третья размерность, соответствующий углу ротора. Используйте этот синтаксис в сочетании с вариантом 3-D Данные блока.

Примеры

свернуть все

Предположим F что это четырехмерная матрица, содержащая данные о редактировании потока, экспортированные вашим конечноэлементным Design Tool двигателя. Матричные размерности соответствуют три фазы токам и углу ротора, соответственно. Данные являются циклическими по четвертой размерности, соответствующему углу ротора.

Совет

Если у вас нет данных из конечноэлементного Design Tool электродвигателя для PMSM, чтобы предотвратить ошибку симуляции, прежде чем запускать код для этого примера, сначала сгенерируйте необходимую матрицу F, запустив пример Generate 4-D Flux Linkage F для ee_generateIdealPMSMfluxData функция.

Либо непосредственно импортируйте, либо воссоздайте текущие векторы. Для примера, если воссоздать вектор тока с равномерными интервалами между -250 и 250 A и 5 A шаги, то:

iA = linspace(-250,250,5);
iB = iA;
iC = iA;

Импортируйте или задайте количество пар полюсов.

N = 6;

Импортируйте вектор угла ротора или воссоздайте его на основе количества пар полюсов.

X = pi/180*linspace(0,360/N,180/N+1);

Вычислите поток редактирования частные производные.

[dFdA,dFdB,dFdC,dFdX] = ee_calculateFluxPartialDerivatives(iA,iB,iC,X,F);

Функция возвращает четыре матрицы 4-D для производных по потоку редактирования частным производным. Четыре матрицы соответствуют три фазы токам и углу ротора, соответственно. Матричные размерности также соответствуют три фазы токам и углу ротора.

Предположим, F является четырехмерной матрицей, содержащей данные о редактировании потока, экспортируемые вашим конечноэлементным Design Tool двигателя. Матричные размерности соответствуют три фазы токам и углу ротора, соответственно. Данные являются циклическими по четвертой размерности, соответствующему углу ротора.

Совет

Если у вас нет данных из конечноэлементного Design Tool электродвигателя для PMSM, чтобы предотвратить ошибку симуляции, прежде чем запускать код для этого примера, сначала сгенерируйте необходимую матрицу F, запустив пример Generate 4-D Flux Linkage F для ee_generateIdealPMSMfluxData функция.

Либо непосредственно импортируйте, либо воссоздайте текущие векторы. Для примера, при воссоздании вектора тока с равномерно расположенными значениями между -250 и 250 A и 5 A шаги:

iA = linspace(-250,250,5);
iB = iA;
iC = iA;

Импортируйте или задайте количество пар полюсов.

N = 6;

Импортируйте вектор угла ротора или воссоздайте его на основе количества пар полюсов.

X = pi/180*linspace(0,360/N,180/N+1);

Вычислите поток редактирования частные производные.

[dFdA,dFdB,dFdC,dFdX,iD,iQ] = ee_calculateFluxPartialDerivatives(iA,iB,iC,X,F);

Функция возвращает четыре матрицы 3-D для производных по потоку редактирования частным и два вектора для d-ось и q-ось текущих значений. Четыре матрицы соответствуют три фазы токам и углу ротора, соответственно. Матричные размерности соответствуют d-ось и q-токи оси и угол ротора.

Входные параметры

свернуть все

Ток A-фазы, в амперах, задается как вектор. Вектор должен быть монотонно увеличивающимся и двусторонним (содержать как положительные, так и отрицательные значения). Лучшая практика состоит в том, чтобы включить нуль тока в качестве одного из точек.

Типы данных: double

Ток B-фазы, в амперах, задается как вектор. Вектор должен быть монотонно увеличивающимся и двусторонним (содержать как положительные, так и отрицательные значения). Лучшая практика состоит в том, чтобы включить нуль тока в качестве одного из точек.

Типы данных: double

Ток C-фазы, в амперах, задается как вектор. Вектор должен быть монотонно увеличивающимся и двусторонним (содержать как положительные, так и отрицательные значения). Лучшая практика состоит в том, чтобы включить нуль тока в качестве одного из точек.

Типы данных: double

Угол ротора, в радианах, задается как вектор. Значения должны быть в области значений от нуля до 2,/ N, где N - количество пар полюсов.

Типы данных: double

Редактирование потока в вебер-поворотах задаётся как четырехмерная матрица с размерностями, соответствующими три фазы токам и углу ротора. Данные должны быть цикличными в четвертом (угол ротора) размерность, то есть, для всего i, j, и k, F (i, j, k, 0) = F (i, j, k, / N), где N - количество пар полюса.

Типы данных: double

Выходные аргументы

свернуть все

Поток редактирования частная производная относительно тока A-фазы, возвращенная как матрица. Для синтаксиса, используемого с вариантом 4-D Данные блока, матрица четырехмерна. Для синтаксиса, используемого с вариантом 3-D Данные блока, матрица трехмерна, первые две размерности, соответствующие d-ось и q-токи оси и третья размерность, соответствующий углу ротора.

Поток редактирования частная производная относительно тока B-фазы, возвращенная как матрица. Для синтаксиса, используемого с вариантом 4-D Данные блока, матрица четырехмерна. Для синтаксиса, используемого с вариантом 3-D Данные блока, матрица трехмерна, первые две размерности, соответствующие d-ось и q-токи оси и третья размерность, соответствующий углу ротора.

Поток редактирования частная производная относительно тока С-фазы, возвращенная как матрица. Для синтаксиса, используемого с вариантом 4-D Данные блока, матрица четырехмерна. Для синтаксиса, используемого с вариантом 3-D Данные блока, матрица трехмерна, первые две размерности, соответствующие d-ось и q-токи оси и третья размерность, соответствующий углу ротора.

Поток редактирования частная производная относительно угла ротора, возвращенная как матрица. Для синтаксиса, используемого с вариантом 4-D Данные блока, матрица четырехмерна. Для синтаксиса, используемого с вариантом 3-D Данные блока, матрица трехмерна, первые две размерности, соответствующие d-ось и q-токи оси и третья размерность, соответствующий углу ротора.

D-ток оси, в амперах, возвращается как вектор. Это необязательный выходной аргумент, который используется, когда вы хотите сгенерировать 3-D редактирования частные производные. Вектор задает d- ось текущих значений, при которых определяются частные производные .

Q-ток оси, в амперах, возвращается как вектор. Это необязательный выходной аргумент, который используется, когда вы хотите сгенерировать 3-D редактирования частные производные. Вектор задает q- ось текущих значений, при которых определяются частные производные .

Алгоритмы

Функция вычисляет частные производные с помощью Akima splines, того же метода, который используется для smooth интерполяция на Simscape™ языке tablelookup функция. Для получения дополнительной информации смотрите makima. Акимы подходят для оценки частных производных из-за их гладкости и склонности не вводить локальные обратные градиенты.

Введенный в R2017a
Для просмотра документации необходимо авторизоваться на сайте