【GNURadio实验报告】实验3( 三 )


增加1个【】模块 , 令每个码元重复10次(=10) , 这意味着计算机每秒输出10个点 , 1个码元占10个点 , 故每个码元时长就拉长为1秒*10Hz/10次=1秒 。
(四)【 】的采样率含义
【 】常规信号发生器 。可生成恒定波形(阶跃信号)、正弦信号、余弦信号、方波信号、三波信号、锯齿波信号 。
如下图所示 , 使用该模块生成一个频率为2kHz的余弦波信号(每秒2000个周期) , 并以32kHz的速率(每秒采集32k个点)来对这个余弦波进行采样 。由此我们可知:每个波形周期将采样16个点 , 也即每16个点为一组能复原出一个周期的余弦波形 。
【 】模块的作用 , 是生成数据点而不是发送数据点:它在内存里写入了一连串的数据 , 这些数据的规则是每16个点为一个周期(例如[0 1 2 3 4 5 4 3 2 1 0 -1 -2 -3 -4 -5 -4 -3 -2 -1 0 1……]) , 但要注意 , 这串数据并没有时间戳信息 。我们使用【QT GUISink】频域示波器来播放这串数据时 , 若采样率设置为32kHz , 示波器模块就会在1秒内从内存里取出32k个点 , 而每16个可组合为一个余弦波形周期 , 那么32k个点之中就有32k/16=2000个周期 , 1s-2000周期即2kHz , 因此示波器将显示该信号频率为2kHz 。
而当采样率为16kHz时 , Sink模块在1秒内从内存里拿出来16k个点 , 那么16k个点就有16k/16=1000个周期 , 1s-1000周期 , 频率自然是1kHz!!!
同理 , 当采样率提高到64kHz , 就是1s内拿出64k个点 , 即1秒内将出现64k/16=4000个余弦波周期 , 频率自然是4kHz!!!

【GNURadio实验报告】实验3

文章插图
三、的采样率问题
的采样率最高可以达到20MHz , 但根据博主实践情况来看 , 当使用发射信号时 , 实际可用采样率在[-18MHz]区间内 , 超出该区间发射的信号会失真 , 数字信号的码元宽度、模拟信号的频率都将出现异常 。
论据一:OOK/2ASK调制信号码元宽度异常
详细实验过程见本专栏第2篇【实验报告】实验2-使用仿真OOK信号 。注:实验过程中请遵守当地无线电法规 。博主是将发射机和接收机用双绞线+负载直接对接进行的实验 , 没有实际发射电磁波 。
下图所示的grc流程图实现的是向外发送OOK(On-Off )开关键控/通断键控信号 , 基带信息为二进制数据流01001 , 码元宽度为1s*100k/200k=0.5s , 载波频率为409. 。
实际发射效果如下图所示 。这里使用了RTL-SDR接收机+SDR#软件完成信号采样 , 采样率设为2. , 带宽32kHz , 设自动增益控制 , 解调方式选择了CW , 录制内容为音频数据;录制的音频wav文件使用Adobe 进行分析 。由图可知 , RTL-SDR成功在409.接收到来自发送的01001 , 且码元宽度为0.5s 。
博主先后试验了100k、200k、250k、10M、15M、17M、18M、19M、20M采样率 , 当且仅当采样率为200k-18M的情况下 , 接收到的码元宽度为0.5s;将发射机的采样率设置为或20MHz时 , 码元宽度出现异常 , 部分实验数据和截图证据如下 。
需要说明的是:之所以接收机的采样率没有影响码元宽度 , 是因为在使用硬件实际发射、接收无线电信号时 , 接收机的采样是把从空间中捕获下来的连续的模拟信号转换为离散的数字信号 , 这些模拟信号的流速是给定的 , 接收机采样率的大小不会到影响发射机信号 , 即码元宽度不会变化 , 这和单纯使用软件进行信号仿真(数字信号转数字信号)是不一样的 。例如 , 在KTV用1个采样率很低的廉价麦克风去唱歌 , 只会导致音质很差 , 但没听说用嘴唱出来的歌和麦克风采录进去的歌语速发生了变化 。