用matlab编程简单电子琴,基于MATLAB的数字信号发生器及简易电子琴设计论文.doc...

基于MATLAB的数字信号发生器及简易电子琴设计论文

基于MATLAB的数字信号发生器及简易电子琴设计

摘 要

数字信号发生器是一种基于软硬件结合实现的函数波形产生仪器。在工程实践中需要检测和分析的各种复杂信号均可分解成各种简单信号之和,而这些简单信号皆可由数字信号发生器模拟产生,因此它在工程分析和实验教学中有着广泛的应用。MATLAB是一个数据分析和处理功能十分强大的工程实用软件,它的数据采集工具箱为实现数据的输入和输出提供了十分方便的函数和命令,在数字信号处理方面方便实用。本文介绍了一种使用MATLAB建立一个简单数字信号发生器的基本流程,并详细叙述了简单波形(正弦波、方波、三角波、锯齿波、白噪声、脉冲、阶跃、斜坡)信号的具体实现方法。最后,利用简单的正弦波信号和PC的声卡设计了一个简易电子琴。

关键字:MATLAB,数字信号发生器,简易电子琴

概述

随着计算机技术和测试技术的不断发展,传统的测试仪器正向虚拟化方向发展,特别是在试验教学领域。虚拟仪器作为现代仪器技术和计算机技术深层次结合的产物,更是得到了广泛应用。信号发生器原本是模拟电子技术发展的产物,但本文设计出的数字信号发生器是基于计算机软硬件实现的数字信号发生器,是一种虚拟仪器。

设计原理

常用的数字信号发生器一般可产生正弦信号、方波信号、三角波信号、锯齿波信号、白噪声信号、脉冲信号、阶跃信号、斜坡信号等。此时的数字信号又可称为离散信号,即时间为离散变量的信号。它只在离散时间上给出函数值,是时间上不连续的“序列”。离散时间的间隔是均匀的,以表示。的值由信号的采样频率决定。为保证采样后信号能真实地保留原始模拟信号信息,信号采样频率必须至少为原信号中最高频率成分的2倍。这是采样的基本法则,称为采样定理。本文为了使产生的数字信号更接近原始的模拟信号,采用的采样频率为原始信号频率的30倍。

MATLAB程序提供了常用的各种基本信号的生成函数。本设计需模拟的八种信号大部分都直接使用了MATLAB提供的函数,只有少数几个信号没有调用函数,直接编写的。为了模拟信号发生器的设置,本设计也将常用信号的幅值、频率、相位设计成可调的。

正弦信号的实现

正弦波信号的数学表达式如下式(2.1)所示,

(2.1)

其中:为幅值;为频率;为相位。

在MATLAB中,将时间变量离散化并构造成一个一维数组,如下式(2.2)所示,

(2.2)

其中:为采样频率。

相应的正弦波信号的数字信号表达式如下式(2.3)所示,

(2.3)

幅值、频率、相位参数可以由用户界面上的滑动条或编辑框输入。在分别得到与的离散值后,用plot作图函数即可获得波形显示。

方波信号的实现

在MATLAB中,可以用函数直接生成一个方波信号,其函数原型为,该函数可生成一个周期为,峰值为,占空比为的方波,的默认值为50%。

利用该函数,可得到幅值、频率、相位可调的方波信号函数如下式(2.4)所示,

(2.4)

三角波信号的实现

在MATLAB中,可以用函数直接生成一个三角波信号,其函数原型为,该函数可生成一个周期为,峰值为,最大值出现在位置的三角波。

利用该函数,可得到幅值、频率、相位可调的三角波信号函数如下式(2.5)所示,

(2.5)

锯齿波信号的实现

将上述2.3节中函数中的参数值设为1,即可得到锯齿波。利用该函数得到的幅值、频率、相位可调的锯齿波信号函数如下式(2.6)所示,

(2.6)

白噪声信号的实现

白噪声是指功率谱密度在整个频域内均匀分布的噪声。白噪声的实现可借助于MATLAB中的函数,它的功能是产生一个均值为0,标准差为1的随机数列或矩阵,该函数有多种调用形式,下式(2.7)即可得到一个均值为0,标准差为的维的随机矩阵。

(2.7)

其中,为幅值;。

脉冲信号的实现

考虑到脉冲信号与方波信号波形相似,故以方波信号函数函数为基础,将函数值加1,即可得到最大值为2,最小值为0的脉冲波形,原函数的参数可以用来调节脉冲的宽度。

利用该函数,得到的幅值、频率、相位可调的脉冲信号函数如下式(2.8)所示,

(2.8)

阶跃信号的实现

阶跃信号的数学表达式如下式(2.9)所示,

(2.9)

将上式用MATLAB程序语言转换一下,即可得阶跃信号函数如下式(2.10)所示,

(2.10)

斜坡信号的实现

斜坡信号的数学表达式如下式(2.11)所示,

(2.11)

其中,为斜坡的斜率。将上式中的时间离散化后,即可得到斜坡信号的数字

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值