APRS
本文编辑:@BloodBlade
# 自动数据包报告系统 APRS
自动数据包报告系统(Automatic Packet Reporting System),简称 APRS,是基于地理位置的社交媒体软件,可以理解为现代地图软件的提交地点和同城交友两种功能的结合体。 APRS 可以用于发布许多种类的内容,例如位置、气象信息、短信、公告等等。 Bob Bruninga(WB4APR)于 1982 年为海军制造了 APRS 的原型系统,并在后期逐步发展出现在的功能。 APRS 通常工作在业余分组无线电网络中,而该网络使用 AX.25(Amateur X.25)数据包作为数据链路层,这是对 X.25 协议套件的第二层进行了适配业余无线电的修改所产生的协议。
需要注意的是许多翻译会将其称作自动位置报告系统,这是错误的,因为原文使用的是 Packet 而不是 Position。
在使用 APRS 之前,需要进行一些必要的设置。
# 终端节点控制器 TNC
TNC 是调制解调器和分组汇编器 / 反汇编器的结合体。不过并不需要理解这些东西到底是什么,只需要知道它的作用是将你想传输的数据变成可以发射的信号,或者将接收到的信号转换为数据就够了。
现代的 TNC 大多为 KISS TNC,这种 TNC 简化了许多功能,并将部分被简化的功能交由后面的设备处理,因此更容易由嵌入式设备来实现。
AX.25 数据包对物理层并没有规定,但有三种事实上的标准。
此外,许多厂商宣传的数字 APRS 和 Icom 设备的 D-PRS 并非 APRS,无法与 APRS 进行通讯! 如果你需要了解 DMR 的数字 APRS 或 D-Star 的 D-PRS,请直接翻到最后。
# 1200bps
1200bps 模式使用贝尔 202 调制解调器来产生音频频移键控(AFSK)信号,并通过 FM 音频电台发射,是最常见的模式。
贝尔 202 调制解调器使用 1200Hz 的音调作为 Mark,2200Hz 的音调作为 Space,以此方式来传输二进制信息。这种 AFSK 信号在经过为语音设计的预强调和减强调之后仍可以传输信息,因此可以通过将调制解调器插入手持或车载 FM 电台的 Mic 接口来使用。除了 APRS 之外,贝尔 202 在无线电中也常被用于也被用于摩托罗拉数据通信(如 MDC-1200)。
# 9600bps
这种模式一般使用 G3RUH 开发的调制解调器来产生 GMSK/DFSK 信号。受各种因素影响,它的速度只有 1200bps 模式的 2 倍左右。
这种模式由于无法通过语音处理电路,因此需要电台具有 9600 接口(也被称作数传接口)或调制解调器内置于电台中。如果电台没有接口或内置调制解调器,则需要改造输入线路以绕过音频处理电路。
# 300bps
这是短波 APRS 使用的模式,使用贝尔 103 调制解调器产生 AFSK 信号。其速度缓慢,且对电台的频率稳定性要求很高,不建议老旧电台尝试。贝尔 103 在通信发起者与通信应答者中使用不同的音频频率。其中发起者使用 1270Hz 音调作为 Mark、1070Hz 音调作为 Space;而应答者使用 2225Hz 音调作为 Mark、2025Hz 音调作为 Space。
# 频率选择
在本地使用 APRS 时,频率应设置为当地业余分组网络所使用的频率,对于国内来说一般都是 144.640MHz。如果当地的业余分组网络不使用该频率的话,可以通过中继查询网站来查询当地 AX.25 基础设施(中继、网关等设备)所使用的频率。 要是当地没有 APRS 基础设施的话,可以自己部署,或尝试卫星玩法。如果打算自己部署基础设施,那么建议选择 144.640MHz 以便实现全国统一的频率。
由于对讲机一般具有频率步进限制,如果你发现无法设置出 144.640MHz,那需要调整步进设置,一般调整为 20KHz 或其约数。
卫星 APRS 的频率较为不固定,国际空间站和一部分卫星统一使用 145.825MHz 频率,但另一部分卫星的频率则五花八门。进行卫星操作前最好先查询一下过境卫星所使用的具体频率。
# 数据包设置
# 呼号与 SSID
这里的呼号自然是指操作者的执照上所登记的呼号。而 SSID 则是为了区分不同用途的 APRS 站点的方法。AX.25 数据包支持 16 种 SSID,它们的意思分别是:
| SSID | 用途 |
|---|---|
| 无 | 具有消息功能,主要使用的固定台站 |
| 1,2,3,4,15 | 无规定,可任意使用 |
| 5 | 从其他网络传输到 APRS 网络的数据 |
| 6 | 特别活动,如卫星转发、6 米波段等 |
| 7 | 具有消息功能,主要使用的手持电台 |
| 8 | 次要使用的移动电台 |
| 9 | 具有消息功能,主要使用的移动电台,一般是常用车辆上的电台 |
| 10 | 通过互联网传输,可以指 IGate,也可以指通过 APRS-IS 上传的位置,比如医院之类的 |
| 11 | 航空航天器使用 |
| 12 | 仅发射电台(追踪器等)、DTMF 或 RFID 设备 |
| 13 | 气象站 |
| 14 | 卡车或全职司机 |
当有含义的 SSID 不够用时(比如说有 3 个交通工具、2 个气象站等情况)可以使用 1、2、3、4、15 这几个 SSID 进行区分。如果数据不通过 AX.25 传输的话,则不受 16 个 SSID 的限制。
# 图标
AX.25 数据包使用字符来表示图标,这些图标除了基本的图标以外,还有上面加入了字母数字等组合图标。现代 APRS 软件或设备都可以将字符显示为真正的图标。 大部分基本图标都有自己的含义,不过由于现在人们不再需要借助 APRS 来标识地图上的商店、医院和警察局之类的东西,因此大家也都不在关注这些图标的具体含义,而是随意使用了。
常见的图标有人 /[ 、小汽车 /> 、房屋 /- 、中继 /r 和气象站 /_ 。
# 路径
路径用于控制 AX.25 中继和 IGate。虽然路径系统进行过多次升级,但国内由于业余无线电起步较晚,因此无需考虑向前兼容,只需要考虑最新的路径系统即可。
现在的路径系统使用 WIDEn-N 来表示转发的数量,即 WIDE 是固定的字符,n 用于记录原本设置的最大转发次数,N 表示剩余的转发次数。 每当中继进行转发后,就会将 N-1,在路径中添加自己的呼号并在后面加入 *,以此来识别自己是否转发过该数据包,避免出现环路。 当转发次数耗尽,-N 会被 * 所替换。而如果不填写路径,则不会被转发。
举例来说, WIDE2-2 在第一次转发后会变为 N0CALL*,WIDE2-1 ,第二次转发后变为 N0CALL*,N1CALL*,WIDE2* 。
大部分软件都会将 WIDE1-1,WIDE2-1 作为预设,这个路径也会进行两次转发,其中 WIDE1-1 的作用为兼容旧中继规范,国内的 APRS 基础设施一般较新,大部分情况下都不需要它来进行兼容。
除了 WIDEn-N 之外,还有一些特殊的路径,比如国际空间站的 AX.25 中继强制要求路径包括 ARISS RS0ISS 或 APRSAT 。
RFONLY 和 NOGATE 则会要求 IGate 不要将该数据包发送至 APRS-IS 网络(IGate 可以不遵守)。
GATE,WIDEn-N 则会要求短波 IGate 将数据包转发至 VHF/UHF 频段中。
# 数据包类型
根据传输的内容和功能的不同,APRS 使用的数据包有多种不同的类型,其种类如下:
| 类型 | 指示 | 功能 |
|---|---|---|
| Mic-E | E | 麦克风编码数据包,是一种特定的传输方法,也是一种压缩格式 |
| 位置 | P | 位置信标,移动设备可包括方向、海拔、速度,固定设备可包括天线高度、增益、指向性等 |
| 气象报告 | W | 温度、湿度、风向、风速、气压、降水 |
| 目标 | O | 用于可移动物体,可用于非业余无线电相关内容,比如台风、车辆等 |
| 项目 | I | 用于不移动物体,可用于非业余无线电相关内容,比如医院、修路等 |
| 关闭 | K | 当目标和项目已经失效时使用 |
| 状态 | S | 一种自定义内容,可以理解为现代社交软件的状态 |
| 信息 | M | 短信,还具有群发和公告功能 |
| 其他 | ? | 其他类型,也有可能是数据损坏 |
| 紧急 | Emg | 数据包包含紧急状态 |
大部分数据包内还可以包括可自定义的备注文本,由于状态数据包需要单独发送,因此当文本不长时建议使用备注文本以减少网络中的数据包数量。 如果有发送长文本状态的需要,大部分 APRS 设备或软件都支持在间隔一定数量的普通数据包之后发射一次状态数据包,来降低数据包数量。
Mic-E 是压缩数据并通过特殊方式传输的方法,其诞生有一定的历史因素。目前来说,八重洲和建伍发售的具有内置 APRS 功能的电台会只会发射进行 Mic-E 压缩过的数据包,但不再会用这种特殊方式传输了。 Mic-E 在使用中的特点是其编码中强制包括了 15 种预定义的状态信息位,因此 Mic-E 压缩过的数据包必定包括这些状态信息:
| 状态信息 | 含义 |
|---|---|
| Off Duty | 离线,无法回复消息或语音通话 |
| En Route | 正在前往目的地 |
| In Service | 在线,可以回复消息或语音通话 |
| Returning | 正在从目的地返回 |
| Committed | 忙碌中,可能无法回复消息或通话 |
| Special | 特别状态 |
| Priority | 正在处理优先事项 |
| Custom 0-6 | 7 种自定义状态 |
| EMERGENCY! | 紧急情况! |
当设置为紧急情况时,所有收到该消息的电台都会发出警报提醒,因此这个状态不要随意使用。
自定义状态不是在电台中,而是团队预先约定某个数字代表某个意思。例如约定 Custom 3 为集合,当收到消息显示为 Custom 3 时就知道该集合了。
# 信标
业余无线电玩家主要使用 APRS 的位置数据包,将其作为信标来使用。对于手持和移动设备来说,通常具有内置的 GPS 接收器可以获取位置信息。而假如没有 GPS 的设备,那也可以手动填写位置数据。在手动填写位置数据时,建议填写天线的坐标位置,而不是机器的位置。
# 自动发射
除了手动执行发射以外,APRS 设备通常都具有自动发射信标的功能。这种自动发射功能通常有两种,定时发射和智能信标。
定时发射顾名思义,是每隔一定时间就自动进行发射;而智能信标则是指根据设备内置 GPS 的速度,方向等信息来自动设置发射时机,比如高速时增加发射速度,低速时降低发射速度或方向改变时进行发射等。
# 位置模糊
如果你不希望自己被找到精确位置,许多 APRS 设备都提供了位置模糊的功能,这个功能会将坐标信息中的分位进行抹除以扩大坐标对应的范围。其四个级别分别为:
| 位数 | 精确度 | 大致范围 |
|---|---|---|
| 关 | 精确到分的小数点后 2 位 | 很精确的位置 |
| 1 | 精确到分的小数点后 1 位 | 几十米范围 |
| 2 | 精确到分的个位 | 街道 / 乡 |
| 3 | 精确到分的十位 | 县级市 / 半个地级市 / 较大的区 |
| 4 | 精确到度 | 地级市及其近郊 |
# 信息
位置信标等类型的数据包在设置后通常会自动获取相关数据并进行发射,而信息则需要手动编写信息并进行发射。 在发射后,设备会在一定时间内等待对方的接收回执以确保收到,如果没有收到回执,则会再次尝试发射。 如果多次发射仍然未收到回执,则会将该消息标记为发射失败。
除了发给指定联系人外,还可以发送到群或公告。加入群组或公告需要接收方提前在自己的设备上设置自己加入的群组或公告栏,否则设备不会接收对应的信息。
APRS 信息支持传输 Unicode 字符,即可以传输汉字,但外国设备一般只会显示为空格,不过使用电脑或手机解码则可以正常显示。
# 中继信息设置
一些的中继台会搭载配套的 APRS 站点并定期发送包含中继设置的信标。 一部分具有 APRS 功能的电台(多为车载台)可以读取这些数据,当收到这种信标的时候,可以很方便的将机器自身的设置调整为中继的设置。
# 非业余分组无线电方式使用 APRS
# IGate 和 APRS-IS
IGate 意为互联网网关,顾名思义,它的作用是作为业余分组网络和互联网之间的网关,将业余分组网络连接到位于互联网中的中继服务器系统,即 APRS 互联网服务(APRS-IS)。
IGate 会接收来自业余分组网络的 APRS 数据包,解析之后通过互联网传输到 APRS-IS 服务器中。而 IGate 也可以将 APRS-IS 传来的数据包发射到业余分组网络中。 通过这种方式,原本受到距离限制而无法相互连接的多个业余分组网络可以通过互联网进行组合,构成可以连接的整体。 相较于完整的 IGate,APRS 卫星地面站通常使用 RX-Only IGate,即仅具有接收功能的 IGate。仅接收 IGate 成本较低,用廉价的电视棒接收机就可以搭建。 由于不具备发射功能,因此 APRS 基金会并不建议大量使用仅具备接收功能的 IGate。
除了 IGate 之外,还有许多 APRS 客户端可以直接通过互联网访问到 APRS-IS 服务器并上传或下载数据包,由于世界上绝大部分地区的业余无线电都需要持有许可才能使用,因此连接到 APRS-IS 需要进行验证。 APRS-IS 提供了两种验证方式,一种是通过特定算法,从呼号来计算出验证码。另一种则是通过 ARRL 的呼号证书来进行签名。
# ICOM 设备以及 D-PRS
在 D-Star 规范中,语音和数据是混合发射的,Icom 利用这一点为其发售的 D-Star 设备提供了可以伴随语音传输类似于 APRS 数据的方法,其使用方法与 APRS 基本相同,都具有 SSID 和图标,都具有位置、气象、目标、项目数据类型。 除了伴随语音发射,还可以设置为通过数字数据模式定时发射,因此还有专门为此设计的的网关系统和频率。这一整套可以组成完全与 APRS 系统独立但具有 APRS 大部分功能的网络。 由于不使用业余分组网络和 AX.25 数据包,因此 SSID 可以使用英文字母,但也因此无法与 APRS 设备互通。
D-PRS 则是将 Icom 的编码格式转换为 APRS TNC2 格式的规范,通过 D-PRS,D-Star 的数据可以被转换为 APRS 数据并通过互联网提交到 APRS-IS 服务器。需要注意的是,这是单向操作,即只能通过 D-PRS 将其转换为 APRS 数据而无法反过来转换。
# 数字 APRS
遗憾的是,DMR 虽然使用完整的 IP 网络,但当前 DMR 设备并不具有 APRS 或 D-Star 一般复杂的应用程序。现在的 DMR 设备仅仅只能传输简单的坐标信息。
不过虽然 DMR 不支持 APRS,但因为 DMR 服务器需要一直与互联网保持连接,所以一些 DMR 服务器提供了代替用户访问 APRS-IS 的方式,即数字 APRS。具体来说,就是 DMR 的中心服务器通过对接收到的坐标进行处理,生成 APRS 数据,然后通过 TCP/IP 方式输入到 APRS-IS 网络中。你可以把这想象成找一个具有了 APRS 设备的朋友,把你的坐标发给他,然后他替你发一个 APRS 信标。
要使用该功能,需要在注册 DMR 服务器之后,在服务器中设置好自己使用的 SSID、图标、备注、上传间隔等配置并保存。当 DMR 设备向 DMR 服务器的 GPS 服务 ID 发送坐标时,DMR 服务器会将读取发送者的坐标和 DMR ID,根据服务器中保存的配置生成 APRS 数据,并直接发送到 APRS-IS 网络。
在这个过程中,DMR 设备仅参与发送坐标到服务器这一环节,并且 DMR 信号也无法提供将 APRS 数据发回电台的功能,因此 DMR 设备在这里只能作为仅具有追踪功能的设备使用。
由于 DMR 设备大都具有消息的功能,因此 DMR 服务器还可以进行 APRS 消息和 DMR 消息的双向转换。 在 DMR 短信中可以通过加入收件人的呼号及 SSID 并发送到 DMR 服务器的 GPS 服务,DMR 服务器会将该消息转换为 APRS 消息发送至 APRS-IS;当对方发送接或回复消息时,DMR 服务器也可以将 APRS-IS 传来的消息转换为 DMR 短信发送给收件人。