Моделирование интерфейсного модуля полезной нагрузки

Описание:
Доступные действия
Введите защитный код для скачивания файла и нажмите "Скачать файл"
Защитный код
Введите защитный код

Нажмите на изображение для генерации защитного кода

Текст:

Министерство образования и науки Российской Федерации

(МИНОБРНАУКИ РОССИИ)

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ (ТГУ)

Физико-технический факультет

Кафедра «Промышленные космические системы»

КУРСОВАЯ РАБОТА

«Моделирование интерфейсного модуля полезной нагрузки»

Всего листов 49

РУКОВОДИТЕЛЬ:

Главный специалист отдела 12/612

_____________ А.В. Корольков

«____» ____________ 2016 г.

ВЫПОЛНИЛ:

Студент группы №10510

____________ В.А. Толкушкин

«____» ____________ 2016 г

г. Томск.

2016 год

СОДЕРЖАНИЕ

ЦЕЛЬ РАБОТЫ.. 4

ВВЕДЕНИЕ. 5

1. Изучение реализаций интерфейсного модуля полезной нагрузки. 6

1.1 Реализация PLDIU1553-1 YAMAL401. 6

1.2 Реализация PLDIU1553 YAMAL601. 6

2. Анализ полезной нагрузки Ка диапазона КА «Ямал 601». 8

2.1 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через команды и телеметрические матрицы.. 8

2.2 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через нематричную телеметрию.. 8

2.2 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через OBDH шину данных. 8

3. Анализ параметров и состояний усилителей мощности (ЛБВ – лампы бегущей волны) полезной нагрузки Ка диапазона. 10

3.1 OBDH Получение телеметрии. 10

4. Определение функционалов контроллера шины и монитора шины, удаленных контроллеров. 11

4.1 Блоки управления PLDIU.. 12

4.2 Режимы функционирования PLDIU.. 16

4.3 Режим PLDIU «Выключен». 17

4.4 Режим PLDIU «Инициализация». 18

4.5 Режим PLDIU «Функционирование». 19

4.6 Режим PLDIU «Ожидание». 20

5. Описание взаимодействия контроллера шины и монитора шины, удаленных контроллеров. 21

5.1 Описание плат PLDIU.. 24

5.2 Действие команд аварийного отключения (ОН1 и ОН2) ПН.. 29

6. Разработка исходных данных состояния удаленных контроллеров. 31

6.1 Базовый каркас приложения. 31

6.2 Настройка контроллера шины (КШ) 33

6.3 Настройка оконечных устройств (ОУ) 35

6.4 Настройка монитора шины (МШ) 35

6.5 Общая информация о времени выполнения. 36

7. Разработка алгоритмов мониторинга и управления удаленными контроллерами  37

7.1 Моделирование КШ: незапланированных сообщений. 37

7.2 Моделирование КШ: запланированные сообщения. 38

7.3 Моделирование ОУ.. 41

7.4 Широковещательный режим ОУ.. 42

7.5 Алгоритм мониторинга шины.. 42

7.6 Теневой монитор. 43

7.7 Последовательный монитор. 43

8. Создание математической модели интерфейсного модуля полезной нагрузки  46

ЗАКЛЮЧЕНИЕ. 48

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ.. 49


ЦЕЛЬ РАБОТЫ

         Целью работы является разработка и создание математической модели интерфейсного модуля полезной нагрузки спутников связи на примере КА «Ямал-601». Изучение полезной нагрузки и выбор модели полезной нагрузки. Разработка физической модели интерфейсного модуля полезной нагрузки.


ВВЕДЕНИЕ

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

         КШ должен выполнять следующие основные функции: передавать команды в магистраль, участвовать в пересылке СД, принимать и контролировать ответную информацию о состоянии ОУ и абонентов.

ОУ должно выполнять следующие основные функции: проводить проверку достоверности КС, поступающих к нему от КШ. Если КС не удовлетворяет указанным требованиям, то ОУ должно определить его как недостоверное. Никакая кодовая комбинация адресных разрядов в поле «Адрес ОУ», никакое значение разряда признака «Прием/передача», никакая кодовая комбинация в поле «Подадрес/Режим управления» и в поле «Число СД/Код КУ» в КС не должны приводить к передаче ОУ недостоверных сообщений. ОУ должно отвечать достоверным сообщением на достоверное КС.

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

         Магистральный последовательный интерфейс (мультиплексный канал передачи данных): совокупность технических средств и правил, обеспечивающих обмен информацией между абонентами интерфейса последовательным кодом по общей информационной магистрали.

         Полезная нагрузка космического аппарата или полезный груз космического аппарата — это количество, тип или масса полезного оборудования, ради которого создается или запускается данный космический аппарат. В технической литературе обычно используются сокращения этого термина: «ПГ» (полезный груз) или «ПН» (полезная нагрузка).

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


1. Изучение реализаций интерфейсного модуля полезной нагрузки

1.1 Реализация PLDIU1553-1 YAMAL401

         На ЯМАЛ 401есть два модуля полезной нагрузки PLDIU1553, со схожим составом.  Они немного отличаются, но оба обеспечивают интерфейсы телеметрии, команд и распределения мощности между платформой и блоками полезной нагрузки.

         YAMAL401 PLDIU 1553-1 интерфейсный модуль отвечает за:

• распространение и сбор данных оборудования полезной нагрузки, всех команд и данных мониторинга, требуемые системой для правильной работы полезной нагрузки оборудования под управлением платформы главного компьютера, через шину MIL1553

• сбор температур полезной нагрузки

• распределение основной мощности к ретранслятору высокой мощности и на блоки питания, включая защиту по току телеметрией и защиту предохранителем

• распределение мощности для полезной нагрузки в линии нагревательного устройства через электронные предохранители, и способность включения/выключения с помощью твердотельных ключей и тока телеметрии (под контролем главного компьютера космического аппарата)

• срабатывание антенных двигателей и датчиков положения интерфейса

         Что касается платформы интерфейса, то PLDIU 1553-1 обеспечивает ОУ (оконечные устройства) интерфейсом шины Mil-Std-1553B, несущим все сообщения телеметрии и команд между платформой и блоками полезной нагрузки.

1.2 Реализация PLDIU1553 YAMAL601

         Интерфейсный модуль PLDIU1553 YAMAL601 отвечает за:

• распространение и сбор данных оборудования полезной нагрузки, всех команд и данных мониторинга, требуемые системой для правильной работы полезной нагрузки оборудования под управлением платформы главного компьютера, через шину MIL1553

• сбор температур полезной нагрузки

• распределение основной мощности к ретранслятору высокой мощности, включая защиту предохранителем

• распределение основной мощности на блоки питания, включая защиту предохранителем

• распределение мощности в линию нагревателей космического аппарата под контролем главного компьютера

• срабатывание пироболтов платформы антенны под управлением главного компьютера, через шину MIL1553

• телеметрию,  двигательные команды, связанные с положением антенны

• подключение автономных подогревателей антенны к распределительной плате основной мощности

         Что касается платформы интерфейса, то PLDIU1553 обеспечивает ОУ (оконечные устройства) интерфейсом шины Mil-Std-1553B, несущим все сообщения телеметрии и команд между платформой и блоками полезной нагрузки.

         Данная спецификация PLDIU1553 применима как для Северной и Южной части YAMAL601. Принимая во внимание, что команды платы  двигателя антенны, платы пироболтов антенны,  платы нагревателя и  распределения электроэнергии - будут осуществляться только в одном блоке (север или юг).

2. Анализ полезной нагрузки Ка диапазона КА «Ямал 601»

         Блок полезной нагрузки делится на две отдельные части:

• Северная панель PLDIU 1553-1 реализована на северной панели

• Южная панели PLDIU 1553-2 реализована на южной панели

2.1 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через команды и телеметрические матрицы

         PLDIU1553 должен быть в состоянии генерировать команды низкого или высокого уровня:

• до 383 матриц команд для северной PLDIU

• до 383 матриц команд для южного PLDIU

         Максимальная скорость для команд приема/передачи составляет менее 1 команды за 1,5 секунды (TBC).

         Каждый PLDIU1553 должен быть в состоянии получить до 640 цифровых сигналов телеметрии.

2.2 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через нематричную телеметрию

         Каждый PLDIU1553 должен быть в состоянии получить:

• до 32 аналоговых сигналов телеметрии

• до 64 цифровых сигналов телеметрии

2.2 Блок полезной нагрузки TM/TC (Телеметрии/Телеметрических Команд) реализованный через OBDH шину данных

         Каждый PLDIU1553 должен позволять взаимодействовать с 60 единицами специализированных полезных нагрузок (30 максимум на шине).

         PLDIU1553 должен генерировать два физических набора OBDH шины данных (номинальный + резервированный) каждая шина должна быть в состоянии управлять  ОУ (оконечным устройством) с максимальной длиной шины 30 метров.

         Блоки полезной нагрузки OBDH могут быть расположены на любой из двух шин, в зависимости от расположения панели.

         PLDIU1553 передает все полученные команды на шине 1553 к шине данных OBDH, без какой-либо проверки их содержания.

         Только изменение формата должно быть выполнено до начала передачи на шину данных OBDH.   Команды, полученные на шине 1553 будут содержать адрес удаленного OBDH и подробное содержание команды, передаваемой на шину OBDH.

         Все команды, необходимые полезной нагрузке, даже те, которые необходимы для определения адреса оконечного устройства RUBI, будут отправлены в PLDIU1553 из ОВС (боковой платформы) через шину данных 1553.

         Общий набор команд, которые будут посланы через PLDIU1553 в специальный блок полезной нагрузки приведены ниже:

         Для всех устройств с RUBI:

• команда OBDH ОУ адрес загрузки (примечание: когда эта команда получена  на шине 1553, PLDIU1553 направляет автономно все команды необходимых для инициализации оконечного устройства RUBI);

• внутренние флаги RUBI сбрасывают команды.

         Для блоков LDLA:

• установка уровня FCA;

• установка уровня GCA;

• настройка уровня SCA;

• команда выбора режима FGM;

• команды выбора ALC режима;

• гашение команды RF ВКЛ;

• гашение команды RF ВЫКЛ.

         Ни одна команда от земли не должна быть заблокирована программным обеспечением PLDIU.


3. Анализ параметров и состояний усилителей мощности (ЛБВ – лампы бегущей волны) полезной нагрузки Ка диапазона

3.1 OBDH Получение телеметрии

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

Для каждого из блоков, этот определенный набор телеметрии для блоков LDLA должен состоять из:

 Функция

Тип телеметрии

Длина (бит)

.FGM/ALC статус (LDLA режим)

OBDH через RUBI 

1 bit of Word 2

RF BLANKING статус

OBDH через RUBI 

1 bit of Word 5

FCA состояние

OBDH через RUBI 

7 bits of Word 2

GCA состояние

OBDH через RUBI 

7 bits of Word 4

RF выходная мощность (FGM)

OBDH через RUBI 

10 (*)

Команда внешнего интерфейса аттенюатора на напряжение (ALC)

OBDH через RUBI 

10 (*)

SCA состояние

OBDH через RUBI 

7 bits of Word 5

Helix ток (от ЛБВ)

OBDH через RUBI 

10 (*)

Анодное напряжение  (от ЛБВ)

OBDH через RUBI 

10 (*)

Состояние автоматической перезагрузки (от ЛБВ)

OBDHчерез RUBI (если EPCсовместим)

1

Состояние возникновения   автоматического перезапуска (от ЛБВ)

OBDHчерез RUBI (если EPCсовместим)

1

Потребление ЛБВ (от ЛБВ)

OBDH через RUBI 

10 (*)

         (*) Для аналоговой телеметрии, только 8 бит MSB должны быть переданы на шине 1553.

4. Определение функционалов контроллера шины и монитора шины, удаленных контроллеров

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

         КШ должен выполнять следующие основные функции: передавать команды в магистраль, участвовать в пересылке СД, принимать и контролировать ответную информацию о состоянии ОУ и абонентов.

ОУ должно выполнять следующие основные функции: проводить проверку достоверности КС, поступающих к нему от КШ. Если КС не удовлетворяет указанным требованиям, то ОУ должно определить его как недостоверное. Никакая кодовая комбинация адресных разрядов в поле «Адрес ОУ», никакое значение разряда признака «Прием/передача», никакая кодовая комбинация в поле «Подадрес/Режим управления» и в поле «Число СД/Код КУ» в КС не должны приводить к передаче ОУ недостоверных сообщений. ОУ должно отвечать достоверным сообщением на достоверное КС.

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


4.1 Блоки управления PLDIU

         В состав БРК КА «Ямал-401» входят два блока управления и телеметрического контроля PLDIU-1 и PLDIU-2, установленные на Северной и Южной панелях соответственно.

         PLDIU-1 состоит из девяти типовых плат:

- две платы CVIU (вторичный источник питания PLDIU);

- две платы RT1553_EN (шина передачи данных 1553);

- плата BUSTMA (шина передачи данных RUBI и сбора ТМ с УМ);

- плата HPDP (распределение питания 100 В к оборудованию БРК);

- плата MAP (импульсные команды и сбор дискретной ТМ);

- плата DHP (управление нагревателями и сбор температурной ТМ);

- плата 8MOTP (контроль раскрытия антенн БРК).

         PLDIU-2 состоит из восьми типовых плат:

- две платы CVIU (вторичный источник питания PLDIU);

- две платы RT1553_EN(шина передачи данных 1553);

- плата BUSTMA (шина передачи данных RUBI и сбора ТМ с УМ);

- плата HPDP (распределение питания 100 В к оборудованию БРК);

- плата MAP (импульсные команды и сбор дискретной ТМ);

- плата PYPGP (контроль 37 линий пироподрыва).

         Каждая плата PLDIU (кроме плат RT1553_EN) состоит из основной и резервной части, т.е. имеет холодное резервирование.

         Для управления БРК необходимо включить оба PLDIU, т.к. каждый БУ управляет строго определенными приборами, расположенными на различных панелях КА. Не допускается одновременно включать основной и резервный комплект блока управления.

         Внешний вид блоков управления представлен на рисунках 4.1 и 4.2.

Рисунок 4.1 – Блок управления PLDIU-1

Рисунок 4.2 – Блок управления PLDIU-2

         На рисунках 4.3 и 4.4 представлены функциональные схемы для PLDIU-1 и для PLDIU-2 соответственно.

Рисунок 4.3 - Функциональная схема блока управления PLDIU-1

Рисунок 4.4 - Функциональная схема блока управления PLDIU-2


4.2 Режимы функционирования PLDIU

         Для PLDIU доступны четыре различных функциональных режима, которые показаны на рисунке 4.5.

Рисунок 4.5 – Режимы функционирования PLDIU


4.3 Режим PLDIU «Выключен»

         В режиме «Выключен» PLDIU находится в выключенном состоянии, все функции по управлению и сбору ТМ с оборудования БРК недоступны. В таблице 4.1 рассмотрен режим функционирования PLDIU «Выключен».

Таблица 4.1 - Режим PLDIU «Выключен»

Режим

Особенности режима

Описание режима

PLDIU выключен, на внутренние платы не подается питание

Воздействия для перехода в режим

- При получении следующих прямых команд с Платформы: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»;

- при падении напряжения питания на шине 100 В. PLDIU выключится при падении напряжения в диапазоне от 82 до 85 В

Команды для выхода из режима

Для выхода из режима «Выключен» необходимо подать прямые команды с

Платформы:

«PLDIU_Основной_ВКЛ» или «PLDIU_Резервный _ВКЛ»

Контролируемая телеметрия

- PLDIU_Основной_Температура;

- PLDIU_Основной_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Основной_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Основной_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Резервный_Температура;

- PLDIU_Резервный_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Резервный_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Резервный_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Основной_Контроль ошибки;

- PLDIU_Резервный_Контроль ошибки

Примечание – Распределение напряжения питания 100 В на оборудование БРК

осуществляется всегда и не зависит от режима функционирования PLDIU.


4.4 Режим PLDIU «Инициализация»

         PLDIU переходит в режим «Инициализация» после включения вторичного источника питания CVIU. Напряжение питания поступает на плату RT1553_EN и начинается загрузка внутренних подпрограмм PLDIU из постоянной памяти, проходят самопроверки. Инициализация длится 30 секунд и по еѐ завершении блок управления PLDIU готов к приему и обработке кодовых команд управления по шине 1553. В таблице 4.2 рассмотрен режим функционирования PLDIU «Инициализация».

Таблица 4.2 - Режим PLDIU «Инициализация»

Режим

Особенности режима

Описание режима

Это переходный режим, который начинается после получения прямой команды на включение PLDIU. Во время режима плата RT1553_EN производит полную последовательность инициализации, включая внутреннее тестирование

Воздействия для перехода в режим

При получении следующих прямых команд с Платформы: «PLDIU_Основной_ВКЛ» или «PLDIU_Резервный _ВКЛ»

Команды для выхода из режима

Для выхода из режима необходимо подать прямые команды с Платформы: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»

Контролируемая телеметрия

- PLDIU_Основной_Температура;

- PLDIU_Основной_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Основной_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Основной_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Резервный_Температура;

- PLDIU_Резервный_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Резервный_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Резервный_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Основной_Контроль ошибки;

- PLDIU_Резервный_Контроль ошибки

Выход из режима

- По окончании фазы и если не обнаружено ошибок ПО PLDIU переходит автоматически в режим «Функционирование»;

- поданы команды на выключение: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»;

- при падении напряжения питания на шине 100 В. PLDIU выключится при падении напряжения в диапазоне от 82 до 85 В

Примечания

1 Распределение напряжения питания 100 В на оборудование БРК осуществляется всегда и не зависит от режима функционирования PLDIU.

2 Основная (резервная) плата BUSTMA включится сразу, как только будет подана команда на включение основного (резервного) PLDIU.


4.5 Режим PLDIU «Функционирование»

         PLDIU принимает и обрабатывает команды управления полезной нагрузкой, производит сбор и хранение телеметрии во внутренней памяти и предоставляет телеметрию Платформе по запросу. В таблице 4.3 рассмотрен режим функционирования PLDIU «Функционирование».

Таблица 4.3 - Режим PLDIU «Функционирование»

Режим

Особенности режима

Описание режима

Доступны следующие функции:

- выполнение всех команд поступающих по шине 1553;

- сбор ТМ с оборудования БРК в пакетном и одиночном режиме;

- предоставление ТМ данных по запросу платформы

Воздействия для перехода в режим

PLDIU переходит в режим «Функционирование» автоматически по окончании инициализации

Доступные для исполнения команды

- Для выхода из режима необходимо подать прямые команды с платформы: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»;

- доступны все кодовые команды управления по шине 1553

Контролируемая телеметрия

- PLDIU_Основной_Температура;

- PLDIU_Основной_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Основной_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Основной_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Резервный_Температура;

- PLDIU_Резервный_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Резервный_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Резервный_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Основной_Контроль ошибки;

- PLDIU_Резервный_Контроль ошибки

- вся ТМ БРК доступна в этом режиме

Выход из режима

- при подаче прямой команды на выключение: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ» (перед этим должны быть отключены внутренние платы PLDIU с помощью соответствующих команд по шине 1553); - произошел сбой в ПО (ТМ «Контроль ошибки») после чего PLDIU переходит в режим «Ожидание»;

- при падении напряжения питания на шине 100 В. PLDIU выключится при падении напряжения в диапазоне от 82 до 85 В

Примечание – Распределение напряжения питания 100 В на оборудование БРК осуществляется всегда и не зависит от режима функционирования PLDIU.


4.6 Режим PLDIU «Ожидание»

         В режим ожидания PLDIU переходит при обнаружении ошибки в выполнении внутреннего ПО. Переход в режим ожидания возможен как из режима «Функционирование» так и из режима «Инициализация». В режиме «Ожидание» PLDIU не способен выполнять никаких других задач, кроме предоставления минимальной телеметрии. В таблице 4.4 рассмотрен режим функционирования PLDIU «Ожидание».

Таблица 4.4 - Режим PLDIU «Ожидание»

Режим

Особенности режима

Описание режима

БУ PLDIU находится в «безопасном» режиме. Переход в этот режим происходит при обнаружении несоответствий во внутреннем ПО. В этом режиме PLDIU не выполняет никаких задач, кроме сбора минимальной ТМ

Воздействия для перехода в режим

При обнаружении внутреннего сбоя работы ПО, со срабатыванием прямой телеметрии БРК «Контроль ошибки»

Доступные для исполнения команды

- Для выхода из режима необходимо подать прямые команды с платформы: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»;

- передача сообщений по шине 1553 (доступ к подадресам для сбора ТМ)

Контролируемая телеметрия

- PLDIU_Основной_Температура;

- PLDIU_Основной_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Основной_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Основной_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Резервный_Температура;

- PLDIU_Резервный_Состояние ВКЛ/ВЫКЛ;

- PLDIU_Резервный_Напряжение CV1» (выходное напряжение CVIU CV1);

- PLDIU_Резервный_Напряжение CV2» (выходное напряжение CVIU CV2);

- PLDIU_Основной_Контроль ошибки;

- PLDIU_Резервный_Контроль ошибки

- бит «Флаг подсистемы» (“Subsystem flag”) статусного слова шины 1553 посылается PLDIU после приема передающего сообщения по шине 1553

Выход из режима

При подаче прямой команды на выключение: «PLDIU_Основной_ВЫКЛ», «PLDIU_Резервный _ВЫКЛ»

Примечание – Распределение питания 100 В на оборудование БРК осуществляется всегда и не зависит от режима функционирования PLDIU (оборудование РТР продолжает функционировать).


5. Описание взаимодействия контроллера шины и монитора шины, удаленных контроллеров

         PLDIU-1 расположен на Северной панели конструкции БРК. PLDIU-2 расположен на Южной панели конструкции БРК. Блоки управления имеют холодное резервирование. Каждая плата (кроме RT1553_EN, где применяется резервирование самой платы), входящая в состав PLDIU состоит из основной и резервной части. В случае выхода из строя основной/резервной части платы ее можно заменить на резервную/основную часть, подав соответствующие команды управления.

         Включение каждого блока PLDIU производится в три этапа:

         а) включение основной или резервной платы CVIU (источник вторичного питания для плат PLDIU) и соответствующей (основной или резервной) платы RT1553_EN вместе с соответствующей (основной или резервной) частью платы BUSTMA путем выдачи прямой команды с платформы на включение PLDIU;

         б) после инициализации PLDIU включить выбранные (основные или резервные) части плат DHP, 8MOTP, HPDP, MAP для PLDIU-1 и HPDP, MAP, PYPGP для PLDIU-2, используя кодовые команды по шине 1553. При этом не обязательно задействовать все платы PLDIU, можно ограничиться включением только тех плат, функции которых необходимы для эксплуатации БРК.

         Допускается произвольное включение/отключение основных или резервных частей (модулей) перечисленных плат;

         в) после того как требуемые платы подключены необходимо выполнить ряд внутренних команд конфигурации плат (DHP, 8MOTP, HPDP, MAP для PLDIU-1 и HPDP, MAP, PYPGP для PLDIU-2).

         Например, команда установки длительности импульсных команд LLC для платы MAP.

         На рисунке 5.1 схематично показано подключение требуемых плат.

Рисунок 5.1 – Логика подключения плат PLDIU

         Таким образом, для включения или отключения выбранных частей плат (основных или резервных функций DHP, 8MOTP, HPDP, MAP для PLDIU-1 и HPDP, MAP, PYPGP для PLDIU-2) необходимо переключить входное реле активного в данный момент ВИП (SPB) платы CVIU и реле выбора частей плат (функций) в требуемое положение. Если плата не требуется для управления БРК еѐ можно отключить, переключив реле выбора части платы на не функционирующую шину SPB.

ВНИМАНИЕ! НЕ ДОПУСКАЕТСЯ ОДНОВРЕМЕННОГО

ВКЛЮЧЕНИЯ ОСНОВНОГО И РЕЗЕРВНОГО ПОЛУКОМПЛЕКТА PLDIU.

Т.Е. ДОЛЖНА ФУНКЦИОНИРОВАТЬ ТОЛЬКО ОДНА ПЛАТА CVIU.

         Выключение блока PLDIU должно происходить в следующей последовательности:

         а) выключить все линии нагревателей, а затем и все защитные переключатели платы DHP (SS1-SS6) нагревателей IMUX Ku-диапазона. Эта операция относится только к PLDIU-1;

         б) подать команду выключения на LCL (переключатель на шине питания двигателей) платы 8MOTP. Эта операция относится только к PLDIU-1;

         в) выключить все реле пироподрыва платы PYPGP. Эта операция относится только к PLDIU-2;

         г) отключить все работающие части плат (функции DHP, 8MOTP, HPDP, MAP для PLDIU-1 и HPDP, MAP, PYPGP для PLDIU-2);

         д) ВНИМАНИЕ! НЕ ВЫКЛЮЧАТЬ РЕЛЕ ОСНОВНОЙ ИЛИ РЕЗЕРВНОЙ (В ЗАВИСИМОСТИ ОТ ТОГО С КАКИМ ПОЛУКОМПЛЕКТОМ РАБОТАЛИ ДО ВЫКЛЮЧЕНИЯ) ШИНЫ ВИП (SPB) ПЛАТЫ CVIU.

         Не допускается оставлять реле SPB в выключенном состоянии во время фазы запуска КА, а также не рекомендуется длительное отключение реле SPB во избежание потенциального риска возникновения внутреннего разряда. Благодаря реле SPB обеспечивается связь «земли» вторичного источника питания с «землей» первичной шины питания;

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

          При управлении блоками PLDIU-1 и PLDIU-2 имеются следующие ограничения:

         а) не допускается одновременное включение основного и резервного модулей CVIU несмотря на то, что кратковременное включение обоих модулей CVIU не приводит к аварийной ситуации. В любом случае включаться должен только один основной или резервный преобразователь, так же, как только одна основная или резервная функция (MAP, DHP, HPDP, 8MOTP, PYPGP).

         Номинальным рабочим режимом для PLDIU является «холодная избыточность» для всех его функций.

         Модуль PYPGP может работать в режиме горячего резервирования. В этом случае после включения и инициализации номинального или резервного модулей CVIU вместе с подключенными к ним модулями RT1553_EN, должны быть включены и инициализированы оба (основной и резервный) модуля PYPGP.

         Производитель антенных сборок (TAS-Италия) рекомендует выполнять подрыв пиропатронов HRM антенных сборок по основной и резервной линии одновременно. Каждый пиропатрон HRM имеет основной и резервный инициаторы, которые перегорают при прохождении импульса тока;

         б) в случае пониженного напряжения питания преобразователь CVIU автоматически отключается и требуется подать прямую команду «ВКЛ.» на PLDIU, когда напряжение питания восстановится для того, чтобы заново включить PLDIU. В этом случае SPB на CVIU и реле выбора SPB на модулях MAP, DHP, HPDP, 8MOTP, PYPGP остаются в той же конфигурации, что и до отключения, но их рабочие конфигурации будут потеряны. Таким образом, чтобы восстановить нормальную работу PLDIU, необходимо также реконфигурировать заново внутренние функции модулей. Отмечается, что в такой ситуации все ТМ, полученные ранее и сохраненные в субадресах, будут потеряны.


5.1 Описание плат PLDIU

         В PLDIU установлены типовые платы, их функции имеют холодное резервирование. Каждая плата выполняет строго определенные задачи по управлению и сбору ТМ с оборудования БРК. На рисунках 5.2 и 5.3 показаны блок диаграммы управления приборами БРК от PLDIU-1 и PLDIU-2 соответственно. Описание плат PLDIU-1 представлено в таблице 5.1, платы PLDIU-2 представлены в таблице 5.2.



Рисунок 5.2 - Блок диаграмма управления PLDIU-1 приборами БРК


Рисунок 5.3 - Блок диаграмма управления PLDIU-2 приборами БРК


Таблица 5.1 - Платы PLDIU-1

Плата PLDIU-1

Команды для установки по шине 1553

Описание платы

Примечание

CVIU (две платы)

Для каждой платы CVIU (основной или резервной):

- Включение Шины вторичного питания (SPB) номинального DC/DC;

- Выключение Шины вторичного питания (SPB) номинального DC/DC;

- Включение Шины вторичного питания (SPB) резервного DC/DC;

- Выключение Шины вторичного питания (SPB) резервного DC/DC

Плата является источником вторичного питания для всех плат PLDIU. Отвечает за включение и выключение PLDIU

Включается и выключается по прямой команде с платформы

RT1553_EN (две платы)

Отвечает за прием кодовых команд по шине 1553 и отправку ТМ на Платформу. Организует внутреннюю связь со всеми платами PLDIU

Включается автоматически в соответствии с выбранной основной или резервной платой CVIU

BUSTMA

Отвечает за управление и сбор ТМ с УМ по шине OBDH (RUBI)

Основная (резервная) часть платы включается автоматически вместе с основной (резервной) платой CVIU

HPDP

- Подключение HPDP номинальной функции к номинальной SPB;

- Подключение HPDP номинальной функции к резервной SPB;

- Подключение HPDP резервной функции к номинальной SPB

- Подключение HPDP резервной функции к резервной SPB

Распределяет питание 100 В через плавкие предохранители на все оборудование БРК. Измеряет ток потребления линий распределения питания 100 В

Питание 100 В всегда поступает на оборудование БРК. Измерение тока доступно после включения

MAP

- Подключение MAP номинальной функции к номинальной SPB;

- Подключение MAP номинальной функции к резервной SPB;

- Подключение MAP резервной функции к номинальной SPB;

- Подключение MAP резервной функции к резервной SPB

Выдает импульсные команды управления HLC (для управления переключателями) и LLC (для включения и выключения приборов). Осуществляет сбор дискретной телеметрии (положения переключателей, состояние включен/выключен)

DHP

- Подключение DHP номинальной функции к номинальной SPB

- Подключение DHP номинальной функции к резервной SPB;

- Подключение DHP резервной функции к номинальной SPB;

- Подключение DHP резервной функции к резервной SPB

Управляет нагревателями IMUX Ku- диапазона. Осуществляет сбор температурной телеметрии с оборудования БРК. Измеряет ток потребления линий нагревателей

8MOTP

- Подключение 8MOTP номинальной функции к номинальной SPB;

- Подключение 8MOTP номинальной функции к резервной SPB;

- Подключение 8MOTP резервной функции к номинальной SPB;

- Подключение 8MOTP резервной функции к резервной SPB

Управление двигателями ADPM антенных сборок. Сбор ТМ управления двигателями и аналоговой ТМ потенциометров положения антенн

Одновременно можно управлять только одним двигателем


Таблица 5.2 - Платы PLDIU-2

Плата PLDIU-2

Команды для установки по шине 1553

Описание платы

Примечание

CVIU (две платы)

Для каждой платы CVIU (основной или резервной):

- Включение Шины вторичного питания (SPB) номинального DC/DC;

- Выключение Шины вторичного питания (SPB) номинального DC/DC;

- Включение Шины вторичного питания (SPB) резервного DC/DC;

- Выключение Шины вторичного питания (SPB) резервного DC/DC

Плата является источником вторичного питания для всех плат PLDIU. Отвечает за включение и выключение PLDIU

Включается и выключается по прямой команде с платформы

RT1553_EN (две платы)

Отвечает за прием кодовых команд по шине 1553 и отправку ТМ на Платформу. Организует внутреннюю связь со всеми платами PLDIU

Включается автоматически в соответствии с выбранной основной или резервной платой CVIU

BUSTMA

Отвечает за управление и сбор ТМ с УМ по шине OBDH (RUBI)

Основная (резервная) часть платы включается автоматически вместе с основной (резервной) платой CVIU

HPDP

- Подключение HPDP номинальной функции к номинальной SPB

- Подключение HPDP номинальной функции к резервной SPB

- Подключение HPDP резервной функции к номинальной SPB;

- Подключение HPDP резервной функции к резервной SPB

Распределяет питание 100 В через плавкие предохранители на все оборудование БРК. Измеряет ток потребления линий распределения питания 100 В

Питание 100 В всегда поступает на оборудование БРК. Измерение тока доступно после включения

MAP

- Подключение MAP номинальной функции к номинальной SPB;

- Подключение MAP номинальной функции к резервной SPB;

- Подключение MAP резервной функции к номинальной SPB;

- Подключение MAP резервной функции к резервной SPB

Выдает импульсные команды управления HLC (для управления переключателями) и LLC (для включения и выключения приборов). Осуществляет сбор дискретной телеметрии (положения переключателей, состояние включен/выключен)

PYPGP

- Подключение PYPGP номинальной функции к номинальной SPB;

- Подключение PYPGP номинальной функции к резервной SPB;

- Подключение PYPGP резервной функции к номинальной SPB;

- Подключение PYPGP резервной функции к резервной SPB

Осуществляет управление пироподрывом механизмов расчековки HRM антенных сборок. Сбор ТМ состояния подрывных реле

Напряжение питания от 27 до 41 В подается к плате PYPGP напрямую с аккумуляторной батареи платформы



5.2 Действие команд аварийного отключения (ОН1 и ОН2) ПН

         Каждая команда аварийного отключения генерирует следующие внутренние последовательности PLDIU, представленные в таблице 5.3.

         Таблица 5.3 – Действия PLDIU по аварийному отключению ПН

Для PLDIU-1

Для PLDIU-2

- Включение основного модуля CVIU (соответственно резервного);

- выключение резервного модуля CVIU (соответственно основного);

- выключение шести защитных переключателей нагревателей (SS1-SS6) основного модуля DHP (соответственно резервного);

- выключение резервного реле (соответственно основного) шины SPB;

- подключение резервного (соответственно основного) модуля MAP к резервной (соответственно основной) шине SPB;

- включение основного (соответственно резервного) реле шины SPB;

- подключение основного (соответственно резервного) модуля MAP к основной (соответственно резервной) SPB;

- инициализация основного (соответственно резервного) модуля MAP для генерации LLC команд;

- выполнение последовательности LLC команд, используя основной модуль (соответственно резервный) MAP;

- сброс основной (соответственно резервной) функции интерфейса аварийного отключения

- Включение основного модуля CVIU (соответственно резервного);

- выключение резервного модуля CVIU (соответственно основного);

- выключение резервного реле (соответственно основного) шины SPB;

- подключение резервного (соответственно основного) модуля MAP к резервной (соответственно основной) шине SPB;

- включение основного (соответственно резервного) реле шины SPB;

- подключение основного (соответственно резервного) модуля MAP к основной (соответственно резервной) SPB;

- инициализация основного (соответственно резервного) модуля MAP для генерации LLC команд;

- выполнение последовательности LLC команд, используя основной модуль (соответственно резервный) MAP;

- сброс основной (соответственно резервной) функции интерфейса аварийного отключения


         По окончании последовательности аварийного отключения оборудования БРК (после двух прямых команд ОН1 и ОН2 с платформы) блок управления PLDIU переходит в следующую конфигурацию, представленную в таблице 5.4.

Таблица 5.4 – Конфигурация PLDIU после аварийного отключения ПН

Плата

PLDIU-1

PLDIU-2

Основная

Резервная

Основная

Резервная

CVIU

Выключена,

шина SPB

отключена

Включена,

шина SPB

подключена

Выключена,

шина SPB

отключена

Включена,

шина SPB

подключена

RT1553_EN

Выключена

Включена

Выключена

Включена

BUSTMA

Выключена

Включена

Выключена

Включена

MAP

Выключена

Включена

Выключена

Включена

8MOTP

Выключена

Выключена

DHP

Выключена,

защитные

реле

отключены

(SS1-SS6)

Выключена,

защитные

реле

отключены

(SS1-SS6)

HPDP

Выключена

Выключена

Выключена

Выключена

PYPGP

Выключена

Выключена

         При этом плата MAP полностью инициализирована для отправки LLC команд и сбора DR телеметрии оборудования БРК. Плата BUSTMA также полностью функциональна. Оба основной и резервные модули плат 8MOTP, DHP, HPDP (для PLDIU-2 плата PYPGP) находятся в выключенном состоянии. Для продолжения работы с резервными комплектами PLDIU необходимо проанализировать состояние PLDIU по телеметрии и выдать дополнительные команды по шине 1553 для восстановления всех рабочих функций


6. Разработка исходных данных состояния удаленных контроллеров

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

6.1 Базовый каркас приложения

         BTIDriver был разработан, для простоты в использовании. Таким образом, большинство программ могут быть смоделированы на каркас приложения, показанного на рисунке 6.1.

                                                                                
                                         

HCARD hCard;

HCORE hCore;

INT cardnum = 0;              //Устанавливает только одно устройство

INT corenum = 0;             //Устанавливает только одно ядро на устройстве

BTICard_CardOpen(&hCard,cardnum);              //Открытие устройства

BTICard_CoreOpen&hCore,corenum,hCard);         //Открытие каждого ядра

(BTICard_CardReset(hCore);                     //Сброс каждого ядра

BTI1553_??Config(...,hCore);       //Настройка канала в качестве КШ,ОУ и МШ

            // Создание и инициализация структур сообщений для терминала(ов)

Msg = BTI1553_??CreateMsg(...,hCore);

BTI1553_MsgDataWr(...,Msg,hCore);

BTICard_CardStart(hCore);                      //Запуск каждого ядра

                  //Обработка данных в соответствии с требованиями приложения

BTI1553_MsgDataRd(...,Msg,hCore);

BTI1553_MsgDataWr(...,Msg,hCore);

BTICard_CardStop(hCore); //Остановка каждого ядра

BTICard_CardClose(hCard); //Закрытие устройства

                                                                                
                                         

Рисунке 6.1 – Базовый каркас приложения

         Многоточие (...) на рисунке 6.1 обозначает параметры, которые не показаны, а обозначения "??" должны быть заменены либо BC(КШ), RT(ОУ), или Mon(МШ). Как показано на рисунке 6.1, что  для управления  устройством 1553 используется BTIDriver включающий в себя восемь этапов:

1. Открытие устройства (карты и ядра);

2.Выполнения сброса устройства (каждого ядра) – Дополнительный этап, но рекомендован;

3.Настройка типа терминала (ов);

4.Создание и инициализация структур сообщений;

5.Запуск устройства (каждого ядра);

6.Обработка  данных сообщения в соответствии с требованиями приложения;

7. Остановка устройства (каждого ядра) –Дополнительный этап;

8. Закрытие устройства (карты).

         В этой схеме могут быть некоторые изменения. Например, нет создания сообщений (BTI1553 _ ?? CreateMsg) это требуется для запуска устройства в качестве монитора шины (МШ). Тем не менее, почти все программы используют следующие функции:

•BTICard_CardOpen

•BTICard_CoreOpen

•BTICard_CardReset

•BTI1553 _ ?? Config (где ?? либо BC (КШ), RT (ОУ), или Mon (МШ))

•BTICard_CardStart

•BTICard_CardStop

•BTICard_CardClose

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

         Как уже говорилось в ранее, что открытие устройства, как правило, сопровождается командой BTI-Card_CardReset. Большинство программ заканчиваются командой BTICard_CardStop, которая останавливает устройство в операционной системе и командой BTICard_CardClose, которая освобождает связанные аппаратные ресурсы компьютера. Если команда BTICard_CardStop не вызывается, устройство продолжает передавать и принимать трафик с шины 1553, даже если программа прекращена. Это может быть полезно в некоторых тестовых ситуациях. Следует всегда вызывать команду BTICard_CardClose перед выходом из программы.

         Устройство с MIL-STD-1553 может быть настроено для имитации контроллера шины (КШ), оконечного устройства (ОУ), и/или монитора шины (МШ). В зависимости от типа используемого устройства, каждое  ядро может иметь один или более  каналов 1553, и каждый канал может иметь различные возможности. На некоторых моделях, канал может работать только в качестве отдельного терминала, в то время как на других он может одновременно имитировать несколько терминалов и включая ошибки работы.

         Набор внутренних структур данных представляет собой конфигурацию терминала. Функциями BTIDriver`a  являются настройка и заполнение этих структур данных. Команда BTI1553 _ ??Config инициализирует конфигурацию терминала. В случае устройств с многотерминальным моделированием, команда BTICard_CardReset должао предшествовать команде BTI1553_??Config, чтобы очистить уже существующие конфигурации терминала. Поскольку конфигурация остается на устройстве, даже после закрытия и выхода из программы, большинство приложений должны вызывать команду BTICard_CardReset, чтобы очистить остаточные конфигурации.

         Основная задача конфигурации устройства это создание структуры сообщений в которой хранятся параметры сообщения и данные. Структуры сообщений могут содержать:

• слова данных

• командные слова

• слова состояния

• временные метки

• флаги ошибок

• флаги управления

6.2 Настройка контроллера шины (КШ)

Как показано на рисунке 6.2, конфигурация терминала BC состоит из двух основных компонентов: набора структур сообщений и графика работы.

Рисунке 6.2 – Конфигурация терминала КШ

         Структуры сообщений для настройки КШ должны быть созданы с помощью команды BTI-1553_BCCreateMsg. Эти структуры сообщений содержат команды, слова состояния и данных, а также временные метки и другую информацию.

         График работы состоит из массива блоков команд, исполняемых процессором на устройстве. Каждый блок команд содержит код операции. Код операции  контролирует время управления и передачу сообщений. После того КШ настраивается командой BTI1553_BCConfig, строится график с функциями планирования (все из которых начинаются с префикса BTI1553_BCSched ??). Каждая из функций планирования добавляет один или несколько блоков команд на конец текущего графика.

         Большинство графиков работ состоят только  из КАДРА и СООБЩЕНИЙ Блока Команд. Гораздо более сложные графики можно создать, используя другие доступные функции Графика работ, приведенные в таблице 6.1.

Таблица 6.1 –Команды Графика работы КШ

Название кода

Команда

Описание

КАДР

BTI1553_BCSchedFrame

Создает кадр с заданным временем

ЖУРНАЛ

BTI1553_BCSchedLog

Производит запись списка событий  в журнал

СООБЩЕНИЕ

BTI1553_BCSchedMsg

Вставляет  сообщение 1553 в кадр

ПОВТОР

BTI1553_BCSchedRetry

Повторяет передачу последнего сообщения

ИНТЕРВАЛ

BTI1553_BCSchedGap

Вставляет временной интервал

НАЧАЛО

BTI1553_BCSchedEntry

Указывает начальную точку для Графика

ОСТАНОВКА

BTI1553_BCSchedHalt

Останавливает работу Графика пока не перезапущена команда BTI1553_ChStart

ПАУЗА

BTI1553_BCSchedPause

Ставит на паузу работу Графика до вызова команды BTI1553_BCResume

ПЕРЕЗАПУСК

BTI1553_BCSchedrestart

Перезапуск работы графика с начала

КОД ПОЛЬЗОВАТЕЛЯ

BTI1553_BCSchedUser

Вызов пользовательского кода

ОТВЕТВЛЕНИЕ

BTI1553_BCSchedBranch

Переход к указанному блоку команд и возобновление работы.

ВЫЗОВ

BTI1553_BCSchedCall

Переход к указанному блоку команд, сохранение обратного адреса в стеке.

ВОЗВРАТ

BTI1553_BCSchedReturn

Возвращает к адресу последнего вызова

НЕТ

BTI1553_BCSchedNop

Нет операций

ИМПУЛЬС

BTI1553_BCSchedPulse

Импульсный внешний дискретный сигнал

         Сообщения могут быть переданы по отдельности с помощью команды BTI1553_BCTransmit-Msg. Сообщения, передаваемые по отдельности, не должны быть созданы с  помощью команды BTI1553_BCCreateMsg.

6.3 Настройка оконечных устройств (ОУ)

         Как показано на рисунке 6.3, конфигурация удаленного терминала состоит из набора структур сообщений. Каждая структура сообщения в ОУ связана с конкретным комбинацией бит T/R (передача/прием) и Subaddress/mode-code (Субадрес/режим кода). Команда BTI1553_RTConfig может автоматически создавать структуры сообщений для каждой комбинации T/R бит и Субадрес/режим кода. В качестве альтернативы, структура сообщений ОУ может быть создана с помощью команды BTI-1553_RTCreateMsg. Командные слова, для которых не были созданы структуры сообщений считаются недостоверными.

Рисунок 6.3 - Структура сообщений для ОУ

6.4 Настройка монитора шины (МШ)

         МШ представляет собой терминал, который слушает, фильтрует, и сохраняет сообщения 1553 наряду с другой полезной информацией (например, по временными-флагами). Команда BTI1553_MonConfig создает терминал МШ и команда BTICard_SeqConfig настраивает монитор и выделяет память для загрузки данных устройства.

6.5 Общая информация о времени выполнения

         Устройство не взаимодействует с MIL-STD-1553 до тех пор пока команда BTICard_CardStart не связывается шиной данных . В это время все терминальные конфигурации становятся активными и устройство отвечает на шину данных независимо от главного компьютера до тех пор пока команда BTICard_CardStop не останавливает их. Модель КШ обрабатывает свой график (если он присутствует); смоделированные ОУ автоматически отвечают на команды с КШ.

         Как показано на рисунке 6.4, устройство передает данные и хранит полученные данные в оперативной памяти (RAM). Обновление данных, подлежащих передаче командой BTI1553_MsgDataWr обновляет определенную структуру сообщения в оперативной памяти. График работы КШ или активность шины, а не функция BTI1553_MsgDataWr, определяет, когда эти данные фактически передаются по шине данных.

Рисунок 6.4- Контроль передачи данных пока устройство активно

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


7. Разработка алгоритмов мониторинга и управления удаленными контроллерами

7.1 Моделирование КШ: незапланированных сообщений

         Самое простое приложение КШ - передает одно  сообщение 1553, ждет его завершения, а затем процесс отображает слово состояния и/или ответное слово данных. Рисунок 7.1 показывает все команды необходимые для моделирования КШ.

         BTICard_CardOpen и BTICard_CoreOpen всегда первые команды, которые вызываются, поскольку они получают маркеры, используемые последующими командами. BTI-Card_CardReset очищает основную память, удаляя любые существующие данные конфигурации. Команда BTI1553_BCConfig настраивает канал, который будет функционировать как контроллер шины (КШ). Несмотря на то, что сообщения не планируются, требуется фиктивная команда BTI1553_BCSchedFrame.

         BTI1553_BCTransmitMsg команда настраивает КШ для передачи сообщения, в определенной XMITFIELDS1553 структуре. Структура XMITFIELDS1553 (объявлена в файле заголовка) содержит много полей, которые передают сообщения с параметрами BTI1553_BCTransmitMsg, которые также передают информацию обратно через эту структуру к вашей программе. Здесь используется тип сообщения - командное слово, и три слова данных. Командное слово могло быть определено как 0843h, но вместо этого, используется полезная команда BTI1553_ValPackCWD для создания командного слова из отдельных полей (адрес терминала 1, прием, субадрес 2, а количество слов 3).

         BTI1553_BCTransmitMsg представляет собой команду блокировки и устанавливаетсят после того, как сообщение было передано. Если передача прошла успешно, она устанавливает слово состояния в поле Msg.swd1. Если сообщение было передано от-ОУ-к-КШ или от-ОУ-к-ОУ, она будет устанавливать значения данных в  массив Msg.data[]. Программа заканчивается командами BTICard_CardStop и BTICard_CardClose.


                                                                                
                                         

HCARD hCard;

HCORE hCore;

XMITFIELDS1553 Msg;

INT cardnum = 0;                               //Установлено только одно устройство

INT corenum = 0;                               //Только одно ядро на устройстве

BTICard_CardOpen(&hCard,cardnum);                                  //Открыть устройство

BTICard_CoreOpen&hCore,corenum,hCard);                             //Открыть каждое ядро

(BTICard_CardReset(hCore);                                         //Очистить каждое ядро

BTI1553_BCConfig(BCCFG1553_DEFAULT,CH0,hCore);

BTI1553_BCSchedFrame(1000,channum,hCore);                   //График работы пустой кадр

BTICard_CardStart(hCore);                                                 //Запуск ядра

                 //Инициализировать режим передачи данных и  команд 1553 и слов данных

Msg.ctrlflags = MSGCRT1553_BCRT;

Msg.cwd1 = BTI1553_ValPackCWD(1,0,2,3);                                  //Прием команды

Msg.data[0] = some_value0;

Msg.data[1] = some_value1;

sg.data[2] = some_value2;

BTI1553_BCTransmitMsg(&Msg,CH0,hCore);                             //Передача сообщения

if (Msg.errflags & (MSGERR1553_NORESP | MSGERR1553_ANYERR))

{

             //ОУ не ответили или имели ошибку в своем ответе

}

else

{

             //Сообщение было выполнено успешно

              //Проверить ответ Msg.swd1 слово состояния для ОУ

}

BTICard_CardStophCore);                               //Прекратить работу каждого ядра

BTICard_CardClose(hCard)                                           //Закрыть устройство

                                                                                
                                         

Рисунок 7.1 - Алгоритм  передачи незапланированных сообщений

         Для передачи сообщений через заданные интервалы времени, команда BTI1553_BCTransmitMsg может быть помещена во временную петлю и передавать различные XMITFIELDS1553 структуры. Тем не менее, это не является необходимым для работы хост-компьютера, так как BTIDriver-совместимые устройства могут координировать время передачи сообщений сами, как показано в следующем разделе.

7.2 Моделирование КШ: запланированные сообщения

         Сообщения на MIL-STD-1553 шине данных, как правило, передаются в соответствии с периодическими графиками работы. Эти графики, как правило, состоят из синхронизированных групп сообщений, называемых кадрами. Кадры упорядочиваются таким образом, что каждое сообщение передавалось на требуемой частоте.

         Предположим, например, что мы хотели бы передать три сообщения по следующим правилам:

• msg0каждые 10 миллисекунд

• msg1 каждые 20 миллисекунд

• msg2 каждые 40 миллисекунд

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

Рисунок 7.2 - Стандартный график работы сообщений КШ

         Ядро для каждого канала может выполнить такой график работы автономно, сохраняя все связанные с ним сроки. Алгоритм на рисунке 7.3 показывает, как настроить канал с графиком работы сообщений.

         Команда BTI1553_BCCreateMsg создает структуру сообщения и инициализирует данные с помощью командных слов для сообщений от-КШ-к-ОУ. Эта функция устанавливает адрес структуры сообщения. Другие команды, такие как BTI1553_MsgDataWr требуют этот адрес для доступа к сообщению. В массиве BCMsgs содержатся установленные адреса сообщения.

         Первая команда BTI1553_BCCreateMsg создает сообщение от-КШ-к-ОУ. Параметр 0x0843 является командным словом 1553 (в шестнадцатеричном виде), команда с адреса терминала 1 получает 3 слова данных из подадреса 2. Обратите внимание, что третья команда BTI1553_BCCreateMsg создает сообщение от-ОУ-к-Оу. Второе командное слово осуществляется  заменой параметра MSGCRT1553_DEFAULT на параметр MSGCRT1553_RTRT.

                                                                                
                                         

HCARD hCard;

HCORE hCore;

MSGADDR BCMsgs[3];

INT cardnum = 0;                        //Установлено только одно устройство

INT corenum = 0;                        //Предполагает только одно ядро на устройстве

BTICard_CardOpen(&hCard,cardnum);                                  //Открыть устройство

BTICard_CoreOpen&hCore,corenum,hCard);                             //Открыть каждое ядро

BTICard_CardReset(hCore);                                          //Очистить каждое ядро  

BTI1553_BCConfig(BCCFG1553_DEFAULT,CH0,hCore);

                                                                   //Создание сообщений

BCMsgs[0] = BTI1553_BCCreateMsg(MSGCRT1553_DEFAULT,0x843,0,&InitalData,hCore);

BCMsgs[1] = BTI1553_BCCreateMsg(MSGCRT1553_DEFAULT,CMD1,0,NULL,hCore);

BCMsgs[2] = BTI1553_BCCreateMsg(MSGCRT1553_RTRT,RCV_CMD2,XMT_CMD2,NULL,hCore);

BTI1553_BCSchedFrame(10000,CH0,hCore);                      //Создание графика работы

BTI1553_BCSchedMsg(BCMsgs[0],CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[1],CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[2],CH0,hCore);

BTI1553_BCSchedFrame(10000,CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[0],CH0,hCore);

BTI1553_BCSchedFrame(10000,CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[0],CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[1],CH0,hCore);

BTI1553_BCSchedFrame(10000,CH0,hCore);

BTI1553_BCSchedMsg(BCMsgs[0],CH0,hCore);

BTICard_CardStart(hCore);

while (!done)       //Обрабатываются данные в соответствии с требованиями приложения

{

       error_field = BTI1553_MsgFieldRd(FIELD1553_ERROR,BCMsgs[0],hCore);

       if (error_field & MSGERR1553_HIT)

       {

                           //Текущие значения данных были переданы, чтобы обновить их

BTI1553_MsgDataWr(&NewData,3,BCMsgs[0],hCore);

                                                                   //Очистить все ошибки

BTI1553_MsgFieldWr(0,FIELD1553_ERROR,BCMsgs[0],hCore);

       }

}

BTICard_CardStop(hCore);

BTICard_CardClose(hCard);

                                                                                
                                         

Рисунок 7.3 - Алгоритм  передачи запланированных сообщений

         После создания сообщения, они могут быть запланированы. Обратите внимание, как блоки команд BTI1553_BCSched?? точно соответствуют кадрам, показанным на рисунке 7.2. BTI1553_BCSchedFrame отмечает начало кадра и включает в себя временные рамки (в микросекундах) в качестве одного из параметров. Рамки могут быть до 1,3 секунд. Команда BTI1553_BCSchedMsg вставляет указанное сообщение в график работы. График содержит ссылки на сообщения структур, а не копии структур. Это означает, что существуют данные сообщения только в одном месте, поэтому обновление данных сообщения также обновляет все его экземпляры в графике работы.

         Команды планирования (BTI1553_BCSched ??) на самом деле создают программу, в основной памяти. После того, как срабатывает команда BTICard_CardStart, ядро работает на канал в качестве КШ, выполняя эту программу. Программа является циклической по умолчанию. То есть, последовательность кадров, описанных в алгоритме передается повторно в соответствии с графиком.

7.3 Моделирование ОУ

         Алгоритм на рисунке 7.4 дополняет пример на рисунке 7.3. Он настраивает устройство в качестве удаленного терминала (ОУ) с адресом терминала 1, чтобы получить сообщение от-КШ-к-ОУ, переданное КШ в предыдущем примере (т.е. командное слово 0843h). Этот опрос получает подадрес 2, где он ожидает получить 3 слова данных.

                                                                                
                                         

HCARD hCard;

HCORE hCore;

BTICard_CardOpen(&hCard,cardnum);                    //Открыть устройство

BTICard_CoreOpen(&hCore,corenum,hCard);              //Открыть каждое ядро

BTICard_CardReset(hCore);                            //Очистить каждое ядро

BTI1553_RTConfig(RTCFG1553_DEFAULT,1,CH0,hCore);

RTMsg = BTI1553_RTGetMsg(SUBADDRESS,1,RCV,2,CH0,hCore);

BTICard_CardStart(hCore);

while (!done)

{

BTI1553_MsgDataRd(&Data,3,RTMsg,hCore); //Прочитать сообщение от КШ

}

BTICard_CardStophCore);

(BTICard_CardClose(hCard);

                                                                                
                     

Рисунок 7.4- Алгоритм моделирования ОУ

         Наиболее важным параметром конфигурации, является его адрес терминала, который присваивается командой BTI1553_RTConfig. Параметр RTCFG1553_DEFAULT вызывает структуры сообщений, которые будут созданы для всех подадресов и кодов режима. Поскольку доступ к сообщению требует адреса, необходимо выполнить команду BTI-1553_RTConfig с вызовом BTI1553_RTGetMsg для каждого сообщения, представляющего интерес. В данном примере BTI1553_RTGetMsg получает адрес сообщения, связанное с командным словом 0843h из рисунка 7.3 (т.е. с адрес терминала 1, чтобы получить данные для подадреса 2).

         После этого ожидается получение данных от КШ, код не инициализирует какое-либо ОУ для передачи структур сообщений. Можно использовать команду BTI1553_MsgDataWr после BTI1553_RTGetMsg для инициализации данных для передачи. В то время как цикл BTI1553_MsgDataRd считывает полученные данные сообщения, используя адрес, возвращаемый командой BTI1553_RTGetMsg.

         После команды BTI1553_RTConfig была вызвана функция RTCFG1553_DEFAULT, все подадресы и коды режима являются достоверными. После того, как команда BTICard_CardStart активирует ядро, устройство реагирует на любую допустимую команду с адреса терминала 1, хотя в этом примере предполагается только командное слово 0843h.

         В качестве альтернативы, можно вызвать команду BTI1553_RTConfig с RTCFG1553_NO-BUILD вместо RTCFG1553_DEFAULT, а затем вызвать  команду BTI1553_RT-CreateMsg для каждого сообщения, представляющего интерес. В этом случае только подадресы и коды режима, указанные в функции BTI1553_RTCreateMsg сохраняются в памяти; другие недостоверны. Это экономит память для многотерминального моделирования.

7.4 Широковещательный режим ОУ

         ОУ может быть настроено, чтобы игнорировать или принимать данные широковещательной передачи сообщений. Если он настроен на прием широковещательных данных, то ОУ с MIL-STD-1553B всегда сохраняет эти данные. То есть, широковещательные данные всегда хранятся отдельно от данных без широковещательной передачи.

         Если какой-либо адрес ОУ настроен для приема широковещательных данных (с использованием RTCFG-1553_BCAST в BTI1553_RTConfig), есть общий вывод, в котором хранятся все данные широковещательной передачи. Доступ к этим данным предоставляется вызовом команды BTI1553_RTGetMsg с адресом терминала 31.

         Также можно включить ОУ с адресом 31 в качестве реального ОУ вызовом команды BTI1553_RT-Config (..., 31, ...). Но это полностью отключает использование широковещательных сообщений.

7.5 Алгоритм мониторинга шины

         В некотором смысле, любой приемный терминал (ОУ) является монитором, который имеет самое последнее значение полученных данных. Тем не менее, устройства MIL-STD-1553 имеют два типа специализированных мониторов: Теневой монитор и Последовательный монитор.

7.6 Теневой монитор

         Теневой Монитор - это изменение удаленного терминала (ОУ). Когда ОУ конфигурируется с помощью флага управления RTCFG1553_MONITOR в команде BTI-1553_RTConfig, оно становится теневым монитором и не передает по  шине 1553. Вместо этого оно принимает данные, отправленные и передаваемые реальным ОУ с определенным адресом удаленного терминала (ОУ). Самое последнее значение данных может быть считано в любое время с помощью команды BTI1553_MsgDataRd.

7.7 Последовательный монитор

         Последовательный монитор записывает временные метки истории активности шины, выбранные пользователем, это называется последовательной записью. Последовательный запись полезна для анализа и восстановления всей или выбранной активности шины. По стандарту MIL-STD-1553 устройство МШ является источником данных для последовательного монитора. Все константы монитора и команды, обозначенные префиксом или MON Mon, применяются только к МШ 1553 и последовательному монитору, а не к Теневому монитору.

         Последовательный монитор сохраняет сообщения последовательно в памяти в порядке их поступления от шины. Каждая структура сообщения содержит:

• командные слова

• слова данных

• слова состояния

• метки времени

• флаги ошибок

         Алгоритм показанный на рисунке 7.5 демонстрирует последовательный монитор, который захватывает трафик с шины 1553 и дает простой отчет, включающий временную метку, командное слово, и в случае необходимости, сообщение "нет ответа".


                                                                                
                     

HCARD hCard;

HCORE hCore;

USHORT seqbuf[2048];

ULONG seqcount;

LPSEQRECORD1553 pRec1553;

SEQFINDINFO sfinfo;

BTICard_CardOpen(&hCard,cardnum);                    //Открыть устройство

BTICard_CoreOpen&hCore,corenum,hCard);               //Открыть каждое ядро

BTICard_CardReset(hCore);                            //Очистить каждое ядро

BTI1553_MonConfig(MONCFG1553_DEFAULT,CH0,hCore);     //Создать терминал МШ

BTICard_SeqConfig(SEQCFG_DEFAULT,hCore);            //Настройка последовательного МШ

BTICard_CardStart(hCore);

while(!done)

{                                        //Чтение последовательной записи

      seqcount = BTICard_SeqBlkRd(seqbuf,bufcount,blockcount,hCore);

      BTICard_SeqFindInit(seqbuf,seqcount,&sfinfo);        //Поиск команд

      while(!BTICard_SeqFindNext1553(&pRec1553,&sfinfo)) //Поиск/запись

      {

//Запись на диск, отображение данных и т.д., если это необходимо. Например:

      printf(" Time:%lu",pRec1553->timestamp);

 if (pRec1553->activity & MSGACT1553_RCVCWD1) printf(" Cwd1:%04X", pRec1553->cwd1);

      if (pRec1553->error & MSGERR1553_NORESP) printf(" No response!");

      }

}

BTICard_CardStop(hCore);

BTICard_CardClose(hCard);

                                                                                
                                         

Рисунок 7.5- Алгоритм мониторинга удаленных контроллеров

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

         Пока цикл в коде опрашивает и обрабатывает последовательные записи. Команда BTI-Card_SeqBlkRd копирует блок доступных последовательных записей из шины  в буфер пользователя (seqbuf) и возвращает количество скопированных слов (seqcount). Для обработки записей в seqbuf, необходимо найти начало и тип каждой записи, это может быть сделано различными  командами BTICard_SeqFindNext ??. Здесь команда BTICard_SeqFindInit инициализирует структуру (sfinfo). Затем повторяется вызов команды BTICard_SeqFindNext-1553 и находится точка pRec1553 до следующего появления записи типа-1553. Необходимые значения затем  считываются из записи. Как обычно, программа завершается с помощью команд BTICard_CardStop и BTICard_CardClose.

         Каналы  MIL-STD-1553  могут фильтровать данные таким образом, что только сообщения-1553, представляющие интерес, сохраняются в последовательной записи. Фильтрация по адресу терминала и подадресу устанавливается через команды BTI1553_MonFilterTA и BTI1553_MonFilterSA.


8. Создание математической модели интерфейсного модуля полезной нагрузки

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

                                                                                
                                         

HCARD hCard;

HCORE hCore;

MSGADDR BCMsg, RTMsg;

BTICard_CardOpen(&hCard,cardnum);                    //Открыть устройство

BTICard_CoreOpen(&hCore,corenum,hCard);              //Открыть каждое ядро

BTICard_CardReset(hCore);                            //Очистить каждое ядро

                  // Алгоритм  передачи запланированных сообщений (Рисунок 7.3)

BTI1553_BCConfig(BCCFG1553_DEFAULT,CH0,hCore);

BCMsg = BTI1553_BCCreateMsg(MSGCRT1553_DEFAULT,0x0843,0,&InitialData,hCore);

BTI1553_BCSchedFrame(10000,CH0,hCore);

BTI1553_BCSchedMsg(BCMsg,CH0,hCore);

                                   // Алгоритм моделирования ОУ (Рисунок 7.4)

BTI1553_RTConfig(RTCFG1553_DEFAULT,1,CH0,hCore);

RTMsg = BTI1553_RTGetMsg(SUBADDRESS,1,RCV,2,CH0,hCore);

                  // Алгоритм мониторинга удаленных контроллеров (Рисунок 7.5)

BTI1553_MonConfig(MONCFG1553_DEFAULT,CH0,hCore);

BTI1553_MonFilterTA(0x00000002,CH0,hCore);

BTICard_SeqConfig(SEQCFG_DEFAULT,hCore);

BTICard_CardStart(hCore);

while (!done)

{

            // Обрабатывать данные, как в рисунках с 7.2 по 7.4 в главе 7

}

BTICard_CardStop(hCore);

BTICard_CardClose(hCard);

                                                                                
                                         

Рисунок 8.1- Модель интерфейсного модуля

         Команды BTICard_CardOpen, BTICard_CoreOpen и BTICard_CardReset нужно вызвать только один раз. Команда BTICard_CardReset особенно важна в ядрах, которые поддерживают несколько терминалов. Если команда BTICard_CardReset пропущена, конфигурация терминала из предыдущей программы может быть повреждена. Это может привести к моделированию непреднамеренных терминалов.

          В этой модели, командные сообщения для данных терминалов непосредственно следуют после команды BTI1553_??Config. Команды BTI1553_??Config группируются и выполняются все другие команды. Порядок, в котором вызываются команды BTI1553_??Config  является произвольным.

         Команды BTI1553_BCSchedFrame и BTI1553_BCSchedMsg создают график работы, содержащий только один кадр. Этот кадр содержит только одну команду 0843h, так что это сообщение передается каждые 10 миллисекунд.

         Присутствует одна команда не разобранная в предыдущих примерах: команда BTI-1553_MonFilterTA. Она занимает 32-битный параметр битовой маски, которая определяет, адрес терминала для мониторинга. Только сообщения указанных терминалов появляются в последовательной записи. Параметр 00000002h в модели определяет, что только один удаленный терминал (ОУ) с адресом 1 будет осуществлять мониторинг.

         Команда BTICard_CardStart активирует все настроенные терминалы.


ЗАКЛЮЧЕНИЕ

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

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

         КШ должен выполнять следующие основные функции: передавать команды в магистраль, участвовать в пересылке СД, принимать и контролировать ответную информацию о состоянии ОУ и абонентов.

ОУ должно выполнять следующие основные функции: проводить проверку достоверности КС, поступающих к нему от КШ. Если КС не удовлетворяет указанным требованиям, то ОУ должно определить его как недостоверное.

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

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


СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ

         1.  MIL-STD-1553 Руководство по программированию для BTIDriver-совместимых устройств [Электронный ресурс]. – Режим доступа: электронный носитель -  (дата обращения 04.06.2016)

         2.  Бортовой ретрансляционный комплекс КА «Ямал-401», Техническое описание, Часть 1, Описание аппаратуры БРК [Электронный ресурс]. – Режим доступа: электронный носитель (дата обращения 20.05.2016)

         3. Интерфейс магистральный последовательный системы электронных модулей. Общие требования. — Государственный Стандарт Российской Федерации, 2003 . — 27 с. — ГОСТ Р 51739-2001

         4. Интерфейсный модуль 1553 новое поколение «Ямал-601», Документ пользователя (URD) [Электронный ресурс] – Режим доступа: электронный носитель (дата обращения 03.05.2016)

Информация о файле
Название файла Моделирование интерфейсного модуля полезной нагрузки от пользователя dedvaleriy
Дата добавления 10.5.2020, 19:01
Дата обновления 10.5.2020, 19:01
Тип файла Тип файла (zip - application/zip)
Скриншот Не доступно
Статистика
Размер файла 1.42 мегабайт (Примерное время скачивания)
Просмотров 515
Скачиваний 57
Оценить файл