ДВУХКАНАЛЬНАЯ АРХИТЕКТУРА
TWO-CHANNEL ARCHITECTURE

Общая область техники
Изобретение относится к области систем управления полетом летательного аппарата.
В частности, его объектом является способ переключения между двумя блоками обработки или вычислительными устройствами, образующими двухканальную архитектуру такой системы.
Уровень техники
Существующие бортовые системы управления полетом летательных аппаратов, таких как самолеты или вертолеты, выполняют функции управления и регулирования двигателя летательного аппарата, обеспечивающие его хорошую работу. Такие функции являются критическими для безопасности пассажиров. Следовательно, такие системы должны быть стойкими к неисправностям.
Для этого, как правило, существующие системы управления полетом содержат два блока обработки или вычислительных устройства, каждое из которых может обеспечивать хорошую работу двигателя. Следовательно, такая система образует двухканальную архитектуру, в которой каждый канал может обеспечивать выполнение указанных критических функций в случае неисправности другого канала. Среди этих двух каналов, как правило, управление двигателем осуществляет канал, имеющий лучшее рабочее состояние, то есть имеющий меньше неисправностей или имеющий неисправности с меньшей степенью серьезности. Этот канал называют активным каналом.
Чтобы выполнять функции управления и регулирования двигателя, каждый из каналов выполнен с возможностью управления по меньшей мере одним приводом. Эти приводы могут выходить из строя. Когда один или несколько приводов канала оказывается неисправным, этот канал больше не в состоянии правильно обеспечивать управление двигателем. Если другой канал, называемый пассивным, имеет худшее рабочее состояние, чем активный канал, он тоже не может правильно обеспечивать управление двигателем. Таким образом, ни один из двух каналов не может правильно обеспечивать управление двигателем, и в этом случае не могут быть обеспечены критические функции системы управления полетом.
Следовательно, существует потребность в способе, позволяющем активному каналу правильно обеспечивать управление двигателем, несмотря на отказ по меньшей мере одного из приводов.
Раскрытие изобретения
Таким образом, первым объектом настоящего изобретения является способ переключения, осуществляемый первым блоком обработки, называемым локальным блоком обработки, системы управления полетом летательного аппарата, содержащего по меньшей мере один двигатель,
при этом указанный локальный блок обработки выполнен с возможностью управления по меньшей мере одним приводом, называемым локальным приводом, чтобы управлять двигателем летательного аппарата, и с возможностью подключения по меньшей мере к одному локальному датчику и соединения по меньшей мере через одну линию связи с вторым блоком обработки, называемым противоположным блоком обработки, и с возможностью подключения по меньшей мере к одному противоположному датчику, при этом указанный локальный блок обработки выполнен также с возможностью подключения к аварийным средствам связи, позволяющим обеспечивать обмен данными между локальным блоком обработки и противоположным блоком обработки в случае отказа указанной по меньшей мере одной соединяющей их линии связи, при этом указанные аварийные средства связи содержат сеть датчиков или приводов и/или защищенную бортовую сеть для авионики,
при этом указанный способ содержит следующие этапы:
- в противоположный блок обработки передают данные измерений, относящиеся по меньшей мере к одному локальному датчику, и данные привода, относящиеся по меньшей мере к одному локальному приводу,
- от противоположного блока обработки получают данные измерений, относящиеся по меньшей мере к одному противоположному датчику, и данные привода, относящиеся по меньшей мере к одному противоположному приводу,
- получают данную исправности, относящуюся к рабочему состоянию противоположного блока обработки и называемую противоположной данной исправности,
- определяют данную исправности, относящуюся к исправности указанного локального блока обработки и называемую локальной данной исправности,
- указанный локальный блок обработки переключают из первого состояния во второе состояние в зависимости от указанной полученной противоположной данной исправности и от указанной определенной локальной данной исправности,
при этом указанные этапы передачи, получения данных измерения и получения данной исправности осуществляют посредством указанной по меньшей мере одной линии связи или указанных аварийных средств связи, и указанные состояния являются состояниями среди активного состояния, в котором локальный блок обработки обеспечивает управление двигателем летательного аппарата, пассивного состояния, в котором локальный блок обработки не обеспечивает управление двигателем летательного аппарата, и подчиненного состояния, в котором локальный блок обработки уступает противоположному блоку обработки управление указанными локальными приводами для управления двигателем летательного аппарата.
Такой способ позволяет каждому блоку обработки иметь полную картину общей системы, включая приводы и датчики, соединенные с противоположным блоком обработки, чтобы иметь возможность правильно обеспечивать управление двигателем, несмотря на отказ локального привода. Таким образом, блок обработки, не способный управлять двигателем, может предоставить доступ к своим приводам другому блоку обработки, который находится в активном состоянии, чтобы система управления полетом могла обеспечивать управление двигателем, несмотря на одну или несколько неисправностей приводов активного блока обработки. Кроме того, использование аварийных средств связи позволяет избегать полного ослепления двухканальной системы и отключения связи между двумя блоками обработки. Наконец, использование таких сетей для обмена информацией между блоками обработки позволяет повысить уровень избыточности средств связи между блоками обработки и обеспечивать надежность работы системы управления полетом, не прибегая к применению дополнительных средств связи, специально предназначенных только для связи между блоками обработки.
Поскольку противоположный блок обработки и локальный блок обработки соединены, с одной стороны, через первую цифровую двухстороннюю линию связи и, с другой стороны, через вторую цифровую двухстороннюю линию связи, и противоположный блок обработки передает противоположную данную состояния по каждой из линий связи,
этап получения противоположной данной исправности в рамках заявленного способа может содержать этап получения первой противоположной данной исправности по первой линии связи и второй избыточной противоположной данной исправности по второй линии связи, этап проверки когерентности указанных полученных первой и второй данных исправности и этап определения указанной переданной противоположной данной исправности в зависимости от указанного этапа проверки.
Это позволяет улучшить способность системы обнаруживать изменения данных, обмениваемых между блоками обработки, и свести к минимуму вероятность отказа системы управления полетом.
Этап определения переданной противоположной данной исправности может содержать, если указанные первая и вторая данные исправности не являются когерентными, этап консолидации, в ходе которого переданную противоположную данную исправности определяют на основании данных, принятых по меньшей мере в двух последовательных фреймах.
Это позволяет минимизировать риск погрешности во время определения переданной противоположной данной исправности, когда данные, переданные по двум линиям связи в первом фрейме, не являются когерентными и не позволяют надежно определить переданную данную исправности.
Чтобы убедиться в отсутствии искажения принимаемых данных по время их передачи, этап получения противоположной данной исправности в рамках заявленного способа может содержать этап проверки целостности указанной полученной данной исправности.
Этап определения локальной данной исправности в рамках заявленного способа может содержать этап диагностики рабочего состояния аппаратных средств (“hardware”) и программных средств (“software”) указанного локального блока обработки.
Это позволяет получить данную исправности, позволяющую диагностировать все неисправности, которые могут повлиять на способность локального блока обработки обеспечивать управление двигателем.
Этап переключения в рамках заявленного способа может включать в себя:
- этап определения, на основании локальной данной исправности, данной состояния, относящейся к состоянию указанного локального блока обработки, и данной статуса исправности локального блока обработки, относящейся к способности локального блока обработки обеспечивать управление двигателем, и
- этап переключения указанного локального блока обработки в подчиненное состояние:
- если данная состояния показывает, что локальный блок обработки находится в пассивном состоянии, и
- если данная статуса состояния, показывает статус, в котором:
- локальный блок обработки может сообщаться с противоположным блоком обработки, например, если по меньшей мере одна из двух цифровых двухсторонних линий связи позволяет обеспечивать связь между локальным блоком обработки и противоположным блоком обработки,
- локальный блок обработки не может обеспечивать управление двигателем,
- и локальный блок обработки может управлять локальными приводами.
Это позволяет убедиться перед переходом в подчиненное состояние, что блок обработки не обеспечивает в данный момент управление двигателем, что он не может обеспечивать управление двигателем вместо другого блока обработки и что его неисправности не мешают предоставлять доступ к его приводам для другого блока обработки.
Согласно предпочтительному и не ограничительному признаку, этап переключения в рамках заявленного способа содержит:
- этап определения, на котором указанный локальный блок обработки определяет на основании указанных локальной и противоположной данных исправности, что его рабочее состояние лучше, чем рабочее состояние противоположного блока обработки,
- этап выжидания, на котором указанный локальный блок обработки выжидает, пока противоположный блок обработки перейдет в пассивное состояние,
- этап переключения локального блока обработки в активное состояние.
Это позволяет избегать ситуации в системе управления, при которой оба блока обработки могут стать активными и могут передавать противоречивые команды на свои приводы.
Вторым объектом настоящего изобретения является программный компьютерный продукт, содержащий командные коды для осуществления заявленного способа переключения, когда эту программу исполняет процессор.
Третьим объектом настоящего изобретения является блок обработки системы управления полетом летательного аппарата, содержащего по меньшей мере один двигатель, выполненный с возможностью управления по меньшей мере одним приводом, называемым локальным приводом, чтобы управлять двигателем летательного аппарата, при этом указанный локальный блок обработки выполнен с возможностью подключения по меньшей мере к одному локальному датчику и соединения по меньшей мере через одну линию связи с вторым блоком обработки, называемым противоположным блоком обработки, выполненным с возможностью управления по меньшей мере одним противоположным приводом и подключения по меньшей мере к одному противоположному датчику, при этом указанный локальный блок обработки выполнен также с возможностью подключения к аварийным средствам связи, позволяющим обеспечивать обмен данными между локальным блоком обработки и противоположным блоком обработки в случае отказа указанной по меньшей мере одной соединяющей их линии связи, при этом указанные аварийные средства связи содержат сеть датчиков или приводов и/или защищенную бортовую сеть для авионики, и содержащий:
- средства передачи в противоположный блок обработки данных измерений, относящихся по меньшей мере к одному локальному датчику, и данных привода, относящихся по меньшей мере к одному локальному приводу,
- средства получения от противоположного блока обработки данных измерений, относящихся по меньшей мере к одному противоположному датчику, и данных привода, относящихся по меньшей мере к одному противоположному приводу,
- средства получения данной исправности, относящейся к рабочему состоянию противоположного блока обработки и называемой противоположной данной исправности,
- средства определения данной исправности, относящейся к исправности указанного локального блока обработки и называемой локальной данной исправности,
- средства переключения указанного локального блока обработки из первого состояния во второе состояние в зависимости от указанной полученной противоположной данной исправности и от указанной определенной локальной данной исправности,
при этом указанные состояния являются состояниями среди активного состояния, в котором указанный локальный блок обработки обеспечивает управление двигателем летательного аппарата, пассивного состояния, в котором локальный блок обработки не обеспечивает управление двигателем летательного аппарата, и подчиненного состояния, в котором локальный блок обработки уступает противоположному блоку обработки управление указанными локальными приводами для управления двигателем летательного аппарата.
Четвертым объектом настоящего изобретения является система управления полетом, содержащая два заявленных блока обработки и дополнительно содержащая аварийные средства связи, позволяющие обеспечивать обмены данными между локальным блоком обработки и противоположным блоком обработки в случае отказа соединяющих их линий связи, при этом указанные аварийные средства связи содержат сеть датчиков или приводов и/или защищенную бортовую сеть для авионики.
Такие программный компьютерный продукт, блок обработки и система управления полетом имеют те же преимущества, что были упомянуты для заявленного способа.
Оба блока обработки могут быть соединены, с одной стороны, через первую цифровую двухстороннюю линию связи и, с другой стороны, через вторую цифровую двухстороннюю линию связи, при этом указанная вторая линия связи является избыточной с первой линией связи, и указанные первая и вторая линии связи могут одновременно быть активными.
Такая система обладает повышенной стойкостью к неисправностям, благодаря избыточности своих блоков обработки и своих средств связи, и одновременно занимает небольшой габарит.
Первая и вторая линии связи могут быть линиями CCDL (“Cross Channel Data Link”).
Такая линия связи позволяет, в частности, блокам обработки обмениваться более сложными данными исправности, чем данные, обмениваемые при помощи дискретных аналоговых линий связи известных систем, и одновременно позволяет уменьшить объем прокладываемой проводки.
Защищенная бортовая сеть для авионики может быть, например, избыточной сетью Ethernet типа AFDX (“Avionics Full DupleX switched Ethernet) или μAFDX.
Краткое описание чертежей
Другие отличительные признаки и преимущества будут более очевидны из нижеследующего описания варианта выполнения. Это описание представлено со ссылками на прилагаемые чертежи, на которых:
Фиг. 1 - схематичный вид системы управления полетом согласно варианту выполнения изобретения.
Фиг. 2 - схема аппаратных средств, предназначенных для установления двух линий связи CCDL между двумя блоками обработки системы управления полетом согласно варианту выполнения изобретения.
Фиг. 3 схематично иллюстрирует физическое разделение модулей CCDL каждого блока обработки системы управления полетом согласно варианту выполнения изобретения.
Фиг. 4 схематично иллюстрирует разделение аппаратных средств блока обработки, предназначенных для установления двух линий связи CCDL, согласно варианту выполнения изобретения.
Фиг. 5 - графическое отображение состояний блоков обработки системы управления полетом согласно варианту выполнения изобретения.
Осуществление изобретения
Объектом изобретения является способ переключения, осуществляемый первым блоком 1 обработки, называемым локальным блоком обработки, показанной на фиг. 1 системы управления полетом летательного аппарата, содержащего по меньшей мере один двигатель.
Система управления полетом содержит также второй блок 2 обработки, называемый противоположным блоком обработки. Локальный блок обработки выполнен с возможностью соединения по меньшей мере через одну линию связи 3, 4 с противоположным блоком обработки, который в свою очередь соединен по меньшей мере с одним противоположным датчиком. Эта два блока обработки являются избыточными и могут, каждый, выполнять функции управления и регулирования двигателя летательного аппарата. Для этого каждый блок обработки выполнен с возможностью управления по меньшей мере одним приводом, чтобы управлять двигателем летательного аппарата. Приводы, управляемые локальным блоком 1 обработки, называются локальными приводами. Приводы, управляемые противоположным блоком обработки, называются противоположными приводами. Таким образом, система, показанная на фиг. 1, образует двухканальную архитектуру, содержащую канал А и канал В.
Блоки обработки 1 и 2 могут быть процессорами одной многопроцессорной компьютерной системы, содержащей несколько процессоров. Чтобы улучшить стойкость системы управления полетом по отношению к внешним воздействиям и чтобы одно локальное событие не могло вывести из строя одновременно оба блока обработки 1 и 2, оба канала могут быть установлены на расстоянии друг от друга в разных корпусах. В такой конфигурации блоки обработки не являются рабочими исполнительными устройствами, находящимися внутри одного процессора.
Система содержит также средства связи, позволяющие соединять оба блока обработки для обеспечения обмена данными, являющимися существенными для нормальной работы каждого из блоков обработки, такими как данные о рабочем состоянии противоположного блока обработки.
В варианте выполнения эти средства связи выполнены с возможностью установления первой цифровой двухсторонней линии связи 3 и второй цифровой двухсторонней линии связи 4 между первым блоком 1 обработки и вторым блоком 2 обработки. Такая система не содержит никакой дискретной связи между двумя блоками обработки, что позволяет ограничить сложность ее проводки и вероятность отказа одной из связей.
Вторая линия связи 4 является избыточной с первой линией связи 3, чтобы обеспечивать связь между двумя блоками обработки в случае отказа первой линии связи 3 и наоборот. С точки зрения обмена информацией между двумя блоками обработки такая избыточность обеспечивает высокий уровень надежности.
Кроме того, указанные первая и вторая линии связи могут быть одновременно активными. Таким образом, в отличие от систем, в которых избыточную линию связи используют только в случае отказа первой линии связи, система управления полетом может использовать первую линию связи 3 и вторую линию связи 4 одновременно при нормальной работе, то есть в случае отсутствия отказа одной из двух линий связи, и может использовать сосуществование этих двух линий связи, чтобы проверять отсутствие искажения данных, обмениваемых между двумя блоками обработки.
Первый и второй блоки обработки 1 и 2 могут использовать протокол для связи между собой через две линии связи 3 и 4, например, среди протоколов Ethernet EIEEE 802.3, HDLC, SDLC, или любой другой протокол, имеющий функцию обнаружения или исправления ошибки. В частности, линия связи Ethernet обеспечивает отличные характеристики, высокую надежность по отношению к окружающей среде, в частности, с точки зрения стойкости к действию молнии и электромагнитной совместимости (“CEM”), и высокую функциональную надежность, благодаря применению механизмов контроля целостности данных и контроля потоков. Кроме того, протокол Ethernet является промышленным стандартом, совместимым с технологиями связи в рамках авионики, такими как AFDX (“Avionics Full DupleX switched Ethernet) или μAFDX, и с технологиями обслуживания.
Первая и вторая линии связи могут быть линиями CCDL (“Cross Channel Data Link”). Такая линия связи позволяет синхронизировать каждое приложение с точностью до ста микросекунд. Такая линия связи позволяет также, вместо обмена дискретными сообщениями, как в известных системах, осуществлять обмен данными исправности, формируемыми аппаратными средствами (“hardware”) или программными средствами (“software”), данными, необходимыми для системы (измерение, статус…), и функциональными данными эксплуатационной системы (OS) или прикладной системы (AS).
Такие линии связи CCDL между двумя блоками обработки А и В показаны на фиг.2. Каждый блок 1, 2 обработки содержит систему 5а, 5b, имеющую первый модуль CCDL (CCDLА) 6а, 6b для установления первой линии связи CCDL 3 и второй модуль CCDL (CCDLВ) 7а, 7b для установления второй линии связи CCDL 4. Такая система может быть однокристальной системой (SoC, “system on a chip”) или может представлять собой микропроцессор и периферийные средства, установленные в отдельных корпусах или в карте FPGA. Каждый модуль CCDL соединен с входным/выходным интерфейсом в своем корпусе через физический слой. Такой слой может, например, содержать материальный интерфейс Phy 8a, 8b, 8c, 8d и трансформатор 9a, 9b, 9c, 9d, как показано на фиг. 2.
Как показано на фиг. 3, модули CCDL каждого блока обработки могут быть физически разделены, будучи расположенными на системе 5а, 5b в разных местах, удаленных друг от друга, например, каждый расположен в углу однокристальной системы. Это позволяет уменьшить вероятность общей неисправности в случае изменения типа SEU (“Single Event Upset”) или MBU (“Multiple Bit Upset”).
Согласно первому варианту, каждая система 5a, 5b получает питание от отдельного источника питания. Согласно второму варианту, система содержит источник питания 15 (“power supply”), общий для всей однокристальной системы. Каждая однокристальная система может питаться при помощи двух разных синхронизирующих сигналов 11 и 12, как показано на фиг. 4. Таким образом, хотя их питание и не является независимым, модули CCDL каждого блока обработки могут питаться от независимых тактовых синхронизаторов, что усиливает стойкость однокристальной системы к неисправностям, поскольку неисправность тактового синхронизатора одного из модулей CCDL не может повлиять на другой модуль CCDL.
Модули CCDL каждого блока обработки могут быть синхронизированы при помощи локального синхронизирующего механизма в реальном времени (HTR или RTC “Real time clock”) 10a, 10b, как показано на фиг. 2, и механизма синхронизации, такого как механизм с синхронизирующим окном. Таким образом, в случае потери синхронизации каждый блок обработки работает, благодаря своему локальному тактовому синхронизатору, затем опять синхронизируется при получении надлежащего сигнала. Локальный синхронизирующий механизм можно запрограммировать при помощи приложения, и его программирование защищено от изменений типа SEU (“Single Event Upset”) или MBU (“Multiple Bit Upset”). Вместе с тем, линии связи CCDL могут работать даже в отсутствие синхронизации или в случае потери тактового синхронизатора.
Система может также содержать аварийные средства связи, позволяющие обеспечивать обмены данными между первым и вторым блоками обработки и используемые только в случае отказов первой и второй линий связи, чтобы избегать прерывания связи между блоками обработки.
В первом варианте выполнения, представленном на фиг. 1, эти аварийные средства связи могут содержать сеть датчиков или приводов 13. Такая сеть датчиков или приводов может быть, например, сетью умных датчиков или приводов (“smart sensor, smart actuator”). Каждый блок обработки можно подключить к этой сети 13 через шину типа RS-485, позволяющую передавать информацию не в аналоговом, а в цифровом виде.
Во втором варианте выполнения, представленном на фиг. 1, эти аварийные средства связи содержат бортовую защищенную сеть 14 для авионики. Такая защищенная бортовая сеть может быть, например, избыточной сетью Ethernet, такой как AFDX (“Avionics Full DupleX switched Ethernet”) или μAFDX. Такая сеть обеспечивает средства общего использования ресурсов, разделения потоков, а также детерминизм и доступность, необходимые для авиационной сертификации.
Поскольку цифровые сигналы, передаваемые между блоками обработки, могут быть чувствительными к помехам, можно установить механизмы контроля целостности и контроля когерентности данных, передаваемых между двумя удаленными блоками обработки.
Так, каждый блок обработки может содержать средства проверки целостности получаемых данных.
Чтобы проверить целостность полученных данных, можно проверить различные поля каждого принятого фрейма, в частности, в случае линии связи Ethernet, - поля, относящиеся к адресу получателя, к адресу источника, к типу и к длине фрейма, к данным МАС и к вставным данным. Фрейм можно считать некорректным, если длина этого фрейма не соответствует длине, указанной в поле длины фрейма, или если байты не являются целыми числами. Фрейм можно также считать некорректным, если контроль избыточности (CRC, “Cyclic Redundancy Check”), производимый вычислением при получении фрейма, не соответствует принятому CRC по причине ошибок, связанных, например, с помехами во время передачи.
Кроме того, если локальный блок обработки и противоположный блок обработки соединены через две двухсторонние линии связи, каждый блок обработки после передачи одной данной одновременно по первой линии связи и по второй линии связи может содержать средства для проверки когерентности данных, принятых по двум линиям связи, которые должны переносить одну и ту же информацию в отсутствие неисправности или искажения передаваемых фреймов, и для определения реально переданной данной. Если данные, принятые по двум линиям связи, не являются когерентными, блок обработки может осуществить этап консолидации, в ходе которого реально переданную данную определяют на основании данных, полученных по меньшей мере в двух последовательных фреймах, возможно, в трех фреймах. Такую консолидацию можно осуществить, удлинив период времени, который разделяет получение двух последовательных пакетов данных Ethernet, например, зафиксировав продолжительность этого периода времени в большем значении, чем продолжительность электромагнитной помехи. Это позволяет, например, избегать нарушения целостности передаваемых избыточно двух пакетов Ethernet.
Каждый из блоков обработки системы управления полетом может находиться в одном из следующих состояний, как показано на графике состояний на фиг. 5:
- активное состояние (“ACTIVE”) 15, в котором блок обработки обеспечивает управление двигателем летательного аппарата,
- пассивное состояние (“PASSIVE”) 16, в котором блок обработки не обеспечивает управление двигателем летательного аппарата, но выполняет другие функции, например, диагностику, и может сообщаться с другим блоком обработки системы управления,
- состояние возвращения к нулю (“RESET”) 17, в котором блок обработки является неактивным и не выполняет никакой функции,
- подчиненное состояние (“SLAVE”) 18, в котором блок обработки уступает другому блоку обработки управление своими приводами для управления двигателем летательного аппарата.
Чтобы каждый блок обработки имел полную картину общей системы, включая приводы и датчики, соединенные с противоположным блоком обработки, для правильного обеспечения управления двигателем, несмотря на отказ локального привода, способ переключения, осуществляемый локальным блоком обработки, содержит следующие этапы:
- в противоположный блок обработки передают данные измерений, относящиеся по меньшей мере к одному локальному датчику, и данные привода, относящиеся по меньшей мере к одному локальному приводу,
- от противоположного блока обработки получают данные измерений, относящиеся по меньшей мере к одному противоположному датчику, и данные привода, относящиеся по меньшей мере к одному противоположному приводу.
Такие данные измерений, относящиеся к датчику, могут включать в себя, например, в случае температурных датчиков, измеряемую датчиком температуру.
Кроме того, чтобы локальный блок 1 обработки мог поменять свое состояние на одно из вышеупомянутых четырех состояний, способ переключения содержит следующие этапы:
- получают данную исправности, такую как статус, относящуюся к рабочему состоянию противоположного блока 2 обработки и называемую противоположной данной исправности,
- определяют данную исправности, относящуюся к исправности указанного локального блока 1 обработки и называемую локальной данной исправности,
- указанный локальный блок 1 обработки переключают из первого состояния во второе состояние в зависимости от указанной полученной противоположной данной исправности и от указанной определенной локальной данной исправности, при этом указанные первое и второе состояния являются состояниями среди вышеупомянутых активного состояния, пассивного состояния, состояния возвращения к нулю и подчиненного состояния.
Указанные этапы передачи, получения данных измерения и получения данной исправности осуществляют посредством линий связи 3, 4, соединяющих оба блока обработки, или посредством аварийных средств 13, 14 связи в случае неисправности линий связи 3, 4.
Поскольку принимаемая противоположная данная неисправности может подвергаться искажениям, этап получения данной исправности может содержать этап проверки целостности полученной данной.
Кроме того, можно также применять механизмы проверки когерентности, при этом противоположную данную исправности можно передавать избыточно по двум двухсторонним линиям связи. В этом случае этап получения противоположной данной исправности содержит этап получения первой противоположной данной исправности по первой линии связи и второй противоположной данной исправности по второй линии связи, этап проверки когерентности указанных полученных первой и второй данных исправности и этап определения указанной переданной противоположной данной исправности в зависимости от указанного этапа проверки. В варианте первая противоположная данная исправности, полученная по первой линии связи, и вторая противоположная данная исправности, полученная по второй линии связи, могут стать объектом проверки целостности до проверки их когерентности.
В случае несогласованности данных, полученных по двум линиям связи, локальный блок обработки может проигнорировать эту данную исправности и подождать передачу новой противоположной данной исправности. В случае получения несогласованных данных по двум линиям связи во время двух или более последовательных передач локальный блок обработки может консервативно выбрать в качестве противоположной данной исправности полученную данную, указывающую на самое плохое рабочее состояние противоположного блока обработки, если данные, полученные во время первой передачи, идентичны данным, полученным во время последующих передач. В противном случае сохраняют последнюю полученную данную исправности, пока не поступает никакая новая когерентная данная исправности.
Чтобы определить локальную или противоположную данную исправности, соответствующий блок обработки осуществляет диагностику рабочего состояния в отношении аппаратных или программных элементов. Такую диагностику можно получить на основании информации, получаемой от различных средств мониторинга (“monitoring”) или от нескольких регистров. Например, один регистр позволяет получить рабочее состояние аппаратных средств блока обработки, а другой регистр позволяет получить рабочее состояние программы блока обработки.
Таким образом, данные исправности, определенные локально или переданные противоположным блоком обработки, являются данными, позволяющими выбрать канал и осуществить полную диагностику системы. В частности, они могут быть данными диагностики CCDL, данными статуса эксплуатационной системы или приложений, данными диагностики оборудования, в частности, датчиков или приводов, данными функциональной диагностики, осуществляемой программой, и т.д.
На основании локальной или противоположной данной исправности локальный блок обработки может определить данную состояния, указывающую на активное состояние, пассивное состояние, подчиненное состояние или возвращение к нулю, в котором находится соответствующий локальный или противоположный блок обработки, и данную статуса исправности, относящуюся к способности локального или противоположного блока обработки обеспечивать управление двигателем.
Согласно варианту выполнения, каждый блок обработки может иметь статус исправности среди следующих четырех статусов:
- статус “GOOD” («хороший»), в котором блок обработки не имеет никакой неисправности,
- статус “ACCEPTABLE” («приемлемый»), в котором блок обработки имеет некоторые неисправности, которые, тем не менее, не мешают ему правильно обеспечивать управление двигателем, например, поломка трансформатора линии связи CCDL или потеря синхронизирующего сигнала только одной линии связи CCDL,
- статус “SLAVE” («подчиненный»), в котором блок обработки имеет слишком серьезные неисправности, чтобы правильно обеспечивать управление двигателем, например, поломка процессора, но не имеет неисправности оборудования, которые помешали бы ему управлять своими приводами или сообщаться с противоположным блоком обработки,
- статус “BAD” («плохой»), в котором блок обработки не может правильно обеспечивать управление двигателем и имеет по меньшей мере одну неисправность оборудования, не позволяющая блоку обработки управлять его приводами, например, неисправность источника питания или тактового синхронизатора, влияющая на весь блок обработки, или потеря обеих линий связи CCDL.
Через равномерные интервалы времени локальный блок обработки осуществляет описанные выше этапы получения противоположной данной исправности и определения локальной данной исправности. Чтобы определить, следует ли ему поменять состояние, локальный блок обработки определяет на основании локальной данной исправности локальную данную состояния, показывающую его состояние, и локальную данную статуса, показывающую его статус исправности. Точно так же, локальный блок обработки определяет на основании противоположной данной исправности противоположную данную состояния, показывающую состояние противоположного блока обработки, и противоположную данную статуса, показывающую статус исправности противоположного блока обработки.
Затем локальный блок обработки осуществляет сравнение своего рабочего состояния, указанного локальной данной статуса, с рабочим состоянием противоположного блока обработки, указанного противоположной данной статуса.
Если локальный блок обработки находится в активном состоянии и если его рабочее состояние остается лучше рабочего состояния другого блока обработки (CTL_REQ=1), блок обработки остается в активном состоянии и продолжает обеспечивать управление двигателем.
Например, рабочее состояние локального блока обработки лучше рабочего состояния противоположного блока обработки, когда:
- локальный блок обработки имеет статус GOOD, и противоположный блок обработки имеет статус среди статусов ACCEPTABLE, SLAVE и BAD,
- локальный блок обработки имеет статус ACCEPTABLE, и противоположный блок обработки имеет статус среди статусов SLAVE и BAD.
Если локальный блок обработки находится в активном состоянии, и рабочее состояние противоположного блока обработки становится хуже, чем рабочее состояние другого блока обработки (CTL_REQ=0), локальный блок обработки переключается в пассивное состояние и прекращает обеспечивать управление двигателем, которое в этом случае обеспечивает противоположный блок обработки.
Например, рабочее состояние локального блока обработки хуже рабочего состояния противоположного блока обработки, когда:
- локальный блок обработки имеет статус ACCEPTABLE, и противоположный блок обработки имеет статус GOOD, или
- локальный блок обработки имеет статус SLAVE, и противоположный блок обработки имеет статус среди статусов GOOD и ACCEPTABLE, или
- локальный блок обработки имеет статус BAD, и противоположный блок обработки имеет статус среди статусов GOOD и ACCEPTABLE.
Если локальный блок обработки находится в пассивном состоянии, и его рабочее состояние остается хуже, чем у противоположного блока обработки (CTL_REQ=0), блок обработки остается в пассивном состоянии.
Если локальный блок обработки находится в пассивном состоянии, и его рабочее состояние остается лучше, чем у противоположного блока обработки (CTL_REQ=1), локальный блок обработки переходит в активное состояние для обеспечения управления двигателем вместо противоположного блока обработки. Переключение из пассивного состояния в активное состояние может происходить через состояние выжидания 19, в котором локальный блок обработки ожидает, пока противоположный блок обработки перейдет в пассивное состояние (OPP_CH_STATE=0), прежде чем перейти в активное состояние и взять на себя управление двигателем. Это позволяет системе избежать ситуации, в которой оба блока обработки могут быть активными одновременно и могут передавать противоречивые команды на свои приводы. Блок обработки может оставаться в таком состоянии выжидания 19, пока противоположный блок обработки является активным (OPP_CH_STATE=1). Из этого состояния локальный блок обработки может даже вернуться в пассивное состояние, если рабочее состояние противоположного блока обработки опять стало лучше рабочего состояния локального блока обработки (CTL_REQ=0), когда последний еще не перешел в активное состояние.
Если локальный блок обработки находится в пассивном состоянии и если локальная данная статуса показывает, что блок обработки имеет статус исправности “SLAVE” (Remote Req=1), локальный блок обработки может переключиться в описанное выше подчиненное состояние. Согласно варианту, переключение в подчиненное состояние обусловлено также получением сигнала запроса доступа к приводам локального блока обработки от противоположного блока обработки. В подчиненном состоянии блок обработки может вернуться в пассивное состояние, если локальная данная статуса больше не показывает, что блок обработки имеет статус исправности “SLAVE” (Remote Req=0).
Если локальная данная статуса показывает статус исправности “BAD”, блок обработки переходит в состояние возвращения к нулю, независимо от своего текущего состояния. После успешного сброса на ноль (HRESET_N rising edge) блок обработки опять может перейти в пассивное состояние.
В случае, если локальный блок обработки и противоположный блок обработки имеют одинаковый статус исправности GOOD или ACCEPTABLE, каждый блок обработки может, согласно первому варианту, оставаться в своем текущем состоянии, активном или пассивном. Согласно второму варианту, можно предусмотреть передачу управления двигателем блоку обработки по умолчанию, например, первому блоку 1 обработки, и в этом случае оба блока обработки остаются в своем текущем состоянии, если блок обработки по умолчанию уже находится в активном состоянии, или переходят из активного в пассивное состояние и наоборот, если блок обработки по умолчанию ранее находился в пассивном состоянии.
Блок обработки может перейти из статуса ACCEPTABLE в статус GOOD, если он восстановил функции, которые ранее потерял, но блок обработки, имеющий статус SLAVE или BAD, не может перейти в статус ACCEPTABLE или GOOD, кроме как из состояния возвращения к нулю.
Таким образом, активный канал системы управления может перейти в состояние, позволяющее ему предоставить свои приводы в распоряжение активного канала, который находится в лучшем рабочем состоянии, чтобы система управления полетом могла продолжать обеспечивать управление двигателем летательного аппарата, несмотря на неисправность, влияющую на способность активного канала управлять своими собственными приводами.