温度测量电路设计
温度测量中,系统选用Dallas 半导体公司的数字化温度传感器DS1820。它具有微型化、低功耗、高性能、抗干扰能力强及易配微处理器等特点,因而特别适合于构成多点温度测控系统。DS1820 能提供九位温度读数,它无须任何外围硬件即可方便的构成温度检测系统。
系统的温度实际测量电路如图3 所示。这里可采用任意只DS1820 同时测控多路路温度,可视实际需要任意选定通道数。系统采用C8051F041 单片机,其P2.2 口接单线总线。DS18B20采用寄生电源供电方式,采用寄生电源供电方式时VDD 必须接地。为保证在有效的DS1820 时钟周期内能提供足够的电流,图3 中采用一个MOSFET管和C8051F041 的P2.1 口来完成对DS1820 的总线上拉。由于单线制只有一根线,因此发送接收口必须是三态的,为了操作方便我们用C8051F200 的P2.2 口作发送口Tx ,P2.3 口作接收口Rx。由于DS1820 是单线数字温度传感器,只须用它输出线上的序列号就可以决定要读取哪一个点上的温度值,而且它的输出量本来就是数字量,所以无须经过A/ D 转换,就可以直接连到单片机上。需要注意的是,在系统安装及工作之前应将主机逐个与DS1820 挂接,以读出其序列号。其工作过程为:主机发出一个脉冲,待“0”电平大于480μs 后,复位DS1820 ,在DS1820 所发响应脉冲由主机接收后,主机再发读取ROM的命令代码33H ,然后再发一个脉冲(15μs) ,并接着读取DS1820 序列号的一位。用同样方法读取序列号的56 位。另外,由于DS1820 单线通信功能是分时完成的,遵循严格的时隙概念,因此,系统对DS1820 和各种操作必须按协议进行,即:初始化DS1820 (发复位脉冲) →发ROM 功能命令→发存储器操作命令→处理数据。由于DS1820 输出量就是数字量,所以它的输出可直接连接到单片机上。
单片机及通信接口
C8051Fxxx 系列单片机
C8051Fxxx 系列单片机成是完全集成的混合信号系统级芯片,具有与8051 兼容的微控制器内核,与MCS - 51 指令集完全兼容。除了具有标准8052 的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其它数字外设及功能部件。它有优于51 系列单片机的性能,而且成本也不高,C8051Fxxx 单片机是真正能独立工作的片上系统(SOC) 。每个MCU 都能有效地管理模拟和数字外设,可以关闭单个或全部外设以节省功耗。所以本系统选用C8051Fxxx 系列中的C8051F041 作为控制中心。
C8051F041 单片机的MCU 中的外设或功能部件包括模拟多路选择器、可编程增益放大器、ADC、DAC、电压比较器、电压基准、温度传感器、SMBus/ I2C、UART、SPI、CAN 总线210B、可编程计数器/ 定时器阵列、数字I/ O 端口、电源监示器、看门狗定时器(WDT) 和时钟振荡器。
CAN 通信接口电路
CAN ,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。CAN是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。在信号传输距离达到10Km 时,CAN 仍可提供高达5Kbit/ s 的数据传输速率。
基于C8051F041单片机的直流电源设计 直流电源
单片机C8051F041 自身带有CAN 总线2.0B 接口,在收发器与单片机接口之间采用高速光耦来实现它们之间的电气隔离,以保护单片机,最后收发器和CAN 协议控制器连接,这样就实现了C8051F041 与CAN总线的通信。
软件设计
该系统软件是一个功能较强的监控软件,它具有实时多任务处理的能力,能及时有效地响应突发事件。它完成显示,A/ D 转换,数据处理,声光报警,通信等任务。实践证明,本系统软件工作圆满,完全符合系统设计的要求。系统软件由五个模块组成。
主程序模块主要完成系统的初始化,设定各种常数,进行预处理,显示电池各种状态参数。
采样程序模块完成对电池的电压、电流、温度等参数的测量,其中包含A/ D 转换程序。
CAN 通信程序模块主要完成本系统同上位机之间的CAN 通信功能。
电池电量计算程序模块主要完成对采样得到的电池电压、电流来计算电池电量。
电池状态分析程序模块完成对采样及计算得到的各种电池参数进行分析,并发出声光报警信号。
结论
本文基于C8031F041 单片机直流电源电池监控系统的设计与实现。通过实验证明,系统的硬件和软件完全符合系统设计的各种性能要求,能圆满完成对电池组的工作状态进行监控。