基于专家系统的智能PID控制方案解析

来源:元器件交易网 作者:—— 时间:2012-04-13 11:29

       软件部分


  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;


  2 控制系统的程序流程


  3 PID子程序流程


  将系统误差e(k)和误差变化率Δe(k)变化范围定义为e(k),e(k)={NB,NM,NS,O,PS,PM,PB},各元素分别代表流量差值及流量差值变化率。根据不同的e(k),Δe(k)的量化取值和控制器数学模型,选择相应的控制器计算公式进行PID运算,从而完成流量的智能控制。 

       Matlab下的仿真


  Matlab是控制系统的一种分析和仿真软件,利用它可以方便准确地对控制系统进行仿真,为了验证数字PID算法的可靠性,采用Matlab6.5下的simulink组件对增量数字PID算法进行了仿真。仿真结果表明运用PID对PWM方波进行调解具有良好的动态性和稳定性,从而证明了该气体流量控制系统得可行性。


  结语


  本设计采用了西门子的专用PID模块,大大简化了程序。同时,采用了图形编程方式,使程序更直观,交互界面更加友好。运用数字PID算法结合AVR单片机的PWM功能实现了气体流量的控制,利用PWM信号控制比例电磁阀开口的大小,实现了流量的连续控制,减少了滞后性,同时采用了增量式数字PID算法调节,实现了闭环控制,使系统调节更准确、更稳定。此外,运用Matlab软件进行了仿真,证明了系统的可行性。


资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子