一种PID系统及其参数自动调整方法与流程

文档序号:12459316阅读:536来源:国知局
一种PID系统及其参数自动调整方法与流程

本发明涉及一种自动化控制技术,尤其涉及一种PID系统及其参数整定方法。



背景技术:

目前,比例-积分-微分(PID)闭环控制系统是工业控制领域重要的控制方法。在PID控制系统中,P、I、D三个参数是经过计算和测试得出的较好值,在PID系统运行中该参数保持不变。PID参数的整定主要有两类:理论计算整定法和工程整定法。

理论计算整定法是PID系统常用的确定PID三个参数的方法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。理论计算出的参数数据通常都不能直接使用,还必须通过工程实际测试进行修改和调整。

工程整定方法主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。在一些复杂的系统中,参数整定比较困难,需要具备丰富经验的工程师才能完成。工程整定法适用范围受限,每种方法只适用于某种特定工程场景,不具备通用性。

可见,现有技术的PID参数的确定比较复杂,往往需要丰富经验的工程师才能够快速得到准确可用的参数。



技术实现要素:

本发明要解决的技术问题是提出一种根据误差大小和上一采样周期的PID参数的调整步长来确定本采样周期的PID参数的调整步长从而实时调整PID参数的PID系统及其参数自动调整方法。

为解决上述技术问题,本发明采用如下技术方案:

一方面,提供一种PID系统参数自动调整方法。该方法包括如下步骤:

步骤1,配置PID系统误差的阈值区间;

步骤2,配置PID参数每次调整的步长,形成PID参数调整步长配置表;

步骤3,用当前采样得到的实测值更新上一次采样得到的实测值,计算目标值与当前采样得到的实测值之差得到误差;

步骤4,根据计算得到的误差的大小,查询所配置的误差阈值区间,确定误差所在的阈值区间;

步骤5,读取所保存的上一采样周期PID参数的调整步长,查询PID参数调整步长配置表,确定本采样周期PID参数的调整步长;

步骤6,将所确定的本采样周期PID参数调整步长与上一采样周期的PID参数相加,得到本采样周期的PID参数;

步骤7,根据本采样周期的PID参数得到PID系统的控制值,返回步骤3。

对于上述PID系统参数自动调整方法,PID参数调整步长的配置遵循以下原则:根据本采样周期的误差所处的阈值区间,本采样周期的PID参数调整步长配置为相应级别;同时,本采样周期的PID参数调整步长相对于上一采样周期的调整步长要逐级改变。

对于上述PID系统参数自动调整方法,配置PID系统误差的阈值区间进一步包括:将误差的正值从小到大分为4个阈值区间:0区间、低值区间、中值区间、以及高值区间,误差的负值从小到大分为4个阈值区间:负的高值区间、负的中值区间、负的低值区间、以及负的0区间。

对于上述PID系统参数自动调整方法,对应于误差的阈值区间,将PID参数的调整步长分为四级:0、低、中、以及高。

对于上述PID系统参数自动调整方法,当误差处于高值区间或负高值区间时,如果参数调整步长上一采样周期为0,则本采样周期为低;如果参数调整步长上一采样周期为低,则本采样周期为中;如果参数调整步长上一采样周期为中或高,则本采样周期为高。

对于上述PID系统参数自动调整方法,当误差处于中值区间或负中值区间时,如果参数调整步长上一采样周期为0,则本采样周期为低;如果参数调整步长上一采样周期为低、中或高,则本采样周期为中。

对于上述PID系统参数自动调整方法,当误差处于低值区间或负低值区间时,如果参数调整步长上一采样周期为0、低或中,则本采样周期为低;如果参数调整步长上一采样周期为高,则本采样周期为中。

对于上述PID系统参数自动调整方法,当误差处于0区间或负0区间时,如果参数调整步长上一采样周期为0或低,则本采样周期为0;如果参数调整步长上一采样周期为中,则本采样周期为低;如果参数调整步长上一采样周期为高,则本采样周期为中或高。

另一方面,提供一种PID系统。该PID系统包括:

实测值获取模块,用于采样得到传感器测量值;

存储器,用于存储目标值、上一采样周期的PID参数调整步长以及上一采样周期的PID参数;

误差计算模块,用于将实测值获取模块获取的实测值与从存储器读取的目标值相减得到误差;

误差阈值及PID参数调整步长配置表,用于配置误差阈值区间以及相应的PID参数调整步长的级别,并针对不同误差阈值区间和上一采样周期的PID参数调整步长所处的不同级别,配置本采样周期调整步长的相应级别;

本周期参数步长确定模块,用于根据误差计算模块计算得到的误差和从存储器读取的上一采样周期的PID参数调整步长,查询误差阈值及PID参数调整步长配置表,确定本采样周期PID参数调整步长;

本周期参数计算模块,用于将本周期参数步长确定模块所确定的本采样周期PID参数调整步长加上从存储器读取的上一采样周期的PID参数,得到本采样周期的PID参数;

PID控制值计算模块,用于根据本周期参数计算模块得到的本采样周期的PID参数,计算得到PID系统的控制值;以及

PID控制值输出模块,用于输出PID控制值计算模块计算得到的PID系统的控制值,控制脉冲宽度调制PWM的宽度。

对于上述PID系统,PID参数调整步长的配置遵循以下原则:根据本采样周期的误差所处的阈值区间,本采样周期的PID参数调整步长配置为相应级别;同时,本采样周期的PID参数调整步长相对于上一采样周期的调整步长要逐级改变。

与现有技术相比,本发明技术方案主要的优点如下:

(1)通过软件自动调节PID系数,适应不同场景需求;

(2)简化了PID参数确定的复杂流程;

(3)提高了PID参数确立的系统效率。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1是本发明一个实施例所述的PID系统参数自动调整方法的流程图;

图2是本发明一个实施例所述的PID系统的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整地传达给本领域的技术人员。

本发明的PID参数自动调整方法的最大特点是PID三个参数的值不是固定的,根据系统的稳定性,实时调整PID三个参数。PID三个参数是比例系数、积分系数和微分系数。在系统初始化前需要根据调整策略先配置好误差阈值和调整步长(step)。每个参数的调整步长(step)分4级:高(high)、中(mid)、第(low)和0,步长选择根据上一次的步长和当前实际值与目标值之间的误差来共同决定。为了达到变化平滑,在正常调整中,步长为high时不能直接跳到步长为low或者0。

如图1所示,本发明一个实施例所述的PID系统参数自动调整方法包括如下步骤:

步骤S11,配置PID系统误差的阈值区间。误差是被PID系统控制的对象的目标值与当前采样得到的测量值之差。例如,将误差的正值从小到大分为4个阈值区间:0区间、低值(low)区间、中值(mid)区间、以及高值(high)区间,误差的负值从小到大分为4个阈值区间:负的高值(high)区间、负的中值(mid)区间、负的低值(low)区间、以及负的0区间。具体阈值要根据PID系统应用的领域或者控制的对象的属性来确定,比如用于控制马达速度的PID控制器,误差最大阈值也不超过所控制的马达的最大转速。

步骤S12,配置PID参数每次调整的步长,形成PID参数调整步长配置表。PID参数包括比例系数、积分系数和微分系数。当前采样周期的PID参数=上一采样周期的PID参数+当前采样周期的调整步长,这个调整步长的具体数值也是根据PID控制器所应用的领域或者所作用的对象的属性来确定的。

PID参数调整步长的配置遵循以下两个原则:1)根据本采样周期的误差处于高值、中值、低值还是0阈值区间,本采样周期的PID系数调整步长配置为相应级别,2)同时,本采样周期的PID系数调整步长相对于上一采样周期的调整步长要逐级改变,不能跳变。

PID参数调整步长的具体配置的例子参照下面的表1,对应于上述误差的阈值区间,将PID参数的调整步长分为四级:0、低(low)、中(mid)、以及高(high)。

表1

当误差处于高值区间或负高值区间时,如果参数调整步长上一采样周期为0,则本采样周期为low;如果参数调整步长上一采样周期为low,则本采样周期为mid;如果参数调整步长上一采样周期为mid或high,则本采样周期为high。

当误差处于中值区间或负中值区间时,如果参数调整步长上一采样周期为0,则本采样周期为low;如果参数调整步长上一采样周期为low、mid或high,则本采样周期为mid。

当误差处于低值区间或负低值区间时,如果参数调整步长上一采样周期为0、low或mid,则本采样周期为low;如果参数调整步长上一采样周期为high,则本采样周期为mid。

当误差处于0阈值区间或负0阈值区间时,如果参数调整步长上一采样周期为0或low,则本采样周期为0;如果参数调整步长上一采样周期为mid,则本采样周期为low;如果参数调整步长上一采样周期为high,则本采样周期为mid或high。

步骤S13,用当前采样得到的实测值更新上一次采样得到的实测值,计算目标值与当前采样得到的实测值之差得到误差。例如,目标值可以是电机的预设速度、转速或周期。实测值可以是传感器实时测量得到的电机速度、转速或周期,实测值和目标值是同类参量,比如目标值是电机的预设速度,则实测值必须是传感器测量的电机当前实际速度。

步骤S14,根据步骤S13计算得到的误差的大小,查询所配置的误差阈值区间,确定误差所在的阈值区间。

步骤S15,读取所保存的上一采样周期PID参数的调整步长,查询PID参数调整步长配置表,确定本采样周期PID参数的调整步长。具体过程是:根据误差所在的阈值区间和上一采样周期比例系数的调整步长,确定当前采样周期比例系数使用的步长;根据误差所在的阈值区间和上一采样周期积分系数的调整步长,确定当前采样周期积分系数使用的步长;根据误差所在的阈值区间和上一采样周期微分系数的调整步长,确定本采样周期微分系数的调整步长。

步骤S16,将所确定的本采样周期PID参数调整步长与上一采样周期的PID参数相加,得到本采样周期的PID参数。具体过程是:将所确定的本采样周期比例系数调整步长与上一采样周期的比例系数相加,得到本采样周期的比例系数;将所确定的本采样周期积分系数调整步长与上一采样周期的积分系数相加,得到本采样周期的积分系数;将所确定的本采样周期微分系数调整步长与上一采样周期的微分系数相加,得到本采样周期的微分系数。

步骤S17,用本采样周期的PID参数中的比例系数、积分系数以及微分系数分别乘以误差、误差以及误差的微分,将比例系数与误差的乘积、积分系数与误差的乘积的积分、以及微分系数与误差的微分相加求和,得到PID系统的控制值,用于控制脉冲宽度调制(PWM)的宽度,返回步骤S13。

根据PID控制值来控制脉冲宽度调制(PWM)的宽度,从而实现对控制对象的控制。PWM是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。

本发明的PID系统参数自动调整方法实现了PID的参数自动调整,适应各种应用场合,当然复杂的场合参数的调整策略也需要进行多次尝试。

如图2所示,本发明一个实施例所述的PID系统包括实测值获取模块21,用于采样得到传感器测量值。这个实测值是被PID系统控制的对象的某一属性参量,比如电机的转速或周期等等。

PID系统还包括存储器22,用于存储目标值、上一采样周期的PID参数调整步长以及上一采样周期的PID参数;以及误差计算模块23,用于将实测值获取模块21获取的实测值与从存储器22读取的目标值相减得到误差。

PID系统还包括误差阈值及PID参数调整步长配置表24,用于配置误差阈值区间以及相应的PID参数调整步长的级别,并针对不同误差阈值区间和上一采样周期的PID参数调整步长所处的不同级别,配置本采样周期调整步长的相应级别。

例如,将误差的正值从小到大分为4个阈值区间:0区间、低值(low)区间、中值(mid)区间、以及高值(high)区间,误差的负值从小到大分为4个阈值区间:负的高值(high)区间、负的中值(mid)区间、负的低值(low)区间、以及负的0区间。

PID参数调整步长的配置遵循以下两个原则:1)根据本采样周期的误差处于高值、中值、低值还是0阈值区间,本采样周期的PID系数调整步长配置为相应级别,2)同时,本采样周期的PID系数调整步长相对于上一采样周期的调整步长要逐级改变,不能跳变。

对应于上述误差的阈值区间,将PID参数的调整步长分为四级:0、低(low)、中(mid)、以及高(high)。PID参数调整步长的具体配置的例子参照表1。

PID系统还包括本周期参数步长确定模块25,用于根据误差计算模块23计算得到的误差和从存储器22读取的上一采样周期的PID参数调整步长,查询误差阈值及PID参数调整步长配置表24,确定本采样周期PID参数调整步长;以及本周期参数计算模块26,用于将本周期参数步长确定模块25所确定的本采样周期PID参数调整步长加上从存储器22读取的上一采样周期的PID参数,得到本采样周期的PID参数。PID参数包括比例系数、积分系数、以及微分系数。

PID系统还包括PID控制值计算模块27,用于将本周期参数计算模块26得到的本采样周期的PID参数中的比例系数、积分系数以及微分系数分别乘以误差、误差以及误差的微分,并将比例系数与误差的乘积、积分系数与误差的乘积的积分、以及微分系数与误差的微分相加求和,得到PID系统的控制值;以及PID控制值输出模块28,用于输出PID控制值计算模块27计算得到的PID系统的控制值,控制脉冲宽度调制(PWM)的宽度。

根据PID控制值来控制脉冲宽度调制(PWM)的宽度,从而实现对控制对象的控制。PWM是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1