技术中心
 
 

数字温度传感器DS18B20在卫星电源系统中的应用

   日期:2007-10-24     来源:电子元器件应用 /俞绍安    作者:管理员    

   0 引言

  卫星电源系统主要用来为整个卫星的正常运行提供稳定的电源。它是卫星电能产生、储存、变换、调节、传输分配和管理的重要分系统。其基本功能是通过物理和化学过程将太阳的光能、核能或化学能转化为电能,并根据需要对电能进行存储、调节和变换,然后向卫星其它各分系统不间断供电。我国的卫星大都采用太阳能/蓄电池供电系统。蓄电池充电终压控制采用电压-温度补偿法,即V-T曲线控制。蓄电池温度传感器传统上一般选用热电耦或铂电阻。模拟电路硬件控制是温度补偿的常用方法,已经在我国各种型号的卫星上获得成功应用。

  为加快我国卫星电源分系统的数字化设计。充分体现数字电路体积小、重量轻、功耗低、适应性强和可靠性高等优点,提高电源分系统的电能重量比,本文以DS18B20作为温度传感器,并采用单片机控制系统进行数据的采集、计算、调节及V-T曲线控制。

  1 V-T曲线控制原理

  V-T曲线的控制关系为:V=N(Vs-kT)

  式中:Vs为电压状态值;T为温度;k为温度系数;N为补偿系数。

  如温度T上升,电压V下降,这表明此时蓄电池升高,需要调节充电电压使温度降低,这就是V-T曲线补

偿。其具体方法是采用V-T曲线跟踪补偿方案来控制蓄电池的充电终止电压,然后通过测量蓄电池组的端电压和单体温度,以预设的温度补偿电压曲线确定充电结束状态。同时在充电器内部设置保护性充电终止电压控制,以在电源控制计算机出现故障时停止对蓄电池充电,从而保证蓄电池组的安全。

  2 数字温度传感器DS18B20

  2.1 DS18B20的主要特点

  DS18B20是美国DALLAS公司继DS1820之后推出的增强型单总线数字温度传感器。它在测温精度、转换时间、传输距离、分辨率等方面都比DS1820有所改进。DS18B20的主要特点如下:

  ◇采用单总线方式,仅需一根信号线与CPU连接即可传送串行数据,且不需要外部元件;

  ◇每个芯片都有惟一编码,多个DS18B20芯片可以并联在一根总线上,故可实现多点测温; ◇测温范围为-55~125℃,分辨率为12位;

  ◇测温结果的数字量位数为9~12位,并可编程选择;

  ◇可用数据线供电,也可用外部电源。

  2.2 DS18B20的结构及功能

  DS18B20采用3脚PR-35封装或8脚SOIC封装,其管脚排列如图1所示。图中,GND为地;I/O为数据输入/输出端(即单线总线),该脚为漏极开路输出,常态下呈高电平;VDD是外部+5 V电源端,不用时应接地。

管脚排列

  DS18B20的内部结构主要包括寄生电源、温度传感器、64位激光ROM、高速暂存器、用于存储用户设定的温度上下限值的TH和TL触发器、存储与控制逻辑、8位循环冗余校验码发生器等七部分。其中ROM由64位二进制数字组成,它由生产厂家光刻而成,共分为8个字节,字节0的内容是该产品的厂家代号28H,字节1~6的内容是48位器件序列号,字节7是ROM前56位校验码。每个DS18B20的64位序列号均不相同,它可以看作是该DS18B20的地址序列码。ROM的作用是使每一个DS18B20都各不相同,这样,就可以在一根总线上挂接多个DS18B20。

  DS18B20温度传感器主要用于对温度进行测量,数据可用16位符号扩展的二进制补码读数形式提供,并以0.0625℃/LSB形式表示。具体的温度和数字量的关系如表1所列。

温度和数字量的关系

  2.3 DS18B20的工作时序

  根据DS18B20的通信协议,用主机控制DS18B20以完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。每一步操作必须严格按照时序规定进行。DS18B20的工作时序包括初始化时序、写时序和读时序。

  2.4 DS18B20使用注意事项

  主机控制DS18B20完成温度转换时,在每一次读写之前,都要对DS18B20进行复位,而且该复位要求主CPU要将数据线下拉500μs,然后释放。DS18B20收到信号后将等待16~60μs左右,之后再发出60~240μs的低脉冲。主CPU收到此信号即表示复位成功。实际上,较小的硬件开销需要相对复杂的软件进行补偿。由于DS18B20与微处理器间采用串行数据传送方式,因此,在对DS18B20进行读写编程时,必须严格地保证读写时序,否则,将无法正确读取测温结果。

  对于在单总线上所挂DS18B20的数量问题,一般人们会误认为可以挂任意多个DS18B20,而在实际应用中并非如此。若单总线上所挂DS18B20超过8个时,则需要解决微处理器的总线驱动问题,因此,在进行蓄电池单体多点测温系统设计时该问题要加以注意。

  连接DS18B20的总线电缆是有长度限制的。试验中,当采用普通信号电缆且其传输长度超过50 m时,读取的测温数据将发生错误。而将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150 m,如采用带屏蔽层且每米绞合次数更多的双绞线电缆,则正常通信距离还可以进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的,因此,在用DS18B20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。

  在DS18B20测温程序设计中,当向DS18B20发出温度转换命令后,程序总要等待DS18B20的返同信号。这样,一旦某个DS18B20接触不好或断线,在程序读该DS18B20时就没有返回信号,从而使程序进入死循环。因此,在进行DS18B20硬件连接和软件设计时,应当给予足够的重视。

  3 数字V-T曲线控制系统

  3.1 硬件设计

统硬件组成

  本设计选用美国Atmel公司的增强型Flash单片机AT89S52作为主处理器来完成主要的测控任务,A999S52内嵌的8 KB Flash ROM可在软硬件上兼容AT89C52,但其最大的特点是集成了ISP接口,因而可直接在目标板上进行在

线编程。另外,设计中选用DALLAS公司的DS18B20作为温度测量单元,其单总线上挂接的DS18B20采用外接VCC方式(而未用寄生供电),进行多点测量;模数转换采用ADI公司的AD574,精度为12 bit。其系统硬件组成如图2所示。

  3.2 软件设计

  本系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序等。编程时必须严格按照DS18B20的时序规定进行。尤其需要注意的是,在多点温度测量中,由于多个DS18B20挂在一条总线上,为识别不同的器件,在系统安装之前,应将主机逐个与DS18B20挂接,以读出其序列号。具体是由主机先给DS18B20发一个复位脉冲,在DS18B20发回响应脉冲给主机后,主机再发读ROM命令(代码33H),并发一个15μs左右的脉冲,接着再读取DS18B20序列号的一位,并用同样方法读取序列号的每一位。其V-T曲线控制系统主程序和测温子程序分别如图3和图4所示。

V-T曲线控制系统主程序
测温子程序

  4 系统抗干扰设计

  为了该系统能够稳定可靠地工作,本系统还应对其进行抗干扰设计。具体应从以下几个方面人手进行设计:

  (1) 电源线加粗,合理走线、接地,三总线分开。使用完全光耦隔离方法来提高抗干扰能力,减少互感振荡,光耦应选择高速器件;

  (2) CPU、RAM、ROM等主芯片应在VCC和GND间接电解及瓷片电容,以去掉高低频干扰;

  (3) 应采用独立系统结构,并减少接插件与连线,以提高可靠性,减少故障率;

  (4) 在外部供电的输入口应加二极管桥抑制电路,以防止逆向电流的出现,同时也使得内外电路的地线隔离,从而起到抗干扰作用;

  (5) 加复位电压检测电路可防止复位不充分从而CPU就工作的现象,尤其在有EEPROM器件时,复位不充分会改变EEPROM的内容;

  (6) 在单片机空单元写上00H,并在最后放跳转指令到ORG 0000H,可防止程序跑飞。

  5 结束语

  应用AT89S52单片机和DS18B20嵌入式数字温度传感器等设计的V-T曲线控制补偿系统,可以方便地进行数据采集、计算和调节。

 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢