FSK调制_2FSK调制Matlab仿真

1.什么是2FSK调制

2FSK(Frequency Shift Keying)为二进制数字频率调制(二进制频移键控),用载波的频率来传送数字信息,即用所传送的数字信息控制载波的频率。2FSK信号便是符号“0”对应于载频 f1,而符号“1”对应于载频 f2(与 f1 不同的另一载频)的已调波形,而且 f1 与 f2 之间的改变是瞬间的。传“0”信号时,发送频率为 f1 的载波; 传“1”信号时,发送频率为 f2的载波。可见,FSK 是用不同频率的载波来传递数字消息的。

2.连续相位2FSK和非连续相位2FSK对比

非连续相位2FSK最大的问题在于带外泄露,如果连续两个符号不同,就会在交界处发生相位的跳变,在频谱上表现为高频成分,形成带外泄露。频谱上会有明显的两个频点的谱线。

为了防止带外泄露,一般采用连续相位2FSK调制。由于是相位频谱上不会有明显的两个频点的谱线。

3.Matlab自带2FSK调制函数

Matlab提供了FSK调制函数、块和System object可以来实现M阶FSK调制。Matlab实现的FSK调制是针对基带信号而言的( For either type of mapping, the object maps the highest frequency to the integer 0 and maps the lowest frequency to the integer M–1. In baseband simulation, the lowest frequency is the negative frequency with the largest absolute value.)。对于2FSK,0映射为正频点,1映射为负频点。

4.Matlab仿真2FSK调制

此次仿真使用的是System object(comm.FSKModulator),参数设置如下:

DataLength = 60;%待发送数据长度
       ModulationOrder = 2;%FSK调制阶数
       FrequencySeparation = 1e6;%两个频点间隔
       SamplesPerSymbol = 30;%过采样个数
       SymbolRate = 6e5;%符号速率
       Fs = SamplesPerSymbol * SymbolRate;

代码链接:https://download.csdn.net/download/flypassion/11864221

( 备注:Fs SamplesPerSymbol×SymbolRate, which is greater than ModulationOrder multiplied by FrequencySeparation.)

1.非连续相位2FSK仿真

仿真结果如下图所示(为了显示效果实部和虚部信号都只画了一部分):

仿真结果频谱仪分析如下图所示:

2.连续相位2FSK仿真

仿真结果如下图所示(为了显示效果实部和虚部信号都只画了一部分):

仿真结果频谱仪分析如下图所示:

5.Matlab仿真2FSK调制结果分析

1.调制结果和预期结果符合。

2.从画出的2FSK调制后信号的波形图发现I支路符号波形没有调制,Q支路进行了调制,分析可知导致出现这样的现象的原因如下:

当输入为“0”时,对应的频点为f,则调制后的信号如下:

                                                                 e^{^{j2\pi ft}=cos2\pi ft+jsin2\pi ft

当输入为“1”时,对应的频点为-f,则调制后的信号如下:

                                             e^{^{j(-2\pi ft)}=cos(-2\pi ft)+jsin(-2\pi ft)=cos2\pi ft-jsin2\pi ft

由于余弦是偶函数,正弦是奇函数,所以2FSK实部信号没有变化,虚部根据输入信号进行调制。

3.连续相位调制占用带宽小于非连续相位调制占用带宽,且信号能力更集中,符合连续相位调制的优点。

  • 11
    点赞
  • 103
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以为您提供一些关于2ASK和2FSK调制Matlab仿真的指导。 首先,您需要了解2ASK和2FSK调制的原理,以便能够编写Matlab代码进行仿真。2ASK调制是基于数字信号的振幅变化来传输信息的一种调制方式,而2FSK调制则是利用数字信号的频率变化来传输信息的一种调制方式。 下面是一个基本的2ASK调制Matlab代码示例: ```matlab % 生成2ASK调制信号的Matlab代码 fs = 1000; % 采样频率 fc = 100; % 载波频率 Am = 1; % 调制信号的幅度 Ac = 2; % 载波信号的幅度 fm = 10; % 调制信号的频率 t = 0:1/fs:1; % 信号的时间范围 m = Am*sin(2*pi*fm*t); % 调制信号 c = Ac*sin(2*pi*fc*t); % 载波信号 s = (m>=0).*c + (m<0).*(-c); % 2ASK调制信号 plot(t,s); ``` 上述代码中,首先定义了采样频率、载波频率、调制信号幅度、载波信号幅度、调制信号频率和信号的时间范围等参数。然后使用sin函数生成调制信号和载波信号,最后将调制信号与载波信号进行2ASK调制得到最终的调制信号,并使用plot函数进行绘图。 下面是一个基本的2FSK调制Matlab代码示例: ```matlab % 生成2FSK调制信号的Matlab代码 fs = 1000; % 采样频率 fc1 = 100; % 第一个载波频率 fc2 = 200; % 第二个载波频率 Am = 1; % 调制信号的幅度 fm = 10; % 调制信号的频率 t = 0:1/fs:1; % 信号的时间范围 m = Am*sin(2*pi*fm*t); % 调制信号 s1 = sin(2*pi*fc1*t); % 第一个载波信号 s2 = sin(2*pi*fc2*t); % 第二个载波信号 s = (m>=0).*s1 + (m<0).*s2; % 2FSK调制信号 plot(t,s); ``` 上述代码中,首先定义了采样频率、第一个载波频率、第二个载波频率、调制信号幅度、调制信号频率和信号的时间范围等参数。然后使用sin函数生成调制信号和两个不同频率的载波信号,最后根据调制信号的正负性选择不同的载波信号进行2FSK调制得到最终的调制信号,并使用plot函数进行绘图。 以上是基本的2ASK和2FSK调制Matlab代码示例,您可以根据需要进行相应的修改和扩展,以实现您的仿真需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值