简介
ADS-B 系统即广播式自动相关监视系统,由多地面站和机载站构成,以网状、多点对多点方式完成数据双向通信。它主要实施空对空监视。
一般情况下,只需机载电子设备(GPS 接收机、数据链收发机及其天线、驾驶舱冲突信息显示器 CDTI),不需要任何地面辅助设备即可完成相关功能,装备了 ADS-B 的飞机可通过数据链广播其自身的精确位置和其它数据(如速度、高度及飞机是否转弯、爬升或下降等)。ADS-B 接收机与空管系统、其它飞机的机载 ADS-B 结合起来,在空地都能提供精确、实时的冲突信息。
国内民航 ADS-B 无线电频率处于 1090MHz,想要接收到民航飞机的广播信号并看到飞机的轨迹,首先需要搭建一个的 ADS-B
环境
- CPU:Intel Celeron J1900
- RAM:2G DDR3
- OS:CentOS Stream release 8
- RTL-SDR 电视棒一个,芯片为 RTL2832U
- 电视棒白嫖至@zrm
安装 LibUSB
如果未安装 LibUSB,编译 RTL-SDR 驱动会出现如下错误
1 | -- Checking for module 'libusb-1.0' |
对于 Ubuntu 与 Debian 等系统可以尝试使用如下命令进行安装
1 | sudo apt-get install libusb-1.0-0.dev |
对于和我一样在 CentOS Stream 8 的同学可以使用如下方式安装
1 | 首先下载该RPM包 |
编译 RTL-SDR 驱动
1 | git clone git://git.osmocom.org/rtl-sdr.git |
新建 blacklist-rtl.conf 文件
1 | vim /etc/modprobe.d/blacklist-rtl.conf |
测试 RTL-SD,如果一切正常,你应该见到如下输出
1 | [root@MisakaTAT ~]# rtl_test -t |
如果出现如下错误
1 | rtl_test: error while loading shared libraries: librtlsdr.so.0: cannot open shared object file: No such file or directory |
请尝试按以下方式解决
1 | echo "/usr/local/lib/" > /etc/ld.so.conf |
部署 dump1090
拉取代码并编译 dump1090
1 | git clone https://github.com/antirez/dump1090.git |
启动 dump1090
1 | 无Web服务 |
安装 Mono
1.首先导入存储库的 GPG 密钥
1 | sudo rpm --import 'http://pool.sks-keyservers.net/pks/lookup?op=get&search=0x3fa7e0328081bff6a14da29aa6a19b38d3d831ef' |
2.添加 Mono 存储库
1 | yum config-manager --add-repo https://download.mono-project.com/repo/centos8-stable.repo |
3.安装 Mono
1 | sudo yum install mono-complete |
4.安装完成后检查 Mono 版本
1 | mono --version |
安装 VirtualRadarServer
首先下载并解压 VRS
1 | mkdir vrs |
下载 WebAdminPlugin 并解压到 vrs 目录下
1 | wget http://www.virtualradarserver.co.uk/Files/VirtualRadar.WebAdminPlugin.tar.gz |
创建 VirtualRadar.exe.config 文件并写入如下 xml 配置
1 | vim VirtualRadar.exe.config |
1 |
|
修改 web 端口防止与 dump1090 冲突
1 | vim ~/.local/share/VirtualRadar/InstallerConfiguration.xml |
创建用户并启动 VRS
1 | mono VirtualRadar.exe -nogui -createAdmin:admin -password:password |
安装 screen
1 | yum install epel-release |
启动 vrs
1 | 创建一个screen |
同理,启动 dump1090
1 | 创建一个screen |
其它命令
1 | 列出所有screen |
如果顺利启动的话,将会看到如下信息输出
浏览器访问
VRS http://192.168.1.100:8081/VirtualRadar/desktop.html
Web 管理插件地址 http://192.168.1.100:8081/VirtualRadar/WebAdmin/Settings.html
VRS 部分配置修改
如果有从公网访问管理界面的需求,请将此处修改为无限制,否则将会 403
设置接收机地理位置(经纬度),可以使用百度地图的坐标拾取系统,设置完成后请拉到底部点击 Save
http://api.map.baidu.com/lbsapi/getpoint/index.html
VRS 可选插件部署
- 数据库插件(可以将飞行记录(以及可选的飞机详细信息)保存到 BaseStation.sqb 数据库文件中)
1 | 下载插件并解压至vrs目录,并重启vrs |
如下图所示,请将Enable
勾选以启动数据库插件,并且设置数据库文件存放路径,也可选择Use Default File Name
,并且勾选底下两个复选框,作用分别为将在线查询保存在数据库中以及覆盖现有飞机的详细信息,配置完成后请点击 Save 按钮进行保存
提示
如果 yum 安装 Mono 的时候特别慢,可以为 yum 添加代理
1 | 编辑yum配置文件 |
- 本文链接: https://mikuac.com/ads-b/
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。