摘 要:提出一种内嵌时钟功能的温度测量电路的设计方案。测温电路利用温度传感器监测外界温度的变化,通过振荡器将温度传感器的阻值变化转换为频率信号的变化,实现模拟信号到数字信号的转换,然后利用数字信号处理方法计算得出温度值,实现温度的测量。
关键词:温度传感器 振荡器 FPGA
用传统的水银或酒精温度计来测量温度,不仅测量时间长、读数不方便、而且功能单一,已经不能满足人们在数字化时代的要求。本文提出了一种新型的数字式温度测量电路的设计方案,该方案集成了温度测量电路和实时日历时钟电路。
温度测量电路的测温范围在-20℃~50℃之间www.cechina.cn,分辨率为1℃,测温时间小于1秒。电路中采用凌特公司的电阻可编程振荡器LT1799来实现电阻值到频率的转换,然后根据预先存储在ROM中的参数值进行比较映射得到待测温度值。实时日历时钟电路能显示年、月、日、星期、时、分、秒七种时钟信号,用户可以对时间进行设定或修改。整个电路用Altera 公司的ACEX1K系列的FPGA进行了硬件仿真实现,电路设计灵活,便于修改。
1 测温原理
温度监测
LTC1799是一种电阻可编程振荡器[1],可以产生占空比为50%的方波控制工程网版权所有,并具有温度稳定和电源电压稳定的特性,是一种低功率器件,外围仅需一个元件,即设置电阻和旁路电容。LTC1799标准电路如图1所示,图中0.1μF的电容接在电源引脚与地之间www.cechina.cn,可以将电源噪声降至最低。第1、3引脚之间连接设置电阻,用来控制输出频率,本设计中用热敏电阻替代设置电阻。第4引脚是一个三态分频引脚,决定主控时钟在输出前是被1、10或100分频,设计中将该引脚接地,即输出分频系数为1。
由于热敏电阻的阻值随温度的变化而改变,这样便可以通过LTC1799建立温度和频率之间的关系,以实现对温度的测量。
由(1)、(2)式可知电路设计中存在两种非线性关系:一是热敏电阻的阻值和温度之间的非线性关系,二是阻值频率转换时的非线性。对非线性问题,可以用数学方法进行处理,但算法比较繁琐,而且要占用大量的硬件资源。因此设计中采用了另外一种方法进行处理www.cechina.cn,即利用ROM预先存储频率—温度的数据,通过查表法进行温度映射。这样既避免了非线性问题的影响又节省了硬件资源。
图1 LTC1799标准电路
2 硬件电路设计
从功能上划分,硬件电路分为温度测量电路和实时日历时钟电路两大部分。
2.1 温度测量电路
2.1.1频率测量电路
频率测量电路主要是采用频率计数的方法,外部晶体振荡器分频后通过门控电路得到周期为2T的采样基准信号count_en和计数复位信号count_clr,在采样基准信号正半周计数器计数使能,计数模块开始对输入信号的频率进行测量,测量时间恰为T,并在采样基准信号的下降沿将采样的数据结果锁存。若在时间T内计数器测得信号脉冲个数为N,则被测信号的频率为:FX=N/T。
计数复位信号用于每一次测量开始时对计数模块进行复位,以清除上次测量的结果。各信号之间的时序关系如图2所示。
图2 采样控制信号之间的时序关系
另外,由于测量过程中被测频率信号与采样控制信号之间没有同步锁定关系,在计数的末尾将产生±1的附加误差,即参考文献[2]中所提到的量化误差。所以采样时间T和计数器的位数一定要选择合理。在本设计中,测量的频率在10kHz~300kHz的范围内变化,在待测的温度范围内温度每变化1℃,则阻值最小变化0.5828kΩ。当取T=20msCONTROL ENGINEERING China版权所有,R=100kΩ时,N=1000,则±1的量化误差的影响几乎可以忽略不计。
2.1.2 数据处理电路
由于在频率测量电路中必然会存在测量误差www.cechina.cn,所以必须对这些测量数据结果进行处理。本设计针对数据处理提出了一种新的思路,其数据处理流程如图3所示。如图中所示,将频率测量电路中的数据结果N’先通过若干个寄存器移位寄存,然后利用比较器对寄存的数据进行比较,去除最大和最小值后将剩下的中间值相加,最后通过除法器得到平均值N。
图3 数据处理流程框图
采用该处理方法处理数据的优点为:
(1) 有效降低了测量误差的影响。