要知道温度是否在零度以下,唯一要做的就是测量温度。这需要做得很精确,当然,得选择一款值得信赖的温度传感器。这里我们选用的传感器是LM35C2(-40℃~100℃),它在以前的许多Elektor电路中都使用过。这种传感器并不贵,而且它的输出电压正比于温度(10mV/℃)。
  
  传感器
  
  LM35通常由单电源供电,并且0℃对应的输出电压是0V。因此在典型的应用电路中是不可能用LM35来测量0℃以下的温度的。但是可将它的输出通过一个电阻连接到电源负极,这样就可以测量到零度以下的温度了。这就需要—个通过50μA电流的电阻(下图中的R2)。
  
  我们只需要用这个电路来检测冰点。这就是为什么在温度传感器之后会有一个比较器,如果温度在夜间低于0℃时它会点亮一个LED。为了确保比较器能正常运行,输入的测量值能稍微为负是很有必要的,为了解决这个问题,在LM35与地之间增加了一个二极管(D1)。通过D1的电压(因为当前通过LM35的电压只有0.47V)作为负电压。比较器IC2的正向输入通过R3连接到D1的正极,它的作用是作为比较器的参考点0℃。

  
  比较器
  
  比较器是一个标准的运算放大器TLC271,我们可通过将它的输入偏置选择(脚8)连接到电源供应电压来设定它的最小耗电量。检测器不必要工作在很高的频率,因为它能在最“经济”的模式下稳定的工作在放大状态下。
  
  发光二极管D3用来指示温度是否在零度以下,当房间里的温度开始或已经降低到0℃以下,它会持续点亮。为实现这点,由R3、R4和D2构成了非对称延迟电路。当输出变为高,正向输入通过D2和R4正反馈,输出仍然保持高电平。当LED自动熄灭时,说明此时的温度已超过30C,在实际中可能意味着现在是夏天并且无论怎样也不会结冰。如有需要,可通过增加R3的阻◎电路飞翔值来增大延迟。
  
  电容C2的作用是确保LED在系统加上电后仍然是熄灭的。运放的正向输入直接连接到地因此输出也为低。只有在装上电池后电路需要重启时,才会用到Rl和Sl。可以使用一个电源开关,或者是把电池卸下来一会儿来替代S1开、关。
  
  低功耗供电
  
  因为电路采用电池供电,所以我们应尽最大的可能去减少功耗。原型电路的耗电量,当由6~9V的电源供电时,电流不到120μA。因为使用了低功耗的LED,所以当LED点亮的时候,它的耗电量分别是1mA(6V)和1.8mA(9V)。在我们的原型电路中,使用了一个绿色的低功耗LED。如果使用4节AA电池(容量约为2Ah),电路能正常运行约2年。但是如果LED经常亮的话,运行时间会缩短。(约两个月的时间已经足够挺过一个严冬)一节标准的9V电池也能坚持一个冬天,前提是要经常检查LED灯是否亮着。
  
  最后,说明一下这里为什么要使用TLC271CP。后缀C指定的工作范围是0℃~70℃,但在较低的温度下也能继续工作,尤其是考虑到IC没有线性应用。如果质疑它的性能,可以使用后缀为I的器件(这是TLC2711P:-40C—125C),前提是确信被监测的房间确实很冷。
  
  快速装配
  
  这个电路含有很少的元件,因此它们能容易地安装到一块小板子上,也不需测量任何器件。一旦完工,就可以使用了。