基于LABVIEW的智能温度测控仪表的设计.ppt
基于LABVIEW的智能温度测控仪表的设计,2,温度测控仪表的总体设计,1.系统主要实现的功能1实现单片机与PC机的串口通信,能及时地将温度数据传给PC机,并将运算得到的控制量输出。2实现基于遗传算法的PID控制器,能对电烤箱的温度进行实时测控。3测试和控制参数的显示如测试时间、设定温度、当前温度等,当温度超出某个范围进行报警等。4烤箱温度实时控制曲线及统计直方图的显示,而且具有数字显示和波形图显示。5测试结果的数据处理与分析可以进行在线分析和离线分析。当采集或读入数据后,可选用不同的滤波器进行数字滤波。6测试结果的数据保存将采集到的数据保存在数据库中,并在数据库中加入数据创建的时间等信息,便于数据采集后的读取与处理。,3,2.系统设计原则,本论文研究开发的是基于LabVIEW的智能温度测控系统,要开发出好的测控系统,首先要对整个系统进行总体设计。在本设计开发中主要考虑了以下几个原则1从整体到部分的设计原则。2可扩展性原则。3经济性原则。4可靠性原则。5易操作性原则。6可移植性原则。,4,系统总体设计方案,本论文设计开发的基于LabVIEW的智能温度测控系统,根据从总体到局部的设计原则,通过对系统功能的分析,将整个系统分解为实现不同功能的几个部分,然后分别对每个部分设计。为了能够实现电烤箱温度测控系统所提出的各项具体功能,可以将整个系统分解为上位机和下位机两个部分上位机为装有LabVIEW等软件的PC机,下位机为单片机及外围电路组成的小系统。系统总体设计框图如图1所示,5,被控对象的数学建模,被控对象的机理法建模本论文的被控对象为电烤箱,将电烤箱箱内的温度作为唯一变量。通过机理法建模,我们可以知道电烤箱为纯滞后的一阶对象,而且可以求得被控对象的传递函数的形式为,,,式中,K是对象放大系数;T是对象时间常数;ζ是对象纯滞后。,6,阶跃响应曲线法建模,阶跃响应曲线法是对处于开环、稳态的被控过程,使其输入量作相应变化,测得被控过程的阶跃响应曲线,然后再根据阶跃响应曲线,求出被控对象输入与输出之间的动态数学关系传递函数。确定ζ和T的方法,是把达到39和63.2响应的时间读出来,分别用t0.39和t0.632来表示,按下式计算,,,,K的计算方法,7,,下表是通过实验得到的电烤箱温度数据,图2电烤箱温度数据的仿真,根据图2和前面介绍的各参数求解方法求得ζ60s,t0.632160s,Tt0.632-ζ100s,,电烤箱的传递函数为,,8,各种PID控制的仿真结果比较,图3常规PID控制单位阶跃响应,图4模糊PID控制单位阶跃响应,图5基于遗传算法的PID控制单位阶跃响应,从以上三种计算机仿真结果可知,与常规PID控制和模糊PID控制相比,基于遗传算法的PID控制器具有实时性强、上升速度快、调节时间短、过渡过程平稳等优点,可用于控制各种不同的对象和过程,具有良好的应用前景。,被控对象的传递函数为,采样时间为20s,9,温度测控仪表的硬件设计,系统硬件框图如图6所示,由以下几个部分组成装有LabVIEW等软件的计算机,AT89S52单片机,电平转换电路MAX232,温度采集电路(DS18B20温度传感器;K型热电偶、信号调理电路、A/D转换电路),温度控制电路固态继电器。,10,放大电路设计,由于热电偶输出的信号非常小,为毫伏级,0-24.902mV,A/D转换所需的电压范围为0-5伏,因此需将其放大至少200倍。热电偶信号的放大电路由低温漂、低偏置电流、高共模抑制比、低噪的精密仪表放大器AD620为核心,加上激励电源电路、零位调整电阻、增益调整电阻、输出限幅保护电路等组成。系统的放大电路如下图所示,放大电路,11,滤波电路设计,滤波电路作为信号调理电路的第二级,作用主要是对放大之后的热电偶信号进行滤波。热电偶信号变化非常缓慢,在本系统中采用二阶有源低通滤波来滤去信号中的干扰和噪声信号。其中无源器件选用低噪声、高精度、价格低廉的运算放大器OP07。滤波电路图如下图所示,滤波电路,12,A/D转换电路,A/D转换电路功能是将传感器测输出的模拟信号转换为数字信号,再送入单片机中,单片机便可对这些数据进行处理。本系统选择的是MAXIM公司的多量程、8通道的12位并行A/D转换器MAX197,它是并行总线A/D芯片,采用逐次逼近工作方式,能把模拟信号转换为12位数字量输出,输出采用的是并行输出,容易与单片机连接,A/D模块原理图,13,控制电路设计,在本系统中控制电路原理图如下图所示,由于AT89S52单片机I/O端口的驱动能力只有十几mA,达不到固态继电器的驱动要求,故需增加一个三极管来提高驱动电流。,控制电路原理图,14,电平转换电路,本系统选用MAX232作为串口通信电平转换芯片,该芯片是由MAXIM公司推出的一款兼容RS232标准的芯片。由于计算机串口RS232电平是-10v10v,而一般的单片机应用系统的信号电压是TTL电平05v,因此在进行计算机与单片机进行串行通信时需要使用MAX232来进行电平转换,电路图如下图所示,电平转换电路图,15,单片机及其部分外围电路,ATMEL公司的AT89系列单片机,不仅在指令上,而且在管脚上都兼容Intel公司的MCS-51系列的单片机,并在片内存储器、振荡电路、功耗、软件加密以及内置看门狗等技术水平上均有很大程度的提高。因此,本设计选用了ATMEL公司的8位单片机AT89S52作为本系统的下位机。AT89S52单片机及其部分外围电路如右图所示,AT89S52单片机接线图,16,温度测控仪表软件总体设计,本温度控制系统采用的是模块化的设计方法,将系统划分成几个相互独立的功能模块,各模块内部分别完成确定的任务。根据电烤箱温度控制系统的基本要求,将系统划分为七个功能模块,即测温范围和参数设置模块、串行通讯模块、数据分析处理模块、越限报警模块、数据存取模块以、数据打印模块及PID控制器模块等。温度控制系统软件总体组成框图如图7所示。,17,智能温度测控仪表前面板,该界面主要包括温度历史趋势图显示、温度统计图显示、温度数据表显示、串口配置、参数输入旋钮等。系统通过串口将单片机上传的温度数据进行实时采集,并由开发的软件平台对采集的信号进行分析与处理,同时将采集的数据存盘,以备系统运行时随时查阅、分析和打印。,18,LabVIEW串行通讯模块,上图为串行通讯模块程序框图,其中串行通信的主要参数设置如下串口号COM1,波特率为9600bit/s,数据位为8,校验位为none。如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISAWrite,接收数据使用VISARead。,串行通讯模块程序框图,19,信号分析处理模块,信号处理是指对信号进行某种加工变换或运算,来获取信息或变换为人们希望的另一类信号形式。在测试领域中,信号处理主要指滤波,即把信号中有效信号提取出来,抑制干扰或噪声的一种处理。由于本系统不用考虑温度信号的相频特性,并且要求滤波器在通带内没有波纹,巴特沃斯滤波器具有最大平坦幅度特性,故采用巴特沃斯滤波器滤波器。本系统数字滤波器模块的框图程序下图所示。,数字滤波程序框图,20,,下图为LabVIEW中实现二阶低通数字滤波仿真的的前面板,LabVIEW中数字滤波的实现,21,越限报警模块,当温度超过了环境或系统所允许的最大最小值时,程序应能实现声光报警,这也是控制系统中所必需的一部分。为此设置了越限报警模块。其工作原理很简单通过对所测量的实时温度和所设置的温度上下限的比较,产生一个True或者False信号来驱动报警灯以及产生报警声。,22,统计直方图显示模块,首先通过ADOConnectionCreate.vi与ADO建立连接,然后通过ADOConnectionOpen.vi打开数据源,数据源由字符串“dsndsn_tmp”指定。接着打开数据源,通过SQLcute.vi执行SQL语句“select实际温度fromtmp;”,实际温度从数据库的tmp表中读出,然后将数据经过相应的运算传给创建直方图控件,最后传给波形图控件。,23,数据存储模块,数据存储模块主要是将测得的温度数据、测量时间,以及设定温度值、高限值、低限值写入数据库中,数据存储模块程序框图,24,,下图为通过本温度测控系统采集并存储到Access数据库中的温度数据。,25,数据读取模块,数据读取模块主要是将时间、设定温度、实际温度、高限值、低限值等数据从数据库中读出,供相关人员查看,26,温度数据打印模块,数据打印模块程序框图如上图所示。首先通过ADOConnectionCreate.vi与ADO建立连接,然后通过ADOConnectionOpen.vi打开数据源,数据源由dsndsn_tmp指定。打开数据源后,通过SQLcute.vi执行SQL语句。从数据库中读出所有数据,然后为这些数据加上对应的表头(时间、设定温度、实际温度、高限值、低限值),然后将数据传给打印控件进行打印。,27,LabVIEW中增量式PID控制的实现,LabVIEW提供了MATLABScript节点,可以在MATLABScript节点中编辑MATLAB程序,并在LabVIEW环境下运行,也可直接调入己经存在的MATLAB程序。程序运行时将自动调用MATLAB,所以要使用MATLABScript节点,系统中必须装有MATLAB5.0以上版本。,采用MATLABScript节点实现增量式PID控制器的程序,28,,LabVIEW中实现增量式PID控制仿真,29,基于遗传算法的PID控制器,虚拟仪器的主要开发平台LabVIEW是一个高效的图形化程序设计环境,结合G编程语言,大大简化了过程控制和测试软件的开发。MATLAB是高性能的数值计算分析软件,为遗传算法的设计和仿真提供了方便。本文通过应用MATLABScript节点在LabVIEW中调用和操作MATLAB的方法,实现了基于遗传算法的PID控制器。,基于遗传算法的PID控制器在LabVIEW中的实现程序,