基于ATmega16A的低功耗高精度桥式温度测量系统设计
2012-01-09沈丹凤来瑞俊孔英会
沈丹凤 ,来瑞俊,孔英会 ,田 川
(1.华北电力大学电子与通信工程系,河北 保定 071003;2.国家海洋技术中心,天津 300112)
基于ATmega16A的低功耗高精度桥式温度测量系统设计
沈丹凤1,来瑞俊1,孔英会1,田 川2
(1.华北电力大学电子与通信工程系,河北 保定 071003;2.国家海洋技术中心,天津 300112)
当前温度测量应用越来越广泛,针对工农业及科研领域对低功耗及高精度测温的要求,系统描述了一个桥式测温系统的设计方案与工作原理。系统采用低功耗AVR单片机作为控制芯片,通过单臂分压将热敏电阻分压后的电压信号传入A/D转换芯片,再将A/D转换后的数字量送入单片机计算,从而得到热敏电阻阻值,最后通过曲线拟合算出所测温度值。系统能实现低功耗、高精度测温。
低功耗;高精度;温度测量
目前,在工农业生产和科学研究中,温度测量技术已得到广泛应用,这使得测温系统的高精度、低功耗成为发展的必然趋势。在保证系统稳定工作的前提下,实现系统的高精度以及低功耗成为测温领域的主要问题。
桥式测温原理作为常见的测温技术,因其成本低、精度高、功耗低等优点,有着广阔的应用前景。本文利用AT-mega16A单片机及其外扩的AD转换芯片,Flash存储芯片以及时钟芯片等设计了一个高精度低功耗的桥式温度测量系统,能测量-2~50°C之间的温度值,可广泛应用于海水温度测量等这些需要高精度测温的领域。
1 工作原理及系统概述
本系统采用Atmel公司的ATmega16A作为控制芯片,主要分为AD电压采集部分、时钟定时控制部分以及数据存储部分。ATmega16A为超低功耗单片机[1],我们采用3.686 4 MHz晶振,从而使得系统功耗大大减小。系统总体结构如图1所示。
图1 系统总体结构框图
系统由一节锂亚电池供电,单片机通过I2C总线将系统时间,采样间隔等常数写入时钟芯片PCF8583中,PCF8583能实现定时功能,它根据采样间隔控制开关电路,从而使得电池对系统间歇供电,大大降低了功耗。测温电桥[2]将热敏电阻随所测温度变化的电压信号输出,经过放大电路[3]放大送入A/D转换器转换为数字量,再送入单片机进行计算,得出热敏电阻的阻值,最后将热敏电阻的阻值存入大容量存储器中。经测试,系统在采集数据时工作电流在8 mA以下,待机电流在80 μA左右。本系统采用间断采样测温方式,采集一个有效数据需要1 s时间,因此在实际工作过程中,真正消耗8 mA的时间是很有限的。温度测量误差小于0.01℃,完全符合高精度低功耗的测温要求。
2 系统各组成部分具体设计
2.1 A/D电压采集部分
采用凌特公司生产的A/D转换芯片LTC2411I。LTC2411I是一2.7~5.5 V供电电压的24位的A/D转换芯片。工作温度在-40~85℃之间。它的输入电压动态范围为-VREF/2~VREF/2,在本系统中即为-1.5~1.5 V,由于一般A/D支持正电源输入,因此系统中动态范围为0~1.5 V。该24位A/D芯片转换速度比较慢,转换时间为160 ms,因此十分适合用作高精度测量方面。
A/D模块硬件连接图如图2所示。
测温电桥将热敏电阻RT随所测温度变化的电压信号经放大器放大后输入A/D。系统用美信公司生产的高精度基准电压源MAX6163为测温电桥和A/D转换器提供基准电压,这样就形成了比值测量系统,因为比值工作,所以消除测量系统中的漂移误差,电压源变化不降低系统性能。
图2 A/D电压采集转换模块
单片机的SPI口[4]与A/D和存储器相连,当A/D要将转换后的电压值传入单片机时,单片机通过片选[5]选通A/D,关断存储器,当单片机要将数据存入存储器时就通过片选选通存储器,关断A/D。当LTC2411I接收到单片机传来的时钟信号SCK时,就将转化好的数据通过SPI口传入单片机。LTC2411I输出为32位数据,位31在第一个时钟信号的上升沿传出,位30在第一个时钟信号的下降沿传出,这里由于A/D转换时间为160 ms,速率比较低,因此从单片机传来的时钟必须比较小,SPI才能接收到数据,这里对振荡器频率fosc进行128分频,从而能正确接收A/D出来的电压值。
2.2 时钟芯片控制部分
系统采用带有I2C总线接口的PCF8583作为时钟控制芯片,该芯片具有极低的功耗,同时它还有256字节的静态RAM,在系统中起到了很大的作用。RAM的前16个字节为可寻址的专用功能寄存器,用来设定系统时间等,后240个字节为自由空间,可用来存放数据及其他标志位或采样间隔等常数。单片机通过I2C总线与PCF8583相连,从而将系统时间,采样间隔以及一些标志位写入相应寄存器中。
图3 PCF8583时钟控制模块
PCF8583时钟控制部分硬件连接图如图3所示。
电池通过一个小开关给整个系统供电,PCF8583作为日历时钟可自动计时。单片机通过I2C总线给PCF8583设定一个固定时间,即采样间隔,当PCF8583定时器计数溢出时,产生定时器溢出中断,即7脚输出低电平,打开所连的开关电路,开关电路连接的为LTC1844的/SHDN脚,开关电路打开使/SHDN脚为高电平,LTC1844开始工作,从而给整个系统供电;当再次给PCF8583设定定时时间时,7脚出高电平,开关电路关断,/SHDN脚为低电平,LTC1844关断,即整个系统不工作,从而实现了系统的间歇工作。
2.3 数据存储部分
系统采用Atmel公司生产的AT45DB321D存储芯片作为数据存储器,它具有32兆位的容量,它的主存储器有8192页,每页有528个字节,另外它具有2个数据缓冲区,每个缓冲区有528个字节,该存储芯片有十分灵活的擦写功能,因此能很好的实现大容量存储,为长时间测量提供了很大的数据存储空间,同时它低功率损耗的特性也十分适合在低功耗系统中使用。这里单片机通过SPI将数据存入存储器,当A/D采样结束后,单片机通过片选断开A/D,选中存储器,然后将数据传入存储器。
在数据存储时,由于主存只能定位于某一页并不能定位一页上的具体某一字节,因此,系统间歇工作时无法实现连续存储。对此,我们充分利用PCF8583的240字节的静态RAM,将计算的电阻值先存入PCF8583的RAM中,存满168个字节后转入AT45DB321D的主存中,这样,3次就存了504个字节,加上系统时间,采样间隔等固定常数24个字节,为528个字节(一页),这样就可实现数据的整页存储了。
3 系统软件设计
系统软件主要实现系统设置,A/D的采集,电阻值的计算,数据存储以及定时供电的功能,主程序流程图如图4所示。
图4 主程序流程
4 测温系统的精度标定
测温系统在恒温槽中进行标定,恒温槽的温度精度是0.005℃,经过2次测量标定当恒温槽温度从50℃变化到-2℃时,测得0℃,5℃,15℃,25℃,35℃这5个点的热敏电阻值分别如表1和表2所示。
表1 所测热敏电阻值
表2 所测热敏电阻值
由电阻值求温度的公式为:
由表1数据拟合得出系数A,B,C,D分别为:
根据这些系数以及表2所测得的热敏电阻值,计算表2各热敏电阻值所对应的温度以及该温度与测量所得的温度之间的误差,如表3所示。
表3 所测温度值与误差
通过以上数据分析可得所测温度误差均在0.01℃之内,因此本测温系统达到了高精度的测温要求。
5 结语
本文采用模块化的方法介绍了桥式测温系统的设计方案及工作原理,其性能可靠,功耗小,存储容量大,并且具有很高的精度,因此具有广泛的应用前景。
[1]杨正忠,耿德根.AVR单片机应用开发指南及实例精解[M].北京:中国电力出版社,2008:123-278.
[2]康华光.电子技术基础模拟部分[M].北京:高等教育出版社,1999.
[3]马潮.高档8位单片机ATmega128原理与开发应用指南(上)[M].北京:北京航天航空大学出版社,2004.
[4]童诗白,华成英.模拟电子技术基础(第四版)[M].北京:高等教育出版社,2006.
[5]席德勋.现代电子技术[M].北京:高等教育出版社,1997.
Design of Low Power and High-precision Bridge Temperature Measurement System Based on ATmega16A
SHEN Dan-feng1,LAI Rui-jun1,KONG Ying-hui1,TIAN Chuan2
(1.Department of Electronics and Communication Engineering,North China Electric Power University,Baoding Hebei 071003,China;2.National Ocean Technology Center,Tianjin 300112,China)
At present,temperature measurement is used widely to meet the low power and high-precision requirements of the industrial,agricultural and scientific research fields.The design of a bridge temperature measurement system and its working was described.A low-power AVR microcontroller was used as the control chip,which input the voltage signal to the A/D converter chip by the partial pressure arm,then input the digital signal of the A/D converter to SCM to get the thermal resistance.Finally,the temperature values were calculated by curve fitting.It can realize low power consumption,high precision temperature measurement.
low power consumption;high-precision;temperature measurement
TP342.3
B
1003-2029(2012)01-0058-04
2011-06-07
沈丹凤(1988-),女,硕士研究生,主要研究方向为互联网技术。