自制民航客机雷达:用树莓派架设ADS-B地面站

本教程将教你如何使用一台树莓派单板电脑,安装并运行您自己 ADS-B 地面站,可以在您的计算机上直接接收周围飞机的实时数据。

最终实现效果如下:

The ADS-B Receiver Project

什么是 ADS-B

ADS-B(Automatic dependent surveillance – broadcast)是一种监视技术,飞机通过卫星导航确定其位置并定期广播ADS-B信号,使其能够被接收并跟踪。空中交通管制地面站可以接收这些信息,作为二级监视雷达的替代品,因为地面不需要询问信号。它也可以被其他飞机接收以提供态势感知。

ADS-B_en.png

设备准备

首先,我们需要一台树莓派(Raspberry Pi)单板电脑。这是Raspberry Pi基金会在英国开发的一系列小型单板计算机,可以安装多种操作系统和应用。这里我用的是国产的 Orange Pi 芯片电脑,比树莓派便宜些。

raspi.jpg

其次,我们需要一根 ADS-B 天线和协调器(Tuner)。这里我用的天线型号为 NooElec NESDR Mini 2+ ,协调器 RTL2832U & R820T2。

tuner.jpg

将天线接入协调器,协调器插入树莓派的 USB 接口即可。

ADS-B Receiver

了解 ADS-B feeder 的同学们一定知道 PiAware 和 FR24,这里我推荐的开源镜像是一个名为 The ADS-B Receiver Project 的项目,这个项目的镜像中囊括了 PiAware、FR24、Plane Finder、ADSB Exchange 多家平台的 feeder 客户端,并且有独立的 dump1090 和 dump978 的 WebUI 界面和管理后台。在后台可以查看服务器的运载情况。

WebPortal

安装 ADS-B Receiver

这里有两种安装方式:手动安装和镜像安装。为了方便,且避免手动安装脚本出错,我们可以选择作者已经现成做好的镜像(基于Raspbian Stretch Lite),直接烧录到树莓派的SD卡中。

首先下载树莓派镜像:
https://github.com/jprochazka/adsb-receiver/releases/latest

Windows 可使用 Win32DiskImager 软件进行烧录,Mac 可使用 Etcher 烧录。

配置 ADS-B Receiver

烧录完成后,用 SSH 进入命令行(假设你的树莓派局域网地址是192.168.0.23):

ssh [email protected]

SSH 初始密码是 adsbreceiver

可以通过这个命令来更改 pi 密码:

sudo passwd

操作系统启动后,需要做的第一件事是调整磁盘大小,以便使用SD卡上的所有可用空间。

通过运行以下命令来执行此操作:

sudo raspi-config

调整大小后,务必按说明立即重启树莓派。

安装 dump1090

设备完成重启过程后,使用上述凭据再次通过 SSH 登录设备。执行以下命令以使用ADS-B Receiver安装脚本开始配置dump1090-mutability。

cd~ / adsb-receiver /; ./install.sh

配置 Web Portal 网页管理

运行./install.sh后,在同一个局域网的电脑浏览器里,直接访问你的树莓派IP地址,配置 Web Portal。

设置 Web Portal 时,会让你在精简版或高级版安装之间进行选择。高级功能增加了飞行记录和绘图功能,对服务器和储存性能要求较高。该项目的作者建议,使用SD卡作为存储介质的人不要尝试使用高级功能。

安装各大平台 Feeder

ADS-B Receiver 的安装脚本能够安装附加软件,可用于将 dump1090-mutability 接收的数据提供给多个聚合站点,如FlightAware、Planefinder和ADS-B Exchange。

要安装其他软件,再次执行以下命令,然后选择要安装的软件:

cd ~/adsb-receiver/; ./install.sh

FR24(FlightRadar 24)常用命令

配置 Feeder ID

sudo piaware-config feeder-id

配置固定局域网IP地址(记得在路由器端做IP绑定):

sudo piaware-config wired-address

启动 FR24:

sudo systemctl start fr24feed
sudo systemctl start piaware
sudo systemctl start dump1090-fa

查看 FR24 运行状态:

sudo systemctl status fr24feed
sudo systemctl status piaware
sudo systemctl status dump1090-fa

重启 FR24:

sudo systemctl restart fr24feed
sudo systemctl restart piaware
sudo systemctl restart dump1090-fa
已有 2 条评论
  1. woody

    请问实例中用的天线,就可以接收到第一张图中那么大范围内的民航ADS-B的信号吗

    woody March 7th, 2019 at 10:10 am回复
    1. 老盐

      亲测是可以的,前提是视野要开阔,没有遮挡。我把天线放在高楼阳台上,可以搜到隔壁城市200NM外的飞机。

      老盐 March 8th, 2019 at 05:00 am回复
发表新评论