Разработка и исследование подсистемы формирования программной траектории автономного необитаемого подводного аппарата

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,24 Mb
  • Опубликовано:
    2011-12-19
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка и исследование подсистемы формирования программной траектории автономного необитаемого подводного аппарата












Квалификационная работа бакалавра

Направление: Информатика и вычислительная техника

На тему: Разработка и исследование подсистемы формирования программной траектории автономного необитаемого подводного аппарата











САНКТ-ПЕТЕРБУРГ

г.

Реферат


Пояснительная записка _____ с., 32 рис., 4 табл., 22 источника, 2 прил.

АВТОНОМНЫЙ НЕОБИТАЕМЫЙ ПОДВОДНЫЙ АППАРАТ, МОДЕЛИРОВАНИЕ, АВТОМАТИЗАЦИЯ, МАТЕМАТИЧЕСКАЯ МОДЕЛЬ, SIMULINK

Объектом исследования является система автоматизации подготовки программы-задания для автономного необитаемого подводного аппарата (АНПА).

В процессе работы проводилось исследование задач, решаемых автономным необитаемым подводным аппаратом.

Цель работы - создание подсистемы (программного обеспечения) формирования программной траектории АНПА.

В результате были сформированы требования к подсистеме формирования программной траектории АНПА, выбрано средство реализации моделирования, разработана и отлажена подсистема формирования программной траектории, удовлетворяющая заданию, данному на выполнение квалификационной работы.

Содержание

Реферат

Обозначения и сокращения

Введение

1. Особенности применения анпа в задачах обследования акватории

1.1 Виды АНПА

1.2 Задачи, решаемые АНПА

1.3 Оборудование, устанавливаемое на АПНА при решении различных задач

2. Автоматизация подготовки миссии для АНПА

2.1 Назначение системы автоматизации подготовки миссии для АНПА

2.2 Элементы системы автоматизации подготовки миссии для АНПА

2.3 Типовые элементы покрытия акватории

2.3.1 Меандр

2.3.2 Циклоида

2.3.3 Зигзаг

3. Разработка подсистемы формирования программной траектории

3.1 Формирование требований

3.2 Математические модели

3.2.1 Математическая модель движения АНПА в пространстве

3.2.2 Математическая модель блока управления АНПА

3.1.2.1 Управление АНПА по глубине

3.1.2.2 Управление в горизонтальной плоскости)

3.2.3 Математическая модель блока отклонения

3.3 Выбор средства реализации

3.3.1 Операционная среда Simulink

3.4 Реализация

3.4.1 Реализация модели движения АНПА

3.4.2 Реализация блока управления АНПА

3.4.3 Реализация блока отклонений

3.4.4 Реализация подпрограмм, генерирующих заданную траекторию

3.4.5 Настройки среды Simulink

3.4.6 Реализация интерфейса

4. Исследование работы подсистемы формирования программной траектории

4.1 Отладка работы подсистемы на контрольной задаче

4.2 Отладка взаимодействия с сопрягаемыми элементами

4.3 Предложения по дальнейшему совершенствованию

Заключение

Список использованных источников

Приложение А

Приложение Б

Обозначения и сокращения


НПА-

Необитаемый подводный аппарат

 CПК-

Судовой природоохранный комплекс

АНПА (AUV) -

Автономный необитаемый подводный аппарат

БАНС-

Бортовая автономная навигационная система

ГАСС-

Гидроакустическая система связи

СПУ-

Система программного управления

ОКР-

Опытно-конструкторские работы

ИИС-

Информационно-управляющая система

СТЗ-

Система технического зрения

ГБО-

Гидролокатор бокового обзора

ПО-

Программное обеспечение

ПЭВМ

Персональная электронно-вычислительная машина

ДСК

Декартова система координат

DEE

Differential Equation Editor

GUI

Graphical user interface


Введение


За последние 30 лет в различных странах, занимающих ведущее положение в области морских технологий, было создано свыше 9 тысяч самоходных необитаемых подводных аппаратов (НПА) для решения широкого круга задач. Эти аппараты уже продемонстрировали свою эффективность при проведении различных видов работ.

Одним из видов НПА являются автономные необитаемые подводные аппараты (АНПА). АНПА представляет собой автоматический самоходный носитель исследовательской аппаратуры, способный погружаться в заданный район океана на глубину до 6 км, двигаться по программной траектории, выполнять требуемые работы и по окончанию программы возвращаться на обеспечивающее судно или береговую базу. АНПА работает под водой автономно, без связующего кабеля. Передача команд на борт аппарата и информации обратно осуществляется с помощью гидроакустической системы связи (ГАСС). На борту АНПА имеется бортовая автономная навигационная система (БАНС), измерители параметров среды, фото-видеоаппаратура, обзорные гидролокаторы, геофизическая аппаратура (магнитометр, акустический профилограф, гравиметр). В конструкции аппаратов использована модульная технология, позволяющая легко модернизировать аппарат под конкретную задачу.

АНПА активно применяют для обеспечения экологической безопасности водных объектов. АНПА комплектуются судовые природоохранные комплексы (СПК), обеспечивающие оперативный экологический контроль.

При подготовке к выполнению задания оператор должен ввести программу-задание (миссию) в систему программного управления (СПУ) АНПА. Программа представляет собой набор последовательных команд поворотов АНПА, изменения глубины, включения или выключения приборов и т.д. Для облегчения работы оператора процесс подготовки задания следует автоматизировать.

Перед тем, как загрузить программу на АНПА следует загрузить программу на имитационную модель АНПА. Это целесообразно по двум причинам. Во-первых, возможность обнаружения ошибки в программе, а ошибка может привести к потере АНПА. Во-вторых, поиск наиболее эффективного алгоритма (или его параметров) для реализации конкретной задачи.

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

Целью бакалаврской работы является разработка подсистемы формирования программной траектории АНПА. Для достижения поставленной цели должны быть решены следующие задачи:

−       рассмотреть особенности применения АНПА при обследовании акватории;

−       сформировать требования к подсистеме формирования программной траектории АНПА;

−       выбрать средства реализации имитационного моделирования;

программное обеспечение подводный аппарат

−       разработать отладить программную реализацию математической модели движения АНПА, разработанной в ходе опытно-конструкторских работ (ОКР);

−       разработать и отладить подсистему формирования программной траектории АНПА;

−       проверить отработку элементов подсистемы на контрольной задаче;

−       сформировать предложения по дальнейшему совершенствованию системы.

1. Особенности применения анпа в задачах обследования акватории


1.1 Виды АНПА


Автономные необитаемые подводные аппараты классифицируются по двум признакам: по массе и по форме.

По массе АНПА подразделяются на микро, мини, малые, средние и большие (рисунок 1). К автономным подводным микроаппаратам относятся аппараты массой менее 20 кг. Данная категория составляет 20-25% от общего числа известных проектов АНПА [1]. Большая часть АНПА создается с использованием бионических принципов и носит экспериментальный характер. Типовые технические характеристики этой категории аппаратов: дальность плавания не более 1-2 морских миль, предельная рабочая глубина менее 150 м; скорость хода - 1,5-2 узла. К категории мини-АНПА принадлежат аппараты массой в пределах 20-100 кг (15-20% от общего числа зарубежных проектов АНПА). Диапазон дальности плавания мини-АНПА весьма широк - от 0,5 до 4000 морских миль. Малые АНПА - это АНПА массой 100-500 кг. Средние АНПА обладают массой от 500 до 2000 кг.

По форме корпуса АНПА (по облику конструкции) сформировались следующие типы (рис.2):

−       с классическими гидродинамическими формами (цилиндрической, торпедообразной, каплеобразной, сигарообразной, плоской и комбинированной);

−       планерной формы с системой движения, основанной на изменении собственной (остаточной) плавучести аппарата;

−       с плоской верхней частью корпуса (солнечные АНПА - аппараты с фотоэлектронными преобразователями для подзарядки аккумуляторных батарей);

−       с бионическими формами (плавающего и ползущего типа) или созданные с использованием бионических принципов (например, аппараты с плавниковыми движителями).

Больше всего в мире ежегодно производится малогабаритных (переносных) АНПА торпедообразной формы.



Рисунок 1 - Виды АНПА


Рисунок 2 - Классификация по внешнему облику

 

1.2 Задачи, решаемые АНПА


Автономные необитаемые аппараты решают обширный круг задач, которые со временем пополняется. Вот самые основные из них [2]:

1)      Обзорно-поисковые;

2)      Обследовательские;

)        Научные исследования;

Рассмотрим подробнее различные аспекты решаемых задач при использовании АНПА:

1)      Обзорно-поисковые.

Исторически данное направление имело наибольшее значение в развитии АНПА. Первоначально их суть заключалась в обеспечении эхолокационной и фотографической съемки дна с целью поиска и обнаружения затонувших объектов, а также в различных физических измерениях по характерным маршрутам и профилям. В дальнейшем обзорно-поисковые задачи усложнились благодаря включению в них функций обследовательского характера. Специализация на решении подобных задач привела к появлению отдельного класса обзорно-поисковых и обследовательских аппаратов.

Современные АНПА способны решать следующие обзорно-поисковые задачи:

−       обследование и мониторинг акваторий;

−       получение данных по рельефу дна, химическим и радиационным характеристикам морской среды и грунтов в заданных районах;

−       получение данных геологических, гидрофизических, гидрохимических, радиационных, геофизических и экологических исследований на шельфе в интересах поиска и разработки полезных ископаемых;

−       геодезические исследования дна мирового океана, при строительстве и инспекции подводных сооружений;

−       получение данных по толщине и характеристикам льда;

2)      Обследовательские.

Сейчас происходит интенсивное развитие нефтегазовой индустрии и систем связи через подводные оптоволоконные кабели. Для этого требуется регулярная инспекция коммуникаций, расположенных на средних и больших глубинах в морях и океанах. Использование автономных аппаратов для обследования инженерных объектов носило до недавнего времени экспериментальный характер, причем в процессе полунатурных (как правило, мелководных) испытаний отрабатывались варианты совмещения автономного и дистанционного управления. Наибольшая трудность при обнаружении и обследовании объектов, имеющих большую протяженность (до сотен километров), связана, прежде всего, с необходимостью комплексной обработки информации от различных устройств системы технического зрения (гидролокационных и видеоизображений) и придания системе управления аппарата функций интеллектуального поведения.

АНПА выполняют следующие обследовательские задачи:

−       обеспечение экологической безопасности буровых платформ;

−       обследование трубопроводов, кабелей и других подобных коммуникаций [3];

−       оперативное информационное обеспечение работ по ликвидации аварии;

−       диагностика технического состояния объектов, являющихся причинами (источниками аномалий), при выполнении поисково-обследовательских работ.

3)      Научные исследования [4].

Многие развитые страны уделяют особое внимание экологическим исследованиям и оценке запасов минеральных и биологических ресурсов шельфа. В экологических исследованиях все шире применяются АНПА, оснащенные специальными измерительными устройствами [2]. Технология биологических исследований включает в себя методику проведения измерений и обработки информации, оценку плотности распределения водных животных и водорослей, анализ гидрохимического и гидрофизического состояния воды и картографирование полученных данных.

С помощью АНПА проводят следующие научные исследования:

−       получение данных по скоростям течений и коэффициентам турбулентности обмена на различных глубинах;

−       получение данных по рельефу дна, химическим и радиационным характеристикам морской среды и грунтов в заданных районах;

−       определение границ континентального шельфа. Получение данных для составления карт, содержащих границы континентального шельфа;

−       получение данных для формирования карт районирования Мирового океана с учетом сезонных изменений среды;

−       определение фоновой обстановки морской среды на маршрутах следования и в местах проведения исследовательских и специальных работ;

−       исследование фауны окружающей среды.

Также в перспективе аппараты подобного назначения кроме обычных задач могут решать задачи геомагнитных и гравиметрических измерений, акустического профилирования дна, съемки геологических разломов и наблюдения за процессами вулканической деятельности Практический опыт разработки и использования АНПА в данной области пока еще довольно беден [2].

 

1.3 Оборудование, устанавливаемое на АПНА при решении различных задач


В зависимости от конкретной решаемой задачи комплекс оборудования, установленного на борту АНПА может содержать различные измерители параметров водной среды и приборы для изучения свойств приповерхностных слоев грунта, донных объектов и т.д. Обычно в состав такого комплекса входят информационно-измерительная система (ИИС) и система технического зрения (СТЗ) [5].

Основу ИИС составляют измерители гидрологических параметров, часто называемые CTD-измерителями, которые предназначаются для измерения электропроводности, температуры, давления и широко применяются при изучении и освоении Мирового океана. Геофизические приборы, которые могут входить в состав ИИС, отличаются большим разнообразием, как по физическим принципам, так и по модульному исполнению. К ним относятся, в частности, акустический профилограф течений, устройства электромагнитного поиска, магнитометры, гравиметры, радиометры, накопители и средства обработки информации [6]. Некоторые из указанных устройств разрабатываются в морском исполнении для оснащения буксируемых систем. По техническим характеристикам, главным образом по массам и размерам, они во многих случаях оказываются малопригодными для установки на АНПА. Кроме того, существенными являются сами условия работы этих устройств на борту АНПА. В частности, это относится к магнитометрам, гравиметрам и электромагнитным устройствам, работа которых зависит от собственных физических полей носителя и его движения вблизи дна. В связи с этим в большинстве случаев возникает необходимость в специальных разработках с учетом конкретных требований проекта и технологических особенностей АНПА.

В состав системы технического зрения АНПА могут входить разнообразные устройства, обеспечивающие обзор и съемку дна в зависимости от характера и цели проводимой работы, а также выработку визуальной информации, необходимой для управления аппаратом. Визуальная информация представляется в виде акустических или видеоизображений и при работе в режиме реального времени используется системой управления. В наиболее полной конфигурации СТЗ представляет собой модульную интегральную систему, объединяющую гидролокаторы бокового, секторного (кругового) обзора, батиметрический гидролокатор, акустический профилограф, фото - и видеосистемы, другие поисковые измерительные устройства. Подавляющая часть данных приборов требует специальной разработки с учетом особенностей АНПА, и лишь в отдельных случаях может быть использована готовая продукция. К перечисленным системам и устройствам следует, очевидно, добавить разнообразнейшее по составу и функциональным свойствам базовое оборудование, обеспечивающее навигацию, управление и связь. Как правило, в составе современных подводных аппаратов используются навигационные комплексы, включающие бортовые автономные (рисунок 3), гидроакустические и спутниковые системы навигации (рисунок 4). Также состав навигационного комплекса входят, кроме того, цифровой кварцевый датчик давления (глубины), доплеровский лаг (рисунок 5), индукционный компас (рисунок 6) и т.д.

Рисунок 3 - Автономная навигационная система

Рисунок 4 - Приёмник GPS

Рисунок 5 - Антенный блок доплеровского лага

Рисунок 6 - Индукционный компас

Так, на автономном аппарате "Hugin" фирмы "C&C" используется инерциальная навигационная система на оптоволоконных гироскопах, которая интегрирована с доплеровским лагом RD Instruments, датчиком глубины, датчиком высоты и акустической системой с ультракороткой базой фирмы "Konsberg Simrad" [7]. Фирма "Maridan" вместе с Датским техническим университетом и "Kearfott Guidance and Navigation Corporation", США, разработала систему "Marpos" для установки на борт AUV [8]. "Marpos" - это комплексированная доплеринерциальная система, ядром которой является высокоточная бесплатформенная инерциальная навигационная система KN5053 с лазерными гироскопами, разработанная компанией "Kearfott". ИНС корректируется данными доплеровского лага, который измеряет скорость аппарата над грунтом или относительно воды, а для поверхностной навигации используется приемник GPS.

Одним из самых совершенных устройств, входящих в состав всех интегральных систем, является доплеровский абсолютный лаг, производимый фирмой "RD Instruments" [9]. Фирма установила свои лаги "Workhorse" на более чем 90% мирового флота AUV.

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

−       определение текущих координат АНПА на его борту;

−       определение и отображение на борту обеспечивающего судна текущего местоположения АНПА в условиях мелкого и глубокого моря;

−       управление ходом миссии с борта судна;

−       безопасное плавание и выполнение миссии вблизи дна и донных препятствий;

−       повышение оперативности и расширение районов работ навигационной системы, за счет отсутствия стационарно установленных средств (маяков);

−       высокоскоростной обмен информацией между АНПА и судном по гидроакустическому каналу связи;

−       приведение аппарата в зону действия гидроакустических средств и обеспечение связи для управления в ближней зоне.

Значительный прогресс в разработках систем энергопитания привел к появлению АНПА с дальностью действия в сотни километров и автономностью в десятки и сотни часов. Применение обычного комплекса гидроакустических систем с длинной и ультракороткой базами при выполнении долговременных миссий становится либо невозможным, либо нерациональным. При таком сценарии работ необходимо использование ИНС на борту аппарата совместно с доплеровским лагом для измерения абсолютной скорости. Коррекция навигации производится по данным GPS с обсервациями на поверхности или на глубине по данным сети опорных маяков, размещенных вдоль трассы движения. Кроме того, АНПА дальнего действия оснащаются средствами приема и, по возможности, излучения низкочастотных акустических сигналов с дальностью распространения не меньше, чем дальность действия аппарата, в качестве средства дальнего приведения к борту обеспечивающего судна.

Проблема докования требует от навигационного комплекса значительно более высокой точности, поддержки супервизорного режима управления средствами двухсторонней связи, идентичности отображения навигационной обстановки на бортах аппарата и обеспечивающего судна, высокой оперативности. Для решения этих задач средства навигации и связи должны быть высокочастотными, их рабочая дальность обычно не превышает сотен метров. Важную роль в составе средств навигационного обеспечения играет ГАСС, использующая каналы связи в режимах командного и информационного высокоскоростного обмена между АНПА и обеспечивающим судном. Так, в информационном канале для контроля работы обзорно-поискового оборудования АНПА (например: телевидение, гидролокатор бокового обзора (ГБО)) скорость передачи должна быть максимальной при умеренных требованиях к вероятности ошибки (-). В командном канале (навигация, телеметрия, телеуправление) скорость может быть снижена в десятки раз с ужесточением требований по допустимой вероятности ошибки (-). Общие подходы в разработке аппаратуры ГАСС основаны в настоящее время на широком использовании современных программно-аппаратных средств: в первую очередь это предварительная обработка передаваемой информации, увеличение информационной емкости сигналов за счёт применения многопозиционной фазово-частотной манипуляции, внедрение элементов помехоустойчивого кодирования, применение сложных помехоустойчивых сигналов.

2. Автоматизация подготовки миссии для АНПА


Автоматизация - одно из направлений научно-технического прогресса, применение саморегулирующих технических средств, экономико-математических методов и систем управления, освобождающих человека от участия в процессах получения, преобразования, передачи и использования энергии, материалов или информации, существенно уменьшающих степень этого участия или трудоёмкость выполняемых операций. Автоматизация требует дополнительного применения датчиков (сенсоров), устройств ввода, управляющих устройств (контроллеров), исполнительных устройств, устройств вывода, использующих электронную технику и методы вычислений, иногда копирующие нервные и мыслительные функции человека. Автоматизация, за исключением простейших случаев, требует комплексного, системного подхода к решению задачи.

 

2.1 Назначение системы автоматизации подготовки миссии для АНПА


Система автоматизации подготовки миссии для АНПА разрабатывается в следующих целях:

−       освободить оператора от выполнения рутинной операции, за счет введения высокоуровневых операций (например, “Двигайся по путевым точкам”);

−       снизить требования для операторов;

−       снизить время подготовки миссии;

−       осуществлять поиск наиболее оптимальных алгоритмов;

−       снижать вероятности ошибки;

−       создавать библиотеки обследования акватории;

−       автоматизировать обзорно-поисковых работ в акваториях.

2.2 Элементы системы автоматизации подготовки миссии для АНПА


Система автоматизации подготовки миссии состоит из двух основных частей (рисунок 6): программа подготовки миссии для АНПА, программа симуляции миссии АНПА. Также имеются программы визуализации, накопления данных и т.д.

Система автоматизации подготовки миссии для АНПА должна позволять пошагово разрабатывать программу-задание и загружать её в СПУ АНПА, подготавливать аппарат к запуску, активно контролировать процесс выполнения, а также копировать данные из бортовых накопителей информации после подъема аппарата.

Рисунок 6 - Структурная схема системы автоматизации

Основной частью системы автоматизации подготовки миссии является программа симуляции миссии (или симулятор). Симулятор миссии - программное средство, предназначенное для отладки составляемой миссии и позволяющее отображать траекторию, построенную по результатам постобработки навигационных данных АНПА, и виртуальную трехмерную картину движения аппарата, полученную в результате моделирования. Также отображаются навигационные точки, графики, характеризующие изменение состояние аппарата, записи бортового журнала и другие данные. Движение аппарата проходит с учётом с учетом его гидродинамических характеристик. Совокупность применяемых в симуляторе средств дает возможность заниматься составлением и анализом программ-заданий в отсутствие АНПА (в режиме off-line).

Миссия строится с использованием загружаемой карты района посредством нанесения на неё графических объектов-примитивов (точка, линия, прямоугольник, полигон). Для каждого объекта указывается используемые бортовые устройства, автоматически или вручную подбираются параметры движения АНПА.

После задания района поиска система автоматизации формирует траекторию для обследования траектории. Для составления траектории применяют алгоритмы покрытия с использованием типовых элементов: меандр, циклоида, зигзаг. Готовая миссия, отредактированная в системе подготовки, проверяется на симуляторе, затем загружается в СПУ АНПА.

 

2.3 Типовые элементы покрытия акватории


Элементы покрытия - это фигуры, по которым движется АНПА в целях обследования акватории. Существует три основных типа фигур: меандр, циклоида и зигзаг

 

2.3.1 Меандр

Районы большой площади обследуются, как правило, при помощи ГБО. Движение АНПА в этом случае задается как последовательность параллельных взаимообратных галсов, напоминающих прямоугольный меандр. Меандр обеспечивает наиболее эффективное покрытие больших территорий, поскольку не содержит повторных покрытий и возвратных движений.

Параметры меандра (соотношение длин сторон) выбираются с учетом параметров ГБО и района обследования. Расстояние между галсами может колебаться от 40 до 400 метров [10]. Оно не может быть меньше диаметра циркуляции аппарата. Меандр (рисунок 7) обладает следующими параметрами: длина рабочего галса (А), длина промежуточного галса (B), ширина фигуры (C). Длина промежуточного гласа и ширина фигуры относятся по формуле (1).

 (1)

где N - количество рабочих галсов.

Длина путина находиться по формуле (2).

 (2)

Площадь фигуры находиться по формуле (3).

 (3)

Меандр обладает одним из наиболее высоких соотношений покрытой площади к пройденному пути .

Рисунок 7 - Фигура типа меандр

 

2.3.2 Циклоида

Траектория движения в форме прямоугольной удлиненной циклоиды используется для поиска точечных объектов, т.е. объектов, размеры которых сопоставимы с размерами АНПА и его радиусом циркуляции. Чаще всего координаты таких объектов выявляются в ходе площадных съемок. Съемки осуществляется, как правило, с использованием фото - или видеокамер, поэтому высота движения АНПА над грунтом относительно небольшая (2-4 м). Программа-задание заключается организации движения аппаратами параллельными галсами, расположенными друг относительно друга не более чем на 2-4 метра для обеспечения перекрытия кадров, при съемке дна. Параметры движения АНПА определяются в зависимости от района обследования и требуемой степенью перекрытия снимков.

К специфике поиска точечных объектов можно отнести то, что размеры объекты, дальность действия поискового устройства, погрешность координировании АНПА и его радиус разворота сопоставимы друг с другом. С учётом этого размеры района поиска точечного объекта обычно задаются гораздо больше его реальных размеров. Характерным размером площади поиска для метрового объекта может считаться квадрат 100*100 метров, который покрывается галсами с шагом 2 м [11]. Основными параметрами циклоиды (рис.8) является длина фигуры (A), ширина галса (B) вперед, шаг смещения (D).

Рисунок 8 - Параметры фигуры типа циклоида

Длина галса назад находится по формуле (4).

 (4)

Длина всей фигуры находится по формуле (5).

 (5)

 

2.3.3 Зигзаг

Когда необходимо произвести поиск и последующую инспекцию подводной коммуникации с использованием бортовых средств обнаружение (ГБО, фотосистемы), применяется зигзагообразная фигура (рис.9). Галсы располагаются под углом к направлению объекта обследования (кабеля или трубопровода), так как это обеспечивает наилучшие условия для работы ГБО. Зигзаг обладает следующими параметрами: длина фигуры (А), длина галса (В), ширина фигуры (С), количество галсов (D). Параметры зигзага зависят от длины коммуникации.

Рисунок 9 - Фигура типа зигзаг

Длина пути находится по формуле (6):

 (6)

Длина всей фигуры находится по формуле (7):

 (7)

3. Разработка подсистемы формирования программной траектории

 

3.1 Формирование требований


Для формирования требований к подсистеме определим, из каких блоков будет состоять искомая подсистема:

−       блок, имитирующий движение движения АНПА;

−       блок управления АНПА по заданной траектории;

−       подпрограммы, генерирующие заданную траекторию в виде массива;

−       подсистема, определяющая отклонение полученной траектории от заданной (далее: блок отклонения);

−       программный интерфейс к подсистеме.

Заданная траектория должна представлять массив точек, состоящий из последовательности координат, в которых траектория меняет направление. Координаты точек задаются в стартовой системе координат - декартовой системе координат с центром в точке старта аппарата (обозначим ). Программы, генерирующие массивы координат должны реализовывать все типовые элементы покрытия с входными параметрами. Параметры могут задаваться любыми положительными числами. Элементы покрытия типа меандр должен иметь ограничение на расстояние между галсами: данное расстояние не должны быть меньше диаметра циркуляции АНПА.

Блок управления АНПА по заданной траектории должен формировать управляющий сигнал, передаваемые на рули аппарата. Сигнал вырабатывается в зависимости от текущего местоположения АНПА и задаваемой траектории. Задаваемая траектория должна интерпретироваться только как массив точек, а не как определенная траектория. Блок управления может содержать параметры, которые оператор мог бы варьировать в целях оптимизации управления движением аппарата.

Уравнения движения АНПА должны учитывать силы, действующие на аппарат. В качестве входных параметров должны быть углы перекладки четырех рулей: левый и правый горизонтальные, верхний и нижний вертикальные. В качестве выходных параметров должны быть скорость, угол рыскания и дифферента, координаты положения АНПА в неподвижной системе координат.

При моделировании АНПА принимаются следующие допущения:

−       движение АНПА происходит в неподвижной жидкости, в отсутствии стратификации по плотности;

−       навигационная система является идеальной (точно и без задержек определяет текущие координаты);

−       рули являются идеальными (отрабатывают управляющий сигнал мгновенно и без погрешностей отработки);

−       отсутствуют внутренние возмущающие воздействия АНПА;

−       плавучесть АНПА равна нулю.

Выработка заданной траектории и движение аппарата должны начинаться из-за точки, принятой за начало системы координат.

Разрабатываемая система должна имитировать движение АНПА в трехмерном пространстве. При этом формирования программной траектории должно осуществляться в горизонтальной плоскости. В вертикальной плоскости должно осуществляться поддержание АНПА на заданной глубине.

При выводе результатов моделирования должны выводиться заданная и полученная траектории.

 

3.2 Математические модели


Замещение одного объекта другим с целью получения информации о важнейших свойствах объекта-оригинала с помощью объекта-модели называется моделированием [12]. Математическая модель - это математическое представление объекта исследования. Математические модели описываются с помощью уравнений и систем уравнений. В ходе разработки математических моделей является имитационная модель. Имитационное моделирование - это метод исследования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему и с ней проводятся эксперименты с целью получения информации об этой системе. Имитационное моделирование - это частный случай математического моделирования.

 

3.2.1 Математическая модель движения АНПА в пространстве

Для построения динамической модели АНПА как тела, движущегося в неподвижной жидкости, используются законы гидромеханики, выраженные в виде уравнений для действующих сил и моментов. При составлении уравнений движения исходят обычно из общепринятых предположений об идеальности жидкости, совпадении главных осей инерции аппарата с его осями симметрии, о малости приращений угловых кинематических параметров и т.п. Все эти допущения справедливы для существующих типов АНПА [13]. Даже при принятии ряда упрощении модель движения АНПА имеет весьма сложный характер и рассчитывается исключительно с помощью компьютерных систем.

В ходе ОКР разработана математическая модель движения АНПА [14]. Уравнения, описывающие математическую модель АНПА, описываются в двух системах координат: система координат ; связанная система координат - декартова система координат, связанная с геометрическим центром подводного аппарата (обозначим ). Соотношения (8) - (13) описывают уравнения изменения производных скорости движения и угловых скоростей. Формулы (14) - (16) описывают связь углов и угловых скоростей. Формулы (17-19) связывают скорость и углы АНПА и его координаты в системе координат .

 (8)

 (9)

 (10)

 (11)

 (12)

 (13)

 (14)

 (15)

 (16)

 (17)

 (18)

 (19)

Уравнения (8-19) имеют 14 неизвестных:

1.       V - скорость аппарата;

2.       - угол атаки, рад.;

.        - угол скольжения, рад.;

.        j - угол крена, рад.;

.        - угол рыскания, рад.;

.        - угол дифферента, рад.;

7.       -проекция угловой скорости на ось OX,рад/с;

.        -проекция угловой скорости на ось OY,рад/с;

.        -проекция угловой скорости на ось OZ,рад/с;

10.     -координата X, м;

.        - координата Y, м;

.        - координата Z, м;

Также имеются четыре параметра  - значения рулей, рад.

В уравнениях использованы общепринятые в гидродинамике обозначения:

1.       T - тяга, Нт;

2.       М - масса объекта управления, кг;

3.       G - сила веса АНПА, Нт;

.        р - отрицательная плавучесть АНПА, Нт;

5.       L - длина ОУ, м,

.        V - текущая скорость ОУ, м/с;

7.       S - площадь поперечного сечения ОУ, м2;

8.       r - плотность воды, кг/м3;

9.       Сi, mij, - безразмерные гидродинамические коэффициенты,

10.     lij, - присоединённые массы, кг;

.        kij - безразмерные коэффициенты присоединённых масс соответственно,

.        хс, ус - координаты центра масс относительно в ДСК2, м.

В итоге из уравнений (8-19), получилась система дифференциальных уравнений первого порядка, состоящая из 6 дифференциальных уравнений и 6 уравнений связи. Эта система определяется относительно функций . Количество неизвестных равно количеству уравнений. Дополнительно из уравнений связи (13-19) можно найти функции .

При решении дифференциальных уравнений зададим начальные условия:

 

3.2.2 Математическая модель блока управления АНПА

Управление АНПА в пространстве осуществляется с помощью четырех рулей: двух вертикальных и двух горизонтальных. В зависимости от положения вертикальных рулей АНПА изменяет свой угол рыскания и скольжения. От них зависит, в какую сторону движется аппарат. От положения горизонтальных рулей зависит угол атаки и дифферента, а также глубина, на которой находится аппарат. От разницы в углах перекладки вертикальных и горизонтальных рулей зависит угол крена АНПА. Но при принятых допущениях угол крена из действия внутренних сил и моментов не возникает. Поэтому, при разработке блока управления, учитывать угол крена не будем.

Блок управления аппаратом будет состоять из двух частей: блока управления по глубине и блок управления в горизонтальной плоскости.

 

3.1.2.1 Управление АНПА по глубине

Управление АНПА в горизонтальной плоскости можно представить в виде структурной схемы, представленной на рисунке 14.

Рисунок 10 - Структурная схема управления по глубине

Входным сигналом (G) является требуемая глубина. Выходным сигналом (Y) является текущая глубина. Ошибкой (X) является разница между требуемой глубиной и текущей глубиной. Регулятор требуется для того, чтобы обеспечить устойчивое движение аппарата в вертикальной плоскости (по глубине). В качестве регулятора будем использовать пропорционально-дифференциальное динамическое звено, так как оно обеспечивает устойчивость [15]:

; (20)

Где  - сигнал, подаваемый на рули. X - разница между требуемым и текущим значениям глубины.  и  - коэффициенты динамического звена.

 

3.1.2.2 Управление в горизонтальной плоскости)

Для управления аппаратом в горизонтальной плоскости в качестве входных данных берется массив путевых точек. Путевые точки - это точки, в которых заданная траектория меняет свое направление. Каждая точка характеризуется двумя координатами в горизонтальной плоскости. Целью управления в горизонтальной плоскости является прохождение АНПА через все путевые точки, то есть блок управления должен направлять аппарат на текущую путевую точку, и когда аппарат в ней оказывается (или около неё), то текущей точкой назначается следующая точка из массива путевых точек.

На рисунке 11 обозначены угол рыскания, пеленга и курсовой угол. Угол пеленга находится по формуле:

 (21)

где  - разницы между текущими координатами АНПА и координатами текущей путевой точки.

В качестве управляющего сигнала на вертикальные руки подается курсовой угол. Курсовой угол является разницей между углов пеленга и углов рыскания АНПА:

, (23)

где -угол рыскания, q - курсовой угол.

Рисунок 11 - Ориентация АНПА в горизонтальной плоскости

Следует заметить, что угол рыскания может быть значительно больше, чем  (из-за большого количества поворотов в одну сторону при отработке заданной траектории), А курсовой угол может превысить .

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

, (24)

где round-функция округления полученного значения

А курсовой угол:

, (25)

где div - целочисленное деление

При наведении АНПА на точку аппарат вряд ли пройдет точно по точке. Для этого в случае, когда расстояние между АНПА и текущей точкой было бы меньше заданного, в качестве текущей точки бралась следующая точка из массива.

 

3.2.3 Математическая модель блока отклонения

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

Блок отклонения должен на каждом шаге моделирования рассчитывать расстояние между точкой, в которой находится АНПА в текущий момент времени, и ближайшей точкой, принадлежащей программной траектории. Программная траектория состоит из прямых отрезков, на концах которых находятся путевые точки. Очевидно, что ближайшая точка, принадлежащей программной траектории, находится на перпендикуляре, опущенном на прямую из точки, в которой в текущий момент находится аппарат (рисунок 12).

Рисунок 12 - отклонение траекторий

По формулам (26) и (28) находится коэффициент наклона прямой и свободный член, принадлежащей программной траектории.

; (26)

По формулам (27) и (28) находится коэффициент наклона прямой и свободный член, перпендикулярной вышеописанной прямой.

; (27)

; (28)

; (29)

Формулы (30) и (31) находится точка пересечения двух прямых. Она является точкой ближайшей к местоположению аппарата и принадлежащей программной траектории.

; (30)

; (31)

По формуле (32) находится расстояние между ближайшей к аппарату точкой и местоположением аппарата, то есть отклонений между полученной и программой траекторий.

; (32)

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

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

 

3.3 Выбор средства реализации


Для реализации разрабатываемой системы на языках высокого уровня: Pascal, C, C++, Java или Фортран требуется много времени, средств и высококвалифицированных специалистов в области программирования и математики. Основной частью реализации системы в такой постановке был бы метод моделирования и его параметры, а реализация самой системы была бы второстепенной частью. При этом любое существенное изменение системы привело бы к тому, что создание системы начиналось бы практически с нуля.

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

−       должно поддерживать популярные языки программирования C, Fortran;

−       являться визуально-ориентированной средой разработки;

−       должно содержать большое количество библиотек, в том числе решение дифференциальных уравнений;

−       должно иметь полную документацию.

Существует всего несколько сред разработки, которые удовлетворяют вышеописанным требованиям:

.        Программное обеспечение (ПО) Matlab (Matrix Laboratory) разрабатывалось как диалоговая среда для матричных вычислений [16]. Операционная среда позволяет формулировать проблемы и получать решения в математической форме, не прибегая к рутинному программированию. Пакет оснащен хорошей графической системой и усилен различными пакетами расширений (Toolboxes) для эффективной работы со специальными классами задач. Среди пакетов расширений можно выделить библиотеки для обработки сигналов: Communicational и Signal Processing Toolboxes. Особое место занимает SIMULINK - пакет Matlab для моделирования и анализа динамических систем. О нем подробно написано ниже.

2.       Программное обеспечение Maple воплощает современные технологии, такие как символьные вычисления, бесконечная точность чисел, подключаемость к Интернету и мощный язык для решения широкого спектра математических задач, возникающих в моделировании и имитации [17]. Благодаря представлению формул в полиграфическом формате, великолепной двух - и трехмерной графике и анимации Maple является одновременно мощным научным графическим редактором. Maple позволяет выполнять как численные, так и аналитические расчеты в интерактивном режиме, с возможностью редактирования, как текста, так и команд на рабочем листе. Maple может быть использован для создания специализированных калькуляторов, интерфейсов к пакетам, написанным в среде Maple, создания запросов и сообщений. С помощью Maple пользователи могут оформить приложение к Maple окнами прокрутки, кнопками, текстовыми окнами, нисходящими меню и другими элементами графического пользовательского интерфейса. Достигнутое способствует развитию многих ключевых технических областей, таких как обработка сигналов и изображений, динамическое и математическое моделирование [17].

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

.        Mathematica - программное обеспечение, основанное на технологии интерактивного документа. При использовании этой технологии все вводимые и получаемые данные, в том числе графические, отображаются в одном документе и при изменении какого-либо параметра в начале документа элементы документа, зависящие от этого параметра, тут же изменяются. Набор математических функций в этом инструменте один из самых обширных и эффективных среди рассматриваемых программ. Существенно расширяют возможности программы Mathematica библиотеки: Signals and Systems, Electrical Engineering Examples. С использованием этих расширений можно достаточно эффективно решать задачи, содержащие линейные преобразования, стандартные представления сигналов, визуализацию. Использование дополнительных пакетов поможет произвести алгебраические преобразования над сигналами и системами, улучшить, разработать и внедрить новые алгоритмы.

Для разработки подсистемы формирования программной траектории наиболее подходит программное обеспечение MatLab и его пакет Simulink.

 

3.3.1 Операционная среда Simulink

В состав системы MATLAB входит пакет моделирования динамических систем - Simulink. Этот пакет является одним из лучших пакетов моделирования блочно - заданных динамических систем [18].

Пакет Simulink является ядром интерактивного программного комплекса, предназначенного для математического моделирования линейных и нелинейных динамических систем и устройств, представленных своей функциональной блок-схемой, именуемой S-моделью, или просто моделью. При этом возможны различные варианты моделирования: во временной области, в частотной области, с событийном управлением, на основе спектральных преобразований Фурье, с использованием метода Монте-Карло (реакция на воздействия случайного характера) и т.д.

Для построения функциональной блок-схемы моделируемых устройств Simulink имеет обширную библиотеку и удобный редактор блок-схем. Он основан на графическом интерфейсе пользователя и по существу является типичным средством визуально-ориентированного программирования. Используя палитры компонентов (наборы), пользователь с помощью мыши переносит нужные блоки с палитр в рабочее окно пакета Simulink и соединяет линиями входы и выходы блоков. Таким образом, создается блок-схема системы или устройства, то есть модель.

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

Средства визуализации результатов моделирования в пакете Simulink очень наглядны. Более того, Simulink практически мгновенно меняет математическое описание модели по мере ввода её новых блоков, даже в том случае, когда этот процесс сопровождается сменой порядка системы уравнений и ведет к существенному качественному изменения поведению системы. Впрочем, это является одной из главных целей пакета Simulink.

Ценность Simulink заключается и в обширной, открытой для изучения и модификации библиотеке компонентов (блоков). Она включает источники сигналов с практически любыми временными зависимостями, масштабирующие, линейные и нелинейные преобразователи с разнообразными формами передаточных характеристик, квантующее устройство, интегрирующие и дифференцирующие блоки и т.д.

В библиотеке имеется целый набор виртуальных регистрирующих устройств - от простых измерителей типа вольтметра или амперметра до универсальных осциллографов, позволяющих просматривать временных характеристики зависимости выходных параметров моделируемых систем - например, токов и напряжений, перемещений, давлений и т.п. Имеется графопостроитель для создания фигур в полярной системе координат, например фигур Лиссажу и фазовых портретов колебаний. В дополнительных библиотеках есть имитаторы приборов, как анализатор спектра сложных графиков.

Средства графической анимации Simulink позволяет строить виртуальные физические лаборатории с наглядным преставлением результатов моделирования. Возможности Simulink охватывает задачи математического моделирования сложных динамических систем в физике, электро - и радиотехнике, в биологии и химии, то есть во всех областях науки и техники. Этим объясняется популярность данного пакета как в университетах и институтах, так и в научных лабораториях.

Важным достоинством пакета является возможность задания в блоках произвольных математических выражений, что позволяется решать типовые задачи, пользуясь примерами пакета Simulink или же просто задавая новые выражения, описывающие работу моделируемых пользователем систем и устройств. Важным свойством пакета является и возможность задания системных функций (S-функций) с включением их в состав библиотек Simulink. Необходимо отметить также возможность моделирования устройств и систем в реальном масштабе времени.

Как программное средство Simulink - типичный представитель визуально-ориентированного языка программирования. На всех этапах работы, особенно при подготовке моделей систем, пользователь практически не имеет, деля с обычным программированием. Программа автоматически генерируется в процессе ввода выбранных блоков компонентов, их соединений и задания параметров компонентов.

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

 

3.4 Реализация

 

3.4.1 Реализация модели движения АНПА

В среде Simulink существует два основных способа решения системы дифференциальных уравнений: через редактор дифференциальных уравнений (DEE), “вручную”.

Система Simulinkе имеет в своем составе специальный блок для решения дифференциальных уравнений-DEE (рисунок 13) [19]. С помощью этого блока можно задавать системы обыкновенных дифференциальных уравнений в форме Коши и выполнять их моделирование.

Рисунок 13 - Блок DEE

При настройке (рисунок14) данного блока разработчик должен указать количество входных переменных, задать правые части системы дифференциальных уравнений, начальные условия и уравнения выхода [19].

Рисунок 14 - Окно настройки блока DEE

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

При реализации математической модели движения АНПА будем использовать второй способ, так как коэффициенты системы уравнений являются “непростыми" математическим формулами. Данный способ позволяет разбить на группы блоки подсистемы, которые рассчитывают коэффициенты.

Входными параметрами в подсистему движения АНПА (рисунок 15) являются значения углов перекладки рулей (правого и левого горизонтальных и нижнего и верхнего вертикальных). Выходными параметрами являются скорость движения АНПА, угол крена (KREN), угол рыскания (RYS), угол дифферента (DIFF) и координаты аппарата в стартовой системе координат ().


Подсистема движения АНПА состоит из 2 подсистем: подсистемы расчета коэффициентов (Coef) и подсистемы решения системы уравнений (Lin_System) (рисунок 16).

Рисунок 16 - Подсистемы расчета коэффициентов и решения системы уравнений

Подсистема расчета коэффициентов (рисунок 17) вычисляет коэффициенты системы дифференциальных линейных уравнений. Каждый коэффициент задается с помощью блока Fcn в соответствие с уравнениями (8) - (13). Формулы, записанные в блоки Fcn, представлены в таблицах 1 и 2. Расчет гидродинамических коэффициентов вынесен в отдельную подсистему.

Рисунок 17 - Подсистема расчета коэффициентов

Таблица 1 - Коэффициенты () левой части системы уравнения

i\j

1

2

3

1



2



3

0



4

0



5

0



6



-

4

5

6

1

0

0

2

0

0

3




4

00



5

0

0


6

0

0


Таблица 2 - Коэффициенты () левой части системы уравнения

i

Коэффициенты

1

2

3

4

5

6


В подсистеме решения системы уравнений (рисунок 18) с помощью блоков Matrix Concatenate и ReShape 36 коэффициентов левой части системы уравнений преобразуются в матрицу 6*6. Блок LU Solver решает систему линейных уравнений [18], задаваемых квадратной матрицей A (коэффициенты левой части системы уравнений) и вектором B (коэффициенты правой части уравнений).

Подсистема Convert (рисунок 19) реализует уравнения связи (13) - (19) и интегрирует полученные производные координат.

В блока Fcn подсистемы Convert записаны следующие формулы:

−       в блоке “dX/dt” - u [1] * (u [3] *u [5] *u [7] *u [9] +u [2] *u [5] *u [8] *u [7] - u [4] *u [6] *u [9]);

−       в блоке “dY/dt” - u [1] * (u [2] *u [5] *u [9] - u [3] *u [5] *u [8]);

в блоке “dZ/dt” - u [1] * (u [3] *u [5] *u [9] *u [6] +u [2] *u [5] *u [8] *u [6] - u [4] *u [7]).

Рисунок 18 - Подсистема решения системы уравнений

Рисунок 19 - Подсистема Convert

3.4.2 Реализация блока управления АНПА

Блок управления АНПА (рисунок 20) в качестве входных переменных координаты X,Y,Z аппарата (в земной системе координат) и угол рыскания (rys). Выходными сигналами являются управляющие сигналы, подаваемые на входы подсистемы AUV, а также текущее отклонение от программной траектории.

Рисунок 20 - Блок управления АНПА

В блоках “Lookup Table" с именами “X_Tr" и “Z_tr" хранится массив путевых точек (в блоке X_Tr по координате X, в Z_Tr по координате Z). В качестве метода экстраполирования интерполирования должно быть указано “Use Input Above”.

Блок “Mux” мультиплексирует сигналы и  для блока Fcn с именем “Hypot”, чтобы последний c помощью стандартной функции hypot рассчитал расстояние между текущей путевой точкой и координатами АНПА.

Блок, “Constant_R" задает сигнал, равный значению переменной a.

Блок “Relation Operation" сравнивает расстояние между текущей путевой точкой и координатами АНПА, и значение a. Когда расстояние становится меньше значения переменной a, то выходной сигнал с блок изменяется с “0” на “1”. На изменение уровня сигнала срабатывает блок “Triggered SubSystem" (рисунок 21), играющий роль счетчика (считает срабатывания). Блок Triggered SubSystem настроен на срабатывание “по переднему фронту”. Для правильной работы подсистемы нужен блок “Memory”.

Блоки “Dead Zone”и “Stop" останавливают моделирования, когда номер текущей путевой точки станет больше, чем количество всех путевых точек.

Рисунок 21 - Счетчик

Блок “Trigonometric Function ” реализует формулу (21). В качестве параметра указана функция atan [20]. После блока распложен сумматор, реализующий формулу (23).

Блок управления также содержит подсистему “D_traectory”, реализующий блок отклонений.

Подсистема “Limit-pi ” (рисунок 22) реализует формулы (24) и (25).

Рисунок 22 - Блок ограничения выходного сигнала

Схема управления аппарата по глубине (обозначена Depth) представлена на рисунке 23. Блок реализует формулу (20). Коэффициенты a=0.004 и b=0.07 подобраны в ходе ОКР.

Рисунок 23 - Регулятор управления горизонтальными рулями

На рисунке 24 представлено изменение глубины во времени (на 300 секунде требуемая глубина изменилась со значения 100 метров до значения 200 метров, а на 600 секунде обратно: со значения 200 метров до значения 100 метров).

Рисунок 24 - Изменение глубины

 

3.4.3 Реализация блока отклонений

Реализация блок отклонений представлена на рисунке 25. Блоки “Fcn” c именами “Delta” и “Delta_Old” рассчитывают расстояние между точкой, в которой находится аппарат и отрезками, входящие в состав программной траектории (“Delta”-текущий “Delta_old”-предыдущий). В качестве функции указана функция Delta. Исходный код находиться в приложении Б. Блоки “Fcn” с именем “Min” выбирает минимальное значение между выходными значением блоков “Delta” и “Delta_Old”. Для расчета отклонения нужны координаты предыдущих путевых точек. Их координаты запоминает подсистема “Old” (рисунок 26)

Выходным значением рассматриваемого блока является отклонение от программной траектории в текущий момент модельного времени.

Система содержит 3 мультиплексера с целью, соединения в сигналов в вектор.

Рисунок 25 - Блок отклонений

Рисунок 26 - Подсистема “Old”

Подробное описание использованных блоков находится в приложении А.

 

3.4.4 Реализация подпрограмм, генерирующих заданную траекторию

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

В приложении Б представлен исходный код подпрограмм формирования типовых элементов покрытия. В качестве параметров указываются параметры типовых элементов покрытия. Подпрограммы генерируют массив путевых точек. Начало траектории в начале координат.

3.4.5 Настройки среды Simulink

Настройки моделирования располагаются в пункте меню Simulation>Configuration Parameters. Основные настойки приведены в таблице 3.

Таблица 3 - Основные настройки модели

Вид настройки

Значение

Start time

0.0

Stop time

6000

Solver type

Variable-step

Solver

Ode45

Relative tolerance

1e-3

Max step time

auto

Min step time

auto

Simulation mode

Normal

 

3.4.6 Реализация интерфейса

Приложения Matlab с графическим интерфейсом являются графическими окнами, содержащие элементы управления, такие как кнопки, списки, переключатели, флаги, полосы скроллинга, области ввода, меню и др. Создание интерфейса, включает следующие основные этапы:

−       расположение элементов интерфейса в диалоговом окне;

−       программирования событий.

Конечным результатом является ПО с графическим интерфейсом пользователя (GUI). ПО хранится в нескольких файлах. ПО запускается из командной строки Matlab.

Для создания ПО с GUI в среде Matlab существует визуальная среда Guide. Поле для создания представлено на рисунке 27.

Рисунок 27 - Guide

Вид разработанного интерфейса к разрабатываемой подсистеме представлен на рисунке 28.

Рисунок 28 - Интерфейс к подсистеме

Интерфейс к подсистеме имеет графического поля, служащее для вывода заданной и полученной траектории. Заданная траектория отображается красным цветом, полученная - синим. Справа расположены 4 кнопки: “Зигзаг”, “Циклоида”, “Меандр”, “Очистить”. Первые три запускают моделирование движения АПНА по соответствующему элементу покрытия с параметрами, устанавливаемыми ниже соответствующие кнопки. Кнопка “Очистить" создана для того, чтобы стирать с графического поля все изображенные траектории. Имеется также область ввода текста, где пользователь может указать радиус окрестность точки (параметр “a” на рисунке 20). После моделирования в соответствующих областях вывода текста отображается среднее и максимальное отклонение полученной траектории от заданной. Исходные код, реализующий графический интерфейс представлен в приложении Б.

При разработке графического интерфейса необходима разработка подпрограммы, связывающие интерфейс и модель в среде Simulink. Данная подпрограмма должна объявлять необходимые глобальные переменные, а также командно запускать модель и получать необходимые результаты. Исходные код подпрограммы связи находится в приложении Б.

4. Исследование работы подсистемы формирования программной траектории


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

Существуют две технологии отладки:

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

вывод текущего состояния программы с помощью расположенных в отдельных точках программы операторов вывода - на экран, принтер, громкоговоритель или в файл. Вывод отладочных сведений в файл называется журналированием.

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

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

Такой процесс формальной проверки или верификации может доказать, что дефекты отсутствуют, с точки зрения используемого метода. (То есть, нет никакой возможности точно установить или гарантировать отсутствие дефектов в программном продукте с учётом человеческого фактора, присутствующего на всех этапах жизненного цикла ПО).

Существует множество подходов к решению задачи тестирования и верификации ПО, но эффективное тестирование сложных программных продуктов - это процесс творческий, не сводящийся к следованию строгим и чётким процедурам или созданию таковых.

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

С точки зрения ISO 9126 [21], Качество (программных средств) можно определить как совокупную характеристику исследуемого ПО, с учётом следующих составляющих:

−       надёжность;

−       сопровождаемость;

−       практичность;

−       эффективность;

−       мобильность;

−       функциональность.

 

4.1 Отладка работы подсистемы на контрольной задаче


Отладка подсистемы формирования программной траектории автономного необитаемого подводного аппарата проводилась на трех контрольных задачах:

.        Меандр с длиной рабочего галса A=600м, шириной С=2500м и шириной промежуточного гасла B=110 м. Результаты моделирования представлены на рисунке 29.

2.       Циклоида с длиной фигуры A=100 м, шагом смещения D=5м и шириной галса B=80м. Результаты моделирования представлены на рисунке 30.

3.       Зигзаг с длиной A=1500м и шириной С=150м. Результаты моделирования представлены на рисунке 31.

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

Рисунок 29 - выполнение фигуры меандр

Среднее отклонение от программной траектории составило 3, 42 м, максимальное 11,63 метра.

Рисунок 30 - Выполнение фигуры циклоида

Среднее отклонение от программной траектории составило 5, 29 м, максимальное 11,63 метра.

Рисунок.31 - Выполнение фигуры зигзаг

Среднее отклонение от программной траектории составило 12, 63 м, максимальное 21,77 метра.

Траектория движения АНПА проходит в окрестности заданной траектории при задании различных элементов покрытия.

Заданные и полученные траектории расходятся не значительно (относительно размеров зон покрытия). Максимальная разница между траекториями (20 м) получилась у зигзага.

В общем случае максимальная разница между заданной и полученной траекторией не превышает диаметра циркуляции аппарата. Это возможно, если в какой-то путевой точке траектория меняет направления на . При выполнении типовых элементов покрытия, максимальная разница не превышает радиуса циркуляции.

4.2 Отладка взаимодействия с сопрягаемыми элементами


Разрабатываемая подсистема формирования программной траектории сопрягается со следующими подсистемами:

−       Визуализатор (ы);

−       Накопитель данных;

−       Бортовой журнал.

Сложность взаимодействия заключается в том, что сопрягаемые подсистемы располагаются на других ПЭВМ. Для передачи данных используются специальные блоки среды Simulink [22]: UDP Send, UDP Receive (рисунок 32), TCP/IP Send, TCP/IP Receive;

Рисунок 32 - Блоки UDP Receive и UDP Send

Для передачи данных использованы блоки UDP Send, UDP Receive. Данные блоки используют протокол транспортного уровня UDP. Главное преимущество данного протокола перед протоколом TCP заключается в большей скорости передачи данных, но UDP не гарантирует доставку данных [16].

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

От разрабатываемой подсистемы к подсистеме визуализации передаются координаты АНПА и параметры углового движения (т.е. угол крена, дифферента, атаки и скольжения) в текущий момент времени. К подсистемам накопителя данных и бортового журнала передаются значения углов перекладки рулей, координаты АНПА и параметры углового движения. Также подсистемы накопления данных в начале моделирования передается заданная траектория в виде массива путевых точек.

 

4.3 Предложения по дальнейшему совершенствованию


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

В дальнейшем планируется вводить следующие модификации:

−       Ввод модели водной среды (течения, распределения температур, солености и. т.д.);

−       Ввод модели, имитирующей БАНС;

−       Разработка модели поведения рулей аппарата;

−       Более сложное управление АНПА по глубине;

−       Ввод более универсальных и сложных законов управления;

−       Ввод системы управления расходом ресурсов АНПА;

−       Ввод интеллектуального управления АНПА;

−       Ввод в систему оборудования, устанавливаемого на АНПА.

Предложения по совершенствованию разработанной системы направлены на повышение адекватности разрабатываемой системы автоматизации и на совершенствование системы управления для более рационального использования ресурсов АНПА при выполнении программы-миссии.

Заключение


В данной бакалаврской работе проведен обзор существующих классов АНПА и задач автономных необитаемых аппаратов, сформированы требования к подсистеме формирования программной траектории АНПА, выбрано средство реализации (Matlab-Simulink) имитационного моделирования, разработано программное обеспечение, реализующее подсистему, с применением современных технологий и средств разработки. Реализована динамика движения АНПА. Подсистема отлажена и протестирована (получены результаты с отработки контрольных задач). Также отлажено взаимодействие с сопрягаемыми подсистемами (визуализатор и накопитель данных).

Разработанная подсистема формирования программной траектории, входящая в систему автоматизации подготовки миссии для автономного необитаемого подводного аппарата, позволяет обеспечить моделирование процесса движения АНПА.

Данная подсистема позволяет искать наиболее эффективные траектории для движения АНПА, подготавливать операторов для работы с СПУ АНПА. Использование подсистемы приводит к значительному снижению затрат, по сравнению при реальных испытаниях АНПА, что экономически оправданно.

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

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

Список использованных источников


1.       Бочаров Л. Необитаемые подводные аппараты: состояние и общие тенденции развития // Микроробототехника - Электроника. Наука, технология, бизнес. - 2009. - №7. - c.62-93.

2.       Агеев М.Д., Киселев Л.В. Есть ли экзотика в морских технологиях // Вестник Российской Академии Наук. - 2005. - том 75. - № 8. - с.727-736

.        Исследование прикладных вопросов обеспечения контроля состояния морской среды Балтийского моря в зоне прокладки СЕГ. - СПб.: ЗАО "АПМП", 2006. - 234 с.

.        Киселев Л.В., Инзарцев А.В., Матвиенко Ю.В. Создание интеллектуальных АНПА и проблемы интеграции научных исследований // Подводные роботы и робототехника. - 2006. - №1. - c.6-17.

.        Агеев М.Д. Касаткин Б.А. Автоматические подводные аппараты - Л.: Судостроение, 1981. - 224 c.

.        Голод О.С., Гончар А.И., Шлычек Л.И. Перспективы и концепции разработки автономных необитаемых подводных аппаратов // Гидроакустический журнал (Проблемы, методы освоения Мирового океана). - 2007. - № 4. - с.85-105.

7.       Сайт фирмы “C&C” URL: <#"517936.files/image132.gif"> 

Константа - задает постоянный по уровню сигнал. Параметры: 1. Constant value - постоянная величина. 2. Interpret vector parameters as 1-D - интерпретировать вектор параметров как одномерный (при установленном флажке).

  

Вход - создает входной порт для подсистемы или модели верхнего уровня иерархии. Параметры: 1. Port number - номер порта. 2. Port dimensions - размерность входного сигнала. Если этот параметр равен - 1, то размерность входного сигнала будет определяться автоматически. 3. Sample time - шаг модельного времени. 4. Data type - тип данных входного сигнала: auto, double, single, int8, uint8, int16, uint16, int32, uint32 или boolean. 5. Signal type - тип входного сигнала: auto - автоматическое определение типа. real - действительный сигнал. complex - комплексный сигнал. 6. Interpolate data (флажок) - интерполировать входной сигнал. В случае, если временные отсчеты входного сигнала считываемого из рабочей области MATLAB не совпадают с модельным временем, то блок будет выполнять интерполяцию входного сигнала. При использовании блока Inport в подсистеме данный параметр не доступен.

 

Задает выражение в стиле языка программирования C. Параметры: Expression - выражение, используемое блоком для вычисления выходного сигнала на основании входного. Это выражение составляется по правилам, принятым для описания функций на языке С

Сумматор - выполняет вычисление суммы текущих значений сигналов. Параметры: 1. Icon shape - форма блока. Выбирается из списка. round - окружность, rectangular - прямоугольник. 2. List of sign - список знаков. В списке можно использовать следующие знаки: + (плюс), - (минус) и | (разделитель знаков). 3. Saturate on integer overflow (флажок) - подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.

Умножитель - выполняет вычисление произведения текущих значений сигналов. Параметры: 1. Number of inputs - количество входов. Может задаваться как число или как список знаков. В списке знаков можно использовать знаки * (умножить) и / (разделить). 2. Multiplication - способ выполнения операции. Может принимать значения (из списка): Element-wise - поэлементный. Matrix - матричный. 3. Saturate on integer overflow (флажок) - подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.

Усилитель - выполняют умножение входного сигнала на постоянный коэффициент. Параметры: 1. Gain - коэффициент усиления. 2. Multiplication - способ выполнения операции. Может принимать значения (из списка): Element-wise K*u - поэлементный. Matrix K*u - матричный. Коэффициент усиления является левосторонним операндом. Matrix u*K - матричный. Коэффициент усиления является правосторонним операндом. 3. Saturate on integer overflow (флажок) - подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.

Тригонометрическая функция - выполняет вычисление тригонометрической функции. Параметры: 1. Function - вид вычисляемой функции (выбирается из списка): sin, cos, tan, asin, acos, atan, atan2, sinh, cosh и tanh. 2. Output signal type - тип выходного сигнала (выбирается из списка): auto - автоматическое определение типа. real - действительный сигнал. complex - комплексный сигнал

Интегратор - выполняет интегрирование входного сигнала. Параметры: External reset - внешний сброс. Тип внешнего управляющего сигнала, обеспечивающего сброс интегратора к начальному состоянию. Выбирается из списка: none - нет (сброс не выполняется), rising - нарастающий сигнал (передний фронт сигнала), falling - спадающий сигнал (задний фронт сигнала), either - нарастающий либо спадающий сигнал, level - не нулевой сигнал (сброс выполняется если сигнал на управляющем входе становится не равным нулю); 2. Initial condition source - источник начального значения выходного сигнала. Выбирается из списка: internal - внутренний external - внешний. В этом случае на изображении блока появляется дополнительный вход, обозначенный x0, на который необходимо подать сигнал задающий начальное значение выходного сигнала интегратора. 3. Initial condition - начальное условие. Установка начального значения выходного сигнала интегратора. Параметр доступен, если выбран внутренний источник начального значения выходного сигнала. 4. Limit output (флажок) - ограничение выходного сигнала.

5. Upper saturation limit - верхний уровень ограничения выходного сигнала. 6. Lower saturation limit - нижний уровень ограничения выходного сигнала. 7. Show saturation port - управляет отображением порта, выводящего сигнал, свидетельствующий о выходе интегратора на ограничение. Выходной сигнал данного порта может принимать следующие значения: 0, если интегратор не находится на ограничении. +1, если выходной сигнал интегратора достиг верхнего ограничивающего предела. 1, если выходной сигнал интегратора достиг нижнего ограничивающего предела. 8. Show state port (флажок) - отобразить/скрыть порт состояния блока. Данный порт используется в том случае, если выходной сигнал интегратора требуется подать в качестве сигнала обратной связи этого же интегратора. На пример, при установке начальных условий через внешний порт или при сбросе интегратора через порт сброса. Выходной сигнал с этого порта может использоваться также для организации взаимодействия с управляемой подсистемой. 9. Absolute tolerance - абсолютная погрешность.

Подсистема - фрагмент Simulink-модели, оформленный в виде отдельного блока

 

Блок одномерной таблицы - задает в табличной форме функцию одной переменной Параметры: Vector of input values - вектор значений входного сигнала. Может быть задан в виде дискретных значений (например, [1 2 7 9]), либо в виде непрерывного диапазона (например, [0: 10]). Элементы вектора или граница диапазона могут быть заданы в виде вычисляемого выражения, например [tan (5) sin (3)]. Vector of output values - вектор выходных значений, соответствующий вектору входных значений.

Решатель системы линейных уравнений

Параметров нет.


Блок объединения сигнала в матрицу

Параметры:of input - количество входных сигналов



. Блок преобразования размерности сигнала - блок изменяет размерность векторного или матричного сигнала.

Параметры:dimensionality - вид размерности выходного сигнала. Выбирается из списка:

-D array - одномерный массив (вектор).vector - вектор-столбец.vector - вектор-строка- матрица или вектор заданной размерности.

Output dimensions - значение размерности выходного сигнала. Параметр доступен, если вид размерности установлен как Customize.



Выход - создает выходной порт для подсистемы или для модели верхнего уровня иерархии. Параметры: 1. Port number - номер порта. 2. Output when disabled - вид сигнала на выходе подсистемы, в случае если подсистема выключена. Используется для управляемых подсистем. Может принимать значения (выбираются из списка): held - выходной сигнал подсистемы равен последнему рассчитанному значению. reset - выходной сигнал подсистемы равен значению задаваемому параметром Initial output. 3. Initial output - значение сигнала на выходе подсистемы до начала ее работы и в случае, если подсистема выключена. управляемых подсистем.

 Мультиплексор - объединяет входные сигналы в вектор

Параметры:of Inputs - количество входов.option - способ отображения. Выбирается из списка:- Вертикальный узкий прямоугольник черного цвета.- Прямоугольник с белым фоном и отображением меток входных сигналов.

none - Прямоугольник с белым фоном без отображения меток входных сигналов.


 Демультиплексор - разделяет входной векторный сигнал на отдельные составляющие.

Параметры:of Outputs - количество выходов.

Bus Selection Mode (флажок) - режим разделения векторных сигналов


 

Память - выполняет задержку входного сигнала на один такт дискретности Параметры: 1. Начальное значение выходного сигнала 2. Флаг - наследовать такт дискретность. Если этот флажок выставлен, то блок использует такт дискретности, такой же, как и в предыдущем блоке 3. Прямой проход при линеаризации.

 

Дифференцирование - выполняет численное дифференцирование входного сигнала. Параметров нет

 

Модуль - выполняет вычисление абсолютного значения величины сигнала. Параметры: Флаг - подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.


Приложение Б


Исходные коды

Подпрограмма формирования меандра

function Points=Meandr (A,C,B);=floor (C/B) +1;= [];i=0: 2: N-2= [B*i 0;*i A;* (i+1) A;* (i+1) 0];= [P; Elem];= [B* (N-1) 0;* (N-1) A];= [P; Elem];=P;

Подпрограмма формирования циклоиды

function Points=Sicloida (A,B,D);=floor (B/D) +1;= [];i=0: 1: N-2= [D*i 0;*i A;+D*i A;+D*i 0];= [P; Elem];=P;

Подпрограмма формирования зигзага

function Points=ZigZag (A,C);=false;=0;=0;= [];N<Anot (Fl)= [0 N];Fl= [C N];=N+C/sqrt (2);=not (Fl);= [P; Elem];

Points=P;

Функция для расчета отклонения от программной траектории Delta

function D=Delta (x_c,z_c,x0,z0,x1,z1)(x0==x1)=abs (x0-x_c);(z0==z1)=abs (z0-z_c);= (z1-z0) / (x1-x0);=-1/k1;=z1-k1*x1;=z_c-k2*x_c;_p= (b2-b1) / (k1-k2);_p=k1*x_p+b1;=hypot (x_p-x_c,z_p-z_c);

Подпрограмма, реализующая интерфейс подсистемы

function varargout = Fig (varargin)_Singleton = 1;_State = struct ('gui_Name', mfilename,.

'gui_Singleton', gui_Singleton,.

'gui_OpeningFcn', @Fig_OpeningFcn,.

'gui_OutputFcn', @Fig_OutputFcn,.

'gui_LayoutFcn', [],.

'gui_Callback', []);nargin && ischar (varargin{1})_State. gui_Callback = str2func (varargin{1});nargout

[varargout{1: nargout}] = gui_mainfcn (gui_State, varargin{: });_mainfcn (gui_State, varargin{: });Fig_OpeningFcn (hObject, eventdata, handles, varargin). output = hObject;(hObject, handles);varargout = Fig_OutputFcn (hObject, eventdata, handles){1} = handles. output;Zigbutton_Callback (hObject, eventdata, handles)=ZigZag (str2num (get (handles. Zig1text,'string')),str2num (get (handles. Zig2text,'string')));=StartM (P,str2num (get (handles. atext,'string')));(K (:,1),K (:,2),'blue',P (:,1),P (:,2),'red')(handles. textDelta,'String',num2str (mean (K (:,3))));;(handles. maxDtext,'String',num2str (max (K (:,3))));Zigbutton_CreateFcn (hObject, eventdata, handles)clearbutton_Callback (hObject, eventdata, handles)clearbutton_CreateFcn (hObject, eventdata, handles)clearbutton_KeyPressFcn (hObject, eventdata, handles)Zigbutton_KeyPressFcn (hObject, eventdata, handles)Sicbutton_Callback (hObject, eventdata, handles)=Sicloida (str2num (get (handles. Sic1text,'string')),str2num (get (handles. Sic2text,'string')),str2num (get (handles. Sic3text,'string')));=StartM (P,str2num (get (handles. atext,'string')));(K (:,1),K (:,2),'blue',P (:,1),P (:,2),'red')(handles. textDelta,'String',num2str (mean (K (:,3))));(handles. maxDtext,'String',num2str (max (K (:,3))));Sicbutton_CreateFcn (hObject, eventdata, handles)Sicbutton_KeyPressFcn (hObject, eventdata, handles)Meandrbutton_Callback (hObject, eventdata, handles)=Meandr (str2num (get (handles. Mnd1text,'string')),str2num (get (handles. Mnd2text,'string')),str2num (get (handles. Mnd3text,'string')));=StartM (P,str2num (get (handles. atext,'string')));(K (:,1),K (:,2),'blue',P (:,1),P (:,2),'red')(handles. textDelta,'String',num2str (mean (K (:,3))));(handles. maxDtext,'String',num2str (max (K (:,3))));Mnd1text_Callback (hObject, eventdata, handles)Mnd1text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Sic2text_Callback (hObject, eventdata, handles)Sic2text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Sic1text_Callback (hObject, eventdata, handles)Sic1text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Zig1text_Callback (hObject, eventdata, handles)Zig1text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Zig2text_Callback (hObject, eventdata, handles)Zig2text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Sic3text_Callback (hObject, eventdata, handles)Sic3text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Mnd2text_Callback (hObject, eventdata, handles)Mnd2text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');Mnd3text_Callback (hObject, eventdata, handles)Mnd3text_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');atext_Callback (hObject, eventdata, handles)atext_CreateFcn (hObject, eventdata, handles)ispc && isequal (get (hObject,'BackgroundColor'), get (0,'defaultUicontrolBackgroundColor'))(hObject,'BackgroundColor','white');pushbutton7_Callback (hObject, eventdata, handles)text10_CreateFcn (hObject, eventdata, handles)pushbutton7_CreateFcn (hObject, eventdata, handles)

Процедура реализующая связь интерфейса и модели StartM

function Koor=StartM (P,R)X_TrZ_Tra=R;_Tr=P (:,1);

Z_Tr=P (:,2);

[t,x,y] =sim ('Main');

Koor=y;

Похожие работы на - Разработка и исследование подсистемы формирования программной траектории автономного необитаемого подводного аппарата

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!