基于瑞萨微控制器的温度控制系统设计
扫描二维码
随时随地手机看文章
摘要:为了提高传统温度控制系统的性能,将PID控制理论与嵌入式系统相结合,采用瑞萨电子公司的H8S/2166作为核心处理器,AD公司的AD7705以及热敏电阻温度传感器作为温度检测单元,利用4x6小键盘、LCD显示器和S1D13305液晶控制器达到良好的人机交互,设计出了一个应用于化工领域的嵌入式实时温度控剞系统。相比于传统温度控制系统,该系统提供了更强的计算能力和可扩展能力,采用增量PID控制算法实现复杂控制。通过实验,该系统能达到0.1℃的温度控制精度以及小于120 s的温度稳定时间。
关键词:温度控制系统;嵌入式;Renesas微控制器;PID控制器
温度的测量及控制在社会生产生活中有着广泛的应用,而在石油、化工、电力、冶金等重要工业领域中则担负着极其重要的测控任务,温度测控的及时、准确,直接关系到生产效率和作业安全。伴随着科技的快速发展,以51单片机为核心的智能测控系统得到了广泛的应用,基本上满足了大部分的需求,但是对于一些要求测量精度高、控制精度高、实时性要求高、系统复杂的温度控制系统,单片机就不能满足要求了,这就要求高精度和高速度的处理器。
本文提出一种基于Renesas H8S/2166徽控制器的温度控制系统的设计方案,通过4×6小键盘和128x64 LCD显示器提供良好的人机交互能力。该系统能有效地应用于化学反应温度控制系统,可提供一种自动化、安全,实时的测控方式。
1 系统硬件组成
系统主要由输入输出设备(键盘和LCD),步进马达送液泵,温度传感器和Renesas H8S/2166微控制器构成。系统模块图如图1所示。
1.1 微控制器
Renesas H8S/2166是由瑞萨电子公司开发的16位微处理器,能很好的向上兼容H8/300和H8/300H系列的微处理器,拥有16个16位的通用寄存器,65条基本指令,以及各种外围设备及接口,诸如8位计时器,16位计时器,PWM,数据传输控制器,看门狗,异步或时钟同步串行通信接口(SCI),I2C总线接口,LPC接口,8位D/A转换器和10位A/D转换器。
1.2 温度传感器模块
温度传感器模块是一个较为核心的模块,采用热敏电阻温度传感器,温度精度为0.1℃。并且为了提高转换精度,使用了一个外部的16位A/D转换器AD7705。
AD7705是美国AD公司推出的16位∑-△A/D转换器。器件包括由缓冲器和增益可编程放大器(PGA)组成的前端模拟调节电路、∑-△调制器,可编程数字滤波器等部件。能直接将传感器测量到的多路微小信号进行A/D转换。PGA可通过指令设定,对不同幅度的输入信号实现1、2、4、8、16、32、64和128倍的放大,因此AD7705芯片既可接受从传感器送来的低电平输入信号,亦可接受高电平信号。它的输出速度同样可由指令设定,范围由20~500 Hz。这种器件还具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合仪表测量、工业控制等领域的应用。它采用三线串行接口,有两个全差分输入通道,能达到0.003%非线性的16位无误码数据输出,其增益和数据输出更新率均可编程设定,还可选择输入模拟缓冲器,以及自校准和系统校准方式。工作电压3 V或5 V。3 V电压时,最大功耗为1 mW,等待模式下电源电流仅为8μA。
电路图如图2所示,Pt100即为热敏电阻温度传感器。
1.3 步进马达送液模块
步进马达送液模块包括两个组成部分:步进马达和送液注射器。步进马达基本步距角为0.9°,微步是基本步距角的四分之一,即0.225°。利用步进马达推动注射器完成送液过程,步进马达每运转一圈,注射器移动量为0.8 mm。
微控制器通过用户设定的送液速率或吸液速率以及所选择的注射器内径大小即可计算得到步进马达运转周期。公式如下:
即微控制器每过时间T驱动步进马达运转一步。
1.4 输入输出控制
系统利用4x6键盘和128x64 LCD显示器以达到良好的人机交互,采用中断的方式,提供对系统的及时,有效的控制。
系统采用了S1D13305液晶显示控制器对LCD显示器进行控制。S1D13305具有较强的I/O缓冲器,徼控制器访问S1D13305不需要判断其是否为“忙”状态,S1D13305可随时准备接收徽控制器的访问,并及时地传输单片机发来的指令和数据。另外,S1D13305具有较强的管理显示存储器的性能,内置一个字符发生器,具有160种5×7点阵字体的字符,并能分区管理64 K的显示存储器,可以同时管理3个或4个显示区,并能同时管理用户自定义字符发生器。此外,S1D13305软件功能非常强大,命令控制操作简单,共有14条指令,用户只需给不同指令输入控制参数,就可得到所需的显示内容。
工作状态下的LCD显示如图3所示。
2 系统软件设计
系统设计了两种工作模式,模式1是送液流速恒定自动控制模式,模式2是温度恒定自动控制模式。其中模式2采用了数字PID控制算法,以达到良好的控制效果。系统总流程图如图4所示。其中基本设定包括选择注射器型号,设定流速大小等内容。
2.1 流速恒定自动控制模式
系统根据用户设定的流速及所使用的注射器内径值,计算出步进马达的运转周期T,根据周期T设定计时器Timer0的匹配中断值,然后利用计时器Timer0匹配中断来驱动步进马达运转和更新LCD所显示的各项内容。
在工作状态下,微控制器利用串行通信接口,每次从AD7705得到一个16位数值,通过计算得到对应的温度传感器电阻值,再查询阻值温度对照表即可得到当前温度。
在模式1下,每次驱动步进马达之前都会对当前温度和设定的温度进行比较,如果当前低于温度上限,步进马达才能运转,否则步进马达将停止送液,直到当前温度低于设定的温度下限时,步进马达才能重新运作。
该模式流程图如图5所示。
2.2 温度恒定自动控制模式
该模式利用数字PID控制算法,通过调整比例、积分和微分的3个参数,使系统获得良好的闭环控制性能,从而使反应槽中温度趋于恒定。
模拟PID控制算法为:
式中,m(t)是PID控制器的输出信号;e(t)为偏差信号;KP为比例增益;KI为积分增益;KD为微分增益。
用一系列采样时刻kT代替连续时间t,以增量代替微分,并以后向差分的形式表示;对积分项也以增量代替,为了简便,可省去T,将式(1)转变为离散形式的差分方程:
系统的采样周期T选定后,利用Z-N整定公式确定了KP、KI、KD,只要使用前后3次测量的温度偏差值即可由式(3)式(4)得到控制量,再计算得出实际对应的马达转速。
控制原理如图6所示。
3 实验设计
选择直径10 mm,容积10 mL的注射器,在注射器中吸入浓度为38%的浓盐酸,在5 cmX5 cmx10 cm反应槽中倒入浓度为35%的氢氧化钠水溶液,系统通过步进马达控制注射器将盐酸注入反应槽中,从而发生放热反应。通过实验证明,如表1所示,系统控制精度能达到0.1℃,选择温度恒定自动控制模式时,温度稳定时间小于120 s。
该系统可应用于化工领域,作为反应温度自动控制系统,能取得良好的控制效果。
4 结束语
本文设计了一种实时温度控制系统,它采用了瑞萨电子公司的H8S/2166微控制器作为核心处理器,并采用增量PID控制算法,它比传统的51单片机有更快的运行速度,更好的可扩展性,能实现更为复杂的、高性能、运行稳定、抗干扰能力强、智能化的实时嵌入式温控系统。
当然,该系统还存在一些不足之处,今后将在以下几方面加以研究和改善:1)设计多种操作模式,以满足各种实用环境;2)设计实现多个微控制器与一台主机的通信,用一台主机即可控制多个工作现场,进一步提高工作效率。