1、西安交通大学检测技术技术专题实验报告西安交通大学检测技术基础专题实验实验报告实验一 学用DRVI可重构虚拟仪器实验平台一、实验目的 通过本实验让学生了解虚拟仪器的概念和基于组件的装配式软件设计方法,掌握用DRVI可重构虚拟仪器平台进行计算机测试系统设计的方法。 二、DRVI可重构虚拟仪器实验平台简介1、概述DRVI可重构虚拟仪器实验平台是华中科技大学何岭松教授项目组和深圳市德普施科技有限公司联合开发出的一种自主知识产权的新型装配架构的虚拟仪器,其设计思想是按照汽车和PC机的装配式生产模式,将计算机虚拟仪器测试系统分解为一个软件装配底盘和若干实现独立功能的软部件模块。然后,根据测量任务需求,用软
2、体底盘把所需的软部件模块装配起来,形成一个满足特定需求的测试系统。当测试任务发生变化时,对软体底盘上装配的软部件模块进行重新组合和装配就可以快速调整为另一个新的测量系统。DRVI的主体为一个带软件控制线和数据线的软主板,其上可插接软仪表盘、软信号发生器、软信号处理电路、软波形显示芯片等软件芯片组,并能与A/D卡、I/O卡等信号采集硬件进行组合与连接。直接在以软件总线为基础的面板上通过简单的可视化插/拔软件芯片和连线,就可以完成对仪器功能的裁减、重组和定制,快速搭建一个按应用需求定制的虚拟仪器测量系统。图1、虚拟仪器软件总线结构图2、软件安装和运行从光盘启动DRVI可重构虚拟仪器实验平台安装程序
3、DRVISetup.exe(或从深圳市德普施科技有限公司网站下载该软件),运行该安装程序后出现如下界面,按提示进行软件安装,分别填写用户名、单位,并设定软件工作路径等参数,直至出现结束画面为止。安装完成后在WINDOWS桌面上出现图标,在程序组中出现DRVI,双击该图标就可以启动DRVI软件。图2、DRVI软件安装界面DRVI启动后点击红色箭头所示按钮从DRVI采集卡、运动控制卡,或网络在线进行注册登记,获取软件使用权限,然后就可以使用了。图3、DRVI软件运行界面3、插接软件芯片 DRVI通过在前面板上可视化插接虚拟仪器软件芯片来搭构虚拟仪器或测量实验。插接软件芯片的过程很简单,从软件芯片表
4、中点击需要的软件芯片,将其添加到DRVI前面板上,然后在新插入的软件芯片上压下鼠标不放,将其拖动到合适位置。重复上述步骤,插入其它软件芯片。图4、用DRVI设计虚拟仪器插接在DRVI前面板上的虚拟仪器软件芯片的屏幕位置是可以移动和调整的,点击快捷工具条中的“移动软件芯片位置”图标,然后在待移动的软件芯片上压下鼠标不放,就可以将其拖动到新位置,从而实现屏幕布局的调整。4、DRVI软件总线的概念和软件芯片的连线 为实现虚拟仪器软件芯片间的数据交换,DRVI中设置了一组软件总线,包括256条Double型单变量数据线和32条Double型数组型数据线,可传输有效值等单变量数据,也可传输波形、频谱等数
5、组数据。虚拟仪器软件芯片可以通过这组透明的数据总线进行数据传输和命令数据交换。任何两个虚拟仪器软件芯片只要连接在一条数据线上就可以在彼此间交换数据,就象在物理上用通讯线路连接在一起的节点间可以彼此交换数据一样。连线的方法是在软件芯片上点击右鼠标键,弹出该芯片的属性表,修改其中的连接数据线号就可以实现软件芯片间的连线。图5、虚拟仪器软件芯片的连线5、虚拟仪器设计样例:李沙育图形 若将两路不同相位的同频正弦波信号分别作为X轴和Y轴信号输入X-Y信号示波器,其信号波形是一个椭圆,称为李沙育图形。在DRVI中设计李沙育图形很简单,用两片数字信号发生器芯片产生同频的正弦波信号,然后用一片旋钮芯片控制其中
6、一个数字信号发生器芯片的相位,最后用一片X-Y曲线显示芯片显示李沙育图形就可以了。转动旋钮就可以产生出不同相位差的正弦波信号合成的李沙育图形。三、实验内容设计一个李沙育图形实验演示系统,显示两路正弦波信号在不同相位差下的李沙育图形。设计一个李沙育图形实验演示系统,显示两路正弦波信号在不同频率差下的李沙育图形。四、实验仪器和设备计算机 1台DRVI快速可重组虚拟仪器平台 1套打印机 1台五、实验运行界面截图六、思考题1.什么是虚拟仪器,其本质特征是什么?虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。虚拟仪器从本质上说是一个集成的软硬件概念。2.什么
7、是基于组件的应用软件开发,它和传统的基于编程语言的应用软件开发有什么区别和特点?基于组件的开发是一种软件开发范型。它是现今软件复用理论实用化的研究热点,在组件对象模型的支持下,通过复用已有的构件,软件开发者可以“即插即用”地快速构造应用软件。特点:这样不仅可以节省时间和经费,提高工作效率,而且可以产生更加规范、更加可靠的应用软件。3.简述DRVI可重构虚拟仪器平台的工作原理。DRVI的主体为一个带软件控制线和数据线的软主板,其上可插接软仪表盘、软信号发生器、软信号处理电路、软波形显示芯片等软件芯片组,并能与A/D卡、I/O卡等信号采集硬件进行组合与连接。直接在以软件总线为基础的面板上通过简单的
8、可视化插/拔软件芯片和连线,就可以完成对仪器功能的裁减、重组和定制,快速搭建一个按应用需求定制的虚拟仪器测量系统。实验二 学用Signal VBScript编程语言一、实验目的了解DRVI可重构虚拟仪器平台中提供的嵌入式Signal VBScript语言,掌握用Signal VBScript语言产生测试信号、绘制曲线和进行信号分析的方法,掌握根据所学知识,用Signal VBScript设计自定义软件模块的方法。二、Signal VBScript简介1、概述Signal VBScript是在网页设计中常用的VBScript编程语言的基础上针对测试技术课程教学需要而扩展的一个内嵌在DRVI可重构
9、虚拟仪器平台中的在线编程语言,教师和学生可以像设计网页中的VBScript、JavaScript小程序那样用Signal VBScript设计小程序来扩展DRVI功能,同时也可以对所学知识进行检验和实践。如果您已经了解 VBScript 或 Visual Basic,会很快熟悉 Signal VBScript。即使没有学过这两种语言也可以通过下面的介绍快速学会简单的程序设计。2、Signal VBScript 变量和数据类型与其它编程语言不同,VBScript 只有一种数据类型,称为 Variant。Variant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。Variant
10、 用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。 用户在编程时不需要定义变量类型,变量类型在第一次对该变量赋值时由初始值确定。例如下面是一段VBScript程序代码: Dim a,ba=2.5 b=Hi其中Dim为变量申明语句,变量a初始化为数字量,b初始化为字符串。不同类型的变量不能在一起直接运算,可以用CStr函数将数字量转换为字符串,或用CDbl函数将字符串转换为数字量。3、数组变量数组变量和普通变量是以相同的方式用Dim声明的,唯一的区别是声明数组变量时变量名后面带有括号 ( )。下例声明了一个包含5个元素的一维数组: Dim A(5)虽然括号中显示的数字是5,但
11、由于在 VBScript 中所有数组都是基于 0 的,所以这个数组实际上包含 6 个元素。 在数组中使用索引为数组的每个元素赋值,如下所示: A(0) = 1 A(1) = 2 . . . A(5) = 6与此类似,使用索引可以检索到所需的数组元素的数据。例如: x = A(3) 数组并不仅限于一维,声明多维数组时用逗号分隔括号中每个表示数组大小的数字。在下例中,Table 变量是一个有 6 行和 11 列的二维数组: Dim MyTable(5, 10)4、VBScript 运算符 VBScript 有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符,如下表所示。算术运算
12、符比较运算符逻辑运算符描述符号描述符号描述符号求幂等于=逻辑非Not负号-不等于逻辑与And乘*小于逻辑异或Xor整除小于等于=逻辑隐含Imp加+对象引用比较减字符串连接&5、使用条件语句 使用条件语句可以控制 程序的流程,可以编写进行判断和重复操作的 VBScript 代码。在 VBScript 中可使用以下条件语句: If.Then.Else 语句 和 Select Case 语句使用 If.Then.Else 进行判断的例程: If b = 0 Then c=1 Else c=2 End If 使用 Select Case 进行判断例程: Select Case value Case 0
13、 value=1 Case 1 value=2 Case Else value=4 End Select6、使用循环语句 循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。 在 VBScript 中可使用下列循环语句: Do.Loop: 当(或直到)条件为 True 时循环。 For.Next: 指定循环次数,使用计数器重复运行语句。使用 Do 循环例程: Do While Num 10 Num = Num - 1 Loop使用 For.Next例程: For j = 1 To
14、10 Step 2 Next7、使用过程 VBScript中,过程被分为两类:Sub 过程和 Function 过程。Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句,执行操作但不返回值。Sub 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号()。例如: Sub ConvertTemp(data) temp = data/128 End SubFunction 过程是包含在 Function 和 End Function 语句之间的一组 VBScript 语句。Function 过程与
15、 Sub 过程类似,但是 Function 过程可以返回值。Function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。Function 返回值的数据类型总是 Variant。 Function Celsius(fDegrees) Celsius = (fDegrees - 32) * 5 / 9 End Function8、常用VBScript标准函数 Abs函数:返回一个数字的绝对值。调用方法:a=Abs(-100) Atn函数:返回一个数字的弧正切值(arctangent)。 调用方法:a=Atn(1)*180/3.14 CDbl函数:返回已转换成 Double 型的
16、字符串的值。 调用方法:a=Abs(12.5) Cos函数:返回一角度(弧度)的余弦值。 调用方法:a=Cos(60*(3.14/180) CStr函数:返回已转换成字符串的数字量的值。 调用方法:a=Cstr(2.56) Exp函数:返回 e (自然对数的底数) 的某次方。 调用方法:a=Exp(1) Int函数:返回数字的整数部分。 调用方法:a=Int(3.25) Log函数:返回一个数字的自然对数。 调用方法:a=Log(12) Rnd函数:返回一个随机数(0 到 1)。 调用方法:a=Rnd() Round函数:返回已进位到指定小数位的数字。 调用方法:a=Round(2.75678
17、,2) Sgn函数:返回指出数字之正负号的整数。 调用方法:a=Sgn(-11) Sin函数:返回一个角度(弧度)的正弦值。 调用方法:a=Sin(60*(3.14/180) Sqr函数:返回一个数字的平方根。 调用方法:a=Sqr(9) Tan函数:返回一个角度的正切值。 调用方法:a=Tan(1) 9. Signal VBScript扩展的软件总线读写函数 Document.Getline函数:读取单变量型软件总线数据线的值。调用方法:值=Document.Getline (线号) Document.Setline函数:设定单变量型软件总线数据线的值。调用方法:Document.Setli
18、ne 线号,设定值 Document.GetArrayInterval函数:读取数组型数据线的数据点间隔值。调用方法:数据点间隔= Document.GetArrayInterval (数组型数据线号) Document.getArrayStart函数:读取数组型数据线的起始点坐标。 调用方法:数据点间隔=Document.getArrayStart(数组型数据线号) Document.getarrayline函数:读取数组型数据线上的波形或频谱数据到数组中。 调用方法:Document.getarrayline 数组型数据线号,读取点数,数组名 注意:对于VBScript,其变量初始化为VA
19、RIANT不定型,该函数中使用的数组是Double型,使用前先需对其进行Double赋值,强制转换为Double类型,如下所示: Dim data(2048),data1(2048) For K = 0 To 2047 data(k)=0.00001 Next Document.getarrayline 1,2048,dataDocument.SetArrayInterval函数:设定数组型数据线的数据点间隔。 调用方法:Document.SetArrayInterval 数组型数据线号,数据点间隔 Document.setArrayStart函数:设定数组型数据线的起始点坐标。 调用方法:D
20、ocument.setArrayStart 数组型数据线号,起始点坐标Document.setarrayline函数:用数组值设定数组型数据线上的波形或频谱数据。 调用方法:Document.setarrayline 数组型数据线号,读取点数,数组名 10. Signal VBScript扩展的图形函数 Document.Write函数:在(x,y)用色彩c写字符Str。色彩用16进制RGB表示,大红为0xFF0000。调用方法:Document.Write x,y,c,Hi. Document.DrawLine函数:在(x1,y1)到(x2,y2)间用色彩c画一条直线。 调用方法:Docum
21、ent.DrawLine x1,y1,x2,y2,c Document.drawbar函数:用色彩c填充(x,y)到(x+w,y+h)的矩形区域。 调用方法:Document.drawbar x,y,w,h,c Document.Fillcircle函数:用色彩c填充(x,y)为圆心,r为半径的圆形区域。 调用方法:Document.Fillcircle x,y,r,c Document.Circle函数:用色彩c以(x,y)为圆心,r为半径画圆。 调用方法:Document.Circle x,y,r,c Document.Rectangle函数:用色彩c以(x,y)和(x+w,y+h)为端点
22、画矩形。 调用方法:Document.Rectangle x,y,w,h,c Document.Arc函数:用色彩c以(x,y)为圆心,r为半径,a1、a2为起始角和终止角画圆弧。 调用方法:Document.Arc x,y,r,a1,a2,c 三、实验内容用Signal VBScript中的数学函数产生一个幅值为800,频率100Hz的正弦波信号。信号采样频率取10000Hz,用图形函数绘出信号波形,代码如下。或者用DRVI中的波形显示组件显示信号波形。Rem VBSCRIPTDim wave(128)pi=3.141amp=800dt=0.001For i=0 To 15 t=2*pi*1
23、00*i*dt wave(i)=amp*Sin(t) NextDocument.DrawLine 20,120,400,120,0Document.DrawLine 20,20,20,220,0Document.Write 24,20,0, 1000Document.Write 24,210,0,-1000Document.Write 10,113,0,0Document.Write 300,128,0,0.03f=100/1000For i=0 To 14 x1=20+i*20 y1=120-wave(i)*f x2=20+(i+1)*20 y2=120-wave(i+1)*f Docume
24、nt.DrawLine x1,y1,x2,y2,12Next用DRVI搭建一个简单的实验系统,如图1所示。图2、用Signal VBScript绘制信号波形用Signal VBScript中的图形函数绘制一个温度计或仪表盘虚拟仪器控件,用于显示单变量测量值。图3、用Signal VBScript绘制虚拟仪器显示元素下面是用VB Script 编制的一个温度计绘制程序代码段,自己用DRVI搭建一个简单的实验系统。Sub tempature(x,y,max,min,v) For i=0 To 10 Document.DrawLine x+30,y+i*15,x+35,y+i*15,0 Next D
25、ocument.Write x,y-5,0,Cstr(max) Document.Write x,y+145,0,Cstr(min) Document.drawbar x+45,y,26,150,1 Document.Fillcircle x+45+12,y+150+13,16,12 h=v*150/(max-min) Document.drawbar x+45,y+150-h,26,h,12End Sub四、实验仪器和设备1. 计算机 1台2. DRVI快速可重组虚拟仪器平台 1套3. 打印机 1台五、实验运行界面截图六、思考题1、如何用Signal VBScript设计自定义组件,以实现特
26、定的运算或扩展DRVI功能?通过程序的逻辑实现芯片的功能,再将多个芯片以需要的方式进行组合,即可实现特定的运算或拓展DRVI功能2、用DRVI设计一个简易电子琴,用自定义Signal VBScript组件产生A、B、.、O琴键对应的131、147、.、523Hz的纯音信号。实验三 环境监测综合实验台应用实验一、实验目的通过本实验让学生了解环境监测中常用传感器的种类和用法。二、环境监测综合实验台简介环境监测实验模块由温度传感器、湿度传感器、光传感器、声传感器、二氧化碳传感器、酒精传感器和K型热电偶构成,可完成实验室一些基本环境参量的测量。为便于使用,将这些传感器安装在一个综合实验模块上。环境监测
27、实验模块配置如下表所示,实际内容以环境监测实验模块产品说明书为准。环 境 监 测 实 验 模 块 详 细 配 置1DRWZ-5-B型温度传感器5DRZS-5-A型声传感器2DRSD-5-A型湿度传感器6DRCO2-12-A型二氧化碳传感器3DRGS-12-A型光传感器7DRKTC-5-A型K型热电偶套件4DRJJ-5-A型酒精传感器8三、实验原理1、热电阻测温原理物质的电阻率随温度变化而变化的物理现象称为热电阻效应。大多数金属导体的电阻随温度的升高而增加,电阻增加的原因可用其导电机理说明。在金属中参加导电的为自由电子,当温度升高时,虽然自由电子数目基本不变(当温度变化范围不是很大时),但是,每
28、个自由电子的动能将增加,因此,在一定的电场作用下,要使这些杂乱无章的电子作定向运动就会遇到更大的阻力,导致金属电阻随温度的升高而增加,其变化关系可由下式表示:图 2 金属电阻温度特性曲线式中:Rt、R0分别为热电阻在t 和t0 时的电阻值,为热电阻的电阻温度系数(1)。从上式可见,只要保持不变(常数),则金属铂(PT1000)电阻Rt将随温度线性地增加,如图28.1所示。其灵敏度系数K为:显然,越大,灵敏度K就越大,纯金属的电阻温度系数为0.30.6。但是,绝大多数金属导体,并不是一个常数,它也随着温度的变化而变化,只能在一定的温度范围内,把它近似地看作为一个常数。不同的金属导体,保持常数所对
29、应的温度不相同,而且这个范围均小于该导体能够工作的温度范围。根据热电阻效应制成的传感器叫热电阻传感器,简称热电阻。热电阻按电阻温度特性不同,可分为金属热电阻(一般称热电阻)和半导体热电阻(一般称热敏电阻)两大类。实验所用温度传感器属于铂热电阻传感器。铂的物理、化学性能非常稳定,尤其是耐氧化能力很强,并且在很宽的温度范围内(1200以下)均可保持上述特性。电阻率较高,易于提纯,复制性好,易加工,可以制成极细的铂丝或极薄的铂箔。其缺点是:电阻温度系数较小,在还原性介质中工作易变脆,价格昂贵。由于铂有一系列突出优点,是目前制造热电阻的最好材料。在1968年国际实用温标(IPTS-68)中,规定在29
30、5.34630.74温度范围内,以铂热电阻作为标准仪器,传递从13.81K到903.89K温度范围内国际实用温标。它的长时间稳定的复现性可达10-4K,是目前测温复现性最好的一种温度计。铂热电阻与温度之间的关系近似线性关系。 在-200t0时可用下式:在0t650时可用下式:式中:Rt温度为t时铂热电阻的电阻值;R0温度为t0时铂热电阻的电阻值;A、B、C由实验确定的常数,它们的数值分别为:A3.9684710-3-1,B=5.84710-7-2,C4.2210-12-4。在实际工程应用当中,可以把铂热电阻与温度之间的关系看成线性关系。在本实验中,所使用的铂热电阻0时的电阻值是1000欧姆,电路的输出灵敏度是10mv/。即铂电阻的输入温度每上升1,电路的输出就对应增加10mv。测量范围:0200。2、K型热电偶温度测量实验热电偶由
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1