Научная статья на тему 'МОДЕЛИРОВАНИЕ АЛГОРИТМА ИНЕРЦИАЛЬНОЙ НАВИГАЦИИ В MATLAB-SIMULINK'

МОДЕЛИРОВАНИЕ АЛГОРИТМА ИНЕРЦИАЛЬНОЙ НАВИГАЦИИ В MATLAB-SIMULINK Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
150
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММА МИКРОКОНТРОЛЛЕРА / МОДЕЛИРОВАНИЕ АЛГОРИТМА / SIMULINK-БЛОК / SIMULINK- МОДЕЛЬ / ПОГРЕШНОСТИ АЛГОРИТМА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Ледовской М. И.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «МОДЕЛИРОВАНИЕ АЛГОРИТМА ИНЕРЦИАЛЬНОЙ НАВИГАЦИИ В MATLAB-SIMULINK»

РАЗДЕЛ I. ОБЩИЕ ВОПРОСЫ СИНТЕЗА И АНАЛИЗА ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫХ

СИСТЕМ

УДК 681.3:519.6

МОДЕЛИРОВАНИЕ АЛГОРИТМА ИНЕРЦИАЛЬНОЙ НАВИГАЦИИ

В MATLAB-SIMULINK

М.И. Ледовской

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

Ключевые слова: программа микроконтроллера, моделирование алгоритма, Simulink-блок, Simu-link-модель, погрешности алгоритма

Введение

Создание гибридных навигационных систем ГЛОНАСС/БИНС для автотранспортных средств приводит к необходимости моделирования алгоритмов, которые предназначены для реализации в микроконтроллере бесплатформенной инерциальной навигационной системы (БИНС) [1]. Эффективным средством решения данной задачи является система моделирования МА^АВ с пакетом расширения Simulink. В этой системе обеспечивается удобство моделирования входных сигналов БИНС и графического представления результатов.

Однако использование языка МА^АВ-Simulink приводит к тому, что моделирование алгоритма и разработка программы микроконтроллера на языке С выполняются последовательно друг за другом. К тому же исходный алгоритм может со временем уточняться, что требует повторного моделирования в системе МАТЬАВ^тиИпк и последующего отображения вносимых изменений в С-код микроконтроллера. В результате увеличивается общее время разработки БИНС.

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

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

Тестирование алгоритма

Как известно [2], алгоритм инерциальной навигации сводится к задаче Коши для системы обыкновенных дифференциальных уравнений. Первоначально алгоритм программируется на языке С в среде Visual C++, где создается консольное приложение с использованием библиотеки MFC для графического представления результатов работы программы (рисунок1).

Для тестирования алгоритма имитируется круговое движение объекта из точки старта с известными координатами. По завершении каждого круга в момент выхода объекта на долготу точки старта фиксируется ошибка алгоритма. Она определяется путем сопоставления счисляемого значения широты места объекта с широтой точки старта. С целью минимизации вычислительной погрешности в программе реализуется метод численного интегрирования Рун-ге-Кутта 4-го порядка, формат данных -«двойное вещественное», шаг интегрирования - 0,01 сек. В частности, при радиусе круга 50 км и скорости 180 км/час ошибка алгоритма после выполнения первого круга движения объекта в пересчете на меры длины составила 1,6 м.

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

РАЗДЕЛ I. ОБЩИЕ ВОПРОСЫ СИНТЕЗА И АНАЛИЗА ИНФОРМАЦИОННО ИЗМЕРИТЕЛЬНЫХ СИСТЕМ обоснования. Это является причиной рассмотрения следующих целей моделирования.

ритма в системе MATLAB-Simulink: методи-

W Р W

ческой погрешности м и инструментальной

Рисунок 1 - Процесс тестирования алгоритма

Рисунок 2 - Структура Simulink-модели для экспериментального анализа методической и инструментальной погрешностей алгоритма

Обоснование выбора формата данных, метода и шага численного интегрирования для микроконтроллера

Эти цели достигаются путем экспериментального анализа погрешностей алго-

погрешности 8и (рисунок 2). Однако с учетом главной цели вместо стандартных блоков библиотеки Simulink для реализации алгоритма используются Simulink-блоки собственной разработки. Как известно [3], Simulink позволяет создавать блоки, функциональность которых обеспечивается готовым С-кодом. Кроме того, имеется возможность перекомпилировать С-код после внесения изменений. В нашем случае достаточно воспользоваться С-кодом алгоритма, который получен в среде программирования Visual C++.

Разработке подлежат следующие Simulink-блоки, реализующие алгоритм инерциальной навигации на языке С:

Simulink-блок IN_ideal - эталонная модель алгоритма, где используется метод Рунге-Кутта 4-го порядка и формат данных «двойное вещественное», что позволяет

^ 0 р

обеспечить Ьм ~ и и ~ " соответственно;

Simulink-блок ^_соп^оИег - модель алгоритма, реализуемого в микроконтроллере. Здесь используется метод интегрирования низкого порядка точности, например, формула трапеций и формат данных «короткое вещественное», что приводит к по-

~ Р Р

явлению погрешностей м и и соответственно. Блок используется для анализа ин-

~ Р

струментальной погрешности и путем сопоставления результатов с блоком ^^еа1_соп^оПег (см. ниже), а также суммарной вычислительной погрешности

8в - ем + 8и - с блоком

Simulink-блок ^^еа1_соп^оПег -вспомогательная модель алгоритма. В этом блоке используется метод интегрирования такой же, как в блоке ^_соп^оИег, что вызывает погрешность рм, и формат данных «двойное вещественное», обеспечивающий р ~ 0

и ~ . Блок необходим для анализа мето-

~ Р

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

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

¡0

10

ПОЛЗУНОВСКИЙ ВЕСТНИК № 3/1 2011

Рисунок 3 - Структура Simulink-модели для экспериментального анализа трансформированной погрешности алгоритма.

Определение требований к точностным характеристикам инерциальных измерителей БИНС

Данная цель достигается путем экспериментального анализа трансформирован-

е

т, которая вы-инерциальных

ной погрешности алгоритма зывается погрешностями измерителей БИНС. Для этого создается модель погрешностей инерциальных измерителей, а затем Simulink-модель на основе двух Simulink-блоков ^_соп^оПег, результаты которых сопоставляются (рисунок 3).

Simulink-модели, приведенные на рисунке 2 и 3, позволяют контролировать выполнение общего баланса погрешностей

ем + еи + е т — е доп

алгоритма м и т доп, а также соотношения между методической и инструмен-

е„„„

е — е

тальной погрешностями м _ и

где

допустимая погрешность.

На рисунке 4 приведен один из результатов моделирования алгоритма в системе МА^АВ^тШтк для случая, когда объект движется по кругу радиусом 5 км со скоростью 180 км/час в течение 6000 сек. При этом в Simulink-блоке ^_соп^оИег используется формула трапеций, шаг интегрирования - 0,1 сек.

В результате моделирования в Simulink-блоке ^_соп^оПег формируется отлаженный С-код алгоритма, который можно использовать в среде программирования микроконтроллера для получения

исполняемого кода, и тем самым ускорить создание БИНС.

•J Scope1

Рисунок 4 - Методическая и суммарная вычислительная погрешность счисления широты места объекта

СПИСОК ЛИТЕРАТУРЫ

1. Ледовской М.И. Алгоритмы математических операций для воспроизведения вариаций переменных в уравнениях инерциальной навигации автотранспортных средств // Перспективы развития навигационных систем ГЛОНАСС, GPS, Galileo: материалы Международной научно-технической конференции - Донецк, ДонНТУ, 2010. -С.76-80.

2. Успенский В.Б. Решение задачи инерциальной навигации в бесплатформенной инерциальной навигационной системе / В.Б. Успенский, И.А. Багмут // Авиационно-космическая техника и технология. - 2009. - №3 (60). - С. 39-44.

3. Черных И.В. Simulink: Инструмент моделирования динамических систем. -Режим доступа: http://matlab.exponenta.ru/simulink/book1/index .php.

Доцент М.И. Ледовской тел. 8-8634-3280-25, kafmps@ttpark.ru - каф. микропроцессорных систем Технологического института Южного федерального университета в г. Таганроге.

i Надоели баннеры? Вы всегда можете отключить рекламу.