虚拟信号发生器

2024-06-24

虚拟信号发生器(精选7篇)

虚拟信号发生器 第1篇

信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛地应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。本文设计了一种可以产生正弦波、方波、三角波、锯齿波、白噪声、脉冲信号、阶跃信号和斜坡信号的虚拟信号发生器。

1 设计目的

虚拟信号发生器设计要达到这样的目的:通过选择信号类型,虚拟信号发生器能够实现正弦、方波、三角波、锯齿波等信号的输出,而且,通过调节滚动条可以改变所选输出波形的参数。例如,选择正弦信号,可以通过滚动条来调节正弦幅值,并且相应的幅值可以显示;频率和相位也可以类似地调节。输出的波形可以显示出来。同样的操作,可以实现虚拟方波、三角波、锯齿波、白噪声、脉冲信号、阶跃信号和斜坡信号,同时也可以调节相应的参数,可以画出波形。通过在GUI设计窗口中添加控件和为控件添加相应的回调函数就可以实现。

2 设计步骤

限于篇幅,这里主要介绍正弦信号发生器的实现,其他信号发生器的实现可以参考本文的附录。最终设计效果如图1所示。下面介绍正弦信号发生器的设计过程。

首先,在GUI窗口中添加控件。修改各个控件的Tag:将正弦波选择按钮改为radio ZHENGXIAN;示波器为axes2;频率、幅值和相位的滚动条依次为slider PINLV、sliderFUZHI、slider XIANGWEI;频率、幅值和相位的显示框分别为edit PINLV、edit FUZHI、edit XIANGWEI。

接下来为各个控件添加回调函数。其中正弦波选择框的回调函数如下:

3 结束语

使用matlab软件产生信号波形,并且通过声卡输出,实现了虚拟数字信号发生器、数字电子琴、手机和弦铃音以及DTMF信号的设计。设计界面简单直观,具有一定的参考应用价值。

摘要:Matlab是一个数据分析和处理功能十分强大的工程实用软件,为输出提供了十分方便的函数和命令并且Matlab简单直观的图形用户接口易于掌握和使用。本文介绍了一种使用GUI工具箱,用Matlab实现虚拟信号发生器的设计。文章设计的信号发生器可以加深对信号处理概念的理解,具有一定的借鉴应用价值。

关键词:Matlab,信号发生器,虚拟仪器

参考文献

虚拟数字信号发生器的设计与实现 第2篇

1 新型数字信号发生器的整机设计

该新型数字信号发生器产生信号类型有正弦波、方波、三角波以及脉冲信号等, 频率和幅度均可调。整机电路包括:数/模转换电路的单片机最小化设计、信号幅度调理电路、信号电流/电压及极性转换电路、单片机与PC机接口电路、单片机时钟电路、复位电路等。下位机采用AT89S51芯片, D/A转换采用AD7520LN芯片。通过RS232串行口与PC机进行通信, 传送所设置的信号参数。整机系统电路如图1所示。

1.1 数/模转换的原理

在单片机数/模转换电路的设计中, 做到了电路设计的最小化, 即没用任何附加逻辑器件做接口电路, 实现了单片机对AD7520LN转换芯片的操作。

运用A D G 4 0 8电子模拟开关和8个精密电阻, 构成分压电路, 给AD7520LN转换芯片的Vref端提供8种不同的参考电压, 用来调理产生信号的幅度, 这样所产生的信号有8种可调输出电压范围。LM324运算放大器电路完成电流/电压转换, 以及信号极性的转换。信号产生中, 周期和幅度值 (peak-peak) 的设定至关重要。在系统中, 这些参数值在主机界面相应输入框设定, 然后单片机根据这些参数来发生具体的信号。

为了提高A/D转换精度, 设计了一精密稳压电源模块, 输出16V直流电压, 这样提高了AD7520LN的Vref端参考电压精度。

1.2 RS232接口电路的设计

A T 8 9 S 5 1与P C机的接口电路采用芯片Max232。Max232产品是由德州仪器公司 (TI) 推出的一款兼容RS232标准的芯片。Max232芯片是起到电平转换的功能, 使单片机的TTL电平与PC机的RS232电平达到匹配。串口通信的RS232接口采用9针串口DB9。用定时器T1作波特率发生器。

2 软件编程

软件程序主要包括:PC机可视化界面程序、单片机与PC机串口通讯程序、单片机信号发生程序。单片机采用C51语言编程, 上位机的操作显示界面采用VC++6.0进行可视化编程。在串口通信调试过程中, 借助“串口调试助手”工具。

2.1 单片机编程

单片机主程序流程如图2所示、信号发生子程序如图3所示。单片机系统开发仿真调试借助uVison3集成调试软件, 完成程序的编辑、编译、仿真, 要完全符合AD7520LN的时序规范要求。最后将调试成功而生成的.b i n文件编程固化到AT89S51的flash单元中, 最后实现脱机工作的应用系统板。

2.2 人机界面编程

利用VC++6.0, 建立一个基于对话框的M F C应用程序, 串口通信采用M S C o m m控件来实现。P C机界面主程序流程如图4所示。

3 功能结果

通过实践运用, 软硬件方案实现了既定功能, 整机的各项指标都达到了预定的设计要求。AD7520LN数/模转换器件的分辨率为10位, 这为整机系统的较高精度提供了保障。整机系统工作稳定可靠, 可视化界面显示正常。

虚拟信号发生器 第3篇

在工业生产和实验教学中, 信号发生器经常被用到。传统的信号发生器其功能完全靠硬件实现, 功能单一, 而且用户的购置和维护费用高。更重要的是, 对于传统的信号发生器, 其功能一旦确定就不能更改, 用户要想使用新的功能则必须重新购买新的仪器, 传统信号发生器的不足显而易见。虚拟仪器是将仪器技术、计算机技术、总线技术和软件技术紧密地结合在一起, 打破了传统仪器的框架, 形成了一种新的仪器模式。因此, 用Lab VIEW开发了一套多功能虚拟信号发生器, 在很大程度上解决了传统信号发生器的诸多弊端。它不但可以实现信号发生的功能, 还可以对产生的信号进行调节控制, 而且用户可以自定义其功能, 为高校实验教学和科学研究工作提供了方便快捷的信号源, 具有很好的应用前景。

1 开发环境介绍

Lab VIEW是由美国国家仪器公司创立的一种功能强大而又灵活的仪器分析软件应用开发工具, 它是一种基于图形化的、用图标代替文本行创建应用程序的计算机编程语言。

Lab VIEW使用的编程语言通常称为G语言。G语言是一种图形化的语言, 使用这种语言基本上不写程序代码, 取而代之的是流程图和框图。它尽可能利用了工程技术人员所熟悉的术语、图标和概念, 因此, Lab VIEW是一个面向最终用户的开发工具。它可以增强构建科学和工程系统的能力, 提供了实现仪器编程和数据处理采集系统的便捷途径。虚拟仪器 (VI) 实际上就是一个基于计算机的用G语言编程的数据采集和分析系统。

2 虚拟信号发生器的设计指标

虚拟信号发生器是基于Lab VIEW软件平台开发的, 在设计上参考了传统信号发生器的功能, 并基于虚拟仪器在计算机上的特点, 在功能上有所拓展。虚拟信号发生器包括登录系统和信号发生器两个模块, 其实现的功能主要包括:

(1) 用户需要输入正确的用户名和密码信息方能进入系统, 若输入错误, 则提示重新登录或直接退出;

(2) 可以产生1Hz—10k Hz的三角波、正弦波、锯齿波、方波、周期性噪声波和任意函数的公式波形;

(3) 信号的频率、幅度、相位、偏移量和方波的占空比等参数可进行调节;

(4) 采样频率和采样点数可以调节;

(5) 信号产生过程可控, 可以暂停或继续产生信号。

3 虚拟信号发生器的设计与实现

3.1 登录模块设计

登录模块在程序中加入了一个“用户登录”程序, 预先在库中存储了用户的个人信息 (帐号和密码) 。然后合理分布各个元素的位置, 使用户更加一目了然的明晰程序的使用方法。信号发生器登录界面如图1所示。

登录界面整体采用了事件结构, 内部包含一个while循环结构。当输入的用户名和密码与预设的用户名和密码一致时弹出“登录成功”对话框, 点击确定后加载信号发生器子VI;当输入信息与预设信息不一致时弹出错误信息提示框, 提示用户重新登录或直接退出程序。登录模块程序框图如图2所示。

3.2 虚拟信号发生器前面板设计

仪器的前面板分为三个部分, 包括:公共显示控件、公共控件部分以及多种波形信号选择部分。如图3所示。

3.2.1 公共显示部分

显示部分只包括一个波形图控件, 用于显示用户通过此发生器产生的波形信号。在显示控件选板直接拖出波形图控件, 将其置于前面板的适当位置, 根据所需功能适当调节其属性。

3.2.2 公共控件部分

该部分包括程序的启动、开始/暂停、停止、信号重置控件和波形参数输入旋钮选择控件。可改变的波形参数的控件包括幅值控件、频率控件、相位控件、方波占空比控件、偏移量控件和采样信息控件。启动、开始/暂停、停止可通过布尔选板里的确定按钮产生, 幅值控件、频率控件、相位控件、方波占空比控件、偏移量控件可通过数值选板里的旋钮控件产生, 采样信息由采样频率、采样点、以及两个显示控件组成。由于旋钮读数精度较低, 所以在字符串与路径选板里面拖出五个字符串显示控件, 用于显示幅值控件、频率控件、相位控件、方波占空比控件、偏移量控件的当前数值, 便于对这五个参数进行更加精确的控制。当控件输入完成, 适当修改其属性, 再对外观加以美化。

3.2.3 波形选择部分

该部分为一个旋钮选择控件。可选择的波形有方波、锯齿波、正弦波、三角波、周期性噪音波和公式波。该控件可由数值选板中的旋钮产生, 根据需要调节其属性, 对其外观加以修饰, 用以实现各种波形之间的相互转换。当选择公式波形时, 需要一个字符串输入控件输入公式, 字符串输入控件可以由字符串与路径选板里面的字符串输入控件产生。

3.3 虚拟信号发生器程序框图设计

程序框图的设计就是为了实现前面板所想要完成的功能, 该函数信号发生器的程序框图如图4所示。

3.3.1 信号的产生

信号产生的控件是从波形生成选板中直接拖出, 即可产生方波, 正弦波, 三角波, 锯齿波等信号。

3.3.2 信号的显示

信号的显示只需要将产生的各种波形信号的输出端与波形图输入端相连, 便可将产生的波形信号通过前面板的波形图输出。

3.3.3 信号的选择

采用一个条件结构进行信号选择, 该条件结构包括六个分支, 每一个分支对应一种波形信号, 每一个分支都有一个索引号, 通过前面板的波形选择旋钮控制索引号从而达到波形选择的目的。

(4) 开始和暂停

开始和暂停功能是通过两个while循环结构实现。while循环每10毫秒检测一次暂停按钮是否被触发, 如果被触发, 循环停止, 从而实现对信号的控制。

4 虚拟信号发生器功能测试

该虚拟信号发生器的功能测试主要包括以下几个:

(1) 登录界面能否实现正常登录, 在用户信息不正确时能否发出错误提示;

(2) 能否正常产生正弦波、方波、三角波、锯齿波等多种波形, 能否实现波形种类选择的功能, 能否调节幅值、相位、频率、采样信息等参数;

(3) 能否正常显示输入的公式波;

(4) 暂停、启动、重置等控件功能是否正常, 程序暂停后能否继续运行。

部分测试结果如下所示:

5 结束语

本文设计的虚拟信号发生器界面美观、操作简单、响应迅速、功能强大。不仅能产生正弦波、方波、锯齿波、三角波、周期噪音波形及任意函数公式的波形, 还能对其频率、相位、幅值等参数进行调节, 并且能对信号产生过程进行控制。此外, 由于增加了登录系统, 使得仪器的安全性大大增加, 可广泛应用于生产和实验教学中。

摘要:传统的信号发生器的功能完全靠硬件实现, 其功能单一, 一旦确定就不能更改, 而且用户的购置和维修费用多。于是根据虚拟仪器的特点, 利用LabVIEW开发工具, 设计了一种虚拟信号发生器。该信号发生器能够产生三角波、正弦波、锯齿波、方波和噪音波等信号, 以及任意函数的公式波信号。该信号发生器具有界面美观友好、操作简单、响应速度快等特点, 并且设置了登录系统, 大大增加了其安全性。

关键词:虚拟仪器,LabVIEW,信号发生器

参考文献

[1]Mc Quiston.Virtual Instruments for Use in Test Systems Development[C]//Roceedings of the IEEE Systems Readiness Technology Conference, Autotestcon (Proceedings) 1993.Publ by IEEE, IEEE Service Center, 2003

[2]McQuiston.Virtualinstrumentsforuseintestsystems) development[C]//ProceedingsoftheIEEESystemsReadiness Technology Conference[S.l.]:IEEE, 2003.

[3]侯国屏, 叶齐鑫.Lab VIEW编程与虚拟仪器设计[M].北京:清华大学出版社, 2005.

[4]刘其和, 李云明.Lab VIEW虚拟仪器程序设计与应用[M].北京:化学工业出版社, 2011.3.

虚拟信号发生器 第4篇

关键词:虚拟仪器,信号发生器,LabVIEW,数据采集卡

0 引言

虚拟仪器是由美国国家仪器公司 (National Instrument Corp, 简称NI) 1986年推出的概念, 是在以计算机为核心的硬件平台上, 根据用户对仪器的设计要求, 用软件实现虚拟控制面板和测试功能的一种计算机仪器系统[1]。其实质就是利用输入输出接口设备完成信号的采集、生成, 利用计算机强大的软件功能实现信号的运算、分析、处理, 再利用计算机的显示器模拟传统仪器的控制面板显示控制检测结果。可见, 虚拟仪器是将现有的计算机技术、软件设计技术和高性能I/O模块结合在一起建立的功能强大而又灵活易变的仪器[2]。笔者利用Lab VIEW软件及NI公司生产的数据采集卡USB-6211设计了一个信号发生系统, 该系统的前面板由主界面和子界面两级构成, 除能够实现正弦波、方波、三角波、锯齿波及多种噪声信号的生成, 还能够实现脉冲信号、数字信号的生成。

1 虚拟信号发生器软件及硬件环境介绍

虚拟仪器开发设计最具有代表性的软件是Lab VIEW, 是NI公司推出的一种图形化编程语言, 被称为“仪器仪表界面”, 是专为数据采集与仪器控制、数据分析和数据表达而设计的开发软件[2]。LabVIEW编程时基本上使用流程图, 技术人员利用所熟悉的术语、图标和概念, 可以很方便地建立虚拟仪器, 所以Lab VIEW是一个面向最终用户的工具[3]。

硬件上, 本设计选用的NI USB-6211是一款M系列多功能数据采集模块, 该模块提供了16位模拟输入输出, 模拟输入通道单端16路 (差分8路) , 模拟输出通道2路, 单通道采样率为250 k S/s, 高采样率下也能保持高精度, 输出电压范围为±10V。另外, 6211提供4路数字输入线及4路数字输出线, 2个以32位80 MHz为时基的计数/定时器, 6211通过USB总线连接计算机, 使用非常方便。

2 虚拟信号发生系统的设计

2.1 主程序的实现

该系统由主程序及子程序构成, 对应虚拟仪器的界面也是由主界面及子界面构成。主程序的功能就是按照实际应用的需要调用不同的子程序, 所以在主程序的前面板上只有3个子程序调用开关及1个停止开关, 其前面板如图一 (a) 所示, 当点击不同的开关按键时, 系统进入不同功能的子程序运行。

主程序的程序框图如图一 (b) 所示, 编程时应用了事件结构, 事件选择标签有两个:一个是图一 (b) 中看到的三个子程序调用按钮;另一个是“停止”布尔按钮, 其输出直接与外层While循环结构的停止条件相连, 作为系统的停止开关。为了顺利实现子程序的调用, 应当在保存该主程VI的路径里建立一个文件夹, 取名为“子VI”, 然后把三个子VI程序放入该文件夹里, 并且各个子VI的文件名必须与主程序框图中事件结构里的三个布尔按钮的标签名相同, 即取名为“6211脉冲发生.vi”、“6211数字电平发生.vi”、“6211任意波形发生.vi”。

2.2 子程序的实现

子程序有3个, 分别实现任意波形发生、脉冲信号发生、数字电平发生。

2.2.1 任意波形发生子VI的实现

6211有两路模拟信号输出端, 对应通道引脚a O0与a O1, 通道采样率均为250 k S/s, 设计的前面板如图二 (a) 所示。使用者可以通过前面板设置输出模拟信号的最大最小值、波形、频率、幅值、输出通道、采样频率、采用数等参数, 注意输出幅值的大小不能超过设置的最大输出值, 还可以设置是否添加噪声信号输出, 如果需要添加噪声输出, 在选项卡中可以选择设置噪声的种类及参数。

使用Lab VIEW设计虚拟仪器输出程序框图时, 常采用的基本结构顺序是:第一, 通过“DAQmx虚拟通道创建.vi”对输出通道进行设置, 如输出物理量设置、最大最小值设置、输出通道设置等;第二, 通过“DAQmx定时.vi”实现输出采样信息设置, 如采样率的设置、采样模式的设置等;第三, 使用“DAQmx写.vi”实现数据的输出;第四, 由“DAQmx任务开始.vi”启动设备输出数据;第五, 通过“DAQmx任务清除.vi”清除任务。第三步与第四步顺序有时可以倒过来。

任意波形发生子VI的程序框图如图二 (b) 所示, 该系统由一个“基本函数发生器.vi”生成正弦波、方波、三角波或锯齿波, 由各种噪声信号vi生成噪声信号, 然后使用加法器实现两个信号的叠加。编程时注意噪声信号的采样信息必须与基本函数信号的采样信息一致, 否则系统不能运行。另外, 输入输出程序设计时需注意各个多态VI的时态选择, 如该程序框图中的“DAQmx虚拟通道创建.vi”应当选择:模拟输出→电压, 其他多态VI的时态选择如图二 (b) 所示。

2.2.2 脉冲信号发生子VI的实现

NI USB-6211有2个计数器CTR0与CTR1, 其脉冲信号输出通道也对应有2个, 分别是PFI4与PFI5引脚。本设计的脉冲信号输出通道可由用户选择, 对应前面板与程序框图如图三 (a) 、 (b) 所示。输出脉冲的占空比、频率、初始延时等信息可以根据需要在前面板上设定, 程序框图中的“DAQmx虚拟通道创建.vi”的时态应选择:计数器输出→脉冲生成→频率, “DAQmx定时.vi”的时态应选择:隐式 (计数器) 。

2.2.3 数字电平发生子VI的实现

NI USB-6211有4个数字信号输出线, 分别对应P1.0-P1.3引脚。即从这4个引脚可以编程实现TTL数字电平的输出。一般来说, 数字电平发生器的编程比较容易, 前面板就是控制各个输出引脚的高低电平, 对应前面板如图三 (a) 所示, 用户可以通过布尔按钮直观地设置线0—线3, 即P1.0—P1.3各个引脚输出高电平或低电平。程序框图应用一个“DAQ助手.Vi”简单方便地实现该功能, 对应程序框图如图三 (b) 所示, DAQ助手建立时必须选择:生成信号→数字输出→线输出, 并选中line0至line3全部。

3 系统运行结果

该系统在Lab VIEW2012环境下按照上述方法步骤完成编程, 通过USB接口连接计算机与6211数据采集卡, 运行程序后, 应用台湾固纬GWIN-STEK GDS-2102 100MHz数字示波器对本文所设计系统的信号输出端进行测试。运行任意波形发生器时, 在前面板上设置采样频率为6211的最大采样频率250KS/s, 输出波形设置为最严峻的正弦波时, 如果输出频率设置大于40KHZ, 数字示波器上显示的波形有很多干扰信号, 即正弦波失真;小于40KHZ时输出的正弦波信号清晰, 频率与设置的频率相等。该信号发生器发生方波、三角波、锯齿波或脉冲信号时, 最大输出频率可以达到50KHZ基本无失真。运行脉冲信号发生器时, 当输出信号频率设置大于100KHZ时, 输出脉冲有较多的尖脉冲出现;当小于100KHZ时, 输出信号清晰, 无干扰信号。运行数字电平发生器时, 对应的输出端上可以获得标准的TTL高低电平。

4 结束语

采用NI USB-6211及计算机作为硬件、LabVIEW作为软件, 开发了一个虚拟信号发生系统, 该系统可以生成49KHZ以下的任意波形及噪声信号, 也可以生成100KHZ以下任意占空比的脉冲信号, 还可以生成4位任意高低电平的TTL数字信号。系统采用了主界面及子界面形式, 层次分明, 使用方便。另外, 如果用户对仪器功能有更多的要求, 按照文中的方法可以很方便地对系统进行扩展、升级。实验表明, 该系统弥补了传统仪器功能单一、不易升级和携带不便等缺陷, 利用了虚拟仪器“软件即是仪器”的特性, 有很好的实用价值。

参考文献

[1]刘胜, 张兰勇, 章佳荣, 等.LabVIEW2009程序设计[M].北京:电子工业出版社, 2010.

[2]何玉均, 高会生.LabVIEW虚拟仪器设计教程[M].北京:人民邮电出版社, 2012.

语音信号处理虚拟实验平台设计 第5篇

语音信号处理是以语音语言学和数字信号处理等为基础的涉及面很广的交叉学科, 是许多信息领域应用的核心技术之一。目前高校中的语音信号处理课程主要从基础理论、算法实现及实际应用等几个方面来展开教学。由于该课程的理论涵盖面广、数学公式推导较多, 学生学习理论知识会显得枯燥难懂, 且感觉理论和实际应用脱节。针对这种情况, 本文利用美国NI公司的图形化虚拟仪器开发平台Matlab/Simulink, 完成了语音信号处理的虚拟实验仿真平台设计。借助该平台, 学生能较为完整的深化学习该门课程的基础理论, 扎实掌握课程的知识网络结构, 探索语音信号处理算法的实现方法, 同时能将语音信号处理系统的各个部分内容有机地衔接起来, 极大地方便了学生进行语音信号处理的学习, 有利于学生对理论算法的理解, 加强了动手能力, 提高了学习的主动性, 有助于学生创新综合能力的培养。

二、实验平台总体设计

本实验平台采用图形化虚拟仪器开发平台Matlab/Simulink, 它是一种图标代替文本行创建应用程序的图形化编程语言, Matlab采用基于流程图的图形化编程方式, 它编程简单、易于理解、效率高, 针对数据采集、仪器控制、信号分析和数据处理等任务, 设计提供了丰富完善的功能图标, 且能解决极其复杂的数值运算。语音信号处理包含语音信号的数字表达方法、语音信号的数字处理的各种方法以及语音处理理论和技术应用等三个方面的内容。开发的实验平台结构框图如图1所示。

实验平台的语音信号采集由语音采集卡、调理电路和PC机接口组成, 也可由麦克风和声卡将接受的语音信号经COOL EDIT或Praat等语音编辑软件来完成, 以形成待处理的音频文件, 再进行预加重、端点检测等语音预处理, 然后完成语音信号分析、特征参数提取和语音信号处理及应用等实验。

三、实验平台功能实现举例

语音信号在Matlab下对信号分析算法和处理算法进行调试, 无误后导入matlab Script节点中。设计完成的虚拟实验平台界面如图2所示。

程序运行时, 用户可通过编辑设计用户菜单, 点击菜单栏中的下拉菜单选项, 程序会自动弹出相应的前面板, 选择好文件路径, 程序将对语音数据进行分析, 同时实时显示分析处理结果。

1. 端点检测实验的功能实现。

语音预处理的端点检测常用的方法是双门限法, 利用短时能量和短时过零率参数来实现。由于语音的起点可能是能量很弱的清辅音, 此时不能用能量来区别这种清辅音和无声, 必须采用过零率。搜索过零率的时间少于要一个语音帧的长度。图3为端点检测VI。当程序运行时选择待分析的语音信号, “验证数组操作”中显示信号时域波形, “短时能量”和“过零率”即为该语音的对应参数显示。利用短时能量检测的语音端点显示在“端点帧数”表格中。

2. 基音周期检测实验的功能实现。

根据语音信号的短时平均幅度差函数来确定基音周期, 图4为基音周期检测的前面板设计。“短时平均幅度差”显示语音信号的平均幅度差函数, 检测得到的浊音周期在“基音周期”表格中显示出来。

3. 倒谱分析实验的功能实现。

倒谱定义为信号短时振幅谱的对数傅里叶反变换, 倒谱域中基音信息与声道信息相对分离, 采取简单的倒滤波方法可以分离并恢复出声门脉冲激励和声道响应, 并求出基音周期和共振峰。图5为倒谱法求语音的共振峰的前面板。

4. 频谱分析实验的功能实现。

调用Matlab中的谱分析函数模块, 先对语音信号进行分帧, 再将分帧后的语音信号数据转换为波形数据类型, 采样率为8kHz。频谱子VI前面板, 如图6所示。

利用谱分析中的“STFT时频图”模块, 可对分帧语音信号进行联合时频分析, 通过改变前面板中频域窗长, 可实现宽带和窄带语谱图的仿真实现。

5. 孤立词识别实验的功能实现。

基于HMM模型的孤立词识别原理框图, 如图7所示。语音识别系统底层由语音输入模块、预处理模块、特征提取模块、识别模块以及训练模块等5部分组成。

在语音采集过程中, 以0~9这10个数字作为实验对象, 每个语音有200份样本, 分别来自10位男生和10位女生, 每个数字每人采集10份, 共得到2000个语音样本。同样将实验数据分为三组:第一组用于训练, 选择8位女生和7位男生作为参与训练的人, 每人每个数字取2份, 共计300份语音样本;第二组用于检测系统的识别率, 由15个参与训练的人的剩下的语音构成;第三组用于检测系统的识别率, 由未参与训练的5个人的语音组成。

实验中点击系统“语音识别”的二级菜单中的“输入语音”菜单, 可以通过麦克风录音, 如数字“0”;然后完成语音信号的分帧和端点检测等“预处理”;“特征提取”模块可完成对语音信号特征参数的提取, 本实验提取的是12维MFCC及其12维一阶导数, 共24维, 这样可以反映语音信号的静态和动态特征;“识别”模块完成对所录入的语音和模板库内的语音的匹配, 选择累计概率最大的一个作为识别结果。对录入数字“0”的识别结果的输出界面如图8所示。

重复上述过程, 可完成数字语音0~9的孤立词识别。通过实验分析, 可进一步完成系统对参与训练人的语音识别与第三组中未参与训练人的识别率的统计结果比较。

本文设计完成了一种运用Matlab图形化编程环境进行语音信号处理的虚拟实验平台, 能很好地结合学生的书本理论, 方便地完成对语音信号的采集、预处理、语音分析和语音处理等功能及其结果显示。系统具有用户界面简洁和易于扩展实验功能的特点。

摘要:针对语音信号分析与处理的特点, 利用Matlab开发了通用语音信号处理虚拟实验平台, 可完成语音信号的采集、预处理、语音分析和语音处理等功能及其结果显示。阐述了系统总体设计思路, 给出了多种语音分析和处理的功能实现举例。整个系统界面友好, 且具有易扩展的特点。实践证明, 该平台可使学生更好地理解和掌握课程的基本理论, 有利于提高学生的分析问题能力和综合实践能力, 培养学生创新意识。

关键词:语音处理,虚拟实验,Matlab,图形用户界面GUI

参考文献

[1]赵力.语音信号处理 (第2版) [M].北京:机械工业出版社, 2009.

[2]张志涌, 杨祖樱.MATLAB教程[M].北京:北京航空航天大学版社, 2010.

虚拟信号发生器 第6篇

一、平台构架

虚拟教学仿真平台必须具有可视化的特点, 操作方便、直观, 学生通过平台界面进入相应的环境后, 可以直接进入教学实验界面项目, 设置和调整相应的仿真参数, 进行教学和实验内容的理解、验证。或者任意进入感兴趣的实验项目, 通过对仿真教学实验结果进行比较分析, 自觉发现自己学习中存在的问题, 提高独立思考问题、分析问题的能力。整个平台系统按照教学内容包括:信号基础、信号分析、信号变换、系统分析、系统响应、系统设计、通信系统和DSP应用等几个环节, 将《信号与系统》与实际应用以及后续的教学课程有机结合起来。

仿真平台的设计内容:本仿真系统结合信号系统课程的重点和难点, 由若干个子系统构成组成, 每个子系统由若干个实验构成, 效果形象逼真, 纯软件的操作环境, 使师生在课堂上可以使用该软件模拟实际信号和系统, 完成课程教学和知识拓展的相关要求, 并可以在课堂教学中动态演示, 丰富教学内容, 强化学生对重点难点的理解。

每个可以仿真的内容都综合了目前国内外的教材, 概括了所有的知识点。例如, 信号基础主要是产生模拟和离散的方波、正弦波、指数信号等各种基本信号以及这些信号的基本运算, 包括微分、差分、积分和卷积等, 这些信号的基本参数可以根据需要进行调节, 也可以根据需要向虚拟平台内添加合适的信号, 保证虚拟平台的灵活性。该虚拟平台系统中信号基础的主界面如图2所示。在该界面中, 只需点击相应的按键, 在弹出的实验界面中输入相应参数, 系统平台就会执行后台M文件, 显示实验运行结果数据和图形。当然, 该平台对学生理论基础也提出了很高要求, 对现象的原理性分析和总结可以达到提高学生分析理解和总结问题的能力。例如, 对周期锯齿波信号的分解与合成 (如图3所示) , 需要学生掌握周期信号分解与合成的原理, 理解各次谐波分量的幅度和频率之间的关系, 理解周期信号频谱的特点, 理解合成信号的吉布斯现象产生的原因等。

该平台系统通过友好的人机交互界面就可以操作软件, 演示《信号与系统》课程的重点和难点, 以图形的形式形象、生动地重现各种现象, 便于学生理解, 同时增强了学生的学习兴趣和积极主动性, 让学生把精力重点放在理论内容的理解上。

二、结论

论文主要介绍了《信号与系统》虚拟仿真平台的设计思想和方法, 通过具体示例说明系统的实现过程。该系统可以使学生由浅入深地进行动态交互式学习, 克服了实际试验仪器的部分缺点, 可以有效地提高教学质量, 加深学生对各知识点的理解。

摘要:本文介绍了基于MATLAB的《信号与系统》课程的虚拟教学仿真平台。该平台包含了《信号与系统》教学中的重点和难点内容, 通过图形化方式和交互式平台, 直观显示教学实验内容和结果, 帮助学生理解《信号与系统》的原理和分析方法, 提高学生学习该课程的兴趣和学习效果。

关键词:虚拟教学仿真平台,信号与系统,Matlab

参考文献

[1]余志荣, 杨莉.基于NI-VISA与LabVIEW的USB接口应用设计[J].单片机与嵌入式系统应用, 2007, (1) :66-69.

[2]吕治国, 丁国强.信号与系统课程实验系统设计[J].实验科学与技术, 2010, (1) :51-53.

[3]游春霞, 魏明生“.信号与系统”虚拟实验软件平台设计[J].江苏教育学院学报 (自然科学) , 2012, 28 (9) :34-37.

[4]金波.基于MATALB的“信号与系统”实验演示系统[J].实验技术与管理, 2010, (27) .

数字信号处理课程虚拟实验室设计 第7篇

数字信号处理(DSP)技术在近30年来得到飞速发展,它在语音、雷达、声纳、图像、通信、遥感遥测、航空航天等众多领域都获得极其广泛的应用。为适应这一发展对人才的需求,许多高校都开设了数字信号处理课程,并且已由过去的面向电子信息类专业逐渐扩展到面向电气工程、仪器仪表、机械制造及生物医学等更多的专业领域。数字信号处理是一门涉及众多学科又应用于众多领域的学科,它既有较为完整的理论体系,又具有实际的应用价值,因此要建设好数字信号处理课程,不仅要有完善的课堂教学,还要强调课外的实验支持。

在我们开设的数字信号处理课程中,除了包含信号与系统的基本知识、DSP构建、计算机算法、有限字长和定点处理器、快速傅里叶变换的应用以及实时多媒体和通讯应用等教学内容,还建立了一个有力的硬件实验支撑。在课程的最后,学生们需要利用DSP开发平台实现对语音信号的采样、滤波、频谱分析及D/A转换,通过对语音信号进行较为完整的处理来加深对课内教学内容的理解。此外,通过使用DSP内部并行的执行单元、硬件循环、以寻址为模,多重DMA和片内存储器,学生将对DSP处理器有深刻的认识,加深对DSP算法的理解,探索DSP处理器相比通用处理器在构建应用系统上的优势。

数字信号处理实验包括八套实验设备,每套实验设备包含两种不同的TI公司DSP开发系统、信号发生器及示波器。DSP开发系统不仅包含DSP处理器,还包括A/D、D/A、SDRAM、FLASH、扬声器等外围设备,可以开展数据采集、滤波、频谱分析等实验。学生以小组的方式开展工作,每个小组三名成员,要在两周内完成每一个实验所要求完成的任务。为了使学生灵活安排实验时间、充分利用实验资源,我们构建了一个小型的“虚拟实验室”,使学生能够通过网络直接使用硬件设备和软件,方便地学习研究DSP的应用。我们采取开放的实验室使用政策,学生们可以24小时以他们方便的途径随意使用实验室,对于在线的学生,采用了类似的“提问-回答”的会议方式,在这个会议上助教回答学生的提问,提供实验指导。此外所有的讲稿笔记、家庭作业和其他分配任务,包括实验室考试都会在网上发送而且也可以在网上上交和批改。

2 虚拟实验室构建

实验室共有12套实验设备,每套设备包括一台Tektronix AFG310函数发生器,一台Tektronix TDS3012B示波器,一个TI的DSK5510的工具包和一个DSK6713工具包。此外,软件工具包括由项目管理人,用户图形界面,编译器,连接器,调试器,源编码浏览器和编辑工具(如TI的Codecomposer)组成的IDE。NI Labview是一个用模块代替代码行来创造应用的图形语言。它用于远程访问来同时和AFG310函数发生器和TDS3012数字滤波器进行通信。此外,执行实验还需要一些附件如扬声器,耳机和网络摄影。虚拟实验室的目标是创造一个和实物实验室尽可能接近的环境,它必须能远程控制,所有的软件硬件工具都能够实时使用,这样在线的学生就可以实现远程连接到实验室并且方便地使用工具和设备。图1(a)展示了虚拟实验室的安装连接。在实验室内,主控计算机通过各种接口和协议与硬件设备的控制端口相连,实现对各种设备的操作,如通过HTTP接口控制TDS3012B示波器,通过GPIB接口控制AFG310函数发生器,通过USB接口控制DSK5510及DSK6713开发平台。这些设备的输入或输出通道通过一个称作“开关矩阵”的设备连接在一起,开关矩阵由主控计算机控制,可以灵活组合成不同的实验平台,其结构如图1(b)所示。学生终端经校园网连接到实验室主控计算机,通过LabviewTM图形用户语言来实现对实验设备的远程操控。

实验设备及开关矩阵的电源都由可远程控制的电源管理单元来供电,在线用户能够独立启动函数发生器、示波器、主控计算机、TDSK5510工具包和DSK6713工具包。实验室使用的是来自Synaccess的NP08,它拥有八个电源控制端口,一个独立的电源控制单元就可以使用八个实验设备。NP08提供三个用户权限级别:

管理员级别:管理系统配置和无限制有权使用所有电源引口和所有串行端口。

用户级别:允许每个用户保留和管理他自己的端口,以及改变大多数系统配置。

匿名级别(客人):用户可以观看所有设置和操作没有限制的电源引口和串行控制台端口。

标记不同级别的权限是非常有用的,例如实验室助教会授予管理员权限以便于控制所有可用的实验台,在线学生会被授予一个用户名/口令和指定的权限访问他自己的实验台。用户可以利用telnet命令发送指令到控制单元,用来重启用户设备、永久打开/关闭用户电源等。此外,系统会周期性地利用Ping指令查询用户的设备,如果用户设备停止应答Ping的请求,该设备将会重启。为了确保电源管理单元的正常工作,用户可以通过网络摄影看见实验台来确保设备正常工作。要注意的是视频只是作为反馈而不是展示工具。视频不是用来读仪器的显示,用户可以使用LabviewTM图形用户界面来显示和控制仪器。

3 在线实验

数字信号处理课程虚拟实验室目前开设了两个实验,一个是语音信号的采集与滤波,另一个是双音多频(DTMF)信号的生成。这两个实验分别基于DSK6713开发平台与DSK5510开发平台进行,实验设备连接如图2所示。

在语音信号处理实验中,主控计算机中保存的语音或音乐信号(已叠加噪声)经扬声器输出端(LINE OUT)进入DSK6713开发板的A/D模块,经采集后得到的数字信号传给TMS320C6713处理器,在那进行低通滤波,之后经DSK6713的D/A模块转变为模拟信号,经主控计算机的麦克风输入端(LINE IN)传入主控计算机。学生可在远程终端上选择源信号,并且可以在远程终端上播放源信号及处理后的结果以进行对比。在第二个实验中,由DSK5510开发板的TMS320C5510处理器根据主控计算机设定的参数生成DTMF信号(多个单频信号的叠加),经开发板的D/A模块转变为模拟信号后送至TDS32012B示波器进行信号时域波形显示及FFT频谱显示。学生可以通过LabviewTM界面操控示波器并看到处理结果。这两个实验都使用TI公司的Code Compser软件进行开发。对虚拟实验室进行测评,结果表明实验步骤简洁清晰,实验所得结果和在实验室中实际进行操作的结果相同。音频流的声音质量也得到所有实验者的满意,远程软件工具Code Composer Studio运行也十分流畅。

4 结论

我们采用了一个简单有效的方法来远程访问硬件和软件,并构建了一个数字信号处理课程虚拟实验室。在线的学生可以通过虚拟实验室开展实时硬件实验,并得到和在实际实验室相同的准确的结果。由此可以采取开放的实验室管理与使用政策,方便学生学习研究DSP的应用。

摘要:本文设计了一个基于校园网的数字信号处理课程虚拟实验室,该实验室可以通过远程控制为各实验设备单独供电,并通过开关矩阵灵活组合连接实验设备。运行表明虚拟实验室构造简便,结果正确,可以为学生提供一个方便的开放实验室。

关键词:数字信号处理,虚拟实验室

参考文献

[1]缪晓芸,吴正明.虚拟实验室的研究与探讨[J].福建电脑,2009,(11):33-35.

[2]陈学军.基于虚拟仪器的网络实验室的研究及实现[J].莆田学院学报,2009,(10):28-30.

[3]洪波.基于Web的高校开放式实验教学系统的设计[D].贵州大学硕士学位论文,2007.

上一篇:命题特点下一篇:弊病及对策