您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 01-基于虚拟仪器的温度测控系统的实现
基于虚拟仪器的温度测控系统的实现本课题针对原有温度测控仪的测试与控制功能进行改造。利用虚拟仪器技术实现了原有温度测控仪对温度信号的测试与控制功能,弥补了原有测控仪利用单片机操作单一﹑程序无法更改的缺欠。为现代测控技术的发展,尤其是虚拟仪器这种“软件即是仪器”的新思想提供了现实证据;同时还在温度传感器的标定中作了有意义的工作。随着计算机硬件和软件技术的迅速发展,测控技术也日新月异。虚拟仪器(VirtualInstrumentation)概念的提出使我们可以充分利用计算机软件硬件资源来实现计算机与测量仪器的有机结合,从而极其容易的组建一个性能优异的现场测控系统。温度信号作为自然界中一个重要的物理量,无论理论研究还是工程技术很多情况下都会抓住这个物理量中所加载的信息对某一特定的物理过程或现象进行定量的分析,温度测控仪就是在这种条件下开发出来的。原有的温度测控仪利用硬件电路来实现数据采集﹑变换﹑显示和控制,而这种温度测控系统只能给出显示的温度数据,而无法实时显示温度变化的动态图形,更不能对信号作进一步的分析,而且利用单片机操作单一﹑可扩展性差,烧制在芯片中的程序无法根据需要更改,因此出于此种缺欠考虑,利用现有的计算机软硬件资源开发了一个虚拟仪器系统实现对温度信号的精确测试和控制,这是本研究的重点。一、温度测控仪的系统结构与功能1.1热电偶测量温度的基本原理图1为由不同种材料的导体A和B组成的热电偶,第三种导体C为毫伏计,毫伏计与A和B热电偶冷端的两个节点的温度均为冷端温度0T,而热电偶A,B的热端置于需要测量的温度场T时,这样根据中间导体定律,由导体A,B,C组成回路的总体电势应为)()(),(000TETEdTTTEABABTTABABC(1)式中,AB为塞贝克系数,其值随材料和两结点温度而定。当保持0T=常数时,则),(0TTEAB=常数=C,所以上式变为)()(),(),(00TCTETTETTEABABABC(2)式(2)就是热电偶测量温度的基本原理,只要保持冷端温度0T不变,则热电偶的输出电势就是所测温度的单值函数,即热电偶的输出电势),(0TTEAB就反映了被测温度的大小。1.2结构与功能温度测控仪分为两大部份:温度信号采集显示部分和开关量控制输出信号部分。系统的总体结构示意,如图2所示。其中,传感器利用铜-康铜热电偶,其工作电压为220VAC;温度信号先由传感器转换成热电势,传入到显示控制电路,此电路先对微弱信号进行隔离放大滤波处理后,利用555定时器对已烧制程序的芯片进行控制,最后进行数字显示。温度测控仪可以通过显示控制电路进行预先的温度设定(包括限定值和修正值),倘若温度超过设定的限定值,控制电路就发出信号,中断热电偶的加热电源220VAC,同时发出信号使内部继电器导通,接通风扇的工作电源24VDC,这时风扇使热电偶降温,当温度降到设定温度的限定值时,显示控制电路将发出信号使继电器中断,风扇停止工作,同时发出信号导通热电偶的电源,使热电偶继续被加热,这样就构成了一个对温度信号的测试与闭环控制系统。二、虚拟仪器测控系统的结构与功能本课题利用虚拟仪器技术,通过软件编程来实现温度测控仪对温度信号的精确测试与控制功能,系统的结构示意图如图3所示。虚拟仪器测控系统通过传感器(热电偶)将温度信号转换为热电势,由于所转化的电压信号相当微弱(常温下仅有几十个微伏),因此通过SCXI电路调理箱将信号隔离放大滤波处理,经过数据采集卡输入计算机,利用由美国NI公司开发的LabWindows/CVI软件平台编写CVI程序,此程序对所采集的信号进行实时的显示和控制,同时程序中设定上限值,当温度超过所设定的值时,程序发出指令由计算机输出到采集卡,通过两个通道输出控制信号,一个通道控制传感器的加热电源,另一个通道控制风扇,这两个终端器件均作用于热电偶,当超限时通过开关电路使热电偶加热电源切断,而导通风扇电源,使之工作,此时温度开始下降,当温度降到所设定的值时,计算机发出指令,数据采集卡输出信号,导通热电偶加热电源,而风扇电源切断,这样就使得热电偶维持在所设定的温度上,形成一个完整的闭环测试控制系统,能够完全实现温度测控仪的功能。三、虚拟仪器测控系统的设计此系统分为硬件平台设计和软件平台设计。3.1硬件平台设计如图3所示,硬件包括温度传感器(热电偶)﹑SCXI电路调理箱﹑数据采集卡﹑计算机﹑开关电路﹑风扇和加热槽,其中,SCXI电路调理箱和数据采集卡采用NI公司的设备,SCXI调理电路由SCXI-1121来完成对极其微弱信号的调理,而数据采集卡采用PCI-MIO-16E-4型号,它的精度较高可以输入输出±10v范围的电压信号,而且对微弱信号的识别也很高。风扇的电机工作电压为24VDC,其中这部分电压由开关电路的内部电源来实现,加热槽的工作电压为220VAC,这个工作电压由外部电源输入,SCXI-1121调理电路具有可编程控制特性,可以通过软件调用LabWindows/CVI的库函数,通过对NI-DAQ驱动程序设置,实现SCXI电路调理的功能。调理电路的作用非常重要,因为热电偶将热转化的热电势非常微弱,后面部分我们会看到,当温度达到100℃时测得电压仅为几个毫伏,而在通常情况下,不用调理电路,数据采集卡是无法识别这么微弱的信号的,因为数据采集卡的最低识别电压在50mV以上,所以倘若不用电路调理箱,所有有用信号将被淹没在一片噪音当中,而由NI公司提供的SCXI电路调理箱主要起到隔离放大激励滤波的作用。所用硬件设备中开关电路要由自行设计完成,其结构示意图如图4所示。开关电路三个输入口和二个输出口,输入一个220VAC电压和有数据采集卡的Chanel0,Chanel1两个通道的输出6VDC电压,即作为加热槽和风扇工作的输出电压分别为220VAC和24VDC;其中继电器的工作电压为6VDC。整个硬件平台仅有220VAC交流输入分别作为开关电路,SCXI电路调理箱1234ABCD4321DCBA1ProtelInternationalP/LL3,12aRodboroughRdFrenchsForestNSWAustralia20861PowerSupplyCircuit11.0.03-Mar-200316:19:36C:\DocumentsandSettings\Administrator\桌面\cvioutput.ddb-Documents\PowerSupply.schTitleSize:Number:Date:File:Revision:SheetofTime:A4Vin220VACGNDB124VQ124VDCC11000uFK1220VACD11N4007D21N4007K224VDCVout0220VACR1510Vout1+24VDCGNDT1220T24Vin1+6VDCVin0+6VDC图4开关电路结构图及计算机电源输入,三个输入口,没有其它输入口,这样形成了一个整体的闭环系统,我们只要对虚拟仪器(计算机软件平台界面)进行温度设定,就可以完成对温度信号的精确测试和闭环控制。3.2软件平台设计集中在计算机内部这一结构模块上,包括对数据采集卡驱动程序NI-DAQ的属性的设置和在此基础上的SCXI电路调理箱的软件驱动程序属性的设置,在以上两部完成后就是利用由NI公司开发的LabWindows/CVI软件平台进行编程,创建自己的所需要的虚拟仪器测试与控制系统;其中LabWindows/CVI时由美国NI公司开发的一套优秀的开发平台,他以C语言为核心,将计算机软件平台与数据的采集,分析,处理及结果表达等仪器专业工具有机结合起来,为熟悉C语言的开发人员建立监测系统,测量系统,数据采集系统及过程监控系统提供了一个理想的软件开发环境,利用此平台可以实现WindowsSDK编程,使用和开发静态库和动态连接库,使用Activex控件,网络编程,数据库编程,高级的仪器控制编程,仪器驱动器开发,这些强大的功能为现代测控技术日新月异的发展提供了强大的动力,尤其LabWindows/CVI5.5.1进一步加强了对数据库和网络的支持能力,适应了现代分布式测控技术发展要求,为网络远程测控和网络制造的发展奠定了良好的基础。下面是依据温度测控仪的要求构建的相应的虚拟仪器软件系统编写CVI程序所用到的算法和一些注意事项。3.2.1数据采集卡的软件设置其中包括设置缓存Buffer单元的大小,创建任务AiTask和开始任务AiTaskStart,设置时钟Timer的扫描频率ScanRate及设置通道输入电压的上下限ConfigChannelLimits,它可以使得数据采集卡识别极其微弱信号,这一部分由以下模块实现:intCVICALLBACKAcquireCallback(intpanel,intcontrol,intevent,void*callbackData,intventData1,inteventData2){nidaqAICreateTask(ChanString,kNidaqWaveformCapture,&NumChan,&AiTask);nidaqAIConfigScanClockRate(AiTask,ScanRate,&ActScanRate);nidaqAIConfigBuffer(AiTask,200000,kNidaqContinuous);nidaqAIConfigChannelLimits(AiTask,ChanString,0.01.–0.005);}3.2.2SCXI电路调理箱的设置由以下函数模块实现,其中包括组件的ID,SCXI_Chassis_ID,通道号Module_Chanel极其增益SCXI_Set_Gain的设置:SCXI_Get_Chassis_Info(SCXI_Chassis_ID,&Chassis_Type,&Chassis_Address,&Commun_Mode,&Commun_Board,&Num_of_Slots);SCXI_Load_Config(SCXI_Chassis_ID);SCXI_Get_Module_Info(SCXI_Chassis_ID,Mod_Slot_Num,&Mod_Present,&Operat_Mode,&DAQ_Board_Connected);SCXI_ModuleID_Read(SCXI_Chassis_ID,Mod_Slot_Num,&Module_ID);SCXI_Configure_Filter(SCXI_Chassis_ID,Mod_Slot_Num,Module_Channel,1,10.00,2,2,&Actual_Cutoff_Frequency);SCXI_Set_Gain(SCXI_Chassis_ID,Mod_Slot_Num,Module_Channel,Module_Gain);SCXI_Single_Chan_Setup(SCXI_Chassis_ID,Mod_Slot_Num,Module_Channel,1);3.2.3输出控制信号和动态时实时显示温度信号nidaqAICheck(AiTask,&AcqState,&AcqBacklog);nidaqAIRead(AiTask,ChanString,AcqBacklog,-1.0,AcqData);以上两个函数可以将Buffer的数据(由数据采集卡传来的数据)读入到计算机内存RAM,并存放一个动态分配内存的数组AcqData中,利用如下函数可以对信号实时显示:SetCtrlVal(panelHandle,PANEL_TEMP,*AcqData);PlotStripChart(panelHandle,PANEL_CHART,datapoints,3,0,0,VAL_DOUBLE);四、热电偶的标定及误差分析4.1热电偶的标定由于温度测控仪是厂家生产的上市产品,因而是经过国家标准检验的合格产品,因此以它作为参考找到温度与电压之间的对应关系是将测得的电压信号转化成温度的关键,
本文标题:01-基于虚拟仪器的温度测控系统的实现
链接地址:https://www.777doc.com/doc-23344 .html