APP下载

基于LabVIEW的用户登录温湿度检测系统

2021-10-13马江凯吕子友何英昊辅导老师

电子制作 2021年19期
关键词:字符串用户名温湿度

马江凯,吕子友,何英昊(辅导老师)

(大连理工大学城市学院,辽宁大连,116000)

0 引言

LabVIEW ( Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器工作平台)是美国NI公司推出的一种基于图形编程方法的虚拟仪器软件开发工具,用图标代替文本行创建应用程序,采用数据流编程方式,程序框图中节点之间的数据流向决定了程序及函数的执行顺序。LabVIEW广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。其程序设计可以大量减少硬件设备的使用,节省了更多资源。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。

1 总体设计

设计分为登录模块,注册模块和温湿度检测系统模块,各个模块实现各自对应的功能,登录模块:验证用户名及密码。注册模块:注册新的用户名并设置密码。温湿度检测系统模块:利用随机数产生温度,共计采集十次数据,并将数据由大到小排序、求出平均温度;利用随机数产生湿度,实时显示湿度;以流水灯形式显示所测的次数。注:后文使用文件a.txt为用户名+“空格”+密码文件;b.txt为用户名文件。

图2 注册模块(a)

2 详细设计

2.1 注册模块

图3 注册模块(b)

输入创建的用户名及密码,单击“确定注册”按钮。读取用户名文件中的文本,与现创建用户名进行对比。若对比相等,则单按钮对话框显示“用户名已注册,请重新输入用户名”;若对比不相等,则读取用户名及密码的文件中的文本与新创建(用户名+“空格常量”+密码)、“换行符常量”形成一个新的文本,存储到指定目录下的文件,单按钮对话框显示“注册成功”。

图5 登录模块(a)

2.2 对比模块

图4 注册模块-对比模块

从用户名文件读取所建所有用户名,将输入用户名字符串与其一行一行对比,若“搜索/拆分字符串”未找到相同字符串,则返回为空;若搜索相同字符串,则拆分字符串,将此行字符串及以后内容返回。“选行并添加至字符串”选取此行输出,与输入字符串进行对比。

2.3 登录模块

读取用户名文件的文本,与输入的用户名进行对比(同注册模块中对比模块),输入错误,显示“用户名错误,请重新登陆”,输入正确进行密码对比,密码错误显示“密码错误,请重新登陆”,密码正确显示“登陆成功”进入温湿度检测系统程序框图。

图6 登录模块(b)

2.4 密码对比模块

读取a.txt(用户名和密码)文件文本,将与输入用户名一致所在行及后面文本拆分保留,并取出对应用户名及密码所在行,用“截取字符串”从用户名字符串长度加1(创建时用户名与密码之间存在“空格常量”)的长度截取剩余部分,将此部分与输入密码进行对比。

图7 登录模块(c)

图8 登录模块-对比模块

图9 温湿度检测系统模块(a)

2.5 温湿度检测系统模块

利用随机数产生温度,开始时设置温度上下限(不设置默认为0)。温度正常为工作状态1,显示“温度正常!”。当温度超过上限或者低于下限时为工作状态2,开始报警,显示“警报!温度超限!当前温度为”并在其下方显示当前温度。一次测量十个数据,由温度计显示实时温度,由波形图记录测量的数据,将十次数据记录到数组中(隐藏),输出十次数据由大到小的排序,最后计算十个数据的平均值显示输出。再由随机数产生数据作为湿度,显示度数于波形图,实时显示示数和实时“水平填充滑动杆”显示。设置十个温度所需流水灯实时同步显示当前测量次数。

图10 温度检测系统模块(b)

2.6 前面板(部分控件已隐藏)

前面板见图11所示。

图1 设计思路

图11 前面板

3 结果验证

在前面板,连续运行前选择“注册”,输入注册用户名和注册密码(以aaaa 1111、bbbbb 22222、aaaaa 1111为例)注册。而后结束连续运行,选择“登录”,使用已注册用户名及密码登录。登录成功则开始温湿度检测系统的运行,可随时结束连续运行。进行过程中出现的现象如图12所示。注:一次连续运行仅执行一个模式,请选择模式后连续运行。

图12

注册后的txt文件如图13所示。注:a.txt为用户名+“空格”+密码;b.txt为用户名。

图13

登录成功后的温湿度检测系统(设置温度下限30,温度上限70),如图14所示。注:登录前设置温度上下限(不设置默认为0)。

图14

4 总结

本次实验设计使用LabVIEW平台,运用图形编程的方法设计带有用户登录的温湿度检测系统,从开始的温湿度检测系统,参考上课所学内容中设计模块,如:While循环结构、条件结构,设计随机数产生数据的子VI与其他需要此部分的程序相调用等等,实现带有温度上下限的数据采集及显示,后拓展至计算固定个数数据的平均温度值,并以流水灯的形式实时显示测量温度次数,结合用户登录及用户创建完成本次设计。设计流水灯时也尝试过不同循环结构,不同连接方法设计最后选择了本文的设计方法,在用户创建登录模块设计中也存在许多困难,通过查找相关文献,经过反复的设计修改完成了基本的功能,最终达到了预期的目标,本次实验设计仍有更多的发展改进空间。

猜你喜欢

字符串用户名温湿度
一种智能化电热处理炉用温湿度传感器的变送器
《现代临床护理》杂志投稿程序
《护士进修杂志》投稿程序
文物展柜内环境温湿度的调控与监测
蛋鸡育雏育成舍环境控制技术
温湿度独立控制空调系统在医院建筑中的应用研究
基于文本挖掘的语词典研究
机智的快递员
SQL server 2008中的常见的字符串处理函数
倍增法之后缀数组解决重复子串的问题