基于labview的虚拟示波器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
燕山大学课程设计报告
目录
第一章引言
1.1 LabVIEW软件简介 (1)
第二章虚拟示波器的设计思路及方案的实现
2.1 设计思路 (2)
2.2 前面板的设计 (3)
2.3 通道的控制的设计 (4)
2.4 波形显示控制的设计 (6)
2.5 输入信号测量值的显示设计 (7)
2.6 波形叠加部分的设计 (8)
2.7 总体程序框图 (10)
第三章设计总结
参考文献
第一章引言
1.1 LabVIEW软件简介
LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。
LabVIEW 集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。
它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。
这是一个功能强大且灵活的软件。
利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。
传统文本编程语言根据指令的先后顺序决定程序执行顺序,但LabVIEW 则采用数据流编程方式,程序框图中节点之间的数据
流向决定了VI 及函数的执行顺序。
LabVIEW 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户
界面。
用户界面在LabVIEW 中被称为前面板。
使用图标和连线,
可以通过编程对前面板上的对象进行控制。
这就是图形化源代码,又称G 代码。
LabVIEW 的图形化源代码在某种程度上类似于流程
图,因此又被称作程序框图。
第二章虚拟示波器的设计思路及方案的实现
2.1 设计思路
本设计的想法是尽量与现实中的面板相一致,实现示波器最基本的显示和调节功能。
所以本设计我设计了包含CH1和CH2的双通道示波器,即双踪示波器。
设计时考虑的是分几个部分:
1)CH1和CH2通道设计及选择。
设置两个开关控制CH1和CH2选通状况,开即显示波形,关即为初始状态,同时选择了开就在波形图上同时显示两个波形。
2)波形产生。
由于没有外界信号输入设备,所以不能用外部数据采集的方法输入信号波形,那么自己设计一个建议信号发生器,使两个通道都能实现基本模拟信号正弦波、三角波、方波、锯齿波的输入。
3)波形显示。
采用波形图表控件。
4)波形控制部分。
包括CH1信号幅度调节和幅度偏移、CH2信号幅度调节和幅度偏移、同时开的时候两个信号叠加开关。
5)停止示波器。
通过while循环的停止按钮设置示波器停止工作。
6)波形测量。
通过不同的控件实现波形的频率以及幅值的测量。
2.2 前面板的设计
前面板的用波形图标控件来显示波形,CH1 CH2开关控制两个通道是否打开,枚举控件控制输出波形的类型,四个旋钮控制两个波形的幅度及相位,四个数值输出控件分别输出幅值电压和频率,一个停止按钮,信号叠加按钮控制两个波形的叠加。
根据设计思路,设计成的前面板如图1所示
图1虚拟示波器前面板
2.3 通道的控制及实现
1)通道CH1和CH2选择即波形产生。
在程序框图上创建两个条件结构。
把CH1和CH2的开关控制(布尔开关)分别接到这两个条件结构的条件输入端,然后在每个“真”条件下,并且通过再添加条件结构,在这个子条件结构里面,利用基本函数发生器创建波形产生模块,用文本下拉列表控制条件输入端,将正弦波、三角波、方波、锯齿波的固定值0、1、2、3设为四个分支,并在分置里面选择产生相应的波形,这样就产生了大条件结构的“真”
操作,也即在CH1或CH2通道开的情况下,通过文本下拉列表控制波形产生。
然后将外部条件结构的输出隧道在“假”的条件下,设为“未连接时使用默认”并且处理“假”分支,这样,当通道选择开关“关”时就不输出波形。
图2 通道1打开图3两通道同时打开
图4控制波形生成的程序框图
2.4波形显示控制的设计与实现。
这部分是控制波形在波形图上更好的显示出来。
调节波形的幅度单位,调节波形的相位偏移,控制两个波形是否叠加。
调节这些都是为了让波形以最直观、最清楚的方式显示在波形图上。
通过公式子VI的功能改变输出电平和幅度偏移幅度单位调节公式为X1*X2幅度偏移公式为X1+X2;通过获取波形成分;显示波形的频率和幅值电压。
通过创建一个子条件结构实现波形叠加。
停止测量部分。
通过while循环的STOP按钮停止测量。
前面板显示如图6,程序框图设计如图5:
图5 波形控制及测量程序框图
2.5输入信号测量值的显示设计
通过“获取单频信息”子VI获取波形频率;通过“幅值和电平测量”子VI获取波形幅值电压,通过数值显示控件在前面板分别显示两个通道形成波形的幅值电压以及频率。
程序框图如图5所示,设计的前面板如图6所示:
图6 波形控制以及显示部分前面板
2.6波形叠加部分的设计
当信号叠加布尔控件为真时两条波通过公式X1+X2输出一个一维数组通过波形图标控件输出叠加后的波形,当信号叠加为假时两个信号通过二维数组在波形图表上显示出两条不同的波形,程序框图及前面板分别显示下:
图7 信号叠加为真时程序框图
图8 信号叠加为假时程序框图
图9波形叠加效果图
图10 双通道打开未叠加
2.7总体程序框图
图11 总体程序框图
第三章设计总结
首先我看了几本介绍虚拟仪器和LabVIEW方面的书籍,随即对这个软件强大的仿真功能产生了极大的兴趣,并且自己动手做了一些简单的仿真程序,比如利用调用for循环和移位寄存器计算数学递归公式、产生数字波形、建立数学计算的子VI等。
做的程序渐渐从简单到难,学的东西也越来越多。
直到这个设计完毕,除了这个设计里面的知识外,我还了解了公式节点的用法;
滤波器的用法;图形编辑器的用法和子VI的建立过程及调用;掌握了while循环、for循环、条件结构循环的用法;。
我深深地感觉到学了LabVIEW的知识之后很充实。
也为自己能做出这个“不简单”的虚拟示波器而感到骄傲。
在此过程中,板上的同学给了我不少帮助,比如他们把借的的资料给我看,还有一起动脑动手实现了某个困难的操作,这让我深深体会到团队协作的重要性和同学之间友谊的可贵。
特别感谢赵勇老师对我们的帮助与独立训练让我们对软件的掌握有了很大幅度的提升,同时也感谢学校给我们这么好的训练机会。
参考文献
[1] 杨乐平,李海涛,杨磊编著.LabVIEW程序设计与应用(第
二版).北京:电子工业出版社,2007
[2] 刘君华主编.基于LabVIEW的虚拟仪器设计.北京:电子
工业出版社,2003
[3] 黄松林,吴静编著.虚拟仪器设计教程.北京:清华大学
出版社,2008
[4] 陆绮荣编著.基于虚拟仪器技术个人实验室的构建.北
京:电子工业出版社。