PID是十分优美的控制算法,在工业控制应用地十分广泛。有的时候,无需知道系统模型的情况下,只要经验法去调整参数P、参数I、参数D,就可以到达期望的控制效果。
不过,之前一直停留在把系统当作黑盒的方式进行调试,根据系统的时间响应判断是否达到期望的效果。
以前参与无人机研发的时候,我们遇到一个问题,外部的扰动会把飞控激励起来造成机身的振动;
要解决掉的话,如果调飞控,又会对云台造成影响,最终航拍效果不太好;
我们尝试了很多工程方法,花了大量时间,都无法解决;这个项目看样子是要黄了;
后来飞控负责人和云台负责人激烈讨论,在白板上画伯德图,讲起相位裕度,幅值裕度;你的系统挪一下频谱,给我留出更多的余量;退一步海阔天空;
很神奇,后来问题就顺利解决了,项目顺利上线。
所以,我感觉有必要对部分的知识点进行复习和简单的扫盲。因为尝试从数学角度对系统性能进行分析,会涉及到,系统建模,零极点,稳定性,基本差不多还给老师了,所以这里不会太深入。
通常来说,对于上述的零点和极点的分析,前提是系统需要是LTI
系统(linear time-invariant system
);这里简单介绍一下,对于这种系统有两点:1 线性;2 时不变。
线性
对于系统,任意输入X
,最终系统输出得到Y
;
那么如果输入为K*X
,那么最终输出为K*Y
。
举例:
系统增益为100;
即输入5
可以得到输出5*100
;
那么输入5*K
,可以得到输出5*K*100
。
叠加性
如果系统输入X
可以得到输出结果f(X),如果X=a+b;
那么必须存在 f(X) = f(a) + f(b)。
时不变
系统中,输入信号X
,则得到输出信号Y
,那么一个经过了延迟T的输入信号X
,得到的输出信号也只是一个被延迟T的Y
,而不会是其他值。
也就是说,X(t-T)
的输出就是Y(t-T)
。
在数字信号处理或者控制理论中,对于输入量和输出量,可以表示为:
对于连续系统,需要进行拉普拉斯变换变换,则从时域变换到频域;
对于离散系统,则需要进行z变换。
输入,输出以及传递函数的关系,如下图所示:
零点
上述公式中,存在使得的解,即分母的解;
上述公式中,存在使得的解,即分子的解;
假设存在传递函数:
极点为 ,;
从时域角度来讲:
系统的稳定与否却决于,当,系统输出最终收敛,则认为系统是稳定的,如下图所示:
或者结论可以是这样子的:
稳定性判断:在零初始条件下,当且仅当,闭环系统的单位冲激响应为零时,系统是稳定的。
这里又引入了单位冲激响应;什么是冲激响应?
顾名思义,冲激响应,一定是一个函数,可以想象一下,感觉形状和火柴及其相似;
这画面感很强,如下图所示:
所以,在这里我们将上面的进行时间T进行离散化,如下图所示:
所以这里我们可以发现,可以通过单位冲激响应进行幅值变化和相位移动来表示;
实际上,我们根本只需要让这些信号都输入系统,前面讲到过线性时不变;
所以我们只需要让这些信号(1,2,3....n)中的任意一个信号进行归一化(单位冲激响应);
对齐到t=0时刻,再对输出乘以不同系数,延迟不同时间,就得到了所有的输出。
好像有点扯远了……
所以结论成立:在零初始条件下,当且仅当,闭环系统的单位冲激响应为零时,系统是稳定的。
从频域角度来讲:
对于高阶系统无法求时域响应的时候,这时候就需要从闭环传递函数的零极点进行分析,从而判断系统的稳定性;
通常来说:闭环系统的闭环传递函数的极点都在S平面的左半平面,则系统稳定;
这里和时域上稳定性的结论如何联系起来呢?
经过拉普拉斯反变换:
所以,闭环传递函数的极点位置在S平面的左半平面,系统稳定。
根据零极点判断系统稳定性的方法还有以下几种;
本文简单介绍了LTI系统,系统传递函数和传递函数的零极点定义,以及时域上系统稳定性和S域的稳定性之间的关联。
有点难,为了头发,暂时先到这里吧。
由于作者能力和水平有限,文中难免存在错误和纰漏,请不吝赐教。