Урок 02 / Физические основы

Математика изменения

Производная, интеграл и задача с начальными условиями без лишнего формализма.

Третий курс · 100 минут с задачами

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

После занятия вы сможете: решать линейную задачу Коши, учитывать начальные условия в преобразовании Лапласа и связывать корни с формой отклика.

Порядок работы: базовый разбор → углублённая теория → самостоятельный расчёт → проверка решения.

Производная как скорость изменения

Для моделирования не нужно начинать с большого курса высшей математики. Сначала достаточно понимать, что производная связывает текущее состояние с тем, как оно изменится в ближайший момент. Если скорость ротора выросла на 4 рад/с за 0,2 с, среднее угловое ускорение составило 20 рад/с². Производная dω/dt описывает такой темп в пределе малого интервала.

dω/dt ≈ [ω(t + Δt) − ω(t)] / Δt

Это приближение пригодно не только для вычислений, но и для чтения графика. Горизонтальный участок означает почти нулевую производную. Крутой подъём означает большое положительное ускорение. Нулевое значение самой скорости не означает нулевого ускорения: неподвижный ротор может как раз начинать разгон.

Скорость и касательная к её графику
Скорость и касательная к её графику. Расчёт: Python / SHARCON TECH. Нажмите, чтобы увеличить.

Интеграл как накопленное изменение

Если ускорение известно, изменение скорости равно его интегралу по времени. Начальную скорость нужно прибавить отдельно. Для постоянного ускорения α = 10 рад/с² за 0,3 с прирост скорости равен 3 рад/с. При начальной скорости 5 рад/с результат составит 8 рад/с.

ω(t) = ω₀ + ∫₀ᵗ α(ξ) dξ

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

Ускорение и накопленное изменение скорости
Ускорение и накопленное изменение скорости. Расчёт: Python / SHARCON TECH. Нажмите, чтобы увеличить.

Как появляется дифференциальное уравнение

Предположим, момент двигателя M постоянен, а сопротивление вращению пропорционально скорости с коэффициентом b. Тогда ускорение зависит от текущей скорости:

J dω/dt = M − bω
dω/dt = (M − bω) / J

Мы не знаем функцию ω(t) заранее, но умеем вычислить её наклон в любой известной точке. Это и есть идея численного интегрирования: находить последовательность состояний по правилу изменения. Чем больше скорость, тем больше вязкое сопротивление и тем меньше ускорение. Когда M = bω, разгон прекращается.

Чтобы решение было однозначным, нужно задать начальное условие. Уравнение описывает и пуск из покоя, и переход с уже вращающегося состояния. Запись ω(0) = 0 выбирает именно пуск. Пропуск начальных условий делает описание задачи неполным.

Вектор состояния

Когда неизвестных несколько, их собирают в вектор. Для двигателя удобно взять y = [i, ω]. Функция правой части получает время и обе величины, а возвращает две производные в том же порядке. Порядок нельзя менять между описанием уравнений, начальными условиями и чтением результата.

def rhs(t, y):
    current, speed = y
    di = (12 - 2 * current - 0.1 * speed) / 0.02
    dw = (0.1 * current - 0.002 * speed) / 0.002
    return [di, dw]

Результат функции — не следующий ток и не следующая скорость. Это их производные: А/с и рад/с². Шаг интегрирования и вычисление нового состояния выполняет численный метод.

Линейность и суперпозиция

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

Даже линейная модель может иметь меняющийся во времени вход. Скачок нагрузки не делает уравнение нелинейным. А вот ограничение команды функцией clip превращает замкнутую систему в нелинейную по участкам.

Практическая работа

Для J = 0,002 кг·м², b = 0,002 Н·м·с/рад и M = 0,1 Н·м найдите начальное ускорение при ω₀ = 0 и при ω₀ = 20 рад/с. Затем найдите равновесную скорость. Ответы: 50 и 30 рад/с²; равновесие 50 рад/с. Объясните, почему при разных начальных условиях равновесие одно и то же.

Самопроверка: что произойдёт при начальной скорости 70 рад/с?

Момент вязкого сопротивления составит 0,14 Н·м и превысит двигательный момент. Начальное ускорение будет −20 рад/с². Скорость уменьшится и приблизится к 50 рад/с сверху.

Решение уравнения первого порядка

Рассмотрим x′ + ax = bu(t), где a > 0. Умножим обе части на интегрирующий множитель eat. Левая часть станет производной произведения. Интегрирование от 0 до t даёт точное решение:

(xeat)′ = bu(t)eat
x(t) = x₀e−at + b∫₀ᵗ e−a(t−ξ)u(ξ)dξ

Первое слагаемое — отклик на начальное состояние при нулевом входе; второе — отклик на вход при нулевом начальном состоянии. Именно для второго отображения обычно формулируют суперпозицию входов. При постоянном U интеграл равен bU(1 − e−at)/a. Постоянная времени равна 1/a, статический коэффициент передачи — b/a.

Разбор. Для x′ + 4x = 8, x(0) = 3 получаем x = 2 + e−4t. Проверка подстановкой: x′ + 4x = −4e−4t + 8 + 4e−4t = 8; начальное условие также выполнено.

Операторный метод и передаточная функция

Преобразование Лапласа переводит производные в алгебраические выражения. Переменная s имеет размерность с⁻¹. Для одностороннего преобразования производной важно сохранить начальное значение:

ℒ{x′} = sX(s) − x(0⁻)
(s + a)X(s) = bU(s) + x₀
G(s) = X(s)/U(s) |x₀=0 = b/(s + a)

Передаточная функция описывает связь входа и выхода при нулевых начальных условиях. При x₀ ≠ 0 необходимо добавить x₀/(s + a). Для единичной ступени U(s) = 1/s; для импульсного входа единичной площади U(s) = 1. Поэтому переходная характеристика является интегралом импульсной.

Три представления одной линейной модели: физический баланс, уравнение состояния и операторная форма.
Три представления одной линейной модели: физический баланс, уравнение состояния и операторная форма.

Второй порядок: корни и характер движения

В связанных системах возникают несколько собственных движений. Для уравнения x″ + 2ζωnx′ + ωn²x = ωn²u вводят собственную частоту ωn > 0 и коэффициент затухания ζ. Корни однородного уравнения определяют свободное движение:

s₁,₂ = −ζωn ± ωn√(ζ² − 1)

При ζ > 1 корни вещественные отрицательные; при ζ = 1 совпадают; при 0 < ζ < 1 образуют комплексно-сопряжённую пару. В последнем случае свободное движение содержит exp(−ζωnt) sin(ωdt + φ), где ωd = ωn√(1 − ζ²). Отрицательные действительные части обеспечивают затухание. Нулевые действительные части не обеспечивают асимптотическую устойчивость.

Для стандартного звена без нулей, при единичной ступени и нулевых начальных условиях, относительное перерегулирование равно exp[−πζ/√(1 − ζ²)], а время первого максимума — π/ωd. Эти формулы нельзя без проверки переносить на произвольный выход многомерной системы.

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

Задачи для самостоятельного решения

1. Решите 0,2x′ + x = 5 при x₀ = 1. Найдите X(s), x(0,2) и x′(0⁺).

Решение

X(s) = [5/s + 0,2]/(0,2s + 1); x(t) = 5 − 4e−5t; x(0,2) = 3,528; x′(0⁺) = 20.

2. Найдите полюса системы x″ + 6x′ + 25x = 25u, ζ, ωd и перерегулирование.

Решение

ωn = 5 рад/с, ζ = 0,6, s = −3 ± 4j с⁻¹, ωd = 4 рад/с. Перерегулирование стандартного ступенчатого отклика ≈ 9,48%; первый максимум через 0,785 с.

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

Что запомнить

Производная описывает локальное изменение, интеграл — его накопление. Дифференциальное уравнение вместе с начальным условием определяет задачу. Перед запуском решателя всегда выписывайте порядок переменных и единицы производных.

Скачать расчёты ↓

Прогресс хранится только в этом браузере.