澳门太阳集团2007com网站(中国)有限公司

澳门太阳集团2007com网站【www.3ucase.cn】
资讯
工控澳门太阳集团2007com网站厂家分享:关于增量式PID公式的4点疑问和理解
来源:迈肯思科技 发布时间:2021-06-21
       

一开始见到PID计算公式时总会问“为什么是这样子的一道公式”,为了理解那几道公式,当时将其未简化前的公式活生生地算了一遍,现在想来,这样的演算过程固然有助于理解,但假如一开始就带着对疑问的答案已有一定抽象了解后再进行演算则会理解的更快!

首先推荐白志刚的《由入门到精通—吃透PID 2.0版》看完一、二章之后,建议你先通过实践练习然后再去看书里接下来的其他章节,这样你对这本书的掌握会更加高效。

PID就是对输入偏差进行比例积分微分运算,然后将运算的叠加结果去控制实行机构。实践练习中,如何把这一原理转化为程序?为什么是用那几个error进行计算?

以下是我摘录的一段PID程序,我曾用其对智能车的速度进行闭环控制:

P:Proportional  比例

I:Integrating 积分

D:Differentiation 微分

Pwm_value:输出Pwm暂空比的值

Current_error:当前偏差

last_error:上次偏差  

prev_error:上上次偏差

增量式PID计算公式:

P=Kp*(current_error﹣last_error);

D=Kd*(current_error﹣2*last_error﹢prev_error);

I=Ki*current_error;

PID_add=Pwm_value+P﹢I﹢D;

一、为什么是PID_add=Pwm_value+(P﹢I﹢D)而不是PID_add=P+I+D?

如上图,有一个人前往目的地A,他用眼睛视觉传感器目测到距离目的地还有100m,即当前与目的地的偏差为100,他向双脚输出Δ=100J的能量,跑呀跑,10s之后,他又目测了一次,此时距离为40m,即current_error=40,他与10s前的偏差last_error=10对比,即current_error - last_error=-60,这是个负数,他意识到自己已经比较接近目的地,可以不用跑那么快,于是输出Δ=100+(-60)=40J的能量,40J的能量他刚好以4m/s的速度跑呀跑,10s之后,他发现已经到达目的点,此时current_error=0,大脑经过思考得出current_error—last_error=0 - 40=-40,两脚获得的能量Δ=40+(-40)=0,即他已经达到目的地,无需再跑。在刚才的叙述中,可知增量式P+I+D输出的是一个增量,将该增量与调节量相加后所得到值才是最终输出量,其反应的是之前的输出量是在当前的状态中是该增加还是该减少。

澳门太阳集团2007com网站【www.3ucase.cn】
工控澳门太阳集团2007com网站 服务器澳门太阳集团2007com网站 工业澳门太阳集团2007com网站

澳门太阳集团2007com网站|澳门太阳集团2007com网站

XML 地图 | Sitemap 地图