虚拟仪器技术课程设计(共13页).doc
精选优质文档-倾情为你奉上安徽建筑大学课程设计课程名称 虚拟仪器技术 课题名称 温度采集系统设计 专业班级 xxx 姓 名 xxx 学 号 xxx 指导教师 xxx 2013年12月30专心-专注-专业目 录一、摘要二、引言三、一、摘要虚拟仪器是计算机技术和仪器测量技术相结合的产物,它充分利用计算机强大的运算处理功能,突破了传统仪器在数据处理、显示、传输、存储等方面的限制。本文利用虚拟仪器平台,通过编写Labview 软件对温度进行测量,可以减少硬件的重复开发,有利于系统的维护,也便于系统软件升级。:利用图形化可视虚拟仪器应用软件labview作为温度采集监测系统的开发平台,通过数据采集卡与PC机构成一个功能强大的虚拟仪器,实现对温度的采集、显示、监测、报警等功能。利用虚拟仪器技术不仅简化了系统硬件,软件实现也很方便,同时图形化的显示使结果更直观、准确,并给出了模拟的系统程序关键词:温度、采集、虚拟仪器技术、labview。二、引言随着人们生活水平的不断提高,测量控制自动化无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的。利用LABVIEW在测控领域中具有十分广泛的应用,它既可以测量电信号,又可以测量温度湿度等非电信号。本次设计用LABVIEW进行温度采集,没有用到温度传感器,在这作者用模拟的进行温度采集,在LABVIEW里面用一个随机数代替了采集到的温度,通过控制它的上限温度,和下限温度采集在这个温度区间的数值,在这个数值区间之外就报警,反之就采集。时下,家用电器和办公设备的智能化、遥控化、模糊控制化己成为世界潮流,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。由于数据采集系统的应用范围越来越宽、所涉及到的测量信号和信号源的类型越来越多、对测量的要求也越来越高,国内现在已有不少数据测量和采集的系统,但很多系统存在功能单一、采集通道少、采集速率低、操作复杂,并且对测试环境要求较高等问题。人们需要一种应用范围广、性价比高的数据采集系统。我们这次的设计只是用LABVIEW进行设计一个简单的能进行温度采集控制的系统,系统中包括了开始采集,暂停采集,设置采集上限温度和下限温度,华氏和摄氏温度显示,是一个简单的基于LABVIEW的系统。三、虚拟仪器简介1.概述。虚拟仪器是在以计算机为核心的硬件平台上, 其功能由用户设计和定义, 具有虚拟面板, 其测试功能由测试软件实现的一种计算机仪器系统。虚拟仪器的实质是利用计算机显示器的显示功能来模拟传统仪器的控制面板, 以多种形式表达输出检测结果; 利用计算机强大的软件功能实现信号数据的运算、分析和处理; 利用I /O 接口设备完成信号的采集与调理, 从而完成各种测试功能的一种计算机仪器系统。使用者用鼠标或键盘操作虚拟面板, 就如同使用一台专用测量仪器一样 。2.虚拟仪器的结构根据I/O接口硬件设备的不同, 虚拟仪器可以分为多种类型, 本文采用的是基于串口的虚拟仪器测试系统, 它以串行总线设备与计算机为仪器硬件平台组成的虚拟仪器系统, 其结构图如图1所示。四、确定并分析系统设计要求温度采集系统概要如下:A) 设置温度采集数以及采集的速度。B) 通过判断温度是否在设置的范围内,进行报警和不报警处理:如果超出温度范围,虚拟面板的LED灯亮,同时报警次数+1;反之则不亮,报警次数不变。C) 采集的温度数据需要同时通过两种方式显示:(1) 可通过虚拟面板的波形图显示;(2) 可通过表格显示。其中表格中数据要求有采集时间。D) 同时在虚拟面板上,需要有:(1) 当前时间显示;(2)采集开始按键、采集停止按键、暂停按键等操作按键;(3)摄氏度和华氏度两种显示。为了设计方便,本设计用一个随机数据来代替温度传感器测试电路产生的电压输出。五、设计方案1前面板控件组成此温度采集系统包含:4个按钮:开始采集、暂停、清除警报和停止采集。4个数值输入控件:上限温度、下限温度、采集点数和采集间隔。4个显示控件:温度计、LED报警灯、显示温度数值的显示控件和显示报警次数的显示控件。1个波形图表(实时显示温度波形)。1个Express表格(每当采集一个温度就会显示出时间和温度数值)。前面板如下图所示:2.程序框图程序运行后执行2个步骤即程序结束:第一步,必须保证温度采集系统并未开始执行,必须由按钮“开始采集”触发后执行采集数据。第二步,在这一步中,包含2个同步事件,分别有暂停事件、停止采集事件。1)停止采集事件:当按下“停止采集”按钮,无论其它情况,必须程序第二步结束。2)暂停事件:当按下“暂停”按钮,采集卡必须停止收集数据,同时波形图表和Express表格也不再动态显示,各显示控件也将保持暂停前状态直至释放“暂停”按钮恢复原态。第二步中还包含有当采集数据数达到预给的采集点数时,程序自主停止结束。综上,得出如下主流程框图:3.软件设计第一步:这个步骤主要服务按钮“开始采集”,所以当按钮未触发的条件下,应使主程序始终停留在主程序顺序结构中的第一帧,所以这里采用一个while循环,循环体便是按钮“开始采集”接在此while循环的条件接线端上。当按钮未触发,则主程序始终停留在这一帧。当按钮触发,while循环结束,这一帧执行结束,进入下一帧,即第二步。程序框图如下图所示:第二步:此步包含2个大体事件:停止采集和暂停。2个事件是同步的,即各自独立运行,互不干扰,但却对第二步程序运行的结果有着意义。同第一步,要保持顺序结构的第二帧不在条件不满足的条件下执行结束,也要在第二帧执行后进入一个while循环,在这个while循环中执行第二步的程序,直到满足程序结束条件时退出while循环结束第二帧,并退出主程序。温度计、温度值、Express表格和波形图表a温度为了设计方便,本设计用一个随机数据来代替温度传感器测试电路产生的电压输出。这里生成一个-50250的随机数来表示温度。同时还有扭转开关去表示是摄氏度还是华氏度。摄氏与华氏的转换公式如下:华氏 = 摄氏*9/5 + 32;随机温度值设计如下:bExpress表格将每次产生的温度值送入表格显示,在前面板创建一个Express表格,然后再程序框图中将温度送出的值送到表格的信号接点即可,如下图所示:为了能显示温度值收集到时的时间值,可选择表格属性,勾选包含时间数据项,如下图:c波形图表将数据实时显示到波形图中,这里采用的方法如下所述:由于执行第二帧即进入了一个大while循环结构,在这个循环体中再放一个for循环,由于温度值是单个数据,进入波形图必须是数组格式数据信号,则将采集温度放置到这个for循环中,温度值输出到for循环外的波形图中,如此便构成了数组格式数据到波形图。再者,要实现实时显示,必须满足采集数据越少越好,才能更快的显示到波形图中,如果数据过多,则只能等到这一组数据采集完了才能显示,如此便有失实时一意,如此,此for循环仅执行一次,也就是每采集一个数据便显示到波形图中。程序如下:d日期时间和采集间隔显示时间即在程序中获取当前时间字符串,输出到一个字符串显示控件即可,如下图:采集间隔由用户自定义,即给温度采集设定一个采集间隔时间,在循环中加入一个定时即可,定时时间由采集间隔输入控件给出,如下图:e报警灯与报警次数当采集到的温度值大于上限温度值或小于下限温度值时,报警灯要亮灯示警,同时报警次数自动加1;否则灭灯,报警次数不变。这里采用一个条件结构,当满足报警条件则执行条件为真的程序即自动加1,不满足则执行条件为假程序。并且报警次数通过主while循环的移位寄存器来记录,并传给for循环。在for循环中,报警次数传给自动加1或不变的条件结构前有一个“清除警报”的条件结构,当按钮“清除警报”未触发时,即条件为假程序中将while循环移位寄存器的值不做任何改变传递给自动加1程序结构,而当按钮“清除警报”触发时,即条件为真程序中将while循环移位寄存器的值清零处理后传给自动加1程序结构。程序如下:f暂停操作当“暂停”按钮触发时,主while循环不执行任何程序即空程序,而未触发时,则执行温度采集程序等其他操作,因此,按钮“暂停”指向一个条件结构,条件真时为空程序,条件假时包含上一小节的for程序。同时,整个系统的采集数据个数也交给这个“暂停”操作和主while循环完成计数。即主while循环添加一个移位寄存器,在没有暂停时,对于寄存器中的值没执行一次while循环就自动加1,而在暂停时,对寄存器中的值不做任何修改,如此便可得到真正采集到的数据个数。程序如下图:g程序结束1) 当采集个数与用户自定义的采集点数相等时,程序要结束。2) 当按钮“停止采集”触发时,程序要结束。综上,两个条件为任一满足时都要结束程序,所以两个信号相或,或后的信号输出到主while循环的条件接线端即可。程序如下图:4.调试调试主要是检测设计系统是否能完成任务要求的功能。首先让系统自动连续运行,在设置里面设置上限温度为10,下限温度为100采集数量为10个,采集间隔两秒,点击开始采集,系统显示图如下:图十一 系统调试图从调试的图中可以查看到采集的十个数种有八个在10度到100度之外,所以报警八次,而从采样数据显示的八个数中的确有八个数不在采集温度区间之内。重新设置采集参数,实验三次,结果一致,所以可以的出这次的采集系统设计很成功。六、心得体会第一次接触LabVIEW 语言,看到它的图形化的语言确实有一些惊奇,想不到编程语言如此复杂,竟然还有这么一种全部是图形编辑的程序编辑软件,真是对编程人员来说无疑是一大福音啊!于是,哥儿几个就下定决心学好它,因为它有好几点我们从来没有体会过的好处:第一,图形化的语言,只要你知道它的每一个图标和各种内置的函数是表达怎么样一个意思,你就会用它简单快捷的实现你所要实现的功能;第二,很多硬件的东西可以用LabVIEW的内置各种函数来代替,不仅大大节省了很多外部的各种电路元件,而且利用电脑的CPU高速处理系统,让我们面对更加复杂的控制任务时更加从容,而不是局限于单片机系统有限的处理速度和片内资源;第三,用户可以根据自己的需要定义和制造各种仪器,LabVIEW的强大之处正在于此,把各种的仪器都在电脑上虚拟化了,让我们的工作更加方便。在制作课程设计的过程中,感觉自己的知识还是太有限了,还要继续学习,因为它对我们以后的学习和工作太有帮助了,因为它给人一种“电脑在手,使用不愁”的感觉。课程虽然学完了,但我们对于这门课的学习才刚刚起步,真心希望我们能够在这方面能有更深的造诣!七、参考文献1张健,韩薪莘.LABVIEW图形化编程与实例应用.北京:中国铁道出社 2戴鹏飞.测试工程与LABVEIW应用.北京:电子工业出版社 3路林吉.虚拟仪器的应用.电子技术 4侯国屏.LabVIEW7.1编程与虚拟仪器设计.清华大学出版社5杨乐平.李海涛,宵相生,等.LABVIEW 程序设计与应用.北京:电子工业社