虚拟示波器的设计报告_第1页
虚拟示波器的设计报告_第2页
虚拟示波器的设计报告_第3页
虚拟示波器的设计报告_第4页
虚拟示波器的设计报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于基于 LabVIEW 的虚拟示波器的设计的虚拟示波器的设计 The Design of Oscillograph 1 1 设计目的与内容设计目的与内容 1 掌握利用 A D 转换和计算机资源实现示波器的设计方法 2 设计虚拟示波器 3 建立 NI DAQmx 仿真设备 选择 E 系列中的 NI PCI 6071E 数据采集卡数据采集卡的仿真模块 通过 DAQmx 物理通道识别 产生模拟信号 然后基于 LabVIEW 开发平台设计实现虚拟 示波器 基本可以实现仪器的性能与可靠性 可以方便的对其编程 实现对数据的采集 实时显示 数字滤波 截波显示 波形存储 波形回显 频谱分析等多种功能 2 2 虚拟示波器的软件设计虚拟示波器的软件设计 虚拟仪器的软件设计由两部分组成 前面板和流程图 在前面板 输入用输入控件 Control 来实现 程序运行的结果由输出控件 Indicator 来完成 流程图是完成程序功能的 图形化源代码 通过它对信号数据的输入和输出进行指定 完成对信号采集及分析处理功 能的控制 2 1虚拟示波器的原理及功能虚拟示波器的原理及功能 虚拟示波器是在传统示波器体系结构的基础上 借鉴其功能原理设计的 基本原理为 硬件上利用采集卡采集信号 软件上利用 NI 提供的 DAQmx READ 采集信号 然后通过 波形图 进行实时显示 这就实现了一个最基本的示波器 信号显示后又利用 写入测 量文件 将波形保存为 LVM 文件 这就实现了基本的 存储 功能 反之通过 读取测 量文件 可以将 LVM 读取显示 从而完成 回显 功能 由于在硬件上是以 PC 机以及采 集卡为基础的 所以本示波器在采样极限速率 带宽 分辨力等参数上受到限制 而程序 响应时间上则依赖于 PC 的配置以及程序的执行效率 本次设计的虚拟示波器所包含的功能主要有以下几个方面 实时显示实时显示 通过采集卡采集信号并能对输入信号实时显示在 PC 机终端上 数字滤波数字滤波 采用数字 IIR 滤波器对信号进行滤波处理并实时显示 同时可以任意设置 滤波器的最佳逼近函数类型 滤波器类型 阶次 上下截止频率等参数 截波显示截波显示 即可满足波形的瞬态显示 同时也可以将瞬态波形进行保存 波形存储波形存储 可随时将原始信号或处理后信号以 LabVIEW 特有的 LVM 文件格式存储在 本地硬盘上 便于日后分析或处理 其中瞬态信号在截波后以 BMP 图片格式存储在本地 硬盘上供日后查看以及分析 波形回显波形回显 随时将存储的 LVM 格式波形文件重新读取然后显示在 PC 机端 频谱分析频谱分析 对滤波后信号分别进行幅频相应分析以及相频响应分析并同时采取波形与 表格方式实时显示 2 2程序前面板设计程序前面板设计 虚拟示波器的控制界面如下图所示 图 1 虚拟数字示波器的控制界面 其中左边为滤波器设置 左中为可选 IIR 滤波器参数设置 左下为滤波器的相关信息 显示 正中为显示区域 这里用到了 容器 里的 选项卡控件 最上面为各种显示界 面的切换按钮 右下分别有物理通道的选择 时间 幅度轴控制 采样模式选择 采样速 率 采样点数的设置 文件保存选择按钮以及停止按钮 前面板中的滤波器设置 可选 IIR 滤波器参数设置和滤波器信息显示是三个簇组件 簇是 LabVIEW 中比较独特的一个概念 但实际上它就对应于 C 语言等文本编程语言中的 结构体变量 它能够包含任意数目任意类型的元素 包括数组和簇 很多情况下当显示控 件繁多而又单一的时候 若用簇来排版界面而用数组来编程会是程序非常简洁漂亮 在本 次前面板的设计中 就利用了簇控件 是前面板更简洁漂亮 2 3虚拟示波器的程序框图设计虚拟示波器的程序框图设计 程序由一个大的 while 循环构成 主要包括 7 个主要的部分 分别为 通道选择 采样速率 模式 点数等参数设置部分 数据采集模块 数字滤波器设置模块 波形显示 滤波以及截波等部分 时间以及幅度控制部分 波形保存部分 波形回显部分 幅频响应以及相频响应部分 下面介绍各部分的框图设计 2 3 1 通道选择 采样速率 模式 点数等参数设置部分通道选择 采样速率 模式 点数等参数设置部分 图 2 采样参数设置 2 3 2 数据采集模块数据采集模块 数据采集模块是动态测试中的重要部分 可以进行采集方式相关参数的设置 它直接 影响到后面数分析的结果及其他功能的实现 该模块工作状态的好快直接影响到整个系统 工作的正常与否 主要完成数据采集的控制 通道控制和时基控制等 LABVIEW 集成了 功能强大的数据采集函数库 Data Acquisition 在本模块选用 DAQmx Data Acquisition 函数 库来实现数据采集程序的设计 我们也可以通过 DAQ Assistant 函数来实现对采集卡输入输出类型 采集数据类型以 及聚集所用通道选择等进行设置 也可以通过 DAQmx Task Name Constant 函数和 DAQmx Global Channel Constant 函数来实现 通过 DAQmx Create Virtual Channel Vi 创建虚拟物理 通道 通过 DAQmx Read villtllDAQmx write Vi 来执行数据的读写操作 通过 DAQmx Start Vi 和 DAQmx Stop Vi 执行数据采集的开始与结束 通过 DAQmx Advanced Task Options 函数库中的 DAQmx Configure Input Buffer Vi 和 DAQmx Configure Output Buffer Vi 来配置采集过程中计算机缓存 对于模拟信号的输入部分 设计的流程图如图 3 所示 数据采集模块如图 4 所示 图 3 数据采集模块流程图 图 4 数据采集模块 2 3 3 数字滤波器设置模块数字滤波器设置模块 在测试领域中 信号的频域处理主要指滤波 即把信号中感兴趣的部分 有效信号 提 取出来 抑制 削弱或滤除 不感兴趣的部分 干扰或噪声 的一种处理 滤波器分为模拟滤波 器和数字滤波器 分别处理模拟信号和数字信号 本系统使用数字滤波器 数字滤波器的 基本工作原理是利用离散系统特性去改变输入数字信号的波形或频谱 使有用信号频率分 量通过 抑制无用信号分量输出 数字滤波的优点是 数字滤波只是一个计算过程 无需硬件 因此可靠性高 并且不存在阻抗匹配问题 尤其是对频率很高或很低的信号进行滤波 这是模拟滤波器所不能比的 数字滤波是用软件算法实现的 因此 在多个输入通道的应用场合可以避免使用多 个硬件滤波器 从而降低硬件成本 只要适当改变软件滤波的滤波程序或运算参数 就能方便地改变滤波特性 这对于 抑制低频干扰 脉冲干扰 随机噪声等特别有效 本设计中的 IIR 滤波器设置模块如图 5 所示 图 5 IIR 滤波器设置 2 3 4 波形显示 滤波以及截波等部分波形显示 滤波以及截波等部分 下图包含波形显示 滤波以及截波部分 图 6 波形显示 滤波以及截波 2 3 5 时间以及幅度控制部分时间以及幅度控制部分 下图为通过幅度以及时间转轴控制显示的时间以及幅度 图 7 时间以及幅度控制 2 3 6 波形保存部分波形保存部分 这里用到一个 Case 结构 分别选择保存类型 信号显示后利用 写入测量文件 将波 形保存为 LVM 文件 图 8 波形保存 图 9 生成 BMP 文件 此模块用到了 下拉列表常量 保存 按钮的局部变量 写入测量文件 控件 提取截波波形属性节点 写入 BMP 文件 控件 error out 簇 这里用到的 error out 簇和 error in 簇是 LabVIEW 编程中经常遇到的两个预定义簇 在 LabVIEW 编写大型项目时经常会调用子 VI 因此大型项目表现为一种层状结构 为了将 底层发生的错误信息原封不动地传递到顶层 VI LabVIEW 利用 error in 和 error out 这两 个预定义簇作为传递错误信息的载体 下图为 error out 簇的格式 Error out 簇中包含一个 status 布尔量代表是否有错 code 代表错误带代码 source 包 含了错误的具体信息 图 10 error out 簇的格式 2 3 7 波形回显部分波形回显部分 图 11 波形回显 这个条件结构中用到按钮触发 实质是一个独立的程序部分 读取已保存的 lvm 文件 2 3 8 幅频响应以及相频响应部分幅频响应以及相频响应部分 幅频响应实质是读取的 IIR 的响应数据 另外频率轴根据需要由采样速率控制 采样 速率除以 2 作为频率轴的最大值 相频响应同理 图 12 幅频响应和相频响应 2 4总的程序框图总的程序框图 图 13 虚拟示波器的后面板设计 3 3 数据采集及示波器的实现数据采集及示波器的实现 本文所设计虚拟示波器 通过 NI PCI 6071E 数据采集卡采集数据 由于硬件上无法满 足要求 在这里采用 NI DAQmx 仿真设备中的 NI PCI 6071E 数据采集卡的仿真模块得到 示波器的输入信号 3 1 数据采集 数据采集 DAQ 设置 设置 下图为 NI PCI 6071E 数据采集卡的仿真模块的设置 双击 Measurement Automation 图标 打开 MAX 展开设备和接口 然后展开 NI DAQmx 设备 点击右键创建新 NI DAQmx 设备 然后点击 NI DAQmx 仿真设备 打开 NI DAQ 仿真设备选项卡 选择 NI PCI 6071E 如图 15 所示 同时在示波器的前面板中 可以得到 Dev1 物理通道 如图 16 所示 图 14 NI DAQmx 仿真设备 图 15 NI PCI 6071E 数据卡的仿真模块的建立 图 16 前面板的物理通道选择 3 2 虚拟示波器的实现虚拟示波器的实现 通过 NI PCI 6071E 数据采集卡的仿真模块产生的物理通道得到输入信号 再设置 IIR 示波器各项参数 得到的示波器波形显示及其他响应如下 1 得到的原始信号波形 如图 17 图 17 原始信号波形显示 2 滤波后的信号 图 18 滤波后的信号 3 截波波形显示 截取经过滤波器后的一部分静止 瞬态 波形 图 19 截波波形显示 4 幅频响应 滤波后进行的幅频分析 如图 20 图 20 幅频分析显示 5 相频响应 滤波后进行的相频分析 如图 21 所示 图 21 相频响应显示 6 采样模式选择和保存操作 以上显示的波形是在有限采样模式情况下采集的 而 保存文件操作用来将原始信号保存到 LVM 文件中 从而可以在波形回显中显示 保存图形选项用来将波形保存为 BMP 文件 图 22 采样模式及保存文件格式 7 波形回显 上面提到的波形保存操作 将波形保存在 LVM 文件中 波形回显即将 LVM 文件中的波形重新显示 图 23 波形回显 4 4 小结小结 本设计根据要求完成了示波器的基本功能 并作了一些扩充 在现有条件下应该是完 成了应该达到的或可以达到的功能 不过本设计可以进一步丰富功能 但扩充需要根据需 求来添加 通过本次虚拟示波器的设计 对LabVIEW的应用有了很大程度的提高 比如IIR 滤波器 局部变量 各种循环结构的应用下拉菜单常量和属性节点的创建都是前几个设计 所没有涉及的 所以虚拟示波器的设计使我对LabVIEW的应用有了提高的同时 也提醒了自 己还有很多需要学习的地方 想更好的利用好这个软件 就要在以后多做这方面的工作 多设计一些常用的虚拟仪器 这对以后的工作和生活都有很大的帮助 在本设计进行的过程中 就已经知道还有需要改进的地方 但由于知识储备不足和其 他一些方面的限制未能完成这些方面的工作 以下是几个可以改进的地方 1 程序是流水线式设计运行 具体体现在前面板的几个界面切换后后台并没有停止运 行 而是一直在运行 这样会浪费不少CPU资源 功能只是简单的增加而没有进行有效的整 合 2 这里用了六个波形图控件 Waveform Graphs 只是在前面板使用了选项卡控件 看起来是一个 屏幕 实际上程序作一定的优化后可以大量减少波形图控件的使用 因为 理论上只要不是同时显示的需要就可以公用一个 屏幕 3 人机界面的设计 操作的方便性有待提高 自我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论