为加快我国卫星电源分系统的数字化设计.充分体现数字电路体积小、重量轻、功耗低、适应性强和可靠性高等优点,提高电源分系统的电能重量比,本文以DSl8820作为温度传感器,并采用单片机控制系统进行数据的采集、计算、调节及V-T曲线控制。
1、V-T曲线控制原理
V-T曲线的控制关系为:V=N(Vs-kT)
式中:Vs电压状态值;T温度;k温度系数;N为补偿系数。 如温度T上升,电压v下降,这表明此时蓄电池升高,需要调节充电电压使温度降低,这就是V-T曲线补偿。其具体方法是采用V-T曲线跟踪补偿方案来控制蓄电池的充电终止电压.然后通过测量蓄电池组的端电压和单体温度.以预设的温度补偿电压曲线确定充电结束状态。同时在充电器内部设置保护性充电终止电压控制.以在电源控制计算机出现故障时停止对蓄电池充电.从而保证蓄电池组的安全。
2、数字温度传感器DSl8B20
2.1 DSl8B20的主要特点
DSl8B20是美国DALLAS公司继DSl820之后推出的增强型单总线数字温度传感器。它在测温精度、转换时间、传输距离、分辨率等方面都比DSl820有所改进。DSl8B20的主要特点如下:
◇采用单总线方式,仅需一根信号线与CPU连接即可传送串行数据,且不需要外部元件;
◇每个芯片都有惟一编码。多个DSl8B20;芯片可以并联在一根总线上,故可实现多点测温;
◇测温范围为-55~125℃,分辨率为12位;
◇测温结果的数字量位数为9~12位,并可编程选择;
◇可用数据线供电,也可用外部电源。
2.2 DSl8B20的结构及功能
DSl8B20采用3脚PR-35封装或8脚SOIC封装,其管脚排列如图l所示。图中,GND为地;I/O为数据输入/输出端(即单线总线),该脚为漏极开路输出,常态下呈高电平;VDD外部+5V电源端.不用时应接地。
DSl8B20的内部结构主要包括寄生电源、温度传感器、64位激光ROM、高速暂存器、用于存储用户设定的温度上下限值的TH和TL触发器、存储与控制逻辑、8位循环冗余校验码发生器等七部分。其中ROM由64位二进制数字组成,它由生产厂家光刻而成,共分为8个字节,字节0的内容是该产品的厂家代号28H,字节1~6的内容是48位器件序列号,字节7是ROM前56位校验码。每个DSl8B20的64位序列号均不相同,它可以看作是该DSl8B20的地址序列码。ROM的作用是使每一个DSl8B20都各不相同,这样,就可以在一根总线上挂接多个DSl8B20。
DSl8B20温度传感器主要用于对温度进行测量,数据可用16位符号扩展的二进制补码读数形式提供,并以0.0625℃/LSB形式表示。具体的温度和数字量的关系如表1所列。
2.3 DSl8B20的工作时序
根据.DSl8B20的通信协议,用主机控制DSl8B20以完成温度转换必须经过三个步骤:每一次读写之前都要对DSl8B20生行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DSl8B20进行预定的操作,每一步操作必须严格按照时序规定进行。DSl8B20的_T作时序包括初始化时序、写时序和读时序。
2.4 DSl8B20使用注意事项
主机控制DSl8B20完成温度转换时,在每一次读写之前,都要对DSl8B20进行复位,而且该复位要求主CPU要将数据线下拉500μs,然后释放。DSl8B20收到信号后将等待16~60μs左右,之后再发出60~240μs的低脉冲。主CPU收到此信号即表示复位成功。实际上,较小的硬件开销需要相对复杂的软件进行补偿。由于DSl8B20与微处理器间采用串行数据传送方式,因此,在对DSl8B20进行读写编程时,必须严格地保证读写时序,否则,将无法正确读取测温结果。
对于在单总线上所挂DSl8B20的数量问题,一般人们会误认为可以挂任意多个DSl8B20,而在实际应用中并非如此。若单总线上所挂DSl8B20超过8个时,则需要解决微处理器的总线驱动问题,因此,在进行蓄电池单体多点测温系统设计时该问题要加以注意。
连接DSl8B20的总线电缆是有长度限制的。试验中.当采用普通信号电缆且其传输长度超过50m时,读取的测温数据将发生错误。而将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,如采用带屏蔽层且每米绞合次数更多的双绞线电缆,则正常通信距离还可以进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的,因此,在用DSl8B20进行长距离测温系统设计时要充分考虑总线分布容和阻抗匹配问题。
在DSl8B20测温程序设计中,当向DSl8B20发出温度转换命令后,程序总要等待DSl8820的返回信号。这样,一旦某个DSl8B20接触不好或断线,在程序读该DSl8B20时就没有返回信号,从而使程序进入死循环。因此,在进行DSl8B20硬件连接和软件设计时,应当给予足够的重视。
3、数字V-T曲线控制系统
3.1 硬件设计
本设计选用美国Atmel公司的增强型Flash单片机AT89S52作为主处理器来完成主要的测控任务.A999S52内嵌的8 KB Flash ROM可在软硬件上兼容AT89C52,但其最大的特点是集成了ISP接口.因而可直接在目标板上进行在线编程。另外,设计中选用DALLAS公司的DSl8B20作为温度测量单元,其单总线上挂接的DSl8B20采用外接Vcc(而未用寄生供电),进行多点测量;模数转换采用ADI公司的AD574,精度为12 bit。其系统硬件组成如图2所示。
3.2软件设计
本系统程序主要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序等。编程时必须严格按照DSl8B20的时序规定进行。尤其需要注意的是,在多点温度测量中,由于多个DSl8B20挂在一条总线上,为识别不同的器件,在系统安装之前,应将主机逐个与DSl8B20挂接,以读出其序列号。具体是由主机先给DSl8B20发一个复位脉冲,在DSl8B20发回响应脉冲给主机后,主机再发读ROM命令(代码33H),并发一个15μs左右的脉冲,接着再读取DSl8B20序列号的一位,并用同样方法读取序列号的每一位。其V-T曲线控制系统主程序和测温子程序分别如图3和图4所示。
4、系统抗干扰设计
为了该系统能够稳定可靠地工作,本系统还应对其进行抗干扰设计。具体应从以下几个方面人手进行设计:
(1) 线加粗,合理走线、接地,三总线分开。使用完全光耦隔离方法来提高抗干扰能力,减少互感振荡,光耦应选择高速器件;
(2) CPU、RAM、ROM等主芯片应在Vcc和GND间接电解及瓷片电容,以去掉高低频干扰;
(3) 应采用独立系统结构,并减少接插件与连线,以提高可靠性,减少故障率;
(4) 在外部供电的输入口应加二极管桥抑制电路,以防止逆向电流的出现,同时也使得内外电路的地线隔离,从而起到抗干扰作用;
(5) 加复位电压检测电路可防止复位不充分从而CPU就工作的现象,尤其在有EEPROM器件时,复位不充分会改变EEPROM的内容;
(6) 在单片机空单元写上00H,并在最后放跳转指令到ORG 0000H,可防止程序跑飞。
5、结束语
应用AT89S52单片机和DSl8B20嵌入式数字温度传感器等设计的V-T曲线控制补偿系统,可以方便地进行数据采集、计算和调节。试验结果表明,该控制系统完全可以达到设计要求,以实现数字化的数据采集、数据处理和控制要求。该方法与传统的模拟硬件控制系统相比,可以很好地解决卫星电源分系统的小型化、高精度、高可靠性和低功耗等问题。可以预见,该设计方案在我国的航天领域将有很大作为。