Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PlutoSDR学习指南【2】无线数据传输

PlutoSDR学习指南【2】无线数据传输

作者头像
数字积木
发布于 2021-04-15 08:45:02
发布于 2021-04-15 08:45:02
3K05
代码可运行
举报
文章被收录于专栏:数字积木数字积木
运行总次数:5
代码可运行

ADALM-PLUTO主动学习模块(PlutoSDR)易于使用,有助于向电气工程专业学生介绍软件定义无线电(SDR)、射频(RF)和无线通信的基础知识。该模块针对不同层次和背景的学生而设计,可同时用于教师辅导和自主学习,旨在帮助学生在攻读理学、技术或工程学位时为实际RF和通信打下基础。

PlutoSDR与主机配合使用时,充当便携式实验室,可增强课堂学习。MATLAB和Simulink是由PlutoSDR支持的两个主要软件包,它提供直观的用户图形用户界面(GUI),让学生可以更快学会,更巧妙地开展工作并探索更多知识。

PlutoSDR具有独立的接收和发射通道,可在全双工模式下工作。主动学习模块可以在325 MHz至3800 MHz频率范围内以最高每秒61.44MSPS产生或捕获RF模拟信号。PlutoSDR非常小,可装在衬衣口袋中,完全独立自足且由配有默认固件的USB供电。由于PlutoSDR通过libiio驱动程序启动,因此它支持OS X®、Windows®和Linux®,可让学生在多台设备上学习和探索。

PlutoSDR提供许多适合SDR项目的可用在线教程,拥有涵盖众多主题的实验室和教学资料,如ADS-B航空器位置、接收NOAA和Meteor-M2天气卫星图像、GSM分析、TETRA信号监听、寻呼机解码等!

matlab 提供了简单易用的 PLUTO 访问接口,使得用户非常方便地使用使用PLUTO。

我们只需考虑基带处理部分,PlutoSDR替我们将基带信号“搬”到频带,我们只需设置频带的中心频率、带宽、收发的增益、收端接收一帧容纳的比特数等参数。

1,在matlab中 进行数据接收。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
clear all
close all
clc

%pluto rx 设置
rxPluto  = sdrrx('Pluto');
rxPluto.CenterFrequency = 2400000000;   %设置中心频率 2.4GHz
rxPluto.BasebandSampleRate = 18e6;      %设置采样率 :10MHz
rxPluto.SamplesPerFrame = 1024 ;        %设置采样点数:1024

fs  =  rxPluto.BasebandSampleRate ;     
N   =  rxPluto.SamplesPerFrame ;        
freq = (-N/2:N/2-1)/N* fs/1000000 ;     


% 接收信号
% data即收到的信号,datavalid指示数据是否有效,overflow指示数据是否溢出。
[data,datavalid,overflow] = rxPluto();  %利用 pluto进行数据接收

XK  =   fft( data );                    %fft变换

figure(1);
plot(freq,20*log10( fftshift(abs( XK )) ) );  %绘制数据的频谱

figure(2);
plot(real(data)); hold on;  %绘制数据实部
plot(imag(data));           %绘制数据虚部

将 pluto 通过 USB 插入到电脑主机,运行上述 matlab 代码。通过信号源给pluto 输入一个频率为 2.401 GHz 的信号,结果如下。

频域图 ,可以观察到在 1.02MHz 处存在信号。

时域图 ,I,Q两路数据如下,比较标准的正弦波。

2,在matlab中 进行数据发送

例子

发送、接收一个单频信号:

参数设置:

中心频率:800MHz

带宽:100kHz

发送端增益:0dB

接收端增益:30dB

接收端默认接收数据:20000bit,若要修改,在sdrrx对象中添加'SamplesPerFrame',20e4,数据长度自定义。

发送端代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
txPluto = sdrtx('Pluto','RadioID','usb:0','CenterFrequency',800e6, ...'BasebandSampleRate',100e3,'ChannelMapping',1,'Gain',0); 

modSignal=exp(1i*2*pi/128*(1:1500000)).'; 

i=100; 

while i 
  txPluto(modSignal); 
  i=i-1 
end

运行上述脚本,将 pluto TX 端口连接到 示波器 或 频谱仪 上,即可观察到发送的信号。

PlutoSDR 官方网站:https://wiki.analog.com/university/tools/pluto

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数字积木 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
全新光电混合ADC系统-640 GSa/s的采样率(YUNSWJ仿真版)
这是一篇Nature光上面的文章,首次展示了基于Kerr孤子微梳(Kerr soliton microcomb)的光电混合ADC系统,实现了320 GHz的采集带宽(对应640 GSa/s的采样率),创下了目前ADC的带宽记录。(我就知道,电到了尽头,别的领域才能发展)
云深无际
2025/07/14
1480
全新光电混合ADC系统-640 GSa/s的采样率(YUNSWJ仿真版)
PlutoSDR学习指南【3】官方软件“IIO Oscilloscope”
Pluto一开始拿到手之后,一般先做一个连接,看看设备能不能工作。由于一般都是直接连接到windows系统下面,所以我们采用IIO Oscilloscope做测试。
数字积木
2021/04/15
2.4K1
PlutoSDR学习指南【1】环境搭建+资料分享
软件无线电平台最通俗的语言来说,即通信系统中的功能采用软件实现,且可反复使用。比如简单的发射和接收信号。可以通过软件设置。信号的编码解码,可以通过软件设置。甚至你可以自己定义一种协议,用你自己的协议来实现一套通信系统。而在这个过程中,硬件是不需要更换的。
数字积木
2021/04/15
2.7K2
PlutoSDR学习指南【0】PlutoSDR介绍
ADI Pluto是ADI公司推出的主动学习模块(Active Learning Module),其主要包含三个设备:ADALM1000,ADALM2000,ADALM-PLUTO。其中前两个设备偏向基本的电路测量,ADALM-PLUTO偏向软件无线电。
数字积木
2021/04/15
5K0
OFDM深入学习及MATLAB仿真
前面对 OFDM 的学习及了解还是比较浅显的,例如没有考虑到其中涉及的技术,例如保护间隔、信道编码、扩频、导频相关技术,本文通过学习这些技术,并进行 OFDM 的完整仿真过程。
Gnep@97
2023/11/09
2.2K2
OFDM深入学习及MATLAB仿真
OFDM完整仿真过程及解释(MATLAB)
0.能找到这篇文章,说明对ofdm已经有一点了解,所以其原理就不再赘述,这篇代码的目的只是希望能对ofdm整个过程有一个理解;
全栈程序员站长
2022/09/05
3K0
OFDM通信连路仿真学习
Gnep@97
2023/11/30
6610
OFDM通信连路仿真学习
《基于GNU-Radio和USRP的雷达通信系统的实现》文献阅读
本文记录《基于GNU-Radio和USRP的雷达通信系统的实现》(Implementation of Radar-Communication System based on GNU-Radio and USRP)文献阅读学习。
Gnep@97
2024/05/10
7480
《基于GNU-Radio和USRP的雷达通信系统的实现》文献阅读
使用HackRF解调TDD-LTE信号
软件无线电(Software Defined Radio)以前往往以高(zhuang)大(bi)上(fan)的面目示人,是大公司或学校实验室的高级玩具,一套系统动辄几万甚至几十万,从来都是一个2B(2B = to business)的模式。自从一个芬兰黑客(考证癖出来考证一下)破解了rtl2832芯片的电视棒之后(http://sdr.osmocom.org/trac/wiki/rtl-sdr),SDR终于像树莓派一样普及了。你可以淘宝一个50或60RMB的电视棒,然后给妹子show off跟踪飞机,偷听空
FB客服
2018/02/02
6.2K0
OFDM原理及MATLAB仿真
本文讲解了 OFDM 相关概念及原理,并通过 MATLAB 仿真模拟一个 OFDM 时域及频域波形图。
Gnep@97
2023/10/20
3.8K0
OFDM原理及MATLAB仿真
GNURadio+USRP+OFDM实现文件传输
使用 GNU Radio Companion 驱动 USRP N320 实现 OFDM 自收自发测试。(Ubuntu20.04LTS + GNURadio 3.8 + UHD 3.15)
Gnep@97
2024/03/08
1.4K0
GNURadio+USRP+OFDM实现文件传输
基于OFDM的通信系统模拟实现
有关 OFDM 相关理论知识及仿真参考我之前写过的博客:OFDM原理及MATLAB仿真
Gnep@97
2023/10/26
7540
基于OFDM的通信系统模拟实现
通信系统的最佳线性均衡器(2)---自适应滤波算法
在实际系统中,信道性质可能是时变的,可以通过自适应滤波技术达到最优线性均衡和跟踪信道的时变性,即自适应均衡器。自适应均衡需要一个期望响应序列,在通信系统接通的时候,设置一段专门时间,用于训练均衡器,在这个时段,通信发送机和通信接收机都产生一段约定的训练序列。发送机发送约定的训练序列𝑠(𝑛),接收机收到的是已经畸变的信号𝑥(𝑛),𝑥(𝑛)作为均衡器的输入信号,接收机在本地产生相同的训练序列𝑠(𝑛)作为自适应均衡器的期望响应。
不去幼儿园
2024/12/03
6670
通信系统的最佳线性均衡器(2)---自适应滤波算法
matlab+vivado设计数字滤波器
两个月在做数字信号处理方面的工作,也是从一个小白刚刚起步,这两天才把fir滤波器给跑通,写文记录下。希望大家欢迎,多多支持。这篇文章写得辛苦,仅仅Word文件就有21页,写了足足两天时间,修修改改。希望大家多多支持,点赞,转发,打赏。
数字积木
2021/04/15
1.2K0
OFDM——PAPR减小
本文对减小 OFDM 峰值平均功率比(PAPR—Peak to Average Power Ratio)的内容以思维导图的形式呈现,有关仿真部分进行了讲解实现。
Gnep@97
2023/12/29
7160
RTL-SDR&Matlab软件定义无线电(一)
看一下这本书:《Software Defined Radio using MATLAB Simulink and the RTL-SDR》,这篇文章主要说一下环境配置与测试
yichen
2023/08/10
1.5K0
RTL-SDR&Matlab软件定义无线电(一)
雷达波形之一——LFM线性调频波形
线性调频(Linear Frequency Modulation,LFM)信号具有很大的时宽带宽积,可获得很大的脉冲压缩比,是雷达系统和声呐系统广泛采用的一种信号形式。本文主要进行线性调频信号的理论学习,并使用 MATLAB 进行仿真。
Gnep@97
2023/11/10
4.9K0
雷达波形之一——LFM线性调频波形
基于MATLAB语音信号的处理与滤波
摘要:MATLAB是十分强大的用于数据分析和处理的工程实用软件,利用其来进行语音信号的分析、处理和可视化十分便捷。文中介绍了在MATLAB环境中如何驱动声卡采集语音信号和语音信号采集后的文档处理方法,并介绍了FFT频谱分析原理及其显示、MATLAB中相关函数的功能、滤波器的设计和使用。在此基础上,对实际采集的一段含噪声语音信号进行了相关分析处理,包括对语音信号的录取和导入,信号时域和频域方面的分析,添加噪声前后的差异对比,滤波分析,语音特效处理。结果表明利用MATLAB处理语音信号十分简单、方便且易于实现。
全栈程序员站长
2022/09/01
4.4K0
基于MATLAB语音信号的处理与滤波
DDS实现AM调制、DSB调制【Matlab】【FPGA】【Vivado】【信号处理】【通信原理】【软件无线电】
调制(modulation)就是对信号源的信息进行处理(低频),加到载波上(高频),使其变为适合于信道传输的形式。
FPGA探索者
2021/03/15
2K0
脉冲压缩及MATLAB仿真
的目标,且在接收窗的相对距离为15m 和 25m,这两个目标在时间上的间隔不足以被用来分辨。
Gnep@97
2023/12/08
9040
脉冲压缩及MATLAB仿真
相关推荐
全新光电混合ADC系统-640 GSa/s的采样率(YUNSWJ仿真版)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档