基于USRP&GNU Radio的软件无线电平台

本文介绍了软件定义无线电(SDR)的基本概念,重点讲解了如何利用USRP硬件设备和GNU Radio软件构建SDR平台进行无线电信号处理。通过Python和C++结合,实现了信号处理流程的构建与执行,揭示了GNU Radio作为数字信号处理工具的强大功能。
摘要由CSDN通过智能技术生成

       软件定义的无线电(Software Defined Radio,SDR) 是一种无线电广播通信技术,它基于软件定义的无线通信协议而非通过硬连线实现。换言之,频带、空中接口协议和功能可通过软件下载和更新来升级,而不用完全更换硬件。

       SDR 针对构建多模式、多频和多功能无线通信设备的问题提供有效而安全的解决方案。SDR 能够重新编程或重新配置,从而通过动态加载新的波形和协议可使用不同的波形和协议操作。这些波形和协议包含各种不同的部分,包括调制技术、在软件中定义为波形本身的一部分的安全和性能特性。

       近来,基于硬件设备USRP和PC端的无线电信号处理软件GNU Radio构建SDR来进行无线电信号处理和研究成为热点。本文用通俗的语言对此平台进行介绍。

一、软件无线电(Software Defined Radio,SDR)

首先,我们从一个图看起。如下图1,数字通信系统模型。


           
图 1 数字通信系统模型

在数字通信系统模型中信号源产生某种需要发送的信号或消息(必须是数字信号,比如0,1序列),经过编码、加密、调制等一系列处理(不同的通信模式下,这些步骤不都是必须的,目前也无需管这些处理具体是什么)将处理过的信号送入信道。通过信道到达接收端。再对接收到的信号经过一系列逆处理,还原出信源的发送信号。我们强调信号在送入信道之前,信源信号和之后的一系列处理都是在数字模式下进行(信号流为数字流),后面的逆处理过程也是如此。如果我们选择的信道为有线信道,则数字信号可以直接送入信道进行传输。但本实验进行的是无线通信,即信道选择为无线信道。如此,数字信号是无法直接进行发送的。数字信号必须转换为模拟信号才能在空间中传播。同样接收端也需要接收此模拟信号,然后转化为数字信号进行逆处理。那将数字信号转化为模拟信号,并发送;接收模拟信号,并转化为数字信号这一过程就需要具体的设备来完成,这个设备我们选取的就是USRPUSRP其实可以简单理解为一个信号转换器和收发器,对USRP如何具体完成此功能的我们后面详述。


现在我们回到数字信号的处理流程上来。数字信号的产生和一系列处理、逆处理,除了上图中提到的步骤外,还可以细分和丰富出更多步骤。我们可以将每一步的处理(实现某单一功能)称为一个“block”。一定有一个起始的blockhead)来产生数据,再将数据传送给下一个block继续处理,如此传递下去一定有最后一个blockend)完成并结束数据在单个通信端的处理过程。在本实验的发送端就是:数据从blockhead)产生到最终block

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值