采用STM32的远程温控系统设计
温度控制是工业控制的主要对象之一,常用的温控数学模型是一阶惯性加上纯滞后环节,但其随着加热对象和环境条件的不同,会存在着较大的差异。因为温控对象这种较为普遍的含有纯滞后环节的特点,容易引起系统超调和持续的振荡,温度控制对象的参数会发生幅度较大的变化。因此无法采用传统的控制方法(如常规的PID控制)对温度进行有效的控制,而智能控制不需要对象的精确数学模型就可以对系统实施控制[1]。温度控制多采用由单片机系统来实现温度控制,其缺点是远程控制系统复杂,可靠性差,特别是当控制点较多、距离较远时,采取总线方式的通讯出错概率较高,影响到温度的控制精度[2]。
目前,多家厂商(如日本导电、岛通)均推出精度可达0.1级的基于PID算法的智能型温控仪表,然而这些公司对其核心技术并不公开,同时也不开放用于系统改进的接口或者代码。本文的设计基于STM32硬件单元,采用一种温控单元与计算机相结合的主从式远程温度控制模式。利用工控机进行PID参数整定后通过网络控制温控单元的输出,温控单元输出控制信号调整可控硅的开角,从而达到改变加热功率的目的。本文采用仪表与计算机相结合的主从控制模式,软、硬件部分分别独立工作,便于系统的升级改造,可以有效地提高控制策略的灵活性。
本文所研究的基于组态软件实现的模糊PID算法智能温度远程监控系统,能较好地解决温度的远程控制问题,且系统结构非常简单,温度控制精度高。
系统总体方案设计
温度控制系统用于控制电加热炉内的温度,热源为高温电阻丝,采用可控硅电压调整器来进行电加热炉的温度调整,此调整器是通过控制可控硅的导通角而调整输出电压、改变加热体的发热功率、从而达到控制电加热炉温度的目的。
如图1所示,加热炉实时的温度由温控单元采集热电偶转变为电压信号,经温控单元整理后,通过TCP/IP协议将打包后的温度数据传送至工控机端,将此温度的采样值与设定值比较,采取相应的控制算法计算出实时的PID参数,通过网络控制温控单元,温控单元输出4~20mA电流信号至可控硅调压器,对可控硅的导通角的开度进行控制,调整加热炉的温度。采用本方案设计的系统具有结构简单,易于实现的特点。
温控单元设计方案
温控单元实现的功能包括温度信号的模拟量数据采集、控制调压器可控硅开角的模拟信号输出、控制信号的I/O输出,以及温控单元与工控机之间的数据传输等。
STM32系列32位闪存微控制器使用ARM公司的Cortex-M3内核,处理器的核心是基于哈佛架构的3级流水线内核,该内核集成了分支预测,单周期乘法,硬件除法等众多功能强大的特性[3],目前已经获得了广泛的应用。
温控单元选用的处理器是STM32的增强型系列处理器—STM32F103。该处理器频率为72MHz,带有片内RAM和USB 2.0接口、16通道的12位A/D转换器、2通道的12位D/A转换器、以及I/O通道等丰富的外设。其中系统集成的双ADC结构允许双通道采样/保持,以实现12位精度、1μs的转化。处理器的双ADC结构为2个工作在非连续模式的独立的时序控制,具有多个触发源,每个通道的采样时间均可编程。
本文设计的系统采用独立于微控制器(MCU)的专用网络接口芯片来实现TCP/IP协议,网络芯片选择W5100,微处理器与网络芯片通过SPI接口进行连接。温控单元硬件组成如图2所示。
控制策略的选择
电加热炉是一个复杂的受控对象,具有多参数、非线性、时变性、纯滞后、多干扰等特点,对其进行精确的数学建模非常困难。模糊控制系统是一种自动控制系统,它是以模糊数学、模糊语言形式以及模糊逻辑理论为基础,采用计算机控制技术构成的一种具有闭环结构的数字控制系统。模糊控制不需要被控对象的精确数学模型,并且可以引入专家经验,可以较好地解决此类温度控制问题。但由于单独使用模糊控制不易消除稳态误差,且对控制器运算性能要求较高,而PID算法简单又可以较好地消除稳态误差,实际运行效果和理论分析表明,这种控制规律在相当多的工业生产过程中能得到比较满意的结果[4]。
PID控制器是通过对误差信号()et进行比例、积分和微分运算,其结果的加权,得到控制器的输出()ut,该值就是控制对象的控制值。PID控制器的数学描述为:
式中()ut为控制输入,()()()etrtct=−为误差信号,()rt为输入量,()ct为输出量。
PID控制的传输函数为:
将模糊控制与PID控制结合,根据操作经验与模糊理论,在线自整定PID控制器的3个基本控制参数,输出控制变量,利用模糊控制实时修正PID参数,提高系统的控制精度和鲁棒性,该控制器具备自适应性,系统采用的控制器结构如
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)