Оборудование, использованное для выполнения работы
Введение
Авиационная бортовая радиолокационная станция (БРЛС)— система бортового радиоэлектронного оборудования (БРЭО), предназначенная для обнаружения воздушных, морских и наземных объектов методом радиолокации, а также для определения их дальности, размерности и вычисления параметров движения. Бортовые авиационные РЛС условно делятся на метеонавигационные локаторы, РЛС обзора земной или водной поверхности и радиолокационные прицелы (функции часто совмещаются). По направленности действия — на РЛС переднего, бокового или заднего обзора. В конструкции бортовых РЛС могут применяться гиростабилизированные платформы.
К авиационным бортовым РЛС предъявляются противоречивые требования высоких ТТХ при минимальном весе и габаритах, высокой надёжности в условиях перепадов давления, температуры и знакопеременных ускорений. Их характеризует высокая техническая сложность, плотная компоновка монтажа, большая стоимость.
Рисунок 1 Общий вид БРЛС
Цель лабораторной работы
Целью лабораторной работы является понимание сути взаимодействия БРЛС с оборудованием БЛА МД. Отправка запроса с БРЛС на БЛА МД и получения ответа(данные о текущем состоянии, параметрах и режиме работы БРЛС), ознакомление с процессом обмена данными с помощью UDP-пакета и правилами его заполнения и передачи по Ethernet.
Задача лабораторной работы
Функция, которая собирает нужные данные (а на стенде получает их от ГСЧ) и отправляет на БРЭО, была вынесена в отдельный модуль – fillStatus, в ПО стенда. Задачей данной лабораторной работы является написание двух функций - fillHeader() и fillStatusData(), входящие в состав модуля fillStatus. Первая функция заполняет заголовок нашего сообщения, вторая – полезную нагрузку. При выполнении работы будем руководствоваться Протоколом информационно-технического взаимодействия БРЛС и БРЭО.
Оборудование, использованное для выполнения работы
Рис. 2. Взаимодействие БРЛС с оборудованием БЛА МД
Стрелками на рис. 2 обозначена передача данных, которыми обмениваются части системы в реальном БЛА. ПО БЦВМ показано условно разделенным на две части: часть 1 взаимодействует с остальной БРЛС, часть 2 взаимодействует с ПО БРЭО. Для проведения лабораторных работ был создан стенд, в котором ПО БЦВМ было урезано за счет части 1, поскольку она использует особенности аппаратуры БЦВМ и не может работать на обычном ПК. Вместо нее в качестве источника данных для передачи на БРСД используется генератор случайных чисел (ГСЧ). На Рис. 3 приведена схема этого стенда.
Рис. 3. Схема рабочего места
Одной из функций ПО БЦВМ (часть 2) является ответ на команду “Status”: по получении такой команды запускается соответствующая функция, которая собирает нужные данные (а на стенде получает их от ГСЧ) и отправляет на БРЭО. Такая передача осуществляется в виде UDP-пакета в области его полезной нагрузки (payload).
Описание программы
Одной из функций ПО БЦВМ является ответ на команду “Status”: по получении такой команды запускается соответствующая функция, которая собирает нужные данные (а на стенде получает их от ГСЧ) и отправляет на БРЭО. Такая передача осуществляется в виде UDP-пакета в области его полезной нагрузки (payload).
Для создания такого пакета необходимо написать две функции: fillHeader() и fillStatusData(). Первая функция заполняет заголовок нашего сообщения, вторая – полезную нагрузку.
В своей работе мы использовали программу Microsoft Visual Studio 2015 и язык программирования C. Написание программного кода происходило по алгоритму, который описаны в файлах «Инструкция» и «Протокол».
У нас имеется два компьютера: один из них на Linux с реализованной БРЛС, второй – на Windows с БРЭО. После получения команды “Status” на БРЛС от БРЭО нам необходимо отправить ответ обратно. Но перед этим сначала мы его формируем.
В программном коде мы заполняем структуру to_brsd_net, которая описана в файле brsd.h. Перед заполняем очередного поля нам необходимо сначала указать его идентификатор, а потом уже значение(Рис.4).
Рис.4 Часть программного кода
Также не стоит забывать о преобразовании типов, которое присутствует в данной программе, и четко знать, сколько байт занимает каждая переменная. Все это нужно для правильной работы алгоритма и корректного обмена данными.
После написания программного обеспечения нам необходимо запустить программу и выбрать режим работы (в нашем случае – КРТ-РЛ, см. Рис.5).
Рис.5 Проверка работы программного кода
После этого в настройках следует включить запрос статуса и выбрать промежуток времени, через который он будет отсылаться (см Рис.6).
Рис. 6 Настройка программных опций
После этих операций мы можем запустить программу.
После первой попытки написания кода мы допустили ошибку: не заполнили код сообщения (OpCode) в функции fillHeader(), поэтому программа работала, но не выдавала нужный нам результат.
После внесений изменений в программный код - программа заработала корректно.
Результат
В результате работы программы мы можем заметить, что значения переменных во время выполнения работы программы меняются (Рис. 7), это говорит о том, что произошла отправка запроса с БРЛС на БЛА МД по Ethernet и получен ответ (данные о текущем состоянии, параметрах и режиме работы БРЛС).
Рис. 7 Результат работы программы
Это означает, что алгоритм, который мы написали, работает корректно. При изменении частоты запроса статуса, частота изменения значений переменных на форме также изменится на эту величину.
Выводы
В ходе лабораторной работы были написаны функции fillHeader() и fillStatusData(), предназначенные для получения информации о текущем состоянии, параметрах и режиме работы БРЛС. Сформулировали программу для рабочего места. Запустив её и проведя отладку, мы получили команду “Status” на БРЛС от БРЭО и отправили ответ обратно и убедились в том, что программа работает корректно. Также, мы изучили протокол и научились правильно заполнять его, использовать преобразование из одного типа данных в другой, правильно работать с указателями. Поняли суть взаимодействия БРЛС и БРЭО по Ethernet с помощью UDP-пакета. В частности, обмена данными после получения запроса “Status”.