Рассматривается задача повышения отказоустойчивости беспилотного летательного аппарата, неспособного по массе и габаритам иметь в своем составе резервированные элементы системы управления. Показаны особенности нерезервированной вычислительной машины на базе специализированных вычислителей. Проведена модификация традиционных алгоритмов работы межмодульного взаимодействия, предложен алгоритм реконфигурации с перераспределением задач между исправными элементами. Поясняется, для каких случаев метод окажется эффективным.
Reconfiguring the on-board computer to increase stability in case of failure.pdf В настоящее время становится актуальным использование беспилотных летательных аппаратов (БПЛА) в различных сферах жизнедеятельности человека, которые выполняют различные функции, такие как доставка посылок, организация телекоммуникационных сетей, мониторинг и фотографирование местности и т.д. При проектировании современных систем управления (СУ) БПЛА полагаются на следующие принципы: надежность и малые габариты. Важным требованием также является возможность продолжения функционирования при отказах элементов СУ, чтобы повысить вероятность спасения БПЛА для повторной эксплуатации. В основе современных СУ ЛА находятся цифровые вычислительные машины (ЦВМ). Они проектируются как сложные системы, содержащие несколько цифровых вычислителей, которые могут работать как в режиме независимого решения разных задач, так и в режиме резервирования [1]. 1. Описание бортовой вычислительной машины В разрабатываемой СУ используется ЦВМ, строящаяся по магистрально-модульному принципу, в основе которого лежит управляющий трехканальный системный модуль (СМ), обеспечивающий повышенную отказоустойчивость ЦВМ. СМ соединен с остальными модулями ЦВМ (вычислители (далее -ВМ), модули обмена (далее - МС) с внешними абонентами (ВА)) резервированной системной магистралью [2, 3]. СМ отвечает за обмен с внешними устройствами и исполнительными органами, ВМ отвечает за отработку логической части функциональных алгоритмов (рис. 1). С учетом требований по стойкости для цифровой части СУ при работе в экстремальных условиях (широкий диапазон изменения температур, механические воздействия в виде ударов и широкополосной вибрации, полей ионизирующего излучения и т.п.) и возможностей отечественной элементной базы зачастую возникает проблема нехватки производительности одного вычислителя для решения всего спектра задач СУ. Исходя из этого, для обеспечения решения необходимого перечня задач СУ прибегают к использованию специализированных вычислителей, составляющих распределенную вычислительную систему. Одновременно с этим, при отсутствии требований работы при одной возможной неисправности из-за невозможности применения структурного резервирования аппаратуры ЦВМ вследствие малых габаритов ЛА, предъявляются требования по обеспечению спасения аппаратуры ЛА в случае сбоев и отказов аппаратуры СУ. Такая задача требует выработки новых алгоритмов функционирования вычислительного процесса ЦВМ СУ БПЛА. Рис. 1. Структурная схема магистрально-мо дульной вычислительной машины с распределением задач по вычислителям 2. Процесс реконфигурации В целях повышения отказоустойчивости и возможности обеспечения аварийного спасения СУ БПЛА предлагается следующая организация вычислительного процесса ЦВМ. Каждый вычислитель содержит программный код всех функциональных задач, решаемых ЦВМ. СМ, работающий циклически, выдает в каждый вычислитель команду, запускающую следующую задачу. Эти команды расположены в СМ последовательно в порядке убывания их приоритета. В начале первого цикла СМ раздает задачи всем вычислителям и циклически анализирует регистр состояния каждого вычислителя на простой. При обнаружении свободного вычислителя СМ определяет ему следующую задачу, предварительно списывая его стек, в котором находятся промежуточные результаты вычислений, необходимые для решения этой же задачи в следующем цикле с новыми данными от внешних абонентов. Стек копируется по математическому номеру во все вычислители одновременно. В случае, если один из вычислителей выйдет из строя, другой сможет продолжить решение этой задачи, имея всю актуальную информацию за предыдущий цикл. Фактически выдача команды выглядит как запись в ячейку памяти ВМ номера задачи из таблицы задач, что обеспечит минимальное время от момента считывания информации из ячейки до перехода через соответствующую строку таблицы к выполнению нужной задачи. Поскольку циклограмма определяется динамически, требуется следующее условие: цикл ЦВМ должен быть в два раза меньше цикла работы внешних абонентов. Таким образом, ЦВМ будет получать новую информацию из внешних систем, например от инерциальной системы навигации, практически без пропусков. В случае единичных сбоев пропущенные данные могут быть экстраполированы, поскольку информация, полученная от внешних абонентов, для решения задач навигации представляет собой изменение по сравнению с прошлой итерацией. Такая организация вычислительной системы дает возможность равномерного распределения производительности между вычислителями. Механизм выдачи команд по приоритетности будет отбрасывать задачи, наименее влияющие на функции полета, при снижении общей производительности системы. Эти задачи все также будут находиться в очереди, но, не успев на выдачу до завершения цикла, будут перемещены обратно в конец. Наименьший приоритет, например, могут иметь задачи, корректирующие основные вычисления для повышения точности. Вследствие отбрасывания этих задач точность полета по заданной траектории аппарата упадет, но в то же время обеспечится функционирование с задействованием необходимых алгоритмов спасения, что окажется эффективным в случаях, когда нежелательна потеря всего изделия или отдельных его частей. При этом основной сложностью будет обеспечение точного определения сбоев нерезервированной части аппаратуры, что потребует реализации дополнительного функционального контроля программно-алгоритмическими средствами. 3. Система контроля и функциональной защиты Функционирование каждого вычислительного модуля контролируется системным модулем. СМ синхронизирует работу вычислительных модулей раз в цикл с помощью одновременной записи в их триггеры прерываний. Вычислительные модули самостоятельно ведут счет выполненных циклов, который периодически списывается системным модулем для сравнения со своим счетчиком. Помимо этого в каждом вычислителе на основании выполнения функционального алгоритма формируется признак, подтверждающий работоспособность. СМ каждый цикл считывает для анализа в специальную ячейку с данным признаком и после этого обнуляет ее. Признаки работоспособности ВМ сравниваются в СМ с эталоном. Алгоритмический контроль основан на том, что каждый ВМ, выполняя расчеты, проверяет вхождение результатов в допустимые зоны. Также периодически ВМ выполняет тестовый пример, сравнивая результат с эталоном-константой, записанной в область постоянной памяти. Тестовыми примерами могут являться простейшие арифметические задачи, например сложение целых чисел или с плавающей точкой, если позволяет установленное время цикла. Выход за расчетные границы или ошибки в тестовых примерах формируют признак, обозначающий возникновение сбоя в полетной программе. Достоверность передаваемой информации при межмодульном обмене дополнительно обеспечивается проверкой контрольной суммы, которой сопровождается массив информации. Для повышения надежности функционирования ЛА программы контроля находятся в заблокированной на запись части постоянной памяти для исключения возможности непреднамеренной коррекции или случайного искажения. Заключение В работе рассмотрен вариант решения актуальной научно-технической задачи: обеспечение повышенной живучести БПЛА с нерезервированной аппаратурой СУ в условиях возникновения сбоев и отказов. Предложены модель организации работы ЦВМ и алгоритмы перераспределения задач по вычислителям в соответствии с их состоянием. Данный метод перераспределения целесообразно применять только в оговоренных случаях с определенными требованиями, поскольку при отказах аппарат может потерять значительную часть функционала, реализуя выполнение только базовых функций, например стабилизацию в атмосфере. В частности, такое решение может оказаться эффективным в случаях, когда не допускается потеря аппаратуры и БПЛА должен перейти, например, на выполнение программы по возвращению на базу.
Сарапулов Алексей Валерьевич | Уральский федеральный университет | магистрант кафедры радиотехнического факультета | aesee@mail.ru |
Уманский Алексей Борисович | АО «Научно-производственное объединение автоматики им. академика Н.А. Семихатова» | кандидат технических наук, сотрудник | pdwn1982@yandex.ru |
Антимиров В.М., Телицин В.В. Проектирование бортовой аппаратуры систем управления : курс лекций. 2010. 146 с.
Сарапулов А.В., Уманский А.Б. Эффективность перераспределения задач бортовой вычислительной системы для повышения надежности систем автоматического управления подвижными объектами // Международная конференция студентов, аспирантов и молодых ученых «Информационные технологии, телекоммуникации и системы управления» : сб. докл. Екатеринбург, 2015. С. 231-238.
Уманский А.Б., Антимиров В.М., Шалимов Л.Н. Бортовые цифровые вычислительные системы семейства «Малахит» для работы в экстремальных условиях // Вестник СГАУ. 2013. № 4 (42). С. 19-27.