Спроектируйте контроллер сервомотора LQR в Simulink

Следующий рисунок показывает, что блок-схема Simulink® показывает задачу отслеживания в проекте автопилота самолета. Чтобы открыть эту схему, введите lqrpilot в подсказке MATLAB®.

Ключевые возможности этой схемы, чтобы отметить следующие:

  • Блок Linearized Dynamics содержит линеаризовавший корпус.

  • sf_aerodyn Блок s-function, который содержит нелинейные уравнения для (θ,ϕ)=(0,15).

  • Сигнал ошибки между ϕ и ϕref передается через интегратор. Это помогает в управлении ошибкой обнулить.

Уравнения пространства состояний для корпуса

Начало со стандартного уравнения пространства состояний

x˙=Ax+Bu

где

x=[u,v,w,p,q,r,θ,ϕ]T

Переменные u, v и w являются этими тремя скоростями относительно системы координат тела, показанной можно следующим образом.

Система координат координаты тела для самолета

Переменные ϕ и θ крен и тангаж, и p, q, и r является креном, тангажом и уровнями рыскания, соответственно.

Движущие силы корпуса нелинейны. Следующее уравнение показывает нелинейные компоненты, добавленные к уравнению пространства состояний.

Нелинейный компонент уравнения пространства состояний

x˙=Ax+Bu+[gsinθgcosθsinϕgcosθcosϕ000qcosϕrsinϕ(qsinϕ+rcosϕ)tanθ]

Чтобы видеть численные значения для A и B, ввести

load lqrpilot
A, B

в подсказке MATLAB.

Обрезка

В целях проекта LQG нелинейные движущие силы обрезаются в ϕ=15 и p, q, r и θ обнуляются. Начиная с u v и w не вводят в нелинейный термин в предыдущей фигуре, это составляет линеаризацию вокруг (θ,ϕ)=(0,15) со всеми остающимися обнуленными состояниями. Получившаяся матрица состояния линеаризовавшей модели называется A15.

Описание задачи

Цель выполнить устойчивый скоординированный поворот, как показано в этом рисунке.

Самолет, делающий поворот на 60 °

Чтобы достигнуть этой цели, необходимо спроектировать контроллер, который управляет устойчивым поворотом путем прохождения через крена на 60 °. Кроме того, примите, что θ, угол тангажа, требуется, чтобы оставаться максимально близко к нулю.

Результаты

Чтобы вычислить LQG получают матрицу, KВвод

lqrdes

в подсказке MATLAB. Затем запустите lqrpilot модель с нелинейной моделью, sf_aerodyn, выбранный.

Этот рисунок показывает ответ ϕ к команде шага на 60 °.

Отслеживание команды шага крена

Как вы видите, системные дорожки, 60 °, которыми управляют, сыплют приблизительно 60 секунд.

Другая цель состояла в том, чтобы сохранить θ, угол тангажа, относительно маленький. Этот рисунок показывает, как хорошо контроллер LQG сделал.

Минимизируя смещение в углу тангажа, Theta

Наконец, этот рисунок показывает входные параметры управления.

Управляйте входными параметрами для LQG отслеживание проблемы

Попытайтесь настроить Q и R матрицы в lqrdes.m и осмотр входных параметров управления и системных состояний, убеждаясь повторно выполнять lqrdes чтобы обновить LQG получают матричный K. Методом проб и ошибок можно улучшить время отклика этого проекта. Кроме того, сравните линейные и нелинейные проекты, чтобы видеть эффекты нелинейности на производительности системы.

Похожие темы