射频和无线供应商和资源的家

一站式满足您的射频和无线需求

FSK调制python代码| FSK python脚本

本页涵盖FSK调制python代码。FSK python脚本绘制FSK调制波形和二进制数据波形作为输出。

简介: FSK表示频移键控。这是一种数字调制方案,其中数字数据(二进制0和1的形式)由载波频率表示。二进制1由频率('f1')表示,二进制0由频率('f2')表示。在FSK python脚本中,f1设置为45hz,其中f2设置为30hz。使用python脚本Binarygen.py生成随机二进制数据。

移频键控调制

二进制FSK可以用下式表示:
s(t) = A* sin(2*π*f1*t) for二进制1,f1 = 45hz在python代码如下
s(t) = A* sin(2*π*f2*t) for二进制0,f2 = 30hz在下面的python代码中

二进制数据生成器Python脚本| Binarygen.py

下面的python脚本可以用来生成随机二进制数据。这在FSK调制中用作基带数据。

Def二进制(sym, sym_len):

将numpy导入为np
Rand_n = np.random.rand(sym)
rand_n (np。Where (rand_n >= 0.5)] = 1
rand_n (np。Where (rand_n <= 0.5)] = 0

Sig = np.zero (int(sym*sym_len))

#生成符号
Id1 = np。其中(rand_n == 1)

对于id1[0]中的I:
Temp = int(i*sym_len)
Sig [temp:temp+sym_len] = 1 .使用实例
返回团体

FSK Python脚本

遵循FSK python脚本可用于生成FSK调制波形的随机二进制数据给定作为输入。

#这个python脚本生成FSK调制波形
#库文件
进口matplotlib。Pyplot作为PLT
将numpy导入为np
从Binarygen导入二进制
从数学导入圆周率
plt.close(所有的)
#载波和二进制信号配置参数
Fs =每秒1000个采样
fc = 30 #载频30hz, 30循环/秒
T = 1 #总模拟时间,以秒为单位,1秒
T = np。量程(0,T, 1/Fs)
Td = 0.1 #比特持续时间
Nsamples = int(Td*Fs) #一个比特持续时间内的样本
Nsym = int(np.floor(np.size(t)/Nsamples))
#二进制波形生成
sig =二进制(Nsym,Nsamples)
# FSK波形生成
F = fc + fc*sig/2
Xfsk = np.sin(2*pi*f*t)
二进制波形和FSK调制波形图
图,轴= plt.subplots(2)
轴[0]。情节(t、团体)
轴[0]。set_title("二进制数字数据")
轴[1]。plot(t, Xfsk, 'r')
轴[1]。set_title("FSK调制信号")
plt.tight_layout ()
plt.show ()

输出图的FSK调制python代码

以下是上述FSK调制python脚本的输出图(二进制输入数据和FSK调制波形)。

FSK调制python图

Python中其他有用的DSP代码

MATLAB代码的有用链接

射频和无线教程


分享本页

翻译本页
Baidu