基于DS18B20的MOA温度远程监控系统设计


目录

1.DS18B20简介

1.1DS18B20

1.2单线( 1-W ire)技术

2.硬件电路设计

2.1电源电路

2.2温度测量电路

2.3串口通信电路

2.4人机通信

3.软件编程设计

3.1DS18B20时序图

3.2监测系统主程序流程图

3.3温度转换读取程序流程图

结语

  金属氧化物避雷器(MOA) 是防止供电系统和用电设备免受雷电危害的主要设施,一旦出现故障,不但失去应有的防雷作用,且可能带来供电事故。在避雷器监测中,几乎所有需要测量的变量,包括在正常电压及过电压下的能量吸收,及由于老化和受潮产生的功耗,都会影响MOA 阀片的温度。温度不仅是其实际工作状况的间接检测,而且是避雷器本身的精确运行参数。

  MOA 的温度是各种影响参数共同作用的结果,避雷器的能量吸收能力是由温度确定的。正常运行条件下,MOA吸收能量损耗,温度变化很小,出现过电压时,温度可能暂时会有所上升,但会慢慢恢复。在MOA 老化或受潮时,温度会逐步上升,温度不仅是其实际工作状况的间接反映,而且是各种影响参数共同作用的结果。在持续运行电压下MOA过热直接与能量损失相关,而与运行电压的质量及外界干扰等无直接关系。因此,MOA 阀片的温度是判别其是否工作在(热)稳定状态的重要特征量。有限元法对MOA的热特性分析表明,MOA的接地端温度能反映MOA阀片的热量分布状态,只要获得MOA 的接地端温度,就可以判断MOA 的当前工作状态。

  因此为确保MOA正常发挥作用,需要在线监测MOA的运行状态。以DS18B20为温度传感器,AT89S52单片机为控制单元,设计了MOA温度在线监测系统;该系统同时通过RS- 485总线与PC 机进行通信,具有远程温度监测能力和远程报警能力。

  1.DS18B20简介

  1.1DS18B20

  系统采用DALLAS半导体公司生产的单线数字式温度传感器DS18B20监测MOA接地端温度。DS18B20 通过对其内部温度系统振荡器输出的脉冲信号计数来测量温度,并在芯片内部把温度信号转换成串行数字信号供微处理器处理,它具有体积小、抗干扰能力强、使用简单等特点。芯片的测温范围为- 50 ~ 125,可精确到01625;其工作电源既可以远端引入,也可以以寄生方式产生;每个芯片都有自己单独的识别编码,因而在一条总线上可挂接多个DS18B20 芯片;由于它占用微处理器的端口少,可节省大量的引线和逻辑电路,适合于远距离多点温度检测。

  在进行多点测温时,由于传感器与数据采集系统有一定的距离,电磁干扰、信号衰减等问题会造成数据传输错误。DS18B20 内部提供CRC 冗余校验码,传输过程中系统具有一定的容错能力, 在纠错范围内,就可以对错误的数据进行纠正,提高抗干扰能力和加大传输距离; 当错误超出纠错范围时,也可以识别出错误的数据进行重新采集,从而提高采集数据的可信度。DSl8B20的内部结构图如图1所示。

202001151642DS18B20内部结构图

  图1 DS18B20内部结构图

  1.2单线( 1-W ire)技术

  单总线( 1-Wire)技术是近年来由美国Da llas半导体公司研发的一种总线技术。与SPI、I2C 等多种标准串行数据通信方式不同,它采用单根信号线传输时钟和数据,以其具有的节约I/O 资源、结构简单、成本低廉、便于总线扩展和维护等优点越来越多的被广泛应用于民用电器、工业控制领域。

  单总线适用于单个主机(Master)控制一个或多个从机( Slave)设备的系统。当只有一个从机设备时,系统可按单节点系统操作,当有多个从机设备时,系统可按多节点系统操作。与其它如并行、串行及专用总线相比,单总线突出的特点是主机控制器件的地址线、数据线和控制线合成为一条信号线与从机设备进行双向的数据交换。所以在有多路多个测控对象时,系统的布线简单、方便。但是较小的硬件开销需要相对复杂的软件设计进行补偿。

  经过单线接口访问单总线器件有严格的单总线命令序列如下:

  每次访问单总线器件,都必须严格遵守这个命令序列。如果出现序列混乱,则单总线器件不会响应主机。

  2.硬件电路设计

  监测系统采用分布式结构,如图2 所示。其中监测站完成温度的测量,并通过RS- 485总线与PC机进行通信,实现基于温度的MOA 在线监测。

MOA温度监测系统结构图

  图2 MOA温度监测系统结构图

  监测站以AT89S52单片机作为控制器,通过多个数字式温度传感器DSl8B20对三相MOA和环境温度进行采样,送往单片机同时进行数据处理。此单片机通过RS- 485总线与PC 机进行通信,实时传送当前的三相MOA 温差和工作状态标志,并按照要求发送或接收参数的设定值。本设计中四路温度传感器分别测量一组监测站中三个MOA底部接地端子温度和环境温度。单片机对采集来的温度数据进行处理判断,并将判断的MOA 当前工作状态存储,等待监测计算机的读取,实现基于温度的MOA 在线监测。

  监测站温度测量系统的结构如图3所示。

MOA温度在线监测站结构框图

  图3 MOA温度在线监测站结构框图

  2.1电源电路

  电源部分电路如图4 所示。电源输入电压为220 V交流电压,输出为+ 5 V 电压,直接供给单片机使用,图3中的稳压管用于抑制雷电和操作过电压干扰,FIT是交流干扰抑制滤波器,用于进一步降低电源干扰,AC /DC 是开关型直流稳压电源,为监测站提供直流电源; 电容器具有滤波作用。

电源电路

  图4 电源电路

  2.2温度测量电路

  在多个器件串接在一线制总线上时,为了区分每次操作是针对总线上哪个器件,DS18B20器件在内部提供了每个器件独有的64位ROM 序列号,每一次操作都要首先在对DS18B20器件的ROM 序列号进行匹配后,方可对其中的某一个器件进行测温/读取温度值的操作。

  当一线制总线上仅有一个DS18B20器件时,可以用sk ip ROM 操作(即跳过ROM 匹配)命令来代替64位序列号的匹配过程,省掉烦琐的总线上器件序列号的查询操作。在本设计中,每个监测站仅用4个DS18B20器件,因此在硬件满足要求的条件下可以设计成单片机的每个端口仅连接一个DS18B20,即利用单片机的并行端口同时对多个DS18B20进行统一的操作。

DS18B20的多点测温电路原理图

  图5 DS18B20的多点测温电路原理图

  2.3串口通信电路

  本设计选用的单片机AT89S52 具有一个全双工的串行口,可以通过编程设定为4种工作方式,完全满足系统的串口通信要求。由于实际的温度测量系统离PC机的监控地点较远,如采用常用的RS-232串行通信接口在传输距离短,信号易受干扰等缺点,因此本设计选用了RS- 485总线进行远程通信。RS - 485是美国电气工业联合会制定的通信标准,其采用差分信号进行传输,最大传输距离约为1219 m,最大的传输速率可达10Mbit/ s,能够满足长距离和高速率的串行异步通信,得到了广泛的应用。在系统实现中,单片机端使用MAX485芯片将TTL 电平转换成RS - 485的电平输出,并在PC端连接RS232 /485转换器,从而实现了远程监控。RS- 485总线接口电路如图6所示。

RS-485总线接口电路

  图6 RS-485总线接口电路

  2.4人机通信

  监测系统可采用数码管和键盘作为人机交互界面,通过键盘按键来显示三相MOA 的当前工作温度和与环境的温差,键盘设定或修改两个回路的上下限温度报警值,且一经设定完成后即用新的参数值进行监控并发往PC 机更新数据,同时把新参数送入E2ROM中保存,以防止系统掉电后参数的丢失。在温度测量中,系统用当前测量值与设定的上下温限值比较,从而控制是否需要声光报警。当系统的运行发生了偏差,可以通过复位按键使系统重新开始运作。

  3.软件编程设计

  3.1DS18B20时序图

  由于DS18B20采用的是1-W ire总线协议方式,即用一根数据线实现数据的双向传输,单线通信功能是分时完成的,有严格的时序概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)-发ROM 操作命令-发存储器操作命令-处理数据。

  DS18B20的复位、读和写时序图如下。

DS18B20的复位时序图

  图7 DS18B20的复位时序图

DS18B20的读时序图

  图8 DS18B20的读时序图

DS18B20的写时序图

  图9 DS18B20的写时序图

  所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。

  3.2监测系统主程序流程图

  软件部分主要包括主程序、RS - 485 通信、键盘扫描、温度采集、温度显示等部分组成。其中RS -485通信模块主要完成和PC 机的通信; 键盘扫描模块用来输入各温度传感器的温度上下限; 温度采集模块定时的采集四个温度传感器的温度值; 温度显示模块用来循环的显示三相MOA与环境的温度差。

系统主程序流程图

  图10 系统主程序流程图

  3.3温度转换读取程序流程图

  启动温度转换及读取温度值流程图如图11所示。

  跳读ROM[命令字CCH]模块:单片机将要发出的启动温度转换指令是对总线上所有的DS18B20,而不论它的器件序号。启动温度转换[命令字44H]:总线上所有的DS18B20开始进行温度转换,经过200ms左右,DS18B20将转换结果存于RAM的0号和1号字节中,供单片机读取。因为在单总线上只有一个DS18B20, 在读温度值时,只需要发出跳过ROM指令[CCH ],然后读取温度数据即可。数据处理:DS18B20有严格的时序来保证数据的完整性。在单线DQ 上,存在复位脉冲、应答各脉冲、写“ 0”、写“1”、读“0”和读“1”几种信号类型。

温度转换及读取程序流程图

  图11 温度转换及读取程序流程图

  结语

  DS18B20温度传感器以其线路简单,硬件少,成本低,具有完善的单总线通信协议,无需复杂烦琐的布线,在实际生产和科学研究中有广阔的前景。设计中采用的新型温度传感器DS18B20,只需要一根单总线就可完成与单片机的通信,避免了模拟传感器带来的共地干扰和线路干扰问题。由它们构成的单总线传感器网络线缆少,从而大大减少了现场线缆,简化了系统布线的复杂度,系统可能发生故障的环节少,便于维护,提高了系统测量的准确程度和智能化程度,并在一定程度上降低了系统成本。RS- 485现场总线将各采集器采集到的温度数据传送给监测计算机,并对传输数据进行校验,是数据在得以远距离传输的同时,保持了较强的抗干扰性,且实现了计算机与监测站的实时在线监测。

热门标签