基于LabVIEW的自动控制原理试验系统的设计.docx
- 文档编号:11754935
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:37
- 大小:1.48MB
基于LabVIEW的自动控制原理试验系统的设计.docx
《基于LabVIEW的自动控制原理试验系统的设计.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW的自动控制原理试验系统的设计.docx(37页珍藏版)》请在冰点文库上搜索。
基于LabVIEW的自动控制原理试验系统的设计
基于LabVIEW的自动控制原理试验系统的设计
06测控
赵雷
摘要
本文基于NI公司的虚拟仪器软件开发环境LabVIEW,研究以图形化软件编程方法和集成开发环境来实现《自动控制原理》课程虚拟实验系统的设计的技术和方法。
本文首先分析了虚拟仪器的构成、分类与应用,选择图形化软件LabVIEW作为开发环境;其次,提出基于LabVIEW的自动控制原理实验系统的方案,包括系统结构、功能和性能特性以及设计流程和方法,并逐一实现各子实验系统;最后再介绍了几个实验如何利用LabVIEW来进行制作。
关键词:
虚拟仪器、自动控制原理实验、Labview
Abstract
ThispaperisbasedonVirtualInstrumentsoftwareLabVIEWofNICo.Andgraphicalsoftwareprogrammingintegrateddevelopmentenvironmenttoachievethe"AutomaticControlTheory"Virtualexperimentsystemdesigntechnologiesandmethods.
Firstly,theVirtualInstrumentisbrieflyintroducedinthepaper,includingtheform,classificationandtheapplication.ThenthegraphicsmodesoftwareLabVIEWisselectedasdevelopmentenvironment.Secondly,theprojectofexperimentsystemofautomaticcontroltheorybasedontheLabVIEWisgiven;includingsystemstructure,functionandperformancecharacteristicsaswellasthedesignprocessandmethods,thentheexperimentalsubsystemisdesignedonebyone.Finallyre-introducedanumberofexperimentsonhowtouseLabVIEWtocarryoutproduction.
Keywords:
virtualinstrument(VI),experimentsystemoftheprincipleofautomaticcontrol,Labview
第一章前言
仪器技术经历了模拟仪器、数字式仪器、智能仪器、叠架式仪器系统、虚拟仪器的发展历程。
现代化技术的进步以计算机技术的进步为代表,不断革新的计算机技术,从各个层面上影响并引导着各行各业的技术更新,使仪器仪表在许多方面突破了传统的概念:
其中最为显著地就是虚拟仪器的出现和发展,以及虚拟仪器为科学研究和社会生产提高生产率,测量精度以及系统性能方面做出的贡献。
虚拟仪器技术的出现,使得用户可以自己定义仪器,灵活地设计仪器系统,以满足多样化的实际需求,用户可以用虚拟仪器来组建适合自己的任何测控系统,再也不必将自己封闭在功能固定、性能单一而且常常价格昂贵的传统仪器中。
虚拟仪器系统作为一种基于计算机技术的新型仪器仪表系统,具有功能强、精度高、测量速度快、自动化程度高和良好的人机界面等诸多优点,特别是它高度的灵活性,以及标准化总线和网络化、软件化的仪器开发平台,为设计具有易用好、通用性强、较好的可维护性的过程控制系统和工业自动化系统提供了优秀的解决方案。
虚拟仪器系统是测控技术和计算机技术相结合的革命性产物。
它从根本上更新了仪器的概念,其有传统仪器无法比拟的优势,它的出现是仪器发展史上的一场革命,代表着仪器发展的最新方向。
第二章虚拟仪器技术的介绍
2.1虚拟仪器的概述
2.1.1虚拟仪器的概念
虚拟仪器(VirtualInstrument,简称VI)是仪器技术与计算机技术深层次结合的产物,它是全新概念的仪器,它通过软件将计算机硬件资源(如微处理器、内存、显示器)与仪器硬件资源(如A/D、D/A、I/O信号调理等)结合起来,操作人员通过友好的图形界面及图形化编程语言控制仪器的运行,完成对被测试量的采集、分析、判断、显示、存储及数据生成。
虚拟仪器的概念是适应卡式仪器发展而提出的。
传统仪器主要由控制面板和内部处理电路组成,而卡式仪器由于自身不带仪器面板,所以必须借助计算机强大的图形环境,建立图形化的虚拟面板,完成对仪器的控制、数据分析和显示。
虚拟仪器就是在通用计算机上加上一组软件和硬件,使得使用者在操作这台计算机时就象是在操作一台他自己设计的传统电子仪器。
2.1.2虚拟仪器的特点
虚拟仪器的特点在于:
(1)功能由用户自己定义;
(2)可方便地同外设、网络及其它应用连接;(3)软件是关键部分;(4)价格低廉,可重复利用;(5)技术更新快;(6)基于软件体系的结构,大大节省开发维护费用;(7)基于计算机技术开放的功能模块可构成多种仪器。
由其特点来看,虚拟仪器适应了现代化生产和科学研究对仪器的多品种、高精度、功能强、自动化程度高、实时性好的要求。
虚拟仪器与传统仪器的最大区别是,它是由用户定义的,灵活多变的。
而传统仪器是由工厂生产的,其功能和技术指标是由厂家定义好的,用户基本上处于被动操作和使用状态。
虚拟仪器不仅把传统仪器的现有功能搬到了计算机显示屏上,而且还利用了计算机的计算技术和数字信号处理技术,增加了传统仪器所没有的计算机功能和分析功能。
表2-1简单对比了虚拟仪器与传统仪器的性能比较
虚拟仪器
传统仪器
开发和维护费用低
技术更新周期短(0.5—1年)
软件是关键
价格低
开放灵活与计算机同步,可重复使用和重新配置
可用网络联络周边仪器
自动化,智能化,多功能,远距离传输
开发和维护费用高
技术更新周期长(5—10年)
硬件是关键
价格昂贵
固定
只可连有限的设备
功能单一,操作不便
2.1.3虚拟仪器的构成
虚拟仪器主要包括三部分:
数据输入部分(包括模拟量输入和数字量输入);数据输出部分(包括模拟量输出和数字量输出);数据处理部分(包括数据的处理控制和显示等),有些虚拟仪器还包含有传统的仪器前两部分的实现是由插入计算机插槽的数据采集板(即所谓的DAQ卡)实现的,第三部分是由软件实现的。
虚拟仪器的关键是软件。
一个好的虚拟仪器开发平台应该使用户仅根据自己的专业知识,定义各种界面模式,设置检测方案或步骤,该软件平台就能完成相应的检测任务,并给出非常直观的分析结果。
虚拟仪器的组成与传统仪器组成的对比图如图2-1
图2-1虚拟仪器的组成与传统仪器组成的对比图
2.1.4虚拟仪器的发展
虚拟仪器技术目前在国外发展很快,从而是世纪70年代的GPIB到80年代的VXI,再到90年代出现的PCI总线,直到1997年NI公司推出了PXI测平台,目前是多种平台共存的状态。
今年来,世界各国的虚拟仪器公司开发了不少虚拟仪器开发平台软件,其中最具影响力的是NI公司的LabVIEW软件和LabWindows/CVI开发软件。
LabVIEW采用图形化编程方案,是非常实用的开发软件。
LabWindows/CVI是为熟悉C语言的开发人员准备的,在Windows环境下的标准ANSIC开发环境。
除此之外,还有美国HP公司的HP—VEE和HPTIG平台软件,美国Tektronix公司的EZ—Test和Tek—TNS软件……
目前虚拟仪器的系统开发采用的总线包括传统的RS232串行总线,GP—IB通用接口总线,VXI总线,以及已经被PC广泛采用的USB穿行总线和IEEE13894总线。
世界各国的公司,特别是美国NI公司,为使虚拟仪器能够适应上述各种总线的配置,开发了大量的软件以及适应要求的硬件(插件),可以灵活地组建不同复杂程度的虚拟仪器自动测试,测控系统。
NI公司是世界上最大的虚拟仪器制造商,从NI的发展规模可以看出虚拟仪器的发展状况,世界500强企业中有85%的制造控制性企业在应用NI的产品,全世界超过5000个实验室在利用LabVIEW和虚拟仪器教学生们使用最新的测量和设计技术。
在国内已有很多院校的实验室引入了虚拟仪器系统,进行教学及研究。
此外,国内已有许多家企业在研制PC虚拟仪器。
2.2虚拟仪器开发平台LabVIEW
2.2.1LabVIEW的概述
LabVIEW是LaboratoryVirtualInstrumentEngineeringWorkbench的缩写,意思就是“实验室虚拟仪器工程平台”。
它由美国NI公司开发的、优秀的图形化编程开发平台,是一个使用图形符号来编写程序的编程环境。
实际上它就是用图标来进行编程的一个开发环境,通过在表示不同功能节点的图标之间连线来完成预想的程序,在这一点上,它完全不同于以往的基于文本的传统开发语言(例如C、C++、Java以及Basic)。
LabVIEW不但是一种编程语言还是一个交互式的开发以及运行系统,它被设计给那些需要编程的工程师以及科学家使用。
LabVIEW可以在Windows、MacOSX以及Linux这些操作系统上使用。
它开发出来的程序除了可以在这些平台上运行,还可以运行在MicrosoftPocketPC、MicrosoftWindowsCE、PalmOS以及很多嵌入式平台上,例如FPGAs、DSPs以及微处理器。
LabVIEW所采用的图形化开发语言又叫做"G"(表示graphical)语言。
通过这种语言,可以极大的提高工作效率。
有些程序如果使用传统的开发语言的话可能需要数周的时间才能够完成,在采用了LabVIEW之后可能只需要短短的几个小时就完成了。
因为LabVIEW是专门设计为用来完成数据的采集、分析以及显示的。
并且由于它是图形化的,易于使用,对于模拟、演示概念、完成通用编程甚至用来教授基本的编程概念都是一个理想的工具。
相对于传统的标准仪器来说,LabVIEW由于是基于软件的,所以提供了更大的灵活性。
通过LabVIEW开发的虚拟仪器是由用户而不是仪器生产商定义仪器功能的。
一台计算机、数采板卡和LabVIEW的结合就能够变成一个可配置的虚拟仪器来完成用户设定的任务。
通过LabVIEW就可以用传统仪器几分之一的价格创建一个用户所需要的虚拟仪器。
当需要改变这个虚拟仪器的时候,只需几分钟的时间通过LabVIEW修改就可以了。
为了便于使用,LabVIEW还集成了大量的函数库以及子程序来帮助完成绝大多数的编程任务。
在使用这些子函数的时候,可以忘掉传统编程语言中的令人头痛的指针操作、内存分配等编程问题。
除此之外,LabVIEW还包含了针对应用的数据采集(DAQ)、GPIB、串口、数据分析、数据显示、数据存储以及Internet网络通信的函数库。
此外,LabVIEW是一个跨平台的开发工具,在大多情况下,一个在运行Macintosh计算机上写的LabVIEW程序可以直接拷贝到运行Windows的计算机上运行。
可以在很多工业领域可以看到LabVIEW的应用,包括了工控、生物、化工等等。
2.2.2LabVIEW的工作原理
我们把LabVIEW的程序称为“VI”,每一个VI都有三个主要组成部分:
前面板,框图和图标。
1、前面板(frontpanel)
前面板(frontpanel)是VI的交互式用户界面,它包括旋钮,按钮,图形及其他控件(用于用户输入)和指示器(用于程序输出)。
用户可以使用鼠标和键盘进行输入,然后在屏幕上观察程序产生的结果。
图2-2VI前面板
2、框图(blockdiagram)
框图(blockdiagram)是VI的源代码,由LabVIEW得图形化编程语言即G语言构成,框图是实际可执行程序。
框图程序由端口,节点,图框和连线构成,其中端口被用来同程序前面板的控制和显示传递数据,节点被用来实现函数和功能调用,框图被用来实现结构化程序控制命令,而连线则代表了程序执行过程中的数据流,定义了框图内的数据流动方向。
图2-3VI的框图
3、选项板(palette)
选项板(palette)提供了创建、编辑用户VIs的前面板、框图时所需要的一些选项。
LabVIEW中有以下三个选项板。
(1)工具选项板:
工具选项板既可用在前面板设计时,也可用在框图设计时,它包括了创建、编辑、调试前面板及框图对象的一些工具(图2-4a)。
图2-4a工具选项板图
(2)控件选项板:
该选项板用在前面板设计时,其中包括了创建用户界面时所需要的各种控件、指示器(图2-4b)。
图2-4b控件选项板图
(3)函数选项板:
函数选项板用于框图设计时,其中包括了对VIs进行编程时可使用的一些标准模块,如算术运算、文件IO、仪器IO、数据采集等模块(图2-4c)。
图2-4c函数选项板
第三章基于虚拟仪器技术的自动控制原理实验系统的建立
3.1自动控制原理实验系统的概述
自动控制原理是一门理论性、实践性较强的工科专业基础课。
实践环节对于学生理解与掌握课程中抽象的理论概念起着至关重要的作用。
目前,高校实验室常用的自动控制原理实验仪器有模拟实验装置、小功率随动系统等。
其中,以模拟实验装置的应用居多。
模拟实验装置以运算放大器、电阻、电容及电位器等模拟器件为基础,通过接线可以构成控制系统中的典型环节、二阶及三阶以上的高阶系统,参数选择范围较大,可以灵活地对控制系统进行模拟。
若用常规仪器构建自动控制原理实验室,则需要大量的经费,并且仪器体积都较庞大,使实验室显得的笨重且设备的重复利用率不高。
自动控制原理课程教学中开设实验已有多年的历史。
远的不论,从二十世纪八十年代起至今的二十几年间已发生了许多变化。
就实验设备而言,在八十年代是电子模拟装置+双笔记录仪或示波器;在九十年代是电子模拟装置+PC机;到二十一世纪后开始直接用装有MATLAB、LabVIEW等软件的PC机做计算机仿真及更多的实验。
就实验内容而言,在二十世纪八十年代受电子模拟装置的限制,只能做典型环节动态特性实验等少数几项实验;PC机的使用不但使原先的实验结果可以随意记录和绘图显示,还使实验项目增添了根轨迹图和频率特性图分析等项目;MATLAB、LabVIEW软件的使用更是把自动控制原理实验内容变得丰富多彩,几乎所有的控制原理分析技术都可用实验的方式显现。
3.2基于LabVIEW的自动控制原理虚拟实验系统的设计
3.2.1RLC电路传递函数模型的建立
如图2-1a所示的RLC电路中,电容电压
与电源电压
之间的关系可用二阶微分方程来描述:
LC
+RC
+
=
所以
与
之间的传递函数可写为:
=
=
图2-1aRLC电路
利用Labview控制设计工具包实现RLC电路的传递函数模型(具体步骤)
1:
新建“RLC电路的传递函数模型.VI”,在前面板上添加自定制的电阻、电容和电感控件。
2:
基于While循环结构实现这个程序,在框图中添加While循环结构,并在循环结构内添加“CDConstructTransferFunctionModel.VI”。
按照前面推到出的传递函数模型参数由电阻、电容、电感值计算出相应的分子多项式和分母多项式系数数组后,传递给“CDConstructTransferFunctionModel.VI”的“Numerator”和“Denominator”参数进行建模。
3:
为了直观起见,再框图中添加“CDDrawTransferFunctionEquation.VI”,绘制出该模型的传递函数形式,并在图中显示出来。
最终程序的前面板和框图
图2-1b运行后的前面板
图2-1c框图
3.2.2二阶系统的单位阶跃响应(各种阻尼状况下)
典型二阶系统的方块结构图如图2-2a所示:
图2-2a
研究二阶系统分别工作在ξ=1,0〈ξ〈1,ξ〉1,ξ=0等几种状态下的阶跃响应
利用Labview控制设计工具包实现二阶系统的单位阶跃响应(具体步骤)
最终程序的前面板和框图
图2-2b运行后的前面板
图2-2c框图
3.2.3二阶连续系统的多种响应曲线
典型二姐连续系统的传递函数为:
=
,试对该系统建立模型,并画出在固有频率
=5,阻尼系数
=0.2时,分别绘出系统的以下各条响应曲线:
(1)脉冲响应曲线;
(2)阶跃响应曲线;(3)初始条件为x=3下的零输入相应曲线;(4)正弦激励下的响应曲线
利用Labview控制设计工具包实现二阶连续系统的多种响应曲线(具体步骤)
1:
新建“二阶连续系统的多种响应曲线.VI”,首先使用“CDConstructTransferFunctionModel.VI”对这个二阶连续系统进行建模,在此使用符号化变量的表达式,以便对固有频率和阻尼系数赋值。
2:
再对建好的模型调用“CDImpulseResponse.VI”、“CDStepResponse.VI”、“CDInitialResponse.VI”和“CDLinearSimulation.VI”分别绘出系统的脉冲响应曲线、阶跃响应曲线、零输入响应曲线和正弦激励下的响应曲线。
最终程序的前面板和框图
固有频率
=5,阻尼系数
=0.2时
脉冲响应曲线(如图2-3a):
图2-3a
图2-3b框图
3.2.4复杂模型的组合实例
分析系统结构,可以知道整个系统式经过以下几个步骤组合而成的。
传递函数为
的单元与传递函数为
的单元并联,然后与传递函数为
的单元串联,最后的输出经由传递函数为常数8的回路负反馈至输入点。
利用Labview控制设计工具包实现复杂模型的组合实例(具体步骤)
1:
新建“复杂模型的组合实例.VI”,首先对上述几个单元的传递函数进行建模,添加若干个“CDConstructTransferFunctionModel.VI”并输入恰当的参数就可实现这些单元的传递函数模型。
2:
添加“CDParallel.VI”,通过多态VI选择器选为“TFandTF”型,并将传递函数为
的单元模型和传递函数为
的单元模型连接至该VI的输入参数,这步骤的作用是将这两个单元进行并联。
3:
添加“CDSeries.VI”,通过多态VI选择器选为“TFandTF”型,并将传递函数为
的单元模型和上一步骤中得到的并联结果连接至该VI的输入参数,这一步骤的作用是将该单元与上一步骤中得到的结果进行串联。
4:
添加“CDFeedback.VI”,通过多态VI选择器选为“TFandTF”型,并将传递函数为8的单元模型与上一步骤中得到的串联结果连接至该VI的输入参数,这一步骤的作用是将该单元作为负反馈回路传递回上一步骤中得到的串联结果的输入点。
5:
再添加“CDDrawZero-Pole-GainEquation.VI”,并将上一步骤中得到的总结果输入给VI,以便绘出整个系统的零极增益模型,同时求出了零极分布。
最终程序的前面板和框图
图2-4a前面板
图2-4b运行后的前面板
图2-4c框图
3.2.5系统根轨迹图绘制
某个单位反馈系统的开环传递函数为:
=
,试对该系统画出根轨迹。
利用Labview控制设计工具包实现系统根轨迹图的绘制(具体步骤)
为了方便建模,将原系统可以视作两个系统
和
的串联,对系统
使用传递函数模型建模,对系统
使用零极点增益模型建模,然后再进行串联组合就可得到整个系统的传递函数。
最终程序的前面板和框图
开关指向多项式形式(如图2-5a):
图2-5a
开关指向零极点形式(如图2-5b):
(对系统
零极点)
图2-5b
图2-5c框图
3.2.6阻尼系数对二阶连续系统Bode图的影响
典型二阶连续系统的传递函数为:
=
,试对该系统建立模型,并绘出在固定频率
=5下,阻尼系数
取不同值时的系统Bode图,并比较不同阻尼系数值对系统频率响应的影响
利用Labview控制设计工具包实现阻尼系数对二阶连续系统Bode图的影响(具体步骤)
1:
新建“阻尼系数对二阶连续系统Bode图的影响.VI”。
2:
添加“CDBode.VI”,并将建好的模型连接至该VI,以绘出系统Bode图。
为了保留多次绘制的结果,在程序中将每次的绘制数据添加至一个历史数据组中,在传给波形图进行绘制。
最终程序的前面板和框图
如图2-6a为
=5,
=0.1、0.5、1、2下的前面板
图2-6a
其中黑色线代表
=0.1时候的图像,红色线代表
=0.5时候的图像,绿色线代表
=1时候的图像,蓝色先代表
=2时候的图像
图2-6b框图
3.2.7Nyquist图的绘制及稳定性判断
设某个系统的开环传递函数为:
=
,试利用Nyquist稳定判据判断能够使系统闭环稳定的增益K的范围(设增益K总为正值)。
分析:
因为有参数K的限制,使得对系统
直接进行研究并不十分方便,所以考虑研究系统
=
的特性,然后再间接分析原系统的特性。
利用Labview控制设计工具包实现Nyquist图的绘制及稳定性判断(具体步骤)
1:
首先对系统
进行建模,使用传递函数模型即可。
2:
然后判断系统
在右半s平面是否有极点以及右半s平面极点的个数。
通常的手工做法是利用劳斯判据,而对于较复杂的多项式劳斯判据会显得比较繁琐,实际上利用Labview控制设计工具包中的“CDPoles.VI”就可以很容易地得到系统的极点分布情况了。
该系统的极点有三个,其中有两个在右半s平面。
3:
绘制系统
的Nyquist轨迹图。
要使系统稳定,Nyquist图必须沿逆时针方向围绕(-1,0)点两次。
使用“CDPoles.VI”分析系统极点和使用“CDNyquist.VI”绘制系统Nyquist图的程序前面板和框图
4:
判断轨迹绕向。
初步绘出的Nyquist图中并未直接给出轨迹的绕行方向,这就需要使用“CDGetFrequencyData.VI”配合,得到Nyquist图上各点的精确坐标。
最终程序的前面板和框图
图2-7a运行后的前面板
图2-7b框图
3.2.8系统稳定裕量计算
设某个系统的开环传递函数为:
=
,设系统增益K变化区间为(0,200),是研究系统增益K对闭环系统增益裕量和相位裕量的影响。
分析:
系统稳定裕量是用来说明系统相对稳定性的度量,氛围增益裕量和相位裕量两类。
利用Labview控制设计工具包实现系统稳定裕量计算(具体步骤)
1:
首先对系统建模,使用零极点增益模型即可,为了方便观察系统增益K变化时的影响爱你个,这里将系统增益K用旋钮空间来表示。
2:
然后使用“CDGainandPhaseMargin.VI”计算系统的稳定裕量,注意指定输入参数“MagnitudeScale”为dB,表示幅频单位使用分贝。
该VI输出参数中“MagnitudePlot”和“PhasePlot”分别用于直接绘出系统Bode图及扶贫穿越点和相频穿越点,若得到精确的穿越点频率值和裕量值,可以通过参数“GainandPhaseMargins”获得。
最终程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW 自动控制 原理 试验 系统 设计