Научная статья на тему 'РЕАЛИЗАЦИЯ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ НА ОТЕЧЕСТВЕННЫХ МИКРОПРОЦЕССОРНЫХ УСТРОЙСТВАХ'

РЕАЛИЗАЦИЯ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ НА ОТЕЧЕСТВЕННЫХ МИКРОПРОЦЕССОРНЫХ УСТРОЙСТВАХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
191
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БЛОК ОБРАБОТКИ / РАСПРЕДЕЛЁННЫЕ ВЫЧИСЛЕНИЯ / МИКРОПРОЦЕССОР / НАВИГАЦИОННАЯ СИСТЕМА / ОТЕЧЕСТВЕННЫЕ МИКРОКОНТРОЛЛЕРЫ

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

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Шипов Илья Александрович

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

THE METHOD OF SOLVING THE PROBLEM OF THE DISTRIBUTION OF GOALS IN THE GROUP OF UAVS BY NETWORK-CENTRIC CONTROL SYSTEM

The aim of the work is to create a productive computing device for a strapdown inertial navigation system (SINS) of a ground-based robotic complex (RTC) on a domestic element base. A formal description of the typical sufficient functions performed by SINS is given and the basic principles of the algorithms are described from the point of view of the requirements for computing resources. A description of domestic microcontrollers available on the market and a comparison with the closest foreign analogue are given. The results of the prototyping carried out showed the fundamental possibility, but the low prospects of creating computing devices on a single microcontroller. In this regard, technical proposals were developed and implemented to increase the computing power by means of building the architecture of a multiprocessor computer. As a result, it was necessary to develop special approaches to the design of algorithms and software. The organization of distributed computing is one of the most optimal methods for ensuring the calculation of functioning algorithms. The introduction of additional microprocessors into the calculator circuit made it possible not only to increase the computing power, but also to introduce additional interfaces for interaction with both the consumer and primary information sensors. The proposed variant of the distribution of SINS operation algorithms made it possible to create a reserve for the development prospects and system scalability. The most resource-intensive algorithm is the calculation of inertial coordinates, implemented as an iterative calculation for determining the latitude component of the location. Also, the performance margin may allow the implementation of additional adaptive algorithms for filtering and processing data based on the results of testing and operation of a ground moving object. The choice of on-board exchange interface between controllers is substantiated and its practical application is described. The creation of a closed loop of information exchange made it possible to implement additional parallel calculations of secondary information and to calculate an autonomous reckoning of the object's location coordinates. The described technical solutions can be used in the design of embedded calculators for objects for various purposes operating on the basis of hard logic. As the main drawback of the presented approach to designing a calculator, one can designate a limited functionality when working with ROMs.

Текст научной работы на тему «РЕАЛИЗАЦИЯ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ НА ОТЕЧЕСТВЕННЫХ МИКРОПРОЦЕССОРНЫХ УСТРОЙСТВАХ»

Раздел IV. Связь, навигация и наведение

УДК 629.3.051 DOI 10.18522/2311-3103-2022-1-218-225

И.А. Шипов

РЕАЛИЗАЦИЯ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ НА ОТЕЧЕСТВЕННЫХ МИКРОПРОЦЕССОРНЫХ УСТРОЙСТВАХ

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

Блок обработки; распределённые вычисления; микропроцессор; навигационная система; отечественные микроконтроллеры.

I.A. Shipov

THE METHOD OF SOLVING THE PROBLEM OF THE DISTRIBUTION OF GOALS IN THE GROUP OF UAVS BY NETWORK-CENTRIC CONTROL

SYSTEM

The aim of the work is to create a productive computing device for a strapdown inertial navigation system (SINS) of a ground-based robotic complex (RTC) on a domestic element base. A formal description of the typical sufficient functions performed by SINS is given and the basic

principles of the algorithms are described from the point of view of the requirements for computing resources. A description of domestic microcontrollers available on the market and a comparison with the closest foreign analogue are given. The results of the prototyping carried out showed the fundamental possibility, but the low prospects of creating computing devices on a single microcontroller. In this regard, technical proposals were developed and implemented to increase the computing power by means of building the architecture of a multiprocessor computer. As a result, it was necessary to develop special approaches to the design of algorithms and software. The organization of distributed computing is one of the most optimal methods for ensuring the calculation offunctioning algorithms. The introduction of additional microprocessors into the calculator circuit made it possible not only to increase the computing power, but also to introduce additional interfaces for interaction with both the consumer and primary information sensors. The proposed variant of the distribution of SINS operation algorithms made it possible to create a reserve for the development prospects and system scalability. The most resource-intensive algorithm is the calculation of inertial coordinates, implemented as an iterative calculation for determining the latitude component of the location. Also, the performance margin may allow the implementation of additional adaptive algorithms for filtering and processing data based on the results of testing and operation of a ground moving object. The choice of on-board exchange interface between controllers is substantiated and its practical application is described. The creation of a closed loop of information exchange made it possible to implement additional parallel calculations of secondary information and to calculate an autonomous reckoning of the object's location coordinates. The described technical solutions can be used in the design of embedded calculators for objects for various purposes operating on the basis of hard logic. As the main drawback of the presented approach to designing a calculator, one can designate a limited functionality when working with ROMs.

Processing unit; distributed computing; microprocessor; navigation system; domestic microcontrollers.

Введение. Степень интеллектуальности современных цифровых систем автоматики, во многом, определяется сложностью и объемом алгоритмов их функционирования. Для обеспечения выработки стабильного навигационного решения, отвечающего требованиям потребителя, системы навигации и ориентирования (СНО) должны осуществлять комплексирование нескольких источников информации, оценивать достоверность каждого из них, а также решать целый ряд дополнительных задач [1]. Стоит отметить, что реализация алгоритма комплексированного режима счисления координат и углов ориентации имеет множество вариантов. Разработчик ограничен только рамками поставленной задачи и неформальными требованиями к возможной оптимальности. Наиболее широкое применение в настоящее время получил фильтр Калмана [2, 3], позволяющий учитывать всю возможную исходную информацию, имеющуюся в составе подвижного объекта. С точки зрения программной реализации и требований к вычислительным устройствам отдельно стоит отметить алгоритмы с постобработкой, требующие накопления больших массивов данных. Применение подобных методов предполагает особую организацию вычислительных устройств.

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

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

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

Прямым аналогом линейки процессоров 1986ВЕ9х является микроконтроллер STM32F10x европейской фирмы ST Microelectronics [6-8]. Оба микроконтроллера выполнены на базе одного и того же ядра Cortex M3 ARM архитектуры с сокращенным набором команд. Процессоры имеют схожий набор периферийных блоков, обеспечивающих решение функциональных задач и возможность адаптации конечного устройства под специфику применения [9, 10].

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

Разработка вычислителя на отечественной элементной базе. В табл. 1 приведены характеристики микропроцессоров серии 1986ВЕ отечественного производства [5], они обладают устойчивостью к воздействию спецфакторов, широким диапазоном рабочих температур, развитой периферией. Все представленные контроллеры обладают аппаратной поддержкой широкого набора интерфейсов в том числе UART, CAN, MCIO, Ethernet. Также в них реализованы режимы таймеров и прямого доступа к памяти. Операционная система реального времени с исходным кодом FreeRTOS поддерживает большинство процессоров доступных к применению и обеспечивает возможность реализации приоритетной многозадачности по средствам встроенных программных инструментов.

Таблица 1

Микропроцессоры серии 1986ВЕ

Название Частота [МГц] SPI Tmax [°С] Tmin га ОЗУ [КБайт] ПЗУ [КБайт] Ядро

1986ВЕ1Т 144 3 125 -60 48 128 RISC-ядро

1986ВЕ3Т 80 4 125 -60 48 128 RISC-ядро

1986ВЕ8Т 100 1 125 -60 32 128 ARM Cortex-M4F

1986ВЕ92У 80 2 125 -60 32 128 Cortex-M3

1986ВЕ93У 80 1 125 -60 32 128 Cortex-M3

1986ВЕ94Т 80 2 125 -60 32 128 Cortex-M3

Все представленные микроконтроллеры обладают ПЗУ объемом 128 Кбайт, ОЗУ не менее 32 Кбайт и тактовой частотой не менее 80 МГц.

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

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

♦ подпрограммы взаимодействия с сопряженными устройствами;

♦ подпрограммы первичной обработки поступающей информации;

♦ блока решения навигационных задач;

♦ подпрограммы мониторинга технического состояния и самодиагностики;

♦ подпрограммы взаимодействия с FLASH памятью.

Проведенный этап макетирования показал, что на базе одного микроконтроллера серии 1986ВЕ9х, с учетом оптимизации исходного кода, может быть реализовано выполнение алгоритмов функционирования с частотой не более 100 Гц при обновлении первичной информации 1600Гц. Также ключевым моментом являлся выбор сочетания производительности и количества периферийных интерфейсов.

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

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

Учитывая возможную сложность и специфику каждой из указанных задач при организации распределённых вычислений [14] на базе нескольких процессорных устройств возможно привлечение нескольких независимых разработчиков. При этом возможно заимствование и создание библиотечных решений в части:

♦ драйверов работы с периферийными устройствами микроконтроллера;

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

♦ локальная стандартизация названий переменных.

Рассмотрим вариант построения системы, внутренняя архитектура которой позволяет обеспечивать возможность организации распределенных вычислений. Пример построения блока обработки навигационных параметров (БОНП) для реализации алгоритмов функционирования навигационной системы изображен на рис. 1. Использование трех микропроцессоров позволит распределить нагрузку и обеспечить функционирование изделия в целом. В совокупности блок обработки навигационных параметров обладает вычислительными мощностями сразу трех процессоров, совокупным объемом их оперативной памяти. Возникает две основные подзадачи организации функционирования:

♦ алгоритмическое распределение вычислений;

♦ организация взаимодействия между процессорными модулями.

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

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

Потребитель HHU1 IIIIIOMMHII |IMI|H>|IM L||IIII I

Рис. 1. Структурная схема вычислительного устройства

Для решения второй подзадачи необходимо определиться с аппаратной реализацией. Одним из возможных вариантов решения посредством которого можно организовать взаимодействие между процессорными устройствами является Serial Peripheral Interface (последовательный периферийный интерфейс, шина SPI)) [15] -это последовательный синхронный стандарт передачи данных в режиме полного дуплекса, предназначенный для обеспечения простого и недорогого высокоскоростного сопряжения микроконтроллеров и периферии. SPI также иногда называют четырёхпроводным интерфейсом.

В отличие от стандартного последовательного порта, SPI является синхронным интерфейсом, в котором любая передача синхронизирована с общим тактовым сигналом, генерируемым ведущим устройством (процессором). Скорость данного интерфейса определяется делителем базовой частоты процессорного устройства. Принимающий (ведомый) абонент синхронизирует получение битовой последовательности с тактовым сигналом. К одному последовательному периферийному интерфейсу ведущего устройства-микросхемы может присоединяться несколько микросхем. Ведущее устройство выбирает ведомое для передачи, активируя сигнал «выбор кристалла» на ведомой микросхеме. Периферия, не выбранная процессором, не принимает участия в передаче по SPI. Основные преимущества данного интерфейса:

♦ высокая пропускная способность;

♦ возможность произвольного выбора длины пакета;

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

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

Однако стоит отметить и основные недостатки SPI, которые могут накладывать ограничения при проектировании вычислителя для БИНС:

♦ ведомое устройство не может управлять потоком данных;

♦ нет подтверждения приема данных со стороны ведомого устройства;

♦ нет определенного стандартом протокола обнаружения ошибок.

Учитывая все положительные и отрицательные моменты, SPI является наиболее перспективным вариантом к применению в сравнении с PC (последовательная асимметричная шина).

Рассмотренный пример построения вычислительного блока для системы навигации и ориентирования на базе отечественных микропроцессорных устройств является одним из возможных вариантов решения данной задачи и носит типовой характер. Недостатки данной реализации могут быть выявлены при необходимости распределения [16, 17] емких алгоритмов инерциальной навигации или при необходимости постобработки данных.

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

Рис. 2. Структура вычислителя инерциальной навигационной системы

На рис. 2 изображена структура вычислителя инерциальной навигационной системы, построенного на основе изложенного выше подхода. Канал информационного взаимодействия SPI3 является дополнительным и может быть задействован для ускоренной передачи данных между процессорами 1986ВЕ94Т.

Функционирование БОНП происходит в последовательных режимах «Выставка» и «Навигация». Дополнительно на каждом цикле опроса датчиков выполняется алгоритм коррекции данных и управления режимами функционирования. Также программное обеспечение выполняет функцию организации взаимодействия с потребителем по интерфейсу RS-422 в соответствии с протоколом обмена. Режим «Навигация» является более ресурсоемким в связи с тем, что требует вычисления большого количества тригонометрических функций. Реализация обратной связи по каналу SPI обеспечивает возможность реализации расчета автономных координат.

Обмен информацией с блоком чувствительных элементов (БЧЭ) осуществляется по интерфейсу CAN2^ (физическая организация соответствует ISO 11898-2) с использованием 11 -ти разрядных идентификаторов сообщений. Скорость передачи данных составляет 1 Мбит/с. Частота обмена (частота обновления информации) с БЧЭ составляет 1600 Гц. Это накладывает ограничение на период расчёта алгоритмов в 0,000625 секунды. Для реализации алгоритмов функционирования БОНП высокоточной бесплатформенной инерциальной навигационной системы необходимо было разработать программные модули для трех однокристальных ЭВМ с организацией взаимодействия между ними. В рамках оптимизации алгоритмов функционирования и подготовки их к реализации в условиях распределённых вычислений, была проведена работа по формированию набора базовых функций и проработаны алгоритмы их взаимосвязи. Это позволило обеспечить необходимую производительность вычислений.

В программном модуле для первой ЭВМ 1986BE94T были реализованы драйверы взаимодействия с БЧЭ по интерфейсу CAN, а также корректировка показаний датчиков в соответствии с калибровочными коэффициентами. В программном модуле для ЭВМ 1901ВЦ1Т полностью реализован алгоритм «Выставка» и часть алгоритма «Навигация». Вторая ЭВМ 1986ВЕ94Т выполняет функции окончательных расчетов алгоритмов штатного функционирования и обеспечивает взаимодействие с потребителем навигационной информации.

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

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Брозгуль Л.И., Зайцев А.В. Состояние и перспективы развития инерциальных навигационных систем // Мехатроника, автоматизация, управление. - 2006. - № 3.

2. Васильев К.К., Аникин А.А. Калмановское комплексирование и моделирование навигационных систем // Электронная техника: Межвузовский сборник научных трудов / под ред. Д.В. Андреева. - Ульяновск: УлГТУ, 2005.

3. GrewalM., Henderson V., Miyasako R. Application of Kalman filtering to the calibration and alignment of inertial navigation systems // IEEE Transactions, Automatic Control. - 1991.

- Vol. 36.

4. Алямов А.Э., Баласов И.Ю., Бажанов В.А. Импортозамещение электронной компонентной базы в оборонном производстве // Всероссийский экономический журнал ЭКО. - 2015.

5. Официальный сайт АО «ПКК Миландр». - URL: https://ic.milandr.ru/ (дата обращения: 22.12.2018).

6. Carmine Noviello. Mastering STM32, 2018.

7. Agus Kurniawan. Getting Started With STM32 Nucleo Development, 2016.

8. Geoffrey Brown, Discovering the STM32 Microcontroller, 2016.

9. Warren Gay. Beginning STM32: Developing with FreeRTOS, libopencm3 and GCC», 2018.

10. VincentMahout, Assembly Language Programming: Arm® Cortex®-M3», 2011.

11. КосяковМ.С. Введение в распределённые вычисления. - СПб.: НИУ ИТМО, 2014. - 155 с.

12. Романов А.А. Распределенные вычисления и приложения: учеб. пособие. - УлГТУ, 2018.

- 152 c.

13. Таненбаум Э., ван Стеен М. Распределенные системы. Принципы и парадигмы. - СПБ: Питер, 2003. - 877 с.

14. ТельЖ. Введение в распределенные алгоритмы: пер. с англ. - М.: МЦНМО, 2009. - 616 с.

15. Руководство SPI v3.06 // WebArchive [2015-2018]. - URL: http://www.ee.nmt.edu/ ~teare/ee308l/datasheets/S12SPIV3.pdf (дата обращения: 22.12.2020).

16. Stallings W. Operating Sysytems: Internal and design principles. - Seventh edition. Prentice Hall, 2011.

17. Tel G. Introduction to Distributed Algorithms. Second edition. - Cambridge University Press, 2000.

18. Благодаров А.В. Программирование микроконтроллеров. - М., 2016. - 242 с.

19. Эндрю Таненбаумом. Архитектура компьютера. - 6-е изд. - 2013. - 801 c.

20. Белов А.В. Конструирование устройств на микроконтроллерах. - СПб.: Наука и Техника, 2005. - 256 с.

REFERENCES

1. Brozgul' L.I., Zaytsev A.V. Sostoyanie i perspektivy razvitiya inertsial'nykh navigatsionnykh sistem [State and prospects for the development of inertial navigation systems], Mekhatronika, avtomatizatsiya, upravlenie [Mechatronics, automation, control], 2006, No. 3.

2. Vasil'ev K.K., Anikin A.A. Kalmanovskoe kompleksirovanie i modelirovanie navigatsionnykh sistem [Kalmanov complexing and modeling of navigation systems], Elektronnaya tekhnika: Mezhvuzovskiy sbornik nauchnykh trudov [Electronic technology: Interuniversity collection of scientific papers], ed. by D.V. Andreeva. Ul'yanovsk: UlGTU, 2005.

3. Grewal M., Henderson V., Miyasako R. Application of Kalman filtering to the calibration and alignment of inertial navigation systems, IEEE Transactions, Automatic Control, 1991, Vol. 36.

4. Alyamov A.E., Balasov I.Yu., Bazhanov V.A. Importozameshchenie elektronnoy komponentnoy bazy v oboronnom proizvodstve [Import substitution of electronic component base in defense production], Vserossiyskiy ekonomicheskiy zhurnalEKO [All-Russian economic journal ECO], 2015.

5. Ofitsial'nyy sayt AO «PKK Milandr» [Official website of PKK Milandr]. Available at: https://ic.milandr.ru/ (accessed 22 December 2018).

6. Carmine Noviello. Mastering STM32, 2018.

7. Agus Kurniawan. Getting Started With STM32 Nucleo Development, 2016.

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

8. Geoffrey Brown, Discovering the STM32 Microcontroller, 2016.

9. Warren Gay. Beginning STM32: Developing with FreeRTOS, libopencm3 and GCC», 2018.

10. Vincent Mahout, Assembly Language Programming: Arm® Cortex®-M3», 2011.

11. Kosyakov M.S. Vvedenie v raspredelennye vychisleniya [Introduction to distributed computing]. Saint Petersburg: NIU ITMO, 2014, 155 p.

12. Romanov A.A. Raspredelennye vychisleniya i prilozheniya: ucheb. posobie [Distributed Computing and Applications: textbook]. UlGTU, 2018, 152 p.

13. Tanenbaum E., van Steen M. Raspredelennye sistemy. Printsipy i paradigm [Distributed systems. Principles and paradigms]. Saint Petersburg: Piter, 2003, 877 p.

14. Tel'Zh. Vvedenie v raspredelennye algoritmy [Introduction to distributed algorithms]: Transl. from englsh. Moscow: MTSNMO, 2009, 616 p.

15. Rukovodstvo SPI v3.06 [SPI Manual v3.06], WebArchive [2015-2018]. Available at: http://www.ee.nmt.edu/~teare/ee308l/datasheets/S12SPIV3.pdf (accessed 22 December 2020).

16. Stallings W. Operating Sysytems: Internal and design principles. Seventh edition. Prentice Hall, 2011.

17. Tel G. Introduction to Distribyted Algorithms. Second edition. Cambridge University Press, 2000.

18. Blagodarov A.V. Programmirovanie mikrokontrollerov [Programming of microcontrollers]. Moscow, 2016, 242 p.

19. Endryu Tanenbaumom. Arkhitektura komp'yutera [Structured Computer Organization]. 6 ed., 2013, 801 p.

20. Belov A.V. Konstruirovanie ustroystv na mikrokontrollerakh [Designing devices on microcontrollers]. Saint Petersburg: Nauka i Tekhnika, 2005, 256 p.

Статью рекомендовал к опубликованию к.т.н. А.С. Карпенков.

Шипов Илья Александрович - АО «Всероссийский научно-исследовательский институт «Сигнал»; e-mail: shipov@gmail.com; г. Ковров, Россия; тел.: 89100905025; зам. начальника отдела.

Shipov Ilia Aleksandrovich - JSC "VNII Signal", e-mail: shipov@gmail.com; Kovrov, Russia;

phone: +79100905025; deputy head of department.

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