过去两年我一直在使用GNURadio处理问题,我制作了一个非常简单的回送流程图,其中包括这样的内容
Wav文件源-> Rational Resampler->乘以const->浮点到char-> GFSK mod-> GFSK降级-> Char可以浮点->乘以const --->音频接收器
在设计我的数字通信系统时,我做了以下假设
- 音频率:32 KHz
- 音频位深度:8位
- Bits_per_symbol:1位。
- Samples_per_symbol:8 sps
进行了以下计算:
- 比特率(音频):音频率*音频深度= 8 * 32e3 = 256 Kbps
- 波特率(符号):比特率* Bits_per_symbol = 256e3 * 1 = 256
KSyps
- Sample_rate(调制样本):Baud_Rate * Sample_per_symbol =
256e3 * 8 = 2.048 MSps
由于Wikipedia和GNURADIO Wiki,我进行了此计算
- 频率偏差=比特率/ 2 = 256e3 / 2 = 128 KHz
- 调制指数=频率偏差/(波特率/ 2)= 128e3 /
(256e3 / 2)= 1
- 灵敏度=(math.pi * Modulation_index)/(Samples_per_symbol)=
(3.1416 .. * 1)/ 8 = 392.699e-3
在发送方:
- Wav文件源:以44100 KHz采样的音频文件
- 理性重采样器:插值320抽取441将重采样为
32 KHz
- 乘以常数:0.5倍以避免剪切
- 浮动为char:256个级别的缩放
在接收方:
- Char浮动:比例为256级
- 乘以常数:还原等级的2倍
- 音频接收器:以32000 KHz播放wav文件
我在没有GFSK块的情况下对其进行了测试,并且工作出色且没有错误,主要问题是在连接会产生位错误的GFSK块时,我进行了Followind配置。
GFSK mod:
- 示例/符号:8
- 灵敏度:392.699e-3
- BT:350e-3
GFSK降级:
- 示例/符号:8
- 灵敏度:392.699e-3
- BT:350e-3
- 增益Mu:175e-3
- Mu:500e-3
- 欧米茄相对频率:5e-3
- 频率错误:0
这是流程图:
Flowgraph
但是看起来好像我在GFSK块中做错了,因为输出听起来很吵。我什至添加了一个恒定源,希望什么也不会输出,但仍然听起来很不错,您能帮我调试专家吗