当前位置:首页 > 单片机 > 单片机
[导读]摘要:设计了基于单片机和PC机的温度监测系统,温度传感器采用DS18B20。下位机采用AT89S52单片机,可以显示温度和超限报警。PC机作为上住机设定上下限报警温度,接收单片机的温度数据,处理后实时显示温度和绘制温度

摘要:设计了基于单片机PC机温度监测系统,温度传感器采用DS18B20。下位机采用AT89S52单片机,可以显示温度和超限报警。PC机作为上住机设定上下限报警温度,接收单片机的温度数据,处理后实时显示温度和绘制温度曲线,还实现了超限报警和保存数据功能。上位机利用Matlab强大的数值计算、图形显示和串口操作功能,具有友好人机交互界面,实现了温度动态监测。
关键词:单片机;PC机;温度监测;Matlab;串口

    温度是一个重要的物理量,在工农业生产和日常生活中,经常需要对环境温度进行监测。本文设计了一个温度监测系统,温度传感器采用DS18B20,下位机采用AT89S52单片机,实现温度测量、显示、超限报警等功能,上位机采用PC机,利用Matlab设计了友好人机交互界面,实现温度的采集、显示、绘图、报警、保存数据等功能。

1 系统总体设计
    
系统采用AT89S52单片机作为下位机,PC机作为上位机,二者通过串口发送或接收数据,实现环境温度的测量、显示、超限报警、测温数据保存等功能。系统总体设计框图如图1所示。


    单片机最小系统包括单片机工作所必需的复位电路、时钟电路和电源电路。温度传感器采用DS18B20芯片,测量温度范围为-55~+125 ℃,该芯片不需要外接电源,可编程的分辨率为9~12位,测温分辨率最高可达0.062 5℃,数据传送只需要一条通信线,接单片机的P2.0口。温度显示部分使用4个八段LED共阳极数码管,采用动态驱动方式,数码管的a,b,c,d,e,f,g,DP八段由单片机P0.0—P0.7口控制,单片机的P1.0—P1.3口控制4个数码管轮流动态显示。超限温度报警采用蜂鸣器,由单片机的P2.1口控制发声。
    PC机的串行口采用的是标准的RS 232接口,而单片机的串行口电平是TTL电平,与RS 232的电气特性不匹配,所以系统采用常用芯片MAX 232来完成电平的转换,使单片机的串行口能与RS 232接口通信。上位机动态温度监测系统利用Matlab软件设计友好人机交互界面,实现温度数据的设置、采集、计算、显示与保存等功能。

2 下位机程序设计
    
单片机作为下位机,其主要任务是:
    1)通过DS18B20实现温度数据的采集和处理,并在LED数码管上实时显示当前温度,保留小数点后1位;
    2)通过串口接收上位机设定的上下限报警温度,并在LED数码臂上显示;
    3)通过串口接收要求发送温度数据的命令,向上位机发送温度数据;
    4)判断当前温度,如果超限启动蜂鸣器报警,设定不同频率的方波驱动蜂鸣器发出不同声音,用来区分超上限还是超下限。


    单片机采用Keil C51编写程序,DS18B20分辨率设为12位,其主程序流程图如图2所示。主程序主要完成系统的初始化,主要包括DS18B20和串口的初始化;4个LED数码管显示“0000”,等待上位机发送上限温度数据;接收数据后显示,等待上位机发送下限温度数据;接收数据,显示下限温度并延迟约2秒后开始测湿。读DS18B20温度值,将读取的低8位字节和高8位字节组成16位无符号整型温度数据(其中低4位为沮度的小数部分,中间8位为温度的整数部分),处理沮度数据并在数码臂上显示温度值;判断温度,超限报警;接收到上位机发送的命令字“255”就向上位机发送由DS18B20读出的16位温度数据,先发送低8位字节,后发送高8位字节;返回读DS18B20温度值。

3 上位机程序设计
    
PC机作为上位机,主要任务包括:
    1)设定上下限报警温度,通过串口发送给下位机;
    2)通过串口发送要求单片机传送温度数据的命令,命令数据为“255”;
    3)通过串口接收下位机的温度数据,做各种运算后显示温度值,并绘图;
    4)判断当前温度,如果超限启动报警指示和发声报警;
    5)保存测温时间及数据,以备查询。
    上位机采用Matlab编写程序实现与下位机通信及温度监测。Matlab是MathWorks公司开发的科学计算软件,具有强大的数值计算和图形显示功能,利用Matlab,用户还可以操作计算机的串口与外部设备进行通信,并且支持BS-232、RS422和RS485接口标准。Matlab内置了GUI(Gr aphie UserInterface)模块,具有界面设计开发功能。本文利用MatlabGUI设计了上位机系统界面,采用M文件编程设计的方式,比GUIDE(Graphical User Interface Development Environment)辅助设计的方式功能更强,且代码易于修改。系统测温的界面如图3所示。


    测温界面保留了MATLAB窗体框架窗口的菜单,利用菜单设计函数uimenu()设计了一级菜单About和二级菜单Operation steps和Contact us,可以弹出窗口显示系统的操作步骤和作者的联系方式。
    利用函数uicontrol()的Style属性的text类型在窗口左下角建立设定上下限温度的显示、超限报警指示、测温开始和结束时间显示,在窗口右上角建立当前、最大、最小和平均温度显示。利用函数axes()建立1个位于窗口中心坐标轴,用于绘制动态温度曲线。利用函数uicontrol()的Style属性的pushbutton类型在窗口右下角建立5个按钮。对各控件编辑Callback回调函数,实现完整的上位机温度监测功能。
    “打开串口”按钮操作主要完成串口初始化,其中利用了obi=serial(‘coml’,‘baudrate’,9600,‘parity’,‘none’,‘databits’,8,‘stopbits’,1)语句设定串口对象obj连接到串口com1,设定波特率为9600,不做奇偶校验,设定传输的数据位数目为8位,字节终止位数为1位。再利用fopen(obj)打开串口对象。
    “关闭串口”按钮操作主要利用fclose(obj)和delete(obj)语句完成串口的释放。
    “开始测温”按钮操作是系统软件的核心,利用了fwrite(obj,255)语句发送命令字“255”,要求下位机发送温度数据;利用fread(obj,2)语句接收2字节的16位温度数据,先接收低8位字节,后接收高8位字节,16位数据中低12位为温度数据,首先判断温度正负,再计算当前温度,累计测量温度的最大值、最小值和平均值,小数点后保留1位显示在界面的右上角数据显示区;根据当前温度利用plot()函数实时
绘制温度曲线;判断温度是否超限,如果超限进行报警指示,当前温度显示红色,并利用sound()函数发声报警。当温度超限时的报警界面如图4所示。


    “保存数据”按钮操作打开文件保存对话框,选择路径、保存测温数据及测温时间,其中调用了Matlab保存文件对话框函数uiputfile(),用save函数保存.mat格式的数据。
    上位机操作步骤为鼠标单击“打开串口”按钮,用户先后输入报警上限和下限温度;单击“开始测温”按钮开始测温。测温结束时单击“关闭串口”按钮;再单击“保存数据”按钮,选择保存路径,输入文件名保存测温数据及测温时间;最后单击“退出”按钮关闭窗口退出系统。

4 结论
    
设计的基于单片机PC机的动态温度监测系统分别在上位机和下位机实现了温度显示和报警功能,上位机还实现了绘制动态温度曲线,保存数据以备查询。系统利用了Matlab强大的数值计算、图形显示和申口操作功能,具有友好的人机交互界面,实现了温度的动态监测。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

北京 2025年6月9日 /美通社/ -- 2025年6月5日,国家知识产权局官网发布了《关于第二十五届中国专利奖授奖的决定》(国知发运字〔2025〕20号)。同方威视"一种行李物品CT安检系统及其探测器装置...

关键字: BSP 探测器 智能机 系统设计

在一些特殊的工业场合,有时需要将传感器的信号不断的实时采集和存储起来,并且到一定时间再把数据回放到PC机中进行分析和处理。

关键字: PC机

超市水果识别主要依赖人工,计算机视觉成为一种解决方案。然而目前仍面临部分水果识别精度低、终端设备部署困难、误识别图片难处理等挑战。因此,文章基于深度学习对移动端水果识别进行研究,旨在替代人工识别。首先文章构建了包含49种...

关键字: 水果识别 数据集构建 改进注意力机制 ViT 系统设计 模型权重自更新

新3U服务器支持最多18个GPU,搭载双Intel® Xeon® 6900系列P核处理器 加利福尼亚州圣何塞2024年10月10日 /美通社/ -- Super Micro...

关键字: MICRO SUPER 人工智能 系统设计

经过优化的 EDA 和 IP 全面解决方案为台积公司 N2 和 A16 工艺带来强化的计算性能、功耗和工程生产力 摘要: 由Synopsys.ai赋能、可投入生产的人工智能驱动EDA流程面向N2工艺可实现全球领...

关键字: 人工智能 晶体管 系统设计 芯片

PC机所使用的电源是基于一种叫做 “开关模式 ”的技术,所以我们通常把PC电源称为——开关电源(SMPS),它还有一个别名——直流——直流转换器。

关键字: PC机 开关模式 直流

数字可编程变频电源是一种能够根据用户需求调整输出电压和频率的电源设备。它在工业生产和实验室研究等领域中被广泛使用。

关键字: 单片机 可编程电源 系统设计

随着科技的不断发展,计算机与嵌入式系统之间的通信已成为现代电子技术的重要组成部分。PC机与单片机之间的通信关系是其中的重要一环。本文将详细探讨PC机与单片机之间的通信关系,包括串口通信、并口通信、USB通信等,并分析它们...

关键字: 计算机 嵌入式系统 PC机

太阳能供电应用系统的设计需要考虑多个方面,包括太阳能电池板、储能装置、控制模块等。本文将介绍一种基于太阳能供电的应用系统设计方法,并从这几个方面进行详细阐述。

关键字: 太阳能 系统设计

北京2023年8月15日 /美通社/ -- 日前,在第五届OCP China Day 2023(开放计算中国技术峰会)上,浪潮信息正式推出融合架构3.0原型系统,以开创性的系统架构设计实现了计算资源、存储资源、...

关键字: 系统设计 内存 软件定义 数据中心
关闭