推荐厂家
暂无
暂无
1、温度传感器DS18B20介绍 DALLAS公司单线数字温度传感器DS18B20是一种新的“一线器件”,它具有体积小、适用电压宽等特点。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20支持“一线总线”接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃;通过编程可实现9~12位的数字值读数方式;可以分别在93.75ms和750ms内将温度值转化为9位和12位的数字量。每个DS18B20具有唯一的64位长序列号,存放于DS18B20内部ROM只读存储器中。 DS18B20温度传感器的内部存储器包括1个高速暂存RAM和1个非易失性的电可擦除E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。暂存存储器包含了8个连续字节,前2字节为测得的温度信息,第1个字节为温度的低8位,第2个字节为温度的高8位。高8位中,前4位表示温度的正(全“0”)与负(全“1”);第3个字节和第4个字节为TH、TL的易失性拷贝;第5个字节是结构寄存器的易失性拷贝,此三个字节内容在每次上电复位时被刷新;第6、7、8个字节用于内部计算;第9个字节为冗余检验字节。所以,读取温度信息字节中的内容,可以相应地转化为对应的温度值。表1列出了温度与温度字节间的对应关系。 2、系统硬件结构 系统分为现场温度数据采集和上位监控PC两部分。图1为系统的结构图。需要指出的是,下位机可以脱离上位PC机而独立工作。增加上位机的目的在于能够更方便地远离现场实现监控、管理。现场温度采集部分采用8051单片机作为中央处理器,在P1.0口挂接10个DS18B20传感器,对10个点的温度进行检测。非易失性RAM用作系统温度采集及运行参数等的缓冲区。上位PC机通过RS485通信接口与现场单片微处理器通信,对系统进行全面的管理和控制,可完成数据记录,打印报表等工作。 系统各模块分析如下: 2.1DS18B20与单片机的接口电路 DS18B20与8051单片机连接非常简单,只需将DS18B20信号线与单片机一位I/O线相连,且一位I/O线可连接多个DS18B20,以实现单点或多点温度测量。DS18B20可以通过2种方式供电:外加电源方式和寄生电源方式。前者需要外加电源,电源的正负极分别与DS18B20的VDD和GND相连接。后者采用寄生电源,将DS18B20的VDD与GND接在一起,当总线上出现高电平时,上拉电阻提供电源;当总线低电平时,内部电容供电。由于采用外加电源方式更能增强DS18B20的抗干扰性,故本设计采用这种方式。在实际应用中,传感器与单片机的距离往往在几十米到几百米,传输线的寄生电容对DS18B20的操作也有一定的影响,所以往往在接口的地方稍加改动,以增加芯片的驱动能力和减少传输线电容效应带来的影响,达到远距离传输的目的。 2.2键盘及显示 键盘通过编程设置可完成以下功能:对温度值进行标定,定时显示各路的温度值,单独显示某路的温度值,给每一路设定上下限报警值等。LED则可为用户提供直观的视觉信息。在工作现场,用户可通过6位LED的显示数据来确定系统的当前工作状态以及采样的温度值信息等。 2.3报警电路 当被测温度值超过预先设定的上下限时,报警电路作出响应,蜂鸣器发出响声,告知用户温度的异常。具体哪一个传感器温度值超限,可由软件查询各DS18B20内部告警标志而确定,继而调整该现场温度,以达到对温度波动的控制。 3、软件设计及流程 3.1下位机软件 系统下位测温部分软件采用MCS51汇编语言编写,主要完成对DS18B20的读写操作,实现实时数据的采集,并获取最终温度值送至单片机内存。但需要注意的是,由于DS18B20的单总线方式,数据的读写都占用同一根线,所以每一种操作都必须严格按照时序进行。图2为测温子系统流程图。单片机首先发送复位脉冲,该脉冲使信号线上所有的DS18B20芯片都被复位,接着发送ROM操作命令,使得序列号编码匹配的DS18B20被激活。被激活后的DS18B20进入接收内存访问命令状态,内存访问命令完成温度转换、读取等工作(单总线在ROM命令发送之前存储命令和控制命令不起作用)。 3.2上位机软件 系统上位机的软件采用VC++6.0编写。主要完成的功能包括:与下位单片微机的实时通信;模拟显示各采集点温度曲线;保存各测温点温度数据;统计各采集点平均温度值;打印各点温度统计报表等。 4、结论 本系统具有如下特点: a.结构简单,成本低廉,维护方便。 b.直接将温度数据进行编码,可以只使用单根电缆传输温度数据,通信方便,传输距离远且抗干扰性强。 c.配置灵活、方便、易于扩展。可扩展多路下位温度采集子系统,将它们通过RS485与上位PC机组网,形成多点温度采集网络。也可在各子系统中有选择性地增减温度传感器。 d.工作稳定,测温精度高。实验表明,在长达200m的一位总线上挂接24个DS18B20温度传感器,系统可正确地进行温度采集,分辨率为0.5℃。 e.适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。在大范围温度多点监控系统中具有十分诱人的应用前景。
作为一名检测工程师,研究检测仪器会显得“务正业”一些。本篇笔记介绍我设计的一款基于DS18B20的高精度数字温度计。1、DS18B20介绍DS18B20是一款高精度数字温度传感器,具备-55°C至+125°C的宽广测温范围和9至12位的可调分辨率,最高可达到0.0625°C的精度。DS18B20因其出色的性能被广泛应用于家用电器、工业系统、环境监测等领域,适用于冷冻库、粮仓、储罐、电讯机房、电力机房、电缆线槽等测温和控制领域。https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025098363_7690_1538320_3.jpegDS18B20温度传感器使用的是单总线(1-Wire)串行通信协议,三个线分别为VCC、GND、DAT。2、实验装置我设计了一块简易的PCB板,集成了ESP32-C3开发板、0.96英寸LCD显示屏、ADS1115模数转换器以及多个接口,做为温度、电压等测量的实验装置。https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025101266_1166_1538320_3.jpeg本次实验,我们将DS18B20的DAT线接在ESP32-C3的0引脚上。3、温度测试DS18B20温度计需要用到onewire、ds18x20两个库,这两个库都是Micropython自带的。Micropython官网有相关示例:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025097705_132_1538320_3.png测试代码参考如下:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022030525554_2764_1538320_3.png!w690x460.jpg 运行后,终端打印出测量的温度:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025105078_6019_1538320_3.png4、phyphox实现[/font]Phyphox 是一款利用智能手机传感器进行物理实验的应用。它能够访问手机的加速度计、磁力计、陀螺仪、光强度计、压力计、GPS、麦克风等多种传感器,从而进行各种物理实验,如测量重力加速度、制作声纳、测量电梯速度等。Phyphox 支持通过蓝牙与外部设备如ESP32等进行连接,从而扩展更多传感器,开展更多类型的实验。phyphoxBLE的驱动、DS18B20温度测量源码这里就不详细介绍了,直接下载:https://gitee.com/py2012/phyphox。我们的实验装置中ESP32-C3开发板自带蓝牙模块,可以通过蓝牙将数据传输到手机上,使用phyphox进行数据的实时分析和可视化。修改前面的代码,增加相关功能:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022031094489_8933_1538320_3.png!w690x322.jpg https://ng1.17img.cn/bbsfiles/images/2024/10/202410022031218941_7309_1538320_3.png!w690x489.jpg 实现测量数据展示在手机上的phyphox中,并形成温度时间曲线:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025106496_4010_1538320_3.jpeg5、测量液体DS18B20温度传感器是防水、耐寒、耐高温的,我们拿来做个小实验,测量一小杯热水的自然降温过程:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025103049_6009_1538320_3.jpeg测量结果从70度左右缓慢下降至30度左右,手机中phyphox形成降温曲线图:https://ng1.17img.cn/bbsfiles/images/2024/10/202410022025109343_7458_1538320_3.jpeg 6、行业应用这款基于DS18B20的高精度数字温度计,具有便携性、宽广的测量范围和较好的稳定性等特点。在实验室中,经过校准后,可用于设备的期间核查,比如烘箱、恒温箱等的期间核查。此外,这款温度计可通过程序设计,对高温设备、不稳定设备进行实时监控,一旦检测到温度超出预设范围,自动触发断电机制,以保障设备和人员的安全。
智能温度传感器都具有多种工作模式可供选择,主要包括单次转换模式、连续转换模式、待机模式,有的还增加了低温极限扩展模式,操作非常简便。对某些智能温度传感器而言,主机(外部微处理器或单片机)还可通过相应的寄存器来设定其A/D转换速率(典型产品为MAX6654),分辨力及最大转换时间(典型产品为DS1624)。 能温度控制器是在智能温度传感器的基础上发展而成的。典型产品有DS1620、DS1623、TCN75、LM76、MAX6625。智能温度控制器适配各种微控制器,构成智能化温控系统;它们还可以脱离微控制器单独工作,自行构成一个温控仪。 2.3总线技术的标准化与规范化 目前,智能温度传感器的总线技术也实现了标准化、规范化,所采用的总线主要有单线(1-Wire)总线、I2C总线、SMBus总线和spI总线。温度传感器作为从机可通过专用总线接口与主机进行通信。 2.4可靠性及安全性设计 传统的A/D转换器大多采用积分式或逐次比较式转换技术,其噪声容限低,抑制混叠噪声及量化噪声的能力比较差。新型智能温度传感器(例如TMP03/04、LM74、LM83)普遍采用了高性能的Σ-Δ式A/D转换器,它能以很高的采样速率和很低的采样分辨力将模拟信号转换成数字信号,再利用过采样、噪声整形和数字滤波技术,来提高有效分辨力。Σ-Δ式A/D转换器不仅能滤除量化噪声,而且对外围元件的精度要求低;由于采用了数字反馈方式,因此比较器的失调电压及零点漂移都不会影响温度的转换精度。这种智能温度传感器兼有抑制串模干扰能力强、分辨力高、线性度好、成本低等优点。 为了避免在温控系统受到噪声干扰时产生误动作,在AD7416/7417/7817、LM75/76、MAX6625/6626等智能温度传感器的内部,都设置了一个可编程的“故障排队(fAultqueue)”计数器,专用于设定允许被测温度值超过上、下限的次数。仅当被测温度连续超过上限或低于下限的次数达到或超过所设定的次数n(n=1~4)时,才能触发中断端。若故障次数不满足上述条件或故障不是连续发生的,故障计数器就复位而不会触发中断端。这意味着假定n=3时,那么偶然受到一次或两次噪声干扰,都不会影响温控系统的正常工作。 LM76型智能温度传感器增加了温度窗口比较器,非常适合设计一个符合ACPI(AdvAnced ConfigurAtion And Power InterfAce,即“先进配置与电源接口”)规范的温控系统。这种系统具有完善的过热保护功能,可用来监控笔记本电脑和服务器中CPU及主电路的温度。微处理器最高可承受的工作温度规定为tH,台式计算机一般为75°C,高档笔记本电脑的专用CPU可达100°C。一旦CPU或主电路的温度超出所设定的上、下限时, INT端立即使主机产生中断,再通过电源控制器发出信号,迅速将主电源关断起到保护作用。此外,当温度超过CPU的极限温度时,严重超温报警输出端(T_CRIT_A)也能直接关断主电源,并且该端还可通过独立的硬件关断电路来切断主电源,以防主电源控制失灵。上述三重安全性保护措施已成为国际上设计温控系统的新观念。 为防止因人体静电放电(ESD)而损坏芯片。一些智能温度传感器还增加了ESD保护电路,一般可承受1000~4000V的静电放电电压。通常是将人体等效于由100PF电容和1.2K欧姆电阻串联而成的电路模型,当人体放电时,TCN75型智能温度传感器的串行接口端、中断/比较器信号输出端和地址输入端均可承受1000V的静电放电电压。LM83型智能温度传感器则可承受4000V的静电放电电压。 最新开发的智能温度传感器(例如MAX6654、LM83)还增加了传感器故障检测功能,能自动检测外部晶体管温度传感器(亦称远程传感器)的开路或短路故障。MAX6654还具有选择“寄生阻抗抵消”(PArAsitic ResistAnce CAncellAtion,英文缩写为prc)模式,能抵消远程传感器引线阻抗所引起的测温误差,即使引线阻抗达到100欧姆,也不会影响测量精度。远程传感器引线可采用普通双绞线或者带屏蔽层的双绞线。 2.5虚拟温度传感器和网络温度传感器 (1)虚拟传感器 虚拟传感器是基于传感器硬件和计算机平台、并通过软件开发而成的。利用软件可完成传感器的标定及校准,以实现最佳性能指标。最近,美国B&K公司已开发出一种基于软件设置的TEDS型虚拟传感器,其主要特点是每只传感器都有唯一的产品序列号并且附带一张软盘,软盘上存储着对该传感器进行标定的有关数据。使用时,传感器通过数据采集器接至计算机,首先从计算机输入该传感器的产品序列号,再从软盘上读出有关数据,然后自动完成对传感器的检查、传感器参数的读取、传感器设置和记录工作。 (2)网络温度传感器 网络温度传感器是包含数字传感器、网络接口和处理单元的新一代智能传感器。数字传感器首先将被测温度转换成数字量,再送给微控制器作数据处理。最后将测量结果传输给网络,以便实现各传感器之间、传感器与执行器之间、传感器与系统之间的数据交换及资源共享,在更换传感器时无须进行标定和校准,可做到“即插即用(Plug&PlAy)”,这样就极大地方便了用户。 2.6单片测温系统 单片系统(