基于labview多功能的虚拟数字滤波器毕业设计内容摘要:
率一般低于 500kbs不适合与对系统速度要求较高的应用 3VXI VME bus eXtension for Instrumentation 是 VME 总线在仪器领域的扩展上个世纪 1993年 VXI总线 14版本被批准为 IEEE1155标准成为开放式工业标准仪器专用总线在吸收 IEEE488 的成功经验基础上增加了 10MHz 时钟线模拟和数字混合总线星形总线等高速总线定时关系严格兼有计算机总 线和仪器总线的优点 4PXI PCI eXtension For Instrumentation 是 Compact PCI 总线在仪器领域的扩展是 NI公司于 1997年发布的一种新的开放性模块化仪器总线规范其核心是 Compact PCI 结构和 Microsoft Windows 软件 PXI 是在 PCI 内核技术上增加了成熟的技术规范和要求形成的 PXI增加了用于多个板卡同步的触发总线和 10MHz参考时钟用于精确定时的星形触发总线以及用于相邻模块间高速通信的局部总线等来满足实验和测量用户的要求 PXI兼容 Compact PCI机械规范并增加了空气冷却装置环境测试温度湿度振动和冲击实验等要求这样可保证多厂商产品的互操作性和系统的易集成性 5 串口系统是以 Serial 标准总线仪器与计算机为仪器精简平台组成的虚拟测试系统 [10]RS232总线是早期采用的通用串行总线将带有 RS232标准总线接口的仪器作为 IO接口设备通过 RS232串口总线与计算机组成虚拟仪器系统目前仍然是虚拟仪器构成方式之一主要适用于速度较低的测试系统 虚拟仪器的软件结构 虚拟仪器技术的核心是软件其软件基本结构如图 24 所示用户可以采用各种编程软件来开发自己所需要 的应用软件以美国 NI 公司的软件产品 LabVIEW 和LabWindowsCVI 为代表的虚拟仪器专用开发平台是当前流行的集成化开发工具这些软件开发平台提供了强大的仪器软面板设计工具和各种数据处理工具再加上虚拟仪器硬件厂商提供的各种硬件的驱动程序模块简化了虚拟仪器的设计工作随着软件技术的迅速发展软件开发的模块化复用化和各种硬件仪器驱动软件的模块化标准化虚拟仪器软件开发将变得更加快速方便 图 24 虚拟仪器软件结构 虚拟仪器的开发软件 虚拟仪器的开发语言 虚拟仪器系统的开发语言有标准 CVisual C Visual Basic 等通用程序开发语言但直接由这些语言开发虚拟仪器系统是有相当难度的除了要花大量时间进行测试系统面板设计外还要编制大量的设备驱动程序和底层控制程序这些工作对于那些不熟悉这方面知识的工程设计人员来说要花费大量时间和精力这样直接影响了系统开发的周期和性能除了通用程序开发语言以外还有一些专用的虚拟仪器开发语言和软件其中有影响的开发软件有 NI 公司的LabVIEWLabWindowsCVILabVIEW 采用图形化编程方案是非常实用的开发软件LabWindowsCVI 是为熟悉 C 语言的开发人员准备的是在 Windows 环境下的标准ANSIC 开发环境除此以外还有 HP 公司的 HPVEE HPTIG 开发平台美国 Tektronix公司的 EzTest TekTNS平台软件这些都是国际上公认的优秀的虚拟仪器开发软件平台 [11] 图形化虚拟仪器开发平台 LabVIEW LabVIEW Laboratory Virtual Instrument Engineering 是一种图形化的编程语言它广泛地被工业界学术界和研究实验室所接受视为一个标准的数据采集和仪器控制软件 LabVIEW 集成了与满足 GPIBVXIRS232 和 RS485 协议的硬件及数据采集卡通讯的全部功能它还内置了便于应用 TCPPIActiveX 等软件标准的库函数是一个功能强大且灵活的软件利用它可以方便地建立自己的虚拟仪器其图形化的界面使得编程及使用过程都更加形象化 传统的文本式编程是一种顺序的设计思路设计者必须写出执行的语句而LabVIEW 是基于数据流的工作方式同时是基于图形化的编程这使得设计者不必掌握大量的编程语言和程序设计技巧便可设计出虚拟仪器系统 [11] 目前在以 PC机为基础的测试和工控软件中 LabVIEW的市场普及率仅次于 CC语言 LabVIEW具有一系列无与 伦比的优点首先 LabVIEW作为图形化语言编程采用流程图式的编程运用的设备图标与科学家工程师们习惯的大部分图标基本一致这使得编程过程和思维过程非常相似同时 LabVIEW 提供了丰富的 VI 库和仪器面板素材库近 600 种设备的驱动程序 可扩充 如 GPIB 设备控制 VXI 总线控制串行口设备控制以及数据分析显示和存储并且 LabVIEW 还提供了专门用于程序开发的工具箱使得用户能够设置断点调试过程中可以使用数据探针和动态执行程序来观察数据的传输过程更加便于程序的调试因此 LabVIEW 受到越来越多工程师科学家的普遍青睐 利用 LabVIEW 可产生独立运行的可执行文件它是一个真正的 32编译器像许多通用的软件一样 LabVIEW 提供了 WindowsUNIXLinuxMacintosh OS 等多种版本[12] 基于 LabVIEW 平台的虚拟仪器程序设计 所有的 LabVIEW 应用程序即虚拟仪器 VI 它包括前面板 Front Panel 流程图 Block Diagram 以及图标连结器 IconConnector 三部分 1 前面板前面板是图形用户界面也就是 VI 的虚拟仪器面板这一界面上有用户输入和显示输出两类对象具体表现有开关旋钮图形以及 其他控制和显示对象但并非画出两个控件后程序就可以运行在前面板后还有一个与之对应的流程图 2流程图流程图提供 VI的图形化源程序在流程图中对 VI编程以控制和操纵定义在前面板上的输入和输出功能流程图中包括前面板上的控件连线端子还有一些前面板上没有但编程必须有的东西例如函数结构和连线等 如果将 VI 与传统仪器相比较那么前面板上的控件对应的就是传统仪器上的按钮显示屏等控件而流程图上的连线端子相当于传统仪器箱内的硬件电路在许多情况下使用 VI 可以仿真传统仪器不仅在屏幕上出现一个惟妙惟肖的标准仪器面板而且其功能也与传统标准仪器相差无几这种设计思想的优点体现在两方面 ① 类似流程图的设计思想很容易被工程人员接受和掌握特别是那些没有很多程序设计经验的工程人员 ② 设计的思路和运行过程清晰而且直观如通过使用数据探针高亮执行调试等多种方法程序以较慢的速度运行使没有执行的代码显示灰色执行后的代码会高亮显示同时 在线显示数据流线上的数据值完全跟踪数据流的运行这为程序的调试和参数的设定带来诸多的方便 3 图标连接设计这部分的设计突出体现了虚拟仪器模块化程序设计的思想在设计大型自动检测系统时一步完成一个复杂系统的设计是相当有难度的而在LabVIEW 中提供的图标连接工具正是为实现模块化设计而准备的设计者可把一个复杂自动检测系统分为多个子系统每一个都可完成一定的功能这样设计的优点体现在如下几方面 ① 把一个复杂自动检测系统分为多个子系统程序设计思路清晰给设计者调试程序带来了诸多的方便同时也对于将来系统的维护提供了便利 ② 一 个复杂自动检测系统分为多个子系统每一个子系统都是一个完整的功能模块这样把测试功能细节化便于实现软件复用大大节省软件研发周期提高系统设计的可靠性 ③ 便于实现测试集成和虚拟仪器库的思想同时为实现虚拟仪器设计的灵活性提供了前提 系统设计理论 31 信号采集理论 该部分主要包括数据采集技术概述传感器输入信号的分析调理以及测量系统的选择下面分别予以说明 数据采集技术概论 在计算机广泛应用的今天数据采集的重要性是十分显著的它是计算机与外部物理世界连接的桥梁各种类型信号采集的难易程度差别很大实际采集时噪声也可能带来一些麻烦数据采集时有一些基本原理要注意还有更多的实际的问题要解决 假设现在对一个模拟信号 x t 每隔△ t 时间采样一次时间间隔△ t 被称为采样间隔或者采样周期它的倒数 l△ t被称为采样频率单位是采样数每秒 t= 0△ t2△ t3△ t 等等 x t 的数值就被称为采样值所有 x 0 x △ t x 2△ t 都是采样值这样信号 x t 可以用一组分散的采样值来表示 x 0 x △ t x 2△ t x 3△ t x k△ t 图 31 显示了一个模拟信号和它采样后的采样值采样间隔是△ t 注意采样点在时域上是离散的 图 31 模拟信号 采样图 如果对信号 x t 采集 N 个采样点那么 x t 就可以用下面这个数列表示 X x[0]x[l]x[2]x[3]x[N- l] 这个数列被称为信号 x t 的数字化显示或者采样显示这个数列中仅仅用下标变量编制索引而不含有任何关于采样率 或△ t 的信息所以如果只知道该信号的采样值并不能知道它的采样率缺少了时间尺度也不可能知道信号 x t 的频率 根据采样定理最低采样频率必须是信号频率的两倍反过来说如果给定了采样频率那么能够正确显示信号而不发生畸变的最大频率叫做恩奎斯特频率它是采样频率的一半如果信号中包含频率高 于奈奎斯特频率的成分信号将在直流和恩奎斯特频率之间畸变 一个信号分别用合适的采样率和过低的采样率进行采样的结果 图 32 合适采样率采样波形 图 33 采样率过低采样波形 采样率过低的结果是还原的信号的频率看上去与原始信号不同这种信号畸变叫做混叠出现的混频偏差是输入信号的频率和最靠近的采样率整数倍的差的绝对值为了避免这种情况的发生通常在信号被采集 AD 之前经过一个低通滤波器将信号中高于奈奎斯特频率的信号成分滤去理论上设置采样频率为被采集信号最高频率成分的 2 倍就够了但实际上工程中选用 510 倍有时为了较好地 还原波形甚至更高一些 采集系统的一般组成及各部分功能描述 DAQ 板卡 AD 信号 外触发 图 34 数据采集结构图 图 34 表示了数据采集的结构在数据采集之前程序将对采集板卡初始化板卡上和内存中的 Buffer 是数据采集存储的中间环节需要注意的两个问题是 是否使用缓冲是否使用外触发启动停止或同步一个操作 1 缓冲 Buffers 这里的缓冲指的是 PC内存的一个区域 不是数据采集卡上的 FIFO缓冲 它用来临时存放数据例如你需要采集每秒采集几 千个数据在一秒内显示或图形化所有数据是困难的但是将采集卡的数据先送到 Buffer 你就可以先将它们快速存储起来稍后再重新找回它们显示或分析需要注意的是 Buffer 与采集操作的速度及容量有关如果你的卡有 DMA 性能模拟输入操作就有一个通向计算机内存的高速硬件通道这就意味着所采集的数据可以直接送到计算机的内存 不使用 Buffer 意味着对所采集的每一个数据你都必须及时处理 图形化分析等 下列情况需要使用 Buffer IO ① 需要采集或产生许多样本其速率超过了实际显示存储到硬件或实时分析的速度 ② 需要连续采集或产 生 AC数据 10样本。基于labview多功能的虚拟数字滤波器毕业设计
相关推荐
件 的重要组成部分。 虚拟仪器技术 最主要的 是软件, 它的 结构 在软件上的体现 如图 所示。 用户可以开发自己的应用软件的各种编程所需要的软件。 现在 美国 NI 公司的软件产品 LabVIEW 和 LabWindows/CVI 是最流行的虚拟平台开发软件。 这些 NI开发平台提供了 很多 的 前面板使用 工具和各种数据 分析 工具, 另外 虚拟仪器硬件厂商 生产 的各种硬件的驱动程序模块,
选择工具:用于选择、移动或改变对象的大小。 当它用于改变对象的连框大小时,会变成相应形状。 标签工具:用于输入标签文本或者创建自由标签。 当创建自由标签时它会变成相应形状。 连线工具:用于在框图程序上连接对象。 如果联机帮助的窗口被打开时,把该工具放在任一条连 线上,就会显示相应的数据类型。 对象弹出菜单工具:用左鼠标键可以弹出对象的弹出式菜单 . 漫游工具
算机基础上,配有相应的硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器所没有的特殊功能的高档低价的新型仪器。 由于虚拟仪器不依赖功能和结构复杂的仪器模块,使得开发成本大幅度降低,加之从设计开发到用户使用过程种的众多优点,可以预见在不远的将来,在测试系统领域,虚拟仪器系统将取代传统的测试设备,成为测试系统的主流。 虚拟仪器的组成 虚拟仪器由仪器硬件平台和应用软件两部分组成。 (
在此课程 设计中,用按键连接条件端口,当按键按下时,循环停止。 燕 山 大 学 里 仁 学 院 课 程 设 计 7 图 111 while循环 第 2 章 软件调试 这次所设计的十字路口交通灯有四种运行状态:状态 状态 状态 状态 4。 各种状态的效果在下文中将会讲到。 运行状态 1,北红灯亮 35s— 6s,东绿灯亮 30s— 1s,此时往东方向的车辆可以通行,通行时间总共为 30s
机和信号处理技术,极大地促进了数字技术在电子测量仪器中的应用,逐步取代使原来的模拟信号处理数字信号处理,从而扩大了仪器的信号处理能力的发展提高测量精度,精度,和改变的信号的模拟信号处理,克服了许多缺点,按照数字信号发生器的发展速度。 其基本原理如图 22所示。 键 盘 显 示 控 制 芯 片 D / A 转 换 电 路波 形 发 生 电路信 号 输 出信 号 采 集图 22
器软件开发工具。 LabVIEW 是“实验室虚拟仪器工程平台( Laboratory Virtual Instrument Engineering Workbench)”的缩写 , 用于 LabVIEW 设计的虚拟仪器可脱离 LabVIEW 开发环境 , 用户最终看见的是和实际硬件仪器相似的操作面板。 LabVIEW 是一个工程软件包。 1986 年 , 美国国家仪器公司( National