Если одно из понятий незнакомо, вернитесь к предыдущему занятию и воспроизведите его численный пример. После этого переходите к новой постановке.
Место занятия в инженерной методике
Расчётная лабораторная работа · Переход от поля к наблюдаемому измерительному сигналу
Инженерный вопрос. Насколько показание датчика отличается от поля в одной точке?
Измерительная модель переводит распределение поля в сигнал датчика и позволяет выбрать расположение, ориентацию, калибровку и информативную характеристику устройства.
Последовательность решения, отчёт и критерии результата
Результат получают из наблюдаемых величин и проверяют в условиях данного практикума.
Последовательность решения
Обосновать постановку и способ измерения. Задайте измеряемую величину, ориентацию, область усреднения и функцию преобразования датчика. Поле и выход датчика имеют разные определения и единицы.
Результат этого занятия. Таблица каналов с объяснением чувствительности к направлению и апертуре.
Данные именно этого опыта. Сопоставьте компоненты поля, ориентацию и усреднённые каналы четырёх нативных решений.
Оформление наблюдений. Исходное поле, координаты и ориентация датчика, коэффициенты преобразования и выходной сигнал; аналитические, FEMM и физические данные подписывайте отдельно.
Как обосновать результат
Проверка из практикума. Сохраните results.json, модели и решения. Укажите версию/хеш решателя и исходного скрипта; проверьте наличие всех четырёх строк и passed=true.
Независимый контроль. Выполните предусмотренный аналитический контроль, изменение ориентации или калибровочный опыт и сравните измерительную модель с исходным полем.
Критерий выполнения. Показание датчика Холла связано с выбранной компонентой и калибровочной моделью. Ориентация контуров, Depth и единицы указаны; знаки проверены обращением. Проверены обе сетки и обе добавки A; границы применимости эталона объяснены.
Точность и расхождения. Разделите пространственную выборку, численное поле, коэффициент преобразования и неопределённость датчика. Синтетический шум не подтверждает характеристики реального прибора.
Основание сравнения. Используйте измерительную модель, калибровку и единицы из занятия. Виртуальная выборка FEMM и синтетическая запись не являются физическим экспериментом.
Вывод для устройства
Объясните, какой параметр устройства можно восстановить выбранным каналом и что необходимо измерить или откалибровать при переходе к натурному опыту.
Границы вывода. Аналитическое преобразование, виртуальный датчик FEMM и натурное измерение имеют разное происхождение. Характеристики прибора и его неопределённость требуют отдельных данных.
Теория и вывод формул
Виртуальное измерение поля требует выбора компоненты, чувствительной области и контура. Точный контрольный пример FEMM позволяет проверить дискретизацию и выбор калибровки векторного потенциала до интерпретации показаний датчика.
Соглашения об обозначениях и единицах
\(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\). При постоянных магнитах и взаимном возбуждении сначала учитывают ненулевое смещение потокосцепления.
Положительные направления, оси и специальные индексы определяются в конкретной задаче. Единицу берите из условия или заголовка таблицы; перед подстановкой в формулу СИ переводите миллиметры в метры, миллигенри в генри и градусы в радианы.
Численные результаты обычно показаны с четырьмя значащими цифрами; для сравнения близких значений в таблицах сходимости сохранено больше цифр. Полные значения остаются в исходных расчётных данных. Малые остатки вычисления координат на осях показаны как ноль; малые физические величины сохраняются в показательной записи.
Чувствительная ось датчика задаётся корпусом и документацией; её нужно перенести в систему координат модели. В учебном линейном приближении U=U_{0}+KB\cdot n. При U_{0}=2{,}5\,\mathrm{В} и K=20\,\mathrm{В/Т} поле 10 мТ вдоль оси даёт 2,7 В. Это назначенные параметры идеального датчика, а не характеристики конкретной микросхемы.
Проверяйте нулевое смещение, чувствительность, насыщение диапазона, температурный дрейф и полосу. Устранение смещения по одному нулевому показанию не калибрует наклон. Для измерения переменной B нужны сведения об амплитудной и фазовой передаточной характеристике всей цепи.
В градиентном поле активная площадка усредняет распределение с пространственной чувствительностью. В FEMM сначала сравните сетку точек по области датчика с центральным отсчётом. Реальный вес может отличаться от равномерного; если он неизвестен, это ограничение измерительной модели.
Равномерный пространственный вес — отдельная идеализация активной области.
H определяется своим способом наблюдения
В воздухе из измеренной B можно получить H\approx B/\mu _{0}. В замкнутом кольцевом образце без зазора среднюю касательную H оценивают по измеренному току: H\approx N_pi/\ell_m. Вторая формула опирается на закон Ампера и почти однородный магнитный путь; она не означает локального измерения H во всяком образце.
На границе материалов нормальная B непрерывна, а касательная H непрерывна при отсутствии поверхностного свободного тока. Измерение внешней компоненты у поверхности не даёт автоматически обе компоненты внутри. Для разомкнутого образца важны размагничивающее поле и форма образца.
Локальная H заменяется средней только при обоснованной геометрии кольца.
Точный эталон для программы измерения
Воздушный прямоугольник 20 × 20 мм имеет глубину 10 мм. Задайте A_z=0 на левой стороне и A_z=-0{,}0002\,\mathrm{Вб/м} на правой; верх и низ имеют естественное \partial A/\partial n=0. Тогда A_z=-0{,}01x при x в метрах, B_y=0{,}01\,\mathrm{Т}, B_x=0 и H_y=7957{,}747\,\mathrm{А/м}. Объёмного тока в области нет: поле поддерживается заданными граничными условиями.
Это точная краевая задача, удобная для контроля единиц и обработки. Она не представляет внешний магнит, замкнутый сердечник или рассеяние в открытом пространстве. Поэтому проверки удалённой границы в этом эталоне нет: менять его размеры означает менять заданную задачу.
Программа создаёт четыре новых расчёта: размеры элемента 0,25 и 0,125 мм, постоянные добавки к A 0 и 0,0005 Вб/м. Проверяется также, что уточнение действительно увеличило число элементов. Производные A и B не меняются при общей постоянной добавке на обеих сторонах. Если меняется лишь одна сторона, это уже изменение поля.
Сопоставьте показания виртуальных каналов с численными результатами четырёх расчётов. Точный полевой эталон проверяет единицы и обработку поля; физическую калибровку датчика выполняют в отдельном эксперименте.
Линейный потенциал удовлетворяет уравнению Лапласа в воздухе без тока.
Контуры в постпроцессоре
mo_getpointvalues(10,10) даёт компоненты B по индексам Python 1 и 2, H по индексам 5 и 6. После задания горизонтального контура mo_lineintegral(0) возвращает ориентированный поток и среднюю нормальную B. Обратный обход меняет знаки. Магнитное напряжение вертикального пути 16 мм получается первым элементом mo_lineintegral(1).
Поток через весь отрезок шириной 20 мм уже учитывает глубину 10 мм. Умножение на 100 витков выполнено далее как модель идеальной поисковой катушки с одинаковым сцеплением. В этой краевой задаче физической обмотки и цепи нет, поэтому mo_getcircuitproperties здесь не вызывается.
Идеальный датчик Холла и катушка не возмущают поле. Реальный зонд может требовать зазора, увеличивать магнитное сопротивление и менять положение проводников. При переносе процедуры в устройство нужно оценить поле с датчиком и без него либо обосновать, что возмущение мало.
Разобранный численный пример
Контурный поток и показание датчика Холла
Дано. Точный прямоугольный эталон: B_{0}=0{,}01\,\mathrm{Т}; S=20\cdot 10\,\mathrm{мм^2}; U_{0}=2{,}5\,\mathrm{В}, K=20\,\mathrm{В/Т}. Путь H направлен +y и имеет длину 16 мм.
|\Phi |=0{,}01\cdot 0{,}020\cdot 0{,}010=2\,\mathrm{мкВб}. Средняя нормальная B по модулю 0,01 Т.
Виртуальная калибровка: пара Гельмгольца, конечная катушка и сердечник
Измерительный объект и калибровочный стенд
Поисковая катушка измеряет изменение магнитного потока через свои витки. Её выход — напряжение, пропорциональное скорости изменения потокосцепления. Поэтому постоянное поле неподвижной катушкой без дополнительной модуляции не измеряется. При гармоническом поле и известных частоте, площади и числе витков амплитуда напряжения позволяет восстановить среднюю нормальную индукцию.
Пара Гельмгольца — две одинаковые соосные круглые катушки с одинаковым током, расстояние между центрами которых равно радиусу. Она создаёт сравнительно однородное поле возле центра. Калибровка сопоставляет известное поле стенда и выход датчика. Нужно различать поле в точке, среднее поле по площади каждого витка и среднее потокосцепление всей многослойной обмотки.
Виртуальный стенд здесь построен непосредственно командами FEMM 5. Использована полезная идея pywinding о совместном рассмотрении стенда, катушки и сердечника; сама библиотека, её внешние зависимости и программные оболочки не нужны. Построены четыре самостоятельных магнитостатических решения: поле стенда при \mu _{r} сердечника 1 и 100, затем самоиндуктивность датчика при отключённом стенде.
От закона Био—Савара к условию Гельмгольца
Осевая составляющая поля кругового витка находится интегрированием закона Био—Савара: поперечные составляющие взаимно сокращаются, а все осевые вклады одинаковы. Для N витков и двух катушек поля суммируются. В центре первая производная по z равна нулю из-за зеркальной симметрии при любом расстоянии; именно вторая производная обнуляется при d=R.
После этого ведущая осевая неоднородность имеет четвёртый порядок по z/R. Это не означает однородности во всём пространстве или на любой площади датчика. Вне оси появляются радиальные составляющие; ошибка конечного датчика должна оцениваться интегралом, а не только двумя осевыми точками.
В конечно-элементной модели калибровочные обмотки имеют конечное сечение 1×1 мм. Формула тонкого кольца остаётся независимым приближённым ориентиром. Разницу от конечного сечения, дискретизации и внешней границы нужно отличать от погрешности измеряемого датчика.
Нулевая вторая производная объясняет выбор расстояния, а не подменяет расчёт рабочего объёма.
Пространственное усреднение и электрический выход
Потокосцепление представляет сумму поверхностных интегралов по всем виткам. Для одинаковой площади A можно ввести эквивалентную среднюю индукцию Bavg=\Psi/(NA). Эффективная площадь реальной многослойной катушки — сумма площадей витков, а не площадь внешнего контура. Погрешность позиционирования и наклона меняет именно этот интеграл.
При фазорах \exp (j\omega t) ЭДС разомкнутой поисковой катушки равна−j\omega \Psi. Если вход измерительного прибора конечен, его сопротивление вместе с R и L обмотки образует делитель. Модуль ωNA даёт чувствительность только при высоком входном сопротивлении и отсутствии значимого влияния собственной ёмкости.
В расчёте сначала используется статический поток при 1 А стенда, затем он масштабируется на гармонический ток при предположении линейности. Это корректно для воздушной катушки на достаточно низкой частоте; для проводящего сердечника с потерями надо решать гармонику и учитывать комплексную \mu, \sigma и частотную зависимость входа.
При приближении к собственному резонансу требуется ёмкостная модель, здесь не выполненная.
Сопротивление, индуктивность и конечный сердечник
При известной средней длине витка lturn и сечении провода Aw сопротивление R=N lturn/(σAw). Самоиндуктивность получают отдельным возбуждением датчика: L=\Psi /I при отключённой калибровочной паре. Повышение L и чувствительности сердечником может одновременно сузить полезную полосу и увеличить чувствительность к частоте, температуре и гистерезису.
Конечный сердечник размагничивается собственными полюсами. Для эллипсоидального приближения эффективная восприимчивость \chi eff=\chi/(1+Ndχ). Уже эта формула показывает, почему \mu _{r}=100 не даёт автоматически стократный прирост потока. Для цилиндра поле неоднородно, и одна постоянная Nd является приближением.
В FEMM геометрическое размагничивание вычисляется непосредственно. Поэтому в материале задают внутреннюю проницаемость, а не заранее уменьшенную эффективную, иначе размагничивание будет учтено дважды. Вставленный сердечник также меняет само калибровочное поле: его внутреннее B нельзя считать новым независимым эталоном стенда.
Последняя формула — оценка для конечного тела; новая конечно-элементная модель использует геометрию цилиндра непосредственно.
Как составить бюджет калибровки
Чувствительность зависит от тока стенда, радиуса и расстояния катушек, числа витков датчика, его площади и положения, частоты, входного сопротивления прибора и температуры. Неоднородность следует оценивать в фактическом объёме перемещения датчика. Сеточная чувствительность относится к численной модели, а неопределённость тока и геометрии — к физическому стенду.
Если величины независимы, относительные стандартные неопределённости перемножаемых коэффициентов складывают квадратично. Корреляции общего размера, температуры или калибровочного тока требуют ковариаций. Систематическую поправку на пространственное усреднение сначала применяют к результату; остаточная неопределённость поправки затем входит в бюджет.
В новом расчёте нет экспериментальных показаний, поверенного амперметра или аттестации катушек. Он показывает метод виртуальной калибровки и позволяет отделить геометрический эффект сердечника от неверного умножения на табличную \mu _{r}.
"""Калибровочная пара и поисковая катушка: поле, усреднение, сердечник, R и L.Запуск внутри FEMM 5 из папки комплекта. Нужен common.py; внешних пакетов нет.R=50 мм, расстояние=R, по 100 витков и 1 А DC; сечение каждой обмотки 1x1 мм.Датчик: 100 витков среднего радиуса 4 мм, длина 20 мм, провод 0.1 мм.Магнитная модель линейна; 1-кГц чувствительность выводится из DC поля,поэтому вихревые потери и частотная проницаемость сердечника не моделируются."""# Каталог сценария определяется явно: запуск не зависит от чужого CWD.importosimportsysos.chdir(os.path.dirname(os.path.abspath(sys.argv[0])))exec(open("common.py").read())folder=result_folder("results-helmholtz")rows=[]forcore_muin[1,100]:newdocument(0)mi_probdef(0,"millimeters","axi",1e-9,1,30)material("Air")material("Winding",sigma=58,wire_type=3,strands=1,diameter=0.1)material("Core",mu=core_mu)mi_addcircprop("Cal",1,1)mi_addcircprop("Sense",0,1)forzin[-25,25]:mi_drawrectangle(49.5,z-0.5,50.5,z+0.5)label(50,z,"Air",0.2,"Cal",100,1)mi_drawrectangle(3.95,-10,4.05,10)label(4,0,"Winding",0.1,"Sense",100,2)mi_drawrectangle(0,-10,3,10)label(1.5,0,"Core",0.5,group=3)label(20,0,"Air",2)mi_makeABC(7,200,0,0,0)solve(folder,"calibration-mu%d"%core_mu)b0=mo_getpointvalues(0,0)[2]linkage=mo_getcircuitproperties("Sense")[2]samples=[]forzin[-10,-5,0,5,10]:samples.append([z,mo_getpointvalues(0,z)[2]])bavg=linkage/(100*math.pi*0.004**2)exact=(4/5)**1.5*MU0*100/0.05row={"core_mu":core_mu,"B0_T":b0,"linkage_Wb":linkage,"Bavg_T":bavg,"axis_z_mm_B_T":samples,"thin_loop_B0_T":exact,"sensitivity_V_per_T_at_1kHz":2*math.pi*1000*linkage/exact,}close_magnetic()# Самоиндуктивность датчика при отключённой калибровочной паре.opendocument(os.path.join(folder,"calibration-mu%d.fem"%core_mu))mi_modifycircprop("Cal",1,0)mi_modifycircprop("Sense",1,1)solve(folder,"self-mu%d"%core_mu)current,voltage,flux=mo_getcircuitproperties("Sense")row["L_H"]=flux/currentrow["R_ohm"]=voltage/currentrows.append(row)close_magnetic()save_json(folder,rows)assertabs(rows[0]["B0_T"]/rows[0]["thin_loop_B0_T"]-1)<0.02assertrows[1]["L_H"]>rows[0]["L_H"]>0print(rows)
Сохранённые численные результаты: таблица JSON. Просмотр серий доступен на отдельной странице исследования.
Границы модели.
Собственные введение, выводы и геометрия. Новые результаты FEMM 5; внешние библиотеки отсутствуют. Виртуальная калибровка не является метрологической аттестацией.
Скачайте программу; задайте OUTPUT новым каталогом. Выполните её целиком во встроенной Python-консоли FEMM 5.
Откройте созданную модель и проверьте материал, частоту 0, глубину и две граничные величины A. На верхней и нижней сторонах нет фиксированного A.
Сопоставьте B/H в центре, поток по контуру и магнитное напряжение с аналитическим ответом. Зафиксируйте выбранную нормаль.
Сравните строки двух сеток и двух постоянных добавок A. В линейном эталоне ожидается точность вплоть до решателя; это не оценка точности произвольного устройства.
Измените глубину в новой копии и повторите поток. Затем наклоните ось виртуального датчика Холла в последующей обработке на 5^\circ.
В протоколе укажите, что расчёт ЭДС 50 Гц в JSON — аналитическая обработка DC-профиля при предположении синусоидального масштабирования, а не временное решение FEMM.
Ожидаемый результат. Четыре сохранённых FEM/ANS; одинаковые B и |\Phi | при изменении сетки и общего уровня A; U=2{,}7\,\mathrm{В}.
Как проверить. Сохраните results.json, модели и решения. Укажите версию/хеш решателя и исходного скрипта; проверьте наличие всех четырёх строк и passed=true.
Обработка и анализ результатов
Насколько показание датчика отличается от поля в одной точке?
Сопоставьте компоненты поля, ориентацию и усреднённые каналы четырёх нативных решений.
Пропустите полевые данные через заданную модель датчика; сравните измеряемый сигнал с исходной полевой величиной.
С чем сравнить. Используйте измерительную модель, калибровку и единицы из занятия. Виртуальная выборка FEMM и синтетическая запись не являются физическим экспериментом.
Итог работы. Таблица каналов с объяснением чувствительности к направлению и апертуре.
Контрольный пример FEMM: датчик Холла, H-контур и измерительная катушка
Комментарии связывают граничный A_z с положительной компонентой B_y, объясняют номера возвращаемых величин, ориентацию интегралов и единицы Planar. На двух сетках повторяются два значения постоянной прибавки к потенциалу; отдельные проверки сопоставляют поля и потоки внутри каждой пары. Для повторного запуска выберите отсутствующий OUTPUT: предыдущие модели и результаты не перезаписываются. Скачиваемая учебная редакция соответствует коду на странице. Исходные материалы: комплект раздела.
Python · встроенный MicroPython FEMM 5
"""Точный эталон Hall и поисковой катушки в однородном поле FEMM 5.Среда: встроенная Python-консоль FEMM 5; внешние пакеты не нужны.Вход: B0 в Т, размеры и шаг сетки в мм, глубина Planar в мм, число витков.Выход: четыре новые модели .fem и results.json с B [Т], H [А/м], Phi [Вб].OUTPUT должен отсутствовать: при повторе выберите новое имя каталога.Поле задаётся граничным потенциалом в воздухе; источник-магнит не моделируется.Hall и катушка — идеальные невозмущающие наблюдатели без корпуса и калибровки."""importjsonimportmathimportosOUTPUT="measurement-field-run"# mkdir намеренно прерывает повторный запуск, сохраняя предыдущие результаты.os.mkdir(OUTPUT)MU0=4*math.pi*1e-7# Учебное приближение, Гн/м.B0=0.01WIDTH_MM=20.0HEIGHT_MM=20.0DEPTH_MM=10.0AREA=WIDTH_MM*DEPTH_MM*1e-6# мм² -> м²; поверхность потока x-z.TURNS=100FREQ_HZ=50.0defreal(value):"""Извлечь действительную часть результата магнитостатического расчёта."""z=complex(value)# Комплексная компонента здесь указывает на неподходящий режим расчёта.assertabs(z.imag)<1e-10,"Нужна магнитостатика"returnz.real# Две сетки и два добавочных постоянных потенциала проверяют сходимость# и калибровочную инвариантность: прибавка к A_z не должна менять B.rows=[]formesh_mmin(0.25,0.125):fora_offsetin(0.0,0.0005):newdocument(0)mi_probdef(0,"millimeters","planar",1e-10,DEPTH_MM,25)mi_addmaterial("Air-reference",1,1,0,0,0)# В Planar: B_y = -dA_z/dx. A_z измеряется в Вб/м,# поэтому ширину для разности потенциалов переводим из мм в м.mi_addboundprop("Left-A",a_offset,0,0,0,0,0,0,0,0)right_a=a_offset-B0*WIDTH_MM*1e-3mi_addboundprop("Right-A",right_a,0,0,0,0,0,0,0,0)corners=((0,0),(WIDTH_MM,0),(WIDTH_MM,HEIGHT_MM),(0,HEIGHT_MM))forx,yincorners:mi_addnode(x,y)forkinrange(4):x1,y1=corners[k]x2,y2=corners[(k+1)%4]mi_addsegment(x1,y1,x2,y2)forx,namein((0,"Left-A"),(WIDTH_MM,"Right-A")):mi_selectsegment(x,HEIGHT_MM/2)mi_setsegmentprop(name,0,1,0,0)mi_clearselected()# Верх и низ имеют естественное условие dA_z/dn = 0.# Отключённый автоматический размер задаёт независимый шаг сетки.mi_addblocklabel(WIDTH_MM/2,HEIGHT_MM/2)mi_selectlabel(WIDTH_MM/2,HEIGHT_MM/2)mi_setblockprop("Air-reference",0,mesh_mm,"<None>",0,1,0)mi_clearselected()stem="mesh-"+str(mesh_mm)+"-gauge-"+str(a_offset)mi_saveas(OUTPUT+"/"+stem+".fem")mi_analyze(1)mi_loadsolution()mo_smooth("off")# Позиции 1, 2, 5, 6 в mo_getpointvalues — Bx, By, Hx, Hy.point=mo_getpointvalues(WIDTH_MM/2,HEIGHT_MM/2)bx,by,hx,hy=[real(point[k])forkin(1,2,5,6)]# Потоковый интеграл уже учитывает глубину Planar: повторный# множитель DEPTH_MM недопустим. Знак задаёт направление контура.mo_clearcontour()mo_addcontour(0,HEIGHT_MM/2)mo_addcontour(WIDTH_MM,HEIGHT_MM/2)integral=mo_lineintegral(0)signed_flux=real(integral[0])average_bn=real(integral[1])mo_clearcontour()mo_addcontour(WIDTH_MM,HEIGHT_MM/2)mo_addcontour(0,HEIGHT_MM/2)reversed_flux=real(mo_lineintegral(0)[0])# Интеграл H·dl вдоль положительного y на пути длиной 16 мм, А.mo_clearcontour()mo_addcontour(WIDTH_MM/2,2)mo_addcontour(WIDTH_MM/2,18)magnetic_voltage=real(mo_lineintegral(1)[0])row={"mesh_mm":mesh_mm,"a_offset_Wb_per_m":a_offset,"nodes":int(mo_numnodes()),"elements":int(mo_numelements()),"Bx_T":bx,"By_T":by,"Hx_A_per_m":hx,"Hy_A_per_m":hy,"signed_flux_Wb":signed_flux,"average_Bn_T":average_bn,"reversed_flux_Wb":reversed_flux,"magnetic_voltage_A":magnetic_voltage,# Идеальный Hall: нулевой уровень 2,5 В и чувствительность 20 В/Т."Hall_output_V":2.5+20*by,"linkage_magnitude_Wb":TURNS*abs(signed_flux),# DC-решение задаёт амплитуду предполагаемой синусоиды потока.# Это аналитическая оценка ЭДС, а не временное решение FEMM."emf_rms_50Hz_V":(2*math.pi*FREQ_HZ*TURNS*abs(signed_flux)/math.sqrt(2)),}# Допуски заданы в единицах соответствующих величин и сопоставлены# с точным решением: B_y = B0, H_y = B0/mu0, |Phi| = B0*S.assertabs(bx)<1e-8andabs(by-B0)<1e-8assertabs(hx)<0.01andabs(hy-B0/MU0)<0.01assertabs(abs(signed_flux)-B0*AREA)<1e-10assertabs(abs(average_bn)-B0)<1e-8assertabs(signed_flux+reversed_flux)<1e-12assertabs(magnetic_voltage-B0/MU0*0.016)<0.001rows.append(row)mo_close()mi_close()# Каждая пара строк относится к одной сетке и двум значениям прибавки к A_z.forkin(0,2):assertabs(rows[k]["By_T"]-rows[k+1]["By_T"])<1e-8assertabs(rows[k]["signed_flux_Wb"]-rows[k+1]["signed_flux_Wb"])<1e-10assertrows[2]["elements"]>rows[0]["elements"],"Нужны разные сетки"# Сохраняем численные величины вместе с происхождением и границами модели.result={"origin":"native_FEMM_static_uniform_air_field","scope":"Point B/H, oriented flux, 16 mm H path, mesh and gauge checks; ideal passive sensors; no physical calibration or device validation.","input":{"B_T":B0,"width_mm":WIDTH_MM,"depth_mm":DEPTH_MM,"turns":TURNS},"expected":{"flux_magnitude_Wb":B0*AREA,"Hy_A_per_m":B0/MU0},"rows":rows,"passed":len(rows)==4,}withopen(OUTPUT+"/results.json","w")asstream:json.dump(result,stream)print(json.dumps(result))
Расчётные исследования по теме
Изучите физическую постановку, выполните программу во встроенном Python FEMM 5 и проверьте результаты по сохранённым моделям и независимым критериям.
Цилиндр Хальбаха создаёт сильное поле в рабочем отверстии благодаря повороту направления намагничивания по окружности. Такая система позволяет связать устройство постоянного магнита, пространственную гармонику и практическую сегментированную сборку.
В машине постоянного тока магнитное поле возбуждения складывается с полем токов якоря. Результат зависит от распределения проводников, а не только от суммы ампер-витков.
Снимки интерфейса FEMM показывают геометрию, настройки и работу с результатами в FEMM 5. Откройте изображение, чтобы рассмотреть подписи и значения в полном размере.
Сегментированный цилиндр Хальбаха: поле и дискретизация намагничивания. Геометрия учебной модели; подписи скрыты для читаемости. Открыть в полном размереСохранённое решение «Сегментированный цилиндр Хальбаха: поле и дискретизация намагничивания». Модуль магнитной индукции |B|, Тл, и линии статического магнитного поля; рабочая область модели. Открыть в полном размереРеакция якоря машины постоянного тока: раздельное и совместное возбуждение. Геометрия учебной модели; подписи скрыты для читаемости. Открыть в полном размереСохранённое решение «Реакция якоря машины постоянного тока: раздельное и совместное возбуждение». Модуль магнитной индукции |B|, Тл, и линии статического магнитного поля; рабочая область модели. Открыть в полном размере
Самостоятельная работа
Составьте воспроизводимый протокол виртуального датчика Холла и контурного измерения потока: исходная программа, четыре пары FEM/ANS и таблица точных проверок.
Критерий выполнения: Показание датчика Холла связано с выбранной компонентой и калибровочной моделью. Ориентация контуров, Depth и единицы указаны; знаки проверены обращением. Проверены обе сетки и обе добавки A; границы применимости эталона объяснены.
Первоисточники и дополнительное чтение по занятию
[64] — Чувствительность, смещение нуля, диапазон и температурные эффекты
[33] — §§ 2.2.7–2.2.10, 3.4.1; приложения о гармонических материалах