基于AVR单片机atmega32的PID和PWM液体流量控制系统研究

分享到:

    摘要:本文介绍了一种PWM结合数字PID算法在液体流量变量控制系统中的应用方案,系统以AVR单片机atmega32为核心,以比例电磁阀为控制对象,利用atmega32的PWM功能,采用数字PID调节实现液体流速闭环控制。仿真结果表明采用PWM和数字PID控制液体流速具有良好的动态、稳态性,从而证明了这种设计的合理性和优越性。
关键词:AVR单片机 PWM  PID 比例电磁阀

Abstract:Liquid flow variable control using PWM method combined with PID arithmetic is introduced. It controls proportional valve by PWM method based on atmega32 which belongs to AVR microcontroller. The result of emluator indicated that PWM combined with PID arithmetic taked on good dynamic and stability.So the rationality and advantage of the design are proved.
Key words:AVR Microcontroller PWM PID proportional valve
1. 引言
液体流量控制通常采用电磁阀实现,近年来,电磁阀的结构和控制方式发生了很大的变
化,随着计算机进入控制领域,以及新型的电力电子功率元器件的不断出现,使采用全控制的开关功率元件进行脉宽调制(pulse width modulation ,简称PWM)控制方式得到了广泛的应用。这种控制方式很容易在单片机中实现,从而为电磁阀的控制数字化提供了契机。
 将偏差的比例(proportion)、积分(integral)、微分(differential)通过线性组合构成控制量,用这一控制量对被控对象进行控制,这样的控制器称PID控制器。PID控制器最早出现在模拟控制系统中,传统的模拟PID控制器是通过硬件(电子元件、气动和液压元件)来实现它的功能。随着计算机的出现,把它移植到计算机控制系统中来,将原来的硬件实现的功能用软件来代替,因此称作数字PID控制器,所形成的一整套算法则称作数字PID算法。数字PID控制器与模拟PID控制器相比,具有非常强的灵活性,可以根据试验和经验在线调整参数,因此可以得到更好的控制性能。
2. 液体流量控制系统组成
本系统采用AVR系列的atmega32单片机为核心,通过设置atmega32的PWM控制寄存器产生脉宽可调的PWM波,对比例电磁阀的输入电压进行调制,从而实现了对液体流量的变量控制。单片机统过涡轮流量计采集实际流量信号,根据该信号在其内部采用数字PID算法对PWM控制寄存器的值进行修改,从而达到精确的变量控制。为了防止外界干扰信号进入控制系统,单片机和涡轮之间采用光藕隔离,提高了系统的可靠性。温度传感器和压力传感器用来做监测喷杆中的压力和温度。通过4*4键盘和128*64液晶模块实现人机对话,便于用户操作。系统原理图如图2-1所示:


图2-1

3硬件部分
3.1 PWM驱动电路

单片机输出的PWM脉冲信号分别经7406和7407输入到Q1,Q2的G极,在每个PWM周期的高电平区间,Q1导通,Q2截止,电磁阀导通。在每个PWM周期的低电平区间,Q1截止从而切断了电源,电磁阀的感应电动势经Q2内部续流二极管形成回路。此时Q2的G极为高电平但是由于二极管的钳位作用使开关二极管关闭,因此通过调整单片机的PWM波就可以实现电磁阀输入电压占空比的调节,从而实现对流量的调节。
3.2 比例电磁阀
比例电磁阀在上世纪60年代末就已经得到了应用,最初是用于液压控制系统。随着单片机和集成电路的发展,其逐渐应用到各种液体的流量控制中。比例型电磁铁的工作原理如下:线圈通电后,轭铁和衔铁内部产生磁通并产生电磁吸力,将衔铁吸向轭铁,同时衔铁上的弹簧受到压缩,当衔铁上的电磁力和弹簧力平衡时,衔铁停止位移。比例型电磁铁的吸力在有效行程范围内和线圈的电流或电压大小具有线形关系。因此通过调解输入的电流或者电压就可以控制其开口的大小,从而达到变量控制的目的。本系统采用的比例电磁阀特性曲线如图3-1所示:(Kvs代表比例电磁阀最大开口时的流量,Kv代表对应某一电压或者电流值时的流量值)。

4. 软件部分
4.1 PWM波的产生
设计采用单片机atmega32产生PWM信号。atmega32的定时/计数器的PWM模式可以分成快速PWM和频率(相位)调整PWM两大类。 本设计采用快速PWM模式,快速PWM可以的到比较高频率的PWM输出,响应比较快,因此具有很高的 实时性。此时计数器仅工作在单程正向计数方式,计数器的上限值决定PWM的频率,而比较匹配寄存器的值决定了占空比的大小。快速PWM模式的控制寄存器设置如下:
   //输出端口初始化
   PORTD=0x44;
   DDRD=0x20;
   //T/C1初始化
   TCCR1A=0xC3;/*比较匹配时OC1A输出高电平,在top值时清零ICP下降沿捕捉,
   时钟1/8分频(暂定),即工作在反相pwm模式*/
   TCCR1B=0x0A;//10位快速pwm模式
   TCNT1H=0x00;//start at 0
   TCNT1L=0x00;

4.2 PID算法

常规的PID算法的基本原理如下图4-1所示,模拟PID控制器的控制规律为

  ——比例系数;  ——积分常数; ——微分常数; ——控制常量。
由于单片机控制是一种采样控制,它只能根据采样时刻的偏差值计算控制量,而不能像模拟控制那样连续输出控制量,进行连续控制。并且单片机处理数据的量有限,综合考虑该系统采用增量式PID控制,其算法如式4-3:

其中 为本次采样误差; 为上次采样误差; 为上上次采样误差。其控制程序的流程图如图4-2所示

用C编程实现程序如下所示:
void PID()
{float u;                                           //电压差值
  sint z;                                            //本次输出增量
  sint temp1;                                        //临时记录值
  float t;
  t=itime*T;
  Speed_change();                                   //将流速转化为数字量
  if (Ek==(0-Sheding_liusu))             //当Ek大于某一值时直接加最大
  {temp1=0x0000;
   SetOutputOCR1A(temp1); }//设置输出比较寄存器值
     else{
   Ek=Sheding_liusu-Celiang_liusu;
   u=A*((Ek-Ek_1)+(t/B)*Ek+(C/t)*(Ek-2*Ek_1+Ek_2));   //增量式PID算法
   z=u/U1*0x03FF;
   temp1=GetOutputOCR1A();                         //读取输出比较寄存器值
   temp1=temp1+z;
   SetOutputOCR1A(temp1);
   Ek_2=Ek_1;
   Ek_1=Ek;}
  TCNT1=0x00;}
5. Matlab下的仿真
Matlab是控制系统的一种分析和仿真软件,利用它可以方便准确的对控制系统进行仿真,为了验证数字PID算法的可靠性,采用Matlab6.5下的simulink组件对增量数字PID算法进行了仿真,仿真程序如图5-1所示,仿真结果如图5-2所示.。

如图5-2Kp=0.5,Ki=0.001,Kd=0.001
仿真结果表明运用PID对PWM方波进行调解具有良好的动态性和稳定性,从而证明了该液体流量控制系统得可行性。
6.结束语
  本文介绍了运用数字PID算法结合AVR单片机的PWM功能实现液体流量控制的方案,并运用Matlab软件进行了仿真,证明了系统的可行性。数字PID算法调整控制参数较之硬件PID控制器操作简便,系统设置灵活。该控制系统可应用于工业、农业等领域的液体流量控制中,也可用于液压系统的电磁阀控制。
本文作者创新点:
传统的液体流量控制大多采用高速开关电磁阀,电磁阀的频繁开关会产生很大滞后性,不利于控制的系统的实时性。该系统利用PWM信号控制比例电磁阀开口的大小,实现了流量的连续控制,减少了滞后性同时采用了增量式数字PID算法调节实现了闭环控制,使系统调节更准确,更稳定。
参考文献:
[1] 刘金坤,先进PID控制Matlab仿真(第2版)电子工业出版社 2004。
[2] 王晓明,电动机的单片机控制 北京:北京航空航天大学出版社 2002
[3] 王正林等 过程控制与Simulink应用 电子工业出版社 2006。
[4] 聂慧萍 基于ARM 和uCOS—II的固体科氏流量计测控系统 微计算机信息 2005第21卷第7-2期。
作者简介:李晓光(1982—),男,硕士研究生,中国农业大学信息与电气工程学院,研究方向:精准农业智能信息系统集成技术。王秀(1965—),男,博士,研究员,主要从事的研究方向:精细农业智能信息系统集成技术。李民赞(1963—),男,博士,教授,主要从事的研究方向:电子信息技术在农业中的应用。
(100097 国家农业信息化工程技术研究中心)李晓光 王秀
(100083 中国农业大学信息与电气工程学院)李晓光
(100097 国家农业信息化工程技术研究中心北京2449信箱26分箱)李晓光
Email:lixiaoguang3535@163.com

继续阅读
AVR单片机及其特点

AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(Reduced Instruction Set CPU) 精简指令集高速8位单片机。AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。

基于AVR单片机的嵌入式“瘦服务器”

本文的主要内容为:以AVR单片机为主控CPU芯片,提供“瘦服务器”的软件、硬件的组成框图。该“瘦服务器”的应用前途广泛,可以应用于各行各业的Internet远端监控系统中。主要应用于:(1)网络家电产品,通过该系统把数字化家电直接接入Internet网络,组成intelligentizedhome;(2)城市网络自动售货机;(3)城市交通Internet监控;(4)楼宇防火防盗Internet监控;(5)工厂生产设备Internet监控。

基于AVR单片机的电冰箱控制系统的设计

随着电冰箱在日常生活中的普及,人们对电冰葙的性能和控制功能的要求越来越高,为了满足人们实际生活中电冰箱的需要,以AVR单片机为核心,通过硬件和软件设计了电冰箱的控制系统,试验结果表明,该系统性能指标和功能达到了预期目的,具有功能齐全、操作简单、使用方便等优点。该系统在同类产品中处于较高水平,具有较高的实用价值。

基于ATmega32单片机的灭火机器人设计与实现

机器人竞赛是近年来迅速开展起来的一种对抗活动,它涉及人工智能、机械、电子、传感器、精密机械等诸多领域。通过竞赛可以培养学生的创新意识、动手能力、团队写作能力等。其中灭火比赛是开展范围最广、影响最大的机器人竞赛项目之一。

基于ATmega32的漏电保护器智能化测试仪的设计

本测试仪操作简单,解决了手动测试方法存在的测量不准确的问题,达到了自动测量的目的,可检测在线与非在线运行的漏电保护器,提高了检测漏电保护器性能的水平,为进行漏电保护器工作性能的研究、品质检验及生产调试提供了技术手段。仪器设计充分利用了ATmega 32内置的各种功能,使硬件电路结构简单,有效提高了仪器的性价比,已在多家企业和科研单位使用,使用结果表明,仪器工作可靠,达到预期的技术指标。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss