В этом примере показано, как создать станцию дистанционного зондирования, которая отслеживает самолеты с помощью радиомодуля Raspberry Pi™ и RTL-SDR. Вы узнаете, как развернуть модель Simulink ®, которая обрабатывает сигналы ADS-B и отправляет демодулированные данные на хост-компьютер с использованием пакетов UDP для визуализации.
Для выполнения этого примера необходимо следующее оборудование:
Радиоблок RTL-SDR
Малиновый Пи
и следующее программное обеспечение
Дополнительно, Toolbox™ отображения (для отслеживания плоскостей на карте)
Полный список платформ SDR, поддерживаемых Communications Toolbox, см. в разделе Поддерживаемые аппаратные средства на странице обнаружения Software Defined Radio (SDR).
Описание реализации приемника ADS-B в Simulink см. в примере «Отслеживание самолетов с использованием сигналов ADS-B в Simulink», приведенном ниже. Мы также рекомендуем завершить работу с пакетом поддержки MATLAB для оборудования Raspberry Pi (пакет поддержки MATLAB для оборудования Raspberry Pi).
modelName = 'ADSBSimulinkExample'; open_system(modelName); set_param(modelName, 'SimulationCommand', 'update');
![]()
Можно настроить станцию дистанционного зондирования для слежения за самолетами с помощью аппаратных средств Raspberry Pi с подключенным к ней радиоприемником RTL-SDR. Можно запустить блок PHY уровня приемника ADS-B на Raspberry Pi и отправить полученные данные через Интернет с помощью пакетов UDP. Эти пакеты UDP можно получить на локальном компьютере и запустить анализатор сообщений и блоки просмотра данных для визуализации результатов. Ниже приведена модифицированная модель удаленного приемника ADS-B, которая работает на Raspberry Pi.
close_system(modelName) modelName = 'ADSBRaspberryPiSimulinkExample'; open_system(modelName); set_param(modelName, 'SimulationCommand', 'update');
![]()
Выполните следующие действия для запуска модели приемника ADS-B на аппаратном обеспечении Raspberry Pi.
1. Подключите радиомодуль RTL-SDR к одному из портов USB аппаратных средств Raspberry Pi
2. Открытие следящих самолетов с использованием сигналов ADS-B с моделью Raspberry Pi - сенсор
3. Дважды щелкните по блоку UDP Send. Откройте маску блока и введите IP address of your host computer в поле редактирования удаленного IP-адреса. Например, если IP-адрес компьютера - 10.10.10.1, введите «10.10.10.1» в маске блока. Не изменяйте параметр удаленного IP-порта. Нажмите кнопку ОК, чтобы сохранить и закрыть маску блока.
4. В модели Simulink нажмите кнопку «Развернуть на оборудование» на панели инструментов.

5. Модель, работающая на аппаратном обеспечении Raspberry Pi, начнет посылать пакеты UDP на порт 25000 главного компьютера.
Выполните следующие действия для запуска модели хоста, которая принимает пакеты UDP, отправленные моделью, работающей на аппаратном обеспечении Raspberry Pi.
1. Откройте окно Отслеживание самолетов с помощью сигналов ADS-B - Агрегатор. Эта модель имеет блок приема UDP, который настроен на прием пакетов UDP, отправленных моделью, работающей на аппаратном обеспечении Raspberry Pi. Дважды щелкните маску блока приема UDP. Обратите внимание, что локальный IP-порт имеет значение 25000, а тип выходных данных - «uint8».
2. Нажмите кнопку Воспроизведение (Play), чтобы запустить модель.
close_system(modelName) modelName = 'ADSBAggregatorSimulinkExample'; open_system(modelName); set_param(modelName, 'SimulationCommand', 'update');
![]()
На следующих рисунках показано, как приложение отслеживает и перечисляет детали рейса и отображает их на карте.


Если требуется остановить работу модели на Raspberry Pi, выполните следующие действия в командной строке MATLAB ®.
rPi = raspberrypi; stop(rPi,'ADSBRaspberryPiSimulinkExample');
Если вы не можете получить какие-либо данные о модели хоста, убедитесь, что Raspberry Pi и ваш хост-компьютер находятся в одной локальной сети. Другими словами, убедитесь, что первые три номера IP-адресов совпадают.
Кроме того, убедитесь, что программное обеспечение безопасности Интернета позволяет передавать и принимать пакеты UDP через порт 25000.
close_system(modelName)