基于Arduino的温度测量系统的研究

时间:2022-08-28 09:18:01

基于Arduino的温度测量系统的研究

摘要:设计了一种基于Arduino Mega 2560和DS18B20的多点温度测量系统。该温度测量系统主要包含温度检测单元和控制单元两个部分,利用DS18B20的单总线结构,实现了电路简单、功能可靠的多点温度测量系统。可用于多点温度测量和温度场的分布测量等多种场合。

关键词:温度测量DS18B20Arduino单总线

中图分类号:TB393 文献标识码:A 文章编号:1007-9416(2016)06-0000-00

很多场合都需要进行温度检测,最常用的方法是采用单片机和温度传感器配合工作。但通常使用的单片机往往不容易上手,开发周期长。Arduino的出现解决了这一问题,它是一类便捷灵活、方便上手的开源电子原型平台[1]。基于AVR平台,Arduino对AVR库进行了二次编译封装,将端口都进行打包处理,因此不需要了解其内部硬件结构和寄存器设置,不需要用户直接处理底层系统,提高了应用程序的开发效率。本文利用Arduino的便捷灵活、方便上手这一特性,并选用DS18B20作为温度采集传感器,设计了一套多点温度测量系统。

1系统总体设计

系统的结构如图1所示,主要由温度采集单元和Arduino主控板构成。温度传感器DS18B20以单总线的连接方式将采集到的温度数据发送给Arduino主控板,Arduino主控板通过串口将整合后的温度数据上传到PC端,在PC端对接收到的数据进行显示、存储、分析。

2温度检测系统的硬件设计

2.1 主控板Arduino Mega 2560

Arduino Mega 2560是采用USB接口的核心电路板,它的处理器核心是ATmega 2560,具有54路数字输入/输出口,其中16路可作为PWM输出,16路模拟输入,4路UART接口,一个16MHz晶体振荡器,一个USB口,一个电源插座,一个ICSP header和一个复位按钮[2],其开发板图如图2所示。

与Arduino系列其他型号的开发板相比,Mega 2560是一个增强型的Arduino控制器,它提供了更多的输入输出口,可以控制更多的设备,以及拥有更大的程序空间和内存,为以后系统的升级提供了硬件基础。

2.2 DS18B20温度传感器

DS18B20是由美国DALLAS半导体公司推出的一种“一线总线”接口的温度传感器。具有体积小,硬件开销低,抗干扰能力强,精度高等特点,其常见的封装形式如图3所示。

DS18B20采用单总线的连接方式,单总线系统包括一个总控制器和多个DS18B20从机构成。通过单总线访问DS18B20的基本协议为:初始化、ROM操作命令、存储器操作命令和执行/数据四个步骤[3]。

由于每个DS18B20都有一个独特的片序列号,所以多只DS18B20可以同时连在一根单线总线上,系统中数据口为主控板的P10引脚,用于读写和温度转换,电源由主控板的5V电压口直接提供,无需外部电源[4]。

2.3 温度测量电路设计

本文设计的温度检测系统利用了主控板自带的5V电源直接供电,省去了外部电源电路的设计。并采用了一个4.7KΩ的上拉电阻驱动多个DS18B20,省去了大量的上拉电阻,避免了因总线上节点过多而造成供电不足,同时进一步提高了温度传感器布线的灵活性,设计的温度测量电路如图4所示。

3温度检测系统的软件设计

首先Arduino在数据线上发出低复位脉冲,然后恢复总线为高,随后DS18B20发出响应脉冲,Arduino发现有响应脉冲后再搜索,按位逐个取得器件的序列号,也就是器件地址,再对各个器件发出转换命令进行测温,由每个DS18B20测温并把结果保存到自己的RAM中,经过转换时间后,由Arduino按地址读出每个DS18B20的测温结果,将温度数据发送到串口,上传至PC,其程序主流程图如图5所示。

4系统实现及实验

实现了一个13点的温度测量系统,为了验证该系统的可靠性,进行了温度场的分布测量实验。实验中采用医用特定电磁波治疗仪(TDP)的治疗灯头[5]的温度场分布作为测量对象,测试系统实物图如图6所示。

为得到医用TDP治疗灯头的温度场分布,进行了多次测温实验,灯头与测温系统的垂直距离分别取10cm,20cm,30cm,测温范围为50cm2的水平面。关于空间内的温度数据分析,本文以垂直距离为10cm时的温度数据为例进行了3D建模分析,其空间分布情况如图7所示,其中Z轴表示摄氏温度值,X-Y平面为10cm处的测温水平面,从图中可以看出,灯头中心处温度最高,随着与灯头中心距离的增加,温度逐渐降低。

5 结语

本文设计并实现了一种基于Arduino的多点温度测量系统,并利用该系统测量了医用TDP治疗灯头的温度场分布。TDP灯头的结构为圆盘形,其电热丝由内到外环绕在圆盘内,故其温度分布为中心处最高,由内到外逐渐降低。对系统的测温数据进行分析后得到其温度场呈圆形分布,这与TDP灯头的实际温度场分布一致。实验结果表明本系统具有良好的实用性和可靠性。

参考文献

[1]赵广元,王文庆,蔡秀梅.基于Arduino和Matlab/Simulink的仿真环境设计研究

[J].测控技术,2014,38(08):123-129.

[2]贾瑞.基于ArduinoMega2560的无线监控小车设计[J].数字技术与应用,2013,

(10):144-146.

[3]覃鲜艳.基于DS18B20的无线测温系统的研究与设计[D].武汉:武汉理工大学,2012 .

[4]何宗虎,张德祥,张玲君.基于单片机的高精度温度测量系统设计[J].现代电子技

术.2011,34(09):131-135.

[5]赵宏涛.TDP治疗仪的故障分析与维护[J].医疗装备,2015,(07):125-125.

上一篇:在康德与黑格尔之间 下一篇:把合作学习引入中职学校的教学中