动手工作坊
搭建你自己的 ADS-B 接收机,把你的那片天空放上地图
这门课程里的每一件事都可以从你自家的窗口得到验证。这个工作坊准确地告诉你该买什么、怎样把它们组装起来、怎样在一块 Raspberry Pi(树莓派)上安装 Dataero 共享程序(feeder),以及怎样看到你听到的飞机出现在 radar.dataero.eu 上,并注明来自你的站点。不需要任何无线电、电子或 Linux 经验。预算约 100 到 150 欧元,一个下午的时间,以及一扇能看到天空的窗户。
开始之前
你将搭建什么,以及为什么值得
一台接收机是排成一列的四样东西:一根捕捉 1090 MHz 电波的天线,一根把电波变成数字的 USB 接收棒,一台把数字解码成消息的小型计算机,以及一条把解码后的位置送到 Dataero 的互联网连接。从共享程序开始运行的那一刻起,你的天线听到的每一架飞机都会被画在 radar.dataero.eu 的实时地图上,供所有人查看,并注明你的站点是来源。这条链条中没有任何东西发射:你只是收听,而收听在比利时、在整个欧盟以及世界上大多数地方都是合法的(如果你住在别处,请查阅你所在国家关于接收设备的规定)。
课程解释了这个系统为什么能工作;接收机让你亲手检验它。你将用真实的飞机测量第 7 章的无线电地平线,在信号强度一栏里看到平方反比定律,观察消息速率随一天中时间的变化,并比较窗边天线和屋顶天线。对一个家庭来说,这是为故事收尾的项目;对一个班级来说,这是屋顶上一台常设的仪器,全年产出真实的数据。
它还让你成为一名数据贡献者。Dataero 的地图完全由志愿者、机场和学校托管的接收机汇聚而成,地图的好坏取决于它的收听者。数据贡献者可以免费获得访客得不到的东西:一个显示站点听到了什么的控制面板,一张以二维和三维呈现自己那片天空的覆盖范围地图,365 天的航班历史,以及排行榜上与网络中其他所有站点并列的一席之地。不收取任何费用,不签署任何东西,同一台接收机还可以继续向你已经在用的任何其他网络共享数据。
一张图
各部分如何连在一起
信号从左向右流动。左边三个阶段是无线电,接下来两个是计算,最后三个是网络。每个阶段在参考课程里都有对应的一章。
天线是第 5 到 8 章的物理发生的地方:一段约 65 mm 长的四分之一波长金属,与 27.5 cm 的电波共振,把几十亿分之一瓦变成一个微小的电压。电缆把这个电压送到接收棒,如果电缆很细,每十米大约损失一半,这就是为什么天线应当靠近接收棒,或者电缆应当足够粗。滤波器和放大器是可选的:它们在 1090 MHz 信号到达接收棒之前把它增强,并排除手机和调频广播发射台,否则这些发射台会把接收棒震聋。接收棒是一台软件定义无线电,每秒对电波采样两百万次,把数字交给 Raspberry Pi,解码器(readsb,dump1090 的后代)在那里找到第 4 章的前导码,读出 112 位,检查校验码,丢弃任何通不过的内容。然后 Dataero 共享程序把解码后的消息通过你的互联网连接转发到 Dataero 的汇聚中心,汇聚中心把你的站点和其他所有站点合并成地图。
购物清单
该买什么,逐件说明
下面的清单是完整的:有了这些零件,不需要别的,你就能共享数据了。它分为两种方案。基础方案把一根小天线放在室内,窗边或阁楼里,足以看到系统运行,并从第一个晚上起就共享数据;进阶方案把一根调谐天线架在室外,配上带滤波的放大器和低损耗电缆,可以达到无线电视距。价格仅供参考,为全新含增值税价格,随商店和月份而变。“购买”按钮会在你选择的国家的 Amazon 商店打开相应零件;同样的零件在任何电子产品商店都能买到,计算机可以从 Raspberry Pi 官方经销商购买(Raspberry Pi 网站按国家列出了它们)。无论在哪家店,都请购买专门为 ADS-B 出售的接收棒,因为同一款接收棒作为电视调谐器出售时,往往是更老、噪声更大的版本。
计算机:一块 Raspberry Pi
2 GB 内存的 Raspberry Pi 4 Model B 是正确的选择:它只用一小部分算力就能解码 1090 MHz,有四个 USB 口、有线 Ethernet 和 Wi-Fi,并且有带外壳和电源的套装出售。Raspberry Pi 5 同样好用,价格略高一点;如果你已经有一块 Raspberry Pi 3B+,也能用;Raspberry Pi Zero 2 W 能用,但 USB 供电紧张,第一次搭建最好避开。请为你的型号购买官方电源(一个羸弱的手机充电器是接收机随机重启最常见的原因),一张知名品牌的 16 或 32 GB microSD 卡,以及一个有一定通风的外壳,因为接收棒和处理器都会发热。如果套装里没有,再加一套小散热片。计算机预计 50 到 70 欧元,电源 10 到 15 欧元,存储卡 10 欧元,外壳 10 欧元。
无线电:一根 RTL-SDR 接收棒
接收棒是一台围绕 RTL2832U 芯片和 R820T2 或 R860 调谐器构建的软件定义无线电,正是第 9 章描述的那个家族。请买一根专为 ADS-B 销售的。最好的入门选择是一根内置 1090 MHz 滤波器和放大器的接收棒(FlightAware Pro Stick Plus 最为知名;AirNav 的 FlightStick 与之类似):你本来要另外购买的滤波器和低噪声放大器都在棒子里面,在城市里它比普通接收棒听得远两到三倍。通用接收棒(RTL-SDR Blog V4、Nooelec NESDR SMArTee)也能用,如果你以后想收听别的东西,它更灵活,但如果你住在距离手机基站几公里之内,请加上下面描述的外置滤波器。无论买哪一种,请检查天线接头:SMA 是标准,这份清单里的每一根天线和电缆都用它;请避开采用小型 MCX 接头的接收棒,它需要转接头而且容易损坏。预计 30 到 45 欧元。
天线
如果接收棒的包装盒里附带小磁吸天线,就先用它:放在窗边的金属表面上,它能听到 80 到 150 km 外的飞机,足以在第一个晚上看到系统工作起来。不过,真正的接收机需要一根为 1090 MHz 调谐的天线,这是不该省钱的那一件:装在防水管里的叠层共线天线,60 到 70 cm 长,有 4 到 6 dBi 的增益,底部是 N 或 SMA 接头(FlightAware 的 1090 MHz 天线和 Jetvision 的 A3 是常见选择,50 到 70 欧元)。它被制造成恰好在第 8 章的波长上共振,并把灵敏度集中到远处飞机所在的地平线方向;装在室外视野开阔的短桅杆上,它能达到无线电地平线,对巡航高度的飞机是 350 到 450 km。用导线剪出来的自制天线是课堂实验,不是接收机:几毫米的误差就会让它失谐,它只能听到出厂调谐天线所听到的一小部分。
电缆和接头
如果天线就在 Pi 旁边,一根细而柔软的 1 到 3 m 的 SMA 公头对 SMA 公头电缆(一米用 RG-174,三米用 RG-58 或 H155)就够了。距离越长,电缆就必须越粗:在 1090 MHz 上,细电缆每十米损失约 3 dB,即一半的信号,而 LMR-400 或 H1000 这样的粗低损耗电缆只损失约 1.3 dB。因此,离 Pi 15 m 的屋顶天线需要 LMR-400,或者在天线处加一个带滤波的放大器,或者两者都要。请购买按长度定制、已装好接头的电缆(如果天线是 N 母座,天线端用 N 公头,接收棒端用 SMA 公头),因为手工安装 N 接头需要压接工具和练习。短电缆预计 10 欧元,长的低损耗电缆 30 到 60 欧元。再加一根 30 到 50 cm 的短 USB 延长线,把接收棒从 Pi 上移开:直接插在主板上的接收棒会拾取处理器自身的无线电噪声,还会挡住旁边的接口。
滤波器和放大器(可选,但这是花钱能买到的最便宜的作用距离)
如果你的接收棒没有内置滤波器,在电缆和接收棒之间加一个 1090 MHz 带通滤波器(20 到 25 欧元,SMA 进出),它会去除普通接收棒同样会收到、在城市附近会使它过载的手机、调频广播、电视和寻呼信号。更好的是一个带滤波的低噪声放大器(约 35 欧元;RTL-SDR Blog 1090 LNA 和 Uputronics 前置放大器是常见的型号),装在长电缆的天线一端:它在电缆损失信号之前就把信号放大,并且由接收棒通过电缆本身供电(即偏置器,bias tee,接收棒必须支持它;Blog V4、Pro Stick Plus 和 SMArTee 都支持)。装在长电缆 Pi 一端的放大器几乎没有用,因为它放大的是电缆已经损失过的东西。
工具和其余东西
你需要一台带 SD 读卡器的电脑(或一个 5 欧元的 USB 读卡器)来写入存储卡,家里路由器的 Wi-Fi 密码或一个空闲的 Ethernet 口和网线,以及放天线的地方:一个窗台、一根阁楼横梁,或一根配两个墙面支架的短桅杆。室外天线还要加上密封接头用的自融胶带(3 欧元)、扎带和几米富余的电缆来做滴水环。一把小螺丝刀和一把剪刀是仅有的工具。
| 零件 | 用途 | 在 Amazon 购买 |
|---|---|---|
| Raspberry Pi 4 套件Model B,2 GB 或 4 GB,套件内含官方电源、通风外壳和 32 GB 或 64 GB microSD 卡;Raspberry Pi 5 套件同样可以 | 解码报文并运行 Dataero 共享程序 | 在 Amazon 购买 |
| AirNav Radar FlightStick 接收棒USB 软件无线电,内置 1090 MHz 滤波器和放大器,SMA 插座;FlightAware Pro Stick Plus 在有货时同样适用 | 把无线电波变成数字;内置的滤波器和放大器正是它在城市里有作用距离的原因 | 在 Amazon 购买 |
| USB 延长线,30 到 50 cmUSB 2.0,A 公头转 A 母头 | 让接收棒远离处理器自身的无线电噪声,并空出相邻的接口 | 在 Amazon 购买 |
| 带磁性底座的 1090 MHz 小天线为 ADS-B 调谐,自带电缆和 SMA 公头插头 | 在窗边接收电波;放在金属表面上,能听到 50 到 150 km 外的飞机 | 在 Amazon 购买 |
作为 Amazon 联盟成员,Dataero Europe 从通过这些链接完成的合格购买中获得收入,你无需额外付费。价格、库存和配送以 Amazon 显示为准;同样的零件在任何电子产品商店都能买到。
放在哪里
安放天线:高度、天空和电缆
位置胜过价格。第 7 章的无线电地平线公式,d = 4.12 x (sqrt(h 飞机) + sqrt(h 天线)),高度以米计,告诉我们一根放在 2 m 高窗台上的天线能看到 438 km 外、11000 m 高的客机,而同一根天线放到 20 m 高的屋顶上只多看 13 km。高度远不如挡在中间的东西重要:一堵墙、一座山、一片金属屋顶或一栋邻近的建筑会完全挡住视线,一扇背对航路的窗户只能听到半边天空。所以第一个问题不是“多高”,而是“天线能看到什么”,答案应当是:尽可能多的天空,一直到地平线,朝向尽可能多的方向。
在窗边,如果可以,把天线放在玻璃外侧(放在阳台栏杆上,用磁铁吸在一块钢板上),否则放在靠着玻璃的内侧窗台上;带金属镀膜的现代双层玻璃会明显削弱信号,而一扇能打开的窗户可以让电缆伸出去。选择朝向最近机场或最繁忙航路的那扇窗;实时地图会告诉你是哪一扇。在阁楼里,瓦片或石板屋顶对 1090 MHz 几乎是透明的,天线能看到每一个方向;金属屋顶或贴有铝箔的保温层则是不透明的。把天线挂在横梁上,在屋脊允许的范围内尽量高,远离水箱和电线。在屋顶上,用两个墙面支架把一根高出屋脊一米的桅杆装好,就能越过烟囱和邻居;这是能达到无线电地平线的安放方式,也是需要粗电缆或天线处放大器的那一种。
| 电缆 | 1090 MHz 下每 10 m 的损耗 | 10 m 后剩余的信号 | 用途 |
|---|---|---|---|
| RG-174(2.8 mm) | 约 7 dB | 20% | 室内,1 m 以内 |
| RG-58(5 mm) | 约 5 dB | 30% | 室内,1 到 3 m |
| H155 / LMR-200(5.5 mm) | 约 3 dB | 50% | 最长 5 m |
| LMR-400 / H1000(10 mm) | 约 1.3 dB | 75% | 10 到 20 m 的屋顶走线 |
| 天线处的放大器 + 任何电缆 | 损耗在进电缆前已付清 | 几乎全部 | 任何长距离走线 |
第 1 步
组装硬件
组装就是把接头拧在一起;唯一要做对的,是用手把每一个接头拧到拧不动为止,不用工具,并且避免在距接头一掌宽之内把电缆折弯。
- 如果套装里有散热片,先把它们装到 Pi 上,把 Pi 放进外壳,盖子暂时不盖。
- 把天线电缆拧到天线上(N 或 SMA,手拧紧),如果你使用单独的滤波器或放大器,把它拧在电缆的接收棒一端:天线、电缆、滤波器或放大器、接收棒,按这个顺序。天线处的放大器则改为装在天线和电缆之间。
- 把电缆拧到接收棒的 SMA 插座上。把接收棒插进 USB 延长线,再把延长线插进 Pi 的一个蓝色 USB 3 口(任何口都能用;蓝色的离 Wi-Fi 天线最远)。
- 把天线放到你上面决定的位置,电缆以平缓的弧线布线。把接收棒放在能通风的地方;它摸起来是温热的,这是正常的。
- 如果用网线,把它接到路由器上。先不要接电源:存储卡要先准备好。
第 2 步
准备 Raspberry Pi
Pi 的存储卡上需要一个操作系统,还需要一种让你从自己的电脑向它输入命令的方式。两件事加起来十分钟,都在一个程序里点几下就能完成,这个程序是 Raspberry Pi Imager,可以从 Raspberry Pi 网站免费下载,有 Windows、macOS 和 Linux 版本。
- 把 microSD 卡插进你的电脑。打开 Raspberry Pi Imager。在“Raspberry Pi Device”下选择你的型号;在“Operating System”下选择 Raspberry Pi OS (other),再选择 Raspberry Pi OS Lite (64-bit),即没有桌面的版本,因为接收机永远不会接屏幕;在“Storage”下选择这张卡。
- 点击 Next,当 Imager 提出应用操作系统自定义设置时,点击 Edit settings。在 General 选项卡中把主机名设为 adsb(这样 Pi 就以 adsb.local 应答),勾选“Set username and password”并设置两者(把它们记下来),除非你使用网线,否则输入你的 Wi-Fi 名称和密码以及国家;设置你的时区。在 Services 选项卡中勾选 Enable SSH 并选择密码认证。保存,然后确认这张卡将被擦除,让 Imager 写入并校验。
- 把卡插进 Pi,接上电源,等两分钟:启动时绿灯闪烁,第一次启动会慢一些。
- 在你的电脑上打开一个终端:Windows 上是 PowerShell(在开始菜单里搜索它);Mac 上是 Terminal;Linux 上是任何终端。用你设置的用户名输入下面的命令,按回车,对关于指纹的提问回答 yes,然后输入你的密码(输入时什么也不显示)并按回车。提示符变成了 Pi 的:你现在是在接收机上输入了。
ssh <username>@adsb.local如果找不到 adsb.local,说明你的路由器不传递本地名称:打开它的网页,找到已连接设备的列表,记下 Pi 的 IP 地址(类似 192.168.1.42),用它代替名称。连接之后,把系统更新到最新并安装 git,也就是下载共享程序的工具;复制这一行,粘贴,按回车,然后等待。第一次更新可能要十分钟。
sudo apt update && sudo apt full-upgrade -y && sudo apt install -y git第 3 步
安装 Dataero 共享程序
Dataero 共享程序是 Dataero 在 GitHub 上发布的一个小型开源程序(github.com/dataero-adsb/dataero-adsb-feeder)。它的安装程序会完成一台接收机需要的一切:如果 Pi 上没有解码器(readsb)就安装它,向 Dataero 注册你的接收机,生成它唯一的接收机 ID,设置转发消息并保持连接的服务,最后检查 Dataero 能否听到你。运行之前,你可以在 GitHub 上读到它的每一行。三条命令,在 Pi 上依次输入:
git clone https://github.com/dataero-adsb/dataero-adsb-feedercd dataero-adsb-feedersudo bash installer.sh安装程序会问几个问题。下面是每一个的含义和该怎么回答。
| 安装程序的提问 | 含义 | 怎么回答 |
|---|---|---|
| Do you want to automatically install readsb? (yes/no)(是否自动安装 readsb?) | 这块 Pi 上没有找到解码器;readsb 是把接收棒的采样变成消息的程序。 | 完整输入 yes。任何其他回答都会让安装程序停止。下载和编译需要几分钟。 |
| Station name (optional)(站点名称,可选) | 在地图和排行榜上与你的接收机一起显示的名称。 | 一个简短的名称:你所在的城镇加一个词,或一所学校的名字。以后可以再次运行安装程序来修改。 |
| Enable MLAT for this receiver? (y/N)(是否为这台接收机启用 MLAT?) | 多点定位(第 10 章):你的接收机的计时帮助定位那些不发送位置的飞机。它需要精确的天线位置。 | 第一次安装回答 n,如果你能把天线位置给到几米以内,就回答 y。 |
| Latitude, Longitude, Antenna altitude (metres)(纬度、经度、天线海拔,以米计) | 天线在哪里。启用 MLAT 时必填,否则可选;用于你的覆盖范围地图和作用距离统计。 | 用小数点的十进制度(50.8467, 4.3525),海拔以米计:你所在地址的地面海拔加上天线离地面的高度。 |
要找到位置,打开任何一个在线地图,在天线所在的准确位置上点右键,复制坐标;大多数地图显示六位小数,精度是十分之一米。地面海拔可以在地形图上找到,或者在 GPS 应用的“海拔”一栏里;再加上天线离地面的高度(二楼的窗户约 6 m,两层楼房的屋脊约 9 m)。手机自己给出的海拔常常错十米或二十米,所以地面用地图,其余的用卷尺。不要用猜测的位置启用 MLAT:一台计时说“我在这里”而实际在别处的接收机,会拖累它参与的每一次定位。
然后安装程序会工作几分钟,最后显示一个以 Installation complete 开头的横幅。它会打印你的接收机 ID,一长串字母和数字组成的代码(一个 UUID),你的站点所连接的 Dataero 汇聚中心,以及与 Dataero 第一次联络的结果:当注册服务接受了接收机的心跳,你的站点就上线了。接收机 ID 是你站点的钥匙:它随每一条消息一起发送,也是你粘贴到账户里用来认领它的东西。请自己保管好,因为第一个关联它的账户将拥有这台接收机。万一弄丢了,它就存在 Pi 上:
sudo grep RECEIVER_UUID /usr/local/dataero-adsb-feeder/.env第 4 步
上线,并认领你的接收机
横幅出现后一分钟之内,第一架飞机应该就会出现。请看三个地方。在 Pi 本身上,下面的命令会打印一张实时表格,列出正在解码的每一架飞机,包括它的地址、呼号、高度、速度和以 dBFS 表示的信号强度;按 q 退出。readsb 的安装程序还在 Pi 上设置了一张本地地图,http://adsb.local/tar1090(或者用 IP 地址代替名称),它显示你自己的站点所看到的天空,并带有距离环。而在公共地图 radar.dataero.eu 上,你的站点听到的飞机会在几秒之内和其他所有人的一起被画出来。
viewadsb你的接收机已经在以匿名方式共享数据了。认领它会把它关联到你的账户,并解锁网站上属于数据贡献者的那一面:打开 radar.dataero.eu,注册一个免费账户或登录,在账户菜单中打开接收机,选择关联接收机,粘贴安装程序打印出的接收机 ID。请使用 Dataero 的接收机 ID,而不是你可能同时运行的其他共享程序的 UUID。从那一刻起,你的站点在地图上有了名字,有了一个控制面板(接收到的飞机、每秒消息数、最繁忙的小时、最罕见的飞机),一张由每条消息的信号强度绘制的二维和三维覆盖范围地图,365 天的航班历史而不是访客的零天,以及排行榜上的一个名次。认领之前收集到的一切都已经在那里了。
第一个晚上可以期待什么:在窗边用盒内附带的天线,在欧洲繁忙的地区同时能看到 20 到 60 架飞机,远到 100 或 150 km,建筑那一侧有一个空洞;在阁楼里用调谐天线,100 到 200 架飞机,远到 250 km;在屋顶上,200 到 400 架飞机,在没有遮挡的方向上作用距离可达 400 km。控制面板里的消息计数比作用距离更能说明问题:一个好的站点在欧洲白天的高峰每秒解码 500 到 1500 条消息,在深夜只有几十条。一天之内的曲线就是课程第 4 课的可视化:飞机晚上不飞,因为人不飞。
第 5 步
调校,并理解你看到的东西
两个设置决定了一个站点的大部分性能,两者都可以在 Pi 上一秒钟改好。第一个是增益,即接收棒在数字化之前放大多少。readsb 以自动增益启动,这是一个不错的折中。如果头顶的飞机消失而远处的飞机还在,说明接收机被附近的强信号过载了,增益太高;如果远处的飞机始终不出现,则增益太低。下面的命令以 dB 设置一个固定增益;试试 30 到 49 之间的值(49.6 是接收棒的最大值),每个值观察十分钟本地地图上的飞机数和最远距离。对自带放大器的接收棒,在窗边通常 40 到 45 最好,在屋顶上则更低。输入 -10 这个值就回到自动。
sudo readsb-gain 43第二个是本地地图的位置,readsb 用它来画距离环并计算每架飞机的距离;它和你给 Dataero 安装程序的位置(Dataero 用的是那一个)是分开的,用第二条命令设置。然后打开本地地图,看着最远飞机的轮廓在一天里慢慢长大:那个轮廓就是你的无线电地平线,它的形状就是你的障碍物的形状。
sudo readsb-set-location 50.8467 4.3525viewadsb 里的信号一栏,就是第 6 章的平方反比定律的数字版。一架在 10 km 外从头顶经过的飞机大约是 -5 dBFS;同一架飞机在 300 km 外,远了三十倍,到达时弱了九百倍,约 -30 dBFS,而解码器仍然读得出来,因为消息只需要比噪声强就行。看着一架飞机的信号在穿越你的天空时升高又降低,你就不用公式测量了这条定律。丢弃消息的那一栏数字高的时候,说的是相反的事情:两架飞机的强信号在同一瞬间到达,互相搅成乱码,这是第 11 章描述的极限,也是三十公里外的第二台接收机能看到你丢失的消息的原因。
如果你启用了 MLAT,由多点定位确定位置的飞机会出现在 Dataero 地图上,并以一种特别的标记回流到你的本地地图上。这些是不发送自己位置的飞机:较老的公务机、军用运输机、一些直升机。你对每一架的贡献是一个精确到几纳秒的时间戳,汇聚中心用它和另外三个站点一起解出第 10 章的双曲线。天线位置哪怕只错 30 m,也会让你的计时偏移十分之一微秒,足以让一架解出的飞机偏离一公里,这就是安装程序坚持要求精确位置的原因。
不工作的时候
故障排查
几乎每一个问题都是下表中的某一个,每一个都有一行命令可以检查。命令在 Pi 上运行,用和安装时同一个终端连接。
| 症状 | 最可能的原因 | 怎么办 |
|---|---|---|
| ssh 找不到 adsb.local | 路由器不解析本地名称,或者 Pi 不在网络上。 | 使用路由器设备列表里的 IP 地址。如果列表里没有 Pi,检查你在 Imager 里输入的 Wi-Fi 信息,或者改用网线。 |
| readsb 不启动;“no device found” | 没有看到接收棒:USB 线松动、电源太弱,或者接收棒不是 RTL-SDR。 | 重新插好接收棒和延长线;运行 lsusb,查找“RTL2838”或“Realtek”;把电源换成官方的。 |
| readsb 在运行但没有飞机 | 天线没接上、电缆有一个接头断开,或者天线处于无线电阴影中。 | 检查每一个接头是否拧紧;把天线移到天空开阔的窗边;在城市里,没有滤波器的普通接收棒可能需要加一个。 |
| 附近的飞机消失,远处的还在 | 过载:增益太高,或者附近有强发射台。 | 降低增益(readsb-gain 35),加一个 1090 MHz 滤波器。 |
| 飞机出现在本地地图上,但不在 radar.dataero.eu 上 | 共享服务没有在运行,或者 Pi 没有连上互联网。 | 运行下面的状态命令;显示为“failed”的服务会在日志里告诉你原因。再次运行安装程序:它会修复配置并保留你的 ID。 |
| Pi 随机重启或接收棒随机消失 | 电源。接收棒要吃掉三分之一安培;弱电源会让电压跌落。 | 使用官方电源;拔掉其他 USB 设备;检查红色电源灯是否常亮。 |
| 认领时提示“Receiver not found” | 粘贴了另一个 UUID(来自其他共享程序,或者打错了)。 | 粘贴第 3 步里 grep 命令打印出的值;那才是 Dataero 的接收机 ID。 |
sudo systemctl status readsb dataero-readsb dataero-feedersudo journalctl -u dataero-feeder -n 50如果这些都没有帮助,请在共享程序的 GitHub 页面上提交一个 issue,附上这两条命令的输出:编写安装程序的人会读它们。Dataero 还运营着一个社区频道,链接在“成为数据贡献者”页面上,其他数据贡献者在几小时内就能回答大多数问题。
之后
让它一直运行
一台接收机几乎不需要照料。停电之后服务会自行启动;Pi 没有活动部件;接收棒能用好几年。每个季度连接一次 Pi,再次运行第 2 步里的更新命令,然后从当初下载到的文件夹里再次运行安装程序(先 cd dataero-adsb-feeder,再 sudo bash installer.sh):它会获取当前版本的共享程序,保留你的接收机 ID、名称和位置,并以你上次的回答为默认值问同样的问题。如果你移动了天线,再次运行安装程序并给出新位置;如果你搬家了,也这样做,其他什么都不用变。如果你哪天想停止,同一个文件夹里有一个卸载程序。
两个习惯能让一个站点保持健康。每周看一次控制面板:消息速率一夜之间减半,意味着某根电缆松了,或者一棵树长高了。还有,在第一天就从本地地图上记下三个数字:各个方向的最远距离、晚间高峰的飞机数和消息速率。它们是你的基准,此后你做的每一个改动,一根更好的天线、一根更高的桅杆、一个滤波器,都拿它们来衡量。这种测量,正是课程一路引向的科学。
给班级或家庭
把接收机变成一个项目
接收机是一台常设的仪器,对它最好的用法是做一系列测量,每一项检验课程中的一个想法。对一个家庭来说,其中一项就能填满一个星期天;对一个班级来说,每一项都是一节课,而站点在两节课之间收集的数据就是家庭作业。控制面板的小时图、覆盖范围地图和本地地图的作用距离轮廓是仪器;课程给出预测;测量来裁决。
- 高度与作用距离(第 7 章)。记下天线放在桌上、二楼窗边、顶楼窗边、阁楼里时的最远距离。画出作用距离随高度的变化,与无线电地平线公式比较;差异就是障碍物。
- 平方反比定律(第 6 章)。在 viewadsb 里跟踪一架飞机穿越天空,每分钟记录信号与距离;以 dB 为单位的信号对距离的对数作图;斜率应接近每十倍距离 -20 dB。
- 一天的节奏(第 4 课)。连续一周,每小时从控制面板读取消息速率。解释曲线的形状:早高峰、晚高峰、最近机场的夜间宵禁、工作日与星期天的差别。
- 天空在哪里结束。一周之后把本地地图上的作用距离轮廓描下来,叠在当地地图上。每一个凹陷都是一栋建筑、一座山或一棵树;把它们一一指认出来。
- 地图的好坏取决于它的收听者(第 11 章)。在某个晚上把你的站点的覆盖范围地图与公共地图比较:你没有听到的飞机,有别人听到了。在排行榜上找到最近的另一个站点,用公式算出你们两个圆在哪里重叠。
在学校里,接收机还能回答每个班级都会问的问题,“那是什么飞机?”,只要在走廊上放一块显示本地地图的屏幕。控制面板的“最罕见的飞机”列表每个月都带来惊喜:一架政府专机、一架老式客机、一架空中救护机,每一架都是一个关于它为什么在那里的故事。而一个向 Dataero 共享数据的学校站点,会以学校的名字作为来源出现在公共地图上,这是一种比大多数名气都更好的名气。
欢迎
数据贡献者得到什么,地图又从你这里得到什么
radar.dataero.eu 的访客看到的是一张实时地图、数量受限的飞机和每架飞机的几个字段,每次浏览时段十分钟。免费账户取消了时段限制,显示全部字段,并保留七天的航班历史。数据贡献者,也就是现在的你,获得整个网站:每个航班 365 天的历史、控制面板、二维和三维的覆盖范围地图、排行榜,以及地图上注明的站点。这一切现在和将来都不花一分钱,而接收机可以继续向你选择添加的任何其他网络共享数据。
地图从你这里得到的,是用钱买不到的东西:在原本没有收听者的地方多了一个收听者。网络上的每一台接收机都听到一圈天空,一片大陆只有在这些圆重叠的地方才被覆盖。空白处的一个新站点,一个村庄、一段海岸、一条山谷、一个数据贡献者稀少的国家,会让原本没人听到的飞机出现,并让那些不发送位置的飞机的多点定位成为可能。今晚看看地图上你所在地区的覆盖范围,再在你的站点上线一周后看看它:那个差别就是你的。