Санкт-Петербургский государственный университет
Кафедра компьютерных технологий и систем
Выпускная квалификационная работа
Направление 010400 - Прикладная информатика
Управление движением подводного аппарата по заданной траектории
Большаков Георгий Михайлович
Санкт-Петербург
2018
Введение
В настоящее время для решения различных исследовательских задач в водных просторах, таких как исследование дна, рельефа, различных подводных сооружений, инспекция и обслуживание разного рода технических сооружений, видео и фото съемка, интенсивно используются подводные автономные необитаемые аппараты (АНПА). Поскольку АНПА существуют различных типов, конструкций, разрабатываются во многих организациях самостоятельно, актуальным является изучение различных вопросов, связанных с управлением АНПА. Особое внимание интересно уделить вопросам управления сложными движениями в трёхмерном пространстве, необходимость в которых может возникнуть, например, при обхождении препятствий. Основной целью данной работы являлась разработка законов управления на траектории, задаваемых желаемыми координатами объекта и курсом, с учётом возможного действия на объект кусочно-постоянных возмущений, в том числе на основе не полностью измеренного вектора состояния. Для этого в работе выполнена реализация известного подхода к управлению АНПА на траектории в предположении, что известен весь вектор измерений, предложенного в работе [1] и основанного на технике backstepping. В работах [2], [3] предложены иные варианты управления АНПА на траектории с теми же предположениями, в том числе обсуждается возможность использования расширенного фильтра в контуре обратной связи. В данной работе предложены модификации управления, представленного в работе [1] для подавления действия кусочно-постоянных возмущений, в том числе использован расширенный фильтр Калмана для оценки вектора состояния в условиях, когда не все компоненты вектора состояния доступны измерению.
1. Постановка задачи
1.1 Математическая модель аппарата
Основные принципы построения математических моделей морских подвижных объектов представлены в [4]. В данной работе в качестве математической модели подводного аппарата принимается модель, общая структура которой описана в [1]-[3], там же приведены параметры модели.
Кинематическая модель
Для построения кинематической модели используются две системы отсчёта в трёхмерной прямоугольной системе координат, показанные на рис. 1: инерциальная система отсчёта , и система отсчёта, связанная с телом . Также на рис. 1 показано, как введены основные переменные состояния, характеризующие динамику подводного аппарата.
Рис. 1. Системы координат, используемые в модели
Кинематическая модель аппарата может быть выражена уравнением
где - положение и ориентация в инерциальной системе отсчёта; - вектор скоростей в системе отсчёта, связанной с телом; - матрица перехода между системами отсчёта.
Динамическая модель
Динамическая модель может быть выражена следующим уравнением:
где - инерциальная матрица, обозначает матрицу Кориолиса, - матрица, содержащая гидродинамические коэффициенты демпфирования, обозначает силу тяжести и силу плавучести, - управляющие силы и моменты, которые действуют на центр тяжести аппарата.
В данной работе предполагается, что , то есть рассматриваются только четыре степени свободы. Это обусловлено тем, что они в достаточной степени описывают основные характеристики всей системы, и из-за сложности полной системы. Следовательно, вышеупомянутые векторы и матрицы могут быть упрощены как
В качестве управления будем принимать вектор управляющих сил и моментов , вырабатываемый управляющими органами, которыми оборудован подводный аппарат и удовлетворяющий соотношению
Параметры
Здесь используются следующие параметры конкретного подводного аппарата, приведённые в [1]-[3]:
.
В матрице M в верхних трёх диагональных элементах используются разность массы аппарата и добавочной массы, в четвёртом - момента инерции относительно оси z и добавочной массы, в матрице C - массы аппарата и элементов вектора q, в матрице D - отрицательные линейные параметры сопротивления, g - квадратичные параметры сопротивления.
1.2 Математическая постановка задачи
Требуется обеспечить движение подводного аппарата вдоль заданной траектории, по которой должен следовать аппарат, определяемой вектором , где , это можно выразить как
(9)
При построении управления следует учитывать, что не все переменные могут быть доступны измерению, а также, возможно влияние на объект внешних воздействий от ветра и течения, которые математически описываются кусочно-постоянными функциями.
Будем считать, что вектор управлений формируется как
если все компоненты вектора состояния доступны для измерения.
В случае, если управление строится на основе оценок вектора состояния, то есть учитывается, что не весь вектор состояния доступен измерению, вектор управления формируется как
,
где - оценки векторов и , сформированные на основе данных об измеряемых переменных :
,
где , а матрица постоянна.
2. Синтез управления
2.1 Управление на основе техники Backstepping
В качестве базового подхода, на котором будем основывать синтез управления, используется подход, который предложен в статье [1], основанный на использовании техники Backstepping. Техника Backstepping предполагает решение задачи синтеза в несколько этапов для последовательности упрощённых моделей, и позволяет учитывать известную нелинейную часть динамики системы.
Указанный подход предполагает синтез управления обеспечивающий выполнение соотношений
где - реальная текущая траектория, - желаемая траектория, - реальный текущий вектор скоростей, - желаемый вектор скоростей (виртуальное управление):
Вектор управлений при этом формируется в следующем виде:
Подставим (16) в (2) и получим уравнение относительно ошибки :
Теперь, считая, что , получим уравнение относительно ошибки
Отсюда видно, что если выбрать K, диагональными матрицами с положительными коэффициентами, соотношения, указанные выше (15), (16), будут выполняться.
В статье [1] показано, что при таком выборе управления и виртуального вектора желаемых скоростей ошибки и будут равномерно ограничены, при этом замкнутая система будет обладать робастными свойствами, то есть при некоторых ограниченных отклонениях в матрицах модели будет сохраняться движение вдоль траектории, но с некоторыми отклонениями от желаемых значений.
Матрицы и позволяют влиять на характеристики переходных процессов, путём увеличения их диагональных элементов можно увеличить быстродействие по сходимости конкретных компонент ошибок.
Теперь будем считать, что на подводный аппарат действуют внешние воздействие, представленные в виде
Вектор вводится в правую часть системы (2) аддитивно. Тогда модель может быть переписана в виде
Указанные внешние силы и момент при движении будут смещать аппарат с заданной траектории, и описанное управление (16) не обеспечивает движение объекта по заданной траектории. Для подавления влияния внешнего возмущения на динамику объекта можно модифицировать структуру управления путём введения в уравнения (15) и (16) интегральных слагаемых для ошибок и .
В обновлённом варианте вектор виртуальных желаемых скоростей и вектор примут вид
В этом случае уравнение относительно ошибки примет вид
Введение интегрального слагаемого будет означать, что в модель добавлены вспомогательные уравнения относительно вектора
Тогда выберем матрицы и диагональными с положительными коэффициентами, и если наличие возмущений (21) приведёт к постоянному смещению в системе с управлением (16), то при управлении (24) в системе в этом случае образуется решение по вектору то есть вектор должен совпасть с .
Аналогично уравнение относительно ошибки примет вид
Здесь также выберем матрицы и диагональными с положительными коэффициентами, в результате чего вектор должен совпасть с .
2.2 Управление с использованием наблюдателя
Как оговорено выше, будем считать, что для измерения доступны не все переменные, кроме того, некоторые переменные могут измеряться с погрешностями. Таким образом, необходимо построить наблюдатель для оценивания динамических переменных.
Наблюдателем для системы вида
где - вектор состояния системы - вектор измерений, принято называть устройство, которое описывается системой вида
И позволяет построить оценку вектора состояния , используя измеряемые переменные , так, что
Вопрос синтеза наблюдателей для линейных систем хорошо изучен, в частности, большой популярностью пользуется фильтр Калмана. Для нелинейных систем, когда считается, что следует использовать не линейное приближение, а учитывать нелинейные составляющие, ситуация не так однозначна, в основном наблюдатели строятся для систем специального вида. Часто оказывается возможным использование для нелинейных систем так называемого расширенного фильтра Калмана. Воспользуемся этой идеей для рассматриваемой системы.
Объединяя уравнения (1) и (12) в одну систему и разрешая систему (2) относительно , можно представить математическую модель подводного аппарата, записывая её совместно с системой измерений в виде:
.
Считая также, что на объект действуют некоторые внешние возмущения , а в систему измерений аддитивно входят некоторые функции, задающие погрешности в измерениях датчиков, , систему можно представить в виде:
Синтез фильтра Калмана предполагает, что вектора и представляют собой случайные величины с нулевым математическим ожиданием, которые распределены по нормальному закону и задаются своими ковариационными матрицами и соответственно.
Уравнения расширенного фильтра Калмана выглядят следующим образом:
где , - заданные матрицы, указанные выше, - вектор измерений, - вектор оценки параметров положения и скорости аппарата, - матрица ковариации ошибки вектора состояния, которая характеризует степень достоверности уравнений системы. Для применения уравнений (33)-(35) необходимо также задать начальные значения вектора оценки , которые могут быть приняты нулевыми, и матрицу , которую также будем считать нулевой в силу того, что дополнительная информация, которая позволила бы задать её иной, отсутствует.
Матрицы отражают возможные погрешности в модели, и в условиях отсутствия информации о таких погрешностях конкретный их вид, который соответствовал бы реальным условиям, задать невозможно. Для конкретного объекта их можно настраивать в процессе экспериментов для тестовых режимов. В силу отмеченных обстоятельств в данной работе эти матрицы выбраны диагональными с постоянными элементами.
Введём наблюдатель указанного вида в контур обратной связи системы, тогда итоговое управление формируется в виде
При наличии кусочно-постоянных возмущений в системе (22) оценка вектора состояния при помощи фильтра Калмана (33)-(35) оказывается неточной, поскольку при его построении данные возмущения не учтены (используемая модель задана не полностью). Для уточнения уравнений наблюдателя введём в него также оценки постоянных возмущений, изменяя структуру фильтра Калмана.
В качестве модели возмущений на каждом интервале постоянства компонент вектора возмущений примем следующую систему дифференциальных уравнений: каждое решение которой представляется постоянным вектором
В этом случае, объединяя модель объекта и модель возмущений, получаем общую систему дифференциальных уравнений
Расширенный фильтр Калмана для (36) будет представляться следующей системой уравнений:
Здесь все матрицы имеют тот же смысл, что и в системе (33)-(35).
3. Численное моделирование
Практическая реализация рассмотренного подхода выполнена в среде MATLAB-Simulink. Для выполнения имитационного моделирования построены Simulink-модели, соответствующие разным режимам движения.
При выполнении численных расчётов используется явный метод Эйлера для решения системы обыкновенных дифференциальных уравнений с постоянным шагом .
Проведение расчётов выполнено для следующей тестовой траектории:
Проиллюстрируем динамику объекта при различных условиях. Вначале будем считать, что все переменные вектора состояния измеряются. В этом случае аппарат будет двигаться под воздействием (backstepping numbers) при обеспечении в соответствии с (15). В качестве конкретных матриц в управлении и в выражении для виртуальной скорости выбраны
Общая схема Simulink-модели, соответствующей указанным условиям, отображена на рисунке 2.
На рисунке 3 показан процесс перехода на заданную траекторию в пространстве Oxyz под воздействием управления (). На рис. 4 показан соответствующий процесс для .
Теперь введём в систему ступенчатые возмущения следующего вида:
Динамические процессы при том же управлении (16) под действием возмущений (21) показаны на рис. 5-6. Видно, что аппарат сместился с траектории.