Разработка алгоритма ориентации макета малого космического аппарата по вектору магнитного поля при помощи магнитометра::Журнал СА 05.2019
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

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

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

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

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

 Читать далее...

Разбор полетов  

Ошибок опыт трудный

Как часто мы легко повторяем, что не надо бояться совершать ошибки, мол,

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6195
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 6903
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4188
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 2989
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3795
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3805
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6299
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3152
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3446
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7263
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10628
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12352
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 13982
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9110
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7064
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5375
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4604
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3414
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3145
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3392
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3013
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Разработка алгоритма ориентации макета малого космического аппарата по вектору магнитного поля при помощи магнитометра

Архив номеров / 2019 / Выпуск №05 (198) / Разработка алгоритма ориентации макета малого космического аппарата по вектору магнитного поля при помощи магнитометра

Рубрика: Наука и технологии

Без фото КОСИНОВ А.Н., Национальный исследовательский университет «Высшая школа экономики», Москва, ankosinov@edu.hse.ru

Без фото КРИВОРОТОВА П.А., Национальный исследовательский университет «Высшая школа экономики», Москва, pakrivorotova@edu.hse.ru

Без фото АБРАМЕШИН Д.А., Национальный исследовательский университет «Высшая школа экономики», Москва, dabrameshin@hse.ru

Разработка алгоритма ориентации
макета малого космического аппарата по вектору магнитного поля при помощи магнитометра

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

Введение

Малыми космическими аппаратами (МКА) принято называть небольшие по массе (от нескольких десятков грамм до 1 тонны) и сравнительно небольшие по размеру космические аппараты. Они приобрели большую популярность благодаря малой стоимости разработки, сборки и запуска [1]. Такая доступность делает возможной разработку малых спутников как для специализированных компаний, так и для всех желающих, в том числе для студентов инженерных ВУЗов. Одной из наиболее важных задач при создании МКА являются разработка алгоритмов ориентации и стабилизации спутника. Для их осуществления необходимо использовать качественное оборудование и хорошо откалиброванные датчики.

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

Методики и алгоритмы разработаны в лаборатории функциональной безопасности малых космических аппаратов и систем в МИЭМ НИУ ВШЭ.

Тестирование производилось на макете малого космического аппарата Orbicraft с комплексом имитации космической среды Terra.

Описание оборудования

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

  • магнитометр;
  • датчик угловой скорости (ДУС);
  • солнечные датчики.

Также макет оснащен маховиком, который приводит его в движение вокруг вертикальной оси вращения.

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

Для работы с устройствами, расположенными на макете, используется центральный процессор (ЦП) на базе Raspberry Pi. ЦП и все датчики соединяются последовательно при помощи шлейфов.

Загрузка программы на ЦП производится через веб-интерфейс FTP-сервера в архиве, состоящем из набора сборочных файлов разработанной программы, которые компилируются на Raspberry Pi [2].

Для написания программы и запаковки ее в архив используется приложение Notepad++ с расширением для интерпретации языка программирования С [3].

В качестве одноосного имитатора магнитного поля Земли выступает токовая рамка, представляющая собой замкнутый соленоид (кольцо Гельмгольца). С ее помощью можно создавать магнитный поток заданной пользователями величины. Поток направляется сквозь вертикально установленную рабочую плоскость рамки [4].

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

Разработка метода калибровки магнитометра

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

Калибровка магнитометра производится в условиях с известным вектором магнитного поля, создаваемым специальной токовой рамкой. Далее производится снятие показаний с датчика: магнитометр при этом устанавливается под заданными углами относительно зафиксированного вектора магнитного поля. Всего делается от 100 до 300 измерений: каждое измерение представляет собой три координаты вектора магнитного поля (по осям OxOy и Oz).

На основе полученных показаний, а также параметров заданного вектора магнитного поля составляется математическая модель коррекции измерений [5]. Данная модель представляет собой калибровочную матрицу. Матрица сохраняется и впоследствии используется для реализации алгоритма ориентации МКА. Калибровочная матрица дает возможность устранить производственные погрешности магнитометра, а также неточности в его конструкции. Однако данный метод не помогает устранить погрешности со стороны окружения магнитометра (например, неточности имитации магнитного поля токовой рамкой). Устранение этой проблемы описывается в алгоритме ориентации и стабилизации МКА.

Алгоритм ориентации и стабилизации по магнитному полю и его программная реализация

Программа ориентации МКА должна выполнять следующие функции [6]:

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

Основой алгоритма ориентации по магнитному полю является совмещение целевого вектора магнитного поля с вектором реального поля (см. рис. 1).

Рисунок 1. Проекция вектора магнитного поля на плоскость XY

Рисунок 1. Проекция вектора магнитного поля на плоскость XY

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

if (LSS_OK = magnetometer_request_raw(mag_num, &magx_raw, &magy_raw, &magz_raw))
{
mag_calibrated(magx_raw,magy_raw,magz_raw, &magx_cal, &magy_cal, &magz_cal);
magy_cal = - magy_cal;	
mag_alpha = atan2(magy_cal, magx_cal)/M_PI*180;
mag_alpha = angle_transformation(mag_alpha, alpha_goal);
printf ("magx_cal =%i magy_cal =%i magz_cal =%i", magx_cal, magy_cal, magz_cal);
printf ("mag_alpha atan2=%i ", mag_alpha);
}

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

Новая скорость маховика рассчитывается по формуле 1, где kp и kd – коэффициенты приращения скорости в зависимости от угла отклонения, подобранные экспериментальным путем.

(1)

Ниже приведен код функции, осуществляющей изменение скорости маховика в зависимости от угла отклонения от заданного вектора магнитного поля:

int motor_new_speed_PD(int mtr_speed, int alpha, int16_t alpha_goal, int16_t omega, int16_t omega_goal){
int mtr_new_speed=0;
int kd = -200;
int kp = 100;
mtr_new_speed = mtr_speed + kp*(alpha-alpha_goal) + kd*(omega-omega_goal);
return mtr_new_speed;
}

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

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

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

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

Заключение

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

Разработанный и запрограммированный алгоритм ориентации макета МКА по магнитному полю показывает хорошее качество при работе с макетом. Этот алгоритм используется для решения задач дистанционного зондирования Земли в лаборатории функциональной безопасности космических аппаратов и систем МИЭМ НИУ ВШЭ. С дополнительными преобразованиями алгоритм может быть использован при разработке алгоритма ориентации реального космического аппарата.

  1. Овчинников М. Ю. Малые мира сего / М. Ю. Овчинников // Компьютерра. – 2007. №5. С. 37-43.
  2. Конструктор спутника «ОрбиКрафт» [Электронный ресурс]. – Режим доступа: http://www.orbicraft.sputnix.ru/doku.php?id=start – (Дата обращения 10.01.2019).
  3. Официальный сайт Notepad++ [Электронный ресурс]. – Режим доступа: https://notepad-plus-plus.org/ (Дата обращения 05.01.2019).
  4. Конструктор спутника «ОрбиКрафт» [Электронный ресурс]. – Режим доступа: http://www.orbicraft.sputnix.ru/doku.php?id=terra – Комплекс имитаторов космической среды «Терра». – (Дата обращения 10.01.2019).
  5. Акимов И. О. Методика калибровки магнитометра на этапе наземной диагностики систем космического аппарата / И. О. Акимов, С. Н. Илюхин, Н. А. Ивлев, Г. Е. Колосов // Инженерный журнал: наука и инновации. – 2018. №5. С. 77.
  6. Wertz J., Everett D., Puschell J. Space mission engineering: the new SMAD // Wertz J., Everett D., Puschell J. – Microcosm Press Vol. 28, 2011 – p. 142-147.

Ключевые слова: спутник, магнитометр, алгоритмизация, ориентация, магнитное поле, С++, тестирование, программирование.


Orientation algorithm development of the small space apparatus model on the vector of a magnetic field by means of a magnetometer

Kosinov A.N., National Research University Higher School of Economics, Moscow, ankosinov@edu.hse.ru

Krivorotova P.A., National Research University Higher School of Economics, Moscow, pakrivorotova@edu.hse.ru

Abrameshin D.A., National Research University Higher School of Economics, Moscow, dabrameshin@hse.ru

Abstract: In this paper reviewed an algorithm for stabilizing the model of a small spacecraft Orbicraft using a magnetometer. During the development, methods for calibrating magnetic field sensors were studied, which made it possible to minimize device and data errors. This algorithm is being finalized in order to work with the stand of semi-natural modeling of the functional safety laboratory of spacecraft and systems.

Keywords: satellite, magnetometer, algorithmization, orientation, a magnetic field, C ++, testing, programming.


Комментарии отсутствуют

Добавить комментарий

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

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru