数字转换为家庭上下在MATLAB广播服务
家庭广播服务(FRS)是一种改进的对讲机调频广播系统授权自1996年以来在美国。这种个人广播服务使用信道频率在超高频(UHF)乐队。设备操作必须授权FRS乐队在95部分B“家庭广播服务”部分(章节95.191到95.194)FCC规则。授权FRS频道12.5千赫带宽和中心频率分离通道是25 KHz。
数字上变频器(DUC)和数字下变频器(DDC)系统对象可以用来设计一个家庭无线服务发射机和接收机。这些对象提供工具来设计插值和大量毁灭过滤器和简化所需的步骤来实现上下转换过程。这个例子演示了使用MATLAB®实现dsp.DigitalUpConverter
和dsp.DigitalDownConverter
系统对象。在一金宝app个模型®实现数字转换为家庭上下在仿真软件无线电服务金宝app并使用数字上升变换器和数字变频技术块。语音信号作为输入,信号传输后回放。
介绍
这个例子讨论了数字信号的转换是通过一个FRS传播渠道,和下转换的信号来自FRS无线电发射机。
8 KHz的演讲是第一次重新取样到50千赫。发射机的DUC转换信号从50千赫至2 MHz和变化IF 455 KHz的频率的信号。接收方有一个模拟前端,使接收信号如果455 KHz的频率。然后信号采样的速度2 MHz。监护系统的接收机信号又回到基带50 KHz的采样率。这是带回8 KHz的演讲。
数字转换器设计
设计一个数字转换器通过创建一个DUC系统对象。DUC对象由一个级联三种插值过滤器和一个振荡器,将插值信号转换为一个指定的通频带的频率。DUC对象的一个框图所示。
DUC对象提供选项来定义插值过滤器。例如,您可以使用一个正弦波发生器设计振荡器或数控振荡器。本节展示了不同的选项可用FRS发射机设计插值过滤器。
插值滤波器的设计
DUC对象实现了插值过滤器使用三个过滤阶段。DUC对象设计过滤器内部时,第一阶段由halfband或低通滤波器,第二阶段由CIC补偿器,第三阶段由中投插值过滤器。DUC对象允许您指定几个特征定义的级联反应的三个过滤器,包括通带和阻带频率,通带波纹,阻带衰减。
最低订购量滤波器设计
在默认情况下(当MinimumOrderDesign
属性设置为true) DUC对象获得最低订购量插值滤波器的设计使用您提供的通带和阻带规范。
对于这个示例,您必须upsample传播信号从50千赫至2 MHz。这产生一个插值40倍。DUC对象自动插值价值因素,这样第一个过滤器插入2阶段,第二个过滤阶段篡改除以2,中投过滤器插入10。
双面的FRS通道带宽为12.5 KHz。设置带宽
DUC对象的属性到12.5 KHz的通带频率插值滤波器的级联反应是12.5 e3/2 = 6.25 KHz。
设置的通带纹波小值为0.05 dB避免FRS信号的失真。设置阻带衰减到60分贝。
在默认情况下(当StopbandFrequencySource
属性设置为“自动”)DUC对象设置级联反应的截止频率的输入奈奎斯特率大约在25 KHz。对象还设置阻带频率2 fc-fpass = 2 * 25 e3 - 12.5 e3/2 = 43.75 KHz, Fc在哪里通带频率截止频率和成就。在这个场景中,DUC对象尽可能放松阻带频率,获得最低的过滤器订单允许一些能源成本的插值副本过渡带的级联反应。这个设计权衡方便当你的首要任务是减少过滤器订单。
DUC = dsp.DigitalUpConverter (…SampleRate = 50 e3,…InterpolationFactor = 40,…带宽= 12.5 e3,…PassbandRipple = 0.05,…StopbandAttenuation = 60);
可视化的级联反应才使用过滤器fvtool
或visualizeFilterStages
DUC对象的方法。指定的算术“双”
双精度,这样滤波器系数和操作。
fvt = fvtool (DUC算术=“双”);
关闭(fvt) fvt = visualizeFilterStages (DUC算术=“双”);
设计的过滤器使用的命令getFilterOrders
函数。
s = getFilterOrders (DUC);s.FirstFilterOrder
ans = 10
s.SecondFilterOrder
ans = 12
FRS通道分离是25 KHz。大多数商业FRS无线电提供50 dB或更高相邻信道拒绝(ACR)。显然,上述大量毁灭过滤器设计的级联反应没有达到50分贝衰减25 KHz。这个问题的一个可能的解决方案是过滤基带FRS信号与一个低通滤波器之前用所需的过渡宽度和阻带衰减信号穿过DUC对象。另一个解决方案是设置DUC对象,设计了一种级联反应过渡带宽,满足所需的光谱窄一些面具。设计一个整体过滤反应过渡带宽较小,设置StopbandFrequencySource
财产“属性”
和StopbandFrequency
财产所需的值。
设计滤波器的级联反应的阻带频率在通带的边缘邻FRS通道,即在e3 - 12.5 - 25 e3/2 = 18.75 KHz。设置StopbandAttenuation
财产60分贝达到60 dB ACR。
DUC。StopbandFrequencySource =“属性”;DUC。StopbandFrequency = 18.75 e3;DUC。StopbandAttenuation = 60;关闭(fvt) fvt = fvtool (DUC,“算术”,“双”);
得到过滤订单
s = getFilterOrders (DUC);s.FirstFilterOrder
ans = 23
s.SecondFilterOrder
ans = 7
新的级联反应达到60分贝衰减25 KHz,即。,邻FRS的中心通道。第一阶段的顺序滤波器(低通插值器)从10增加到23。但是要注意,第二阶段过滤器的顺序(CIC补偿器)从12个减少到7。因为第一阶段响应带宽较窄,第二阶段可以放松更阻带的边缘离开阻带的第一个副本第一阶段过滤器。自第二次过滤阶段以更高的速度运行,这是一个非常方便的订单减少。
控制过滤订单
在某些情况下当过滤器订单是主要的设计约束。设置MinimumOrderDesign
属性为false来设计插值过滤器与一个特定的顺序。在这个配置中,您还可以指定所需的通带和阻带频率。过滤器的命令控制阻带衰减和脉动的级联反应。
见面最多20个系数的约束阶段,第一个过滤器设置FirstFilterOrder
属性到20。设置SecondFilterOrder
财产到7,中投公司部分的数量4。
%保持最低订购量的副本设计,这样我们以后可以使用它%这个例子。DUCMinOrder =克隆(DUC);%指定过滤器订单和可视化的级联反应。DUC。MinimumOrderDesign = false;DUC。FirstFilterOrder = 20;DUC。SecondFilterOrder = 7;DUC。NumCICSections = 4;关闭(fvt) fvt = fvtool (DUC算术=“双”);
新的设计有较低的阻带衰减和更大的通带波纹由于减少订单的第一个筛选器。
振荡器的设计
使用振荡器
属性选择的振荡器类型对象使用执行频率转换。将属性设置为“正弦波”
获得一个振荡器信号从一个正弦三角函数的计算使用样品。另外,设置属性“甲”
因此,对象设计数控振荡器。设置中心频率的振荡器如果455 KHz的频率。
DUC。振荡器=“正弦波”;DUC。CenterFrequency = 455年e3;
数字下变频器的设计
你设计一个数字下变频器(DDC)通过创建一个包括DDC系统对象。如DDC系统对象由一个振荡器下来将输入信号从一个特定的通带频率转换为0 Hz。对象的样本下转换信号使用一连串的三种大量毁灭过滤器。下面的框图说明监护对象。
DUC情况下,监护对象提供不同的选项定义大量毁灭过滤器。例如,您可以使用一个正弦波发生器设计振荡器或数控振荡器。或者,您可以提供一个振荡器信号作为输入。
设计大量毁灭过滤器
使用三个过滤阶段的监护对象实现大量毁灭。内部对象设计滤波器时,第一阶段由中投杀害多人者,第二阶段由CIC补偿器,第三阶段由低通大量毁灭halfband或过滤器。DUC情况下,监护对象允许您指定特征定义的反应级联的三个过滤器,包括通带和阻带频率,通带波纹,阻带衰减。
设计最低订购量减少过滤器接收一个FRS信号集中在IF 455 KHz的频率。毁掉的信号通过40 downsample从2 MHz到50千赫。设置StopbandFrequencySource
财产“属性”
和阻带衰减到60 dB设计级联反应,达到60 dB的ACR。
DDCMinOrder = dsp.DigitalDownConverter (…SampleRate = 2 e6,…DecimationFactor = 40,…带宽= 12.5 e3,…PassbandRipple = 0.05,…StopbandAttenuation = 60,…StopbandFrequencySource =“属性”,…e3 StopbandFrequency = 18.75,…CenterFrequency = 455 e3);
分析杀害多人者过滤器,并验证的反应级联反应达到60 dB 25千赫的衰减。注意,DDC放松第二阶段的反应(CIC补偿器)的左阻带边缘的第三阶段的第一个别名(低通杀害多人者)最小化秩序。
关闭(fvt) fvt = visualizeFilterStages (DDCMinOrder算术=“双”);
类似于DUC情况下,您可以定义通过设置过滤器订单MinimumOrderDesign
属性为false。
MATLAB处理循环
FCC部分95年指定一个调频调制最大频率偏差为2.5 KHz,最高3.125 KHz的音频。Frequency-modulate音频信号得到FRS基带信号(信号不包括压制的语气)。上转换和下转换基带FRS信号使用DUC和监护对象设计在前面的部分中使用最低订购量过滤器。解调信号,并使用音频播放器播放它。
%初始化仿真参数关闭(fvt) Fs = 50 e3;frameLength = 1000;maxAudioFrequency = 3.125 e3;%最大允许音频FRS收音机deltaF = 2.5 e3;%最大允许FRS无线电频率偏移freqSensitivityGain = deltaF * 2 *π/ Fs;% K = FD / *(2 *π* Ts)ModulationFilter = dsp。IIRFilter(分子= 1,分母= [1]);DemodulationDelay = dsp.Delay (1);audioReader = dsp.AudioFileReader (“speech_dft_8kHz.wav”,…PlayCount = 3, SamplesPerFrame = frameLength);SRCTx = dsp.SampleRateConverter (InputSampleRate = audioReader.SampleRate,…OutputSampleRate = Fs,带宽= 6.25 e3);SRCRx = dsp。SampleRateConverter (InputSampleRate = Fs,…OutputSampleRate = audioReader。SampleRate、带宽= 6.25 e3);audioWriter = audioDeviceWriter (SampleRate = 8 e3);DUCMinOrder。CenterFrequency = 455年e3;basebandSignalSpectrum =简介(…方法=“韦尔奇”,…AveragingMethod =“指数”,…ForgettingFactor = 0.1,…SampleRate = Fs,…ShowLegend = true,…ChannelNames = {“基带输入”,下转换输出的},…Title =基带信号的功率谱);upConvertedSignalSpectrum =简介(…方法=“韦尔奇”,…AveragingMethod =“指数”,…ForgettingFactor = 0.1,…SampleRate = f * DUCMinOrder.InterpolationFactor、…Title =信号的功率谱经过DUC的);
流数据
而~结束(audioReader)%输入语音信号audioIn = audioReader ();%重新取样audioIn_200kHz = SRCTx (audioIn);%调频调制xFMBaseband = exp (1 j * freqSensitivityGain * ModulationFilter (audioIn_200kHz));%了转换xUp = DUCMinOrder (xFMBaseband);upConvertedSignalSpectrum (xUp);%下转换xDown = DDCMinOrder (xUp);basebandSignalSpectrum ([xFMBaseband xDown]);% FM解调audioOut_200kHz =角(DemodulationDelay (xDown)。*连词(xDown));%重新取样audioOut = SRCRx (audioOut_200kHz);%播放音频audioWriter (audioOut);结束%的清理释放(audioReader);释放(SRCTx);释放(ModulationFilter);释放(DUCMinOrder);释放(DDCMinOrder);释放(DemodulationDelay);释放(SRCRx);释放(basebandSignalSpectrum);
释放(upConvertedSignalSpectrum);
释放(audioWriter);
结论
在本例中,您设计的数字上下转换器FRS发射机和接收机使用dsp.DigitalUpConverter
和dsp.DigitalDownConverter
系统对象。这个例子探讨了这些对象所提供的不同的选项设计插值和大量毁灭过滤器。这个例子也探讨了过滤分析工具中可用dsp.DigitalUpConverter
和dsp.DigitalDownConverter
对象,如visualizeFilterStages
,fvtool
,getFilterOrders
功能。
数字转换器和数字下变频器对象在本例中采用双精度设计滤波器系数和双精度运算。看到设计和分析数字转换器如果你感兴趣的是设计一个数字转换器和数字转换器与定点输入操作。
另请参阅
功能
对象
dsp.AudioFileReader
|dsp.DigitalDownConverter
|dsp.DigitalUpConverter
|dsp.IIRFilter
|dsp.Delay
|dsp.SampleRateConverter
|简介
|audioDeviceWriter