基于SPCE061A的高精度多通道温度测量系统设计

2010-08-03 12:16:32来源: 现代电子技术

  0 引 言

  温度的测量与控制在工农业生产、日常生活及科学研究中有着广泛的应用。由于常用温度传感器的非线性输出及一致性较差,使温度的测量方法和手段相对较复杂,也给电路的调试增加了难度。为此,设计了以台湾凌阳公司生产的SPCE061A 16位高性能单片机为系统控制核心。采用DALLAS公司的DS18820作为温度传感器的三通道高精度温度测控仪,该测控仪实现了温度数据和日期、时间的显示与保存;可输出显示三组温度和三路控制信号,具有故障和报警状态提示等功能,保证了测试的精度以及系统的可靠性和控制要求。

  1 系统硬件设计

  多通道智能温度测控仪的硬件电路原理框图如图1所示,测控仪主要由SPCE061A单片机、温度传感器DS18B20和LCD显示电路、键盘电路、串/并转换电路、时钟电路等组成。

多通道智能温度测控仪的硬件电路原理框图

  微处理器是系统的核心,它控制测量过程,进行数据处理。它的设计和选用要考虑传感器的测量速度、精度、分辨率及数据处理能力等。对于集成传感器,设计微处理器(MicroProcessor)的功能要适当,设计时既要考虑产品质量、可靠性,又要考虑降低成本,简化结构,满足芯片尺寸的要求。因此,选用SPCE061A作为系统微处理器。

  SPCE061A芯片是凌阳公司推出的一款高性价比的16位单片机,其主要特性为:工作电压:CPU的内核工作电压VDD=3.0~3.6 V,I/O口的工作电压VDDH=VDD~5.5 V;CPU时钟的频率为:0.32~49.152 MHz;内置2 Kword SRAM和32 KB闪存ROM;系统处于备用状态下(时钟处于停止状态),耗电小于2μA@3.6 V;具备触键唤醒的功能;32位通用可编程输入/输出端口;2个16位可编程定时器/计数器(可自动预置初始计数值);7通道10位电压模/数转换器(ADC)和单通道声音模/数转换器;2个10位数/模转换(DAC)输出通道;14个中断源可来自定时器A/B,时基,2个外部时钟源输入,键唤醒;具备串行设备接口;低电压复位(LVR)和低电压监测(LVD)功能;内置在线仿真(In-Circuit EmulaTIon,ICE)。另外16位单片机具有一套易学易用、效率较高的指令系统和集成开发环境。在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用。

  1.1 温度数据采集

  温度数据采集电路选用Dallas公司生产的DS18B20。DS18B20是“一线总线”数字化温度传感器,测量温度范围为-55~+125℃,在-10~+85℃范围内,精度为士O.5℃。该器件只有3个引脚(即电源VDD、地线GND、数据线DQ),不需要外部元件,一条数据线进行通信。设计系统检测温度范围设计为-10~+85℃,精度为0.2℃,已经能够满足绝大多数工作环境的要求;用9 b数字量来表示温度;每次将温度转换成数字量需时200 ms。在单总线工作方式下,允许一条信号线上挂接多个DS18B20,DS18B20都有惟一的ROM代码(64位产品序列号)。在多点温度测控系统中,ROM代码是识别和操作DS18B20的基础;无论读取,还是选择对某一个传感器进行操作,主机必须发送64位ROM代码。

  为了保证测试精度,系统设计了A,B,C三个温度采集通道,以便测试温度场分布较大的环境。当温度达到设定要求时,控制电路可以产生相应的控制动作,比如切断加热电源或者发出告警信号。DS18B20温度与转换数值之间的关系见表1。

DS18B20温度与转换数值之间的关系

  1.2 人机接口

  系统键盘由SPCE061A的IOB5~8组成,它们分别是功能键、增加键、减少键、复位键。用来实现温、度上、下限及控制时间的设置功能。测控仪采用驱动128段LCD显示器,用于显示现场的温度值、时间、故障和报警状态。HT1621是一个128(32×4)段、内存映射、多功能、I2C接口的LCD驱动器。这里利用其两线串行模式与单片机接口,简化了与单片机的接口电路设计,并减少了硬件资源的占用。

  2 系统软件设计

  主程序主要完成系统初始化、扫描键盘、温度采样并对采样数值进行运算、显示温度及控制输出等工作。主程序流程图如图2所示。定时器B用于定时控制采样的时间。系统设定采样周期为2 s,而控制周期为500μs。通过键盘设定控制温度数值,输入后做相应的数据备份,即将参数存入单片机SPCE061A内的FLASH ROM中。

主程序流程图

  系统采用数字PID算法来提高系统的控制精度,PID用增量式表示为:

公式

  由于温度响应具有迟滞性,属于一阶延时系统,若采用常规PID算法,控制效果不好,并且会出现较大的超调量。为了解决这一问题.设计采用积分分离PID算法,从实验结果来看,性能指标均有所提高。

  当被控量与设定值偏差较大时,取消积分作用;当被控量与设定值偏差很小时,加入积分作用,即系统启动、停止或大幅度改变设定值时,只用比例控制和微分控制,然后才加入积分控制,这样更有利于改善动态特性和消除静差。具体做法是:针对被控对象参量,设定一个偏差的门限e0,当过程控制中偏差e(n)的绝对值大于e0时,系统不引入积分控制,只用PD控制;当偏差e(n)的绝对值小于e0时,才引入积分控制,即采用PID控制。对计算公式的积分项,乘一个权系数μ,按式(3)取值:

公式

  μ=1,当|e(n)|≤e0

  3 系统调试

  系统调试中,采用电加热器对1 kg水进行加热,DS18B20将温度信号变为数字信号,读入CPU,通过软件对温度数据进行校正,同时将所测温度在LCD上进行实时显示。根据系统程序控制,进行PID运算以及输出控制,最终由CPU给出控制加热回路的有效电压。PID参数整定:系统采用扩充临界比例度法来整定。

  通过实验测量,被控对象的纯滞后时间为20 s左右,因此选择采样周期为2 s。通过实测数据比较,选择控制度为1.2,采用PI控制,经过对参数进行微调,最后得出最佳PID参数,即KP=2.11,K1=0.043。在系统调试中实测数据表明,控制器平均控制精度在士0.2℃之内。表2为调试过程中3个通道的1次数据记录。从数据可以看出,当设定温度为80℃时,最后稳定温度为80.2℃,控制精度比较高。

调试过程中3个通道的1次数据记录

  4 结 语

  多通道温度测控系统采用抗干扰性能强,功耗低的SPCE061A16位单片机和一线式数字温度传感器DS18B20,使系统的硬件电路结构得到高度简化。软件采用高精度的PID控制算法,使测量及控制性能得到显著提高。经实际使用证明,具有测量精度高.硬件电路合理,性价比高,使用方便等特点,克服了传统温度仪测量精度低,电路复杂,调试及标定困难等缺点。该系统可应用到大部分温度、温差的高精度控制场合中。

关键字:PID控制算法  系统设计  高精度  温度传感器

编辑:金海 引用地址:http://www.eeworld.com.cn/mndz/2010/0803/article_2433.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
PID控制算法
系统设计
高精度
温度传感器

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved