随着计算机技术尤其是单片微型机技术的发展,温度对人们的生活与工作影响很大,所以要实时采集温度并且对其进行分析。为此,实现实时准确的测量监控。采用串口传送数据并且在PC机上进行分析。由于单片机的控制方便、简单和灵活等优点,采用了高性能avr单片机来控制GTJ4-10A固态继电器,最总实现温度的控制。从而最总在PC机上绘制温度曲线并保存数据和分析温度的数据。
1 系统组成及基本原理
本系统由温度采集模块,固态继电器控制模块,单片机模块,PC机软件处理模块。4个模块加起来实现温度的控制,以及温度采集和温度经过软件处理的分析。它们的逻辑关系如图1所示。
本系统的任务是对某种特定环境的温度进行采集并进行保存和再显示,通过单片机去控制固态继电器,从而控制其温度值的大小,再通过PC机实时显示当前的温度,并对当前的温度进行分析与保存。便于与以后的温度值进行对比等应用。首先由ATmega16单片机控制GTJ4-10A固态继电器从而控制交流电,再达到控制温度值的大小,这个时候通过DS18B20温度传感器对当前的温度值进行采集。将采集的数据结果通过Tx送给单片机,单片机将达到的温度值一方面通过串行通讯端口送给计算机,另一方面将温度数据进行对比分析,再通过IO控制GTJ4-10A固态继电器。从而实现了温度值控制。另一方面PC机得到的温度值送给MFC软件绘制温度曲线,同时通过保存按钮将温度值以及采集当前温度的时间记录下来。然后再经过显示按钮将温度值和时间显示出来。这就是对温度的实时采集与分析。
2 硬件部分设计
本系统主要采用高性能AVR单片机,GTJ4-10A固态继电器,DS18B20温度传感器,报警输出电路。主要系统电路图略。
2.1 ATmega16单片机简介
ATmega16是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1 MIPS/MHz,从而可以减缓系统在功耗和处理速度之间的矛盾。ATmega16AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与运算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。因此可以很好进行数据传送以及对继电器的控制和温度的采集。
2.2 温度采集模块
DS18B20采用Dallas独有的单总线协议,温度转换结果可选择为9-12位,最大转换时间在转换结果为12位时为750 ms,可通过读取DS18B 20的状态值判断其是否转换完毕。其测温范围为-55~+125℃,精度在范围内为±0.5℃。
2.3 固态继电器的控制
继电器模块单元通过单片机的IO口控制,让单片机的计算器计数,当环境温度的需要加热时,我们通过IO让继电器工作,达到某一数值时,再给继电器IO口低电平,从而通过单片机和利用继电器实现弱点控制交流电的作用,这里主要是利用了单片机PWM实现控制,从而就实现温度值大小的控制。具体电路图如图2所示。
2.4 报警输出电路
报警输出电路通过单片机的PA6口控制8550三极管,从而控制蜂鸣器。当温度值达到某一值时,蜂鸣器报警。这时通知单片机停止加热,再经过固态继电器控制加热设备,实现温度维持在一恒定的温度值附近。如果温度值低于某一数值时,单片机通知加热设备加热,这个原理是采用采集温度值控制的,从而达到用户的要求。