当前位置:文档之家› 利用Labview实现任意波形发生器的设计

利用Labview实现任意波形发生器的设计

沈阳理工大学课程设计专用纸No I
1 引言
波形发生器是一种常用的信号源,广泛应用于通信、雷达、测控、电子对抗以及现代化仪器仪表等领域,是一种为电子测量工作提供符合严格技术要求的电信号设备。

随着现代电子技术的飞速发展,现代电子测量工作对波形发生器的性能提出了更高的要求,不仅要求能产生正弦波、方波等标准波形,还能根据需要产生任意波形,且操作方便,输出波形质量好,输出频率范围宽,输出频率稳定度、准确度及分辨率高,频率转换速度快且频率转换时输出波形相位连续等。

可见,为适应现代电子技术的不断发展和市场需求,研究制作高性能的任意波形发生器十分有必要,而且意义重大。

波形发生器的核心技术是频率合成技术,主要方法有:直接模拟频率合成、锁相环频率合成(PLL),直接数字合成技术(DDS)。

传统的波形发生器一般基于模拟技术。

它首先生成一定频率的正弦信号,然后再对这个正弦信号进行处理,从而输出其他波形信号。

早期的信号发生器大都采用谐振法,后来出现采用锁相环等频率合成技术的波形发生器。

但基于模拟技术的传统波形发生器能生成的信号类型比较有限,一般只能生成正弦波、方波、三角波等少数的规则波形信号。

随着待测设备的种类越来越丰富,测试用的激励信号也越来越复杂,传统波形发生器已经不能满足这些测试需要,任意波形发生器(AWG)就是在这种情况下,为满足众多领域对于复杂的、可由用户自定义波形的测试信号的日益增长的需要而诞生的。

随着微处理器性能的提高,出现了由微处理器、D/A以及相关硬件、软件构成的波形发生器。

它扩展了波形发生器的功能,产生的波形也比以往复杂。

实质上它采用了软件控制,利用微处理器控制D/A,就可以得到各种简单波形。

但由于微处理器的速度限制,这种方式的波形发生器输出频率较低。

目前的任意波形发生器普遍采用DDS(直接数字频率合成)技术。

基于DDS技术的任意波形发生器(AWG)利用高速存储器作为查找表,通过高速D/A转换器对存储器的波形进行合成。

它不仅可以产生正弦波、方波、三角波和锯齿波等规则波形,而且还可以通过上位机编辑,产生真正意义上的任意波形。

(2)数据流驱动
宏观上讲,LabVIEW的运行机制已不再是传统上的冯·诺伊曼式计算机体系结构的执行方式了。

传统计算机语言(如C语言)中的顺序执行结构在LabVIEW中被并行机制所代替。

本质上讲它是一种带有图形控制流结构的数据流模式,程序中的每一个函数节点只有在获得它的全部输入数据后才能够被执行。

既然LabVIEW程序是数据流驱动的,数据流程序设计规定,一个目标只有当它的所有输入有效时才能够被执行;而目标的输出只有当它的功能完全时才是有效的。

于是LabVIEW中被连接的函数节点之间的数据流控制着程序的执行次序,而不像文本程序那样受到行顺序执行的约束。

我们可以通过相互连接函数节点简洁高效地开发应用程序,还可以有多个数据通道同步运行,即所谓的多线程。

2.2 利用Labview编程完成习题设计
习题2.1写一个类正弦波发生器,要求频率和幅度可调
图1 2.1前面板图
图2 2.1程序面板图
习题3,1新建一个VI,进行如下练习:任意放置几个控件在前面板,改变它们的位置、名称、大小、颜色等等。

在VI前面板和后面板之间进行切换并排排列前面板和后面板窗口
图3 3.1前后面板对照图
习题3.2编写一个VI求三个数的平均值,如右图所示。

要求对三个输入控件等间隔并右对齐,对应的程序框图控件对象也要求如此对齐。

添加注释分别用普通方式和高亮方式运行程序,体会数据流向。

单步执行一遍
图4 3.2前面板图
图5 3.2程序面板图
习题4.1写一个VI判断两个数的大小,如右图所示:当A>B时,指示灯亮
图6 4.1前面板图
图7 4.1程序面板图
习题4.2写一个VI获取当前系统时间,并将其转换为字符串和浮点数。

这在实际编程中会经常遇到
图8 4.2前面板图
图9 4.2程序面板图
习题4.3写一个温度监测器,如右图所示,当温度超过报警上限,而且开启报警时,报警灯点亮。

温度值可以由随即数发生器产生。

图10 4.3前面板图
图11 4.3程序面板图
习题4.5给定任意x, 求如下表达式的值
图12 4.5前面板图图13 4.5程序面板图
x e x
x y
cos 5+
=
习题5.1利用顺序结构和timing面板下的tick count VI,计算for循环产生一个长度为20000点的随机波形所需的时间
图14 5.1前面板图
图15 5.1程序面板图
习题5.2为第4章习题4添加一个While循环和定时器,实现连续的温度采集监测
图16 5.2前面板图
图17 5.2程序面板图
习题5.3计算学生三门课(语文,数学,英语)的平均分,并根据平均分划分成绩等级。

要求输出等级A,B,C,D,E。

90分以上为A,80~89为B,70~79为C,60~69为D,60分以下为E
图18 5.3前面板图
图19 5.3程序面板图
习题6.1为第5章的习题2连续温度采集监测添加报警信息,如下图所示,当报警发生时输出报警信息,例如“温度超限!当前温度78.23℃”,正常情况下输出空字符串。

图20 6.1前面板图
图21 6.1程序面板图
习题6.2将一些字符串和数值转换成一个新的字符串输出的字符串是GPIB命令字符串,它可以用来进行串行通信
图22 6.2前面板图
图23 6.2程序面板图
习题6.3用FOR循环创建一个数组,并用图形显示输出的数组。

图24 6.3前面板图
图25 6.3程序面板图
习题6.4利用簇模拟汽车控制,如右图所示,控制面板可以对显示面板中的参量进行控制。

油门控制转速,转速=油门*100,档位控制时速,时速=档位*40,油量随VI运行时间减少
图26 6.4前面板图
图27 6.4程序面板图
习题7.1利用随机数发生器仿真一个0到5V的采样信号,每200ms采一个点,利用实时趋势曲线实时显示采样结果。

图28 7.1前面板图
图29 7.1程序面板图
习题7.2在习题1的基础上再增加1路电压信号采集,此路电压信号的范围为5到10V
图30 7.2前面板图
图31 7.2程序面板图
习题7.3利用随机数发生器仿真一个0到5V的采样信号,每200ms采一个点,共采集50个点,采集完后一次性显示在Waveform Graph上
图32 7.3前面板图
图33 7.3程序面板图
习题7.4在习题3的基础上再增加1路电压信号采集,此路电压信号的范围为5到10V,采样间隔是50ms,共采100个点。

采样完成后,将两路采样信号显示在同一个Waveform Graph中
图34 7.4前面板图
图35 7.4程序面板图
3利用Labview实现任意波形信号发生器的设计
3.1任意波形信号发生器的基本原理
任意信号发生器用来产生频率为20Hz~200kHz的正弦信号(低频)。

除具有电压输出外,有的还有功率输出。

所以用途十分广泛,可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。

另外,在校准电子电压表时,它可提供交流信号电压。

低频信号发生器的原理:系统包括主振级、主振输出调节电位器、电压放大器、输出衰减器、功率放大器、阻抗变换器(输出变压器)和指示电压表。

主振级产生低频正弦振荡信号,经电压放大器放大,达到电压输出幅度的要求,经输出衰减器可直接输出电压,用主振输出调节电位器调节输出电压的大小。

3.2xxxxxxxx(课题名)的编程设计及实现
3.2.1编程设计
图36 前面板设计图
前面板中细分的话可以按照一般波形输出和公式波形输出,一般波形包括正弦波,锯齿波、方波,公式波形指的是在公式栏中输入公式能画出公式的波形。

图37 程序设计图3.3运行结果及分析
图37 方波输出图
图38 正弦波输出图图39 锯齿波输出图
图40 公式波形输出。

相关主题