《虚拟仪器课程设计.doc》由会员分享,可在线阅读,更多相关《虚拟仪器课程设计.doc(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、沈阳工程学院课程设计任务书课程设计题目:基于Labview的传感器仿真实验设计系 别 自动控制工程系 班级 测控本101 学生姓名 学号 指导教师 职称 助工 课程设计进行地点: F座430 任 务 下 达 时 间: 13年 3月4日起止日期: 13年3月4日起至13年3月8日止教研室主任 年 月 日批准沈阳工程学院课程设计题目:基于Labview的传感器仿真实验设计 系 别 自控系 班级 测本101 学生姓名 学号 指导教师 职称 助工 课程设计进行地点: F430 任 务 下 达 时 间: 13年 3月4日 起止日期: 13年3月4日起至13年3月8日止教研室主任 年 月 日批准 基于La
2、bview的传感器仿真实验设计课程设计成绩评定表系(部): 自控系 班级: 学生姓名: 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以12) 分加权分合计指 导 教 师 签
3、 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以8)分加权分合计评 阅 教 师 签 名: 年 月 日课 程 设 计 总 评 成 绩分1.设计主要内容及要求;设计基于Labview 的传感器仿真实验要求:1)掌握NI-DAQ使用方法 2)了解传感器实验的基本步骤。 3)虚拟仪器仿真传感器实验
4、过程,其中的实验结果可以用DAQ采集外部信号发生器的值。2.对设计论文撰写内容、格式、字数的要求;(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计 划
5、完 成 内 容备注13月4日教师讲解题目,学生查阅相关资料23月5日进行方案论证,确定程序流程,熟悉NI-DAQ使用方法33月6日程序设计43月7日调试程序53月8日撰写论文,成果验收 中文摘要 虚拟仪器是基于计算机的仪器,是一个按照仪器需求组织的数据采集系统。Labview是一种图形化的编程语言和开发环境,是标准的数据采集和仪器控制软件。利用虚拟仪器和Labview软件可对电位器进行数据采集、分析,从而进行标度。用户利用Labview编程就好像在“绘制”程序流程图。正式由于Labview面向的是广大普通工程师而非编程专家,因而其已成为目前应用最广、发展最快、功能最强、最流行的虚拟仪器开发平台
6、。本课程设计所使用的为DAQ助手,利用DAQ产生重量信号,在对其进行写入和读取,最后制成十组数据的表格,然后再制成XY图显示出来。本次课程设计是基于Labview8.5这一软件所设计的。根据常用信号源的基本要求设计合理的数学模型,并通过虚拟仪器和数据采集卡共同作用输入信号。关键词:虚拟仪器、DAQ助手、数据、表格、XY图 目录基于Labview的传感器仿真实验设计课程设计成绩评定表II中文摘要IV1 设计任务描述11.1设计题目:基于labview的传感器仿真实验设计11.2设计要求11.2.1设计目的11.2.2基本要求11.2.3发挥部分12.设计思路23.主程序流程图34 各部分程序设计
7、及框图44.1 重量部分的程序44.2 电压部分的程序64.3 XY图像85.工作过程分析95.1重量与电压数值的采集95.2重量数值的写入与读取105.3电压数值的写入与读取105.4 XY图116.主要元器件介绍126.1 NI-DAQ采集卡126.2格式化写入文件136.3读取文本文件157.小结17致谢18参考文献19附录 程序框图201 设计任务描述1.1设计题目:基于labview的传感器仿真实验设计1.2设计要求1.2.1设计目的能够熟悉利用Labview软件,并用此软件编写程序框图和构造前面板。使设计的面板更直观,漂亮。达到虚拟仪器的功能。1.2.2基本要求要求:1)掌握NI-
8、DAQ使用方法 2)了解传感器实验的基本步骤。 3)虚拟仪器仿真传感器实验过程,其中的实验结果可以用DAQ采集外部信号发生器的值。1.2.3发挥部分1)将转速作为X轴,电压作为Y轴,绘制XY曲线。 2.设计思路本题目的设计要求是使用DAQ作为采集信号模拟为电机的转速,再通过应变片转换为电信号显示出来,最后绘制成以转速作为X轴,电压作为Y轴的曲线图,并对其进行误差分析。 首先是将DAQ作为输入信号输入到电脑中,然后再通过数组记录下来一组的数据,共有100个数,再通过求取平均数来取得第一个数,再将第一个数写入记事本中,再将其读出来,写在文本中。其它的三组数组也是同理,共有十组数据。 因为本次实验中
9、没有办法将电机的转速输入到电脑中所以就将DAQ中输入的电压当做电机的转速,自己创建一个公式将电机的转速和电压联系起来,我所写入的是电压为电机的转速的五倍,但是实验会存在误差,所以在本实验中人为的添加了随机误差。 然后将电压写入文本中,然后再读出来,创建一个数组。因为文本文件为txt格式,为字符串格式。需将写入电子表格再读出来,最后以转速为X轴,电压为Y轴,画出曲线图。 3.主程序流程图DAQ速度输入写入文本中从文本中读出创建一个包含十个数据的数组通过转速与电压的关系显示出电压值电压值写入文本从文本中读出创建电压的数组创建XY图4 各部分程序设计及框图4.1 速度部分的程序 首先我们需要用DAQ
10、来模拟转速值,将其写入表格共100个数值。但因为产生的数值为100个且数值在不断地变化中,但是我们需要一个数值。所以我们需要把这一百个数值相加,再除以100就能得到了平均数值。再将平均值写入文本中,再将其从文本中读取出来,最终得到数值。 因为共有十组数据,以上只是完成了一组数据的写入与读取。在本程序中需要测量十组数据,所以需要一个条件结构,分别放入这十组数据,从1到10。并且可以通过在条件结构处添加的数值输入控件来调节所选择的数组。便可进行数据的写入与存储。 在后面板上有一个速度存储开关,用于控制文本的读取,如果开关打开则可以读取,如果开关未打开,则不能读取,以此来控制读取的数组。 速度部分的
11、程序框图如下图所示: 4.1.1速度部分的后面板 4.1.2速度部分的前面板4.2 电压部分的程序 本课程设计的目的是为了仿真传感器的实验,电机的转速与电压的关系。因为本次实验中没有办法将电机的转速输入到电脑中所以就将DAQ中输入的电压当做电机的转速,自己创建一个公式将电机的转速和电压联系起来,我所写入的是电压为电机转速的五倍,但是实验会存在误差,所以在本实验中人为的添加了随机误差,再把所测量出的十组电压写入一个数组中。电压部分的程序框图如下图所示:在后面板上有一个电机转速开关,用于控制文本的读取,如果开关打开则可以读取,如果开关未打开,则不能读取,以此来控制读取的数组。 4.2.1电压部分的
12、后面板4.3 XY图像但是因为所写入和读出的方式都是文本,即为txt的格式,这种格式无法绘制成XY图。所以需要将转速和电压的数组分别写入电子表格中,然后再读取出来,最后绘制成的图像就是以转速为X轴,以电压为Y轴的XY图。绘制的XY图如下图所示: 4.3.1 XY图后面板 4.3.2 XY图前面板 5.工作过程分析5.1重量与电压数值的采集 一切准备就绪后,点运行按钮,程序开始运行。这时可以通过调节数组选择开关来选择向哪个数组中添加数值。然后可以调节数组选择开关将十组数据都采集下来。结果如图所示:5.2转速数值的写入与读取当数组由一个变化到另一个时,转速的数值被记录下来,当十组数据都被记录下来时
13、打开电压存储开关和转速存储开关,此时数据将被写入文本中。5.3电压数值的写入与读取然后电压和转速的数值将被读出来,再将这十组数据运用创建数组将这十组数据创建成一个数组。5.4 XY图但是因为是写入文本所以读出的为字符串格式,不能用于创建XY图,所以必须将其转化成数字的形式。将这十组数据写入电子表格,再读取出来则可用于XY图的X轴和Y轴。 6.主要元器件介绍6.1 NI-DAQ采集卡可利用编程语言驱动程序函数,从而驱动数据采集卡,设计者只需正确设置输入参数,就可实现数据采集的任务,而不需要编写代码程序。一个典型的数据采集卡的功能有模拟输入、模拟输出、数字I/O、计数器/定时器等,这些功能分别由相
14、应的单元电路来实现。模拟输入是采集卡最基本的功能。它一般由多路开关、放大器、采集/保持电路,以及A/D转换器来实现,通过这些部分,一个模拟信号就可以转化为数字信号。A/D转换器的性能和参数直接影响着模拟输入的质量,要根据实际需要的精度来来选择合适的A/D转换器。模拟输出通常是为系统提供输出或控制信号。数模转换器的建立时间、转换率、分辨率等因素都会影响模拟输出信号。建立时间和转换率决定了输出信号幅值改变的快慢。建立时间短、转换率高的D/A转换器可以提供一个较高频率的信号。应该实际需要选择D/A转换器的参数指标。数据采集(DAQ)是通过DAQ卡采集数据和输出数据。通常一块DAQ卡能实现多种功能,其
15、中包括模数转换(A/D)、数模转换(D/A)、数字输入输出(DI/O)和计算器/定时器功能。 图6.1数据采集卡各接口介绍 6.2格式化写入文件 将字符串、数值、路径或布尔数据格式化为文本并并写入一个文件。该函数不可用于LLB中的文件。格式字符串指定如何转换输入参数。默认状态将匹配输入参数的数据类型。右键单击函数,从快捷菜单中选择编辑格式字符串,可编辑格式字符串。该输入端最多支持255个字符。 输入文件可以是引用句柄或绝对文件路径。如果是引用句柄,节点将打开引用句柄指定的文件。如指定的文件不存在,函数将创建该文件。默认状态将显示文件对话框并提示用户选择文件。如指定空路径或相对路径,函数将返回错
16、误。 错误输入表明VI或函数运行前发生的错误。默认值为无错误。如错误发生在VI或函数运行之前,VI或函数将把错误输入值传递至错误输出。如在VI或函数运行前没有发生错误,VI或函数将正常运行。如在VI或函数运行时发生错误,VI或函数将正常运行并在错误输出中设置自身的错误状态。简易错误处理器或通用错误处理器VI可用于显示错误代码的说明信息。错误输入和错误输出用于检查错误并通过将一个节点的错误输出与另一个节点的错误输入连线指定执行顺序。 状态的值为TRUE(叉)时表示在VI或函数运行前已发生错误,值为FALSE(勾)时表示警告或无错误。默认值为FALSE。 代码是错误或警告代码。默认值为0。如状态的
17、值为TRUE,代码将为非零错误代码。如状态的值为FALSE,代码将为0或警告代码。 源表示错误或警告的源,大多数情况下表示出现错误或警告的VI或函数名。默认值为空字符串。 输入1.n指定要转换的输入参数。输入可以是字符串路径、枚举型、时间标识或任意数值数据类型。函数不能用于数组和簇。 输出文件引用句柄是VI读取的文件的引用句柄。根据对文件的不同操作,可将该输入端连线至其它文件函数。如文件被文件路径引用或通过文件对话框被选定,默认状态下将关闭文件。如输入文件为引用句柄,LabVIEW将假定文件仍在使用,直至它被关闭。 错误输出包含错误信息。如错误输入表明在VI或函数运行前已发生错误,错误输出将包
18、含相同的错误信息。否则,表明VI或函数中出现的错误状态。右键单击错误输出的前面板显示控件,从快捷菜单中选择解释错误可获取更多关于该错误的信息。 状态的值为TRUE(叉)时表示错误,的值为FALSE(勾)时表示警告或无错误。 代码是错误或警告代码。如状态的值为TRUE,代码将为非零错误代码。如状态的值为FALSE,代码将为0或警告代码。 源表示错误或警告的源,大多数情况下表示出现错误或警告的VI或函数名。 6.3读取文本文件从一个字节流文件中读取指定数目的字符或行。该函数不可用于LLB中的文件。对话框窗口(打开现有文件)是在文件对话框的文件或目录列表以及文件夹上方显示的信息。 文件(使用对话框)
19、可以是引用句柄或绝对文件路径。如果是路径,函数将打开路径指定的文件。如指定的文件不存在,函数将创建该文件。默认状态将显示文件对话框并提示用户选择文件。如指定空或相对路径,亦或文件不存在,函数将返回错误。 计数是函数读取的字符数或行数的最大值。如提前到达文件结尾,函数实际读取的字符数和行数将小于最大值。如计数0,函数将读取整个文件。如勾选快捷菜单上的读取行,将只读取一行;如取消勾选该菜单项,将读取整个文件。 如连线至计数的文件大小的数据类型不是32位整数,LabVIEW将把数据类型强制转换为32位整数。VI将不会读取指定数量的数据。如将1连线至计数且要读取的文件太大,无法表示为32位整数,Lab
20、VIEW将返回错误。错误输入表明VI或函数运行前发生的错误。默认值为无错误。如错误发生在VI或函数运行之前,VI或函数将把错误输入值传递至错误输出。如在VI或函数运行前没有发生错误,VI或函数将正常运行。如在VI或函数运行时发生错误,VI或函数将正常运行并在错误输出中设置自身的错误状态。简易错误处理器或通用错误处理器VI可用于显示错误代码的说明信息。错误输入和错误输出用于检查错误并通过将一个节点的错误输出与另一个节点的错误输入连线指定执行顺序。 状态的值为TRUE(叉)时表示在VI或函数运行前已发生错误,值为FALSE(勾)时表示警告或无错误。默认值为FALSE。 代码是错误或警告代码。默认值
21、为0。如状态的值为TRUE,代码将为非零错误代码。如状态的值为FALSE,代码将为0或警告代码。 源表示错误或警告的源,大多数情况下表示出现错误或警告的VI或函数名。默认值为空字符串。 引用句柄输出是函数读取的文件的引用句柄。根据对文件的不同操作,可将该输入端连线至其它文件函数。如文件被文件路径引用或通过文件对话框被选定,默认状态下将关闭文件。如文件是引用句柄或连线引用句柄输出至其它函数,则LabVIEW认为文件仍在使用,直至它被关闭。 文本是从文件读取的文本。默认状态下,该字符串中包含从文件第一行读取的字符。如连线计数接线端,则参数为字符串数组,包含从文件读取的行。如右键单击函数并取消勾选快
22、捷菜单的读取行,则参数为字符串,其中包含从文件读取的字符。 取消如取消对话框则值为TRUE。 错误输出包含错误信息。如错误输入表明在VI或函数运行前已发生错误,错误输出将包含相同的错误信息。否则,表明VI或函数中出现的错误状态。右键单击错误输出的前面板显示控件,从快捷菜单中选择解释错误可获取更多关于该错误的信息。 状态的值为TRUE(叉)时表示错误,的值为FALSE(勾)时表示警告或无错误。 代码是错误或警告代码。如状态的值为TRUE,代码将为非零错误代码。如状态的值为FALSE,代码将为0或警告代码。 源表示错误或警告的源,大多数情况下表示出现错误或警告的VI或函数名。 7.小结 为期一周的
23、虚拟仪器的课程设计结束了,在这一周的时间里我对虚拟仪器的软件labview掌握的更加的熟练,并对DAQ的知识也有所掌握。并且完成了所设计题目的要求。在开始拿到题目时确实有些摸不到头脑,但在询问了老师每个模块的应该怎样做,并且查阅了一些资料后开始有了自己的想法。每个部分逐个设计,看看是否能实现所需要的功能,然后再把每个模块拼接起来设计,最后形成整个程序框图。在设计每个模块时都有问题困扰,但是我在自己思考以后询问了老师问题的原因,并且在老师的帮助下完成了本次的设计。当我的程序完成时的那种兴奋感是无法表达的,这次设计是对我能力的一种肯定。并且通过了自己的设计可以达到模仿传感器实验的目的,这让我感受到
24、了现在科学技术水平的突越。但是在本次课程设计中也存在着不足,比如说有些问题自己没有想好就去问老师,在老师的指导下自己恍然大悟。所以在以后的课程设计中自己一定要先想好问题的所在再问他人。在本次课程设计中对我帮助最大的是雷老师,是老师的耐心教导才使我能够完成本次的课程设计,非常感谢老师及我的同学对我的帮助。本次的课程设计虽然结束了,但是努力学习并没有结束。我也收获了很多,也学会了团队精神的重要性,个人的能力是有限的,团结才能有力量,我们都尽自己所能来完成这次课程设计。这是对我们所学的课本知识的测验,也是对是否能快速吸收新的知识的一种考验。 致谢在这次虚拟仪器课程设计中我学到了很多知识,锻炼了自己的
25、能力,感谢我的指导老师雷老师在此次课程设计中给予我的指导,也感谢我的组员对我的热心帮助。在这次课程设计中中,雷老师在虚拟仪器课程设计实践经验给我们许许多多的帮助,在我们面对问题时对我们的耐心指导,对我们不会的问题进行了耐心的知道,非常感谢老师对我的帮助。在此我还要感谢的是我们组的所有成员,在我们组中每一个成员都细心的研究与相互探讨,在不懂的时候我们都耐心的探讨和查阅资料,直到解决问题为止。在我们的相互研究与探讨中我们增长了知识学到了不少的东西,在我们的相互帮助中我们才能顺利完成我们的课程设计任务所以我要感谢他们。这次课程设计不仅让我开阔了视野,拓宽了思路,增长了学识,而且为我今后的工作和学习打下了牢固的基础。最后,我要再次感谢我们的指导老师雷老师,谢谢您对我们的帮助和支持。祝您在今后的工作生活中一帆风顺,事事顺心。 参考文献【1】侯国屏,王坤,叶齐鑫。Labview7.1编程与虚拟仪器设计,清华大学出版社【2】刘君华. 基于LabVIEW的虚拟仪器设计.电子工业出版社,2003【3】邓岩,王磊磊测试技术与仪器应用机械工业出版社,2004【4】杨乐平,李海涛,杨磊LabVIEW课程设计与应用电子工业出版社,2005【5】雷勇虚拟仪器设计与实践电子工业出版社,2005 附录 程序框图
限制150内