【GNURadio实验报告】实验3-关于GNU Radio和HackRF的采样率问题


本文在写作过程中,得到了开源SDR实验室https://blog.csdn.net/OpenSourceSDR?type=blog大佬们的悉心指导,并参考借鉴了https://blog.csdn.net/OpenSourceSDR/article/details/108361877等文章内容,在这里向你们的无私帮助表示衷心感谢!

博主本人非通信专业出身,本文仅为个人在学习GNU Radio和HackRF过程中记录的知识点笔记,文中难免会出现错误和疏漏,恳请走过路过的大佬不吝赐教斧正。

期待能够为GNU Radio中文社区增添一份贡献!


【核心结论】
一、软件信号仿真和硬件处理信号,采样率的作用不同
软件信号仿真:数字信号转数字信号,没有A/D过程,接收机(例如【QT GUI Frequency Sink】示波器、【Audio Sink】播放器)所谓的“采样”,实际是调节数据流的流速,传进来多少数据点就照单全收多少点,只不过处理的速度有变,故将成比例改变原始信号的频率。
硬件处理信号:采样是将连续的模拟信号转化为离散的数字信号,采样率的不同,决定的是数字信号与原始模拟信号的相似度,即信号丢失得多少(声音失真),而不会改变原始信息(语速变快、音调变高等;在满足奈奎斯特采样定理的情况下)。
二、使用HackRF发射信号时,采样率应控制在[200kHz,18MHz]之间,否则将导致信号失真
尽管HackRF最大采样率为20MHz(AD采样率20MSPS),但发射数字信号时,采样率若超过18MHz或小于200kHz,实际发射信号的码元宽度将于待发射信号不相符;发射模拟信号时,音频流速将出现异常。

一、采样率的定义

引用知乎百科采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,用赫兹(Hz)来表示。

我们使用麦克风录音时,声音的信号是连续的。
在这里插入图片描述声音进入麦克风后,计算机每隔一段时间采集一次当前时间点的声音样本(如下图所示),将连续的模拟信号转化为离散的数据流,这一过程即采样,再经量化等步骤后,生成波形文件/样本文件。
在这里插入图片描述
采样频率描述了计算机采集声音样本的速率,也即每秒采集多少个声音样本。从上图中我们可以看出,采样频率越高,即采样的间隔时间越短,声音波形的表示也越准确,占用的存储空间也越来越大;采样频率越低,也就相对越来越失真。采样率再低也不宜低于信号中最高频率fmax的2倍,否则声音将会发生混叠,这个极限值被称为奈奎斯特频率。通常在实际应用中保证采样频率为信号最高频率的2.56~4倍。

二、GNU Radio的采样率问题

GNU Radio常用的信号源大致可以分为4种:
【Signal Source】≈常规信号生成器,可生成锯齿波、正弦波、方波等常用信号。
【Vector Source】≈数据流模块,例如下图中该模块将持续输出01001。
【Wav File Source】≈波形文件播放器,从.wav波形文件中读取信息形成数据流输出。
【Audio Source】≈麦克风,直接从硬件麦克风读取用户输入的声音。
在这里插入图片描述

(一)【Audio Source】的采样率含义

(最好讲的放在一开始来说……)

【Audio Source】对应于连接到计算机上的麦克风,是对输入音频设备的一种抽象。

当我们对着麦克风说话时,我们喉咙发出的声音是1种模拟信号,它的波形连续的。【Audio Source】的采样率Sample Rate,表示计算机要以多大的时间间隔对我们的声音进行采样,即1秒钟采集多少个点。下图所示的48kHz,即1秒采集48k个点。这个值设置得太低,采集到的声音就会失真;越高,音质就越好,但是生成的文件也就越大。

从时域角度来看,采样频率越高,意味着数字信号的波形也就越能够贴合原始的模拟信号,采集的也就越完整。
在这里插入图片描述从频域角度来看&#x

  • 7
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值