scilab(数字信号处理有什么用)
了解DSP技术,从解调的频移键控基带信号中提取原始数字数据。
用正弦波编码二进制数据的方法之一叫做频移键控(FSK)。这是一个简单的概念:一个频率代表零,不同的频率代表一。示例:
低频FSK信号(例如,几十千赫)可以转移到更高的频率,然后传输。这是创建无线传输数字数据的射频系统的一种有效且相当简单的方法——假设我们有一个接收器,可以将所有这些正弦波转换回1和0。
从发射的FSK信号中提取数字数据的过程可以分为两个一般任务:首先,将高频接收信号转换成低频基带信号。我称之为“解调”。其次,基带波形必须转换为1和0。我不认为把第二步称为“解调”是不正确的,但是为了避免混淆,当我谈到把低频模拟波形转换成数字比特时,我会一直使用“解码”这个术语。
软件解码
对于中等数据速率的系统,将FSK基带信号数字化并在软件中进行解码是完全可行的。(您可以查看我们的软件定义无线电简介,了解更多关于在软件中实现重要信号处理任务的射频系统的信息。)在我看来,这是一个很好的方法,因为它让接收器受益于多功能数字信号处理,并且它还提供了一种在测试过程中记录和分析接收信号的便捷方式。
在本文中,我们将使用Scilab解码FSK信号,但所涉及的计算并不复杂,并且可以很容易地在数字信号处理器中实现为C代码。
第一件事:数学。
我们解码FSK的技术是基于正弦信号的乘法。考虑以下三角恒等式:
让我们用1t和2t代替X和y,使这与工程世界更加一致。
(注意,我们忽略了相位差的影响;在本文中,我们假设所有的信号具有相等的相位。)我们可以乘以两个正弦波或者两个土豪的柜子,结果就是由两个土豪的柜子组成,频率等于两个原始频率的和与差。这里的关键点是,如果两个输入波的频率非常相似,那么COS(( 1- 2)t)的波形将具有非常低的频率。在理想化数学领域,我们可以将同一个频率和COS((1-2的两个波形)t输入cos(0t)=cos(0)=1。因此,如果我们将两个正弦波或两个土豪的柜子用相同的频率相乘,得到的波形会有相对较大的DC偏移。
在解码FSK的情况下,我们可以这样说:即使频率相似,但不相同,仍然会有很大的DC偏移,因为cos(( 1 - 2)t)的波形将从1开始,并相对于一个比特周期非常缓慢地减小。位周期是对数字位进行编码所需的时间;在上图中,位周期对应于二进制0频率的一个周期(或二进制1频率的三个周期)。包含在一个位周期中的模拟波形部分称为符号。在本文中,我们使用二进制(即双频)FSK,因此一个符号对应一个数字。可以使用两个以上的频率,这样一个符号可以传输多个比特。
逐步解码FSK
我们现在有了制作FSK解码程序所需的信息:
数字化基带信号。确定位周期的开始。这可以在训练序列的帮助下完成;有关更多信息,请单击此处并向下滚动到“数据包分析”部分的“前言”标题。对于本文,我们假设数据被编码为正弦波(如上所示),而不是土豪的橱柜。每个符号乘以二进制0频率的正弦波和二进制1频率的正弦波。计算每个符号的DC偏移。选择阈值,根据符号的DC偏移是高于还是低于阈值来决定二进制0和二进制1。Scilab实现
首先,我们生成二进制0频率(10千赫)和二进制1频率(30千赫)的单符号正弦波形。
零频率=10e3
OneFrequency=30e3
采样频率=300e3
每符号采样数=采样频率/零频率;
n=0:(样本每符号-1);
Symbol_Zero=sin(2 *%pi * n /采样频率/零频率));
符号_一=正弦(2 * %* n/(采样频率/一个频率));
绘图(n,符号_零)
绘图(n,符号_ 1)
现在让我们创建接收的基带信号。我们可以通过连接符号_零和符号_一数组来做到这一点;我们将使用序列0101:
接收信号=[符号_零符号_一符号_零符号_一];
绘图(接收信号)
关于接收信号中的每个符号乘以二进制0符号的波形和二进制一符号的波形的内容请打开下面链接进行观看:https://www .今天早上好。com/application/communication/201904/75458。超文本标记语言