基于DSP与数字温度传感器的温度控制系统

国内新闻 阅读(1878)

O简介

自1960年代以来,数字信号处理器(DSP)与计算机和通信技术一起得到了快速发展,其应用也越来越广泛。在温度控制方面,尤其是固态激光器的温度控制方面,温度的准确性受到工作环境和条件的严格控制。在国内外进行温度控制之前,基本上使用温度敏感电阻来测量温度,然后进行风冷。或采用水冷方式达到控温效果,精度不够,体积较大。本文基于DSP芯片TMS320F2812和数字温度传感器DSl8B20,设计了一种温度测量系统。根据测得的温度和设定参数,采用模糊PID算法计算控制量。控制量用于调整DSP事件管理器生成的PWM。波的占空比作用在半导体制冷机上,达到温度控制的效果,实现了控制精度高,体积小的温度控制系统。

1系统硬件组成

1.1 DSl8820的功能结构和使用

DSl8820是DALLAS制造的单线数字温度传感器,具有3引脚T0-92小体积封装;温度测量范围为-55至+125°C;可编程9到12位A/D转换精度温度测量分辨率可以达到0.0625°C; CPU只需一根双绞线即可与许多DSl8B20进行通信,占用微处理器的端口更少,并节省了大量的引线和逻辑电路。这些特性使DSl8B20非常适合用于长距离多点温度感测系统。

DSl8B20的引脚排列如图1所示。DQ是数字信号输入/输出端子; DQ是数字信号输入/输出端子。 GND是地; VDD是外部电源输入端子(在寄生电源接线模式下接地)。 DS-18B20中的温度传感器执行温度测量,并以16位符号扩展的双补码形式提供,以O.0625°C/LSB的形式表示,其中S是符号位。例如,+ 125°C的数字输出为07DOH,+ 25.0625°C的数字输出为0191H,-25.0625°C的数字输出为FF6FH,-55°C的数字输出为FC90H。

1.2 DSP简介

这里使用的DSP是TMS320F2812,它是TI的新型低成本,高性能16位定点DSP,专为控制应用而设计。其频率高达150 MHz。使用的晶振为45 MHz,外围接口集成在片上,主要用于控制和计算。

1.3半导体冰箱简介

根据珀尔帖效应制造半导体制冷机。一对由两种不同金属组成的热电偶。当热电偶进入直流电时,直流电的方向会有所不同,它将在热电偶的结点处。产生吸热和放热现象。冰箱的结构如图2所示。

p型N型和P型半导体的颗粒通过金属接线片焊接到一对电偶上。当直流电从N极流向P极时,上端会产生吸热现象。该末端称为冷端,下端产生放热现象。此末端称为热末端。如果电流方向相反,则热端和冷端会相互转换。

1.4硬件连接

DSl8B20通过两种主要方式连接到DSP:寄生电源模式和外部电源模式。本文使用一种外部电源模式,其中18B20的DQ端口连接到F2812的GPIOA0端口。具体连接如图3所示。

2温度测量

要控制温度,请首先测量目标的温度值。在该系统中,数字温度传感器DS18B20与DSP组合在一起,并且程序由CCS编写。系统开发平台为CCS 2.2,预安装,此处省略了芯片设置,程序流程如图4所示。

DS18B20的控制包括三个时序:复位,写入时序和读取时序。

复位:主机总线在时间t0发送一个复位脉冲(最小480μs低电平信号),然后在t1释放总线并进入接收状态。 DS1820在检测到总线上升沿后等待15至60μs。然后,在时间t2发出存在脉冲(低电平持续60到240μs)。

写入时序:DS18B20的写入时序分为两个过程:写入O时序和写入1时序。写入O时序和写入1时序的要求不同。在写入0时序时,应将总线拉低至少60μs,以确保DS18B20可以在15至45μs之间正确采样I/O总线上的“ O”电平。当要写入序列时,将单总线拉低后,单总线会在15μs内释放。写数据持续时间应大于60μs且小于120μs,写时间间隔应大于1μs。

读取时序:DS18B20的读取时序也分为两个过程:读取0时序和读取1时序。对于DSl8B20的读取时序,在从DSP将单总线拉低后,单总线在15 s内释放,以便DS18B20可以将数据传输到单总线。 DS18B20至少需要60μs才能完成读取序列。

应该注意的是,在编程时,无论是复位还是读写,都应注意GPIOA0端口状态(输入或输出)的配置,尽管计时非常重要,但本文中的延迟是经过多次测试。总结后,根据DSP芯片的晶体振荡器,延迟程序将改变,否则DSl8B20将无法正常工作。

3温度控制

3.1脉宽调制PWM输出

TMS320F2812的事件管理模块总共可以输出16个PWM信号。只需要一个占空比可调的PWM信号,并且方波信号被设计为从PWM1引脚输出。选择通用定时器1(T1)作为时基;完全比较单元1存储调制值;计数模式使用连续递增模式。将PWM占空比值与T1的三角波数据进行比较,并且输出的PWM信号控制半导体制冷芯片的操作。每个寄存器的设置如下(高速外设时钟为22.5 MHz):

本文设计的PWM周期为1.825 ms,TMS320F2812的计数器计数范围为05DC。因此,当加载到CMPR1寄存器中的系统值为0或5DCH时,输出始终为高电平或低电平。以对CMPR1的1500的写入为例,PWM1引脚的输出周期为1.825ms的方波。

3.2温度控制软件设计

根据上面的描述,DS18B20读取温度样本值,并通过参数自整定Fuzzy-PID算法处理数据:根据E和Ec的条件,使用模糊控制律通过模糊表得出△KP。 KI,KD,根据公式(1)计算KP,KI,KD的大小,计算U和ΔU的初始值,并通过公式(2)实时计算控制量U。通过参数转换,将U转换为PWM参数,修改EvaRegs.CMPR1的值,并更改PWM的占空比以控制TEC的冷却/加热功率。

程序流程图如图5所示。

3.3实验结果

完成上述程序后,首先使用模拟器来模拟温度。当标准温度计的室温为31.2°C时,CCS软件中快速观察窗口检测到的温度值为31.187 5°C。通过实验证明,当外部温度为31°C且默认设置为(稳定温度为25°C)时,温度控制系统可以将被控对象的温度稳定在25°C,因此温度稳定时间较短小于100 s,精度可以达到O。低于1°C,可以满足工业控制要求。

4结论

利用DSP的高速处理能力,结合DS18B20的精确温度读取能力,以及使用CCS开发温度控制系统。 Fuzzy-PID算法应用于温度控制系统。设计目标是在相同的控制精度条件下,尽可能减少系统的过渡时间和过冲,以提高控制效果。采用复合控制使系统有效地抑制了纯滞后的影响。当参数变化较大且存在干扰时,仍可获得较好的控制效果。