《传感器实训_1.docx》由会员分享,可在线阅读,更多相关《传感器实训_1.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、传感器实训虚拟温度传感器测量温度实训报告专业:应用电子班级:0805班学号:0508姓名:李杏指导教师:李国芹、刘振方日期:2020/12/20-2020/12/24一、Labview的简介LabVIEW程序:LabVIEW是一种程序开发环境,由美国国家仪器NI公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。1、简介与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包
2、括数据收集、GPIB、串口控制、数据分析、数据LabVIEW标志显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序子VI的结果、单步执行等等,便于程序的调试。虚拟仪器virtualinstrumention是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地讲这种结合有两种方式,一种是将计算机装入仪器,其典型的例子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能
3、。虚拟仪器主要是指这种方式。上面的框图反映了常见的虚拟仪器方案。2、主要特点虚拟仪器的主要特点有:尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,能够创造出功能更强的仪器。用户能够根据本人的需要定义和制造各种仪器。虚拟仪器实际上是一个根据仪器需求组织的数据收集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据收集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。虚拟仪器的起源能够追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在
4、Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前LabVIEW的最新版本为LabVIEW2020,LabVIEW2020为多线程功能添加了更多特性,这种特性在1998年的版本5中被初次引入。使用LabVIEW软件,用户能够借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEWReal-Time工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。普通的PC有一些不可避免的弱点。用它构
5、建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定了VXI标准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的VXI机箱,再与计算机相连,就组成了一个测试系统。VXI仪器价格昂贵,目前又推出了一种较为便宜的PXI标准仪器。3、将来评测虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE488或GPIB协议。将来的仪器也应当是网络化的。LabVIEWLaboratoryVirtualinstrumen
6、tEngineeringWorkbench是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据收集和仪器控制软件。LabVIEW集成了与知足GPIB、VXI、RS-232和RS-485协议的硬件及数据收集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵敏的软件。利用它能够方便地建立本人的虚拟仪器,其图形化的界面使得编程及使用经过都生动有趣。图形化的程序语言,又称为“语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概
7、念,因而,LabVIEW是一个面向最终用户的工具。它能够加强你构建本人的科学和工程系统的能力,提供了实现仪器编程和数据收集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,能够大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的位/64位编译器。像很多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。它主要的方便就是,一个硬件的情况下,能够通过改变软件,就能够实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!如今的图形化主要是上层的系统,国内如今已经开发出图形化的单片机编程系统支持32位的嵌入
8、式系统,并且能够扩展的,不断完善中(大家能够搜索CPUVIEW会有更具体信息;实训一:VI程序的创立与构造控制一、实训目的:创立VI程序,学习子程序的创立和调用,熟悉构造控制的使用。二、实验原理及道路:创立一个VI子程序模拟温度测量。AD90集成温度传感器在一定温度范围内输出电流与温度成正比。本程序可以实现摄氏温度或华氏温度显示温度值。创立一个VI程序检测温度能否超出范围,当温度超出上限时,前面板上的LED将点亮,并且有一个蜂鸣器发声。学习使用顺序构造和包括头文件的数据文件。当程序停止数据收集后,自动产生数据文件的头文件,它包括操作者名字和文件名,然后将收集的数据附在头文件后面。三、实训仪器设
9、备labview8.6软件由于如今没有DAQ数据收集卡。使用一个随机数来代替温度传感器的电流数据,然后把所测得的电流值换成摄氏或华氏温度读数。四、实训内容及步骤:一子VI前面板设计:前面板:1.用File菜单的New选项打开一个新的前面板窗口。2.把温度计指示部件放入前面板窗口。a.在前面板窗口的空白处点击鼠标键,然后从弹出的Numeric子模板中选择Thermometer。b.在高亮的文本框中输入“温度计,再点击鼠标键按钮。3.重新设定温度计的标尺范围为-20到120.0。使用标签工具A,双击温度计标尺的10.0,输入100.0,再点击鼠标键或者工具栏中的V按钮。4.在前面板窗口中放入竖直开
10、关控制。a.在面板窗口的空白处点击鼠标键,然后弹出的Boolean子模板中选择VerticalSwitch,在文本框中输入“温度值单位,再点击鼠标键或者工具栏中的V按钮。b.使用标签工具A,在开关的“条件真true位置旁边输入自由标签“摄氏,再在“条件假false位置旁边输入自由标签“华氏。5、放置电源开关取用控制模板中布尔子模板中的“椭圆形开关,并将控件的标签改为“电源。6、放置电源指示灯取用控制模板中“布尔子模板中的“方形指示灯,在空间上单击右键,弹出的菜单中选择“显示项中的标签的命令,去掉控件的标签。7、放置电流表取用控制模板中“数值子模板中的“仪表控件,并将控件的标签改为“电流表,在控
11、件上右击,弹出的菜单中选择“属性项,设置电流表的量程为200400,数据的类型为浮点数,精度为0.01。二子程序框图程序设计:1.从Windows菜单下选择ShowDiagram功能打开框图程序窗口。2.点击框图程序窗口的空白处,弹出功能模板,从弹出的菜单中选择所需的对象。本程序用到下面的对象:DemoReadVoltageVI程序Tutorial子模板。在本例中,该程序模拟从DAQ卡的0通道读取电压值。Multiply乘法功能Numeric子模板。Subtract减法功能Numeric子模板。在本例中,电流数据减去273.15,以转换成摄氏温度。摄氏温度乘以1.8,再加上32得到华氏温度。随
12、机数产生功能Numeric子模板,用于产生随机温度值。And假发3功能Numeric子模板。Select选择功能Comparison子模板。取决于温标选择开关的值。该功能输出华氏温度中选择开关为false或者摄氏温度选择开关为True数值。数值常数。用连线工具,点击你希望连接一个数值常数的对象,并选择CreateConstant功能。若要修改常数值,用标签工具双点数值,再写入新的数值。3.使用移位工具Positioningtool,把图标移至图示的位置,再用连线工具连接起来。注意,假如要显示图标接线端口,则点击图标,再从弹出菜单中选择ShowTerminals功能。可以以从Help菜单中选择S
13、howHelp功能以打开帮助信息窗口。4.选择前面板窗口,使之变成当前窗口,并运行VI程序。点击连续运行按钮,便程序运行于连续运行形式。5.再点击连续运行按钮,关闭连续运行形式。6.创立图标Temp:此图标能够将现程序作为子程序在其他程序中调用。创立方法如下:a.在面板窗口的右上角的图标框中点击鼠标,从弹出菜单中选择EditIcon功能。b.双点选择工具,并按下Delete键,消除缺省的图标图案。c.用画图工具画出温度计的图标。注意,在用鼠标画线时按下键,则能够画出水平或垂直方向的连线。使用文本工具写入文字,双击文本工具把字体换成SmallFont。当图标创立完成后,点击OK以关闭图标编辑。生
14、成的图标在面板窗口的右上角。7.创立连接器端口:a.点击右上角的图标面板,从弹出菜单中选择ShowConnector功能。LabVIEW将会根据控制和显示的数量选择一种连接器端口形式。在本例中,只要两个端口,一个是竖直开关,另一个是温度指示。b.把连接器端口定义给开关和温度指示。c.使用连线工具,在左边的连接器端口框内按鼠标键,则端口将会变黑。再点击开关控制件,一个闪烁的虚线框将包围住该开关。d.如今再点击右边的连接器端口框,使它变黑。再点击温度指示部件,一个闪烁的虚线框将包围住温度指示部件,这即表示着右边的连接器端口对应温度指示部件的数据输入。e.假如再点击空白外,则虚线框将消失,而前面所选
15、择的连接器端口将变暗,表示你已经将对象部件定义到各个连接器端口。注意:Labview的惯例是前面板上控制的连接器端口放在图标的接线面板的左边,而显示的连接器端口放在图标的接线面板的右边。也就是讲,图标的左边为输入端口而右边为输出端口。8.用文件菜单的SAVE功能保存上述文件,并将文件命名为Thermometer.vi如今,该程序已经编制完成了。它能够在其他程序中作为子程序来调用,在其它程序的框图窗口里,该温度计程序用前面创立的图标来表示。连接器端口的输入端用于选择温度单位,输出端用于输出温度值。9.关闭该程序。三主程序前面板设计:1、根据下列图设计前面板。2、“温度形式、“停止并保存数据均是布
16、尔控制控件,“报警是布尔显示控件,“设定高限为数值控件,“当前温度为布尔显示控件,“当前温度之状态“为字符串显示控件,当前温度“为数值型显示控件,操作者名“为布尔控制控件,文件保存途径“为途径控件。四主程序框图程序设计:1.根据上图所示,完成框图程序。2.从构造Structures工具模板选择条件循环构造“WhileLoop放入框图程序窗口,调整该条件循环框的大小,把先前从前面板创立的两个节点放入循环框内。条件循环构造是一种无限循环构造,只要条件知足,它就一直循环运行下去。在本例中,只要允许开关EnableSwitch是ON状态,该VI程序就一直运行,收集温度测量值,并在图表上显示。3.放入其
17、它的框图程序对象。ThermometerVI,这个VI程序是你在上个练习中创立的中创立的,从SelectaVI子模板找到文件。4.根据上图的框图程序连好线。5.创立形式开关。把连线工具放在ThermometerVI的Mode输入端口上,按鼠标右键并选择CreatControl,这样就能够自动创立形式转换开关,并将它与ThermometerVI子程序相连线,再转换到前面板窗口,将形式转换开关的位置重新调整。6.在前面板窗口,使用标注工具,双击形式开关的“OFF标签,并把它转换成“华氏,再把“ON标签转换民“摄氏。要转换开关状态,使用操作工具OperatingTool。7.使用Time&Dialo
18、g子模板中的WaitUntilNextmsMultiple功能,再加上时间常数NumericConstant,把它设置为250。8.该程序还使用了如下的功能模块:Case构造,右边的TURECase与图中的FALSECase同属于一个Case构造。根据其输入端上的树枝,来决定执行哪一个Case程序。假如Thermometer.Vi子程序返回的温度大于HighLimit数值,将执行TrueCase程序,反之则执行FalseCase程序。WriteCharacterstoFile模块在FileI/O子模板。该功能把一个字符串写入一个新的文件或者附加到一个已存在的文件中。它在写入前打开或者创立一个文
19、件,在完成时关闭该文件。在本例中,它用来建立头文件格式。WritetoSpreadsheetFile模块在FileI/O子模块。该模块把一个二维或者一维单精度数组转换成字符串,并把字符串写入一个新文件或者附回在一个已存在的文件后面。在本例中,它将由温度收集数据和上限值组成的二维数组附加在一个已创立了头文件的数据文件后面。Transpose2DArray模块在Array子模板。在本例中,它把二维数组转换成以列为分界的二维数组,这样在写入数据文件时它就会以列的形式显示。ConcatenateString模块在String子模板。在本例中,它用于创立头文件字符串。顺序构造程序按指定的顺序执行各个程序
20、步骤。在本例中,我们首先创立数据文件的头文件,然后再将数据写入文件中。9.条件循环框边线上的方块叫作通道tunnel。在本例中,通道是条件循环的数据通道口。若要建立数据索引,点击通道,并选择EnableIndexing选项,表示当条件循环执行时,把数据顺序放入一个数组中。循环结束后,通道输出该数组。否则,通道仅输出最后一次循环放入的数据值。10.返回前面板,在HighLimit控制栏中输入86,在OperatorName控制栏中输入你的名字,再输入数据文件名例如C:testdata.txt。运行该程序。当Enable开关设置为OFF状态后,将产生如下的ASCII文件。11.将文件命名为Temp
21、eratureControl.vi,并存盘退出用SaveAs选项。1.根据上图编写框图程序。被虚线框住的部分为新增加的部件。下面的FALSECase与图中的TRUECase同属于一个Case构造。根据其输入端上的数值,来决定执行哪一个Case程序。假如ThermometerVi子程序返回的温度值大于HighLimit数值,将执行TrueCase程序,反之则执行FalseCase程序。2.返回前面板程序,在HighLimit控制栏中输入86。再运行VI程序。当温度超过86时,LED将点亮,蜂鸣器也会发声。3.将程序重新命名为TemperatureControl.vi,并保存起来。1.完成上面的框
22、图程序。被虚线框住的部分表示新增程序。2.返回前面板,并运行VI程序。3.当允许运行开关EnableSwitch设置为OFF后,将显示温度数据曲线。4.面修改后的程序重命名为TemperatureAnalysis.vi并存盘。实训二:施行数据收集与显示一、实训目的以图表方式显示数据并使用分析功能子程序。二、实验原理及线路利用实训1创立的VI程序,在数据收集经过中,实时的现实数据,当收集经过结束后,在图表上画出数据波形,并算出最大值、最小值和平均值。三、实训仪器设备装有labview8.6的PC机。四、实训内容及步骤一前面板设计:1.打开实验2创立的Temperaturecontrol.vi程序
23、。2.根据左图修改程序。趋势图“温度历史趋势显示实时收集的数据。收集经过结束后,在TempGraph中画出数据曲线,同时在Mean、Max和Min数字显示栏中显示出温度的平均值、最大值和最小值。3.在前面板内再放置一个趋势图Graph子模板中的WaveformChart,标注为“温度历史趋势。该图表将实时地显示温度值。4.由于趋势图将它的图标注解plot自动地标注为“plot0,你能够用标注工具将其重新标注为“Temp。5.由于趋势图用于显示室内温度,需要对它的标尺进行重新定标。将Y轴的“10改为“100,而将“0.0改为“20。二框图程序设计:1.完成上面的框图程序。2返回前面板,并运行VI
24、程序。3观察并记录温度数据曲线。4.将修改后的程序重命名为TemperatureAnalysis.vi并存盘。三、实训体会通过本次实训,我了解到LabVIEW是一种程序开发环境,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式,与C和BASIC一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序子VI的结果、单步执行等等,便于程序的调试,它广泛地被
25、工业界、学术界和研究实验室所接受,视为一个标准的数据收集和仪器控制软件。LabVIEW集成了与知足GPIB、VXI、RS-232和RS-485协议的硬件及数据收集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵敏的软件。利用它能够方便地建立本人的虚拟仪器,其图形化的界面使得编程及使用经过都生动有趣;了解到虚拟仪器virtualinstrumention简称VI,是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向,虚拟仪器实际上是一个根据仪器需求组织的数据收集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据收集和数字信号处理。通过实训我学会了创立简单的VI程序,和程序的调用,熟悉了构造控制的使用,学会了简单的以用图标显示数据并使用分析功能子程序。对于labview的使用我需要进一步的学习和多多练习。
限制150内