第1章 绪论
虚拟技术的发展使虚拟平台实验的分析设计过程得以在计算机上轻松、准确、快捷地完成。这样,一方面克服了实验室在元器件和规格上的限制,避免了损坏仪器等不利因素,另一方面使得实验不受时间及空间的限制,从而促进模拟实验教学的现代化。本文介绍了基于LabVIEW的自动控制实验系统的设计与实现。此系统具有参数调节方便、易实现、可靠度高等优点。在高等工程教育中采用虚拟实验室,可以从根本上解决实验与实习经费严重短缺问题。作为传统电子技术实验的补充,使学生初步掌握仿真软件技术,可使实验内容紧密联系课本内容,比较全面地概括和反映部分所学的知识点,将课堂内容具体化。 1.1背景
“自动控制原理”一门重要的专业基础课,学生需要掌握自动控制系统的分析及设计方法,为设计和调试工业自动控制系统打下基础。在学习中,最好的方法是调动学生的学习积极性,从而发挥高度的主观能动。学生对课文中的理论学习缺乏主观积极性和学习兴趣,而实践教学过程中能充分调动学生的积极参与意识和表现意识,实验是检验理论的最好方法,而理论又是指导实验的最好依据。实验学习的程中使学生形象生动地掌握了原来枯唱无味的理论知识,又创造了实际动手能力和创造能力,从而最大限度的发挥了良好的学习兴趣。但是目前自动控制实验教学存在一系列问题,例如实验设备和实验场地数量有限,实验设备老化严重以及严重缺乏实验指导教师等,因此各种虚拟实验方法相继提出。
对于此问题首先提出了基于Matlab的虚拟实验系统,它能比较好的解决目前自动控制实验中的一些问题,并在提高了目前“自动控制原理”教学效果。但是,由于Matlab的局限性,不能锻炼学生的动手能力和硬件调试能力,并且软件模拟实验给学生的印象并不如硬件实验那样深刻。另外,由于Matlab软件模需要学生对其有一定的熟悉和了解,对于初学者来说比较困难。
随着计算机技术的发展,采用NI公司的Labview的语言系统,开发出基于Labview虚拟实验系统,结合第三方公司的数据采集卡,从而实现在课堂上进行模拟实验,并且结合学校原有的硬件电路设备进行硬件实验的综合实验系统,达到显著提高教学效果和实验效果。
虚拟实验系统的交互式式接口和良好的界面的特点。可以完成模拟实验,以便更好的帮助学生理解、消化、吸收学习内容,重点解决教学和实验过程中的一些难点问题。
-1-
1.2课题的目的与意义
Labview像C和C++开发环境一样,是一种程序语言开发环境,但与现有的Labview采用图形化编程语言—G语言,产生块状的程序。虚拟仪器的软件框架从低层到顶层,包括三部分:VISA库、仪器驱动程序、应用软件。VISA(Virtual 1nstrumentation software Architecture)虚拟仪器软件体系结构,实质就是标准的I/O函数库及其相关规范的总称。一般称这个I/0函数库为VISA库。它驻留于计算机系统之中执行仪器总线的特殊功能,是计算机与仪器之间的软件层连接,以实现对仪器的程控。它对于仪器驱动程序开发者来说是一个个可调用的操作函数集。仪器驱动程序是完成对某一特定仪器控制与通信的软件程序集。它是应用程序实现仪器控制的桥梁。每个仪器模块都有自己的仪器驱动程序,仪器厂商以源码的形式提供给用户。应用软件建立在仪器驱动程序之上,直接面对操作用户,通过提供直观友好的测控操作界面、丰富的数据分析与处理功能,来完成自动测试任务。
而Matlab是“演算纸”式的程序设计语言,几乎在所有的工程计算领域都提供了准确、高效的工具箱。
鉴于Labview可以通过调用控件,实现Labview与Matlab的混合编程,充分发挥两者的优势。本设计正是采用Labview和Matlab的混合编程思想,通过控件调用和操作来实现自动控制原理中常见实验的虚拟实验系统。
通过不同的软件编程,实现多个仪器的功能。虚拟仪器没有常规仪器的控制面板,而是利用计算机强大的图形环境,采用可视化的图形编程语言和平台,以在计算机屏幕上建立图形化的软面板来替代常规的传统仪器面板。虚拟仪器用户可以才艮据自己的需要灵活地定义仪器的功能,通过不同功能模块的组合可构成多种仪器,而不必受限于仪器厂商提供的特定功能。虚拟仪器将所有的仪器控制信息均集中在软件模块中,可以采用多种方式显示采集的数据、分析的结果和控制过程。这种对关键部分的转移进一步增加了虚拟仪器的灵活性。使用人员可以通过软件编程或采用现有分析软件,实时、直接地对测试数据进行各种分析与处理。虚拟仪器价格低,而且其基于软件的体系结构还大大节省了开发和维护费用。通过采用虚拟仪器技术,不仅大大节约经费,还可以有效提高实验室建设水平,为大学实验仪器建设提供了一条新可行的途径。虚拟仪器具有仿真的用户面板,学生通过操作虚拟面板就可学习和掌握仪器原理、功能与操作。虚拟仪器采集的是现场真实的物理数据,可通过与其它仪器、电路的相互配合,完成实际实验过程,达到与用实际仪器教学相同的实验目的。学生在进行实验时不必担心弄坏仪
-2-
器,可以极大地提高学生的学习兴趣、激发学生自主学习的积极性。
1.3 Labview的介绍
虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE488 或 GPIB协议。未来的仪器也应当是网络化的。LabVIEW(Lboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS-232和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为 “G” 语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用 LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统,不断完善中在驱动和应用两个层面上,优秀虚拟仪器开发平台已经将其高效的软件构架与计算机、仪器仪表和通讯方面的最新技术结合在一起,给用户提供最方便的、最灵活的操作以及强大的功能,让用户轻松地配置、创建、部署和维护高性能、低成本的测量和控制解决方案。另外,由于充分利用了计算机技术,将信号的分析、显示、存储、打印和其它管理集中交由计算机来处理,完善了数据的传输、交换等性能使得组建系统变得更加灵活和简单,增强了数据处理能力。虚拟仪器作为现代仪器仪表发展方向,已迅速成为一种新的产业,尤其在发达国家中发展更快,其设计、生产和使用已经十分普及,虚拟仪器将会逐步取代传统的测试仪器而成为测试仪器的主流。
-3-
第2章 设计原理
本章介绍了“自动控制原理”中常见的虚拟实验子系统的原理,包括实验有:一阶系统、二阶系统、校正系统、采样系统、采样系统校正、频率特性、系统稳定性、非线性系统。
2.1一阶系统典型环节虚拟实验系统设计原理 2.1.1数学模型的介绍
可以用一阶微分方程描述的系统称为一阶系统,一阶系统的运动方程具有如下的一般形式:
Tdc(t)?c(t)?r(t) dt式(2.1)
式中,T为惯性环节的时间常数,代表系统的惯性;c(t)和r(t)分别是系统的输出信号和输入信号。
对式2.1进行拉氏变换得一阶系统惯性环节的传递函数为:
?(S)?C(S)K ?R(S)TS?1式(2.2)
一阶系统惯性环节的方框图如图2.1所示。
K TS?1图2.1 一阶系统惯性环节方框图
2.1.2单位阶跃响应慨括
当输入信号r(t)=1(t)时,系统的响应c(t)称作其单位阶跃响应。 拉氏变换为:
C(S)??(S)R(S)?11? TS?1S式(2.3)
两端取拉氏反变换,求的其单位阶跃响应为:
c(t)?1?e?tT 式(2.4)
-4-
2.2二阶系统瞬态响应虚拟实验系统设计原理 2.2.1数学模型的介绍
运动方程为二阶微分方程的控制系统称为二阶系统,二阶系统的运动方程具有如下的一般形式:
d2c(t)dc(t)T?2?T?c(t)?r(t) 2dtdt2式(2.5)
式中T?LC—二阶系统的时间常数,单位为秒; ??RC—二阶系统的阻尼比,无量纲。 2L对式2.5进行拉氏变换得二阶系统的传递函数为:
?(S)?C(S)1 ?22R(S)TS?2?Ts?1式(2.6)
引入参数??1/T,称作二阶系统的自然频率,单位为rad/s。则:
C(S)?2?(S)??2 2R(S)S?2??S??式(2.7)
二阶系统的方框图如图2.2所示。
图2.2单位阶跃响应方框图
+ R(S) E(S) 1ToS K1C(S) T1S?12.2.2单位阶跃响应慨括
单位阶跃函数作用下,二阶系统的响应称其为单位阶跃响应。由式2.7,其输出的拉氏变换为:
?21C(S)??(S)R(S)?2? 2SS?2??S??对分母多项式作因式分解,得到:
C(S)?式(2.8)
?2S(S?S1)(S?S2) 式(2.9)
-5-