网站大量收购闲置独家精品文档,联系QQ:2885784924

参考学习资料 单片机 PID控制讲座.docx

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE20

PID控制专题

主要内容:

1.常用的控制算法与PID控制算法的异同点;

2.PID控制算法的理论分析

3.基于单片机的PID算法实现

4.PID算法的工程应用的一些注意事项

5.演示板电路分析

6.PID算法C语言实现基于ARM-CortexM3(STM32)的增量式PID温度控制

一、常用的控制算法:

1.控制系统的基本结构:

控制目的:

控制的根本目的就是要使控制对象当前的状态值与用户的设定值相同(最大限度的接近)。

基本思想:

用户设定值SV与被控制对象当前的值PV两者同时送入由特定硬件电路模型或特定的软件算法组成的控制算法逻辑中,利用不同的控制算法对SV和PV进行分析、判断、处理,从而产生当前应该输出的控制信号OUT,控制信号经过执行机构施加到控制对象上,从而产生预期的控制效果。

2.常用控制算法:位式控制

1).二位式控制算法

特点:

a.二位式控制算法输出的控制量只有高低2种状态。

b.执行机构使控制对象要不全额工作,要不就停止工作。当PV低于SV时全额工作,PV大于或等于SV时就彻底停止工作。如果控制对象是一个1000W的加热器,温度不到时就1000W全功率运行,温度达到时就停止工作。

c.由于环境因素或控制系统传输延时或者控制对象本身的惯性等因素,控制效果往往是PV在SV的上下有一个较大的波动。

d.在PV接近SV的临界点时,控制输出信号OUT往往在H和L之间频繁转换,导致执行部件的触点频繁开关动作,易产生干扰及缩短执行部件的寿命。

2).具有回差的二位式控制算法

特点:

a.取SV的正负10%左右作为回差调节上下限,

高于上限才开始输出L,低于下限才开始输出H;

b.避免了一般二位式控制算法在临界点时执行部件频繁动作。

c.因为控制对象只有全额运行或不运行两种状态,仍然存在一般二位式控制算法的缺点:PV总是在SV附近波动。

3).三位式控制算法

特点:在二位式控制的基础上对控制对象的功率分成0功率(停止工作)、半功率、全功率三种情况(即三位)。

当前值低于设定值一定比例(一般10%)时OUT1和OUT2同时起控制作用,控制对象全功率运行;

当前值在设定值的正负10%范围时,OUT1单独作用,工作于半功率状态;

当前值达到或超过设定值时OUT1和OUT2都停止输出,控制对象停止工作。

相对一般二位式控制算法,三位式算法对控制对象的当前状态值做了简单的分析,并根据不同的当前状态值输出不同的控制信号。能够较好的对输出产生控制效果。

小结:位式控制的主要特征:

1.控制算法只关注控制当前的状态值(PV)与设定值之间的差值二者当前有差值就输出控制信号,二者当前无差值就不输出控制信号。

2.位式控制算法的输出信号状态单一,只输出了高低两种状态,这两种状态对应着控制对象的工作与不工作如果是温度控制系统,就是加热器加热与不加热。

3.由于控制系统自身的延时或者控制对象自身的惯性,位式控制算法只能使控制对象当前的状态值在设定值附件波动,不能很好的跟踪在设定值的附近甚至相等。

二、PID控制算法

1.PID控制算法的基本思想

PID算法是一种具有预见性的控制算法,其核心思想是:

1.PID算法不但考虑控制对象的当前状态值(现在状态),而且还考虑控制对象过去一段时间的状态值(历史状态)和最近一段时间的状态值变化(预期),由这3方面共同决定当前的输出控制信号;

2.PID控制算法的运算结果是一个数,利用这个数来控制被控对象在多种工作状态(比如加热器的多种功率,阀门的多种开度等)工作,一般输出形式为PWM,基本上满足了按需输出控制信号,根据情况随时改变输出的目的。

2.PID算法分析:

设某控制系统:用户设定值为SV(也就是希望通过PID控制算法使被控制对象的状态值保持在SV的附件)。

1从系统投入运行开始,控制算法每隔一段时间对被控制对象的状态值进行采样。由此,可得到开机以来由各个采样时间点被控制对象的状态值所形成的数据序列:

X1,X2,X3,X4,Xk-2,Xk-1,Xk

说明:

X1:开机以来的第一次采样值

Xk:目前的采样值(最近一次的采样值)

2从这个采样值序列中提取出三方面信息:

=1\*GB3①当前采样值Xk与用户设定值SV之间的差值:Ek

Ek=Sv-Xk

分析Ek:

0:说明当前状态值未达标

Ek=0:说明当前控制状态值正好满足要求

您可能关注的文档

文档评论(0)

工地殿小二 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档