SDR是软件定义无线电的简称,这个设备可以接收无线电信号,在电脑或者手机上使用软件解码信号,相当于一个模拟了收音机。但是相比于一般的收音机,SDR可以实现全频段的接收。
因为依靠软件解码,无论接收到的无线电信号使用何种制式,只要有相应的解码软件,都可以达到硬件设备的效果。比如收听广播、收看电视,以及本文的ADS-B。
相对于专业无线电的设备,RTL-SDR的成本很低(参考某宝);只有接收功能,法律上也很宽松。
ADS-B系统即广播式自动相关监视系统,由多地面站和机载站构成,以网状、多点对多点方式完成数据双向通信。它主要实施空对空监视。(百度百科)
民航飞机上搭载了ADS-B out,也就是发射器,向周围广播自己的飞行信息(速度、高度、航向、位置……),ADS-B是世界通行的标准,我们可以自己接收飞机发射的ADS-B信号。
和ATC通话一样,未经授权发射ADS-B信号当然是违法的,接收信号则没有限制。国内没有禁止接收ADS-B信号,但是明确禁止将数据上传到境外。个人玩一玩是没有问题的,不要将数据分享上传。(所以事实上Flightradar24是违法的,类似的服务比如OpenSky的中国内地空域是空白的)。
ADS-B信号还是比较容易接收的,我用的一根小小的UV天线最远可以收到100km~150km。
首先需要准备设备。RTL-SDR设备某宝上就可以买到,差别不大
进阶一些可以搭配1090mhz带通滤波器和专用天线
有条件的话,天线四周尽可能开阔。
需要的软件:
RTL1090将接收到的信号进行解码,adsbSCOPE负责在地图上将飞机显示出来。
下载RTL1090后,遵照指示安装即可,安装过程中程序会需要下载zadig,国内的话可能下载较慢,可以到官网Zadig上直接下载。
在RTL1090的安装程序中会给出细致的zadig使用步骤,参考它的步骤即可,此处不再赘述。
adsbSCOPE可以直接打开使用。
启动RTL1090(可能要到安装目录下去找),
点击“START”开始,稍后就能看到接收结果
点击“Table”,可以看到搜索到的飞机,包括航班号、速度、高度等信息
打开adsbscope,找到other->Network->Network setup。在raw-data-client中,点击“local”和“presets”中的“RTL1090”,然后关闭即可。
完成后,如图所示,点击右侧按钮(start raw data client),按钮亮起即开始接收来自RTL1090的数据。
同时RTL1090下方的“TCP”也亮起。
稍后,便可以在adsbSCOPE上的地图中看到飞机(需要手动把地图拖到自己所在的地区,也可以找到Navigation->goto Town or Airport,找到你所在的城市或者附近的机场,即可将地图调到相应的位置,然后Navigation->set receiver location,在地图上记录你的位置)。
飞机较多的时候的接收效果: