Урок 15 / Расширенный курс

Дискретное управление и задержки

Точная дискретизация, цифровой PI-регулятор, вычислительная задержка, квантование и устойчивость на z-плоскости.

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

Перед началом: модель состояния, PI-регулирование и численные методы.

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

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

1. Три разных временных масштаба

Цифровой привод считывает датчик через период Ts, вычисляет команду и удерживает её до следующего обновления. ШИМ имеет собственный период Tsw, а решатель модели — шаг h. Эти величины могут совпадать, но имеют разный смысл.

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

Уменьшение h повышает точность моделирования, но не ускоряет регулятор с фиксированным Ts. Обновляйте PI только в моменты kTs, а между ними интегрируйте объект при постоянной команде. Пересчёт PI на каждом внутреннем шаге адаптивного решателя создаёт другой алгоритм.

2. Точная модель с удержанием команды

Для x′ = Ax + Bu и u = u[k] на интервале [kTs, (k+1)Ts) точное интегрирование даёт:

x[k+1] = Adx[k] + Bdu[k]
Ad = exp(ATs)
Bd = ∫₀Ts exp(Aξ)B dξ

Выражение Bd = A⁻¹(Ad − I)B допустимо только при обратимой A. Общий способ — экспонента блочной матрицы [A B; 0 0]; он работает и при интеграторе. Для нескольких входов B имеет несколько столбцов, включая канал нагрузки.

Для RL-цепи i′ = −(R/L)i + u/L имеем a = exp(−RTs/L), g = (1 − a)/R и i[k+1] = ai[k] + gu[k]. При R = 2 Ом, L = 0,02 Гн, Ts = 1 мс получаем a = 0,904837, g = 0,047581 А/В.

3. Устойчивость и влияние одной задержки

Непрерывный полюс λ переходит в z = exp(λTs). Затуханию соответствует |z| < 1. Точная дискретизация сохраняет устойчивость самого объекта, однако цифровая обратная связь может сделать контур неустойчивым.

Для RL-объекта и P-регулятора u[k] = K(r[k] − i[k]) полюс малых отклонений z = a − gK. При K > 0 условие устойчивости:

0 < K < (1 + a)/g

При Ts = 1 мс граница ≈ 40,033 В/А. Если объект получает u[k−1], задержанную на период, характеристическое уравнение z² − az + gK = 0. При 0 < a < 1, K > 0 критерий сводится к gK < 1: K < 21,017 В/А. Одна задержка почти вдвое уменьшила допустимое усиление.

При K = 30 В/А без задержки z ≈ −0,5226: затухающее чередование отсчётов. С задержкой полюса комплексные, их модуль √(gK) ≈ 1,1948, отклонения растут. Насыщение может ограничить амплитуду, но не делает линейный контур устойчивым. Скачиваемый пример проверяет обе пары условий и полюсы.

Скачать расчёты к урокам 11–15 на Python. Запуск: python advanced-experiments.py. Нужны NumPy и SciPy; результаты выводятся в консоль.

4. Цифровой PI и порядок операций

Пусть v[k] — интегральная составляющая команды, e[k] = r[k] − y[k]. При явном интегрировании сначала вычисляем выход по текущему v[k], затем обновляем состояние:

uraw[k] = Kpe[k] + v[k]
u[k] = clip(uraw[k], umin, umax)
v[k+1] = v[k] + Ts{Kie[k] + [u[k]−uraw[k]]/Tt}

Порядок «обновить интегратор → вычислить выход» даёт другой дискретный регулятор. Зафиксируйте порядок в коде. Трапецеидальное интегрирование использует среднее e[k] и e[k−1]; его нельзя смешивать с коэффициентами и индексацией другой реализации.

Защита обратным расчётом тоже имеет динамику. В изолированном насыщенном режиме при фиксированной ошибке явный шаг корректирующей части требует 0 < Ts/Tt < 2 для затухания. Слишком малая Tt при редком обновлении способна вызвать неустойчивость самого интегратора.

5. Период, фазовая задержка и квантование

Чистая задержка Td вносит фазу −ωTd радиан. При частоте пересечения 200 рад/с задержка 1 мс добавляет около −11,46°. Это не готовый запас по фазе: нужно учесть объект, датчик, регулятор и удержание команды. Условие Найквиста для регистрации сигнала не гарантирует качества регулирования.

Если энкодер выдаёт N отсчётов за оборот и скорость оценивается по приращению положения за Ts, один отсчёт соответствует Δω = 2π/(NTs). При N = 2048 и Ts = 1 мс шаг оценки 3,068 рад/с. Более длинное окно уменьшает квантование скорости, но увеличивает задержку. N должно учитывать фактический режим декодирования.

Для идеального 12-битного АЦП диапазона −5…+5 А ширина кванта 10/4096 = 2,441 мА. Число 4095 относится к разности крайних кодов при некоторых способах масштабирования, а ширина равных интервалов использует 2¹². Квантование может поддерживать малые предельные циклы даже при устойчивой линейной модели.

Дополнительное чтение: University of Alberta: удержание нулевого порядка и дискретная модель. В источнике старый синтаксис MATLAB; в нашем примере используется матричная экспонента SciPy.

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

1. Для λ = −20 с⁻¹ и Ts = 0,01 с найдите z. Сравните точную дискретизацию и Эйлера при Ts = 0,12 с.

Показать решение

При 0,01 с точный z = exp(−0,2) ≈ 0,81873. При 0,12 с точный z = exp(−2,4) ≈ 0,09072, а Эйлер даёт 1 − 20·0,12 = −1,4: неустойчивую аппроксимацию устойчивого объекта.

2. Для N = 4096 и окна оценки скорости 5 мс найдите изменение оценки при одном дополнительном отсчёте.

Показать решение

Δω = 2π/(4096·0,005) ≈ 0,30680 рад/с. Удлинение окна повышает разрешение оценки скорости, но добавляет запаздывание и не меняет физическое разрешение положения.

Итоговая лабораторная работа

Реализуйте цифровой PI скорости из урока 10: Kp = 0,3, Ki = 1, обратный расчёт Tt = 0,05 с, ограничение ±12 В. Для полной модели двигателя сравните Ts = 1; 5; 20 мс и отдельно задержку команды на один период. Начальные i, ω, v и предыдущая команда нулевые. Задание — 60 рад/с, нагрузка 0,1 Н·м появляется в момент 1 с.

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

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

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

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

Скачать расчёты 11–15 ↓

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