什么是串级PID?
什么是串级PID?顾名思义就是两个串起来的PID,下面是一个双闭环的例子,外环是位置环,内环是速度环,最终的执行器是电机,电机输出产生了速度和位置;具体框图如下图所示;
当然执行器也可以是四轴飞行器,整体过程如下:
我们在外环给定相应的位置高度,外环PID的输出就是内环PID的期望值;
内环PID的输出将产生相应的油门大小,最终飞行器会产生上升的速度;
内环反馈值为速度,控制相应的速度达到外环所需的速度期望值;
最终外环达到期望的位置;
可能这里比较抽象,好吧,下面继续细化一下硬件的细节;
PID的算法控制其实是一种无系统模型的控制,可以根据参数经验经验去调试系统;
但是实际的物理对象的模型其实早就确定好了,PID的输入量和输出量的物理意义也会因为实际的被控对象而改变;
换句话说,PID的输入基本上和系统的反馈量相关,而实际的反馈量是什么,从一开始就因为系统而确定下来了;
内环和外环
如果外环是因,那内环就是果。万物皆有因果。
比如伺服控制器的三环:
位置环
速度环
电流环
外环的变化会直接导致内环的变化,而内环是直接导致执行器变化的关键,如果这里依然使用飞行器作为例子,对于整个四轴飞行系统而言;
我们通过控制电机的电流,从而决定电机的输出扭矩;
扭矩和负载一起决定电机转速;
螺旋桨快速旋转从而产生了飞行器的升力,于是也决定了上升的速度;
最终也导致了飞行器的位置变化;
这是整个的控制过程。
如果只用单环的PID去控制系统,可以在给定系统期望的情况下达到所需要的位置吗?
答案是可以。
那这样串级PID还有什么意义吗?
答案是有