МИКРОПРОЦЕССОРНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ НАНОСПУТНИКОМ
А.С. Давыдов
Радиотехнический факультет СГАУ
443123, Россия, г.Самара, Московское шоссе, 34
E-mail: rfiz@rambler.ru
Целью работы является проектирование одной из подсистем наноспутника- бортового компьютера, главной задачей которого является сбор и передача на Землю информации об околоземном пространстве.
Изготовление и запуск малых и сверхмалых космических аппаратов в последнее десятилетие стало достаточно распространенным явлением благодаря достижениям микроэлектроники, информатики, массовому производству и доступности элементов космических систем. В настоящее время существуют несколько ведущих фирм-производителей, предлагающих как отдельное оборудование для сверхмалых спутников формата “CubeSat”, так и готовые решения для бортовых систем и спутника в целом. Базовая платформа формата CubeSat для сверхмалых спутников в зависимости от типа исполнения предлагается по следующим ценам: при разработке самостоятельно: €50000; интегрированный модуль и программное обеспечение (ПО): €75000, законченное решение модуля: €150000. Кроме того, существует ряд ограничений при продаже оборудования, которые накладывает Госдепартамент США. Покупка готового решения или интегрированного модуля с ПО – это приобретение «чёрного ящика» с ограниченными возможностями. Поэтому среди разработчиков сверхмалых космических аппаратов стала обычной практика проектировать модули на основе покупных коммерческих элементов [1].
Одним из главных преимуществ наноспутника является низкая стоимость проектирования его подсистем. В частности, снижение стоимости проектирования бортового компьютера, можно добиться использованием стандартной элементной базы и операционной системы с открытым исходным кодом.
Наиболее подходящей к этим параметрам является операционная система Android, разработанная для смартфонов и планшетных ПК. Открытый доступ к ядру операционной системы— это один из факторов, который способствует развитию программного обеспечения. Хотя платформа Android и предназначена для разработки под мобильные устройства, она обладает качествами полноценной операционной системы для локального компьютера, будь то одноплатный компьютер или бортовой компьютер наноспутника.
Спутник состоит из многих подсистем, каждая из которых выполняет свою собственную специализированную задачу. Первичная функция бортового компьютера, это облегчить связь между этими различными подсистемами. Подсистемы обычно физически помещаются в различные модули и должны быть связаны надежной шиной данных, но поскольку в наноспутнике пространство часто - ограничивающий фактор, то некоторые из подсистем объединены непосредственно в бортовой компьютер. В этом случае, связи программного обеспечения между подсистемами заменяют физические связи, но подсистемы все еще обязаны независимо функционировать друг от друга.
Чтобы удовлетворить это требование, необходим мощный микропроцессор, способный к управлению многократными процессами одновременно. Управление процессами должно быть также изолировано друг от друга так, чтобы одна подсистема давшая сбой, не вызвала критическую ошибку других систем.
Из-за физически небольшого размера наноспутника (10см х10см х10см) многие из задач, которые обычно выполняются другими подсистемами, должны быть обработаны бортовым компьютером. У этих подсистем наиболее вероятно есть свои собственные аппаратные средства (например система ориентации), но основная обработка будет сделана в бортовом компьютере.
Прежде, чем выбрать аппаратные средства бортового компьютера наноспутника необходимо сформировать следующие требования.
1) Вычислительная мощность:
На бортовом компьютере должен стоять один микропроцессор с тактовой частотой не менее 900МГц и производительностью не менее 30 миллионов операций в секунду, способный выполнять сложные задачи.
2) Низкий расход энергии:
Необходимо выбирать компоненты, которые используются в различных переносных устройствах с батарейным питанием (сотовые телефоны).
3) Компоненты с низким питающим напряжением
Чтобы понизить расход энергии, необходимо выбирать компоненты с низким питающим напряжением 3,3 В, против традиционных 5 В компонентов.
4) Доступность компонентов:
Компоненты, используемые в бортовом компьютере, должны быть коммерчески доступными в течение, по крайней мере, следующих трех лет [1].
Вывести из строя микропроцессор может всего лишь одна частица радиации. Поэтому в бортовом компьютере следует использовать только проверенные архитектуры. Не каждое новшество можно запустить в открытый космос. К тому же там особенно актуальна проблема энергопотребления — а чем выше быстродействие, тем больше электричества нужно процессору.
Из-за доказанной надёжности и многофункциональности, выберем процессор с ядром ARM7, давно зарекомендовавший себя в космосе. При обзоре нескольких вариантов процессоров с ядром ARM, был выбран процессор AT91SAM7A2, наиболее подходящий по требованиям, сказанным выше. Данный процессор характеризуется высокопроизводительной 32-разрядной RISC-архитектурой и очень малым энергопотреблением. Кроме того, связанность многочисленных внутренних регистров в банки в результате позволяет ускорить обработку информации, что делает применение данного процессора идеальным в задачах управления в реальном масштабе времени. AT91SAM7A2 позволяет непосредственно подключиться к внешней памяти, в т.ч. флэш-память, через программируемый интерфейс внешней шины. Векторизованный контроллер прерываний с 8 уровнями приоритетов совместно с контроллером обмена данными с периферийными устройствами позволяют существенно повысить реально-временную производительность устройства. Процессор выпускается по высокоплотной технологии КМОП [2].
В общем, бортовой компьютер должен выполнять следующие задачи:
-
Обеспечивать информационный обмен между периферийными устройствами по низкоскоростной коммуникационной шине.
-
Обеспечивать передачу данных к полезной нагрузке по высокоскоростному коммуникационному интерфейсу
-
Обеспечивать выполнение общих задач обслуживания
-
Обеспечить возможность выполнения пользовательских процессов (вычисление ускорения, углов поворота и т.д.)
Функции основных подсистем наноспутника заключаются в следующем:
1) Подсистема полезной нагрузки
а) Включение полезной нагрузки, когда спутник входит в радио-окно и её выключение, когда спутник выходит из радио-окна.
б) Получение данных от полезной нагрузки, используя интерфейс RS232 и хранение их в бортовой памяти наноспутника.
в) Обработка и передача данных на Землю через подсистему передачи данных.
Дистанционное (с наземной станции) обновление бортовой памяти наноспутника.
2) Коммуникационная подсистема
а) Включение передатчика, когда спутник входит в радио-окно и выключение, когда спутник перемещается из радио-окна.
б) Поддержка приемопередатчика в режиме приёма, когда происходит приём команд с наземной станции
в) Отправка и получение команд между наземной станцией и бортовым компьютером через коммуникационную подсистему.
3) Система ориентации и стабилизации
а) Выработка отношения рассогласования текущей позиции наноспутника с требуемой.
б) Отфильтрованный сигнал рассогласования подаётся на магнитные катушки для стабилизации наноспутника.
4) Подсистема подачи электроэнергии
а)Ток, напряжение и расход энергии каждой подсистемы известны и контролируются электронной системой питания.
б) Поддержание состояния наноспутника в режиме сна или режиме питания, в зависимости от уровнях мощности батарей.
в) Управление электронной системой питания с бортового компьютера [2].
В качестве программного обеспечения бортового компьютера, было создано Android-приложение для получения, накопления и отправки на ПК информации с датчиков движения написано на языке Java в среде Eclipse c ADT плагином. В работе задействовались датчики акселерометр и магнитный компас он вычисляет угол поворота системы координат устройства (связанной с устройством) относительно глобальной системы координат (связанной с Землёй).
Приложение позволяет определять ориентацию устройства в пространстве, его ускорение, и записывать все полученные данные в *.csv файл на SD карту, затем отправляя их на выделенный сервер по протоколу Wi-Fi. Для *.csv файла на SD карте необходимо около 100КБ свободного места. Также результаты можно передавать с помощью Bluetooth. Далее полученные данные можно обработать: определить перемещение, скорость и углы поворота устройства
Когда приложение запускается, оно заполняет экран кнопкой с надписью «Запуск», после этого можно проводить эксперименты с устройством, по окончании нажать на кнопку «Стоп». После этого, в специальную строку вводится E-mail адрес, на который следует отправить файл CSV с данными.
Список литературы
1. Teney, D. Design and implementation of on-board processor and software of student nanosatellite OUFTI-1/ D.Teney, s. University of Liege: Belgium, 2009.
2. Botma, P.J. Tne design and Developments of an ADCS OBC for a CubeSat/ P.J.Bootma, s. University of Stellenbosch: Stellenbosch, 2011.
|