PID --比例项P

只含有比例项的PID输出值: Out_{t}=k_{p} * Error_{t}

比例项的输出值仅取决于当前时刻的误差与历史时刻无关。当前存在误差时,比例项输出一个与误差呈正比的值,当前不存在误差时,比例项输出0 ,K_{p}越大,比例项权重越大,系统响应越快,但超调也会随之增加 纯比例项控制时,系统一般会存在稳态误差K_{p}越大,稳态误差越小。

我们根据一个常见的高中物理情景来解释一下:

目标值(Target)” 与 “实际测量值(Actual)” 的偏差(Error)是PID算法基本变量,当前我们的小车是静止的V=0,我们的目标是V = target。

t=0时刻,v = 0,Error = Target - Actual,此刻Out_{t}=k_{p} * Error_{t},我们的车开始一一定的比例系数开始发动(如果K_{p}过低,Out  < 外部阻力f,我们的汽车就发动不起来)。

图中红色是目标值Target,紫色是实际值Actual,可以看出实际值响应是很快的,在毫秒级时间就达到最大值(因为分辨率过高,导致毛刺很明显,不影响),此时我们发现,Actual最大值里我们的目标值Target还有一定距离,这就是稳态误差。

PID稳态误差:系统进入稳态时,实际值和目标值存在始终一个稳定的差值.

稳态误差产生原因:纯比例项控制时,若误差为0,则比例项结果也为0。被控对象输入0时,一般会自发地向一个方向偏移,产生误差。产生误差后,误差非0,比例项负反馈调控输出,当调控输出力度和自发偏移力度相同时,系统达到稳态.

不难理解,当汽车拥有速度后,外部阻力f就会做负功,阻碍汽车达到Target,我们可以把Out看做是一个做正功的力(发动机的牵引力)。

初态时Out是最大的,随着误差Error减小,Out也在不断减小,直到某一时刻Out = f,汽车加速度a=0,汽车运行达到稳态定值(但未达到Target)

判断是否会产生稳态误差:给被控对象输入0,判断被控对象会不会自发偏移 判断稳态误差的方向:给被控对象输入0,自发偏移方向即为稳态误差方向.(例如关闭发动机,汽车最终停止,说明汽车速度减少的自发偏移)

这是将Target设为100时不同K_{p}取值对应的图形,可以可看出,K_{p}越大,系统响应越快,但是超调也会随之增加,出现尖刺和震荡(由于Actual > Target时Error<0,可以回调Actual消除这种现象,但是在开机瞬间并不稳定)

所以只靠比例项P并不完善,稳态误差的存在使得实际值始终达不到目标值。

posted @ 2025-10-06 18:40  mc12356  阅读(55)  评论(0)    收藏  举报  来源