软件定义无线电和业余试验
1 简介
软件定义无线电 (SDR) 是一种无线电通信系统,通常以硬件(例如混频器、滤波器、放大器、调制器和解调器、检波器等)组件实施的东西现在通过个人计算机或嵌入式系统上的软件来实现。虽然软件定义无线电 (SDR)不是新的概念,但其涉及的许多快速的数字电子发展能力过去只在理论上是可能的。
基本的SDR系统可能由包括配有声卡或其它模数转换器、前面有某种形式的射频前端的个人电脑组成。大量的信号被交给通用处理器处理,而不是用专用的硬件。这种设计生产了一种完全基于所使用的软件、可以接收和传输广泛不同的无线电协议(有时称为波形)的收音机。
在军事和手机服务中软件无线电具有重大的实用性,这两个都要求实时提供各式各样变化的无线电协议。
长远来看,提倡者像SDRForum(现在的无线创新论坛)预计软件定义无线电将成为无线电通信中的主导技术。软件定义无线电与软件定义天线一同是认知无线电的使成者。
软件定义无线电有足够的灵活性避免以前种类无线电设计师的"有限的频谱"假设,以一种或多种方式,包括:
扩频和超宽带技术允许几台发射机在相同的位置用相同的频率发射而干扰很小,通常结合有一个或多个错误检测和校正技术来修复所有由该干扰引起的错误。
软件定义天线自适应地"锁定到"定向信号,以便接收机可以更好地拒绝来自其它方向的干扰使其能够检测微弱的传输。
认知无线电技术:每个电台检测使用中的频谱并把这些信息传达给其它合作的电台,以便发射机通过选择未使用的频率能避免相互干扰。
动态发射机功率调整,基于来自接收机的信息,按最低所需降低发射功率,减少远近的问题,并减少对其它的干扰。
每添加电台总容量增加并减少在任何一个节点上所要求的功率的无线网状网络。每个节点只发射足够大声的信息跳到那个方向最近的节点,减少了远近问题并减少干扰到其它的。
工作原则
理想的接收机方案应是给天线附加一个模拟-数字转换器。数字信号处理器会读转换器,数字信号处理器的软件然后把来自转换器的数据流变换成应用程序需要的任何其它形式。
理想的发射机是类似的。数字信号处理器将生成数字的流。这些将会发送给连接到无线电天线的数字-模拟转换器。
由于技术的实际限制理想的计划不是完全可以实现的。在两个方向上的主要问题是在同一时刻数字和模拟域之间以足够高的速度和足够高的精度转换的难度,并不依靠像干扰和电磁共振物理过程的辅助。
接收机结构
大多数接收机使用变频振荡器、混频器和滤波器来调谐所需的信号到常用中频或基带,然后由模数转换器采样。然而,在某些应用中没有必要把信号调谐到中频,射频率信号直接由模数转换器采样(后放大的)。
实用的模数转换器缺少检出亚毫伏、纳瓦功率的无线电信号动态范围。因此在转换步骤前必须低噪声放大器,此设备引入了自己的问题。例如,如果杂乱信号出现(这是典型的),这些与放大器动态范围之内的所需信号竞争。它们可能会引入所需信号的失真,或者可能完全封锁它们。标准的解决方案是在天线和放大器之间使用带通滤波器,但这些减少无线电的灵活性。真正的软件无线电往往有两个或三个不同的带宽转入和转出的模拟通道滤波器。
军用
联合战术无线电系统(JTRS)原先是美国军方计划的下一代战场行动中使用的语音和数据电台。
略
2011年10月美国国防部副部长取消联合战术无线电系统项目,指出:
我们的评估是JTRS GMR 发展计划的产品不大可能以合理的成本满足服务需求的,毕竟可能不符合某些要求。因此终止是必要的。
项目的资金被允许在 2012年3月到期。
业余和家用
典型的业余软件无线电使用直接转换接收机。与更遥远的过去直接转换接收机不同的是,使用的混频器技术基于正交采样检波器和正交采样激励器。
这种系列的软件无线电接收机性能与利用的模拟-数字转换器(Adc)的动态范围直接有关。射频信号向下转换到音频频段,由高性能音频ADC采样。第一代软件无线电接收机使用PC的声卡提供ADC功能。较新的软件定义无线电使用嵌入式高性能模数转换器,提供更高的动态范围和更抗噪声和射频干扰。
PC使用特定于无线电硬件的软件快速执行数字信号处理(DSP) 操作。几个软件无线电努力使用开放源SDR 库DttSP。
SDR软件执行所有的解调、滤波(无线电频率和音频频率)、信号增强(均衡和双耳提交)。用途包括每个常见的业余调制:摩尔斯电码、单边带调制、频率调制、调幅和各式各样的数字模式,如无线电电传、慢扫描电视和数据包无线电。业余爱好者也实验新调制方法:例如梦(DREAM)开源项目解码用于全球范围数字电台(DRM)的COFDM 技术。
有广泛的业余无线电爱好者和家用的硬件解决方案。有专业级的收发机解决方案,例如, ZS-1或Flex接收机,自制的PicAStar收发机,软岩SDR工具包和初学者解决方案,例如短波的FiFi SDR。
一些常见的带有Realtek RTL2832U控制器的DVB-T USB闪盘和Elonics E4000 或Rafael Micro R820t高频头可以作为一个宽带SDR接收机使用。
主要使用通用软件无线电外设(USRP)的GNU无线电,使用一个USB 2.0 接口、FPGA和一整套高速的模-数和数-模转换器、结合可重构的免费软件。其采样和合成带宽是PC声卡的一千倍,使它能宽带操作。
HPSDR (高性能软件定义无线电)项目使用一个16位135MSPS模数转换器在0到55MHz范围提供传统的模拟高频无线电的性能。接收机使用混频器镜像或别名响应也运作在甚高频和超高频范围内。通过提供的一个USB2.0接口接口到PC,也可以使用以太网。该项目是模块化的并包括一个插其它的板的底板。这允许试验新的技术和设备而无需更换整个板集的。激励器在同一范围内提供1/2W的RF或使用镜像或别名进入甚高频和超高频范围。
WebSDR是由彼得-特捷克·德·波尔(Pieter.Tjerk de Boer)发起的通过浏览器访问全球范围内覆盖完整短波范围的多个SDR的项目。最近他分析了使用接收机系统耦合的啁啾发射机信号。
2 业余试验
按照介绍和参考资料,笔者试了一下成本最低的RealtekRTL2832U控制器的DVB-T USB数字电视接口,使用原因如简介所示,我们把它当作一个SDR接收机。可以在网上购得或在商店购得,几十元或一二百元左右,一定要买芯片是RealtekRTL2832U的。这个SDR接收机如图所示。
接在计算机上的Realtek RTL2832U控制器的DVB-T USB数字电视接口
根据资料,目前使用这一款接收机的比较多。相应的SDR软件也较多,根据介绍选了反映比较好的两款软件,一个是HDSDR,另一个是SDRSHARP,后者是开源的(可能已不开源),前者是免费软件不开源。选两个应用的原因是看一看效果如何。
第一个应用软件HDSDR的 网址在http://www.hdsdr.de/,版本2.63下载下来。
第二个应用软件SDRSHARP的 网址在http://sdrsharp.com/,可从页面下载链接页下载。
下面分别看一下两个应用:
1)HDSDR:
安装HDSDR,记住路径。
下载DVB-T USB数字电视接口用DLL,DLL在https://github.com/josemariaaraujo/ExtIO_RTL/raw/master/Release/ExtIO_RTL.dll
将DLL复制在安装HDSDR的路径内。
安装USB驱动工具,这个工具的网址在http://sourceforge.net/projects/libwdi/files/zadig/,最好用专用USB驱动安装工具安装。
然后只点击HDSDR执行文件。如果前一步USB驱动安装正确的话,HDSDR启动会问用哪个DLL的。
启动后选择一种模式并设定参数,就可以进行各个频段内的收听实验了。画面如图所示。
HDSDR调频收听
SDR硬件耦合和本地中心频率定格
通过应用软件,可以在调频范围内收听到广播以及进行各种操作,参数比较多,设定比较麻烦的,专业人士可能会很好使用的。
2)SDRSHARP
安装已经下载的SDRSHARP后启动,因为已经安装过了DVB-T USB数字电视接口的驱动,因此启动SDRSHARP后,选好前端的USB类型定好中心频率,运行后界面如下:
这个界面参数少一些,似乎声音效果好一些,但没有前一个细微,然后观察了各种制式下的频率。以及各种滤波效果,许多复杂的FFT运算都包含在内部了,应用者方便多了。
用经济的手段获得近似专业的效果,应该说是现代技术带来的好处。如果不用这个工具的话,要达到这个目的,一般比较难的。按照软件无线电的要求,确实利用了计算机作为主要的数字信号处理器,而且可以灵活的进行软件处理。
两个软件确实都可以运行,第一个精细的,专业性强,第二个虽比第一个简单一些,但第二个是特别专用的。但使用时都容易卡住的,特别是变频时,动态容易卡的,停下来改变频率再运行,卡的现象会少些。
3)可以利用DVB-T USB数字电视接口结合免费软件组构扫频仪的。
参考资料,除了DVB-T USB数字电视接口硬件外,再按照一定步骤安装以下几个软件,可以组构一个一般的扫频仪,这些软件是SDRSharp 、rtlsdr.dll、Zadig、UniTrunker、VirtualAudio Cable、Digital Speech Decoder(DSD)、Cygwin和MicrosoftVisual C++ 2010 Runtime。但组构比较麻烦。
其结果如下图:
SDR扫频结果
图下面黑色的部分是组构好后扫描到的内容。
还有许多业余SDR的应用。
本文技术介绍部分参考见WIKI的页面。
本文仅做参考。
顺便介绍一下,笔者参与开发的数据数值处理软件、数据可视化开发平台活图中文版活图ver8.1现在是常州微识自动化科技有限公司产品之一(http://www.microverify.com/col.jsp?id=114),是一个非常有用的数据处理工具。