m基于FH-GFSK信号的盲解调matlab仿真

简介: m基于FH-GFSK信号的盲解调matlab仿真

1.算法描述

   GFSK 高斯频移键控调制是把输入数据经高斯低通滤波器预调制滤波后,再进行FSK调制的数字调制方式。它在保持恒定幅度的同时,能够通过改变高斯低通滤波器的3dB带宽对已调信号的频谱进行控制,具有恒幅包络、功率谱集中、频谱较窄等无线通信系统所希望的特性。因此,GFSK调制解调技术被广泛地应用在移动通信、航空与航海通信等诸多领域中。       

    在无线通信中,为了对抗信道衰落和保证传输信息的安全常采用跳频(Frequency Hopping, FH)通信技术。高斯移频键控(Gauss Frequency Shift Keying, GFSK)具有恒幅包络、功率谱集中、频谱较窄等无线通信系统所希望的特性。FH-GFSK则结合了上述两种技术的优点,因此,在数字通信中得到广泛应用。

   本课题采用基于GNU Radio的软件无线电接收机首先对FH-GFSK信号进行采集,随后对采集到的信号进行分析,最终实现信号的盲解调。

image.png

所以在进行盲估计时候,需要知道fc,和低通滤波器的参数,后面的是固定结构,就不用估计了。

然后题目中讲到:

image.png

高斯滤波器参数,实际上就是获得对应的低通滤波器;

然后调制指数的计算公式为:

image.png

因此, 估计调制指数,实际上就是获得fd和Rb,而Rb表示符号速率,这个只要信号接收到,就可以得到的,不用估计,所以就是估计fd。FSK调制是载波的频率随信息符号成正比的一种调制方式,当发送信息符号1时发射频率向上搬移fdHz,当发送信息符号-1时发射频率向下搬移fdHz。 然后我们这里是调频通信,因此估计fd。

  所以,这里,忙解调的参数估计,本质就是就是频率估计和滤波器参数估计两个部分。

常见的数字调制方法如:

ASK ——幅移键控调制,把二进制符号0和1分别用不同的幅度来表示。

FSK ——频移键控调制,即用不同的频率来表示不同的符号。如2KHz表示0,3KHz表示1。

GFSK——高斯频移键控,在调制之前通过一个高斯低通 滤波器来限制信号的频谱宽度。

GMSK——高斯滤波最小频移键控,是在MSK(最小频移键控)调制器之前插入高斯低通预调制滤波器的一种调制方式

2.仿真效果预览
matlab2022a仿真结果如下:

4.png
5.png
6.png

3.MATLAB核心程序

%计算带宽,通过计算-3db频谱范围作为带宽
[x0,t,ssf,yy] = plotspec(Rx,1/fs);
Y2            = 10*log10(yy/max(yy));
Y3            = Y2(length(Y2)/2:end);
indx          = find(Y3>=-3);
ssf2          = ssf(length(ssf)/2:end);
BB            = (ssf2(indx(end))-ssf2(indx(1)));
BT            = 100*BB/fs;
disp('调制指数');
set(handles.edit2,'string',num2str(BT));
Rfinal        = [];
for i = 1:R
    i
    RR           = selectRxFrame2(i,:);
    [Isignal_,h] = glpfsignal(real(RR),fs,BT);
    [Qsignal_,h] = glpfsignal(imag(RR),fs,BT);
    %滤波这块比较费时,我这里只截取一部分进行处理
    Isignal  = Isignal_(1:length(RR));
    Qsignal  = Qsignal_(1:length(RR));
    %输出二进制数据
    tmps = Isignal.*[diff(Qsignal,1),0] - Qsignal.*[diff(Isignal,1),0];
    %做下滤波处理
    tmps = tmps-mean(tmps);
    w    = hamming(128);
    tmps = conv(tmps,w);
    tmps = tmps-mean(tmps);
    Rfinal = [Rfinal,tmps];
end
 
tmps2= Rfinal>=0;
 
axes(handles.axes3);
plot(Rfinal)
axis([2000,20000,-2,3]);
axes(handles.axes4);
plot(tmps2)
axis([2000,20000,-1,2]);
01_153m
相关文章
|
1天前
|
机器学习/深度学习 算法
m基于深度学习的QPSK调制解调系统相位检测和补偿算法matlab仿真
m基于深度学习的QPSK调制解调系统相位检测和补偿算法matlab仿真
12 2
|
1天前
|
机器学习/深度学习 算法
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
|
1天前
|
机器学习/深度学习 数据采集 算法
基于深度学习的鸟类识别系统matlab仿真
基于深度学习的鸟类识别系统matlab仿真
|
2天前
|
算法
基于小波多普勒变换的回波信号检测matlab仿真
基于小波多普勒变换的回波信号检测matlab仿真
|
3天前
|
机器学习/深度学习 算法 计算机视觉
m基于Yolov2深度学习网络的喝水行为检测系统matlab仿真,带GUI界面
m基于Yolov2深度学习网络的喝水行为检测系统matlab仿真,带GUI界面
10 0
|
3天前
|
机器学习/深度学习 算法 计算机视觉
基于局部信息提取的人脸标志检测算法matlab仿真
基于局部信息提取的人脸标志检测算法matlab仿真
|
3天前
|
机器学习/深度学习 数据采集 监控
基于yolov2深度学习网络的车辆检测算法matlab仿真,包括白天场景和夜晚场景
基于yolov2深度学习网络的车辆检测算法matlab仿真,包括白天场景和夜晚场景
|
4天前
|
算法 计算机视觉
基于Harris角点的多视角图像全景拼接算法matlab仿真
基于Harris角点的多视角图像全景拼接算法matlab仿真
|
1月前
|
Perl
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
|
1月前
【数值分析】迭代法求方程的根(附matlab代码)
【数值分析】迭代法求方程的根(附matlab代码)

热门文章

最新文章

相关产品