电机控制——PID参数理解

1、电机控制所需要的 PID 参数

电机控制,以个人经验来看,不论是双环速度环还是三环位置环,都只需要 P 和 I 两个参数,并不需要 D。

2、P 参数

P r o p o r t i o n n . 部分;份额;比例 Proportion \quad n. \quad 部分;份额;比例 Proportionn.部分;份额;比例
比例系数 P,比例系数是个实时响应的参数,改变 P 能够马上从系统响应上体现出来。例如增大比例系数P能使系统反应灵敏,调节速度加快,并且可以减小稳态误差。但是比例系数过大会使超调量增大,震荡次数增加,调节时间加长,动态性能变坏,比例系数太大甚至会使闭环系统不稳定。

只使用比例调节,系统一定会存在静差。结合直流电机调速系统分析,随着误差的减小,控制器的输出逐渐减小,当小到一定的程度后已经无法再通过提高pid控制器的输出(电机的控制输入如电压 k p ∗ e k_p*e kpe)来提高转速从而使目标转速和实际转速间的误差继续减小了,因为总要克服阻力做工的嘛,误差为零的时候电机没有能量输入,所以当然无法克服阻力做工。因此,虽然检测到误差,但是误差太小了,导致控制器输出值也太小了,已经无力让速度继续增加至目标速度,从而达到了有差平衡。这种现象在负载变大后尤其明显,负载增加后静差也会变大。想象一下,当前 k p ∗ e k_p*e kpe能驱动当前负载,当负载增大,想要继续匀速运行,就算根据能量守恒也能推断出 e e e增大才能再次匀速。所以纯比例肯定会有静差的。

3、I 参数

I n t e g r a t i o n n . 整合;融合; ( 数 ) 积分 Integration \quad n. \quad 整合;融合;(数)积分 Integrationn.整合;融合;()积分

  • 积分控制不能单独使用,必须配合以 P 控制。
  • 增加 I 控制能够消除只使用 P 控制时产生的静差
  • 系统稳态时的控制量由积分项单独提供,此时积分项相当于一个直流偏移。之所以不能把积分项设为常数,是考虑系统要满足动态特性,即随着目标转速的改变,系统稳态时的直流偏移也跟着改变。这个合适的直流偏移是 pid 控制器自动找到的,这很自动化,甚至产生了一个学科。

积分控制是使用一个滑窗中的累计历史误差,更细粒度地调整控制器的输出。因此只要误差不为零,控制器的输出就会因为积分作用而不断变化。转速低于设定值时误差为正,积分项增大,使控制器输出逐渐增大;转速高于设定值时误差为负,积分项减小,使控制器输出逐渐减小。积分调节的“大方向”是正确的,积分项有使误差向 0 变化的作用。一直要到系统处于稳定状态,这时误差恒为零,比例部分的控制输出为零,积分部分才不再变化,并且此时积分滑窗内的值刚好等于稳态时需要的控制量,因此积分部分的作用是消除稳态误差,提高控制精度,积分作用一般是必须的。

4、电机速度控制 pid 参数调节经验

电机为大疆的 M3508,使用 JScope 查看电调反馈的 CAN 报文,报文中有编码器测得的电机转速及当前角度。

调参经验如下:
1、先调P,从过阻尼开始逐渐增大P,直到第二个震荡波峰出现超调(即第二个波峰刚好越过target一点点),记录下此时的P值备用。
2、将上一步的P值乘0.7~0.8作为当前时刻的P值,此时加入I,从一个特别小的数开始逐渐增大I,直到出现了一点超调且没有静差。
3、第2步同时伴随着积分池大小的调节,想要位置环够硬,应该增大积分池(即让积分滑窗更长),以这个趋势为依据,不断调节。
4、电机控制,用不到D。

你可能感兴趣的:(嵌入式,stm32,嵌入式面经)