接收的数据模拟设备ADALM-PLUTO广播
的comm.SDRRxPluto
系统对象™是一个信号源接收数据从一个模拟设备®ADALM-PLUTO收音机。这个连接可以模拟和开发各种软件定义无线电应用程序。
下面的图显示了MATLAB之间的交互®,comm.SDRRxPluto
硬件系统对象和收音机。
后PlutoSDR设备连接到一个USB端口主机,接收数据的无线硬件:
创建comm.SDRRxPluto
对象并设置其属性。
就好像它是一个函数调用对象。
了解更多关于系统对象是如何工作的,看到的系统对象是什么?。
ADALM-PLUTO电台有一个单通道接收数据和发送它comm.SDRRxPluto
系统对象。特别提款权系统对象输出一个列向量固定长度的信号。
第一个调用comm.SDRRxPluto
系统对象可能包含瞬态值,这会导致数据包包含未定义的数据。
创建一个PlutoSDR接收机系统对象的默认属性,您可以使用从PlutoSDR设备接收数据。rxPluto
= sdrrx(“冥王星”)
创建一个PlutoSDR接收器对象与指定的属性rxPluto
= sdrrx(“冥王星”,名称,值
)的名字
设置为指定的价值
。您可以指定额外的名称-值对参数在任何顺序(Name1, Value1,…,的家)
。未指定的属性的默认值。
rx = sdrrx(“冥王星”、“CenterFrequency”, 3.5 e9 BasebandSampleRate, 2.0 e6);
属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放
函数打开它们。
如果一个属性可调在任何时候,你可以改变它的值。
改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象。
RadioID
- - - - - -无线电识别号码“usb: 0”
(默认)|特征向量无线电识别号,指定为一个特征向量:
(推荐)与设备无关的指数,前缀usb接口:
,如“usb: 0”
,“usb: 1”
,“usb: 2”
,…,表示第一,第二,第三,……,分别连接ADALM-PLUTO无线电
一个IP地址,前缀知识产权:
,如“ip: 192.168.2.1”
一个序列号,由十六进制字符串的前缀sn:
,如“sn: 100000235523730700230031090216 eaeb”
请注意
在处理多个收音机时,如果设备被插入或删除时,USB主机分配的地址可能会改变。任何时候一个特别提款权装置插入或删除从一个USB接口,主机电脑调查所有USB接口和分配或重新分配广播地址连接设备。
当Windows上的操作®记住这些注意事项。
当在同一个主机上运行多个无线电在单独的MATLAB会话,每个会话MATLAB第一无线电分配usb: 0
,后续的ID号增加一个收音机。
收音机正被一个MATLAB不被其他MATLAB会话。使用findPlutoRadio
并检查序列号识别收音机报道出现在一个特定的MATLAB会话。
确保所有分配无线身份保持不变,不连接或断开后收音机特别提款权对象创建。最佳实践是连接收音机和创建特别提款权对象在这个顺序:
清除所有特别提款权对象。
连接所有收音机。
检查确认连接收音机被运行这条命令:
findPlutoRadio
创建特别提款权对象。
与无线电接口硬件,RadioID
广播对象的属性必须匹配硬件广播电台的ID。更新RadioID
财产,如果必要的。
在同一个主机上运行多个收音机时,主机分配每个广播电台ID不同。当识别收音机通过USB ID,第一个广播分配usb: 0
,后续的ID号增加一个收音机。例如,将id分配给两个无线电连接在同一主机上,在MATLAB命令提示符,输入:
rx = sdrrx(“冥王星”、“RadioID”,“usb: 0”);tx = sdrtx(“冥王星”、“RadioID”, usb: 1);
CenterFrequency
- - - - - -射频中心在赫兹频率设置2.4 e9
(默认)|标量射频在赫兹中心频率设置,指定为一个标量70.0 e6
来6.0 e9
。
请注意
模拟设备合格冥王星广播的调谐范围325 MHz到3.8 GHz。这种支持方金宝app案使您能够使用合格的调谐范围外的冥王星电台通过配置操作收音机使用AD9364固件。扩展频率范围,在MATLAB命令提示符,输入configurePlutoRadio
(“AD9364”
)。
可调:是的
数据类型:双
ChannelMapping
- - - - - -通道映射1
(默认)这个属性是只读的。
总是设置通道映射1
。
GainSource
- - - - - -获得源代码“AGC缓慢的攻击”
(默认)|“AGC快速攻击”
|“手动”
获得来源,指定为以下之一:
“AGC缓慢的攻击”
——对缓慢变化的信号功率水平
“AGC快速攻击”
——与快速变化的信号功率水平
“手动”
——手动设置获得的获得
财产
获得
- - - - - -无线电接收机增益10
(默认)|标量无线电接收机增益在dB,指定为一个标量4
来71年
。
请注意
可接受的最小和最大增益设置取决于中心频率。一个不兼容的获得和中心频率组合返回一个错误。
可调:是的
要启用这个特性,设置GainSource
来“手动”
。
数据类型:双
BasebandSampleRate
- - - - - -基带采样率1.0 e6
(默认)|标量在赫兹基带采样率,指定为一个标量65105年
来61.44 e6
样品每秒。
请注意
实际的计算值和指定的设置可以有一个小的不匹配。确认实际计算值是接近你的设置,指定调用信息
收音机里的目标函数对象。
数据类型:双
OutputDataType
- - - - - -输出信号数据类型“int16”
(默认)|“单一”
|“双”
输出信号数据类型,指定为以下之一:
int16
- 16位有符号整数
双
——双精度浮点
单
——单精度浮点
SamplesPerFrame
- - - - - -样品每帧的数量20000年
(默认)|正整数样品每帧的数量,指定为正整数从2到16777216年。使用值小于3660可以收益率表现不佳。
EnableBurstMode
- - - - - -选择突发模态假
(默认)|真正的
选择破裂模式,指定为假
或真正的
。当设置为真正的
,这个属性产生一组连续的样本没有溢出。这个设置可以帮助无法实时运行的模拟模型。当你启用破裂模式,指定使用属性的连续的数据量。如何使用这个属性的更多信息,参见突发模态。
数据类型:逻辑
NumFramesInBurst
- - - - - -在一个连续的帧数破裂1
(默认)|严格的正整数在相邻的帧数破灭,指定为一个严格的正整数。
要启用这个特性,设置EnableBurstMode
来真正的
。
数据类型:双
ShowAdvancedProperties
- - - - - -选择显示高级属性假
(默认)|真正的
选择显示高级属性,指定为假
或真正的
。
UseCustomFilter
- - - - - -使用自定义过滤器假
(默认)|真正的
使用自定义过滤器,指定这些值。
假
——过滤器链使用默认的过滤器的设计。
真正的
过滤器链——使用一个自定义过滤器的设计。设计一个自定义的过滤器,调用designCustomFilter
(Xilinx Zynq-Based无线电通信工金宝app具箱支持包)函数。
请注意
当应用一个定制的过滤器comm.SDRRxPluto
系统对象,UseCustomFilter
属性自动设置真正的
。之间切换默认和定制过滤器、集UseCustomFilter
财产假
或真正的
,分别。
有关更多信息,请参见基带采样率和过滤器链。
数据类型:逻辑
EnableQuadratureCorrection
- - - - - -正交校正真正的
(默认)|假
EnableRFDCCorrection
- - - - - -射频直流校正真正的
(默认)|假
EnableBasebandDCCorrection
- - - - - -基带直流校正真正的
(默认)|假
FrequencyCorrection
- - - - - -在ppm频率修正价值0
(默认)|标量频率校正在ppm值,指定为一个标量-200年
来200年
。这个属性值修正频率变化数据由于本地振荡器频率偏移或时钟频率不准确。
请注意
当FrequencyCorrection
设置是0
,factory-calibrated广播的设置将被使用。
的FrequencyCorrection
属性更改实际的无线设置BasebandSampleRate
和CenterFrequency
。
可调:是的
查看该属性集ShowAdvancedProperties
来真正的
。
数据类型:双
BISTLoopbackMode
- - - - - -内建自测(阿拉伯学者)环回模式“禁用”
(默认)|“数字Tx - >数字Rx”
|“RF射频Tx Rx - >”
内建自测环回模式,指定为这些选项之一:
“禁用”
——禁用阿拉伯学者回环。
“数字Tx - >数字Rx”
——使数字信号在AD936x回环设备。旁路射频信号阶段。
“RF射频Tx Rx - >”
——允许传入接收机射频发射机射频信号循环回港。绕过FPGA的信号。
要启用这个特性,设置ShowAdvancedProperties
来真正的
。
数据类型:字符
|字符串
BISTToneInject
- - - - - -阿拉伯学者信号注入模式“禁用”
(默认)|“基调注入Tx”
|“基调注入Rx”
阿拉伯学者信号注入模式,指定为这些选项之一:
“禁用”
——禁用BIST信号注入。
“基调注入Tx”
——允许阿拉伯学者信号注入传输路径。
“基调注入Rx”
——允许阿拉伯学者信号注入接收路径。
使阿拉伯学者信号注入时,您可以设置的阿拉伯学者信号生成的来源BISTSignalGen
财产。
要启用这个特性,设置ShowAdvancedProperties
来真正的
。
数据类型:字符
|字符串
BISTSignalGen
- - - - - -阿拉伯学者信号生成的源泉“伪随机位序列”
(默认)|“语气”
阿拉伯学者信号生成的来源,指定为这些选项之一:
“伪随机位序列”
——使用伪随机二进制序列(PRBS)董事会的发电机。
“语气”
——使用音频发生器。定下了基调频率和基调,使用BISTToneFreq
和BISTToneLevel
属性,分别。
要启用这个特性,设置BISTToneInject
来“基调注入Tx”
或“基调注入Rx”
。
数据类型:字符
|字符串
BISTToneFreq
- - - - - -阿拉伯学者单音频率Fs / 32的
(默认)|“Fs / 16”
|“Fs * 3/32”
|“Fs / 8”
阿拉伯学者单音频率,指定为Fs / 32的
,“Fs / 16”
,“Fs * 3/32”
,或“Fs / 8”
。
要启用这个特性,设置BISTSignalGen
来“语气”
。
数据类型:字符
|字符串
BISTToneLevel
- - - - - -阿拉伯学者语气水平' 0 '
(默认)|“6”
|“-12”
|“-18”
阿拉伯学者语气水平dB,指定为' 0 '
,“6”
,“-12”
,或“-18”
。
要启用这个特性,设置BISTSignalGen
来“语气”
。
数据类型:字符
|字符串
rxdata
——接收的数据接收的数据,作为一个向量返回复杂的值。值范围取决于输出的数据类型。
int16
——输出数据由16位带符号整数的值的范围(-2048、2047)。AD936X射频芯片有12位ADC。12位ADC的数据存储在输出值的低12位和16位符号扩展。
双
——输出数据包括双精度浮点值的范围扩展到[1]。
单
——输出数据包括单精度浮点值的范围扩展到[1]。
请注意
AD936X射频芯片有12位ADC。双精度和单精度浮点表示收到的数据值是直接创建的符号扩展int16
收到董事会价值。这些表示只占用范围[-0.0625,0.0625]。
指定接收的数据的数据类型,使用OutputDataType
财产。
数据类型:int16
|单
|双
复数的支持:金宝app是的
datavalid
-数据有效的指标数据有效的指标,作为一个逻辑返回。
一个0
表明,收到样品是无效的。
一个1
表明收到的样品是有效的。
溢出
——失去了样本指标失去了样本指标,作为一个逻辑返回。
一个0
表明没有样品丢失。
一个1
表明样本丢失。
使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj
使用这个语法:
发行版(obj)
配置一个ADALM-PLUTO广播的RadioID
属性设置为0。设置无线接收与基带的2.5 GHz 1 MHz。使用一个日志保存数据。
创建一个ADALM-PLUTO无线电接收机系统对象为数据接收和使用dsp.SignalSink
系统对象记录接收到的数据时,数据不溢出,当数据是有效的。
rxPluto = sdrrx (“冥王星”,…“RadioID”,“usb: 0”,…“CenterFrequency”2.5 e9,…“BasebandSampleRate”1 e6);rxLogNoOverflow = dsp.SignalSink;rxLogDataValid = dsp.SignalSink;
在一个为
使用循环,接收数据rxPluto
对象。日志数据没有溢出时,当数据是有效的。显示消息当收到样品时删除或接收到的数据是无效的。
为计数器= 1:20(数据、datavalid溢出)= rxPluto ();%的检查溢出收到样品。如果(溢出)%了样品disp (的样品了);其他的rxLogNoOverflow(数据);结束%检查溢出和接收的数据的有效性。如果~(溢出)%不了样品如果~ (datavalid)%获得所需的数据rxLogDataValid(数据);结束其他的disp (没有接收到有效的数据);结束结束
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
当使用一个传输和接收ADALM-PLUTO广播,单个对象使用相同的底层无线电发射机和接收机硬件设置频率校正。创建单独的ADALM-PLUTO无线电系统对象的默认设置发射机和接收机。
rx = sdrrx (“冥王星”);tx = sdrtx (“冥王星”);rx。ShowAdvancedProperties = true;tx.ShowAdvancedProperties = true;rxFreqCorr = rx.FrequencyCorrection
rxFreqCorr = 0
txFreqCorr = tx.FrequencyCorrection
txFreqCorr = 0
默认频率调整值为0 ppm。底层的无线电硬件设置频率修正当接收和传输是0。
data0 = rx ();
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
tx (data0);
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
更新频率校正设置50 ppm接收机对象。这并不更新频率校正设置发射机对象,但这里的主时钟速度底层无线电硬件调整基于50 ppm的设置频率修正当接收或传输。最后更新的无线电硬件频率校正设置是由接收方对象。尽管发射机对象表示频率校正值0,无线电发射机使用更新后的值集rx.FrequencyCorrection
当发射机执行对象。
rx.FrequencyCorrection= 50; data1 = rx(); tx(data0); rxFreqCorr = rx.FrequencyCorrection
rxFreqCorr = 50
txFreqCorr = tx.FrequencyCorrection
txFreqCorr = 0
同样,更新频率调整发射机对象设置为100 ppm。这并不更新频率校正设置接收方对象,但这里主时钟的底层无线电硬件调整基于100 pmm的设置频率修正当接收或传输。最后更新的无线电硬件频率校正设置是由发射机对象。尽管接收器对象表示频率调整值50,无线电接收机使用更新后的值组tx.FrequencyCorrection
当接收方对象执行。
tx.FrequencyCorrection = 100;tx (data0);data2 = rx ();rxFreqCorr = rx.FrequencyCorrection
rxFreqCorr = 50
txFreqCorr = tx.FrequencyCorrection
txFreqCorr = 100
使用信息
目标函数得到的信息连接ADALM-PLUTO收音机。收音机使用的实际值显示信息
并且可以从对象中指定的值略有不同。
rx = sdrrx (“冥王星”);信息(rx)
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
ans =结构体字段:状态:“完全信息”CenterFrequency: 2.4000 e + 09 BasebandSampleRate: 999999 SerialNum:“104473222 a870010050020009db5d52277”GainControlMode:“AGC缓慢的攻击”RadioFirmwareVersion:“0.30”ExpectedFirmwareVersion:“0.30”HardwareVersion:“B0”
使用捕获
函数和一个ADALM-PLUTO无线电射频信号记录在MATLAB®post-capture处理。将一个调频广播信号保存到一个文件作为基带样本。读取文件包含基带信号和解调记录样本。
特别提款权的硬件配置
配置你的ADALM-PLUTO无线电host-radio沟通,明白了引导Host-Radio硬件设置。
连接天线适合88 - 108 MHz频带第一RX通道。调频收音机乐队不在默认ADALM-PLUTO收音机的调谐范围。的configurePlutoRadio
函数允许您扩展频率范围和使用ADALM-PLUTO广播以外的合格的调谐范围。扩展频率范围包括完整的调频无线电频段。
configurePlutoRadio (“AD9364”);
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
配置接收机系统对象
创建一个特别提款权接收机系统对象与指定的属性。指定的中心频率对应于一个当地调频电台。
设备名称=“冥王星”;samplerate = 528年e3;fmStationFrequency = 88.9 e6;%适应附近选择一个调频电台rx = sdrrx(设备名称,“BasebandSampleRate”samplerate,…“CenterFrequency”fmStationFrequency,“OutputDataType”,“双”);
启动数据捕获文件
调用捕获
函数,指定接收方对象,捕获时间和文件的名字。捕捉调频信号后,解锁接收者对象使用释放
函数。
捕获(rx 5“秒”,“文件名”,“FMRecording.bb”);
# #建立连接硬件。这个过程可能要花上几秒钟的时间。
释放(rx);
解调调频记录
创建一个comm.BasebandFileReader
(通信工具箱)系统对象读取信号并提取帧捕获的数据文件。集基带文件读者阅读时带4400样品每帧保存的基带信号。
bbr = comm.BasebandFileReader (“FMRecording.bb”);bbr。SamplesPerFrame = 4400;
使用BasebandSampleRate
基带文件的字段设置读者对象SampleRate
解调器的财产。找到BasebandSampleRate
字段元数据
结构。创建一个comm.FMBroadcastDemodulator
(通信工具箱)系统对象。解调和播放调频的每一帧数据。使用一个而
循环读取的所有帧捕获数据。
fmbDemod = comm.FMBroadcastDemodulator (“AudioSampleRate”48岁的e3,…“SampleRate”bbr.Metadata.BasebandSampleRate,“PlaySound”,真正的);而~结束(bbr) fmbDemod (bbr ());结束
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app