基于LabVIEW的控制系统仿真(毕业设计论文).doc_第1页
基于LabVIEW的控制系统仿真(毕业设计论文).doc_第2页
基于LabVIEW的控制系统仿真(毕业设计论文).doc_第3页
基于LabVIEW的控制系统仿真(毕业设计论文).doc_第4页
基于LabVIEW的控制系统仿真(毕业设计论文).doc_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

基于LabVIEW的控制系统仿真摘 要在控制理论教学和实验中,存在着设备短缺、教学手段单一等问题,采用虚拟控制系统实验方式可有效地解决这些问题。本文对控制系统仿真的意义与研究现状作了介绍,提出并确定了基于LabVIEW的控制系统仿真的实施方案。应用NI公司的LabVIEW 2009、控制设计工具包作为软件开发工具,实现了控制系统的建模、分析与设计这一系列过程的计算机仿真。经过编写程序和发布应用程序,最终开发出了一种交互式实验教学系统。该系统包含信号发生器、典型环节、质点弹簧阻尼器系统和一级倒立摆系统四个子模块,用户可进行控制系统建模、性能分析、PID设计、LQR设计等方面的研究。各个子模块运行良好,整个系统具有操作简单、界面友好和实时交互的特点;对于教学和实验的改革和创新具有一定的指导意义。文中详细介绍了该实验教学系统的设计思路与设计过程。主体部分是对系统各个子模块的理论分析、相应的算法分析和虚拟仪器程序的编写,此外还涉及程序的动态调用和发布应用程序等内容。关键词:控制系统;仿真;LabVIEW;倒立摆;实时交互Simulation of Control System Based on LabVIEWAbstractIn the teaching and experimental process of control theory, there exist problems such as equipment shortages, monotonous teaching methods and etc. We can use Virtual Instrument to solve these problems effectively. This paper introduces the significance and research status of the control system simulation, puts forward and determines the implement scheme of the Control System Simulation Based on LabVIEW. Use NIs products (LabVIEW 2009, Control Design Toolkit) as software development tools to realize computer simulation of the control system modeling, analysis and design process. After writing programs and publishing applications, we can achieve an interactive experimental and teaching system. The system consists of four sub-modules: signal generator, typical elements, the mass-spring-damper system and the single inverted pendulum system. Users can do research in control system modeling, performance analysis, PID design, LQR design and other aspects. Each sub-module of the system runs well, the whole system has the features as follows: simple, friendly interface and real-time interactive. It will provide the teaching and experiment field with reform and innovation. This paper describes the thinking and design process of the system in details. Theoretical analysis and algorithm analysis for the sub-module and Virtual Instrument programs writing are the main parts. It also discusses the dynamic program invocation and publishing applications and so on.Keywords: Control System; Simulation; LabVIEW; Inverted Pendulum; Real-Time InteractionI目 录1 绪论11.1 课题背景11.2 控制系统仿真的意义11.3 控制系统仿真的研究现状21.4 本课题研究内容22 LabVIEW概述42.1 虚拟仪器技术42.2 控制设计工具包53 系统方案的选定73.1 系统概述73.2 系统方案的比较与选定73.3 系统子模块的规划94 系统设计104.1 信号发生器104.1.1 确定方案104.1.2 VI设计104.2 典型环节134.2.1 建模及理论分析134.2.2 VI设计144.3 质点弹簧阻尼器系统184.3.1 建模与模型转换及其VI设计184.3.2 模型分析及其VI设计214.3.3 PID设计及其VI设计254.4 一级倒立摆系统294.4.1 建模与分析及其VI设计304.4.2 LQR设计及其VI设计364.4.3 实时仿真及其VI设计414.5 动态调用VI的设计444.5.1 VI的动态调用444.5.2 VI设计455 发布应用程序475.1生成独立可执行应用程序475.2生成安装程序496 总结和展望526.1 总结526.2 展望52参考文献53附 录55致 谢70I致 谢1 绪论1.1 课题背景控制理论是众多工科专业普遍开设的一门专业基础课,由于控制理论较抽象、课堂教学手段单一,学生接受起来较为困难。而随着高等教育规模的不断扩大,原有教学仪器设备资源相对短缺,也无法满足实验教学的需要。旧的实验教学模式越来越不适应时代发展的要求,教学和实验的体制和模式的改革势在必行。在控制理论教学中,实验能够使学生加深对所学知识的理解,提高将理论应用于实践的能力,是教学活动中不可缺少的环节,对于培养学生的综合素质和实践技能都至关重要。采用虚拟实验的方式,一方面能够给学生提供更充分的时间和更多的机会来接触和研究所做的实验,打破了传统的实验模式,给学生更多思考和分析时间,培养学生理论联系实际的思维方式;另一方面由于虚拟实验可以为硬件(实验设备)和软件(数据分析)的结合,这样可以激发学生的兴趣来自己设计和改进虚拟实验的程序,给他们更多的自主性,调动创新意识,培养创新能力。本课题是基于虚拟仪器技术,开发一种交互式实验教学模块,实现常见的典型控制系统的仿真。输入相关参数,即可得出仿真结果;将抽象的、静态的理论知识转化为具体的、动态的演示模型。根据教学需要,将控制理论中常见的、典型的实例利用相关软件工具(如LabVIEW、MATLAB等)实现建模、分析、设计过程的仿真,一方面有利于理论教学工作的开展;另一方面对于实验教学会起到一定的指导作用;此外控制系统的综合设计也将有利于学生综合掌握控制理论,而不是将控制理论看作章节割裂的理论。以上几点对于教学实际具有非常现实的意义。1.2 控制系统仿真的意义随着计算机仿真理论与技术的发展,目前各个科学与工程领域均已开展了仿真技术的研究。系统仿真是通过对系统模型的实验,研究一个存在或设计中的系统。系统仿真技术已经被公认为是一种新的实验手段,在科学与工程领域发挥着越来越重要的作用。早期的控制系统设计可以由纸笔等工具容易地计算出来。但随着控制理论的迅速发展,只利用纸笔以及计算器等简单的运算工具难以达到预期的效果,加之计算机领域取得了迅速的发展,于是很自然地出现了控制系统的计算机辅助设计方法。控制系统的计算机辅助设计技术的发展目前已达到了相当高的水平,并一直受到控制界的普遍重视。“控制系统仿真”就是利用计算机研究控制系统性能的一门学问,它依赖于现行自动控制原理课程的基础知识,但侧重点不同9。控制系统仿真更侧重于控制理论问题的计算机求解,可以解决以往控制原理不能解决的问题,使学生或科研工作者将主要精力集中在控制系统理论和方法上,而不是花费在没有太大价值的底层重复性机械劳动上。这样可以对控制系统建模、分析、设计过程有较好的整体了解,避免“只见树木,不见森林”的认识偏差,提高控制器设计的效率和可靠性。1.3 控制系统仿真的研究现状控制系统仿真的研究与计算机仿真理论与技术的发展是密不可分的,国际上控制系统计算机辅助设计软件的发展大致分为几个阶段:软件包阶段、交互式语言阶段及当前的面向对象的程序环境阶段。其中影响较大、具有代表性的软件有:l 瑞典Lund工学院教授主持开发的一套交互式CACSD软件 INTRAC;l 日本的古田胜久 (Katsuhisa Furuta) 教授主持开发的DPACS-F 软件l 英国Manchester理工大学的控制系统计算机辅助设计软件包l 英国剑桥大学推出的线性系统分析与设计软件CLADPl NASA Langley 研究中心的Armstrong 开发的LQ控制器设计的ORACLSl 美国Mitchell与Gauthier Associate 公司推出的仿真语言ACSLl 美国IBM公司开发的仿真语言CSMPl 美国学者 Cleve Moler 等人推出的交互式MATLAB 语言l The MathWorks公司推出的图形化的基于框图的Simulink仿真环境我国较有影响的控制系统仿真与计算机辅助设计成果有:中科院系统科学研究所韩京清研究员等主持的国家自然科学基金重大项目开发的CADCSC软件;清华大学孙增圻、袁曾任教授的著作和程序;北京化工学院吴重光、沈成林教授的著作和程序,以及中科院沈阳自动化研究所马纪虎研究员主持开发的CSMP-C仿真语言等8。在上述软件中,MATLAB语言能反映当今系统仿真领域的最高水平,同时也是最实用的软件。当然,这并不意味着我们在控制系统仿真方面仅仅满足于使用MATLAB语言而不考虑新的可行方案。例如,LabVIEW控制与仿真工具包既可实现控制系统仿真又弥补了MATLAB人机界面设计不方便、无法进行端口操作、不能实现实时监控等不足之处,在一定程度上可以替代MATLAB成为控制系统仿真的有力工具。1.4 本课题研究内容本课题结合控制理论教学与实验的实际需要,选取控制理论中常见的、典型的实例。应用NI公司的LabVIEW 2009、LabVIEW控制设计工具包为软件开发工具,实现控制系统的建模、分析、设计过程的仿真,最终将开发出一种交互式实验教学模块。主要研究内容有以下几个方面:(1) 控制系统仿真方案的选定提出“基于LabVIEW的控制系统仿真”的可行性方案并对其进行分析、论证,确定最终的实施方案。(2) 控制理论中典型实例选择与理论分析选取控制理论教学和实验中常见的、典型的实例,完成其理论方面的建模、分析、设计。(3) 控制模型相应的仿真VI设计在(2)的基础上,基于LabVIEW 2009平台,使用必要的工具包完成建模、分析、设计的相应的VI设计,完成控制系统仿真的主要程序设计。(4) 程序的动态调用对(3)中设计的VI进行动态程序控制,实现在程序运行时VI的调用,从而达到将各个子模块集成在一起,形成一个综合的实验教学系统。(5) 应用程序发布优化人机界面,发布应用程序,生成独立可执行应用程序和安装程序。2 LabVIEW概述2.1 虚拟仪器技术虚拟仪器技术是近年来诞生并迅速发展的一种新型网络测控技术,它主要应用于由传感器或其他数据采集设备得到的数据的远程传输与通信,与一般的信息网络技术不同。虚拟仪器技术的出现彻底打破了传统仪器由厂家定义的模式,用户可以自己定义仪器,灵活地设计仪器系统。它使测量仪器与计算机之间的界线消失,开始了测量仪器的新时代。随着微电子技术、计算机技术、软件技术和网络技术的高度发展和远程虚拟仪器技术的普及,系统的测量、分析、输出、测控等部分可以实现空间上的分离。1986年,美国国家仪器公司(National Instruments Corp,NI)首先提出了虚拟仪器(Virtual Instrument,VI)的概念。虚拟仪器就是在通用计算机上加上软件和硬件,使得用户在操作这台计算机时,就像是在操作一台专用的传统电子仪器。虚拟仪器是传统仪器功能与外形的模块化和软件化,通常由计算机、仪器模块和软件三部分组成,也可分为硬件平台和软件平台。构成虚拟仪器的硬件平台有两大部分:计算机:一般为一台PC机或者工作站,它是硬件平台的核心。I/O接口设备:主要完成被测信号的采集、放大、模/数转换。构成虚拟仪器的软件平台包括应用软件和I/O驱动软件:应用软件。包含两个方面的程序:实现虚拟面板功能的前面板软件程序。定义测试功能的流程图软件程序。接口仪器驱动程序。这类程序用来完成特定外部硬件设备的扩展、驱动和通信1,4。在虚拟仪器系统中,硬件仅仅是为了解决信号的输入输出,软件才是整个仪器系统的关键,任何一个使用者都可以通过修改软件的方法,很方便地改变、增减仪器系统的功能与规模。计算机和仪器的密切结合是目前仪器发展的一个重要方向,粗略地说这种结合有两种方式:一种是将计算机装入仪器,其典型的例子就是所谓的智能化仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指后一种方式。图2-1反映了常见的虚拟仪器方案2。图2-1 常见的虚拟仪器方案由于采用了通用的硬件和计算机,使得系统的成本下降,开发周期缩短,维护的成本降低。与传统仪器相比,虚拟仪器具有以下几个特点:(1) 开放性:在一定的通用硬件模块和软件环境支持下,用户可以根据实际情况设计出自己的测试方案,以完成不同的测试任务。(2) 模块化:各种测量数据可以由不同的处理模块进行处理。(3) 可重复性:传统仪器有使用寿命、使用次数的限制。而用LabVIEW创建的虚拟仪器,可重复使用,完全不受时间、地点、使用次数的制约。(4) 自定义性:用户能够根据自己的需要定义仪器功能。(5) 低价位:现代计算机性能价格比的不断提高,使得越来越多的用户认可并接受虚拟仪器系统。应用虚拟仪器系统技术,用户可以用较少的资金、时间、系统开发和维护费用,开发出功能更强、质量更可靠的产品和系统。(6) 灵活性:它可以很方便地通过选择不同的硬件配置和改变软件来实现各种测控功能,使得硬件资源具备了再用性。虚拟仪器作为现代仪器仪表发展的方向,己迅速成为一种新的产业,尤其在发达国家中发展更快,其设计、生产和使用己经十分普及。从90年代开始,国内的一些大学也相继开展了虚拟仪器系统的研究与开发工作,虚拟仪器的研究也被列为国家自然基金优先资助领域。今后,虚拟仪器将会逐步取代传统的测试仪器而成为测试仪器的主流。2.2 控制设计工具包(1) 组成LabVIEW控制设计工具包(Control Design Toolkit)共有五部分:PID Control工具包、Control Design and Simulation工具包、 Simulation Interface工具包、System Identification 4.0 系统辨识工具包、SignalExpress v3.0(Windows版)交互式测量软件工具包。本课题主要使用Control Design and Simulation工具包,因此在这里重点对该模块作一些介绍。在正确安装了LabVIEW控制设计工具包后,函数选板中会出现相应的“控制设计与仿真(Control Design&Simulation)”子选板,其中包含了控制设计与仿真所有的VI库,如图2-2所示: 图2-2 控制设计工具包的VI库控制设计与仿真工具包中所包含的VI库相当丰富,涵盖了控制系统数学模型的建立、转换,各种时域和频域分析方法,以及经典和现代控制理论中所涉及的其他许多分析和设计方法,使得该工具包完全可以成为控制设计和仿真领域内一个独特和强大的工具平台。(2) 特点LabVIEW控制设计工具包(Control Design Toolkit)是一个用于分析、设计和实现控制系统的工具与数学函数集合3,7。借助该工具包,可以方便快速地对系统进行建模、转换、分析、求解等各种操作;可将烦琐的计算和绘图过程交给计算机去完成,并快速得到正确的分析结果。作为NI LabVIEW图形化系统设计平台的组成部分,该工具包具有高性能、实时运行及高级Kalman滤波等功能,有助于工程和科研人员快速进行控制系统的设计及最终实现。新版的LabVIEW控制设计工具包(Version 2.1)进一步增强了LabVIEW的图形化开发环境,为控制设计工程人员提供了更加完整的工具组件。可计算分割I/O延迟,从而实现更加精确的模型和整体增强的闭环系统性能。该软件还无缝集成了LabVIEW的仿真模块(Simulation Module),可帮助设计人员描述非线性和连续系统,并完整实现其设计过程的验证。可用于实现复杂、实时应用系统的建模、分析和设计,适用于汽车、航空、复杂机械控制及硬件在环(hardware-in-the-loop)等应用,其中高级Kalman滤波功能对于无人车辆的实时导航系统非常有用。 (3) 与MATLAB控制系统工具箱的比较LabVIEW控制设计工具包与MATLAB控制系统工具箱(Control System Toolbox)实现的功能很相似。它们都对控制系统,尤其是线性时不变(LTI)系统的建模、分析和设计提供了一个完整的解决方案,也避免了繁琐的编程工作,是线性控制系统分析和设计的高效率工具9。在二者基础上都可以进行二次开发,开发出实验教学系统或是CAI课件。目前研究比较多的是利用MATLAB控制系统工具箱进行二次开发,主要应用到MATLAB软件中的图形用户界面(GUI)设计技术。与之相比,利用LabVIEW控制设计工具包进行二次开发的优势集中体现为用户界面设计比较方便,开发者可以把精力集中于程序的编写上,这是由LabVIEW软件“所见即所得”的特点所决定的。3 系统方案的选定3.1 系统概述控制系统仿真系统是一种交互式实验教学系统,对于教学实际具有非常现实的意义。本文在对该系统的实施方案进行研究的基础上,在LabVIEW平台上完成了系统的开发设计。该系统具有以下特色:l 涵盖面广:涵盖了经典控制理论与现代控制理论的大部分内容,涉及控制系统的建模、分析与设计;l 界面友好:人机界面友好,使用方便,所见即所得。用户无需了解LabVIEW的相关知识,可直接进行各种虚拟实验操作;l 实时交互:输入相关参数,即可得出计算机仿真结果,对用户的任何操作都能立即给出反馈。3.2 系统方案的比较与选定常用的基于LabVIEW的控制系统仿真可选用的方案如下:(1) LabVIEW + 控制设计工具包:以LabVIEW为开发平台完成系统界面的设计,使用LabVIEW控制设计工具包完成控制系统的建模、分析与设计;(2) LabVIEW + MATLAB:以LabVIEW为开发平台完成系统界面的设计,在LabVIEW中调用MATLAB完成控制系统的建模、分析与设计。两种方案的差别主要体现在LabVIEW和MATLAB的差别上,下面对两种语言的优缺点加以分析:LabVIEW建立在图形数据流编程语言G语言上,易于使用,大大简化了过程控制和测试软件的开发。LabVIEW提供了一个开放型的开发环境,使用图标代替文本代码创建应用程序,拥有大量与其他程序通信的VI库;但是在对各种算法的支持方面,LabVIEW的工具箱有限,这就限制了大型应用程序的快速开发。MATLAB以其强大的科学计算功能、大量稳定可靠的算法库,已成为数学计算工具方面事实上的标准。MATLAB提供了强大的矩阵运算和图形处理功能,编程效率高,几乎在所有工程计算领域都提供了准确、高效的工具箱。但其界面开发功能较差,并且数据输入、网络通信、硬件控制等方面都比较繁琐32,33。根据以上分析,从理论上讲,把LabVIEW与MATLAB结合,即采用方案(2)会有一定的优势:充分利用了MATLAB提供的大量高效可靠的算法和LabVIEW的图形化编程能力。但该方案在实践过程中存在不少问题,具体体现如下:(1) 混合编程时,在LabVIEW中调用MATLAB会增加计算机负担常用的调用方法有两种:使用MATLAB Script节点;使用ActiveX函数模板4。使用方法时,须同时运行LabVIEW与MATLAB,通常会干扰LabVIEW前台程序的运行,甚至造成程序崩溃;另外程序执行完后,MATLAB也不能自动关闭。方法较方法更为复杂,适用于较大的应用程序开发。虽然避免了方法的缺陷,但经常会遇到数据类型的转换,此外在LabVIEW的顺序结构中使用时会使整个程序不能及时处理其他操作。(2) LabVIEW与MATLAB很难实现无缝对接这一点主要体现在LabVIEW与MATLAB的数据通信方面。因为LabVIEW和MATLAB是两种不同的编程语言,有各自的数据类型定义,所以结合应用时必须注意MATLAB脚本节点内外数据类型的匹配。LabVIEW与MATLAB之间的数据通信仅支持Real、RealVector、RealMatrix、Complex、VectorComplex、Matrix六种格式的数据3,4,且必须根据具体情况进行选择,否则LabVIEW运行时将产生错误或错误的信息。(3) 增加了发布应用程序的困难当编写好应用程序以后,用户并不希望程序只能在LabVIEW开发环境中运行。这就需要发布应用程序,生成可执行文件或安装包。在LabVIEW中发布应用程序是比较简单的,利用“LabVIEW Application Bulider”这一应用程序生成工具可以很方便地完成。但如果采用LabVIEW与MATLAB混合编程,在发布应用程序时需要加入MATLAB动态链接库等相关文件,这就增加了发布应用程序的复杂度与难度,容易导致发布应用程序失败或运行结果错误。鉴于以上各点,并且考虑到本课题所做的程序设计并非较大的应用程序,针对方案(1) 作如下分析:l 可以避免LabVIEW与MATLAB混合编程时引发的各种问题;l 从功能上讲,针对本设计而言,LabVIEW控制设计工具包完全可以实现MATLAB中控制系统工具箱的相关功能;l 本方案的不足之处主要体现在两方面上:编写程序时,如果只采用图形语言,会造成程序庞大复杂、可读性差,尤其是在建立系统模型方面;程序运行时,在计算效率、稳定可靠性方面较方案(2)稍差。对于这些不足,在设计中可以采用LabVIEW中的MathScript节点加以弥补。MathScript节点也是一种基于文本的编程节点,但其文本描述语言为LabVIEW MathScript,是一种与MATLAB语言语法非常相似的语言。它与MATLAB的区别在于:MathScript节点只支持MATLAB的一部分函数,可实现MATLAB的部分功能;MathScript节点是LabVIEW的一部分,不需要再安装第三方软件,也不存在于与LabVIEW的对接问题。因此MathScript节点在一定程度上(针对本设计已足够)可取代MATLAB,既解决了本方案的不足,又避免了调用MATLAB时引发的问题。通过上面系统方案的提出、分析比较,可以选定方案(1)作为实施方案。该方案既满足设计要求,又具有简单易行的优点。3.3 系统子模块的规划本课题所开发的基于LabVIEW的控制系统仿真系统由若干个子模块组成,这些子模块取材于控制理论中的典型实例。通过对控制理论教学与实验中的实例进行筛选,规划系统的子模块如下:(1) 信号发生器:实现控制系统中典型信号的产生,为控制系统的分析提供前提;(2) 典型环节:建立比例、积分、微分、惯性、振荡等典型控制环节模型,并给出其时域响应与频域响应,作为控制系统分析的基础;(3) 质点弹簧阻尼器系统:对质点弹簧阻尼器系统(简称Mkf系统)进行建模及模型转换、时域与频域分析、状态空间分析、PID设计,涵盖经典控制理论的大部分内容,涉及现代控制理论的部分内容;(4) 一级倒立摆系统:对一级倒立摆系统进行状态空间建模与分析、LQR设计、离线仿真、实时仿真,涵盖现代控制理论中线性系统理论的大部分内容,涉及最优控制理论的部分内容。由以上规划,可得系统结构图如图3-1所示:图3-1 系统结构图4 系统设计4.1 信号发生器4.1.1 确定方案凡是产生测试信号的仪器,统称为信号源,也称为信号发生器,它用于产生被测电路所需特定参数的电测试信号,可以根据用户对波形的命令来产生信号。信号发生器有很多种分类方法,因而其实施方案有许多种。考虑到本课题所做研究为控制系统仿真方面,因此该信号发生器须能产生控制理论中常用的输入信号。这里采用的信号发生器的案如图4-1所示:图4-1 信号发生器方案该信号发生器将实现基本信号、典型信号、公式设定信号三大类信号的发生。其中基本信号将包含正弦波、三角波、方波和锯齿波,典型信号将包含脉冲信号、阶跃信号、斜坡信号和抛物线信号,公式设定信号将实现由公式描述的任意信号。4.1.2 VI设计(1) 程序流程图信号发生器的程序流程图如图4-2所示。程序开始时,选择所要产生的信号类型,然后设定幅值、频率、相位等信号参数,并设定采样率和采样数的采样参数,之后将生成的波形通过波形图和波形图表输出。如果不按下“停止”按钮,将重复执行上述操作。用户更改信号类型和参数,可立即获得相应信号的波形。图4-2 信号发生器程序流程图(2) 子VI的选择本程序中用到的子VI及其功能如表4-1所示:表4-1 信号发生器程序中用到的VI序号名称功能1基本函数发生器.vi根据信号类型,创建输出基本函数波形2公式波形.vi通过公式字符串指定要使用的时间函数,创建输出波形3冲激函数.vi生成包含冲激信号的数组(3) 程序设计整个程序构成一个循环结构,可采用While循环结构,加入布尔按钮控制程序是否停止。信号类型的选择可采用两级分支结构,利用下拉列表实现各分支的选择。基本信号通过“基本函数发生器.vi”产生、典型信号中的脉冲信号利用“冲激函数.vi”产生,其他信号则通过“公式波形.vi”产生、公式设定信号也通过“公式波形.vi”产生,其公式可在程序运行时设定。按照程序流程图和以上要点,可完成信号发生器的VI设计,其前面板及程序框图如图4-3所示:图4-3 “信号发生器.VI”的前面板和框图4.2 典型环节4.2.1 建模及理论分析典型环节包括比例环节、微分环节、一阶微分环节、二阶微分环节、积分环节、惯性环节、二阶振荡环节和延迟环节,是构成控制系统的基本单元,任何一个复杂的系统总可以看成由一些典型环节组合而成12,14。因此掌握典型环节及其特性,可以更方便地分析复杂系统内部各单元间的联系。各个典型环节及其形式如表4-2所示:表4-2 典型环节及其形式名称传递函数G( s )频率特性G( j)比例环节KK微分环节sj一阶微分环节二阶微分环节积分环节惯性环节二阶振荡环节延迟环节建立典型环节数学模型后,可进行时域和频域的相关分析。时域分析主要获得典型环节的单位阶跃响应、单位脉冲响应、零输入响应以及相应的动态性能指标。由于微分环节、一阶微分环节、二阶微分环节的时域响应发散,所以对这些环节不作时域分析。在其他典型环节中,惯性环节和二阶振荡环节的时域分析最具有意义和价值。频域分析可获得典型环节的频率特性,反映了正弦信号作用下典型环节系统响应的性能。在控制工程中,频率分析法常常是用图解法进行分析和设计的,常用的频率特性有三种图解表示。对表4-2中频率特性G( j)可进一步求出对数幅频特性和对数相频特性,在半对数坐标平面中作出曲线,即为Bode图。以频率为参变量,将幅频与相频特性同时表示在复平面上,即得到Nyquist图(极坐标图)。以频率为参变量,将对数幅频特性与相频特性组合成一张图,纵坐标表示对数幅值,横坐标表示相应的相角,即得到Nichols图。4.2.2 VI设计(1) 程序流程图典型环节建模与分析的程序流程图如图4-4所示。程序开始时,选择所要分析的典型环节类型,然后输入相关参数,建立起传递函数模型和零极点增益模型。对典型环节的数学模型加以显示,同时对模型进行时域分析或频域分析并将分析结果显示出来。如果不按下“停止”按钮,将重复执行上述操作。用户重新选择典型环节类型、变更对应的参数,即可获得相应的系统模型及相关分析。图4-4 典型环节建模与分析程序流程图(2) 子VI的选择本程序中用到的子VI及其功能如表4-3所示:表4-3 典型环节建模与分析程序中用到的VI序号名称功能1CD Construct Transfer Function Model.vi建立传递函数模型2CD Draw Transfer Function Equation.vi绘出传递函数模型3CD Draw Zero-Pole-Gain Model.vi绘出零极点增益模型4CD Step Response.vi计算系统的阶跃响应5CD Impulse Response.vi计算系统的脉冲响应6CD Initial Response.vi计算系统的零输入响应续 表4-3序号名称功能7CD Parametric Time Response.vi计算系统在指定激励(阶跃、脉冲或零输入)下的响应信号及其动态参数8CD Bode.vi绘制系统的Bode图9CD Nyquist.vi绘制系统的Nyquist图10CD Nichols.vi绘制系统的Nichols图(3) 程序设计典型环节的数学模型较为简单,采用控制设计工具包“Model Construction”子VI库下的“CD Construct Transfer Function Model.vi”就可以很方便的建立起传递函数模型。为方便程序设计,可考虑将典型环节的时间常数T、均以T代替,这样将减少一个变量,程序中只需引入K、T、三个变量。采用分支结构实现对典型环节的选择,并利用属性节点控制这三个变量所对应的输入控件的显示,使得选择某一个典型环节之后,只显示出与之对应的参数,方便用户的输入。建立传递函数模型后,将其连接到“CD Draw Transfer Function Equation.vi”和“CD Draw Zero-Pole-Gain Model.vi”,就可以以图片的形式显示出典型环节的传递函数模型和零极点增益模型。这里给出二阶振荡环节建模的子分支程序,如图4-5所示,其他典型环节建模的子分支程序与之类似。图4-5 二阶振荡环节建模的程序框图对典型环节的分析涉及到时域分析和频域分析,如果在一个VI里面实现,前面板将显得过于庞大,因此设计两个VI分别实现时域分析和频域分析。时域分析由于涉及脉冲响应、阶跃响应和零输入响应,可采用分支结构实现,采用下拉列表实现三个分支的选择。将系统模型直接连接到“CD Step Response.vi”、“CD Impulse Response.vi”和“CD Initial Response.vi”,三个子VI的输出端“Step Response Graph”、“Impulse Response Graph”和“Initial Response Graph”均连接到“XY图”控件,用于显示系统的时域响应曲线,采用2个“XY图”控件,分别以单曲线形式和多曲线形式显示。考虑到还需要获得相应的响应指标,可将系统模型和时域响应数据连接至“CD Parametric Time Response.vi”, 该VI将计算出系统时域响应的动态参数。由此设计出的时域分析子程序如图4-6所示: 图4-6 时域分析子程序框图这段时域响应程序在后面的程序设计中还会多次用到,因此将其用顺序结构做成一个模块,用到的时候稍作修改即可使用。将可进行时域分析的典型环节的模型连接到该模块,即可完成典型环节时域分析的VI设计,其前面板及程序框图如图4-7所示:(a)(b)图4-7 “典型环节时域分析.VI”的前面板和框图对典型环节的频域分析只需将典型环节的模型连接到“CD Bode.vi”、“CD Nyquist.vi”和“CD Nichols.vi”,它们的输出端连接到“XY图”控件,便可获得典型环节的Bode图、Nyquist图和Nichols图。频域分析VI的前面板及程序框图如图4-8所示:(a)(b)图4-8 “典型环节频域分析.VI”的前面板和框图4.3 质点弹簧阻尼器系统4.3.1 建模与模型转换及其VI设计(一) 建模与模型转换质点弹簧阻尼器系统6,16(简称Mkf系统,下同)如图4-9所示:图4-9 质点弹簧阻尼器系统运动示意图本系统内部各相关参数定义如下:M:小车质量k:弹簧弹性系数f:粘性摩擦系数F:加在小车上的力y:小车位移在小车M上作用一个外力F,小车的位移为y。设阻尼器的摩擦力与成正比,弹簧弹力与y成正比。对于该机械系统,根据牛顿第二定律有:即:(4-1)(1) 传递函数模型在初始条件为零的条件下,对方程(4-1)式进行拉普拉斯变换,得到:由此可得传递函数:(4-2)(2) 状态空间模型选择位移y和速度为状态变量,而位移为系统的输出,力F为输入量,则有:于是该机械系统的状态空间表达式为:(4-3)(3) 模型转换传递函数和状态空间表达式是对系统的两种描述方式,二者都是在系统微分方程的基础上建立起来的。在系统初始松弛的条件下,对状态空间表达式进行Laplace变换并且化简,可以求出系统的传递函数。根据传递函数可得到系统的微分方程(初始松弛),选择适当的状态变量便可以得到相应的状态空间表达式。可见传递函数和状态空间表达式之间是可以相互转换的。一般而言,由状态空间表达式可得到唯一的传递函数;而由传递函数可得到多个不同的状态空间表达式,这取决于状态变量的选择。在此只讨论将状态空间表达式转换为传递函数。针对Mkf系统,根据其状态空间表达式(4-3)式求出输出量对输入量的传递函数(即传递函数)见(4-4)式,它与(4-2)式的结果一致。(4-4)(二) VI设计(1) 子VI的选择本程序中用到的子VI及其功能如表4-4所示:表4-4 Mkf系统建模与模型转换程序中用到的VI序号名称功能1CD Draw Transfer Function Equation.vi绘出传递函数模型2CD Draw Zero-Pole-Gain Model.vi绘出零极点增益模型3CD Draw State-Space Equation.vi绘出状态空间模型4CD Convert to Transfer Function Model.vi将系统模型转换为传递函数形式5CD Convert to Zero-Pole-Gain Model.vi将系统模型转换为零极点增益形式6CD Poles.vi计算并返回系统的极点(2) 程序设计在本程序中,先建立Mkf系统的状态空间模型,然后将其转换为传递函数模型和零极点增益模型。建立系统模型既可采用控制设计工具包 “Model Construction”子VI库下的子VI实现,也可以使用MathScript节点实现。在典型环节的建模中由于模型简单采用了前者,而建立Mkf系统的状态空间模型时,两种方法的差别不大、优劣不明显,此处选择后者。其MathScript节点代码如下:%求状态空间sys(A,B,C,D) a=0 1;-k/M -f/M; b=0;1/M; c=1 0; d=0; sys=ss(a,b,c,d);将系统的状态空间模型连接至“CD Convert to Transfer Function Model.vi”和“CD Convert to Zero-Pole-Gain Model.vi”,可实现状态空间模型到传递函数模型和零极点增益模型的转换。系统模型可通过相应的模型绘制VI以图片形式显示出来。由于当系统极点为共轭复数时,得到的零极点增益模型与传递函数模型相同,失去该模型的意义,因此可考虑增加“CD Poles.vi”计算并以复数形式返回系统的极点,弥补这一缺陷。“CD Poles.vi”的输入端连接系统模型,输出端连接到复数数组形式的显示控件。为实现程序的实时性,可将通过上述步骤获得的程序放入While循环结构,加入布尔按钮控制程序停止。至此完成了Mkf系统建模与模型转换VI的设计,其前面板及程序框图如图4-10所示: 图4-10 “Mkf系统建模与模型转换.VI”的前面板和框图4.3.2 模型分析及其VI设计上一小节所设计的“Mkf系统建模与模型转换.VI”实现了Mkf系统状态空间模型、传递函数模型和零极点增益模型的建立。本小节将在此基础上完成Mkf系统的性能分析和相应的VI设计。(一) 模型分析对Mkf系统的模型分析基于状态空间模型和传递函数模型。在传递函数模型的基础上进行时域分析和频域分析,由于Mkf系统的传递函数(4-2)式实质上是一个二阶振荡环节,在4.2小节里面已讨论过,此处不再赘述。在状态空间模型的基础上进行的状态空间分析,主要有以下方面:(1) 线性变换选取不同的状态变量,得到的状态空间表达式也不相同。各状态空间表达式之间存在着线性变换关系。利用线性变换,可得到便于应用且简单的状态空间表达式17。引入非奇异变换矩阵P,对状态变量x进行线性变换,可得到新的系统方程:(4-5)适当选择变换矩阵P,可将系数矩阵A转化为标准型(对角形、约当形或模态形),使得系统达到最弱耦合形式。(2) 能控性分析根据能控性的秩判据来判断系统的能控性:计算,如果系统的能控性矩阵满秩,则系统能控。(3) 能观测性分析根据能观测性的秩判据来判断系统的能观测性:计算,如果系统的能观测性矩阵满秩,则系统能观测。(二) VI设计Mkf系统时域与频域分析的程序与4.2小节中典型环节的分析程序类似,主要的不同点在于利用MathScript节点计算出了系统的阻尼比和无阻尼自然振荡频率,在01时给出了详细的时域响应动态性能指标。这里直接给出前面板及程序框图如图4-11所示: (a)(b)(c)(d)图4-11 “Mkf系统时域与频域分析.VI”的前面板和框图需要说明的是,以上是一个VI程序,实现了Mkf系统时域与频域分析。在程序框图中使用分支结构实现时域分析与频域分析的选择,同时采用了属性节点控制前面板上相关控件的显示与隐藏。接下来设计Mkf系统状态空间分析的VI程序,本程序中用到的子VI及其功能如表4-5所示:表4-5 Mkf系统状态空间分析程序中用到的VI序号名称功能1CD Canonical State-Space Realization将系统转换为规范形式的实现2CD Draw State-Space Equation.vi绘出状态空间模型3CD Controllability Matrix.vi计算系统的可控性矩阵4CD Observability Matrix.vi计算系统的可观性矩阵仍采用4.3.1小节中的系统建模方法,建立起系统的状态空间模型。将系统模型连接至“CD Canonical State-Space Realization.vi”,在其输出端可以获得状态空间模型的标准型,同时可得到对应的变换矩阵。添加“CD Controllability Matrix.vi”和“CD Observability Matrix.vi”,并将系统模型连接至这两个VI,计算出该系统的可控性矩阵和可观测性矩阵,同时这两个VI也可以分别通过输出参数“Is Controllable?”和“Is Observable?”给出可控性和可观测性的判定结果。通过以上的步骤,可完成Mkf系统状态空间分析VI的设计,其前面板及程序框图如图4-12所示:图4-12 “Mkf系统状态空间分析.VI”的前面板和框图4.3.3 PID设计及其VI设计(一) PID控制PID控制一般采用图4-13所示的控制系统结构,即串联控制8:控制器r(t)-受控对象e(t)u(t)y(t)图4-13 串联控制系统结构控制器接受误差信号e(t)后,按一定的运算规律输出控制信号,作用于被控对象,消除扰动对被控对象的影响,使被控量y(t

温馨提示

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

评论

0/150

提交评论