首页 理论教育 基于卡尔曼滤波的PID运动控制算法实现

基于卡尔曼滤波的PID运动控制算法实现

时间:2023-10-26 理论教育 版权反馈
【摘要】:基于以上优点,面阵相机阵列PCB自动光学缺陷检测控制系统就采用的是基于卡尔曼滤波的PID算法。如图3.1所示基于卡尔曼滤波的PID恒线速度控制流程图。图3.1基于卡尔曼滤波的PID控制流程图传递函数式中K——伺服电机的放大倍数;K1——光电编码器的放大倍数。图3.2基于卡尔曼滤波Simulink仿真框图图3.3基于卡尔曼滤波的PID的MATLAB仿真

基于卡尔曼滤波的PID运动控制算法实现

当今的闭环自动控制技术都是基于反馈的概念以减少不确定性。反馈理论的要素包括三个部分:测量、比较和执行。测量关键的是被控变量的实际值,与期望值相比较,用这个偏差来纠正系统的响应,执行调节控制。在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。

PID控制器(比例-积分-微分控制器)是一个在工业控制应用中常见的反馈回路部件,由比例单元P、积分单元I和微分单元D组成。PID控制的基础是比例控制;积分控制可消除稳态误差,但可能增加超调;微分控制可加快大惯性系统响应速度以及减弱超调趋势。

工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。自动控制系统可分为开环控制系统和闭环控制系统。一个控制系统包括控制器、传感器、变送器、执行机构、输入输出接口。控制器的输出经过输出接口、执行机构,加到被控系统上;控制系统的被控量,经过传感器,变送器,通过输入接口送到控制器。不同的控制系统,其传感器、变送器、执行机构是不一样的。比如压力控制系统要采用压力传感器,电加热控制系统的传感器是温度传感器。PID控制及其控制器或智能PID控制器已经很多,产品已在工程实际中得到了广泛的应用,有各种各样的PID控制器产品,各大公司均开发了具有PID参数自整定功能的智能调节器(intelligent regulator),其中PID控制器参数的自动调整是通过智能化调整或自校正、自适应算法来实现[7]。有利用PID控制实现的压力、温度、流量、液位控制器,能实现PID控制功能的可编程控制器(PLC),还有可实现PID控制的PC系统等等。可编程控制器(PLC)是利用其闭环控制模块来实现PID控制,而可编程控制器(PLC)可以直接与ControlNet相连,还有可以实现PID控制功能的控制器,它可以直接与ControlNet相连,利用网络来实现其远程控制功能。

PID因其原理简单,易于整定,调节适用性强,适用控制场合广泛,调节性能指标对于受控对象特性变化不是很敏感[8],调节有效性有足够保证,适用便捷,因此在过程控制中,PID控制器一直是最为广泛的一种自动控制器,PID控制也一直是众多控制方法中应用最为广泛的控制算法,PID算法的计算过程与输出值有着直接的关系。在实际生产应用中,任何一个控制系统都不可避免地受到各种随机因素的干扰,由于控制系统总是存在不确定性,因此在实际控制过程中需要对检测到的信号进行滤波处理,尽可能精确地得到状态量的信息,滤波就是过滤掉噪声信号将有用的信号提取出来,卡尔曼滤波实在维纳滤波基础上提出的最有现行递推滤波方法,卡尔曼滤波根据前一刻的估计和现在的测量数据能够依据递推公式得到当前的状态估计值[9],卡尔曼滤波具有系统模型用空间状态描述和由递推公式得到最优解的特点。基于以上优点,面阵相机阵列PCB自动光学缺陷检测控制系统就采用的是基于卡尔曼滤波的PID算法。

在本控制系统中,因为驱动运动平台的伺服电机在一次流水线作业过程中做了几次等距离运动,随着运动次数的增加,PCB运动装置平台的位移误差会不断累积,即面阵相机阵列拍摄到PCB图像的区域会与理想化的图像区域出现偏差。为了得到恒定的运动位移,本控制系统采用卡尔曼滤波对检测道的线速度进行滤波,然后使用PID算法控制伺服电机的输出转速,从而控制运动装置平台的位移量[9]。如图3.1所示基于卡尔曼滤波的PID恒线速度控制流程图。控制系统中的输入值为伺服电机线速度,要求每次运动装置平台的位移量为70 mm,测速编码器安装在伺服电机内部。

图3.1 基于卡尔曼滤波的PID控制流程图

传递函数

式中 K——伺服电机的放大倍数;

K1——光电编码器的放大倍数。

令过程噪声W(k)、V(k)协方差为1,幅值为0.02的白噪声,即Q=1,R=1在MATLAB中用随机函数rand()来模拟白噪声。初始值P(0)=BQBT

仿真时取T=0.5,K=3,K1=2,τ=3。(www.xing528.com)

根据卡尔曼滤波原理,可以列出移动速度检测机构的线性随机微分

方程

首先进行卡尔曼滤波时间更新:

状态更新:

这样不断迭代就能够得到检测量的最优估计值。采用MATLAB进行卡尔曼滤波仿真(见图3.2),红色曲线代表的是含有噪声的测量反馈信号,红色是输出响应曲线。每0.1 s进行一次递推,可以从蓝色曲线看出,约在15s的时候,就已经达到了稳态值,且没有超调量,采样周期0.5 s,运动线速度设置为0.25 m/s,满足运动控制速度要求,基于PLC对PCB运动平台的卡尔曼滤波的PID控制实现位置补偿,实现精确定位和运动补偿(见图3.3),切实提高PCB缺陷检测系统的稳定性和效率,降低运动模块的开发难度和成本。由于面阵相机的测量更为直观,且可以获得更多的图像细节,降低后续自动光学缺陷检测难度。

图3.2 基于卡尔曼滤波Simulink仿真框图

图3.3 基于卡尔曼滤波的PID的MATLAB仿真

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈