Авиационные приборы и индикаторы
Описание демо-примера
Расположение
SimInTech\Demo\Визуализация и анимация\Индикаторы\Авиационные приборы и индикаторы\Авиационные приборы и индикаторы.pak
Описание
В примере демонстрируется работа блоков из подгрупп "Авиационные приборы" и "Авиационные индикаторы" библиотеки "Индикаторы" при работе SimInTech совместно с авиасимулятором X-Plane, а также без авиасимулятора.
Внимание: данный пример состоит из трех проектов, входящих в состав пакета проектов "Авиационные приборы и индикаторы.pak". Для запуска процесса моделирования необходимо запустить на расчет пакет проектов.

В пакете проектов создана база сигналов, в которой содержатся 16 сигналов (Рисунок 2).

Авиационные приборы
Проект "Авиационные приборы.prt" содержит блоки "Авиагоризонт с прямой индикацией", "Авиационные часы", "Указатель вертикальной скорости", "Указатель высоты", "Указатель курса", "Указатель скорости", "Указатель угла атаки и перегрузки" из подменю "Авиационные приборы" вкладки "Индикаторы", а также графические примитивы "Круг" и "Залитый прямоугольник" с панели примитивов.
Модель проекта "Авиационные приборы.prt" демонстрирует возможности блоков авиационных приборов по отображению значений сигналов. В свойствах каждого блока в столбце "Формула" заданы имена сигналов, значения которых влияют на изменение положения подвижных элементов индикации в соответствии с алгоритмами, реализованными внутри блока.
Примитив "Залитый прямоугольник" используется в качестве фона для имитации цвета приборной доски воздушного судна. Примитивы "Круг" используются для сигнализации превышения допустимых значений сигналов "Угол атаки" и "Перегрузка", отображаемых в блоке "Указатель угла атаки и перегрузки".
Если в блоке "Указатель угла атаки и перегрузки" значение сигнала "Угол атаки" превышает допустимые значения (максимально допустимое значение определяется значением сигнала "Максимально допустимый угол атаки" (Рисунок 2), минимально допустимое значение определяется верхней границей красной зоны шкалы угла атаки и составляет 0 град), то примитив "Круг", расположенный слева от блока "Указатель угла атаки и перегрузки", окрасится в красный цвет, если не превышает — в серый цвет (Рисунок 3).

Авиационные индикаторы
Проект "Авиационные индикаторы.prt" содержит блоки из подменю "Авиационные индикаторы" из вкладки "Индикаторы" и графический примитив "Залитый прямоугольник" с панели примитивов.
Модель проекта "Авиационные индикаторы.prt" демонстрирует возможности блоков авиационных индикаторов по отображению значений сигналов. В свойствах каждого блока в столбце "Формула" заданы имена сигналов, значения которых влияют на изменение положения подвижных элементов индикации в соответствии с алгоритмами, реализованными внутри блока (Рисунок 4).
Примитив "Залитый прямоугольник" используется для имитации цвета фона в многофункциональных индикаторах воздушного судна.
Если в блоке "Индикатор угла атаки" значение сигнала "Угол атаки" превышает допустимые значения (максимально допустимое значение определяется значением сигнала "Максимально допустимый угол атаки" (Рисунок 2), минимально допустимое значение определяется значением сигнала "Минимально допустимый угол атаки" (Рисунок 2)), то стрелка индикатора угла атаки в виде силуэта самолета окрашивается в красный цвет, если не превышает — в белый цвет (Рисунок 4).

Задание значений сигналов

Модель проекта "Задание значений сигналов.prt" имеет два режима работы: Прием данных от авиасимулятора" и Демонстрация".
Прием данных от авиасимулятора Plane-X
Режим "Прием данных от авиасимулятора" включается автоматически при поступлении данных от авиасимулятора X-Plane на блок "Сервер UDP". Если на UDP-порт, номер которого указан в свойстве "Порт ip" блока "Сервер UDP", не поступают данные от авиасимулятора, то модель будет работать в режиме "Демонстрация".
Схема модели настроена на автоматический прием данных от авиасимулятора. Для переключения работы модели в режим "Прием данных от авиасимулятора" необходимо настроить авиасимулятор на передачу данных. Данные от авиасимулятора отправляются в пакетах, каждый из которых имеет свой индекс и содержит по 8 сигналов, которые в схеме проекта выводятся через выходные порты каждого блока "ByteUnPack". Для корректной работы проекта требуется принимать от авиасимулятора X-Plane пакеты данных с определенными индексами и знать через какой блок "ByteUnPack" выводится пакет данных с конкретным индексом.






| № п/п | Имя | Название | Индекс пакета данных | Порядковый номер сигнала в пакете данных |
|---|---|---|---|---|
| 1 | Sim_Local_time | Местное время | 1 | 7 |
| 2 | Sim_Vpr | Приборная скорость | 3 | 6 |
| 3 | Sim_Vist | Истинная скорость | 3 | 7 |
| 4 | Sim_Mach | Число Маха | 4 | 1 |
| 5 | Sim_Ny | Перегрузка | 4 | 5 |
| 6 | Sim_Tangaj | Угол тангажа | 17 | 1 |
| 7 | Sim_Kren | Угол крена | 17 | 2 |
| 8 | Sim_Kurs | Угол курса | 17 | 3 |
| 9 | Sim_Ataka | Угол атаки | 18 | 1 |
| 10 | Sim_H | Высота | 20 | 4 |
| 11 | Sim_Vy | Вертикальная скорость | 21 | 5 |
Модель проекта "Задание значений сигналов.prt" настроена на прием от авиасимулятора 11 сигналов (Таблица 1), содержащихся в 7 пакетах данных с индексами 1, 3, 4, 17, 18, 20, 21, которые должны быть отмечены на вкладке "Вывод данных" в окне настроек авиасимулятора X-Plane для отправки данных через сеть на указанный UDP-порт по указанному сетевому адресу (Рисунок 10).
Факт приема данных от авиасимулятора в модели определяется по значению первого байта в принимаемом информационном сообщении. Значение первого байта поступает на входной порт блока "В память". Если данные от авиасимулятора не поступают, то это значение равно "0", если поступают, то это значение равно "68" (в коде ASCII это соответствует букве "D", первой букве заголовка "DATA" в информационном сообщении, которое отправляется от авиасимулятора). Если значение сигнала, поступающего на входной контакт каждого блока "Ключ управляемый перекидной по входам тип 1" больше, чем значение, указанное в свойстве "Значения уставок", то в блоке "Ключ управляемый перекидной по входам тип 1" на выходной порт поступают сигналы со второго входного порта этого же блока. При поступлении с выходного порта блоков "Из памяти" на входной порт каждого блока "Ключ управляемый перекидной по входам тип 1" значения "68" происходит переключение входных портов в этих блоках и на выходной порт поступают сигналы, принимаемые через второй входной порт от авиасимулятора.
Значения сигналов "Приборная скорость", "Истинная скорость" поступают на вход блоков "Запись в список сигналов" после умножения сигналов, принимаемых от авиасимулятора, на множитель "1.61" в блоках "Усилитель" для перевода единиц измерения сигналов из "мили/ч" в "км/ч".
Значение сигнала "Высота" поступает на вход блока "Запись в список сигналов" после умножения сигнала, принимаемого от авиасимулятора, на множитель "0.3048" в блоках "Усилитель" для перевода единиц измерения сигналов из "футы" в "метры".
Значение сигнала "Вертикальная скорость" поступает на вход блока "Запись в список сигналов" после преобразования сигнала, принимаемого от авиасимулятора, в блоке "Инерционное звено 1-го порядка" для имитации запаздывания отображения значения вертикальной скорости, связанного с принципом работы настоящего указателя вертикальной скорости (вариометра).
В правой части схемы модели "Задание значений сигналов.prt" задаются значения сигналов "Поступление данных от авиасимулятора", "Максимально допустимая перегрузка", "Минимально допустимая перегрузка", "Максимально допустимый угол атаки", "Минимально допустимый угол атаки" (Рисунок 2).

Работа проекта в режиме демонстрации

Некоторые сигналы в соответствии с физическим смыслом описываемых ими параметров полета не должны принимать отрицательные значения, поэтому сигналы, поступающие с выходного порта блока "Синусоида", складываются в блоке "Сумматор" со значением, поступающим с выходного порта блока "Константа" для формирования требуемого диапазона изменения значения сигнала. Например, для сигнала "Угол курса" (Рисунок 2) амплитуда сигнала в блоке "Синусоида" задана "180", то есть значение на выходном порту блока меняется от "-180" до "180". В блоке "Сумматор" значение сигнала, поступающее с выходного порта блока "Синусоида", складывается со значением "180", поступающим с выходного порта блока "Константа". В результате сигнал, поступающий с выходного порта блока "Сумматор", меняется по синусоидальному закону в диапазоне от "0" до "360" и задается сигналу "Угол курса". Аналогичным образом задаются значения сигналов для блоков "Запись в список сигналов", у которых свойству "Имена сигналов" в соответствии с таблицей (Рисунок 2) заданы имена сигналов "Приборная скорость", "Истинная скорость", "Перегрузка", "Угол тангажа", "Угол крена", "Угол курса", "Высота".

В случае прекращения работы авиасимулятора в режиме полета в блоке "Сервер UDP" данные перестают поступать, но автоматически не обнуляются, поэтому модель проекта продолжает работать в режиме "Прием данных от авиасимулятора" даже при прекращении работы авиасимулятора. Для перехода в режим "Демонстрация" необходимо остановить моделирование проекта нажатием кнопки "Стоп" в меню окна проекта и повторно запустить моделирование нажатием кнопки "Пуск" в меню окна проекта.
Используемые блоки
- Авиагоризонт с прямой индикацией
- Авиационные часы
- Указатель вертикальной скорости
- Указатель высоты
- Указатель курса
- Указатель скорости
- Указатель угла атаки и перегрузки
- Индикатор авиагоризонта с прямой индикацией
- Индикатор вертикальной скорости
- Индикатор высоты
- Индикатор курса
- Индикатор перегрузки
- Индикатор скорости
- Индикатор угла атаки