首页 > 技术文章 > 控制论课题

Eufisky 2018-04-03 16:38 原文

什么是卡尔曼滤波?


数据滤波是去除噪声、还原真实数据的一种数据处理技术。绝大多数滤波方法在本质上都是数据的加权平均,不同的加权方法产生了不同的滤波器。卡尔曼滤波就是采用统计方法来设计权重的。Kalman滤波在测量方差已知的情况下能够从一系列存在测量噪声的数据中,估计动态系统的状态。 由于它便于计算机编程实现, 并能够对现场采集的数据进行实时的更新和处理, Kalman滤波是目前应用最为广泛的滤波方法, 在通信、导航、制导与控制等多领域得到了较好的应用。

 

       如果将噪声看作干扰,那么“估计/消除”策略或许也是一种可选的“滤波”方法。但是,如果干扰信号中带有白噪声,这种“估计/消除”方法是缺乏理论依据的。这是由于干扰的估计往往要假设干扰的导数有界。实验取得的成功并不代表我们真正理解了隐藏在背后基本原理。信号中的白噪声是不相关的时间序列,是一个随机过程。因此假设干扰(带有白噪声)的导数有界显然没有科学依据。同时, 用连续函数来逼近随机变量也是一个不太好理解的问题。

 

        传统的滤波方法,只能是在有用信号与噪声具有不同频带的条件下才能实现。20世纪40年代,维纳和柯尔莫哥罗夫把信号和噪声的统计性质引进了滤波理论,在假设信号和噪声都是平稳过程的条件下,利用最优化方法对信号真值进行估计,达到滤波目的,从而在概念上与传统的滤波方法联系起来,被称为维纳滤波。这种方法要求信号和噪声都必须是以平稳过程为条件。60年代初,卡尔曼发表了一篇重要的论文 《A New Approach to Linear Filtering and Prediction Problems 》, 提出了一种新的线性滤波和预测理由论,被称之为卡尔曼滤波。 

     

 

卡尔曼滤波的基本思想是什么呢? 

       

       假设你有两个传感器,测的是同一个信号。可是它们每次的读数都不太一样,怎么办?答案: 取平均。

 

       再假设你知道其中贵的那个传感器应该准一些,便宜的那个应该差一些。那有比取平均更好的办法吗?答案:加权平均。

 

        怎么加权?假设两个传感器的误差都符合正态分布,假设你知道这两个正态分布的方差,用这两个方差值,(此处省略若干数学公式),你可以得到一个“最优”的权重。

 

        接下来,重点来了:假设你只有一个传感器,但是你还有一个数学模型。模型可以帮你算出一个值,但也不是那么准。怎么办?把模型算出来的值,和传感器测出的值,(就像两个传感器那样),取加权平均。

 

     最后一点说明:你的模型其实只是一个步长的,也就是说,知道x(k),我可以求x(k+1)。问题是x(k)是多少呢?答案:x(k)就是你上一步卡尔曼滤波得到的、所谓加权平均之后的那个、对x在k时刻的最佳估计值。

 

   于是迭代也有了。这就是卡尔曼滤波基本思想。


漫谈PID控制

 

在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。作为最早实用化的控制器,PID控制已有近百年历史。本次内容将简单介绍这三种控制作用.。

 

比例控制作用

比例控制作用是指控制器的输出与输入成比例关系。它的动态方程为

比例控制作用的动作规律是: 偏差  e(t)  越大, 执行机构输出位移 也越大; 偏差 e(t) 的变化速度越大, 执行机构输出位移的速度也越大。

 

比例控制作用的特点是动作快, 对干扰有及时和很强的控制作用。但由于执行机构的位移取决于被控量的偏差,  因此比例控制的结果是被控量存在着静态偏差。

下面我们用一个简单的例子来说明比例控制是如何产生静态偏差的。

考虑被控对象为一阶惯性系统

其中 u 为控制输入(也即控制器的输出),y为被控系统的输出(控制器的输入)。我们期望被控量 x 能够达到一个给定的常值 v_0. 令 e(t) 为给定值和被控量的偏差,即:

比例控制作用的动态方程为

为了消除这个静差, 通常的做法是增加积分控制作用。

 

 

 

积分控制作用

 

积分控制作用是执行机构的位移量的变化速度与偏差信号成比例的作用,它的动态方程式为

积分控制作用的动作规律是:只要对象的被控量不等于给定值,即偏差e(t)存在,那么执行机构就会不停地动作,而且偏差e(t)的数值越大,执行机构的移动速度就越大,只有e(t)=0时,即偏差消失时,执行机构才停止工作。因此,控制过程结束时,被控量一定是无差的。但是,由于积分作用是随时间而逐渐增强,与比例作用相比过于迟缓,控制不及时。因此积分控制的优点是无静态偏差,缺点是控制不及时,容易产生超调。

 

为了说明积分控制的优缺点,我们再次考虑系统(3)。

令:

上述具有比例控制作用和积分控制作用的控制器称为比例积分控制器(PI控制器)。比例作用保证控制过程的稳定性和快速性, 积分控制作用可以保证控制结果无差。因此, 比例积分控制器在工业上得到广泛的应用。

在实际生产过程中几乎不采用单纯的积分控制作用,只是把积分作用作为控制器控制作用的一个组成部分。

 

 

微分控制作用

 

微分控制作用是指执行机构的位移量与被控量的偏差的变化速度成正比,它的动态方程为

微分控制作用的特点是:它与比例和积分控制作用相比,具有起始超前和加强控制的作用。因为在控制过程刚开始时,被控量的偏差很小,但其变化速度却较大,可使执行机构产生一个较大的位移,有利于克服系统的大惯性。但是微分作用可以放大噪声干扰,影响系统稳定性,因此只有单纯的微分控制作用的控制器是不能使用的,实际微分作用是带有滤波环节的。

综上所述,比例作用可使控制过程趋于稳定,但在单独使用时,使被控量产生静态偏差;积分作用能使被控量无静态偏差,但单独使用时,会使控制过程变得振荡甚至不稳定;微分作用能有效地减小动态偏差,但不能单独使用。由于三种作用各具特点,所以目前工业上常采用比例、比例积分、比例微分、比例积分微分控制器。

 

 

用故事讲述PID

 

 

        小明接到这样一个任务:有一个水缸点漏水(而且漏水的速度还不一定固定不变),要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水。小明接到任务后就一直守在水缸旁边,时间长就觉得无聊,就跑到房里看小说了,每30分钟来检查一次水面高度。水漏得太快,每次小明来检查时,水都快漏完了,离要求的高度相差很远,小明改为每3分钟来检查一次,结果每次来水都没怎么漏,不需要加水,来得太频繁做的是无用功。几次试验后,确定每10分钟来检查一次。这个检查时间就称为采样周期开始小明用瓢加水,水龙头离水缸有十几米的距离,经常要跑好几趟才加够水,于是小明又改为用桶加,一加就是一桶,跑的次数少了,加水的速度也快了,但好几次将缸给加溢出了,不小心弄湿了几次鞋,小明又动脑筋,我不用瓢也不用桶,老子用盆,几次下来,发现刚刚好,不用跑太多次,也不会让水溢出。这个加水工具的大小就称为比例系数。小明又发现水虽然不会加过量溢出了,有时会高过要求位置比较多,还是有打湿鞋的危险。他又想了个办法,在水缸上装一个漏斗,每次加水不直接倒进水缸,而是倒进漏斗让它慢慢加。这样溢出的问题解决了,但加水的速度又慢了,有时还赶不上漏水的速度。于是他试着变换不同大小口径的漏斗来控制加水的速度,最后终于找到了满意的漏斗。漏斗的时间就称为积分时间小明终于喘了一口,但任务的要求突然严了,水位控制的及时性要求大大提高,一旦水位过低,必须立即将水加到要求位置,而且不能高出太多,否则不给工钱。小明又为难了!于是他又开努脑筋,终于让它想到一个办法,常放一盆备用水在旁边,一发现水位低了,不经过漏斗就是一盆水下去,这样及时性是保证了,但水位有时会高多了。他又在要求水面位置上面一点将水凿一孔,再接一根管子到下面的备用桶里这样多出的水会从上面的孔里漏出来。这个水漏出的快慢就称为微分时间。入门级的故事,比喻可能有点牵强,能帮助新手理解下PID即可。故事中小明的试验是一步步独立做,但实际加水工具、漏斗口径、溢水孔的大小同时都会影响加水的速度,水位超调量的大小,做了后面的实验后,往往还要修改改前面实验的结果。

 

〖★考虑控制模型★〗  

 人以PID控制的方式用水壶往水杯里倒印有刻度的半杯水后停下;

设定值:水杯的半杯刻度;

实际值:水杯的实际水量;

输出值:水壶的倒处数量和水杯舀出水量;

测量传感器:人的眼睛;

执行对象:人;

正执行:倒水;

反执行:舀水。

 

1、P 比例控制,就是人看到水杯里水量没有达到水杯的半杯刻度,就按照一定水量从水壶里王水杯里倒水或者水

杯的水量多过刻度,就以一定水量从水杯里舀水出来,这个一个动作可能会造成不到半杯或者多了半杯就停下来。

 

2、I 积分控制,就是按照一定水量往水杯里倒,如果发现杯里的水量没有刻度就一直倒,后来发现水量超过了半

杯,就从杯里往外面舀水,然后反复不够就倒水,多了就舀水,直到水量达到刻度。

 

3、D 微分控制,就是人的眼睛看着杯里水量和刻度的距离,当差距很大的时候,就用水壶大水量得倒水,当人看到水量快要接近刻度的时候,就减少水壶的得出水量,慢慢的逼近刻度,直到停留在杯中的刻度。如果最后能精确停在刻度的位置,就是无静差控制;如果停在刻度附近,就是有静差控制。

 


PID 控制浅谈

编者按:

不论现代控制理论如何漂亮, 都无法撼动 PID 控制在工业过程控制中占主导地位。控制方法的好坏在于易行和有效,而不在于数学知识的高深。然而控制方法成熟的标准却是数学化。如何用数学解释 PID 控制的强大威力是一个极其有趣的问题。

 

在控制领域, 反馈是处理系统不确定的有效手段. 反馈理论的要素包括三个部分:测量、比较和执行。测量关键的是被控变量的实际值与期望值相比较,用这个偏差来纠正系统的响应,执行调节控制。在工程实际中,应用最为广泛的反馈控制规律为比例、积分、微分控制简称 PID 控制. PID 控制器问世至今已有约 100 年历史,它结构简单、稳定性好、工作可靠、调整方便, 至今仍然是工业控制的主要技术。不论现代控制理论如何漂亮, 都无法撼动 PID 控制在工业过程控制中占主导地位。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用 PID 控制技术最为方便。

 

我们通过如下二阶系统来分别说明 P、I、D 三种控制方法的性能:

这一系统可以写成抽象形式:

关于 PID 控制的性能,已经有很多基于工程实践的经验总结。这些总结对实际应用有一定的指导意义,形成了一套完整的参数镇定方法。然而这些总结大多是定性的描述,还需要严格的数学说明。下面我们从数学的角度来分析二阶系统 P、I、D 三种控制作用的优缺点,以便加深对它们的理解。

比例控制作用

微分控制作用

所以微分控制 u_d 也不能消除被控量的稳态误差。另一方面,由于微分作用可以放大高频干扰,影响系统稳定性,因此单独的微分控制器是不能使用的。另外实际中的微分作用通常是带有滤波环节的。

 积分控制作用

其中 j 是虚数单位。积分控制之所以能够消除稳态误差是因为稳定谱点 λ_1 。但是由于两个不稳定谱点 λ_2 ,λ_3 的存在,积分控制不能单独使用,需要其它控制作用来抑制积分控制的这一缺点。实际使用中积分的调节参数 k_i 不能太大,否则积分控制的这两个不稳定谱点会产生超调。

 

综上所述,对于二阶控制系统来说,单独使用 P、I、D 的任意一种控制都不能达到需要的控制效果。比例作用可使控制过程趋于稳定,但在单独使用时,被控量会产生稳态偏差;积分作用能使被控量无静态偏差,但单独使用时,会使
控制过程变得振荡甚至不稳定;微分作用能克服系统的大惯性,但被控量也会
产生稳态偏差。此外微分还有放大高频干扰的作用,因此也不能单独使用。由
于三种作用各具特点,所以目前工业上常采用 P、I、D 的组合来设计控制器。

 

注记: 通过 (2.9) 可以看出:k p , k i 和 k d 对系统谱点的影响是非线性的。因此,P、I、D 三种作用是互相渗透、甚至是彼此矛盾的。这一点和实际应用是相吻合的,PID 的参数调节经常会出现顾此失彼,出现按下葫芦又起瓢的情况。从数学上看,系统的谱点决定了系统的性能。所以 PID 参数设置的奥妙应该隐藏在非线性方程组 (2.9) 中。因此,我们有可能利用非线性方程组 (2.9) 将 PID 的参数设置精确化,从而使 PID 参数调节简单易行。由于 P、I、D 的相互作用,本文独立地分析它们的性能未必是合理的。尽管如此,我们仍然能从中感觉到 P、I、D 三种作用的大致特点。

推荐阅读