Линейная аппроксимация нелинейных моделей черного ящика

Почему вычисляют линейную аппроксимацию нелинейной модели?

Система управления и линейные аналитические методы с помощью программного обеспечения Control System Toolbox™ требуют линейных моделей. Можно использовать предполагаемую нелинейную модель в этих приложениях после вас линейный модель. После того, как вы будете линеаризовать свою модель, можно использовать модель в системе управления и линейном анализе.

Выбор подхода линейной аппроксимации

Программное обеспечение System Identification Toolbox™ обеспечивает два подхода для вычисления линейной аппроксимации нелинейного ARX и моделей Хаммерстайна-Винера.

Чтобы вычислить линейную аппроксимацию нелинейной модели для данного входного сигнала, используйте linapp команда. Получившаяся модель только допустима для того же входа, что вы используетесь для расчета линейной аппроксимации. Для получения дополнительной информации смотрите Линейную аппроксимацию Нелинейных Моделей Черного ящика для Данного Входа.

Если вы хотите приближение касательной нелинейной динамики, которая точна около системной рабочей точки, используйте linearize команда. Получившаяся модель является приближением Ряда Тейлора первого порядка для системы о рабочей точке, которая задана постоянным входом и значениями состояния модели. Для получения дополнительной информации смотрите Линеаризацию Касательной Нелинейных Моделей Черного ящика.

Линейная аппроксимация нелинейных моделей черного ящика для данного входа

linapp вычисляет лучшую линейную аппроксимацию, в смысле среднеквадратичной погрешности, нелинейного ARX или модели Хаммерстайна-Винера для данного входа или случайным образом сгенерированного входа. Получившаяся линейная сила модели только быть допустимыми для того же входного сигнала как вы тот вы раньше генерировали линейную аппроксимацию.

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

Чтобы вычислить линейную аппроксимацию нелинейной модели черного ящика для данного входа, у вас должны быть эти переменные:

  • Нелинейная модель ARX (idnlarx объект) или модель Хаммерстайна-Винера (idnlhw объект

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

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

  • Для нелинейных моделей ARX, linapp оценивает, что линейная модель ARX с помощью той же модели заказывает na, nb, и nk как исходная модель.

  • Поскольку Хаммерстайн-Винер моделирует, linapp оценивает, что линейная модель Output-Error (OE) с помощью той же модели заказывает nb, nf, и nk.

Чтобы вычислить линейную аппроксимацию нелинейной модели черного ящика для случайным образом сгенерированного входа, необходимо задать минимальные и максимальные входные значения для генерации бело-шумового входа с величиной в этой прямоугольной области значений, umin и umax.

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

Линеаризация касательной нелинейных моделей черного ящика

linearize вычисляет приближение Ряда Тейлора первого порядка для нелинейной системной динамики о рабочей точке, которая задана постоянным входом и значениями состояния модели. Получившаяся линейная модель точна в локальном окружении этой рабочей точки.

Чтобы вычислить линейную аппроксимацию касательной нелинейной модели черного ящика, у вас должны быть эти переменные:

  • Нелинейная модель ARX (idnlarx объект) или модель Хаммерстайна-Винера (idnlhw объект

  • Рабочая точка

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

  • idnlarx — Нелинейная модель ARX

  • idnlhw — Нелинейная модель Хаммерстайна-Винера

Если вы не знаете значений рабочей точки для своей системы, смотрите Вычислительные Рабочие точки для Нелинейных Моделей Черного ящика.

Для получения дополнительной информации смотрите idnlarx/linearize или idnlhw/linearize страница с описанием.

Вычисление рабочих точек для нелинейных моделей черного ящика

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

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

Вычисление рабочей точки от установившихся спецификаций

Используйте findop вычислить рабочую точку из установившихся спецификаций:

  • Значения сигналов ввода и вывода.
    Если любой, установившееся значение ввода или вывода неизвестно, можно задать его как NaN оценить это значение. Это особенно полезно при моделировании систем MIMO, где только подмножество ввода и вывода установившиеся значения известно.

  • Более комплексные установившиеся спецификации.

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

Для получения дополнительной информации смотрите idnlarx/findop или idnlhw/findop страница с описанием.

Вычисление рабочих точек в снимке состояния симуляции

Вычислите рабочую точку в определенное время во время симуляции модели (снимок состояния) путем определения времени снимка состояния и входного значения. Чтобы использовать этот метод в вычислении рабочей точки равновесия, выберите вход, который приводит к установившемуся выходному значению. Используйте тот вход и временную стоимость, в которой выход достигает устойчивого состояния (время снимка состояния), чтобы вычислить рабочую точку.

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

Однако для нелинейных моделей ARX, установившееся выходное значение может зависеть от начальных условий. Для этих моделей необходимо исследовать эффект начальных условий на ответе модели и использовать значения, которые производят желаемый выход. Можно использовать data2state сопоставлять значения сигналов ввода - вывода до симуляции запускается к начальным состояниям модели. Поскольку начальные состояния являются функцией предыстории значений ввода и вывода модели, data2state генерирует начальные состояния путем преобразования данных.

Смотрите также

|

Похожие темы