首页> 中国专利> 视觉伺服机器人中的多模型自适应控制方法

视觉伺服机器人中的多模型自适应控制方法

摘要

本发明提供了一种视觉伺服机器人中的多模型自适应控制方法,其中包括如下步骤:取每个所述模型子集中的中心点值,将其应用到误差模型中,得到第一系统辨识误差;对每个模型子集的目标位置参数进行估计,得到估计值,将其应用误差模型中,得到第二系统辨识误差;比较所述第一系统辨识误差与第二系统辨识误差,从而判断目标位置参数是否发生跳变;若判断结果为没有发生跳变,则混合控制器采用混合策略对被控对象进行控制;若发生跳变,则把相应的估计值重构为所述模型子集的中心点值,用所述模型子集对应的子控制器进行控制。

著录项

  • 公开/公告号CN104216403A

    专利类型发明专利

  • 公开/公告日2014-12-17

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201410409289.2

  • 发明设计人 王昕;曹叙风;

    申请日2014-08-19

  • 分类号G05D1/00(20060101);

  • 代理机构31236 上海汉声知识产权代理有限公司;

  • 代理人胡晶

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2023-12-17 02:55:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-08-07

    未缴年费专利权终止 IPC(主分类):G05D1/00 授权公告日:20170609 终止日期:20190819 申请日:20140819

    专利权的终止

  • 2017-06-09

    授权

    授权

  • 2015-01-07

    实质审查的生效 IPC(主分类):G05D1/00 申请日:20140819

    实质审查的生效

  • 2014-12-17

    公开

    公开

说明书

技术领域

本发明涉及自动控制领域,尤其涉及一种视觉伺服机器人中的多模型自适应控制方法。

背景技术

在实际工业过程中,不同生产条件下,模型结构或参数往往不同。这种情况下,单一模型的自适应控制器的效果并不理想,可能导致较大的暂态误差。多模型自适应控制是解决复杂系统控制问题的有力工具,比较有效地改善系统的过渡过程。

基于切换的多模型自适应控制器,能快速地响应模型的突变,但子控制器间切换时暂态响应不好,且系统控制存在滞后时,有可能会导致子控制器间频繁切换,引发系统震荡。基于混合的多模型自适应控制器避免了子控制器间切换的发生,且在子模型集交集内,混合控制器比单个子控制器的控制效果更好。混合控制器适用于参数时不变或缓慢变化的被控对象,但在工业过程中,一些偶然事件,如环境变化,外界干扰等,将使被控对象的模型参数发生很大的变化,使得混合控制器不能及时响应,会造成较大的误差。

具体到视觉伺服机器人领域,视觉伺服机器人在跟踪机动目标的过程中,首先要在图像序中找到目标的确切位置。如果每次都在整个图像范围内对目标进行搜索,必然会增大系统的计算量,影响系统的实时性.—个有效的解决方法就是滤波。即根据之前获得的目标位置和运动信息,对目标的运动进行可靠预测,在相对较小的区域内完成对目标的搜索,但因为很难建立一个精确的机动目标模型,所以对机动目标的预测比较困难。虽然学者提出了基于切换或混合的多模型去逼近机动目标模型,取得了不错的控制效果。但基于切换的多模型机构容易引发系统震荡,瞬态效果差。基于混合的多模型机构不能及时响应系统参数跳变,控制效果不理想。

发明内容

本发明要解决的技术问题是如何避免在视觉伺服机器人中基于混合的多模型机构不能及时响应系统参数跳变的问题。

为了解决这与一技术问题,本发明提供了一种视觉伺服机器人中的多模型自适应控制方法,包括如下步骤:

S100:依据之前已获得的机动目标的位置和运动信息,建立有关目标位置参数的系统参数模型集,将该系统参数模型集划分成若干个相互之间有并集的模型子集;

S200:为每个所述模型子集设计一个对应的子控制器;

S300:建立一个误差模型;

S400:取每个所述模型子集中的中心点值,将其应用到步骤S300得到的误差模型中,得到第一系统辨识误差;

对视觉伺服机器人运动模型的目标位置参数进行估计,得到估计值,将步骤S300得到的误差模型应用到该估计值中,得到第二系统辨识误差;

S500:比较所述第一系统辨识误差与第二系统辨识误差,从而判断目标位置参数是否发生跳变;若判断结果为没有发生跳变,则采用混合控制器对所有所述子控制器进行混合控制;若发生跳变,则把相应的估计值重构为所述模型子集的中心点值,用所述模型子集对应的子控制器进行控制。

在所述步骤S400中,还包括采用具有约束投影算法的自适应算法对目标位置参数进行更新的过程。

所述步骤S100中,被控系统被描述为:

y(t)=G(s;θ*)u(t)+d(t)   (1)

G(s;θ*)=G0(s;θ*)(1+△m(s))   (2)

>G0(s;θ*)=N0(s)D0(s)=θb*Tαn-1(s)sn+θα*Tαn-1(s)---(3)>

ym(t)=y(t)+v(t)   (4)

式中,u(t),y(t)表示被控对象的输入和输出,d(t)是有界的干扰,满足G(s;θ*)为实际被控对象;G0(s;θ*)为被控对象的模型描述;△m(s)表示未建模动态特性;矢量表示G0(s;θ*)的未知参数;an-1(s)=[sn-1,sn-2,…s,1]T;ym(t)为y(t)的测量值;v(t)表示有界的传感器噪音,满足

其中:

A1:D0(s)是首项系数为1的多项式,并且阶次n是已知的;

A2:N0的阶次小于n.

A3:△m(s)是正则的,Re[s]≥-δ0/2,δ0是已知的常量。

A4:θ*∈Ω,Ω∈R2n是已知的参数模型集

系统参数模型集划分成n个相互之间有并集的模型子集Ωi(i=1,2…n.).并且Ωi满足:

1)非空,i=1,2…n.;

2)>θ*Ωi,i=1,2...n,θ*iΩi>和>0ri,>满足>||θ*-θ*i||ri,θ*i>为模型子集Ωi的中心,为半径;

3)Ωi∩Ωi+1=δ,i=1,2…n,δ为常量。

所述步骤S200包括如下步骤:

2.1设计混合信号

当参数估计值θ(t)∈Ωi(i=1,2,…n;)时,Ωi为活跃的参数子集,表示为活跃参数子集的集合,定义β(θ*)=[β1*)…βi*)]T为混合控制信号,决定各子控制器的参与程度,它具有如下的性质:

B1:β1*)+β2*)+…βi*)=1;β1*),β2*),…βi*)≥0;当时,

βi*)=0;i=1,2,…n;

B2:β(θ*)是连续可微的函数。

2.2控制器设计

混合控制器描述为以下表达式:

>x·c=Ac[β(θ*),θ*]xc+BC[β(θ*),θ*]ym(t)u(t)=-CC[β(θ*),θ*]xc---(5)>

式中,xC∈Rn是控制器的状态变量,对每一个固定值β(θ*)和θ*:u(t)=K[s;β(θ*),θ*]ym(t)有如下传递函数:

>K[s;β(θ*),θ*]=Cc[β(θ*),θ*]{sI-AC[β(θ*),θ*]}-1×BC[β(θ*),θ*]>

>=Nk(s;b,q)Dk(s;b,q)---(6)>

其中:

C1:AC[β(θ*),θ*],BC[β(θ*),θ*]和CC[β(θ*),θ*]是关于β(θ*),θ*连续可微的函数。C2:K[s;ei,θ(t)]=Ki(s),其中θ(t)∈Ωi,ei∈RP是第i个标准基础矢量。

C3:对所有θ*∈Ω,K[s;β(θ*),θ*]都能使被控对象保持稳定。

进一步对子控制器ki(s)进行稳定的互质分解:定义如下公式:

>Qi(s;θ*)=[Y~(s;θ*)Vi(s)-X~(s;θ*)Ui(s)]×[N~0(s;θ*)Ui(s)+G~0(s;θ*)Vi(s)]-1Ui(s;θ*)=D0(s;θ*)Qi(s;θ*)-Y(s;θ*)Vi(s;θ*)=N0(s;θ*)Qi(s;θ*)-X(s;θ*)---(7)>

式中,>G0(s;θ*)=N0(s;θ*)D0-1(s;θ*)=M~-1(s;θ*)N~(s;θ*)>是基于θ*变化而平稳变化的传递函数。X(s;θ*),也是基于θ*变化而平稳变化的函数。有如下等式:

>1010=X~Y~-N~0D~0D0-YN0X=D0-YN0XX~Y~-N~0D~0---(8)>

得到控制律的表达式为:

>K[s;β(θ*),θ*]=U[s;β(θ*),θ*]V-1[s;β(θ*),θ*]U[s;β(θ*),θ*]=Σi=1nβi(θ*)Ui(s;θ*)V(s)=Σi=1nβi(θ*)Vi(s;θ*)---(9)>

步骤S300中的误差模型通过以下过程得到:

线性参数模型可表示为:z=θ*Tφ,其中:

z=snF(s)ym(t)   (10)

>φ=[αn-1T(s)F(s)u-αn-1T(s)F(s)ym]T---(11)>

>F(s)=λn(s+λ)nFη(s)Fη(s)=NF(s)DF(s)---(12)>

式中,λ是大于零的常数,Fη(s)表示最小相位的滤波器。当我们用参数估计值θ(t)代替参数真实值θ*会产生误差e(t),我们定义一个误差模型,它的输入为u(t)和y(t)输出为e(t),可用下面的状态空间表达式来描述:

>x=AEx+BEu(t)+GEym(t);z=Czx+DZym(t),z^=θ(t)Tφ,φ=CEx;---(13)e(t)=(CZ-θ*TCE)x+DZym(t)>

式中x为误差的状态向量。

由于实际被控过程G(s;θ*)存在未建模动态特性,△m(s),干扰d(t),以及传感器噪音v(t),则

z=θ*Tφ+η,

其中:

η=N0(s)△m(s)F(s)u(t)+D0(s)F(s)(d(t)+v(t))

我们称η为建模的误差项,当我们计算未知参数的估计值时,η会带来干扰。从η的表达式,我们可以看出,通过对滤波器F(s)进行合理的设计,可以减轻这种干扰,降低△m(s),干扰d(t),以及传感器噪音v(t)带来的影响。

所述具有约束投影算法的自适应算法如下:

>θ(t)=Pr{θ(t-1)+γe(t-1)φ(t-1)c+φT(t-1)φ(t-1)}---(14)>

式中,γ为自适应增益,c为常量,Pr{·}为投影算子,将θ(t)约束在参数模型集Ω中。

步骤S500包括如下步骤:

已知为各个模型子集的中心,当参数估计值控制器K(s)=Ki(s),把带入式(13)中,可得到误差ei(t),(i=1,2…n)。

δ>0,i=1,2…n;则有:

Jmin=jq,q=1,2…n.   (15)根据参数估计值θ(t)得到的

>J(θ)=||e(t)||2δ2,δ>0---(16)>

如果

(1+h)J(θ)>Jmin   (17)

式中,h为系统延迟时间,此时我们认为参数发生了跳变,并且跳变到子集Ωq中,所以直接对参数估计值进行重构:

θ(t)=θ*q,q=1,2,…n.(18)

从而实现了采用对应的子控制器进行控制。

本发明通过判断确认是否发生突变,进而在两种控制方式间变换,可混合控制与可切换对应的子控制器进行控制。与现有多模型混合控制和多模型切换控制技术相比,本发明同时具有两者的优点,避免了各自的缺陷。系统在大多数时候,采用混合控制。但当系统参数发生突变时,通过对参数估计值进行重构,快速切换到对应子控制器,及时响应参数变化。

附图说明

图1(a),图1(b)为系统采用多模型自适应混合控制的过程中系统的实际输入输出曲线;

图2(a),图2(b)为本发明一实施例中采用了基于切换和混合的多模型自适应控制过程中系统的实际输入输出曲线;

图3是本发明一实施例中视觉伺服机器人中的多模型自适应控制方法的流程示意图。

具体实施方式

本发明提供了一种视觉伺服机器人中的多模型自适应控制方法,包括如下步骤:

S100:依据之前已获得的机动目标的位置和运动信息,建立有关目标位置参数的系统参数模型集,将该系统参数模型集划分成若干个相互之间有并集的模型子集;

S200:为每个所述模型子集设计一个对应的子控制器;

S300:建立一个误差模型;

S400:取每个所述模型子集中的中心点值,将其应用到步骤S300得到的误差模型中,得到第一系统辨识误差;

对视觉伺服机器人运动模型的目标位置参数进行估计,得到估计值,将步骤S300得到的误差模型应用到该估计值中,得到第二系统辨识误差;

S500:比较所述第一系统辨识误差与第二系统辨识误差,从而判断目标位置参数是否发生跳变;若判断结果为没有发生跳变,则采用混合控制器对所有所述子控制器进行混合控制,即混合控制器采用混合策略对被控对象进行控制;若发生跳变,则把相应的估计值重构为所述模型子集的中心点值,用所述模型子集对应的子控制器进行控制。

在所述步骤S400中,还包括采用具有约束投影算法的自适应算法对目标位置参数进行更新的过程。

本实施例采用的方法构思为:首先利用各模型子集的中心点值代替未知参数值得到最小误差,并与当前参数估计值得到的误差进行比较,判断参数是否发生跳变。若参数没有发生跳变,采用混合控制;若参数发生跳变,则把参数估计值重构为子集的中心点值,控制器就切换到对应的子控制器,及时响应参数变化。

本方法所采用的技术方案包括以下步骤:

1:根据先验知识将系统参数模型集划分成n个相互之间有并集的模型子集。

2:每个模型子集设计一个对应的鲁棒自适应控制器,基于参数估计值的混合控制信号决定了各子控制器的参与程度。

3:建立一个参数误差模型,得到系统的辨识误差,然后采用具有约束投影算法的自适应算法对参数进行更新。

4:把基于参数估计值得到的系统辨识误差和基于模型子集中心值得到的系统辨识误差进行比较来判断参数是否发生跳变,从而决定控制选择混合还是切换控制策略。

下面对本发明技术方案步骤做具体的说明:

步骤1:建立多模型集。

被控系统描述

考虑如下连续线性系统:

y(t)=G(s;θ*)u(t)+d(t)   (1)

G(s;θ*)=G0(s;θ*)(1+△m(s))   (2)

>G0(s;θ*)=N0(s)D0(s)=θb*Tαn-1(s)sn+θα*Tαn-1(s)---(3)>

ym(t)=y(t)+v(t)   (4)

式中,u(t),y(t)表示被控对象的输入和输出,d(t)是有界的干扰,满足G(s;θ*)为实际被控对象;G0(s;θ*)为被控对象的模型描述;△m(s)表示未建模动态特性;矢量表示G0(s;θ*)的未知参数;an-1(s)=[sn-1,sn-2,…s,1]T;ym(t)为y(t)的测量值;v(t)表示有界的传感器噪音,满足控制目标是选择被控对象的输入u(t)使输出y(t)趋向于0,为此,我们对系统作如下假设:

A1 D0(s)是首项系数为1的多项式,并且阶次n是已知的。

A2 N0的阶次小于n.

A3△m(s)是正则的,Re[s]≥-δ0/2,δ0是已知的常量。

A4θ*∈Ω,Ω∈R2n是已知的参数模型集。

根据先验知识将系统参数模型集划分成n个模型子集Ωi(i=1,2…n.).并且Ωi满足:

(1)非空,i=1,2…n.

(2)>θ*Ωi,i=1,2...n,θ*iΩi>和>0ri,>满足>||θ*-θ*i||ri,θ*i>为模型子集Ωi的中心,为半径。

(3)Ωi∩Ωi+1=δ,i=1,2…n,δ为常量。

步骤2:设计混合信号和鲁棒自适应控制器。

2.1设计混合信号

当参数估计值θ(t)∈Ωi(i=1,2,…n;)时,我们称Ωi为活跃的参数子集,表示为活跃参数子集的集合,定义β(θ*)=[β1*)…βi*)]T为混合控制信号,决定各子控制器的参与程度,它具有如下的性质:

B1:β1*)+β2*)+…βi*)=1;β1*),β2*),…βi*)≥0;当时,βi*)=0;i=1,2,in;

B2:β(θ*)是连续可微的函数。

2.2控制器设计

混合控制器可用以下表达式描述:

>x·c=Ac[β(θ*),θ*]xc+BC[β(θ*),θ*]ym(t)u(t)=-CC[β(θ*),θ*]xc---(5)>

式中,xC∈Rn是控制器的状态变量,对每一个固定值β(θ*)和θ*:u(t)=K[s;β(θ*),θ*]ym(t)有如下传递函数:

>K[s;β(θ*),θ*]=Cc[β(θ*),θ*]{sI-AC[β(θ*),θ*]}-1×BC[β(θ*),θ*]=NK(s;b,q)DK(s;b,q)---(6)>

并作如下假设:

C1:AC[β(θ*),θ*],BC[β(θ*),θ*]和CC[β(θ*),θ*]是关于β(θ*),θ*连续可微的函数。

C2:K[s;ei,θ(t)]=Ki(s),其中θ(t)∈Ωi,ei∈RP是第i个标准基础矢量。

C3:对所有θ*∈Ω,K[s;β(θ*),θ*]都能使被控对象保持稳定。

我们可以进一步对子控制器ki(s)进行稳定的互质分解:定义如下公式:

>Qi(s;θ*)=[Y~(s;θ*)Vi(s)-X~(s;θ*)Ui(s)]×[N~0(s;θ*)Ui(s)+G~0(s;θ*)Vi(s)]-1Ui(s;θ*)=D0(s;θ*)Qi(s;θ*)-Y(s;θ*)Vi(s;θ*)=N0(s;θ*)Qi(s;θ*)-X(s;θ*)---(7)>

式中,>G0(s;θ*)=N0(s;θ*)D0-1(s;θ*)=M~-1(s;θ*)N~(s;θ*)>是基于θ*变化而平稳变化的传递函数。X(s;θ*),也是基于θ*变化而平稳变化的函数。有如下等式:

>1010=X~Y~-N~0D~0D0-YN0X=D0-YN0XX~Y~-N~0D~0---(8)>

这样我们可以得到控制律的表达式为:

>K[s;β(θ*),θ*]=U[s;β(θ*),θ*]V-1[s;β(θ*),θ*]U[s;β(θ*),θ*]=Σi=1nβi(θ*)Ui(s;θ*)V(s)=Σi=1nβi(θ*)Vi(s;θ*)---(9)>

步骤3:建立误差模型、设计自适应律,根据被控过程的输入输出,在线计算出参数的估计值。

3.1误差模型

系统(3)的线性参数模型可表示为:z=θ*Tφ,其中:

z=snF(s)ym(t)   (10)

>φ=[αn-1T(s)F(s)u-αn-1T(s)F(s)ym]T---(11)>

>F(s)=λn(s+λ)nFη(s)Fη(s)=NF(s)DF(s)---(12)>

式中,λ是大于零的常数,Fη(s)表示最小相位的滤波器。当我们用参数估计值θ(t)代替参数真实值θ*会产生误差e(t),我们定义一个误差模型,它的输入为u(t)和y(t)输出为e(t),可用下面的状态空间表达式来描述:

>x=AEx+BEu(t)+GEym(t);z=Czx+DZym(t),z^=θ(t)Tφ,φ=CEx;---(13)e(t)=(CZ-θ*TCE)x+DZym(t)>

式中x为误差的状态向量。

由于实际被控过程G(s;θ*)存在未建模动态特性,△m(s),干扰d(t),以及传感器噪音v(t),则

z=θ*Tφ+η,

其中:

η=N0(s)△m(s)F(s)u(t)+D0(s)F(s)(d(t)+v(t))

我们称η为建模的误差项,当我们计算未知参数的估计值时,η会带来干扰。从η的表达式,我们可以看出,通过对滤波器F(s)进行合理的设计,可以减轻这种干扰,降低△m(s),干扰d(t),以及传感器噪音v(t)带来的影响。

3.2自适应算法

采用如下具有约束投影算法的自适应算法:

>θ(t)=Pr{θ(t-1)+γe(t-1)φ(t-1)c+φT(t-1)φ(t-1)}---(14)>

式中,γ为自适应增益,c为常量,Pr{·}为投影算子,将θ(t)约束在参数模型集Ω中。

步骤4:建立一个判断准则来判断参数是否发生跳变,从而决定控制器是采用混合还是切换的控制策略。

已知为各个模型子集的中心,当参数估计值控制器K(s)=Ki(s),把带入式(13)中,可得到误差ei(t),(i=1,2…n)。

δ>0,i=1,2…n;则有:

Jmin=jq,q=1,2…n.   (15)根据参数估计值θ(t)得到的

>J(θ)=||e(t)||2δ2,δ>0---(16)>

如果

(1+h)J(θ)>Jmin   (17)

式中,h为系统延迟时间,此时我们认为参数发生了跳变,并且跳变到子集Ωq中,所以直接对参数估计值进行重构:

θ(t)=θ*q,q=1,2,…n.   (18)这样控制器就会直接切换到对应的子控制器,避免了混合控制器参数缓慢变化跟踪真实参数值,及时采取控制。

与现有多模型混合控制和多模型切换控制技术相比,本发明同时具有两者的优点,避免了各自的缺陷。系统在大多数时候,采用混合控制。但当系统参数发生突变时,通过对参数估计值进行重构,快速切换到对应子控制器,及时响应参数变化。

具体到本实施例中,机动目标的跟踪系统可描述为:

>y=1s-θ[1+Δm(s)](u+d)>

系统的目标位置参数>θ=2.3;0k<40;-2;40k100;>θ∈[-2.5,2.5],未建模动态特性d=0;在K=40时,θ从2.3跳变到-2.根据本专利所提出的方法,我们首先在θ的变化范围建立多模型集,Ω1=[0.5,2.5],Ω2=[-1,1],Ω3=[-2.5,-0.5],逼近机动目标的跟踪系统,设计滤波器γ=100,则根据式子(13),(15)我们可辨识出位置参数的估计值θ*,并基于参数θ*设计混合信号

>β1=ψ(θ*-1.751.25),β2=ψ(θ*),β3=ψ(θ*+1.751.25)>

从对比中我们可以看到,当参数没发生跳变时,本文的方法和混合控制具有一样的控制效果,但当k=40,系统参数发生跳变时,本文方法下的控制效果要好于混合控制。这是因为当参数从子集Ω1跳变到子集Ω3中,由于混合控制器缓慢变化的特点,参数估计值要先经过子集Ω2,然后才进入子集Ω3跟踪参数真实值。然而采用本文所提出的方法,当判断出参数跳变到子集Ω3中时,参数估计值会直接重构为Ω3的中心值1.5,这样控制器就会切换到Ω3对应的子控制器,及时响应参数的跳变。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号