FEMM 5

Часть V · Электрические машины → § 31 · Карты и спектры машин с магнитами

Занятие 31.2

Расчёт по полному угловому периоду и спектральный анализ

Цель и задачи

Цель. Получить воспроизводимый спектр угловой ЭДС.

Задачи

  • Применять встроенную БПФ к равномерному полному периоду без повторной крайней точки.
  • Выбрать равномерную серию без дублирования конца периода и нормировать спектр.
Что нужно вспомнить перед началом

Если одно из понятий незнакомо, вернитесь к предыдущему занятию и воспроизведите его численный пример. После этого переходите к новой постановке.

Место занятия в инженерной методике

Расчётная лабораторная работа · Получение периодической характеристики и её гармонического состава

Инженерный вопрос. Стабильны ли основные гармоники при уточнении угловой выборки?

Угловые потокосцепления, ЭДС, средний и пульсирующий моменты позволяют оценивать магнитную структуру и выбирать токовый угол. Рабочие точки магнитов ограничивают допустимые режимы.

Лабораторная работа:

Последовательность решения, отчёт и критерии результата

Результат получают из наблюдаемых величин и проверяют в условиях данного практикума.

Последовательность решения

  1. Обосновать постановку и способ измерения. Определите механический и электрический периоды, шаг выборки и нормировку гармоник. Для ЭДС нужен переход от угловой производной к временной.

  2. Вычисленный аналитический эталон. Проверьте спектральную нормировку на периодическом сигнале с известной гармоникой.

  3. Угловой период, БПФ и гармоники ЭДС. Выполните действия практикума по его исходной таблице. Сохраните полнопериодную таблицу потокосцеплений и коэффициенты спектра двух шагов.

  4. Ответить на вопрос по своим результатам. Обработайте равномерную периодическую таблицу: проверьте период, нормировку спектра и изменение результата при уточнении шага.

Что включить в отчёт

Результат этого занятия. Спектр и ЭДС с проверкой периода, фазы и нормировки.

Данные именно этого опыта. Сохраните полнопериодную таблицу потокосцеплений и коэффициенты спектра двух шагов.

Оформление наблюдений. Равномерная таблица за один период без повторной конечной точки, скорость, полюсность, гармоники с нормировкой амплитуды или действующего значения.

Как обосновать результат

Проверка из практикума. Нормировка проверена синусоидальным эталоном; разрешение подтверждено удвоением числа точек.

Независимый контроль. Восстановите контрольный сигнал из спектра и повторите выборку с меньшим угловым шагом; проверьте фазовые сдвиги и периодичность.

Критерий выполнения. Периоды выведены; спектры не смешаны; амплитудная нормировка и угловая сходимость подтверждены.

Точность и расхождения. Сравнивайте основную гармонику и значимые высшие гармоники при уточнении шага. Для малой гармоники приводите абсолютную амплитуду; относительный процент от почти нулевой величины вводит в заблуждение.

Основание сравнения. Используйте определения ДПФ, гармоник и ЭДС из занятия. Электрический и механический углы различаются; повторная конечная точка периода искажает спектр.

Вывод для устройства

Объясните, что найденные гармоники означают для формы ЭДС, пульсаций или оценки качества магнитной системы, не подменяя их полным расчётом вибрации и нагрева.

Границы вывода. Статическое состояние и заданная характеристика магнита не подтверждают автоматически температурный режим, необратимое размагничивание или полный спектр потерь.

Дополнительный расчётный метод

Обмоточные коэффициенты как средство выбора схемы и шага обмотки

Обмоточные коэффициенты позволяют выбрать шаг и схему обмотки: сравнить потерю основной ЭДС с подавлением нежелательных гармоник.

Лабораторные работы по методу: Выбор обмотки и расчет момента в кольцевом зазоре

Получаемые величины. k_w\nu, k_d\nu, k_p\nu; B\nu и отношение B\nu /B_{1}; ошибка относительно аналитической обмоточной функции

  1. Задаём таблицу знаков, пазов, витков и параллельных ветвей.
  2. Сравниваем распределённую обмотку с сосредоточенной при одинаковой согласованной МДС.
  3. Снимаем равномерные отсчёты полного периода, вычисляем спектр и k_w\nu.
  4. Отдельно изменяем шаг, раскрытие паза, сетку и нелинейную B(H); объясняем изменение ЭДС.
\begin{aligned}k_{d\nu}&=\frac{\sin(q\nu\alpha/2)}{q\sin(\nu\alpha/2)},\\k_{p\nu}&=\cos(\nu\varepsilon/2),\\k_{w\nu}&=k_{d\nu}k_{p\nu}.\end{aligned}
\alpha — электрический угол между соседними пазами; \varepsilon — электрический угол укорочения относительно полного шага 180^\circ. Формула k_p здесь применяется к нечётным гармоникам с явно выбранной опорной фазой.
Численный пример применения метода

Трёхфазная обмотка: q=3, угол между пазами \alpha =20^\circ, укорочение \varepsilon =20^\circ; фактический шаг катушки 160^\circ. Сравниваем основную и пятую гармоники.

  1. Находим k_{\mathrm{d\,}}{1}=0.959795 и k_{\mathrm{p\,}}{1}=0.984808.
  2. Получаем k_{\mathrm{w\,}}{1}=0.945214; относительно полного шага ЭДС основной гармоники уменьшается на 1.52%.
  3. Для \nu =5 находим k_{\mathrm{d\,}}{5}=0.217568, k_{\mathrm{p\,}}{5}=0.642788, k_{\mathrm{w\,}}{5}=0.139850.

Ответ. k_{\mathrm{w\,}}{1}=0.945214, k_{\mathrm{w\,}}{5}=0.139850. При неизменной пятой гармонике поля её вклад в ЭДС уменьшается на 35.72% относительно полного шага. Это количественный компромисс выбора шага обмотки.

Страницы источника. PDF 1–3: предпосылки; 5–7: спектр и нормировка; 7–8: программа и варианты

Литература по методу

Влияние раскрытия пазов на гармоники воздушного зазора

Сравнение гладкого и зубчатого зазоров показывает, как раскрытие пазов изменяет величину и фазу каждой гармоники, отдельно от влияния насыщения.

Лабораторные работы по методу: Пазовый зазор: коэффициент Картера и комплексная передача гармоник

Получаемые величины. C\nu = комплексный B\nu, slot/комплексный B\nu, smooth; B_{1} и высшие пространственные гармоники; ошибка аналитической оценки и чувствительность к B(H)

  1. Рассчитываем гладкий зазор с бесконечно узкими пазами и заданной схемой токов.
  2. Воспроизводим реальное раскрытие при тех же токах и граничных условиях.
  3. Находим C\nu по комплексным коэффициентам двух спектров, сохраняя общий угловой ноль и фазу; сравниваем с аналитикой.
  4. Отдельно вводим нелинейную сталь и проверяем сетку.
C_\nu=\frac{\widetilde B_{\nu,\mathrm{паз}}}{\widetilde B_{\nu,\mathrm{глад}}}
Оба комплексных коэффициента берутся при одном начале углов, направлении обхода и нормировке ряда Фурье.
Численный пример применения метода

Для одной гармоники задано: B̃глад=0,020∠30°Тл и B̃паз=0,016∠150°Тл. Это согласованные синтетические спектральные данные для проверки обработки.

  1. Делим модули:0{,}016/0{,}020=0{,}8.
  2. Вычитаем аргументы:150^\circ -30^\circ =120^\circ.
  3. Переходим к декартовой форме:C\nu =-0.400000+j0.692820.

Ответ. C\nu =0{,}8∠120^\circ =-0{,}400000+j0{,}692820. Запись только 0,8 скрыла бы поворот фазы 120^\circ, важный при суммировании гармоник.

Страницы источника. PDF 1: допущения; 2–4: расчётные выражения; 5–6: парные модели; 7: первичная литература

Литература по методу

Потокосцепление и ЭДС обмотки: сравнение независимых способов

Сравнение независимых способов потокосцепления позволяет проверить фазную ЭДС и количественно оценить вклад высших гармоник.

Лабораторные работы по методу: Зубцовые контуры: проводимости, коронки и взаимная связь при смещении; Измерительная рамка: от поля провода к ЭДС

Получаемые величины. Ψф и E ф, rms; вклад гармоник в \Psi и ЭДС; расхождение способов интегрирования; влияние насыщения и положения ротора

  1. Проверяем витки, ветви, полюса, длину и ось фазы.
  2. Сопоставляем сумму зубцовых потоков, усреднение A по сторонам и circuit flux linkage.
  3. Проверяем спектральный способ по B_{\delta} и обмоточной функции.
  4. Получаем \Psi (\theta ) и E=-\omega d\Psi /d\theta; повторяем с нелинейной сталью.
\frac{\widehat\Psi_\nu}{\widehat\Psi_1}=\frac{\widehat B_\nu}{\widehat B_1}\frac{k_{w\nu}}{k_{w1}}\frac{1}{\nu}
Отношение записано для согласованных пространственных гармоник и одной обмотки; при комплексном представлении сохраняются их фазовые углы.
\frac{E_{\nu,\mathrm{rms}}}{E_{1,\mathrm{rms}}}=\nu\frac{\widehat\Psi_\nu}{\widehat\Psi_1}
При постоянной скорости \nu-я пространственная гармоника потокосцепления изменяется вνраз быстрее основной; дифференцирование убирает множитель 1/\nu.
Численный пример применения метода

Заданы B_{1}=0{,}90 Тл, B_{5}=0{,}12 Тл и коэффициенты обмотки из примера q=3, \varepsilon =20^\circ:kw1=0,9452,kw5=0,1398. Оцениваем модули вкладов при постоянной скорости.

  1. Отношение амплитуд поля B_{5}/B_{1}=0.133333.
  2. С учётом обмотки и порядка гармоники получаем \Psi 5/\Psi 1=0.00394549.
  3. После дифференцирования E_{5}/E_{1}=5\Psi 5/\Psi 1=0.01972745.

Ответ. Пятая гармоника даёт 0.3945%основного потокосцепления, но 1.9727%основной ЭДС. Поэтому небольшое искажениеΨне обязательно означает столь же малое искажение напряжения.

Страницы источника. PDF 1–6: геометрия и прямые методы; 7–12: спектр; 12–13: вращающийся вектор; 14–16: программа и варианты

Литература по методу

Простые конечно-элементные модели для приближённых расчётов потерь в массивных роторах

Упрощение ротора обосновывают сохранением спектра возбуждения и рабочего насыщения. Потери существенных гармоник проверяют по отдельности, затем сравнивают их сумму с полной моделью.

Лабораторные работы по методу: Потери массивного ротора: частота, гармоники и магнитное смещение

Получаемые величины. состав и амплитуды токового слоя; частота гармоники относительно ротора; P\nu и ошибка суммы потерь; масштаб потерь и глубины проникновения

  1. Получить поле основной гармоники и насыщение базового режима.
  2. Сформировать отдельные гармонические токовые слои с достаточной дискретизацией.
  3. Назначить каждой гармонике частоту в системе ротора.
  4. Сравнить сумму потерь с многогармонической/полной моделью.
  5. При масштабировании проверить подобие поля, глубины проникновения и пересчёт мощности.

Страницы источника. PDF 1–17 полностью: 1–5 гармонические модели; 6–7 сравнение потерь; 8–10 физическое масштабирование; 11–15 реальные роторы и разностное поле; 16–17 литература и автор.

Литература по методу

Параметризация и автоматизация серий расчётов

Алгоритмическая последовательность объединяет параметры, свойства, геометрию, группы и серии расчётов. В курсе эти действия выполняются во встроенном Python FEMM 5 с сохранением точных имён API.

Лабораторные работы по методу: Трансформатор от потокосцеплений до схемы замещения и нагрузочной характеристики; Асинхронный двигатель от поля в зазоре до параметров и механической характеристики; Генератор с постоянными магнитами от конструкции ротора до ЭДС и нагрузочного напряжения; Контрольный опыт: от условия задачи к инженерному выводу; Опыт Эрстеда: момент стрелки, эквивалентный ток и движение; Измерительная рамка: от поля провода к ЭДС; Аналогии полей: проводимость, дуальная сеть и диффузия; Зубцовый момент: пусковая помеха и спектр PM-генератора

Получаемые величины. профиль B и гармоники; зубцовый момент M(\theta ); численная устойчивость углового шага; целостность параметрической геометрии

  1. Выделить исходные параметры и точные единицы.
  2. Построить свойства, геометрию и группы через проверенный Python API.
  3. Сохранить/повторно открыть модель с кириллицей перед серией.
  4. В каждом положении выполнить новый анализ, загрузить именно новое решение и записать режим/число.
  5. Для спектра и момента обосновать период и уточнить дискретизацию.

Страницы источника. PDF 1–30 полностью: 1–4 команды и правила; 5–10 простой зазор; 11–19 параметрическая PM-геометрия; 20–25 зубцовый момент; 26–30 токовые гармоники.

Литература по методу

Разделение переменных: поле плоского и кольцевого зазора

Затухание пространственных гармоник зависит от ширины зазора и радиусов. Расчёт связывает геометрию машины с полезной основной гармоникой и подавлением высших.

Лабораторные работы по методу: Асинхронный двигатель от поля в зазоре до параметров и механической характеристики; Генератор с постоянными магнитами от конструкции ротора до ЭДС и нагрузочного напряжения; Выбор обмотки и расчет момента в кольцевом зазоре; Определение коэффициентов поля явнополюсной машины; Асинхронный двигатель: механическая характеристика и вращающееся поле; Синхронный генератор: от полевых параметров к внешней и угловой характеристикам; Пазовый зазор: коэффициент Картера и комплексная передача гармоник; Аналогии полей: проводимость, дуальная сеть и диффузия

Получаемые величины. B\nu (y) и отношение потоков на двух сердечниках; затухание гармоники при \delta /\tau \nu; ошибка замены кольцевого зазора плоским

  1. Задать одну гармонику МДС и её период.
  2. Решить плоский и кольцевой зазоры с одинаковой МДС и согласованным масштабом.
  3. Проверить амплитуды на обеих границах и поток.
  4. Сравнить с FEMM и вычислить ошибку по основной и выбранным высшим гармоникам отдельно.

Страницы источника. PDF 1–33 полностью: 1–11 плоский зазор; 12–21 кольцевой и открытые области; 22–24 погрешности плоского приближения; 25–33 потоковая функция и комплексный потенциал.

Литература по методу

Зубчатость зазора, Картер и зубцовые контуры

Сравнение пазов по проводимости и гармоникам позволяет оценить зубчатость. Коэффициент Картера описывает эквивалентирование полного потока при той же МДС; локальные пики поля проверяют отдельно.

Лабораторные работы по методу: Определение коэффициентов поля явнополюсной машины; Пазовый зазор: коэффициент Картера и комплексная передача гармоник; Зубцовые контуры: проводимости, коронки и взаимная связь при смещении; Сила в пазу: нагрузка меди, стенок и выбор глубины проводника; Зубцовый момент: пусковая помеха и спектр PM-генератора

Получаемые величины. \Lambda зубцового деления и k\delta; \beta c(x), \beta s(x); разностная проводимость; B\nu и ошибка гладкого эквивалента

  1. Проверить условия изолированного прямоугольного паза и большой \mu.
  2. Рассчитать гладкий эталон и пазовый вариант при одинаковой МДС.
  3. Из потока определить эквивалентный зазор и коэффициент Картера.
  4. Сравнить пространственный профиль и гармоники; отдельно ослабить допущения и уточнить сетку.
  5. Для зубцового контура проверить особые граничные условия перед переносом его проводимости.

Страницы источника. PDF 1–54 полностью: 1–10 зубцовая зона и допущения; 11–20 чётное/нечётное поле; 21–33 преобразования; 34–42 проводимость и Картер; 43–54 разностная проводимость и зубцовый контур.

Литература по методу

Теория и вывод формул

Расчёт по полному угловому периоду даёт исходные данные для спектрального анализа потокосцепления, ЭДС и зубцового момента. Особое внимание уделяется периодичности выборки и нормировке гармоник.

Соглашения об обозначениях и единицах
  • \(i(t)\), \(u(t)\) — мгновенные значения; \(\widehat I\), \(\widehat U\) — комплексные амплитуды; \(\underline I_{\text{д}}\), \(\underline U_{\text{д}}\) — комплексные действующие значения. Для синусоиды \(\widehat I=\sqrt{2}\,\underline I_{\text{д}}\); действующее значение тока равно \(|\underline I_{\text{д}}|\). Нормировка обязательно учитывается в формулах мощности.
  • \(\Phi=\int_S\mathbf B\cdot\mathrm d\mathbf S\) — поток через ориентированную поверхность; \(\Psi=\sum_k\oint_{C_k}\mathbf A\cdot\mathrm d\mathbf l\) — потокосцепление последовательных витков с согласованными замкнутыми контурами. Только при одинаковом сцепленном потоке каждого витка \(\Psi=N\Phi\). Обе величины измеряются в веберах: число витков безразмерно. Запись «Вб·виток» подчёркивает суммирование.
  • \(\theta_{\text{м}}\), \(\Omega\) (также \(\omega_{\text{мех}}\)) — механические угол и угловая скорость. Для основной гармоники \(\theta_{\text{э}}=p\theta_{\text{м}}\), \(\omega_{\text{э}}=p\Omega\), где \(p\) — число пар полюсов. Геометрический период зубцов задаётся отдельно. В производных по углу используйте радианы.
  • Статическая индуктивность \(L_{\text{ст}}=\Psi/i\) — наклон секущей из начала координат; это определение используется при \(\Psi(0)=0\) и \(i\ne0\). Динамическая индуктивность \(L_{\text{дин}}=\partial\Psi/\partial i\) — наклон касательной (дифференциальная, инкрементальная); положение и остальные токи фиксированы. Для линейной характеристики без смещения обе равны одной индуктивности \(L\). При постоянных магнитах и взаимном возбуждении сначала учитывают ненулевое смещение потокосцепления.
  • Положительные направления, оси и специальные индексы определяются в конкретной задаче. Единицу берите из условия или заголовка таблицы; перед подстановкой в формулу СИ переводите миллиметры в метры, миллигенри в генри и градусы в радианы.
  • Численные результаты обычно показаны с четырьмя значащими цифрами; для сравнения близких значений в таблицах сходимости сохранено больше цифр. Полные значения остаются в исходных расчётных данных. Малые остатки вычисления координат на осях показаны как ноль; малые физические величины сохраняются в показательной записи.
Указатель формул этого занятия
  1. (31.14) · Физическая и вычислительная постановка
  2. (31.15) · Численный пример
  3. (31.16) · Что именно сравнивается
  4. (31.17) · Период, средний момент и цена сглаживания
  5. (31.18) · Период, средний момент и цена сглаживания
  6. (31.19) · Откуда берутся зубцовый момент и моментные пульсации
  7. (31.20) · Вывод многослойной двумерной оценки скоса
  8. (31.21) · Вывод многослойной двумерной оценки скоса

Физическая и вычислительная постановка

Дискретное преобразование Фурье разлагает равномерную последовательность на гармоники. Для действительного периодического сигнала коэффициент положительной ненулевой гармоники умножают на 2/N, чтобы получить амплитуду синусоиды. Нулевой коэффициент делят только на N; частота Найквиста также имеет отдельную нормировку. Во встроенной numpy.fft.fft FEMM 5 стандартная прямая БПФ не содержит общего деления на N.

ЭДС выводят дифференцированием потокосцепления: гармоника порядка h получает множитель h \omega_{\text{эл}}. Поэтому небольшой высокочастотный компонент \Psi может создавать заметный компонент ЭДС. Коэффициент гармоник напряжения вычисляют по действующим значениям, исключая основную и постоянную составляющие. Для идеальной геометрии без токов период зубцового момента равен 360^\circ/\operatorname{НОК}(Q,2p); с иной симметрией вывод пересматривают. Пространственный спектр поля вдоль зазора и временной спектр фазной ЭДС являются разными объектами, даже если оба вычисляются одной БПФ.

C_h=\sum_{k=0}^{N-1}\Psi_k e^{-j2\pi hk/N},\quad\Psi_{h,\text{амп}}=\frac{2|C_h|}{N},\quad E_{h,\text{д}}=\frac{h\omega_{\text{эл}}\Psi_{h,\text{амп}}}{\sqrt2}
(31.14)
Положительные гармоники ниже частоты Найквиста; крайняя точка периода не повторяется.

Порядок проверки результата

Численный пример ниже является аналитическим учебным эталоном. Его значения вычислены по указанным формулам; они не обозначают результат решения новой модели методом конечных элементов. Практикум связывает эталон с полевой задачей: сначала воспроизведите уже проверенный результат базового раздела, затем измените только один исследуемый параметр. Именно такое сравнение позволяет отделить ошибку программы от влияния геометрии, сетки и физического приближения. Сохраните исходную модель, рабочую копию и таблицу с заголовками величин. В подписи каждой величины укажите единицу, положительное направление и способ получения; для гармонических величин дополнительно укажите амплитудную нормировку. Если условие задачи не выполнено, остановите серию и сохраните причину отказа вместе с последним корректным состоянием.

Пояснение программы

Сто двадцать восемь отсчётов охватывают полный период без повторения конечной точки. Коэффициенты быстрого преобразования Фурье нормируются отдельно для среднего значения и положительных гармоник. При дифференцировании потокосцепления появляется множитель порядка гармоники. Деление на \sqrt{2} даёт действующее значение ЭДС. В эталоне имеется только пятая высшая гармоника; для реальной таблицы учитывают все разрешённые высшие гармоники.

Нормировка дискретного спектра и ЭДС гармоник

Выборка содержит равномерные точки одного полного периода без повторения конечной точки. Номер гармоники относится к выбранному электрическому периоду.

  1. Вычислите дискретное преобразование с указанным знаком экспоненты. Для вещественной последовательности положительная и отрицательная частоты сопряжены.

  2. У обычной положительной гармоники амплитуда равна удвоенному модулю коэффициента, делённому на число точек. Постоянную составляющую и частоту Найквиста при чётном числе точек не удваивают.

  3. Производная по времени умножает каждую гармонику потокосцепления на её угловую частоту. Поэтому высокие гармоники ЭДС могут быть заметны даже при небольших гармониках потокосцепления.

Таблица 31.4. Обозначения и единицы
ВеличинаФизический смыслЕдиница СИ
\PsiПотокосцепление обмоткиВб
fЧастота гармоникиГц
U_{\text{д}}Действующее значение напряженияВ
C_hНенормированный комплексный коэффициент дискретного преобразованияВб
hНомер спектральной гармоники в этом разделе1

Границы применимости. Формула частоты гармоники должна соответствовать выбранному периоду выборки. Механический период нельзя трактовать как электрический без учёта числа пар полюсов.

Разобранный численный пример

Вычисленный аналитический эталон

Дано. \Psi = 0{,}08\cos \theta_{\text{эл}} + 0{,}004\cos 5 \theta_{\text{эл}} \,\text{Вб}; f_{\text{эл}} = 100 \,\text{Гц}; N = 128.

  1. БПФ возвращает амплитуды \Psi_{1} = 0{,}08 \,\text{Вб} и \Psi_{5} = 0{,}004 \,\text{Вб}.

    E_{1,\text{д}}=\frac{2\pi\cdot100\cdot0{,}08}{\sqrt2}=35{,}5431\ \text{В},\quad E_{5,\text{д}}=\frac{5\cdot2\pi\cdot100\cdot0{,}004}{\sqrt2}=8{,}88577\ \text{В}
    (31.15)
  2. E_{1,\text{д}} = 2\pi \cdot 100 \cdot 0{,}08/\sqrt{2} = 35{,}543064 \,\text{В}; E_{5,\text{д}} = 5 \cdot 2\pi \cdot 100 \cdot 0{,}004/\sqrt{2} = 8{,}885766 \,\text{В}.

  3. Коэффициент гармоник этого двухкомпонентного эталона равен E_{5}/E_{1} = 0{,}25 = 25 \,\%.

Ответ: Гармоника \Psi всего 5 \,\% превращается в гармонику ЭДС 25 \,\% из-за множителя порядка h.

Проверка: Среднее \Psi близко к нулю; N > 2 \cdot 5; удвоение N сохраняет амплитуды аналитического эталона.

Углублённый разбор

Три обмоточные топологии Katona: согласованное сравнение в FEMM 5

Что именно сравнивается

Исходная документация содержит однослойную распределённую обмотку Q=12, 2p=4, двухслойную укороченную обмотку Q=12, 2p=4 и сосредоточенную обмотку Q=12, 2p=8. Это три физических проекта. В последнем варианте одновременно меняются число полюсов и геометрия магнитов, поэтому всю разность момента нельзя приписывать сосредоточению катушек. Методическая ценность примера состоит в документировании условий сравнения.

В наших учебных копиях геометрия библиотечных примеров сохранена, материалам пазов назначены три последовательные цепи. Число проводников каждой стороны выбрано так, чтобы каждая фаза имела 40 последовательных витков: в однослойном случае 20 проводников в стороне, в двухслойном и сосредоточенном — 10. Для нагрузки задаётся амплитуда i_q=5 А с физической d-осью, определённой по потокосцеплениям ХХ. Глубина всех сечений равна 40 мм. Площадь меди, длина лобовых частей, тепловая нагрузка и число пар полюсов не уравнивались; сравнение КПД из этого опыта не следует.

Группа ротора назначена по радиусам концов каждой линии и дуги, а не выбором всех объектов окружностью. Это позволяет поворачивать магнитные области без захвата зубцов статора. Библиотечные оригиналы и прежние промежуточные модели сохранены отдельно для сверки и не включены в курс. Учебные katona-*-course.fem содержат русские имена материалов и границы; геометрия и физические параметры сохранены. Адаптация к русским именам фазных цепей и серия создаются в отдельной папке katona-output. Лицензия исходных геометрий AGPL-3.0 включена в комплект.

Для магнитостатического сравнения пазам назначен отдельный идеализированный материал «Идеальная обмотка» с \mu _{r}=1 и \sigma =0. Исходный тип Magnet Wire с нулевым числом жил не используется для определения сопротивления; потери меди здесь отсутствуют. Эта замена источников явно отделена от сохранённых исходных геометрий.

N_{\text{ф}}=\frac12\sum_{k\in\text{фаза}}|N_k|=40,\quad i_d=0,\quad i_q=5\ \text{А},\quad I_{\text{ф,действ}}=\frac5{\sqrt2}\ \text{А}
(31.16)
Одинаковое число последовательных витков и одинаковый ток — необходимые, но недостаточные условия равной тепловой нагрузки.

Период, средний момент и цена сглаживания

Для идеальной симметричной машины зубцовая периодичность определяется совместной повторяемостью пазов и магнитных полюсов. При этом токовый вектор в нагрузочной серии поворачивается согласованно с ротором. Поэтому исследуется установившееся синхронное токовое состояние; обычная серия с неподвижными фазными токами отвечала бы другому вопросу. Для первой и второй топологий зубцовый период равен 30 механическим градусам, для третьей — 15^\circ.

В комплект включены отдельные серии ХХ и нагрузки по 32 положения. Средний момент и размах рассчитаны независимо. Из той же серии берётся каждое второе положение для контроля 16→32. Это исследование углового шага, а не сеточной сходимости. Ненулевой остаточный средний момент ХХ является индикатором дискретизации и сеточного смещения; его нужно показать, а не скрывать вычитанием постоянной без пояснения. Относительную пульсацию при малом среднем моменте ХХ не определяют: используют Н·м.

Основную составляющую потокосцепления оценивают проекцией на согласованно вращающиеся оси и осреднением по периоду симметричной обмотки. При восстановлении ЭДС обязательно учитывают число пар полюсов: одинаковая механическая скорость при p=4 даёт вдвое большую электрическую частоту, чем при p=2. Полный спектральный анализ произвольной несимметричной машины требует полного электрического периода, а не сокращённого зубцового отрезка.

N_{\text{зуб}}=\operatorname{НОК}(Q,2p),\quad \tau_{\text{зуб}}=\frac{360^\circ}{N_{\text{зуб}}},\quad \overline T=\frac1N\sum_jT_j,\quad \Delta T=T_{\max}-T_{\min}
(31.17)
Сокращение периода требует реальной геометрической и токовой симметрии.
E_{\text{ф,действ},1}=\frac{p\omega_{\text{мех}}}{\sqrt2}\Psi_{\text{амп},1}
(31.18)
При сравнении ЭДС следует указать, какая скорость поддерживается одинаковой — механическая или электрическая.

Зачем нужны два контрольных опыта

Дано. Исходные проекты Katona, N ф=40, Iq=5 А, глубина 40 мм.

  1. До чтения чисел выпишите параметры, которые действительно сохранены: витки, ток, глубина. В третьей машине p=4 вместо p=2; это заведомо дополнительное изменение.

  2. Откройте katona-result.json: для каждой топологии отдельно приведены mean_T_Nm, ripple_pp_Nm, контроль 16 точек и проекция основной гармоники потокосцепления. Это наши FEMM 5 результаты, а не воспроизведение опубликованной таблицы автора.

  3. Сравните сначала 1→2 для влияния укорочения и слоёв. Затем сравните третью машину как другую топологию; не делайте вывода о превосходстве сосредоточенных обмоток вообще.

Ответ. Расчётная таблица содержит измеримый эффект и область его интерпретации. Численные результаты доступны в приложенном JSON и интерактивном разборе.

Проверка. Для вывода о конструкции потребуются контроль сетки и сравнение при одинаковой тепловой нагрузке; текущие 32 угла обеспечивают только явно указанную ступень проверки.

Численные итоги трёх топологий

Дано. По 32 угла на зубцовый период; N ф=40, Iq=5 А; фазная ЭДС пересчитана к 1000 об/мин.

  1. Однослойная Q_{12}/2p_{4}: средний момент нагрузки 0,657838 Н·м; размах 4,892 Н·м; зубцовый размахХХ 4,928 Н·м; проекция основного потокосцепления 0,04301 Вб.

  2. Двухслойная укороченная Q_{12}/2p_{4}:0,572154 Н·м;4,716 Н·м;4,738 Н·м;0,03717 Вб соответственно.

  3. Сосредоточенная Q_{12}/2p_{8}:0,676254 Н·м;0,285957 Н·м;0,221366 Н·м;0,02182 Вб соответственно. Здесь p=4, поэтому сравнение ЭДС при одной механической скорости обязательно учитывает удвоенную электрическую частоту.

  4. Для третьей топологии контроль 16→32 меняет зубцовый размах 0,185828→0,221366 Н·м. Такой сдвиг показывает, что 16 отсчётов для малой пульсации недостаточно; количественное ранжирование нужно продолжить уточнением угла и сетки. Остаточные средние моментыХХ 0,0116…0,0209 Н·м также сохраняются в отчёте.

Ответ. Это наши новые FEMM5-результаты конкретных геометрий. Снижение пульсаций третьей машины не приписывается одному лишь типу обмотки.

Проверка. В таблице различены нагрузочный средний момент, размахХХ и амплитуда потокосцепления; первичные 32 точки доступны в katona-result.json.

Согласованное сравнение трёх машин

  1. Запустите katona_winding_compare.py из полного комплекта во встроенном Python. Сохраните учебные входные модели без изменения; библиотечные оригиналы в комплект не входят.
  2. Постройте три пары кривых T(\theta ) для ХХ и нагрузки. Подпишите p, период и нормировку тока.
  3. Проверьте изменение среднего момента и размаха при 16→32; отдельно оцените остаточное среднее значение ХХ.
  4. Повторите только один вариант на более мелкой зазорной сетке, прежде чем считать различие двух конструкций физически достоверным.
  5. Для корректного сравнения потерь меди добавьте длину лобовых частей, площадь жил, ветви и температуру.

Ожидаемый результат. Три описания и таблица ЭДС/момента с оговорёнными ограничениями.

Проверка. Раскладка, число последовательных витков, угловая и сеточная чувствительность не смешаны.

Три геометрии Katona во встроенном Python: ХХ и нагрузка

195 новых полевых решений: по 32 угла ХХ и нагрузки плюс нулевое калибровочное положение для каждой из трёх геометрий. Сетка не уточняется автоматически.

Скачать программу для встроенного Python FEMM 5

Для запуска сохраните необходимые файлы, сохраняя их имена и структуру подпапок:

MicroPython · FEMM 5
"""Встроенный Python FEMM5. Три учебные геометрии на основе Katona, независимый адаптер.
Новые серии: 32 положения ХХ и 32 положения нагрузки на зубцовый период.
Все токи пиковые. Nф=40 последовательных витков, Iq=5А, d=40мм.
"""
import math,json,os,sys
assert sys.implementation.name=='micropython'

# FEMM CLI и команда запуска сохранённого файла передают его путь в sys.argv[0].
# Локальные модели/таблицы ищутся возле программы, а не в случайной рабочей папке.
import os
_saved_file=globals().get('__file__') or (sys.argv[0] if sys.argv else '')
if not _saved_file or not os.path.isfile(_saved_file):
 raise RuntimeError('Запустите сохранённый файл из полного распакованного комплекта командой FEMM Run Script; не вставляйте его частями в консоль.')
os.chdir(os.path.dirname(os.path.abspath(_saved_file)))

try:os.mkdir('katona-output')
except OSError:pass
def close():
 for n in ['mo_close','mi_close']:
  try:globals()[n]()
  except Exception:pass
def labels(path):
 with open(path,'r') as f:lines=f.read().split('\n')
 names=[];rows=[];inlabels=False;count=0
 for line in lines:
  if '<BlockName>' in line:names.append(line.split('"')[1])
  if '[NumBlockLabels]' in line:inlabels=True;count=int(line.split('=')[1]);continue
  if inlabels and len(rows)<count:rows.append(line.split())
 return names,rows
def load(case):
 path='katona-'+str(case)+'-course.fem';close();opendocument(path);mi_probdef(0,'millimeters','planar',1e-8,40,25)
 materials,rows=labels(path);counts=[0,0,0]
 for row in rows:
  name=materials[int(row[2])-1]
  if name in ['A','B','C','a','b','c']:counts['ABC'.index(name.upper())]+=1
 assert len(set(counts))==1
 # Каждая сторона катушки содержит N, число последовательных витков фазы = сумма |N|/2.
 turns=80/counts[0]
 for name in ['A','B','C']:mi_addcircprop('Фаза '+name,0,1)
 mi_addmaterial('Идеальная обмотка',1,1,0,0,0)
 for row in rows:
  mat=materials[int(row[2])-1]
  if mat in ['A','B','C','a','b','c']:
   x,y=float(row[0]),float(row[1]);mi_selectlabel(x,y);mi_setblockprop('Идеальная обмотка',0,1,'Фаза '+mat.upper(),0,0,turns if mat.isupper() else -turns);mi_clearselected()
 # Группа ротора заранее назначена по радиусам обоих концов каждой линии/дуги.
 # Выбор окружностью опасен для длинной внешней дуги, чья хорда проходит через ротор.
 # Воздушная метка зазора не входит в интегрируемое тело ротора.
 for row in rows:
  mat=materials[int(row[2])-1]
  if mat=='Воздух':
   x,y=float(row[0]),float(row[1]);mi_selectlabel(x,y);mi_setblockprop(mat,1,0,'',0,0,0);mi_clearselected()
 return {'coil_side_count_per_phase':counts,'turns_per_side':turns,'series_turns_per_phase':40}
def sample(case,name,theta,beta,offset):
 load(case);p=2 if case<3 else 4
 mi_selectgroup(2);mi_moverotate(0,0,theta);mi_clearselected()
 angle=math.radians(p*theta)+offset
 currents=[0.,0.,0.] if name=='open' else [-5*math.sin(angle-k*2*math.pi/3) for k in range(3)]
 for k,n in enumerate(['A','B','C']):mi_modifycircprop('Фаза '+n,1,currents[k])
 path='katona-output/case-'+str(case)+'-'+name+'-'+str(round(theta,4))+'.fem';mi_saveas(path);mi_analyze(1);mi_loadsolution()
 psi=[float(mo_getcircuitproperties('Фаза '+n)[2]) for n in ['A','B','C']]
 assert all(math.isfinite(v) for v in psi),'Нефинитное потокосцепление: проверьте тип проводника и проводимость'
 mo_clearblock();mo_groupselectblock(2);T=float(mo_blockintegral(22));mo_clearblock();row={'mechanical_angle_deg':theta,'currents_A':currents,'flux_Wb':psi,'T_Nm':T,'elements':mo_numelements()};close();return row
N=2 if len(sys.argv)>1 and sys.argv[1]=='quick' else 32
out={'source':'Katona three documented FEM geometries; independent FEMM5 embedded-Python adapter, not the original external py2femm program.','scope':'Сравнение топологий с одинаковыми Nф=40, Iq=5А и глубиной40мм. Пазовые области идеализированы как заданные токовые обмотки с нулевой проводимостью; потери меди не решаются. Геометрии исходника, число полюсов, площадь меди и длина лобовых частей различаются: это не изолированный опыт укорочения шага и не сравнение КПД. Расчётные числа не являются числами публикации Katona.','angles_per_period':N,'cases':[]}
for case in [1,2,3]:
 meta=load(case);close();zero=sample(case,'open',0,0,0)
 alpha=2/3*(zero['flux_Wb'][0]-.5*zero['flux_Wb'][1]-.5*zero['flux_Wb'][2]);beta=2/3*math.sqrt(3)/2*(zero['flux_Wb'][1]-zero['flux_Wb'][2]);offset=math.atan2(beta,alpha)
 period=30 if case<3 else 15;series={'open':[],'load':[]}
 for state in ['open','load']:
  for k in range(N):series[state].append(sample(case,state,k*period/N,0,offset))
 stats={}
 for state,rows in series.items():
  v=[r['T_Nm'] for r in rows];coarse=v[::2];stats[state]={'mean_T_Nm':sum(v)/len(v),'ripple_pp_Nm':max(v)-min(v),'coarse_16_mean_Nm':sum(coarse)/len(coarse),'coarse_16_ripple_pp_Nm':max(coarse)-min(coarse)}
  if state=='open':
   vd=vq=0
   for row in rows:
    angle=math.radians((2 if case<3 else 4)*row['mechanical_angle_deg'])+offset
    vd+=2/3*sum(row['flux_Wb'][k]*math.cos(angle-k*2*math.pi/3) for k in range(3))
    vq-=2/3*sum(row['flux_Wb'][k]*math.sin(angle-k*2*math.pi/3) for k in range(3))
   stats[state]['pm_linkage_fundamental_projection_Wb']=math.sqrt(vd*vd+vq*vq)/len(rows)
 out['cases'].append({'case':case,'p':2 if case<3 else 4,'mechanical_period_deg':period,'electrical_offset_rad':offset,'winding':meta,'series':series,'statistics':stats})
with open('katona-control-result.json' if N<32 else 'katona-result.json','w') as f:json.dump(out,f)
print('Katona comparison',[(c['case'],c['statistics']) for c in out['cases']])

Сохранённые численные результаты: таблица JSON. Просмотр серий доступен на отдельной странице исследования.

Границы модели.

Раскладки и исходные FEM-геометрии взяты из скачанного репозитория. Адаптер цепей, нормировка и расчёты FEMM 5 самостоятельные. Это контролируемое сравнение конкретных проектов, не универсальный рейтинг обмоток.

Открыть автономный интерактивный разбор численных серий

Первоисточники: [63] (Три документированных обмоточных примера; example_test1.fem, example_test2.fem, example_test3.fem.); [19] (Скачанный выделенный раздел: обмотки, пульсации и ослабление поля; с. 105–129, в том числе с.125–127 по ограничению напряжения.).

От измерения пульсаций к их уменьшению: дуга магнита, паз и ступенчатый скос

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

Зубцовый момент существует даже без тока обмотки: при повороте ротора изменяется магнитная проводимость воздушного зазора и запасённая энергия поля магнитов. Под нагрузкой добавляются гармоники токовой магнитодвижущей силы, насыщение, отклонение формы ЭДС и их взаимодействие. Поэтому уменьшение зубцового момента не гарантирует такого же уменьшения размаха нагрузочного момента.

Геометрическое воздействие должно быть физически определено. Изменение дуги магнита меняет пространственный спектр возбуждения и количество магнитного материала. Взаимное смещение отдельных магнитов меняет фазы вкладов. Изменение ширины раскрытия паза меняет проводимость зазора, но также технологию укладки и насыщение зубцовых коронок. Для каждого изменения фиксируют, что сохраняется: объём магнитов, их толщина, минимальный зазор, диаметр и токовая нагрузка. Без этого улучшение может быть следствием простого уменьшения потока.

Для прямоугольного распределения намагничивания с относительной полюсной дугой \beta п нормированный коэффициент \nu-й нечётной гармоники пропорционален \sin(\nu \pi \beta п/2)/\nu. Его нуль объясняет один из механизмов подавления выбранной гармоники; реальная полевая зависимость дополнительно содержит проводимость пазов и насыщение. Поэтому формула служит выбору направлений изменения, а окончательная оценка получается серией FEMM.

T_{\text{зуб}}=-\frac{\partial W_{\text{м}}}{\partial\theta_{\text{мех}}}\bigg|_{i=0},\qquad B_{\nu}\sim\frac{\sin(\nu\pi\beta_{\text{п}}/2)}{\nu}
(31.19)
Знак энергии зависит от принятого энергетического описания источника PM; в практикуме момент определяется непосредственно полевым интегралом.

Вывод многослойной двумерной оценки скоса

Разделим активную длину на независимые сечения с долями wr, сумма которых равна единице. Если ротор в r-м сечении имеет механическое смещение \delta r, полная сила или момент оцениваются взвешенной суммой значений несмещённой двумерной модели. Полная глубина исходной модели уже учтена: дополнительного умножения на число сечений не требуется. Фазные токи во всех сечениях в один физический момент одинаковы; их нельзя независимо подстраивать к локальному ротору при оценке нагрузочного скоса.

Для гармоники порядка h по механическому углу взвешенная сумма эквивалентна умножению её комплексной амплитуды на сумму wr \exp(jhδr). При непрерывном равномерном скосе суммирование заменяется интегралом по диапазону шириной \beta ск. Интегрирование экспоненты даёт функцию \sin (x)/x. Это показывает, какие гармоники подавляются, а также объясняет снижение полезной основной ЭДС.

Такое объединение является моделью независимых сечений. Оно не учитывает осевые потоки, токи, перетекание через торцы магнитов, изменение поля в переходах между ступенями, механическую прочность и локальную трёхмерную насыщенность. По результатам нельзя утверждать, что трёхмерная конструкция уже проверена.

T_{\text{ск}}(\theta)=\sum_rw_rT_{2D}(\theta+\delta_r),\quad \sum_rw_r=1,\quad k_{\text{ск},h}=\left|\sum_rw_re^{\mathrm jh\delta_r}\right|
(31.20)
Формула относится к согласованным мгновенным токам и независимым сечениям.
k_{\text{ск},h}^{\text{непр}}=\left|\frac1{\beta_{\text{ск}}}\int_{-\beta_{\text{ск}}/2}^{\beta_{\text{ск}}/2}e^{\mathrm jh\delta}\,d\delta\right|=\left|\frac{\sin(h\beta_{\text{ск}}/2)}{h\beta_{\text{ск}}/2}\right|
(31.21)
Предел при нулевом аргументе равен единице; угол здесь в радианах.

Новая полевая серия: уменьшение дуги магнита 80^\circ \to 72^\circ

Дано. Собственная SPM: Q=12, 2p=4, глубина 80 мм, неизменные радиусы и B_r, Iq=5 А; по 32 угла на 30^\circ.

  1. У всех вариантов одинаковые локальные размеры сетки и угловые положения. Изменена только дуга каждого магнита; при сохранённых толщине и радиусах объём магнитов уменьшается на 10%. Фактическая триангуляция неизбежно меняется вместе с геометрией.

  2. Для исходной дуги 80° средний нагрузочный момент 5,118 Н·м, размах 25,03 Н·м, фазная основная ЭДС при 1000 об/мин 50,55 В действующего значения. При дуге 72^\circ получены 4,945 Н·м;20,27 Н·м;48,82 В соответственно.

  3. Размах нагрузки уменьшился примерно на 19,0%, но средний момент снизился на 3,40%, основная ЭДС — на 3,42%. Улучшение не является бесплатным: уменьшились поток и объём магнитного материала.

  4. Размах ХХ 25,03→20,27 Н·м. Контроль 16→32 для дуги 72^\circ даёт 19,96→20,27 Н·м; следовательно, крупный угловой шаг недооценивал максимум примерно на 1,52%. Сам по себе этот контроль не доказывает сходимость по сетке.

  5. Форма ротора учебная и зубцовая пульсация очень велика относительно полезного момента. Цель — контролируемо показать механизм, а не предложить такую геометрию как удачный промышленный проект.

Ответ. Новые FEMM5-данные показывают совместное изменение среднего момента, пульсаций, ЭДС и количества магнитов. Полные кривые и параметры — magnet-arc-result.json.

Проверка. ЭДС получена из основной вращающейся проекции реальных потокосцепленийХХ. Нормировка фазная, действующая; число пар полюсов p=2 учтено. Потери и нагрев здесь не вычисляются.

Два сечения по фактической кривой FEMM

Дано. Существующая серия SPM: Q=12, 2p=4; шаг 0{,}234375^\circ; 768 неповторяющихся отсчётов на 180^\circ.

  1. Основной зубцовый порядок h=НОК(12,4)=12. Возьмём два равных сечения со смещениями -7{,}5^\circ и +7{,}5^\circ: расстояние между ними равно половине зубцового периода.

  2. Для основной зубцовой гармоники k ск,12=|\cos (12\cdot 7{,}5^\circ )|=0. Для полезной основной гармоники поля h=p=2 коэффициент равен cos_{15}^\circ =0{,}965926; идеальное снижение основной ЭДС составляет 3,4074%.

  3. В программе skew_from_native.py смещение равно точно 32 исходным отсчётам, поэтому интерполяция не требуется. Получаются две кривые по сохранённым численным данным FEMM; высшие чётные зубцовые гармоники полностью не исчезают.

  4. По фактической исходной серии размах уменьшается 25,21→1,968 Н·м, среднеквадратическая пульсация 8,878→0,590749 Н·м. Остаток образован неподавленными гармониками и численной составляющей; это не доказательство полного исчезновения зубцового момента.

Ответ. Приложен вычисленный JSON с размахом и среднеквадратической пульсацией до и после двухсечного усреднения. Это оценка по 2D-данным, а не новое 3D-решение.

Проверка. Исходная серия относится к ХХ. Из неё нельзя сделать вывод о сохранении среднего нагрузочного момента; нагрузочную оценку выполняют отдельно при одинаковых физических токах.

Четыре контролируемых способа уменьшения пульсаций

  1. Постройте исходные кривые ХХ и нагрузки и определите максимальные гармоники момента и ЭДС.
  2. Измените только относительную дугу магнита на ±5%; укажите, изменяется ли объём материала. Затем отдельно проверьте смещение соседних магнитов.
  3. На отдельной копии измените раскрытие паза, сохранив зазор, тело зубца и витки. Проверьте насыщение коронки.
  4. Выполните двухсечную оценку скоса; в нагрузке используйте одну систему физических фазных токов во всех сечениях.
  5. Составьте таблицу: средний момент, размах, ЭДС основной гармоники, спектр, масса магнитов и ограничения.

Ожидаемый результат. Обоснованное улучшение конкретной конструкции и цена выбранного изменения.

Проверка. Пульсации сопоставлены на одинаковом периоде; сеточная чувствительность меньше сравниваемого эффекта; 2D-оценка не названа трёхмерной проверкой.

Ступенчатый скос по ранее рассчитанной угловой серии SPM

Постобработка фактических данных FEMM5; независимые двумерные сечения, новые поля не решаются.

Скачать программу для встроенного Python FEMM 5

Для запуска сохраните необходимые файлы, сохраняя их имена и структуру подпапок:

MicroPython · FEMM 5
"""MicroPython FEMM5. Многослойная 2D-оценка по фактической кривой ХХ.
Срезы независимы; это постобработка, а не трёхмерное полевое решение.
"""
import math,json,sys
assert sys.implementation.name=='micropython'

# FEMM CLI и команда запуска сохранённого файла передают его путь в sys.argv[0].
# Локальные модели/таблицы ищутся возле программы, а не в случайной рабочей папке.
import os
_saved_file=globals().get('__file__') or (sys.argv[0] if sys.argv else '')
if not _saved_file or not os.path.isfile(_saved_file):
 raise RuntimeError('Запустите сохранённый файл из полного распакованного комплекта командой FEMM Run Script; не вставляйте его частями в консоль.')
os.chdir(os.path.dirname(os.path.abspath(_saved_file)))

with open('spm-open-compact.json') as f:data=json.load(f)
rows=data['rows'];N=len(rows);step=data['step_mechanical_deg'];values=[r[1] for r in rows]
shift=round(7.5/step);assert abs(shift*step-7.5)<1e-10
skew=[.5*(values[(k-shift)%N]+values[(k+shift)%N]) for k in range(N)]
def rms(v):
 mean=sum(v)/len(v);return math.sqrt(sum((x-mean)**2 for x in v)/len(v))
result={'source':data['source'],'scope':'Линейное объединение независимых двумерных срезов по исходной полевой угловой кривой; новые поля и осевые потоки не рассчитываются. Исходная кривая ХХ, поэтому о снижении среднего нагрузочного момента по ней судить нельзя.','N':N,'offsets_mechanical_deg':[-7.5,7.5],'weights':[.5,.5],'base_cogging_pp_Nm':max(values)-min(values),'skew_cogging_pp_Nm':max(skew)-min(skew),'base_ripple_rms_Nm':rms(values),'skew_ripple_rms_Nm':rms(skew),'ideal_fundamental_EMF_ratio_two_slices':math.cos(2*math.radians(7.5)),'ideal_continuous_30deg_EMF_ratio':math.sin(math.pi/6)/(math.pi/6),'rows':[[rows[k][0],values[k],skew[k]] for k in range(N)]}
with open('skew-result.json','w') as f:json.dump(result,f)
print('Skew pp',result['base_cogging_pp_Nm'],result['skew_cogging_pp_Nm'])
Дуги магнитов 80^\circ и 72^\circ: новые полевые серии ХХ и нагрузки

130 новых решений методом конечных элементов: две дуги, по 32 положения ХХ/нагрузки и отдельная калибровка d-оси для каждого варианта.

Скачать программу для встроенного Python FEMM 5

Для запуска сохраните необходимые файлы, сохраняя их имена и структуру подпапок:

MicroPython · FEMM 5
"""FEMM5 MicroPython. Независимый контролируемый опыт изменения дуги PM.
Геометрия строится заново; оригинальные файлы курса не изменяются.
"""
import math,json,os,sys
assert sys.implementation.name=='micropython'

# FEMM CLI и команда запуска сохранённого файла передают его путь в sys.argv[0].
# Локальные модели/таблицы ищутся возле программы, а не в случайной рабочей папке.
import os
_saved_file=globals().get('__file__') or (sys.argv[0] if sys.argv else '')
if not _saved_file or not os.path.isfile(_saved_file):
 raise RuntimeError('Запустите сохранённый файл из полного распакованного комплекта командой FEMM Run Script; не вставляйте его частями в консоль.')
os.chdir(os.path.dirname(os.path.abspath(_saved_file)))

MU0=4e-7*math.pi
nodes={};edges=set();arcs=set();global_angles=[];pm_label_specs=[]
try:os.mkdir('magnet-arc-output')
except OSError:pass
def node(x,y):
    key=(round(x,7),round(y,7))
    if key not in nodes:mi_addnode(x,y);nodes[key]=1

def line(x1,y1,x2,y2):
    node(x1,y1);node(x2,y2)
    key=tuple(sorted(((round(x1,7),round(y1,7)),(round(x2,7),round(y2,7)))))
    if key not in edges:mi_addsegment(x1,y1,x2,y2);edges.add(key)

def rect(x1,y1,x2,y2):
    line(x1,y1,x2,y1);line(x2,y1,x2,y2);line(x2,y2,x1,y2);line(x1,y2,x1,y1)

def polar(r,a):
    return r*math.cos(math.radians(a)), r*math.sin(math.radians(a))

def arc(r,a,b):
    a=a%360; span=(b-a)%360
    if span<1e-7:return
    cuts=[a]+sorted([a+(t-a)%360 for t in global_angles if 1e-6<(t-a)%360<span-1e-6])+[a+span]
    for left,right in zip(cuts[:-1],cuts[1:]):
        x1,y1=polar(r,left);x2,y2=polar(r,right);node(x1,y1);node(x2,y2)
        key=(round(r,7),round(left%360,7),round(right%360,7))
        if key not in arcs:mi_addarc(x1,y1,x2,y2,right-left,4);arcs.add(key)

def circle(r):
    angles=sorted(set([0,90,180,270]+[round(a%360,7) for a in global_angles]))
    for a,b in zip(angles,angles[1:]+[angles[0]+360]):arc(r,a,b)

def sector(r1,r2,a,b):
    arc(r1,a,b);arc(r2,a,b)
    x1,y1=polar(r1,a);x2,y2=polar(r2,a);line(x1,y1,x2,y2)
    x1,y1=polar(r1,b);x2,y2=polar(r2,b);line(x1,y1,x2,y2)

def label(x,y,material,circuit='',turns=0,mesh=2,group=0,magdir=0):
    mi_addblocklabel(x,y);mi_selectlabel(x,y)
    mi_setblockprop(material,0,mesh,circuit,magdir,group,turns);mi_clearselected()
    if material=='Magnet':
        pm_label_specs.append({'x':x,'y':y,'direction':magdir,
                               'numeric_angle_deg':0 if isinstance(magdir,str) else magdir})

def boundary_segment(x,y):
    mi_selectsegment(x,y);mi_setsegmentprop('A0',0,1,0,0);mi_clearselected()

def setup(frequency=0,kind='planar',depth=40):
    global nodes,edges,arcs,global_angles,pm_label_specs
    nodes={};edges=set();arcs=set();global_angles=[];pm_label_specs=[]
    newdocument(0);mi_probdef(frequency,'millimeters',kind,1e-8,depth,25)
    mi_addmaterial('Air',1,1,0,0,0)
    mi_addmaterial('Winding',1,1,0,0,0)
    mi_addmaterial('LinearSteel',1000,1000,0,0,0)
    mi_addmaterial('NonlinearSteel',1,1,0,0,0)
    for H,B in [(0,0),(100,.25),(200,.5),(400,.9),(800,1.2),(2000,1.45),(5000,1.6),(10000,1.7)]:mi_addbhpoint('NonlinearSteel',B,H)
    mi_addmaterial('Magnet',1.05,1.05,1.2/(MU0*1.05),0,0)
    mi_addboundprop('A0',0,0,0,0,0,0,0,0,0)

def outer_box(size):
    rect(-size,-size,size,size)
    for x,y in [(0,-size),(size,0),(0,size),(-size,0)]:boundary_segment(x,y)
    label(size*.85,size*.85,'Air',mesh=size/20)

def stator(p=2,current=2,angle=0):
    q=12//(6*p);mapping=[('A',1),('C',-1),('B',1),('A',-1),('C',1),('B',-1)]
    for c,a in [('A',0),('B',-120),('C',120)]:mi_addcircprop(c,current*math.cos(math.radians(angle+a)),1)
    circle(60);circle(100);label(0,94,'LinearSteel',mesh=3,group=1)
    for k in range(12):
        center=k*30;sector(60,85,center-7,center+7);x,y=polar(73,center);c,sign=mapping[(k//q)%6];label(x,y,'Winding',c,sign*40,mesh=2,group=1)
def close():
 for n in ['mo_close','mi_close']:
  try:globals()[n]()
  except Exception:pass
def one(half,theta,current,gamma,name):
 close();setup(depth=80)
 global global_angles
 global_angles=[0,90,180,270]
 for k in range(12):global_angles.extend([k*30-7,k*30+7])
 for k in range(4):global_angles.extend([theta+k*90-half,theta+k*90+half])
 outer_box(170);stator(2,current,gamma);circle(18);circle(48);circle(57)
 label(*polar(32,theta+45),'LinearSteel',mesh=2,group=2)
 for k in range(4):
  center=theta+k*90;sector(48,57,center-half,center+half)
  label(*polar(52,center),'Magnet',mesh=1.5,group=2,magdir='theta' if k%2==0 else 'theta+180')
  label(*polar(52,center+45),'Air',mesh=1)
 label(0,0,'Air',mesh=2);label(*polar(59,17),'Air',mesh=.35)
 mi_selectcircle(0,0,58.01,4);mi_setgroup(2);mi_clearselected()
 mi_saveas('magnet-arc-output/'+name+'.fem');mi_analyze(1);mi_loadsolution()
 psi=[float(mo_getcircuitproperties(n)[2]) for n in ['A','B','C']]
 assert all(math.isfinite(v) for v in psi)
 mo_clearblock();mo_groupselectblock(2);T=float(mo_blockintegral(22));mo_clearblock()
 return {'theta_mechanical_deg':theta,'flux_Wb':psi,'T_Nm':T,'elements':mo_numelements()}
N=4 if len(sys.argv)>1 and sys.argv[1]=='quick' else 32
results=[]
for half in [40.,36.]:
 first=one(half,0,0,0,'cal-'+str(half));psi=first['flux_Wb'];alpha=2/3*(psi[0]-.5*psi[1]-.5*psi[2]);beta=math.sqrt(3)/3*(psi[1]-psi[2]);offset=math.atan2(beta,alpha)
 series={};stats={}
 for state in ['open','load']:
  rows=[]
  for k in range(N):
   theta=30*k/N;gamma=2*theta+math.degrees(offset)+90
   rows.append(one(half,theta,0 if state=='open' else 5,gamma,('control-' if N<32 else '')+str(half)+'-'+state+'-'+str(k)))
  series[state]=rows;v=[r['T_Nm'] for r in rows];stats[state]={'mean_T_Nm':sum(v)/len(v),'ripple_pp_Nm':max(v)-min(v),'coarse16_mean_Nm':sum(v[::2])/(N//2),'coarse16_ripple_pp_Nm':max(v[::2])-min(v[::2])}
  if state=='open':
   pd=pq=0.
   for row in rows:
    angle=math.radians(2*row['theta_mechanical_deg'])+offset
    pd+=2/3*sum(row['flux_Wb'][j]*math.cos(angle-j*2*math.pi/3) for j in range(3))
    pq-=2/3*sum(row['flux_Wb'][j]*math.sin(angle-j*2*math.pi/3) for j in range(3))
   amp=math.sqrt(pd*pd+pq*pq)/N;stats[state]['pm_flux_fundamental_Wb']=amp;stats[state]['phase_emf_rms_V_at_1000rpm']=2*2*math.pi*1000/60*amp/math.sqrt(2)
 results.append({'full_magnet_arc_deg':2*half,'magnet_volume_relative':half/40,'series':series,'statistics':stats})
close()
out={'scope':'Собственная SPM Q12/2p4, p2, глубина80мм, PM48..57мм, статор60..100мм, одинаковые B–H/Br/токIамп5А/сеточные настройки/угловая сетка32положения. Изменена только дуга80→72градуса; объём PMуменьшаетсяна10%. Фактические сетки имеют разное число элементов вследствие изменения геометрии, локальные размеры одинаковы. Сталь линейнаяμ1000; потери и нагрев не рассчитываются. ЭДСосновнойгармоникиполучена проекцией потокосцепленийХХ на вращающийсябазис с циклическойсимметрией.','cases':results}
with open('magnet-arc-control-result.json' if N<32 else 'magnet-arc-result.json','w') as f:json.dump(out,f)
print('Magnet arc',[(r['full_magnet_arc_deg'],r['statistics']) for r in results])

Сохранённые численные результаты: таблица JSON; таблица JSON. Просмотр серий доступен на отдельной странице исследования.

Границы модели.

Проектные направления взяты из раздела Бьянки о torque ripple reduction. Вывод фильтра сечений, собственная геометрия, двухсечная постобработка и 130 новых FEMM5-решений изменения дуги самостоятельные. Дуги 80^\circ /72^\circ реально рассчитаны; изменение пазового раскрытия и взаимного смещения оставлено отдельными заданиями. Оценка независимых 2D-сечений не является 3D-решением.

Открыть автономный интерактивный разбор численных серий

Первоисточники: [19] (Скачанный выделенный раздел: обмотки, пульсации и ослабление поля; с. 105–129, в том числе с.125–127 по ограничению напряжения.); [59] (Метод угловых полевых серий; движение и постобработка.).

Практикум в FEMM 5

Угловой период, БПФ и гармоники ЭДС

Таблица 31.5. Исходные данные практикума
Исходная величинаЗначениеЕдиница
Точки на период128; 256
Частота100Гц
Высшая изучаемая гармоника5
  1. Проверьте код БПФ на аналитической последовательности и сравните амплитуды с заданными.
  2. Выполните полный холостой проход машины с поверхностными и внутренними магнитами с равномерным механическим шагом.
  3. Для ЭДС выберите период потокосцепления, для зубцового момента — его собственную геометрическую периодичность.
  4. Проверьте отсутствие повторной крайней точки и пропущенных режимов.
  5. Вычислите спектры встроенной БПФ, подпишите порядок, физическую частоту и единицу амплитуды.
  6. Повторите удвоенную угловую сетку; сравните основную и выбранные высокие гармоники отдельно.

Ожидаемый результат. Доступны исходная таблица, спектр \Psi и ЭДС, а также собственный спектр момента.

Как проверить. Нормировка проверена синусоидальным эталоном; разрешение подтверждено удвоением числа точек.

Обработка и анализ результатов

Стабильны ли основные гармоники при уточнении угловой выборки?

  1. Сохраните полнопериодную таблицу потокосцеплений и коэффициенты спектра двух шагов.
  2. Обработайте равномерную периодическую таблицу: проверьте период, нормировку спектра и изменение результата при уточнении шага.

С чем сравнить. Используйте определения ДПФ, гармоник и ЭДС из занятия. Электрический и механический углы различаются; повторная конечная точка периода искажает спектр.

Итог работы. Спектр и ЭДС с проверкой периода, фазы и нормировки.

Программа с русскими пояснениями: БПФ и ЭДС учебной последовательности · Порядок запуска

БПФ и ЭДС учебной последовательности

Проверенный алгоритм использует только math и встроенную numpy. После эталона подставляется полевой массив \Psi.

Python · встроенный MicroPython FEMM 5
"""БПФ и ЭДС учебной последовательности.

Среда: встроенный MicroPython FEMM 5.
Аналитический учебный пример; полевой решатель не вызывается.
Параметры, единицы величин и порядок вывода пояснены по стадиям.
"""

import math
import numpy as np

# Равномерные отсчёты полного электрического периода без повторения конечной точки.
samples = 128
# Учебное потокосцепление, Вб: основная гармоника и пятая гармоника.
linkage = np.array(
    [
        0.08 * math.cos(2 * math.pi * k / samples)
        + 0.004 * math.cos(5 * 2 * math.pi * k / samples)
        for k in range(samples)
    ]
)
# Быстрое преобразование Фурье возвращает ненормированные комплексные коэффициенты.
coefficients = np.fft.fft(linkage)
# Нулевая гармоника делится на число отсчётов; положительные гармоники дополнительно умножаются на 2.
dc = coefficients[0].real / samples
amplitudes = [2 * abs(coefficients[h]) / samples for h in [1, 5]]
# Угловая частота основной гармоники, рад/с, при частоте 100 Гц.
omega = 2 * math.pi * 100
# Дифференцирование потокосцепления умножает гармонику на её порядок и угловую частоту.
# Деление на √2 преобразует амплитуду синусоидальной ЭДС в действующее значение.
emf_rms = [omega * h * amplitudes[j] / math.sqrt(2) for j, h in enumerate([1, 5])]
print("Среднее:", dc)
print("Амплитуды потокосцепления:", amplitudes)
print("Действующие ЭДС:", emf_rms)
# В эталоне единственная высшая гармоника — пятая; в реальных данных суммируют все учитываемые гармоники.
print("Коэффициент гармоник:", emf_rms[1] / emf_rms[0])

Расчётное исследование и разбор результатов

Эти материалы продолжают практикум: постановка, программа встроенного Python, сохранённые численные результаты и проверка их смысла. Графики строятся по результатам FEMM 5.

Пошаговая настройка расчётного примера

Откройте отдельную страницу с последовательными действиями, точными параметрами, накопительными файлами этапов и программами с русскими комментариями.

Все расчётные примеры курса

Расчётный образец FEMM 5

Откройте модель, воспроизведите указанный режим и сопоставьте свои измерения с таблицей результатов.

Таблица 31.6. Результаты расчётного образца
ВеличинаРезультатЕдиница
Частота0Гц
Активная длина80мм
Ток цепи Фаза А1А
Потокосцепление цепи Фаза А0,001816Вб
Ток цепи Фаза С-2А
Потокосцепление цепи Фаза С-0,2922Вб
Ток цепи Фаза В1А
Потокосцепление цепи Фаза В0,2904Вб
Момент на исходной учебной сетке-1,156Н·м
Энергия по локальному направлению намагниченности35,15Дж
Модуль B в контрольной точке0,8503Тл
Координаты контрольной точки (x, y)56,42; 17,25мм
Момент на проверенной уточнённой сетке-1,152Н·м
Визуализация численных данных FEMM 5: Машина с поверхностными постоянными магнитами. Это экспорт результатов поля, а не снимок окна программы.
Рисунок 31.11. Визуализация численных данных FEMM 5: Машина с поверхностными постоянными магнитами. Это экспорт результатов поля, а не снимок окна программы.

Двумерная модель активной части. Модель стали с постоянной магнитной проницаемостью не описывает насыщение. Идеализированные обмотки с нулевой проводимостью не учитывают все потери. Сеточная проверка момента этой рабочей точки выполнена отдельно; её критерии, методы и границы приведены в протоколе. Здесь энергия получена отдельным интегрированием с фактическим локальным направлением намагниченности. Способ интегрирования приведён в программе шага 11. У острых кромок модели стали с постоянной проницаемостью возможны большие локальные значения B. Они не описывают реальный материал и сами по себе не доказывают насыщение или повреждение. Проверяйте нелинейную характеристику материала и сходимость поля в физически заданной области.

Ориентиры в интерфейсе
Геометрия: поверхностные постоянные магниты и проверенная трёхфазная обмотка
Рисунок 31.12. Геометрия: поверхностные постоянные магниты и проверенная трёхфазная обмотка Открыть в полном размере
Распределение магнитной индукции: поверхностные постоянные магниты и проверенная трёхфазная обмотка
Рисунок 31.13. Распределение магнитной индукции: поверхностные постоянные магниты и проверенная трёхфазная обмотка Открыть в полном размере
Машина с поверхностными постоянными магнитами: выбранная сетка воздушного зазора.
Рисунок 31.14. Машина с поверхностными постоянными магнитами: выбранная сетка воздушного зазора. Открыть в полном размере
Машина с поверхностными постоянными магнитами: момент ротора на выбранной сетке.
Рисунок 31.15. Машина с поверхностными постоянными магнитами: момент ротора на выбранной сетке. Открыть в полном размере
Встроенная консоль FEMM: Расчёт по полному угловому периоду и спектральный анализ. Аналитическая проверка программы занятия. Показана консоль исходной редакции программы, зафиксированной при съёмке. Текущая программа с русскими пояснениями проверена отдельно во встроенном Python FEMM; этот снимок не является новым запуском текущей редакции.
Рисунок 31.16. Встроенная консоль FEMM: Расчёт по полному угловому периоду и спектральный анализ. Аналитическая проверка программы занятия. Показана консоль исходной редакции программы, зафиксированной при съёмке. Текущая программа с русскими пояснениями проверена отдельно во встроенном Python FEMM; этот снимок не является новым запуском текущей редакции. Открыть в полном размере

Расчётные исследования по теме

Изучите физическую постановку, выполните программу во встроенном Python FEMM 5 и проверьте результаты по сохранённым моделям и независимым критериям.

Все темы учебного практикума

Окна FEMM 5

Снимки интерфейса FEMM показывают геометрию, настройки и работу с результатами в FEMM 5. Откройте изображение, чтобы рассмотреть подписи и значения в полном размере.

Машина с постоянными магнитами для расчёта ЭДС: геометрия одного фиксированного положения ротора. Подписи скрыты для читаемости.
Машина с постоянными магнитами для расчёта ЭДС: геометрия одного фиксированного положения ротора. Подписи скрыты для читаемости. Открыть в полном размере
Расчёт ЭДС машины с постоянными магнитами: статическое поле одного фиксированного положения ротора. Показаны |B|, Т, и линии поля; ЭДС получают из изменения потокосцепления по серии угловых положений.
Расчёт ЭДС машины с постоянными магнитами: статическое поле одного фиксированного положения ротора. Показаны |B|, Т, и линии поля; ЭДС получают из изменения потокосцепления по серии угловых положений. Открыть в полном размере
Машина с постоянными магнитами: одно плоское сечение из расчётной серии для учёта скоса. Подписи скрыты для читаемости.
Машина с постоянными магнитами: одно плоское сечение из расчётной серии для учёта скоса. Подписи скрыты для читаемости. Открыть в полном размере
Учёт скоса машины с постоянными магнитами: статическое поле одного выбранного плоского сечения. Карта |B|, Т, и линии поля; итоговый эффект скоса получают взвешиванием серии угловых сечений.
Учёт скоса машины с постоянными магнитами: статическое поле одного выбранного плоского сечения. Карта |B|, Т, и линии поля; итоговый эффект скоса получают взвешиванием серии угловых сечений. Открыть в полном размере

Самостоятельная работа

Для Q = 12 пазов и 2p = 10 полюсов выведите период зубцового момента и выберите 64 точки на него; сравните с периодом фазной ЭДС.

Критерий выполнения: Периоды выведены; спектры не смешаны; амплитудная нормировка и угловая сходимость подтверждены.
Первоисточники и дополнительное чтение по занятию
  1. [33] — 49–52, 110–111, 160–164
  2. [81] — Раздел Packages · Локальная копия
  3. [20] — Скачанный ENSEM_TP_FEMM.pdf, с. 72–73
  4. [19] — Выделенный раздел, с. 72–83; исходный PDF, с. 107–118
  5. [56] — Скачанный Day-Three-Workshop-Slides.pdf, с. 65–73, 78–82. Раздел управления MATLAB не входит в учебный маршрут.
  6. [63] — Три документированных обмоточных примера; example_test1.fem, example_test2.fem, example_test3.fem.
  7. [59] — Метод угловых полевых серий; движение и постобработка.
Пояснения и типичные ошибки
Почему удваивается ненулевой коэффициент БПФ?

Действительная синусоида распределена между положительной и отрицательной частотами.

Можно ли добавить точку 360^\circ?

Нет, при периодической БПФ она повторяет точку 0^\circ и нарушает равномерную периодическую последовательность.

На что обратить внимание

  • Оконная функция не исправляет неверно выбранный физический период и требует своей амплитудной поправки.
  • 12 точек на период могут описывать основную форму, но не доказывают точность высоких гармоник.