
2.4. Моделирование линейной динамики подводной лодки в среде matlab и в пакете Simulink
В качестве упрощённого результата линеаризации уравнений движения ПЛ в вертикальной плоскости рассмотрим следующую систему:
(2.4.1)
где
– угловая скорость по дифференту,
– дифферент,
– отклонение кормовых горизонтальных
рулей,
– управляющий сигнал на рули.
Наряду с уравнением объекта управления (2.4.1), рассмотрим уравнение автомата (регулятора) дифферента в виде
, (2.4.2)
где
– командная поправка по дифференту.
Будем считать, что все величины в приведенных уравнениях измеряются в градусах и градусах/с.
Примем
следующие числовые значения коэффициентов
объекта управления и автомата дифферента:
,
,
,
,
,
.
Поставим
задачу о выборе такой командной поправки
,
чтобы замкнутая система (2.4.1), (2.4.2) имела
наперёд заданное положение равновесия
по дифференту. Этим мы однозначно
определим собственное (невозмущённое)
движение замкнутой системы управления
по дифференту.
Промоделируем динамику замкнутой системы с выбранной командной поправкой несколькими способами непосредственно в среде MATLAB и с применением подсистемы Simulink.
Прежде
всего, найдём формулу для величины
,
зависящей от
и величин коэффициентов объекта и
регулятора. С этой целью в соответствии
с (2.4.1), (2.4.2) запишем систему уравнений
для поиска положения равновесия:
Отсюда имеем два уравнения с двумя неизвестными
(2.4.3)
Решая систему (2.4.3), получим положение равновесия
,
. (2.4.4)
В соответствии с первой формулой в (2.4.4) легко записать искомую формулу для величины :
,
где
. (2.4.5)
В
дальнейшем под моделированием динамики
рассматриваемого собственного движения
будем понимать поиск функции
,
удовлетворяющей уравнениям (2.4.1), (2.4.2)
при нулевых начальных условиях с учётом
формулы (2.4.5).
Для поиска этой функции в среде MATLAB воспользуемся тремя возможными путями.
Первый путь. Запишем уравнения замкнутой системы в изображения по Лапласу при нулевых начальных условиях:
(2.4.6)
Решим эту систему относительно изображения по Лапласу для дифферента, используя формулу Крамера:
, (2.4.7)
где
– характеристический полином матрицы
замкнутой системы
,
который можно найти с помощью функции poly пакета MATLAB.
Полином
определится простой формулой
.
Учитывая, что в соответствии с (2.4.5)
,
на основании таблицы изображений по Лапласу имеем
.
Тогда, в соответствии с (2.4.7):
. (2.4.7)
Дробно-рациональное выражение (2.4.7) можно разложить (с помощью функции residue) в сумму простейших дробей вида
, (2.4.8)
где
– корни полинома
.
Тогда искомая функция
,
представляющая движение лодки по
дифференту, может быть найдена как
обратное преобразование по Лапласу от
(2.4.8):
. (2.4.9)
Второй путь. Замкнутую систему (2.4.1), (2.4.2) можно представить в среде MATLAB с помощью LTI-объекта в ss-форме. Далее с помощью функции step можно промоделировать поведение ПЛ по дифференту.
Сделать
это самостоятельно, считая, что входным
сигналом для замкнутой системы служит
величина
,
где
определяется по формуле (2.4.5). В качестве
выхода принять переменную
.
Третий
путь. Замкнутую систему (2.4.1), (2.4.2)
можно представить в среде MATLAB
с использованием подсистемы динамического
моделирования Simulink.
Сделать это самостоятельно. В дополнение
учесть ограничение
на отклонение рулей. Сравнить с динамикой
системы без ограничений.