11.2 选择合适的“软件无线收发”设备
现在,你要一些有关“软件无线收发”设备操作的一些基本原则,让我们先看看市场已有的各种“软件无线收发”设备,本节主要讨论选择一款设备的四个主要特性。
采样率 (Sample Rate)/带宽 (Bandwidth) 采样率就是你能同时看到的最大带宽,通常以“每秒百万次采样值”为单位。看看Wi-Fi无线网络的802.11b/g,或者是“低功耗蓝牙”的信号,你至少需要20MSPS的带宽。不过,相比于这些“带宽大户”,我们更多使用的信号带宽都是2MSPS,具体在本章以后的内容中将不断出现。
动态范围 (Dynamic Range)/“模数转换器”分辨率 (ADC Resolution) “模数转换器”的分辨率,类似于现代电视上对比度和“每英寸点数”(Dots-Per-Inch,DPI),是以“位”(bit)为单位。较高的“模数转换器”的分辨率一般是14位或16位,这样既可以在记录中分辨出很大的声音和极其细微的小细声音,并且可以对信号中声音的轻微差别进行区分。对于一些要求比较苛刻的应用,如“低功耗蓝牙”加上“全球定位系统”,8位的分辨率可能是不够的。不过,具体还要看是做什么,对于跟踪飞机、解码传呼消息和更多简单的应用上,8位就足够了!
发送功能 (Transmit Capability) 一些“软件无线收发”设备只有接收功能,而没有发送功能。虽然据大部分的调查工作,大家都是把“软件无线收发”设备作为一个接收器使用,但仍有些读者可能不满意,非坚持要求设备具有发送能力!要鉴别设备是只有接收功能,还是兼具收发功能,可以注意一下“软件无线收发”设备的输入/输出配置,即使是具有收发功能,有一些“软件无线收发”设备可以同时发送和接收,一般标注为“全双工”(full duplex),而另一部分则只具有“半双工”(half duplex)的传输能力[1]。
调谐器调谐范围 (Tuner Range) 调谐器的调谐频率范围决定你能够接收的频率范围。例如,如果你想接收蓝牙通信数据包,你最好确保你挑的这款“软件无线收发”设备包括了2.4GHz的范围!
在软硬件产品市场上,有几款“软件无线收发”设备可以使用,表11-1中列出了其中四个最常见的产品介绍。在后面的介绍中,我们将集中围绕着RTL-SDR和RTL-SDR这两款“软件无线收发”设备中的技术进行分析,而这两款也是目前可用的“软件无线收发”技术中最常用的。
11.2.1 RTL-SDR:入门级的软件无线收发设备
如果我们没有拿出一小篇幅的内容介绍一款针对大众想要的“软件无线收发”设备的话,那就是我们的失职了。RTL版的“软件无线收发”设备[2]就是作为一款最廉价的“软件无线收发”设备粉墨登场的,这款设备的作用主要是收看“数据广播电视”(Digital Broadcast Television,DVB-T),收看节目遍及欧洲、亚洲和大洋洲。插到你的笔记本电脑的USB口中,只要你有信号,就可以看电视。
研究人员Eric Fry发现这个设备是通过USB口发送原始无线信号的波形的。更重要的是,该设备可以在50~1750MHz之间任何调谐。于是他随即编写了一个简单的驱动程序,并增加了支持“GNU计划”[3]中的无线部分。这项开发迅速发展,不久,各地“软件无线收发”设备的无线电爱好者都热追该软件。同时,这款设备的售价也只有20美元,其实物图如图11-2所示。现在,有很多地方可以购买RTL版“软件无线收发”设备,比如http://www.nooelec.com。
不过,虽然20美元听起来对于这样一个基于USB加密狗的RTL版“软件无线收发”SDR设备来说,是相当吸引人的,但也不可否认,这个设备也有一些缺点。比如该设备的晶体振荡器(也可以认为是设备的时钟)很容易发生振荡漂移,从结果上来说,那就是时钟不准,偏差较大,当温度高的时候,这种现象更是明显。比如,你把你的调谐器降到10kHz左右,可当你回来再看的时候,你的无线信道已经漂移出这个范围了。同时,接收到的信号噪声太大,还有系统内部时钟的加工工艺是在28.8MHz的整数倍。
注意,对于RTL版“软件无线收发”设备来说,这是一个理想的无线信息处理设备,并且通过这个设备,可以完成本章中所有的例子。这只不过是一个收看电视的小信号接收器,怎么可能成为一个黑客工具?如果你还在迷茫于这个问题而表示不服气的话,那么可以将注意转向http://www.rtl-sdr.com 网站,在这里,你将看到使用该设备所进行的一些最近的项目列表。
11.2.2 HackRF:多功能的软件无线收发设备
2014年,Mike Ossmann发布了“HackRF一号”(HackRF One),该设备如图11-3所示。这是一个灵活的、基于USB接口的“软件无线收发”设备平台。该设备可以在10MHz和6GHz之间进行调谐。可以实现接收功能和发送功能,但属于“半双工”通信模式。HackRF版的“软件无线收发”设备在“软件无线收发”设备系列中,与提供了相同功能的更昂贵的“软件无线收发”设备平台相比,成本相对较低的。该设备包括一个20MSPS的采样率。
HackRF设备可以从多个在线零售商处买到,包括HakShop(http://www.hackshop.com/)和NooElec(http://www.nooelec.com)。HackRF的网站上也包括一些与“软件无线收发”相关的有价值的视频教程,这些内容也都可以通过http://www.greatscottgadgets.com/sdr网站查到。
对于读者来说,要开始研究“软件无线收发”技术,RTL版“软件无线收发”设备是进行实验和学习的最低成本的平台。在这一章中,我们将集中大量的例子介绍RTL版“软件无线收发”设备平台上的应用,还有少量附加的例子则需要使用HackRF版“软件无线收发”设备,这主要是针对那些在功能上想使用超过RTL版“软件无线收发”设备的附加功能的那一部分用户。
♥ 提示
另一个基于“软件无线收发”技术的开发平台就是Airspy版的“软件无线收发”SDR平台。在作者写这一章内容的时候,Airspy版的“软件无线收发”平台还不能使用,不过相信很快就能使用了。Airspy版的“软件无线收发”平台的设计目标就是为了满足“软件无线收发”爱好者人群中,希望功能比RTL版的“软件无线收发”平台多一点,价格又比HackRF版的“软件无线收发”平台少一点的那些人的要求。要访问Airspy版的“软件无线收发”平台的网站,请访问http://www.airspy.com以获得更多更详细的信息。
- 这种描述,容易给对通信不太熟的读者产生误会,从通信的收发功能上,一般分为“全双工”(可以同时进行收发,如手机)、“半双工”(可收可发,但不能同时进行,如对讲机)、“单工”(Simplex,或只收,如收音机;或只发,如电台电视台发射机),所以,上面其实应该还包括一种“单工接收”。——译者注
- 这里的RTL是Realtek的缩写,因为该设备使用了基于Realtek公司的RTL2832U芯片作为其设备主芯片,所以因此命名。考虑到后面还有别的型号“软件无线收发”设备未使用芯片命名,为了格式上的统一,所以本处将其称为“RTL版的‘软件无线收发’设备”,而不是“‘基于RTL芯片的软件无线收发’设备”(其实这一名称更合适)。——译者注
- GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。所有GNU软件都有一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款,GNU通用公共许可证(GNU General Public License,GPL),即“反版权”(或称Copyleft)概念。另外,GNU的全称更有趣,它是“GNU's Not UNIX”的缩写。——译者注
本书评论