LabView实验——温度检测系统(实验学习版)

LabView实验—温度检测系统

  • 前言
  • 一、实验要求
  • 二、操作步骤
    • 搭建设计思路
    • 温度显示及比较
    • 温度报警及计数
    • 功能键的实现
    • 温度转换与保存
    • 创新板块
  • 总结


前言

保姆级教学!眼睛说会了!那就一定会了!

为了让初学者熟悉Labview的编程环境及基本操作,此实验的难度始终,属于基础的实验。如果可以自己完整的按照实验要求做出完整的程序。那么对于labview的熟悉度会有一个很好的提升。希望看完这篇文章,可以完成下列目的。

1、熟悉软件的组成要素和基本操作;
2、学会使用前面板和后面板进行创建VI程序;
3、熟悉工具选板、控件选板、函数选板及基本逻辑运算、比较运算等的使用。
4、熟悉LabVIEW的数据类型;
5、掌握循环结构、事件结构和条件结构等的编程;
6、熟悉LabVIEW程序的多种调试技术(错误列表、高亮执行、断点与单步执行、探针等技术)


一、实验要求

要求:利用随机数发生器模拟当前温度值,并将其与设定的温度上限进行比较,当温度超过上限时报警灯变亮,并且报警次数+1。温度检测开关打开时进行温度监测,关闭后停止监测,状态栏显示当前程序的运行状态(即开始采集、停止采集和退出系统)。温度可以用摄氏或华氏温度表示。要求能够将温度数据保存于电子表格文件。

ps:要求界面美观

展示作者设计的前面板:

LabView实验——温度检测系统(实验学习版)_第1张图片


二、操作步骤

搭建设计思路

我所搭建的思路图如下:


LabView实验——温度检测系统(实验学习版)_第2张图片

按照上述思路图,我们按步骤进行实现即可。

温度显示及比较

首先我们在前面板创建一个数值量(温度计)。如图所示:

LabView实验——温度检测系统(实验学习版)_第3张图片

将随机数乘上100后的值赋予温度计,模拟温度传感器的值(一直在变化)。
ps:先设定的摄氏温度(0~100),然而随机数的范围为(0-1),所以需要乘上100
LabView实验——温度检测系统(实验学习版)_第4张图片

这样温度显示我们就完成了,接下来实现温度的比较。

我们再创建一个数值(温度计),将其改名为温度上限,并且为了区分,我们将其填充颜色改为蓝色(颜色可以任意选取)。然后需要将其转化为输入控件。

LabView实验——温度检测系统(实验学习版)_第5张图片


接下来实现比较函数。那么我们可以直接选用比较选板中的大于? 模块,这样即可实现比较功能。

LabView实验——温度检测系统(实验学习版)_第6张图片

至此,第一部分任务以及完成。

温度报警及计数

温度报警功能的实现,就是延续上述比较后,如果温度计示数大于预设的温度值,那么进行的操作。我设计当温度超过设定值时,红色布尔灯亮起且发出鸣笛声,如果未超过则绿色布尔灯亮起。

首先接着上续的比较后,连接红色布尔灯(在前面板先添加布尔灯,布尔灯的样式自选)
LabView实验——温度检测系统(实验学习版)_第7张图片

那么如何实现未超出温度值时绿灯亮?我们可以选择在比较结果后面先接一个布尔选板里面的 ,然后在的后面接上一个绿灯,那么即可实现功能。

或者采用属性节点,创建红灯的属性节点,然后将取反后的值赋予绿灯。

LabView实验——温度检测系统(实验学习版)_第8张图片

报警灯的部分就是如此,接下来实现报警蜂鸣声。


首先我们创建一个条件结构。然后以红灯的属性节点的值为分支选择器,当红灯亮的时候(也就是条件结构为真的时候)使报警声音响起。

LabView实验——温度检测系统(实验学习版)_第9张图片

其中加入延时的目的为了避免程序产生混乱。(蜂鸣声在图形与声音选板中)

紧接着计数功能的实现分为,温度超过上限值时记一次数,然后每一次报警都累加在一起。

首先在前面板建立一个数值显示控件,命名为超限报警次数。因为温度检测是一个持续的过程,不是只检测一个量,所以我们需要将程序加入到一个while循环里面。

LabView实验——温度检测系统(实验学习版)_第10张图片


紧接着我们可以在蜂鸣器响起的那个条件结构里面加上计数结构。因为我们温度超过上限值就是红灯亮起。

我们利用刚才创建的数值(超限报警次数),创建他的属性节点值,每一次红灯亮起时都可以令该数值加一。即可完成计数功能。

LabView实验——温度检测系统(实验学习版)_第11张图片

功能键的实现

根据题目要求,我们需要有开始采集停止采集退出系统三个功能键。开始采集键按下时,程序开始运行,当按下停止采集时,程序没有终止,但是温度不变化。当按下退出系统时,整个程序退出运行。

其中,开始采集与停止采集我采用一个按键实现。当按下时开始采集,再按一下即为停止采集。(因为按下为开始采集,所以按键在未按下时按键显示的是开始采集,按下后此时程序以及开始运行,那么再按一下将转变为停止运行,那么此时按键应该显示的时开始采集。

首先我们考虑退出系统的按键功能实现,我们前面的程序都是在while循环下面进行的,那么只要将退出系统按键连接到循环条件上即可。

LabView实验——温度检测系统(实验学习版)_第12张图片

接下来就是开始采集以及停止采集。先在前面板创建布尔按键,按键类型自选,我所选用的是银色→布尔→确定按钮。因为我们需要使按钮再按下前后展示不同的按键信息,所以我们需要先选中按钮,然后右键点击属性,选中多字符串显示,如图所示:

LabView实验——温度检测系统(实验学习版)_第13张图片
ps:需要将按钮的机械动作改为单击时释放


然后进入程序框图中,前面我们提到,我们需要实现的功能是按下开始 采集程序运行,按下停止采集,程序不结束,但不运行。

那么我们可以通过条件结构来实现。以开始采集按钮为分支选择器,当按钮按下时为开始采集,也就是条件为真的时候,我们在真的分支里面放入我们的程序,假的分支内什么也不接。

LabView实验——温度检测系统(实验学习版)_第14张图片

按照题目要求,我们还需要将程序状态显示出来,也就是上述的开始采集停止采集退出系统

那么首先在前面板上构建一个字符串显示控件,然后利用两次条件结构实现。
(1)首先以退出系统按钮为分支选择器,当条件为==真的时候(即为按下退出系统键),给予字符串显示控件一个字符常量“退出系统‘’。
(2)在假的分支里面再使用一个条件结构,连接开始采集键的属性节点值。再其真的时后给予”开始采集“,在其假的时候给予”停止采集“。

LabView实验——温度检测系统(实验学习版)_第15张图片


LabView实验——温度检测系统(实验学习版)_第16张图片


LabView实验——温度检测系统(实验学习版)_第17张图片

至此功能按键部分已经实现。

温度转换与保存

实验要求我们实现温度再摄氏度与华氏度之间转换。华氏度换算成摄氏度的公式是:(华氏度-32)/1.8。我们可以利用公式节点来实现。也可也利用简单的数值运算。

因为需要再前面板进行温度模式的选择,所以我们在前面板创建一个枚举常量。

LabView实验——温度检测系统(实验学习版)_第18张图片


然后右键选项编辑项,进行添加文字为华氏温度与摄氏温度。在程序框图里面利用条件结构实现。

LabView实验——温度检测系统(实验学习版)_第19张图片

LabView实验——温度检测系统(实验学习版)_第20张图片

温度数据的保存,我是利用labview自带的写入测量文件模块。

LabView实验——温度检测系统(实验学习版)_第21张图片

按如图所示连接即可。
LabView实验——温度检测系统(实验学习版)_第22张图片
连接好后双击该模块(写入测量数据),添加入保存地址即可。

LabView实验——温度检测系统(实验学习版)_第23张图片
至此,温度的转换与保存结束。

创新板块

创新部分我分成两个板块,首先是功能的添加,其次是界面的优化。
(1)功能的添加
我添加的功能是实时显示温度变化的图像,并且进行滤波显示。

利用for循环,每一次while大循环,里面for循环至运行一次,也就是只采一个值。利用平滑滤波函数进行处理,然后将为滤波的数据和滤波后数据捆绑给波形图显示,即可得到滤波前后的图。(两条曲线在一个图内)
LabView实验——温度检测系统(实验学习版)_第24张图片

ps:推荐的平滑滤波的讲解

(2)界面的美化是看个人喜好进行修改,在此我就展示一下我的成品

LabView实验——温度检测系统(实验学习版)_第25张图片


图像的导入方法:将emf或png格式图像保存在电脑桌面上,将其拖拽到LabView的前面板即可。

总结

至此本实验圆满结束,如果有需要源代码的友友们,可以去我的资源里面下载,或者点击下方连接!

温度检测系统源代码+word文档

你可能感兴趣的:(LabView,#,LabView实验练习,学习)