本公开涉及机器人及其控制领域,尤其涉及一种基于观测器的多移动机器人自适应编队跟踪控制方法。
背景技术:
多机器人系统相较于单机器人具有更高效、更灵活、更好的鲁棒性等优势,多机器人编队是单机器人系统中的经典问题。多机器人编队控制主要是指多机器人在群体运动时能够克服环境障碍执行作业任务并保持着期望的几何队形,同时编队群体能够沿着一定轨迹或者路径运动。多机器人编队控制在军事、娱乐、生产等领域中有广泛的应用,比如联合侦查、合作搬运、协作救援、环境监测等民用及军事领域。编队控制方法通常包括基于行为的控制方法、基于领航者-跟随者的控制方法及基于虚拟结构的控制方法等。基于行为的控制方法是一种分布式的方法,主要是通过对机器人基本行为的控制和对局部控制规则的设计使得机器人群体产生所需要的整体行为;基于虚拟结构的方法是一种集中式的控制方法,机器人间形成一定的几何结构,该结构是一个刚性结构;基于领航者-跟随者的方法需要一个机器人作为领航者,跟随者以一定的间隔跟随领航者的位置与方向。多机器人系统的控制相对单机器人系统来说要更复杂,集中式的控制方法具有很大的局限性,不适用与机器人数目较多的情况。
多机器人编队分布式控制算法大多是在机器人状态完全可测的情况下,基于完全可测的状态信息,设计相应的编队控制算法;并且需要使用到通信拓扑图或拉普拉斯矩阵特征值这一全局信息,基于完全可测的状态信息,设计相应的编队控制算法。
目前已有的多机器人系统的控制相对单机器人系统来说要更复杂,集中式的控制方法具有很大的局限性,不适用于机器人数目较多的情况;当机器人的数目较多时,相应数据的计算量就变得很庞大,从而使得数据处理变得复杂。
公开内容
(一)要解决的技术问题
基于上述问题,本公开提供了一种基于观测器的多移动机器人自适应编队跟踪控制方法,以缓解现有技术中多机器人系统运行中可能受某些物理条件限制,机器人系统状态信息不完全可测,以及领航机器人控制输入信息未知的情况,现有的集中式的控制方法具有很大的局限性,不适用于机器人数目较多的情况,还有相应数据的计算量庞大,从而使得数据处理变得复杂等技术问题。
(二)技术方案
本公开提供一种基于观测器的多移动机器人自适应编队跟踪控制方法,用于控制机器人系统中的多个移动机器人完全分布式自适应编队,所述基于观测器的多移动机器人自适应编队跟踪控制方法,包括:步骤a:创建移动机器人的动力学方程模型;步骤b:创建机器人的系统观测器模型;步骤c:设定要实现的多移动机器人编队向量;步骤d:确定多移动机器人编队控制的控制器;以及步骤e:用步骤d所确定的控制器实现多移动机器人自适应编队跟踪控制。
在本公开实施例中,步骤a中,包含q个同构移动机器人的多移动机器人系统中,其中q≥3,每个机器人的动力学方程描述如下:
其中,pi是机器人i在惯性坐标系下的位置,vi是机器人i的速度,ui是机器人i的控制输入,下标i的范围中1-n所代表的是编队跟随机器人,下标i为0,代表的编队的领航者,通过对领航者行为的设定来控制整个编队的行为。
在本公开实施例中,所述领航者为实际的机器人或存储了编队整体行为信息的虚拟机器人,用于向跟随机器人提供它的位置信息;每个机器人i可以获得自身的输出信息yi(t),也就是自身在惯性坐标系下的位置信息。
在本公开实施例中,步骤b中根据步骤a中所描述的机器人动力学方程模型,创建整个机器人系统的数学模型,为:
其中a为系统矩阵,b为控制矩阵,c为输出矩阵,
在本公开实施例中,所述步骤c中机器人编队向量即为机器人i相对于领航者的期望偏移,记为
其中,hi(t)表示的是机器人i相对于领航者的期望偏移,hpi(t)为相对于领航者的位置偏移,hvi(t)为机器人相对于领航者的速度偏差,满足
在本公开实施例中,所述步骤d制作多移动机器人编队控制的控制器,包括:步骤d1:求解正定矩阵p;步骤d2:求解观测器增益矩阵f;步骤d3:定义时变耦合增益τi(t);以及步骤d4:定义自适应参数γi(t),确定用于编队控制的控制器。
在本公开实施例中,所述步骤d1中,正定矩阵p满足如公式(3)所示的矩阵不等式:atp+pa-pbbtp+i<0(3),a为系统矩阵,b为控制矩阵;所述步骤d2中,所述矩阵f使得a-fc是hurwitz矩阵,即使得a-fc的特征值都具有负实部。
在本公开实施例中,所述步骤d3中时变耦合增益τi(t)由如下公式(4)求得:
其中αi>0,
在本公开实施例中,步骤d4中令
标量函数gi(t)>0并且gi(t)∈l1空间;则自适应参数γi(t):
得到用于编队控制的控制器:
在本公开实施例中,所述步骤e中,对于满足
(三)有益效果
从上述技术方案可以看出,本公开一种基于观测器的多移动机器人自适应编队跟踪控制方法至少具有以下有益效果其中之一或其中一部分:
(1)只需要知道机器人的部分状态信息,无需拉普拉斯矩阵特征值信息等,减少信息需求量,同时也无需知道领航机器人的速度信息;
(2)不依赖任何全局信息,如拉普拉斯矩阵特征值,是一种完全分布式的控制算法。
(3)利用系统的输出信息,可以不必完全知道系统状态,克服了实际应用中某些物理条件带来的限制,具有很好的应用价值。
(4)编队控制器能够较好地消除队形误差,使得编队控制系统具有良好的队形能力。
附图说明
图1是本公开实施例基于观测器的多移动机器人自适应编队跟踪控制方法的流程示意图。
图2是本公开实施例1机器人三角形编队位置轨迹的示意图。
图3是本公开实施例1机器人编队误差的示意图。
图4是本公开实施例1三角形编队中机器人对领航者输入上界的估计误差的示意图。
图5是本公开实施例2机器人圆形编队位置轨迹示意图。
图6是本公开实施例2机器人编队误差的示意图。
图7是本公开实施例2圆形编队中机器人对领航者输入上界的估计误差的示意图。
具体实施方式
本公开提供了一种基于观测器的多移动机器人自适应编队跟踪控制方法,所述跟踪控制方法基于观测器的完全分布式自适应编队跟踪算法,它进一步降低了所需获取和交换的信息量,只需要知道机器人的部分状态信息,无需拉普拉斯矩阵特征值信息等,减少信息需求量,同时也无需知道领航机器人的速度信息,并且它是一种完全分布式的方法实现多移动机器人的自适应编队跟踪控制。
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
在本公开实施例中,提供了一种基于观测器的多移动机器人自适应编队跟踪控制方法,用于控制机器人系统中的多个移动机器人完全分布式自适应编队,所述的多移动机器人是指数量不少于3个的移动机器人,图1为基于观测器的多移动机器人自适应编队跟踪控制方法的流程示意图,如图所示,所述基于观测器的多移动机器人自适应编队跟踪控制方法包括:
步骤a:创建移动机器人的动力学方程模型;
机器人系统包含q(q≥3)个同构移动机器人,每个机器人的动力学方程可以用如下方程描述:
其中,pi是机器人i在惯性坐标系下的位置,vi是机器人i的速度,ui是机器人i的控制输入;下标i的范围中1-n所代表的是编队跟随机器人,下标i为0,代表的编队的领航者,可以通过对其行为的设定来控制整个编队的行为。领航机器人可以是实际的机器人,也可以是存储了编队整体行为信息的虚拟机器人,它的位置信息可以被部分跟随机器人获得;机器人i可以获得自身的输出信息yi(t),也就是自身在惯性坐标系下的位置信息。
步骤b:创建机器人的系统观测器模型;
对于步骤a中所描述的机器人动力学方程模型,其中位置pi与速度vi是机器人状态,令xi(t)=[pi(t)vi(t)]t为机器人i的状态向量,那么,机器人系统模型可以写为:
其中a为系统矩阵,b为控制矩阵,c为输出矩阵,
令
步骤c:设定要实现的多移动机器人编队向量;
在本公开实施例中,所述要实现的编队向量,即为机器人i相对于领航者的期望偏移,记为
步骤d:确定多移动机器人编队控制的控制器;
所述制作多移动机器人编队控制的控制器,包括:
步骤d1:求解正定矩阵p;以及
由所述系统矩阵a及控制矩阵b,求满足矩阵不等式:atp+pa-pbbtp+i<0(3)的正定矩阵p;
步骤d2:求解观测器增益矩阵f;
求使得a-fc是hurwitz矩阵的矩阵f。即使得a-fc的特征值都具有负实部,其中c为输出矩阵;
步骤d3:定义时变耦合增益τi(t);
用aij代表机器人间的通信连接关系,若机器人i可以获得邻居机器人j对其自身状态的估计值信息
假设跟随机器人之间的通信是双向的,即两个机器人若可以通信则相互可获得对方相应的信息。从通信拓扑图来看,跟随机器人所形成的拓扑图是无向的,领航者不能获得跟随机器人的信息。时变耦合增益τi(t)可由:
解得,其中αi>0,
步骤d4:定义自适应参数γi(t),确定用于编队控制的控制器;
领航者的输入是有界的,即
标量函数gi(t)>0并且gi(t)∈l1空间;则自适应参数γi(t):
得到用于编队控制的控制器:
机器人无法获得全部的状态信息,只能获得输出信息,也即是他自己的位置信息,每个机器人都会根据自己的输出通过观测器来观测自己的状态,系统运行时,它会将这一估计信息发布出去,与其有通信连接的机器人将会接收该估计状态信息。从以上步骤以及控制器的形式可以看出,控制器的获得只需要邻居机器人的信息,机器人的控制输入与编队跟踪误差xi(t)-hi(t)-x0(t)相关,当编队跟踪误差不为0时,控制输入ui不为0;当编队跟踪误差为0时,控制输入不对系统产生作用。增益τi(t)与γi(t)是自适应的。该算法的实现是完全分布式的。
步骤e:用步骤d所确定的控制器实现多移动机器人自适应编队跟踪控制。
可实现编队控制的定义如下:
对于满足
要实现的编队向量
从耦合增益τi(t)的更新方程可以看出,该增益的之是恒大于0的,并且是单调递增的,最终趋于一个有界的正常数。
下面将结合具体实施例1和2对本公开的技术方案进行清楚的描述,如下:
实施例1:
1)机器人系统包含3个同构移动机器人,每个机器人的动力学方程可以用如下方程描述:
式中,pi是机器人i在惯性坐标系下的位置,vi是机器人i的速度,ui是机器人i的控制输入。下标0所代表的是一个虚拟的领航者,可以通过对其行为的设定来控制整个编队的行为,它的位置信息可以被部分移动机器人获得;机器人i可以获得自身的输出位置信息yi(t),也就是自身在惯性坐标系下的位置信息。
2)对于上式描述的机器人动力学模型,其中位置与速度是机器人状态,令
令
3)设定要实现的编队向量
hpi(t)=[0.3sin(0.7t-2(i-1)π/3)-0.3cos(0.7t-2(i-1)π/3)]t,i=1,2,3;
4)求解正定矩阵p:根据上系统矩阵a及控制矩阵b,求满足矩阵不等式atp+pa-pbbtp+i<0的正定矩阵p;
5)求解观测器增益矩阵f:求使得a-fc是hurwitz矩阵的矩阵f;
6)时变耦合增益τi(t)可由:
解得,其中αi>0;
7)设计自适应参数γi(t):令
ρi(t)>0并且ρi(t)∈l1空间;
则自适应参数γi(t):
8)根据步骤6)和7)的增益,得到编队控制的控制器:
ui(t)即是机器人i的控制输入,机器人不断地获取邻居信息,实时更新控制输入,最终得以实现多移动机器人自适应编队跟踪控制。
在本公开实施例1中,图2是本公开实施例1机器人三角形编队位置轨迹的示意图;图3是本公开实施例1机器人编队误差的示意图;图4是本公开实施例1三角形编队中机器人对领航者输入上界的估计误差的示意图;图2至图4均为本实施例1的仿真验证结果的示意图,其中t为仿真时间,结合图2至图4所示,由3个机器人组成多移动机器人系统,机器人群体形成一定的队形的同时,并且跟踪一定的轨迹。
实施例2:
本实施例2步骤与上述实施例1相同,这里改变多移动机器人编队向量的设置,可形成不同的编队,图5是本公开实施例机器人圆形编队位置轨迹示意图;图6是本公开实施例机器人编队误差的示意图;图7是本公开实施例圆形编队中机器人对领航者输入上界的估计误差的示意图;图5至图7均为本实施例2的仿真验证结果的示意图,其中t为仿真时间,结合图5至图7所示,通过改变多移动机器人编队向量的设置,可形成不同的编队。
至此,已经结合附图对本公开实施例进行了详细描述。需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
依据以上描述,本领域技术人员应当对本公开基于观测器的多移动机器人自适应编队跟踪控制方法有了清楚的认识。
综上所述,本公开提供了一种基于观测器的多移动机器人自适应编队跟踪控制方法,所述跟踪控制方法基于观测器的完全分布式自适应编队跟踪算法,它进一步降低了所需获取和交换的信息量,只需要知道机器人的部分状态信息,无需拉普拉斯矩阵特征值信息等,减少信息需求量,同时也无需知道领航机器人的速度信息,并且它是一种完全分布式的方法实现多移动机器人的自适应编队跟踪控制。
还需要说明的是,实施例中提到的方向用语,例如“上”、“下”、“前”、“后”、“左”、“右”等,仅是参考附图的方向,并非用来限制本公开的保护范围。贯穿附图,相同的元素由相同或相近的附图标记来表示。在可能导致对本公开的理解造成混淆时,将省略常规结构或构造。
并且图中各部件的形状和尺寸不反映真实大小和比例,而仅示意本公开实施例的内容。另外,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。
除非有所知名为相反之意,本说明书及所附权利要求中的数值参数是近似值,能够根据通过本公开的内容所得的所需特性改变。具体而言,所有使用于说明书及权利要求中表示组成的含量、反应条件等等的数字,应理解为在所有情况中是受到「约」的用语所修饰。一般情况下,其表达的含义是指包含由特定数量在一些实施例中±10%的变化、在一些实施例中±5%的变化、在一些实施例中±1%的变化、在一些实施例中±0.5%的变化。
再者,单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。
说明书与权利要求中所使用的序数例如“第一”、“第二”、“第三”等的用词,以修饰相应的元件,其本身并不意味着该元件有任何的序数,也不代表某一元件与另一元件的顺序、或是制造方法上的顺序,该些序数的使用仅用来使具有某命名的一元件得以和另一具有相同命名的元件能做出清楚区分。
此外,除非特别描述或必须依序发生的步骤,上述步骤的顺序并无限制于以上所列,且可根据所需设计而变化或重新安排。并且上述实施例可基于设计及可靠度的考虑,彼此混合搭配使用或与其他实施例混合搭配使用,即不同实施例中的技术特征可以自由组合形成更多的实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。并且,在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。
类似地,应当理解,为了精简本公开并帮助理解各个公开方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,公开方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。