基于MATLAB GUI的环境温湿度检测上位机设计

2021-12-17 09:08张学军
电子制作 2021年22期
关键词:上位串口温湿度

张学军

(胶州市职业教育中心学校,山东青岛,266300)

0 引言

检测装置主要用于对所需知晓的物理量进行传感器传感,并经滤波、放大、AD转换等处理电路后转变为计算机能够处理的数字量传送到控制器[1,2],通过在控制器中移植显示器的驱动程序,并开发显示器的GUI界面,实现数据采集与显示、参数设定与保存等。目前,温湿度检测装置在化工电子、食品工业、冷链物流、药品行业、航空航天等领域广泛应用,而所使用的检测装置多采用控制器控制显示器实现温湿度读取与人机交互,如王子权[3]等基于STM32处理器,在处理器中移植了emWIN 界面设计系统,通过emWIN中的API函数进行控制界面的设计,并可在界面中进行控制参数设定等。陈伟刚[4]基于开源的轻量级的作业调度框架Quartz设计实现了一种提供定时任务调度服务的分布式系统,分析了Crontab、JDK的定时器和Quartz三种方案,调试表明系统不仅满足了定时基本业务需求,还具备动态扩展、负载均衡等能力。分析可知,采用控制器控制显示器实现温湿度读取与人机交互的实现方式对控制器的内存和显存要求较高,且当面临多任务处理时会导致控制器的控制速度降低。因此需设计一种上位机,以代替传统交互,缓解终端控制器压力,提高控制与检测效率和稳定性。

1 需求分析

■1.1 现场对温湿度及其检查装置的要求

某产品生产工位,对环境温湿度的需求为:环境温度保持在24±4℃;环境湿度保持在35%~55%RH。

对温湿度检测装置的要求为:

(1)温湿度检测需具有一定精度高,其中温度检测精度为±2℃,湿度检测精度为±5%RH;

(2)检测装置必须能够直观地显示温湿度值,且方便观测和读取;

(3)数据间的传输建议使用串口通信,以便于连接电脑或其他主机;

(4)温度检测周期不高于2min,湿度检测周期不低于5min。

(5)装置具有报警和解除报警功能,当温湿度超出要求范围值时应能报警提示工作人员,当值恢复正常时应能自动解除报警。

■1.2 解决方案

基于对需求的分析,可从控制器终端与上位机两个方面进行研制。

控制器终端采用STM32F103ZET6型控制器,在控制器上集成16个DHT11型号温湿度传感器,通过DHT11的数据总线实现与控制器的数据传输。STM32本身集成了串口通信总线,其PA9和PA10两个引脚分别对应RS232串口的发送和接收信号线,因此可通过RS232通信实现与其他装置的通信功能。

上位机的设计可通过多种方式实现,目前主流的上位机设计语言包括:C#、C++、JAVA、MATLAB、图形语言、PLC语言等,分别对应的集成开发环境为:VisualStudio、eclipse、MATLAB、LabVIew、PLC相 关 设 计 软 件 等。本文采用基于MATLAB的GUI设计方法,该方法具有与VisualStudio相似的界面设计环境,同时可直接调用MATLAB中的算法函数等,MATLAB运行环境中集成了众多数据处理算法和函数,因此可在一定程度上释放开发者对算法的设计时间,提高开发效率。

2 基于MATLABGUI的上位机设计

■2.1 MATLABGUI开发环境

MATLAB是一款强大的集数值运算和符合运算的数学计算软件。现已发展成为数学计算、图像处理、工程计算、人工智能、大数据、医疗、天文等众多领域研究的比不可少的计算工具。MATLAB GUI是MATLAB的界面设计环境,具有开发环境简单、操作方便等特点,因此在设计基于MATLAB的界面时,通常会在MATLABGUI开发环境下进行,特别是大型的人机交互软件设计时。在MATLAB GUI工具箱中为用户提供了多种控件,如按钮、复选框、菜单栏、图标框、滑动条、文本框、多行文本、检查框等,用户可通过拖动方式将控件放置显示幕布上,同时可根据需要设置控件在幕布中的方位。控件的函数功能在回调函数中进行编写。

■2.2 基于MATLAB GUI的上位机设计

主要进行上位机的主界面、串口设置界面、控制参数定义界面、数据曲线显示界面设计。以主界面、串口设置界面和数据曲线显示界面为例进行说明。

主界面设计如图 1所示。主界面是软件打开时第一个显示的界面,界面中包含了文件的打开与保存、串口扫描与打开和关闭串口,并在串口配置信息栏显示串口配置信息。工具栏“打开”图标用于调用操作系统文件选择界面,“打开”的文件形式包括:.txt、.ini两种形式,文件中保存的数据包括串口配置数据和文件保存路径数据。工具栏“保存”图标用于调用操作系统文件保存界面,可选择将文件保存为:.txt、.ini两种形式,文件中保存的数据包括串口配置数据和文件保存路径数据,当第一次选择好文件保存路径后,后续再次点击“保存”按钮,则不再弹出操作系统文件保存界面,而直接使用第一次的文件保存路径直接保存文件。“定义控制参数”为一个按钮,主要功能是进入控制参数设置界面;“数据曲线”为一个按钮,主要功能是打开数据曲线显示界面;“配置信息发送至MCU”为一个按钮,主要功能是将设定的控制参数发送至控制器;“进入监测系统”为一个按钮,主要功能是进入检测监控界面。

图 1 上位机主界面

定义控制参数界面如图 2所示,图中控制温度、控制湿度可设置温度和湿度的控制最大值和最小值;监测温度值保存位置、监测湿度值保存位置以文本.txt形式分别保存控制温度和控制湿度数据。通过“确认设置”按钮自动保存控制参数设置值,通过“取消”按钮取消控制参数设置,返回主界面。

图 2 控制参数设置界面

串口配置界面如图 2所示,图中显示了串口号、串口的波特率设置、校验位设置、数据位设置和停止为设置等,系统默认的串口配置为115200、N、8、1。点击“确定”按钮可将串口配置信息保存到文件中。点击“取消”按钮,取消串口配置。串口号用于显示当前电脑上连接有多少个串口通信设备,并以“COM1”,“COM2”,…,“COMn”的形式显示出来,图中显示了串口1信息“COM1”,因此在点击确定按钮后,系统将保存COM1串口信息,系统打开的串口为串口1。

数据曲线显示界面如图 3所示。图中显示了经控制器转换后的温度数据曲线和湿度数据曲线,并在生产现场对设备进行调试。可知,环境温度值基本稳定在25度左右,且上下浮动的幅值较小,湿度值基本稳定在42.5 %RH左右,且上下浮动的幅值较小。图中“关闭”为一个按钮,通过该按钮可将数据曲线的实时显示关闭,此时“关闭”按钮自动变为“开启”按钮,如需再次实时显示数据曲线,则点击“开启”按钮。

图 3 串口配置界面

图 4 数据曲线显示界面

3 结束语

设计了一套基于MATLAB GUI的环境温湿度检测上位机,其主要功能包括串口参数设定、串口调试界面、控制参数设置与保存、数据曲线绘制、监控界面等。通过与终端机进行RS232通信实现上位机与终端机的交互,通过上位机实现人机交互。经调试,该上位机可全部实现设计的功能,极大地缓解了终端控制器的处理压力,实现了更快速和友好的控制与检测。

猜你喜欢
上位串口温湿度
蛋鸡育雏育成舍环境控制技术
一场史无前例的乐队真人秀
档案库房温湿度记录统计及调控
MCS—51单片机中的多串口通讯技术的应用
基础油“上位”
变电站高压配电智能温湿度控制装置的研发与应用
全国计算机等级考试机房准备工作探讨
档案库房温湿度调控思考
微机串口的测试诊断
基于VC的PLC数据采集管理系统