虚拟相位差测量仪的设计(电气工程及其自动化优秀毕业设计).doc_第1页
虚拟相位差测量仪的设计(电气工程及其自动化优秀毕业设计).doc_第2页
虚拟相位差测量仪的设计(电气工程及其自动化优秀毕业设计).doc_第3页
虚拟相位差测量仪的设计(电气工程及其自动化优秀毕业设计).doc_第4页
虚拟相位差测量仪的设计(电气工程及其自动化优秀毕业设计).doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

中文摘要 i 毕毕业业设设计计(论论文文) 题题 目目: 虚虚拟拟相相位位差差测测量量 仪仪的的设设计计 学 院: 电气与电子工程学院 专 业: 电气工程及其自动化 学生姓名: 指导教师: 中文摘要 ii 摘摘 要要 本题目属于应用设计类,设计内容包括:相位差检测的方法(相关分析法、 频谱分析法、过零检测法等)研究;多种方法在虚拟仪器设计平台上的仿真实 现;采用各种方法的虚拟相位差测量仪的分析比较。 论文采用三种方法中的前两种,比较两种方法设计成的仿真仪在测量波形 相位差的精度和程序上的不同,通过相关资料了解它们在实际运用中各自的适 用场所及其优缺点。充分了解虚拟仪器特别是 labview 的功能强大性。 论文的第一部分是对虚拟仪器,主要是虚拟仪器的大体介绍和相位差测量 仪的在工业上的应用;第二部分主要是对 labview 的简介和其运行的环境的 概述;第三部分主要讲述本次课程设计中要用到 labview 中的功能函数以及 相关法、频谱分析法等相位差测量方法原理;第四部分则列出本次课程设计要 用到的 labview 的内容及各种方法在 labview 平台下的实现。最后是对本 次设计的总结。 关关键键词词:相关法、频谱分析法、过零检测法、相位计 英文摘要 iii abstract the topic is application design category, design elements include: phase difference detection method (correlation analysis, spectrum analysis, zero-crossing detection, etc.); various methods in the design of virtual instrument platform simulation; using various methods of virtual phase meter analyzed. papers using three methods of the former two. comparing the two methods designed instrument in the simulation waveform measurement accuracy and the phase difference of the different procedures, through the relevant information on the practical application of their respective places of application and their advantages and disadvantages. fully aware of virtual instruments, especially labview powerful nature. among the first part of the virtual instrument, is the main design of this phase difference measuring instrument of industrial applications; the second part was to brief the labview and its operating environment overview; the third part mainly on the current curriculum design, the use of related laws, such as spectrum analysis phase difference measurement principle; part iv sets out the course of the design labview use of the content and methods in labview platform achieved. keywords: correlation, spectrum analysis, zero-crossing detection, phasemeter 目 录 iv 目 录 第一章第一章 引引 言言. 1 1.1 高效的软件.1 1.2 模块化的 i/o 硬件 2 1.3 用于集成的软硬件平台.2 第二章 相位差测量仪的概述 5 2.1 相位差的定义.5 2.2 相位差测量仪的应用.5 第三章 编程软件 labview 的简介5 3.1 labview 的概述 .6 3.2 labview 的应用 .7 3.2.1 labview 应用于测试与测量 7 3.2.2 labview 应用于过程控制和工业自动化 7 3.2.3 labview 应用于实验室研究与自动化 7 3.3 labview 的编程环境 .8 第四章 相位差测量方法原理简介. 10 4.1 相关法测量相位差原理 10 4.2 频谱分析法测量相位差原理 12 4.3 零点检测法测量相位差原理 13 第五章 测量相位差方法在 labview 中的应用. 15 5.1 设计中常用控件功能简介 15 5.1.1 数据类型 15 5.1.2 结构 . 15 5.1.3 数学运算 18 5.1.4 比较运算 18 5.1.5 簇. 20 5.1.6 波形显示控件 21 目 录 v 5.2 基于相关原理的虚拟相位差的设计 23 5.2.1 基于相关法虚拟相位差计主程序流程图. 23 5.2.2 labview 平台下软件的实现 23 5.3 利用 fft 函数的相位计简单设计. 25 5.4 基于频谱分析原理的虚拟相位差的设计 27 5.4.1 虚拟频谱分析法测量相位差计的实现.27 5.4.2 虚拟频谱分析法测量相位差存在的问题及解决方法. 30 5.5 各种测量方法的比较 31 结论.32 参考文献34 致谢及声明.35 附图(频谱分析法的程序框图) 第一章 引言 - 1 - 第第一一章章 引引言言 信号的相位差测量仪在电工技术,工业自动化,智能控制, 通讯及电子技术等许多领域都有着广泛的应用。传统电子模拟 式相位差测量采用乘法器法,二极管鉴相法等,有硬件电路完 成。电路的温漂,噪声级干扰信号,都会导致测量结果产生误 差,因此,传统的相位差检测方法正逐渐被软件测量方法所替 代,通过软件算法来消除温漂,噪声及干扰信号的影响,使测 量结果更加精确。 1995 年我们开始接触 ni 公司的产品, 2000 年建立了一 个用于教学的虚拟仪器实验室。在该实验室中,使用自己开 发的虚拟仪器开设了几个实验,并融入电路实验课程,然后 又转向为全校的本科生和研究生开设虚拟仪器设计课程。 虚拟仪器是以其技术与计算机技术深层次结合的产物,它 强调“软件就是仪器 ”的概念,用户能够根据自己的需要定 义仪器功能,更好的组建自己所需要的测试系统。它是按照 “信号的调整与采集( adc),数据的分析与处理( dsp), 结果的输出( dac)及显示”的结构模式来建立通用仪器硬 件平台,在这个通用硬件仪器平台上,调用不同的测量软件 就构成了不同功能的仪器。 虚拟仪器( virtual instrumention)是基于计算机的仪 器。计算机和仪器的密切结合是目前仪器发展的一个重要方 向。粗略地说这种结合有两种方式,一种是将计算机装入仪 器,其典型的例子就是所谓智能化的仪器。随着计算机功能 的日益强大以及其体积的日趋缩小,这类仪器功能也越来越 第一章 引言 - 2 - 强大,目前已经出现含嵌入式系统的仪器。另一种方式是将 仪器装入计算机。以通用的计算机硬件及操作系统为依托, 实现各种仪器功能。虚拟仪器主要是指这种方式。下面的结 构反映了常见的虚拟仪器方案。 被测对象信号处理数据采集卡 数据处理虚拟仪 器面板 虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵 活的软件来完成各种测试、测量和自动化的应用。灵活高效 的软件能帮助您创建完全自定义的用户界面,模块化的硬件 能方便地提供全方位的系统集成,标准的软硬件平台能满足 对同步和定时应用的需求。这也正是ni 近 30 年来始终引 领测试测量行业发展趋势的原因所在。只有同时拥有高效的 软件、模块化 i/o 硬件和用于集成的软硬件平台这三大组成 部分,才能充分发挥虚拟仪器技术性能高、扩展性强、开发 时间少,以及出色的集成这四大优势。虚拟仪器技术的三大 组成部分: 1.1 高效的软件 软件是虚拟仪器技术中最重要的部份。使用正确的软件工 具并通过设计或调用特定的程序模块,工程师和科学家们可 以高效地创建自己的应用以及友好的人机交互界面。ni 公 司提供的行业标准图形化编程软件 labview,不仅能轻 松方便地完成与各种软硬件的连接,更能提供强大的后续数 据处理能力,设置数据处理、转换、存储的方式,并将结果 第一章 引言 - 3 - 显示给用户。此外, ni 提供了更多交互式的测量工具和更 高层的系统管理软件工具,例如连接设计与测试的交互式软 件 signalexpress、用于传统 c 语言的 labwindows/cvi、 针对微软 visual studio 的 measurement studio 等等,均 可满足客户对高性能应用的需求。 有了功能强大的软件,您就可以在仪器中创建智能性和决 策功能,从而发挥虚拟仪器技术在测试应用中的强大优势。 1.2 模块化的i/o硬件 面对如今日益复杂的测试测量应用, ni 提供了全方位的 软硬件的解决方案。无论您是使用pci, pxi, pcmcia, usb 或者是 1394 总线,ni 都能提供相应的模块化的硬件产品, 产品种类从数据采集、信号条理、声音和振动测量、视觉、 运动、仪器控制、分布式 i/o 到 can 接口等工业通讯,应有 尽有。ni 高性能的硬件产品结合灵活的开发软件,可以为负 责测试和设计工作的工程师们创建完全自定义的测量系统, 满足各种独特的应用要求。目前, ni 已经达到了每 2 个工 作日推出一款硬件产品的速度,大大拓宽了用户的选择面: 例如 ni 新近推出的新一代数据采集设备 先期推出的 20 款 m 系列 daq 卡,就为数据采集领域设定了全新的标准。 1.3 用于集成的软硬件平台 ni 首先提出的专为测试任务设计的 pxi 硬件平台,已经 第一章 引言 - 4 - 成为当今测试、测量和自动化应用的标准平台,它的开放式 构架、灵活性和 pc 技术的成本优势为测量和自动化行业带 来了一场翻天覆地的改革。由 ni 发起的 pxi 系统联盟现已 吸引了 68 家厂商,联盟属下的产品数量也已激增至近千种。 pxi 作为一种专为工业数据采集与自动化应用度身定制的 模块化仪器平台,内建有高端的定时和触发总线,再配以各 类模块化的 i/o 硬件和相应的测试测量开发软件,您就可以 建立完全自定义的测试测量解决方案。无论是面对简单的数 据采集应用,还是高端的混合信号同步采集,借助pxi 高 性能的硬件平台,您都能应付自如。这就是虚拟仪器技术带 给您的无可比拟的优势。 虚拟仪器技术的四大优势: 1.性能高: 虚拟仪器技术是在 pc 技术的基础上发展起来的,所以完 全“继承”了以现成即用的 pc 技术为主导的最新商业技术 的优点,包括功能超卓的处理器和文件i/o,使您在数据高 速导入磁盘的同时就能实时地进行复杂的分析。此外,不断 发展的因特网和越来越快的计算机网络使得虚拟仪器技术展 现其更强大的优势。 2.扩展性强 ni 的软硬件工具使得工程师和科学家们不再圈囿于当前 的技术中。得益于 ni 软件的灵活性,只需更新您的计算机 或测量硬件,就能以最少的硬件投资和极少的、甚至无需软 第一章 引言 - 5 - 件上的升级即可改进您的整个系统。在利用最新科技的时候, 您可以把它们集成到现有的测量设备,最终以较少的成本加 速产品上市的时间。 3.开发时间少 在驱动和应用两个层面上, ni 高效的软件构架能与计算 机、仪器仪表 和通讯方面的最新技术结合在一起。 ni 设计 这一软件构架的初衷就是为了方便用户的操作,同时还提供 了灵活性和强大的功能,使您轻松地配置、创建、发布、维 护和修改高性能、低成本的测量和控制解决方案。 4.无缝集成 虚拟仪器技术从本质上说是一个集成的软硬件概念。随着 产品在功能上不断地趋于复杂,工程师们通常需要集成多个 测量设备来满足完整的测试需求,而连接和集成这些不同设 备总是要耗费大量的时间。 ni 的虚拟仪器软件平台为所有的 i/o 设备提供了标准的接口,帮助用户轻松地将多个测量设 备集成到单个系统,减少了任务的复杂性。 虚拟仪器的主要特点有: 尽可能采用了通用的硬件,各种仪器的差异主要是软件。 可充分发挥计算机的能力,有强大的数据处理功能,可以创 造出功能更强的仪器。用户可以根据自己的需要定义和制造 各种仪器。 目前,美国的 ni 公司和 hp 公司在虚拟仪器的研究方面 处于领先地位,购买其虚拟仪器产品必将有助于我们的科研 第一章 引言 - 6 - 和教学工作,但价格非常昂贵。因此,根据自己的需要自行 研究和开发虚拟仪器显得尤为重要。利用计算机的强大功能 采用 labview8.2 图形编程语言,设计了一种方便使用的相 位差计。该仪器的主要特点如下:采用了labview 作为开 发平台,软件编程方便、简洁、效率高;利用数据采集卡采 集数据可测量两个同频信号的相位差;在现有的基础上,通 过改变软件的设计,可以实现别的仪器的功能。如虚拟函数 发生器、虚拟示波器等。 相信随着计算机技术和测控技术的不断发展,虚拟仪器将 成为未来教学科研的重要方法和手段,将取代传统一起成为 测量仪器的主流。 第第二二章章 相相位位差差测测量量仪仪的的概概述述 2.1 相位差的定义 相位差:两个频率相同的交流电相位的差叫做相位差,或 者叫做相差。这两个频率相同的交流电,可以是两个交流电 流,可以是两个交流电压,可以是两个交流电动势,也可以 是这三种量中的任何两个。 例如研究加在电路上的交流电压和通过这个电路的交流电 流的相位差。如果电路是纯电阻,那么交流电压和电流电流 的相位差等于零。也就是说交流电压等于零的时候,交流电 流也等于零,交流电压变到最大值的时候,交流电流也变到 最大值。这种情况叫做同相位,或者叫做同相。如果电路含 第二章 相位差测量仪的概述 - 7 - 有电感和电容,交流电压和交流电流的相位差一般是不等于 零的,也就是说一般是不同相的,或者电压超前于电流,或 者电流超前于电压。 加在晶体管放大器基极上的交流电压和从集电极输出的交 流电压,这两者的相位差正好等于180。这种情况叫做反 相位,或者叫做反相 。 2.2 相位差测量仪的应用 信号的相位差测量仪在电工技术,工业自动化,智能控制, 通讯及电子技术等许多领域都有着广泛的应用。随着计算机 和软,硬件的日益发展。在测试系统中越来越得到广泛的应 用。比如:在实际工作中,常常会遇到两列频率相同的信号 之间存在相位差,那么就需要测量他们之间的相位差,电力 系统中电网并网合闸时,要求两电网的电信号之间的相位相 同,这时要精确测量两列工频信号之间的相位差。 相位差 测量在动态测试,如:振动和噪声控制,传感器的校准,以 及超声测距和成像等领域越来越重要。 第三章 编程软件 labview 的简介 - 8 - 第第三三章章 编编程程软软件件 labview 的的简简介介 随着测试技术及大规模集成电路技术的发展,传统的电子 测试仪器己从模拟技术向数字技术发展;从单台仪器向多种 功能仪器的组合及系统型发展;从完全由硬件实现仪器功能 向软硬结合方向发展;从功能组合向以个人计算机为核心构 成通用测试平台、功能模块及软件包形式的自动测试系统发 展。同时,随着计算机技术的不断提高,现代自动测试系统 正向仪器的自动化、智能化、小型化、网络化和综合化方向 发展。 虚拟仪器的出现给现代测试技术带来了一场革命,虚拟仪 器技术是测试技术和计算机技术相结合的产物,是两门学科 的最新技术的结晶,融合了测试理论、仪器原理和技术、计 算机接口技术、高速总线技术以及图形化软件编程于一身, 实现了测量仪器的智能化、多样化、模块化和网络化,体现 出多功能、低成本、应用灵活、操作方便等优点,在很多领 域大有取代传统仪器的趋势,成为当代仪器发展的一个重要 方向,并受到各国企业界的高度重视。所谓虚拟仪器 (virtual instrument,简称 vi),就是在以通用计算机 为核心的硬件平台上,利用虚拟仪器软件开发平台在计算机 的屏幕上虚拟出仪器的面板以及相应的功能,人们通过鼠标 或键盘操作虚拟仪器面板上的旋钮、开关和按键,去选用仪 器功能,设置各种工作参数,启动或停止一台仪器的工作。 在计算机软件控制下对输入的信号进行采集、分析、处理, 第三章 编程软件 labview 的简介 - 9 - 测量结果(数据、波形)和仪器工作状态都可从虚拟仪器面 板上读出。用户在屏幕上通过虚拟仪器面板对仪器的操作如 同在真实仪器上的操作一样直观、方便、灵活。 3.1 labview的概述 labview 是实验室虚拟仪器集成环境( laboratory virtual instrument engineering workbench) 的简称, 是美国国家仪器公司( national instruments,简称 ni)的 创新软件产品,也是目前应用最广、发展最快、功能最强的 图形化软件开发集成环境。 数据采集、仪器控制、过程监控和自动测试是实验室研究 和工业自动化领域广泛存在的实际任务。在20 世纪 80 年 代初计算机出现之前,几乎所有拥有程控仪器的实验室都采 用贵重的仪器控制器来控制测试系统,这些功能单一、价格 昂贵的仪器控制器通过一个集成通讯端口来控制总线仪器。 后来,随着 pc 机的出现,工程师和科学家找到一种通过性 能价格比高的通用 pc 机控制台式仪器的方法,各种基于pc 机接口的板卡产品便应运而生。 3.2 labview的应用 labview 在包括航天、通讯、生物医学、电子、地球物 理、机械等各个领域内得到广泛的应用,从简单的仪器控制、 数据采集到尖端的测试和工业自动化,从大学实验室到工厂, 第三章 编程软件 labview 的简介 - 10 - 从探索研究到技术集成,都可以发现应用labview 的成果 和开发产品。 3.2.1 labview应用于测试与测量 labview 已成为测试与测量领域的工业标准,通过 gpib、vxi、plc 串行设备和插卡数据采集板可以构成实际的 数据采集系统。它提供了工业界最大的仪器驱动程序库,同 时还支持通过 internet 、activex 、dde 和 sql 等交互式 通信方式实现数据共享,它提供的众多开发工具使复杂的测 试与测量任务变得简单易行。 3.2.2 labview应用于过程控制和工业自动化 labview 强大的硬件驱动、图形显示能力和便捷的快速程 序设计为过程的控制和工业自动化应用提供了优秀的解决方 案。对于更为复杂、更专业的工业自动化领域,在labview 基础上发展起来的 bridge view 是更好的选择。 3.2.3 labview应用于实验室研究与自动化 labview 为科学家和工程师提供功能强大的高级数学分析 库,包括统 计、估计、回归分析、线性代数、信号生成算法、 时域和频域算法等众多科学领域,可满足各种计算机和分析 需要。即使在联合时域分析、小波和数字滤波器设备等高级 或特殊分析场合, labview 也为此提供专门的附加软件包。 第三章 编程软件 labview 的简介 - 11 - 3.3 labview的编程环境 labview 模板 与一般的程序相比, labview 提供了三个浮动 的图形化工具模板,分别是工具模板、控制模板 和功能模板。 这三个模板功能强大,使用方便, 表示直观, 是用户编程的主要 工具。 (1)工具模板 工具模板包括操作工具,定位工具,标注工具,连线工 具,弹出菜单工具,滚动工具断点工具探针工具, 颜色工具和颜色拷贝工具。通过这样的工具,就 用于 vi 的创建、修改和调试。 (2)控件模板 控件模板按功能分类,每个工具图标双包含 一系列子模 板。控件模板功能强大,通过这些子 模板可以找 到创建程序所需的所有对象工具。 使用控制模板 可以给前面板增加输入控件和输 出指示器。子 模板包括数值 子模板、布尔子模 板、字符串子 模板、列表和环子模板、数 组和 簇子模板、路 径和参考名子模板、图形子模板、 装饰子模板、用户控制子模板、控制子模板和 axtivex 子模板。 (3)功能模板 使用功能模板可创建框图程序模板上每一 个顶层图标都 表示一个子模板。 labview 框图编程的所有函 第三章 编程软件 labview 的简介 - 12 - 数按照功能分类都分布在功能模板的子模板里。每个子模板 的内容及操作是 labview 编程最基本、最重要的内容。 功 能模板包括下列子模板:结构 子模板、数值运算子模板、布 尔逻辑子模板、字符串子模板、数组子模板、簇子模板、比 较子模板、时间和对话框子模板、文件输入 /输出子模板、 仪器输入/输出子模板、通信子模板、数据采集子模板、分析 功能子模板、示教课程子模板、高级功能子模板、选择vi 子程序子模板、用户库子模板、应用控制子模板和仪器驱动 子模板。通过这些功能子模板,可实现所有labview 的应 用功能。 第三章 编程软件 labview 的简介 - 13 - 第第四四章章 相相位位差差测测量量方方法法原原理理简简介介 4.1 相关法相位差测量相位差原理 1)根据互相关函数特性求出两信号的初相位 两信号的互相关函数不是偶函数,根据其定义可证 ( )r xy 明,此式说明,互相关函数与两信号的相位差 ( )()r xyr xy 和延迟量有关,当时,就只与两信号的相位差 0 (0)r xy 有关基于此可求出设。式中 ( )sin; ( )sin()x tat y tbt a,b 分别是被测信号的幅值,就是两信号之间的相 ( )( )x ty t, 位差根据相关函数的定义,的估计值为: ( )r xy 1 ( )( ) () 0 1 sinsin() 0 0 1 ( )( ) () 0 1 sinsin() 0 1 2 (sincossincossin) 00 2 1 2 ( )sincoscos 02 t r xyx t y t t t atbtdt t t r xyx t y t t t atbtdt t tt abtdtabttdt t t ab r xyabtdt t 当时,有: 上式中第项的积分为零, 所以有: ( ) ( ) arccos ab( ), (t) r xy ab r xy ab x ty 由此可求出两信号的相位差为: 2 cos = 或 2 式中,可由自相关函数求出。 2)由自相关函数求出的幅值 ( ), (t)x ty 根据户相关函数的性质,当延迟量时,自相关函数取 =0 得最大值,且唯一与信号的幅值有关。根据自相关函数的定 义,函数的自相关函数的估计值为: ( )x t 第四章 相位差测量方法原理简介 - 14 - 222 2 1 ( )( ) () 0 1 ( )sin 00 2 2(0) ( ) ab (0) arcc (0)(0) (0),(0),(0)( ), ( )0, t r xx t x tdt t tt xx t dtatdt t a ar x y t r xy os r xr y r xr yr xyx ty t 当=0时,有: 1 r (0)= t 所以得: 同理求出函数的幅值为: b= 2ry(0) 当求出,后即可求出相位差为: 式中分别是在时的估计值 其函 2 2 : 1 (0)( )(0) 0 1 (0)( )(0) 0 1 (0)( ) ( )(0) 0 t r xx t dt t t r yyt dt t t r xyx t y t dt t 数表达式可写为 3)互相关函数的离散表达式 当用计算机进行处理时,必须对被测信号进行采样,连 续信号变为离散时间序列。连续信号 ( )x t ( ),0,1,2,.,1x n nk 变为离散时间序列。计算相关函数的积 ( )y t( ),0,1,2,.,1y n nk 分表达式变为求和式,可表示为: 1 2 0 1 2 0 1 0 1 (0)( ) 1 (0)( ) 1 (0)( ) ( ) k n k n k n r xxn n r yyn n r xyx n y n n k 式中为采样点数. 4.2 频谱分析法测量相位差原理 该方法是通过对被检测信号进行频谱分析,获得信号的相 频特性,然后计算两信号在主频率处的差值即可测得两个信 号的相位差。 在有限区间内,绝对可积的任一周期函数可以展 ( ,)t tt( )x t 开成傅里叶级数: 0 0 1 0 1 1 1 1 ( )(cossin) (cossin) sin() , 2 ( )cos 2 ( )sin ,: arctan nn n nn n nn n nn n n n x tan tbn t aan tbn t aan t a b ax tn tdt t bx tn tdt t n a b 其中为傅里叶系数 为次谐波的初相位其中基波的初相位为 以上计算的意义在于:一个周期信号可以用一个直流分量 和一系列谐波的线性叠加来表示,只要求处傅里叶系数 和即可求出任一谐波的初相位,而在相位差测量中只 n a n b n 要求出基波的初相位即可。 1 在以计算机为核心的虚拟测试仪中,模拟信号在进入 ( )x t 计算机前先 经采样器将连续信号变为离散时间信号,而后再 经过 a/d 转换器变为离散信号。设在周期函数的一个周期内 有 n 个采样点,且每两个采样点间的时间相同,则有: 1 0 1 1 0 1 1 1 22 ( )cos 22 ( ) n k n k k x k nn k bx k sin nn a arctan b 1 a 第四章 相位差测量方法原理简介 - 15 - 对于两个周期信号函数和,他们的基波傅里叶系 1( ) x t 2( ) x t 数分别为: 1 1 0 1 111 0 11 11 11 1 212 0 1 212 0 21 21 21 22 ( )cos 22 ( ) 22 ( )cos 22 ( ) n k n k n k n k k x k nn k bx k sin nn a arctan b k x k nn k bx k sin nn a arctan b 11 a a 则的基波分量与的基波分量的相位差为: 1( ) x t 2( ) x t 1121 1121 1121 aa =-= arctan-arctan bb 4.3 零点检测法测量相位差原理 过零检测法的基本原理可以有式( 1)来表示,其中 t 为被测信号的周期,为被测信号过零点的时间差,相应的 ta 相位差为: a (1) t =360 t a a 这种相位差测量的方法多基于传统的硬件电路实现。在虚 拟仪器系统中,相位差测量的信号是a/d 采样后的离散信 号,不能用( 1)式计算,通常是采用对 a/d 采样后的信号 进行数字处理后计算得到( 2),(3)。设为被测信号的f 频率,为 a/d 的采样频率,则一个周期内的采样点数 s f ,而相邻两个采样点之间的相位差: s f n = f (2) 360 360 s f tf a 假设用两个数组来保存两列信号的信息,信号u1 的首 次过零点对应数组的第 i 个元素,数组 u2 的首次过零点对 应数组的第 j 个元素,这样式( 1)中的就对应为数组元 ta 素的序号差。则式( 1)就变为式( 3)所 示: 第四章 相位差测量方法原理简介 - 16 - (3)()360() s f jiji f aa 第第五五章章 相相位位差差测测量量方方法法在在 labview 中中的的应应用用 5.1 设计中常用控件功能简介 5.1.1 数据类型 labview 的数据类型与传统编程语言中的数 据类型基本 相似,除了一般的数据类型之外, 还有一些独特 的数据类型。 labview 中的数据 类型包括数字 型(numeric)、布尔型(即逻辑型, boolean)和字符串型 (string);构造数据类型 第五章 相位差原理在 labview 中的应用 - 17 - 包括数组和簇;其他数据类型包括枚举( refnum)、空类型 等等。 数字类型的前面板对象包含在控制模板numeric 子模板 中,传统的数据类型分为变量和常量两种,在某种意义上, labview 的数据也可以这么分, numeric 子模板中的前面板 对象就相当于传统编程语言中的数字变量, 。labview 的子模板包括多种不同形式的控制 和指示,它们 的外观各不相同, 人数字量、滚 动条、水箱、 温度计、旋钮、表头、刻度盘以 及颜色框等, 但本质是完全相同的,都是数字 型,只是外观 不同而已。 在 labview 中布尔型数据即逻辑型数据,它的值为真 (true)或假(false),或者为 1 或 0。布尔型前面板对象包 含在控制模板 boolean 子模板中。模板中有不同有布尔前面 板对象,如不同形状的按钮、指示灯和开关等,这都是从实 际仪器的开关、按钮演化来的,十分形象。采用布尔按钮可 以设计出逼真的虚拟仪器前面板。与数字类型相似,这些不 同的布尔控制也是外观不同,内涵相同,都是布尔型,只有 0 和 1 两个值。 5.1.2 结构 for 循环是 labview 最基本的结构之一,它执行指定次数 的循环,相当于语言中的 for 循环: for (i=0; in; i + ) 第五章 相位差原理在 labview 中的应用 - 18 - labview 中的 for 循环可从框图功能模板 function structure 子模板中创建。大多数情况下,用户使用 for 循环处理数组。这是因为 labview 已经知道了元素的个 数,而且自动变址功能会为用户自动处理迭代:用户所要做 的所有事情是将数组装入循环,迭代次数会与数组中的元素 的个数相等。 移位寄存器( register)和框架通道( channel)两个独 具特色的新概念。移位寄存器的功能是将第 i-1, i-2, i- 3次循环的计算结果保存在 for 循环的缓冲区内,并在第 i 次循环时将这些数据从循环框架左侧的移位寄存器中送出, 供循环框架内的节点使用。在循环框架上的右键弹出菜单中 选择 add shit register 创建。框架通道是 for 循环与循环 外部数据交换的数据通道,其功能是在for 循环开始运行前, 将循环外其他节点产生的数据送至循 环内,供循环框架内的 节点使用。 还可以在 for 循环运行结 束时将循 环框架内节点 产生的数据 送至循环 外,供循环外的节点使用。 用连线 工具将数据连线从循环框 架内直接 拖至循环框架外, labview 会自动 生成一个框架通道。框架 通道有两 面三刀种属性:有 索引(enable indexing)和无索引(disable indexing). 第五章 相位差原理在 labview 中的应用 - 19 - for 循环执行的是包含在 循环框架内的程序节点。其 重 复端口相当于 c 语言 for 中的 i,初始值为 0,每次循环 递 增步长为 1。而且,重复端口的初始和步长在labview 中是 固定不变的,若要用到不同的初始值或步长,可对重复端口 产生的数据进行一定的数据运算,也可用到移位寄存器来实 现。 case 选择结构,相当于 c 语言中的 switch 语句: switch(表达式) case 常量表达式 1:语句 1; case 常量表达式 2:语句 2; case 常量表达式 n:语句 n; default :语句 n+1; 在某种意义上还相当于 c 语言的 if 语句: if(条件判断表达式 ) else 语句选择结构可从框图程序中的功能模板 function structure 中创建。最基本的选择结构是由选择框架 (case frame)、选择端口( selection terminal)、框 架标识符(diagram identifier)以及递增/递减按钮 (increment/decrement button)组成。 第五章 相位差原理在 labview 中的应用 - 20 - 在选择结构中,选择端 口相当于上述 c 语言 switch 语 句中的“表达式”,框图表示符相当于 “表达式 n”。编程 时,将外部控制条件连接至选择端口上,程序运行时,选择 端口会判断送来的控制条件,引导选择结构执行相应框架中 的内容。为与选择框架外交换数据,选择结构也有框架通道。 选择结构的边框通道与 for 循环相类似,但有其自身特点。 当外部数据连接到选择框架上供其内部节点使用时,选择结 构的每一个子框架都能从该通道中获得输入的外部数据;当 选择结构内部的数据需通过框架通道送至外部时,必需在每 一个子框架中都连接一个同数据类型的数据到同一个框架通 道上。这主要是因为选择结构执行时是根据外部控制条件从 其所有的子框架中选择其一执行的,子框架选择非此即彼, 所以每一个子框架都必需连接一个数据。对于一个框架通道, 一个子框架中如果没有连接数据,那么在根据控制执行到这 个子框架时,框架通道便没有向外输出数 据来源程序就会出 错。 labview 选择结构与其他语言的选择结构相比,简洁明了, 结构简单,不但相当于 switch 语句,还可以实现 ifelse 语句功能。 5.1.3 数学运算 labview 的数学运算功能 主要由功能模板 numeric 子模板中的节点 完成。numeric 模板由基本 第五章 相位差原理在 labview 中的应用 - 21 - 的数学运算节点,类型转换 节点、三角函数节点、对数 节 点复数节点和附加常数节 点组成。 基本数学运算节点不仅实现加、减、乘、除等基本运算, 还可以实现求整、开方、求幂、数组求和、求积和复合运算 等功能。基本运算节点支持数值输入。但与一般编程语言提 供的运算符相比, labview 的数学运算节点功能更强,使用 更灵活,它不仅支持单一的数值量输入,还可以支持处理同 类型的复合型数值量,比如由数值量构成的数组、簇和簇数 组等。数值类型包括浮点数、整数和复数。 模板中的 trigonometric 子模板可实 现各种三角函数运 算,该模板中的节点 均心为弧度为单位。 节点的输入可以是 数字标量、数字量的 数组或簇、数字量 的簇的数组。该模板 包括了大部份常用 三角函节点,如 sinx、cosx、tanx、arcsinx、arctanx 等。 基本运算模板还可以通过类型转换节点在各种不同的数据 类型之间进行转换,通过对数节点和复数节点进行对数与复 数的运算。 5.1.4 比较运算 比较运算就是通常所说的关系运算,比较运算节点包含在 comparison 子模板中。中 labview 中可以进行以下几种类 型的比较:数字值的比较、布尔值的比较字符串的比较以用 第五章 相位差原理在 labview 中的应用 - 22 - 簇的比较。比较节点在比较两个数字值时,会先将其转换为 同要类型的数字。两个布尔 值比较时, ture 比 false 值大。 字符串的比较是按照字符 在 ascii 表中的等价数字进行比较 的。 创建一个数组,可从控制模板中的array & cluster 子 模板中创建。但这时只不过是一个数组框架,不包含任何内 容,再根据需要将相应数据类型的前面 板对象放入数组框架 中,更得所需的数 组类型。 当有一串数据需要处理时, 它们很可能是一个数组,大 多数的数组是一维数组,少 数是二维数组,极少数为三 维数组。在 labview 上可以 创建数字类型、字符串类型、布 尔类 型以及其他任何数据类 型的数组。数组 常由 loop 循环来创建,其中,其中 for 循环是最佳的,因 为在循环开始时 它已经分配好了内存。数组是 labview 中 常用的数据类型之 一,与其他编程语言相比, labview 中的 数组更加灵活,独 具特色。数组由三部份组成:数据类型、 数据索引和数据。 另外,数组在创建之初都是一维数组,如 果要用到二维以上 的数组,用鼠标在索引显示的左下角向下 拖动,或者在数组 的右键弹出菜单中选择 add dimension 即可添加数组维数。 对于一个数组进行操作,无非是求数组的长度、对数、对 第五章 相位差原理在 labview 中的应用 - 23 - 数据排序、取出数组中的元 素、替换数组中的元素或初 始 化数组等各种运算。传统 语言编程主要依靠各种数组函数 来实现这些运算,而在 labview 中,这些函数是以功能函数 节点形式表现的。下面介绍一下常用的功能: (1). array size 返回输入数组的长度。其输入为一个n 维数组,输出为 该数组各维包 含元素的个数。 (2)index array 返回输入数组中由输入索引指定的元素。当输入数组为一 维数组时,节点返回的是数组中与输入索引对应的元素。当 输入数组是 n 维数组时,索引端口( index terminals)的 个数必需与数组的维数相对应 (3).reshape array 改变数组的维数。输出数组的维数由节点图标左侧 demission size 端口的个数决定。如把一个一维数组转换成 二维数组。 (4). initialize array 初始化数组。节点的输入输出端口与数组的定义有关。数 组的维数由节点左侧 dimension size 端口的个数决定,数 组中所有元素都相同,均等于输入的element 值。 (5). build array 建立一个新数组。节点将从左侧端口输入的元素功数组按 从上到下的顺序组成一个新数组。 (6). array max & min 返回输入数组中的最大值和最小值,以 第五章 相位差原理在 labview 中的应用 - 24 - 及它们在数组中 所在的位置。 数组可以是任意维的,当数 组中有多个元素同为最大值或最小值时,节点只返回第一 个最大值或最少值所在的位置。 5.1.5 簇 ()创建簇控制和显示 在前面板上放置一个簇壳( cluster shell)就创建了 一个簇。然后你可以将前面板上的任何对象放在簇中。例如 数组,你也可以直接从 control 工具板上直接拖取对象堆 放到簇中。一个簇中的对象必须全部是control,或全是 indicator,不能在同一个簇中组合 control 与 indicator,因为簇本身的属性必须是其中之一。一个簇将是 control 或 indicator,取决于其内的第一个对象的状态。 如果需要可以使用工具重置簇的大小。右图所示是一个含 个 control 的簇。也可以在流程图上用类似的方法创建簇常 数。 如果你要求簇严格地符合簇内对象的大小,可在簇的边界 上弹出快速菜单选择自动定义大小( autosizing) 簇的序(order) 簇的元素有一个序,它与簇内元素的位置无关。簇内第一 个元素的序为 0,第二个是 1,等等。如果你删除了一个元 素,序号将自动调整。如果你想将一个簇与另一个簇连接, 这两个簇的序和类型必须同一。 如果想改变簇内元素的序,可在快速菜单中选择 第五章 相位差原理在 labview 中的应用 - 25 - reorder controls in claster,这时会出现一个窗口,在 该窗口内可以修改序。 ()使用簇与子 vi 传递数据 一个 vi 的连接窗口最大有 28 个端子,如果你不希望使 用全部 28 个端子传递数据,这既烦琐又易出错。通过把控制 或显示对象捆绑成一个簇的方法,仅使用一个端子就可以实 现该功能。 捆绑(bundle)数据 bundle 功能将分散的元件集合为一个新 的簇,或允许你 重置一个已有的簇中的元 素。可以用位置工 具拖曳其图标的 右下角以增加输入端子的 个数。最终簇的序是取决于被捆绑 的输入的顺序。右图中 bundle 图标中部的 claster 端子用于用新元素重置原簇中 的元素。 分解(unbundle)簇 unbundle 功能是 bundle 的逆过程,它 将一个簇分解为 若干分离的元件。如果你 要对一个簇分解, 就必须知道它的 元素的个数。 labview 还 提供一种可以根据元素的名字来捆 绑或分解簇的方法,稍后 介绍。 第五章 相位差原理在 labview 中的应用 - 26 - 5.1.6 波形显示控件 labview 是以模拟真实仪器操作面板提供了强在的交互式 界面设计功能。传统的仪器 仪表中,除了最简单的数码 显 示外,能够显示测量信号波形 和仪器工作状态的 crt 荧光 屏正在广泛应用,包括数字 示波器、频谱分析仪和逻 辑分 析仪等,这些高级 的仪 器都必需具备实时 图形 显示能力。 一幅精心设 计的画面为用户提供的 信息量,远远超过完全 由数字或文字组成的报 告。因此能够将大量测量数据转换为 意义明确的显示曲线或 三维图形的控件是设计虚拟仪器所必 需的。 按照处理测量数据的方式和显示过程的不同, labview 波形显示控件主要分为两大类,一类为事后记录呼 (graph),另一类为实时趋势图( chart),这两类控件都 是用来对波形或图形进行显示的,它们的区别在于两面三刀 者的数据组织方式及波形刷新方式不,同。结于事后记录图 graph 方式来说,它的基本数据结构为数组,也就是就 graph 显示是将构成数组的全部测量数据一次显示完成;而 实时趋势图 chart 方式是实时显示一个或几个测量数据,而

温馨提示

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

评论

0/150

提交评论