Идентификация параметров двигателя
Определяем сопротивление, индуктивность, постоянную ЭДС, инерцию и трение по измерениям и проверяем модель.
Перед началом: модель двигателя из урока 6, экспоненциальный переход и основы линейной алгебры.
После занятия вы сможете: планировать идентификационный опыт, оценивать параметры и отличать ошибку параметров от ошибки структуры модели.
Порядок работы: базовый разбор → углублённая теория → самостоятельный расчёт → проверка решения.
- 1. Что означает «найти параметры»
- 2. Электрический опыт: сопротивление и индуктивность
- 3. Постоянная ЭДС, инерция и трение
- 4. Интегральная регрессия вместо шумной производной
- 5. Расчёт по нескольким точкам
- 6. Независимая проверка и типичные ошибки
- Задачи для самостоятельного решения
- Лабораторная работа и защита
- Что запомнить
1. Что означает «найти параметры»
До сих пор R = 2 Ом, L = 0,02 Гн, J = 0,002 кг·м², b = 0,002 Н·м·с/рад и k = 0,1 считались известными. В реальной задаче часть параметров отсутствует в паспорте или относится к другой температуре и сборке. Идентификация — восстановление параметров математической модели по входам и измеренным выходам.
Используем двигатель постоянного тока с постоянным потоком. Измеряем u(t), i(t), ω(t); момент нагрузки должен быть известен или исключён постановкой опыта. Сначала выбирают структуру модели и только затем оценивают числа. Если отсутствует сухое трение, алгоритм может компенсировать его изменением b и J, но такие параметры плохо предскажут другой режим.
2. Электрический опыт: сопротивление и индуктивность
При неподвижном роторе противо-ЭДС равна нулю. Для идеальной обмотки и ступени напряжения i(t) = U/R + (i₀ − U/R)e−tR/L. Установившийся ток определяет R, а форма перехода — L. В учебном расчёте фиксация ротора идеальна; на стенде используют предусмотренную конструкцией фиксацию и ограничение тока, чтобы не спутать измерение с перегревом обмотки.
τe = −t/ln[(I∞ − i(t))/(I∞ − i₀)]
L = Rτe
Пример. При U = 4 В, i₀ = 0 установившийся ток равен 2 А. Через 10 мс измерено 1,26424 А. Получаем R = 2 Ом, τe = 0,01 с и L = 0,02 Гн. Одной установившейся точки для определения L недостаточно: в ней производная тока уже равна нулю.
Лучше использовать несколько уровней напряжения и аппроксимировать U = RI + Uщ в области одного знака тока. Ненулевой свободный член может отражать щёточное падение напряжения. Нельзя автоматически принять U/I за сопротивление, если это падение сопоставимо с приложенным напряжением.
3. Постоянная ЭДС, инерция и трение
При установившемся токе ke = (U − RI)/ω для ω ≠ 0. Значения U = 12 В, I = 2 А, ω = 80 рад/с дают ke = 0,1 В·с/рад. Численное равенство kt = ke относится к согласованной идеальной модели в СИ.
При выбеге с уже погашенным током и без внешней нагрузки Jω′ = −bω. Логарифмический наклон ln|ω| определяет только отношение b/J. По одному такому опыту независимо найти b и J нельзя.
kti − ML = Jω′ + bω
Для разделения J и b нужен независимый опыт. Если при ω = 0 ускорение равно 50 рад/с², i = 1 А, ML = 0, то J = 0,1/50 = 0,002 кг·м². При постоянной времени выбега 1 с получаем b = 0,002 Н·м·с/рад. Вывод предполагает отсутствие сухого трения в точке старта и известный момент двигателя.
4. Интегральная регрессия вместо шумной производной
Вычисление производной измеренного тока усиливает шум. Проинтегрируем электрическое уравнение на нескольких окнах [tₐ,tᵦ]. Каждое окно даёт линейное уравнение относительно R, L и ke:
Y = Φθ, θ = [R, L, ke]ᵀ
θ̂ = arg minθ ‖Φθ − Y‖²
Столбцы Φ содержат интегралы тока, приращения тока и интегралы скорости. Матрица должна иметь полный столбцовый ранг. При неподвижном роторе третий столбец нулевой: ke таким опытом не определяется. На установившемся режиме столбец приращений тока тоже нулевой. Нужны разные режимы и достаточная частота регистрации.
Решайте задачу через QR- или SVD-разложение, например numpy.linalg.lstsq, а не через явное обращение ΦᵀΦ. Столбцы с разными единицами полезно масштабировать. Шум присутствует и в Φ, поэтому обычный МНК не гарантирует несмещённой оценки; интегрирование лишь уменьшает чувствительность к высокочастотному шуму.
5. Расчёт по нескольким точкам
В скачиваемом примере используются времена 5, 10, 15, 20 мс и токи 0,78694; 1,26424; 1,55374; 1,72933 А при U = 4 В. Для q = (I∞ − i)/(I∞ − i₀) регрессия ln q = −αt даёт α = R/L:
Получается L ≈ 0,02000 Гн. Это почти точные синтетические данные. В измерениях точки слишком близко к I∞ дают нестабильный логарифм. При заметном шуме лучше минимизировать ошибку исходной экспоненты по току и отдельно оценить доверие к I∞. Логарифмическая регрессия и нелинейная подгонка исходного тока используют разные веса ошибок.
Скачать расчёты к урокам 11–15 на Python. Запуск: python advanced-experiments.py. Нужны NumPy и SciPy; результаты выводятся в консоль.
6. Независимая проверка и типичные ошибки
Оцените параметры по одной записи, затем рассчитайте другую ступень напряжения и скачок нагрузки без повторной подгонки. Покажите остатки iизм − iмод и ωизм − ωмод. Постоянное смещение, зависимость остатка от скорости или повторяемая форма важнее одного среднего числа ошибки.
Сдвиг времени датчика может выглядеть как увеличение L; ошибка масштаба энкодера — как изменение ke. До подбора параметров согласуйте временные метки, направления и единицы. Отрицательные оценки R, L или J для пассивного двигателя — повод проверить информативность опыта и модель.
Задачи для самостоятельного решения
1. При неподвижном роторе U = 6 В, I∞ = 3 А, i₀ = 0. Через 8 мс ток достиг 1,89636 А. Найдите R и L.
Показать решение
R = 6/3 = 2 Ом. Остаточная доля ≈ 0,36788, поэтому τ ≈ 8 мс и L ≈ 0,016 Гн.
2. При выбеге скорость уменьшилась со 100 до 60,653 рад/с за 0,5 с. Можно ли найти J и b? Найдите b при отдельно известном J = 0,003 кг·м².
Показать решение
Определяется только b/J = −ln(60,653/100)/0,5 ≈ 1 с⁻¹. При заданной инерции b ≈ 0,003 Н·м·с/рад. Без дополнительного опыта множество пар J и b дают одинаковый выбег.
Лабораторная работа и защита
Сгенерируйте RL-переход с известными R и L, добавьте шум тока с фиксированным seed и стандартным отклонением 0,01 А. Сравните оценку по одной точке и по всем точкам. Повторите 50 реализаций и приведите среднее значение и разброс. Затем внесите постоянное смещение датчика 0,03 А и объясните отличие систематической ошибки от случайной.
В отчёте укажите, какие параметры идентифицируются каждым опытом, какие приняты известными и на какой записи проверена модель. Объясните, почему удлинение только установившегося участка не помогает определить L.
Что запомнить
Параметры определяются только при достаточной информативности опыта. Оценку проверяют на независимом режиме с учётом шума и допущений. Совпадение на обучающем опыте не заменяет валидацию.
Прогресс хранится только в этом браузере.