用于控制机器操作的模型预测控制系统和方法与流程

文档序号:19158835发布日期:2019-11-16 01:07阅读:335来源:国知局
用于控制机器操作的模型预测控制系统和方法与流程

本发明总体涉及控制机器的操作,更具体地涉及在后退范围上使用模型预测控制(mpc)来控制操作。



背景技术:

在机器控制中,可以使用软件或硬件中的一个或组合实现的控制器基于例如从传感器和/或估计器、从机器的输出获得的测量生成用于到机器的输入的命令值。控制器选择输入,使得机器根据期望操作,比如,操作遵循期望的参考配置文件或者将输出调整到特定值。在若干情况下,控制器对机器的输入和输出实施约束,比如,这确保对应的变量在一些预定范围上,以确保来自物理规范的安全机器操作。为了实施这种约束,控制器经常使用机器的模型来预测机器在应用命令(即,控制输入)时产生什么行为。能够在对机器输入和输出实施约束的同时实现机器的控制的控制器中的过程的一个示例是模型预测控制(mpc)。

mpc基于机器动力学模型的范围优化,并且具有预期将来事件以采取适当控制动作的能力。这通过在约束的情况下在将来时间范围上优化机器的操作并仅对当前时隙实现控制来实现。例如,约束可以表示机器的物理限制、对机器的操作的安全性限制以及对轨迹的性能限制。用于机器的控制策略在对于这种控制策略由机器生成的运动满足所有约束时可容许。例如,在时间t时,对机器的当前状态采样,并且确定在将来的较短时间范围t的可容许成本最小化控制策略。具体地,在线或实时计算确定到时间t+t为止的成本最小化控制策略。在实现控制步骤之后,再次对状态采样,并且从现在的当前状态开始重复计算,这产生新控制和新预测的状态路径。预测范围向前移位,并且为此,mpc还被称为后退范围控制(recedinghorizoncontrol)。

mpc可以用于通过在系统的各种物理和规范约束的情况下在将来时间内求解最佳控制问题来基于系统的模型和期望的参考轨迹生成机器的运动的实际轨迹。mpc的目的在于优化(例如,最小化或最大化)机器的运动的性能指数,诸如机器的参考运动与实际运动之间的误差、机器能耗以及所诱发的系统振动。

因为mpc是基于模型的框架,所以mpc的性能不可避免地取决于在最佳控制计算中使用的预测模型的质量。然而,在大部分情况下,因为一些参数未精确测量,所以未先验地已知机器动力学模型。由此,控制器可能需要在机器的已知操作期间估计机器的模型的未知参数,由此,还在估计参数的同时实施约束。处理这种问题的方法包括自适应或基于学习的mpc,其中,为了学习未知机器参数,用闭环识别方案增强mpc控制问题。通过学习未知参数,改善由控制器实现的机器的操作。

然而,由于多个原因,限制自适应和基于学习的mpc的当前方法。例如,在估计未知参数的同时,可能违反约束,或者可能为了保守地实施约束而过度降低控制性能。实际上,几个现有方法,诸如在us2011/0022193中描述的方法,简单地忽略约束,由此,不能在约束的情况下产生用于机器的可容许的控制策略。us2016/0147203中描述的方法解决约束的问题,但估计机器动力学模型的未知参数仍然是难题。

因此,需要一种用于适于控制经受约束的机器的操作的、包括不确定性的mpc来控制机器操作的方法。



技术实现要素:

一些实施方式基于机器的动力学模型的参数很少确切已知的认识。不同的识别和学习方法的目的在于更新模型的参数,以降低与这些参数的真值有关的不确定性,但很难消除该不确定性。进一步地,除了由于缺乏精确模型产生的不确定性之外,控制的不确定性还可能由测量的不准确性、由于模型降阶引起的误差以及状态特征的不确定性引起。

一些实施方式基于以下惊人认识:各种模型预测控制(mpc)方法将机器的动力学模型用作对控制优化的硬约束,即使在未精确已知模型的参数时。即使这些mpc方法尝试随着时间的过去提高模型的准确性,但甚至在简短时间段内的模型的不准确性也可能导致机器处于不期望状态。

一些实施方式基于以下认识:mpc中的机器的动力学模型应当用作软约束,而不是硬约束。这样,可以阻止偏离满足动力学模型的值的机器的状态,但该状态在这种状态在精确已知模型的参数时可以满足动力学模型的应答中可以允许。

例如,通常,机器的动力学模型由机器的动力学方程来表示。这种方程充当强制mpc产生控制机器操作的控制输入的、mpc优化中的硬约束,该操作使机器移入使得机器的动力学方程为真的状态。

一些实施方式通过将机器的动力学方程移入被用来优化机器的性能的mpc的成本函数来去除对mpc的这种硬约束。例如,在一个实施方式中,成本函数包括对机器的状态与mpc的目的的偏差进行惩罚的、机器的状态的第一项和对机器的状态与满足机器的动力学方程的值的偏差进行惩罚的、机器的状态的第二项。

这些项的组合允许平衡系统的操作的性能与模型的参数的不确定性程度。例如,模型的不确定性的更小值可以证明成本函数中的第二项的权重的增大合理。不确定性的更大值激励减小权重。例如,在一个实施方式中,成本函数在使用加权最小二乘法查找控制输入的序列中平衡第一项和第二项的权重。

在一些实现中,第二项包括机器的动力学方程的成分,该成分被确定为使得由处理器执行的成本函数的优化促进确定使得机器的动力学方程为真的机器的动力学方程的成分。

例如,机器的动力学方程描述了空间(例如,几何空间、控制空间等)中的状态的时间依赖。机器的动力学方程是包含机器的状态作为变量的等式的陈述。等式的成分可以放置在同一侧上,以允许最小或最大优化。

例如,如果机器的动力学方程是x`=v(x),则这种方程可以被重写为magnitude(x`-v(x))=0,其中,自变量“magnitude”是确定自变量与零的偏差的非负数。这样,在大小项magnitude(x`-v(x))是成本函数的一部分时,成本函数的最小化还使差x`-v(x)与零的偏差最小化,由此促进使得机器的动力学方程为真。相反,如果mpc优化使成本函数最大化,则机器的动力学方程可以被重写为-magnitude(x`-v(x))=0。在该示例中,方程的成分magnitude(x`-v(x))或-magnitude(x`-v(x))允许将动力学方程当做软约束,而不是形成硬约束的等式。magnitude(x`-v(x))的示例可以是(x`-v(x))的绝对值的积分(平方)。

一些实施方式基于以下认识:当机器的动力学方程用作软约束时,可以使用对机器的状态的另外软约束来在存在不确定性时进一步提高控制的准确性。例如,一些实施方式包括mpc的成本函数中的状态的第三项,该第三项对状态与软约束(诸如对状态结构的约束和对状态行为的约束)的偏差进行惩罚。这种软约束的示例包括对状态的稀疏性的约束、对状态的对称性的约束、对状态的稳定性的约束、对状态的平滑性的约束、对状态在时间上的变化率的约束。

一些实施方式基于以下认识:当机器的动力学方程用作软约束时,可以使用各种数据同化方法来进一步提高控制的准确性。数据同化可以用于估计具有动力学和观测这两者的不确定性的系统的状态,其中,实际系统的观测被并入到该系统的数字模型的模型状态中。数据同化的应用发生在地球科学的许多领域中,例如,天气预报和水文学。

一些实施方式基于以下认识:可以使用数据同化来估计在mpc将来范围优化外部的机器的当前状态。然而,一些实施方式基于以下认识:在机器的动力学方程用作软约束时,可以使用从mpc将来范围上部的数据同化借用的方法。mpc内的数据同化的使用可以帮助解决不确定性以及与系统有关的不完全信息,这与在数据同化的顶上建立的传统mpc相比引起更准确且鲁棒的控制确定。

例如,在一个实施方式中,成本函数包括执行在时间范围上的状态的数据同化的第三项,使得处理器根据同化后的状态产生使机器的状态移动的控制输入的序列。因为数据同化用于mpc时间范围内部,所以实施方式使用适于数据同化的卡尔曼滤波器的变体来优化成本函数。卡尔曼滤波器的变体的示例包括经典卡尔曼滤波器(kf)、扩展卡尔曼滤波器(ekf)、无香型卡尔曼滤波器(ukf)、集合卡尔曼滤波器(enkf)、集合卡尔曼平滑器(enks)、4d变分模型(4dvar)中的一个或组合。

一些实施方式基于以下另一个认识:当机器的动力学方程用作软约束时,该方程不必是确切的且可以简化。例如,在一个实施方式中,机器的动力学方程近似机器的动力学的确切方程。

因此,一个实施方式公开了一种用于根据机器动力学模型来控制机器操作的模型预测控制(mpc)系统,该系统包括:存储器,该存储器存储成本函数,该成本函数包括由mpc的目的限定的第一项和对机器的状态与满足机器的动力学方程的值的偏差进行惩罚的第二项;处理器,该处理器在约束的情况下在时间范围上优化成本函数,以产生控制机器在时间范围上的状态的控制输入的序列;以及控制器,该控制器根据序列中的第一控制输入控制机器。

另一个实施方式公开了一种用于根据机器动力学模型使用模型预测控制(mpc)来控制机器操作的方法,其中,方法使用与实现方法的所存储指令耦合的处理器,其中,指令在由处理器执行时,进行方法的至少一些步骤。该方法包括以下步骤:从存储器取得成本函数,该成本函数包括由mpc的目的限定的第一项和对机器的状态与满足机器的动力学方程的值的偏差进行惩罚的第二项;在硬约束的情况下在时间范围上优化成本函数,以产生控制机器在时间范围上的状态的控制输入的序列;以及根据序列中的第一控制输入控制机器。

又一个实施方式公开了一种非暂时计算机可读存储介质,该非暂时计算机可读存储介质上实施程序,该程序可由处理器执行以执行方法。该方法包括以下步骤:从存储器取得成本函数,该成本函数包括由mpc的目的限定的第一项和对机器的状态与满足机器的动力学方程的值的偏差进行惩罚的第二项;在硬约束的情况下在时间范围上优化成本函数,以产生控制机器在时间范围上的状态的控制输入的序列;以及根据序列中的第一控制输入控制机器。

附图说明

[图1]图1示出了根据一些实施方式的用于控制机器操作的控制系统的框图。

[图2]图2示出了根据一些实施方式的用于控制机器操作的模型预测控制(mpc)系统的框图。

[图3]图3示出了一些实施方式所用的成本函数的示意图。

[图4]图4示出了根据一些实施方式的由图1和/或图2的控制系统的模块执行的、用于控制机器操作的方法的框图。

[图5]图5示出了另一个实施方式所用的成本函数的示意图。

[图6]图6示出了根据一些实施方式的用于在mpc将来范围内部使用数据同化的方法的框图。

[图7]图7示出了根据一个实施方式的用于实现用数据同化修改的mpc的方法的框图。

[图8]图8示出了由一个实施方式控制的示例激光加工机的等距视图。

具体实施方式

图1示出了根据一些实施方式的用于控制机器102的操作的控制系统101的框图。控制系统101通过根据模型预测控制(mpc)的原理使用在时间范围上的机器的动力学模型优化成本函数来确定到机器102的控制输入。为此,控制系统101在这里被称为mpc系统。

机器102是操作响应于命令改变量(诸如位置、速度、电流、温度、数值)的装置。如这里使用的,机器的操作确定改变这种量的机器的运动。控制系统接收机器的期望运动103,诸如用于量中的一些的期望轨迹或目标点,并且经由控制输入104控制机器。控制输入可以包括改变机器的操作的参数的命令,或者可以包括影响机器的运动(这导致生成机器的量105)的参数(诸如电压、压力、转矩、力)的实际值。

控制系统101从直接或远程连接到机器的传感器、硬件或软件接收与机器运动有关的信息106。信息106包括机器的状态。机器将状态用于选择控制输入104。信息106可以包括运动量105中的一些或全部,而且可以包括与机器有关的另外信息。量105、控制输入104或其组合可以根据对机器的操作的约束114来请求保持在一些预定范围上。

图2示出了根据一些实施方式的用于控制机器操作的模型预测控制(mpc)系统的框图。mpc系统包括存储成本函数212和约束214的存储器220。mpc系统还包括:处理器230,该处理器在约束214的情况下在时间范围上优化成本函数212,以产生控制机器102在时间范围上的状态的控制输入的序列;和控制器210,该控制器根据序列中的第一控制输入104控制机器。

一些实施方式基于机器的动力学模型的参数很少确切已知的认识。不同的识别和学习方法的目的在于更新模型的参数,以降低与这些参数的真值有关的不确定性,但很难消除该不确定性。进一步地,除了由于缺乏精确模型产生的不确定性之外,控制的不确定性还可能由测量的不准确性、由于模型降阶引起的误差以及状态特征的不确定性引起。

一些实施方式基于以下惊人观测:各种模型预测控制(mpc)方法将机器的动力学模型用作对控制优化的硬约束,即使在未精确已知模型的参数时。即使这些mpc方法尝试随着时间的过去提高模型的准确性,但在实际上最佳控制仍然可能存在的同时,模型的不准确性会导致机器处于不期望状态,或者使得范围内的mpc优化问题自相矛盾(不可实行)。

一些实施方式基于以下认识:mpc中的机器的动力学模型应当用作软约束,而不是硬约束。这样,可以阻止偏离满足动力学模型的值的机器的状态,但该状态在这种状态在精确已知模型的参数时可以满足动力学模型的应答中可以允许。

例如,通常,机器的动力学模型由机器的动力学方程来表示。动力学方程充当强制mpc产生控制机器操作的控制输入的、mpc优化中的硬约束,该操作使机器移入使得机器的动力学方程为真的状态。一些实施方式通过将机器的动力学方程移入被用来优化机器的性能的mpc的成本函数来去除对mpc的这种硬约束。

图3示出了一些实施方式所用的成本函数212的示意图。成本函数包括由mpc的目的限定的第一项310和对机器的状态与满足机器的动力学方程的值的偏差进行惩罚的第二项320。由第一项310表示的mpc目的的示例包括对在控制时间内的机器的状态与由参考轨迹限定的值的偏差进行惩罚的项、以及使机器的操作的成本最小化的项,诸如操作时间和执行操作所需的能量。

例如,第一项310可以包括控制输入u(τ)和性能度量p的函数j(u,p),使得优化(例如,第一项的最小化)优化(例如,最小化)性能度量。

第二项320基于mpc或机器的模型包括不确定性的至少一个参数的理解。例如,机器人臂的模型可能包括与搬运物体的壁的质量有关的不确定性。用于列车的移动的模型可能包括与车轮在当前天气条件下与铁轨的摩擦有关的不确定性。为此,在一些实施方式中,第二项包括机器的动力学方程的成分,该成分被确定为使得由处理器执行的成本函数的优化促进确定使得机器的动力学方程为真的机器的状态。这样,机器的模型充当软约束,该软约束在模型包括不确定性时比硬约束更适当。

在一些实施方式中,机器的动力学方程描述了空间(例如,几何空间、控制空间等)中的状态的时间依赖。机器的动力学方程是包含机器的状态作为变量的等式的陈述。等式的成分可以放置在同一侧上,以允许最小或最大优化。

例如,如果机器的动力学方程是x`=v(x),则这种方程可以被重写为x`-v(x)=0。如果差x`-v(x)出现在成本函数中,则成本函数的最小化促进使得机器的动力学方程为真。然而,成本函数值是实数,而x`-v(x)通常是向量函数。确定magnitude(x`-v(x))将向量函数自变量x`-v(x)转换成描述自变量(x`-v(x)与原点0的偏差的特征的非负数magnitude(x`-v(x))。例如,向量的大小可以被确定为向量的长度,而函数的大小可以被确定为函数的绝对值的积分。

因此,项magnitude(x`-v(x))例如可以简单地加到要最小化的成本函数。相反,如果mpc优化使成本函数最大化,则机器的动力学方程可以被重写为-magnitude(x`-v(x))=0,并且可以从要最大化的成本函数减去项magnitude(x`-v(x))。

在该示例中,成本函数中的附加项是magnitude(x`-v(x))或-magnitude(x`-v(x)),该项允许将动力学方程当做软约束,而不是形成硬约束的等式。

遵循上面提及的示例,成本函数212f可以包括

f(j(u,p)+magnitude(x`-v(x))。

图4示出了根据一些实施方式的、由控制系统101的模块执行的、用于控制机器操作的方法的框图。方法基于成本函数的优化用使用机器动力学模型确定的控制输入来控制机器的操作,该成本函数包括机器动力学的该模型,作为软约束。方法用对于之前迭代确定的之前控制输入确定410由控制产生的机器的当前状态。方法从存储器取得420指定对控制的目的的软约束和对遵循机器动力学模型的软约束的成本函数的软约束,并且从存储器取得430对成本函数的优化的硬约束。

接着,方法通过优化成本函数确定480用于当前迭代处的控制的当前控制输入。例如,方法从当前时刻确定在将来的固定时间量内的将来输入的序列,该固定时间量至少长至获得新机器状态测量,使得预测的将来机器状态和输入满足硬约束。将在等于获得机器状态的新测量所需的时间量的持续时间内的输入序列的第一部分作为到机器的当前控制输入应用450。基于机器的当前状态、机器的当前模型以及到机器的当前控制输入,确定460机器的下一状态,并且控制器等待470,直到接收新状态测量为止。

图5示出了另一个实施方式所用的成本函数的示意图。该实施方式基于以下认识:当机器的动力学方程用作软约束时,可以使用对机器的状态的另外软约束510来在存在不确定性时进一步提高控制的准确性。例如,一些实施方式包括mpc的成本函数中的状态的第三项,该第三项对状态与软约束(诸如对状态结构的约束和对状态行为的约束)的偏差进行惩罚。这种软约束的示例包括对状态的稀疏性的约束、对状态的对称性的约束、对状态的稳定性的约束、对状态的平滑性的约束、对状态在时间上的变化率的约束。

一些实施方式基于以下认识:当机器的动力学方程用作软约束时,可以使用各种数据同化方法来进一步提高控制的准确性。数据同化可以用于估计具有动力学和观测这两者的不确定性的系统的状态,其中,实际系统的观测被并入到该系统的数字模型的模型状态中。数据同化的应用发生在地球科学的许多领域中,例如,天气预报和水文学。

图6示出了根据一些实施方式的用于在mpc将来范围内部使用数据同化610的方法的框图。mpc内的数据同化的使用可以帮助解决不确定性以及与系统有关的不完全信息,这与在数据同化的顶上建立的传统mpc相比引起更准确且鲁棒的控制确定。例如,在一些实施方式中,数据同化610基于状态的之前值,调节在时间范围上根据模型112使用机器的动力学方程确定的状态的值。

一些实施方式基于以下认识:数据同化可以应用于例如从过去观测(历史匹配)估计受控系统的当前状态。然而,因为该范围在将来,所以明确没有在时间范围上的mpc内部的状态观测。因此,在mpc将来范围优化内部使用数据同化方法看起来不可能且由此无意义。

然而,一些实施方式基于以下认识:在用另外特征代替将来状态观测的情况下,数据同化为了确定控制在mpc内部可以是有益的。另外特征可以包括状态的结构,例如,状态的期望对称性,其中,状态的对称性离线确定,并且对称性的类型和参数存储在控制器的存储器中。为此,在一些实现中,数据同化610可以通过强加对状态的结构和/或状态的行为的软约束620来调节状态的值。

例如,状态的对称性的类型在时间上可以是定期的,其中,这种情况下的对称性的参数是时段的长度。状态还可以在空间上展示其对称性,例如,状态的向量可以在任意时间内对称,例如,对于具有20个分量的状态向量,可以已知前10个分量与后10个分量相同。可以周知状态属于对称表面,例如,球面,因为它在时间上变化,其中,这种情况下的对称性的参数(球面的中心和半径)先验地已知并且存储在控制器的存储器中。

一些实施方式基于以下另一个认识:在数据同化中可以使用状态的已知稀疏性,以替代未知的将来状态测量。稀疏性离线确定,并且稀疏性的模式和参数存储在控制器的存储器中。例如,状态的向量可以是稀疏的,即,用向量消没中的特定指数具有分量,其中,指数表示稀疏性的模式,而指数的总数被视为稀疏性的参数。

另外或另选地,若干实施方式用状态的特性替代数据同化中的将来状态观测,这些特性由以下内容中的一个或组合描述期望状态行为:状态满足守恒定律、状态在时间上平滑、状态与状态估计器的已知模型一致、遵循给定配置文件的状态跟踪、状态稳定性、状态有界性。守恒定律例如可以是mpc的一些应用中的状态的质量保存。例如需要时间和空间中的状态的导数中的一个或组合的状态平滑性以按照平滑性的给定容差的绝对值为界,其中,导数的阶和第一容差的值存储在控制器存储器中。

一些实施方式基于以下另一个认识:状态的稳定性和有界性中的一个或组合还可以在mpc内的数据同化中充当将来范围内的状态的不可用测量的替代。状态的稳定性可以使用稳定性的参数来限定,该参数存储在控制器的存储器中,为状态相对于模型的变化的变化的界限。

另选或另外地,一些实施方式使用控制的以下特性中的一个或组合离线地确定期望状态行为的函数,其中,控制跟踪控制的给定配置文件,是平滑的,在时间上是稳定的且在时间上是有界的。使用控制的特性确定的、状态的特性的函数的系数存储在控制器的存储器中。

根据本发明的一些实施方式,用系统状态的数据同化的函数修改系统的mpc的成本函数,其中,数据同化的函数对状态与状态的动力学的偏差进行惩罚,由此,松弛系统模型中的状态的动力学方程。另外,用状态结构和状态行为中的一个或组合的函数修改系统的mpc的成本函数,该前一函数被给予到通常仅包括状态动力学方程和各种约束的系统的模型的添加。修改对mpc控制解的影响可以被说明为充当成本函数中的软约束,使得例如对于状态与状态结构和/或状态行为的偏差惩罚将受控系统移动至状态的各控制输入。这样,在时间范围上的所有控制输入共同执行状态同化,以处理系统模型中的不确定性。

图7示出了根据一个实施方式的用于实现用数据同化修改的mpc的方法701的框图。修改mpc的成本函数,使得用包括用于与模型系统动力学的偏差的惩罚和用于状态与其结构和行为的偏差的惩罚这两者的数据同化的项代替系统动力学的项。由惩罚项确定的数据同化问题的最优解给出将来时间范围上的预测状态,该预测状态转而用于产生控制输入的序列。来自该序列的第一控制输入用作当前系统状态处的控制输入。

方法701执行生成控制信号711的在线控制步骤,该控制信号用于基于当前状态703的测量和/或估计值以及控制的之前时间步的范围时间内的状态、控制以及数据的值710来控制系统。方法通过同化对状态的软(不确定)约束705容许不确定性,来根据系统的模型确定720将来范围时间中的预测状态725,然后根据必要的最优性条件确定750范围时间中的解向量755。在确定解向量之后,方法生成760控制信号711,并且更新范围时间内的状态、控制以及数据的值。方法在控制的下一时间步处使用更新后的值。

例如,在一个实施方式中,成本函数包括执行在时间范围上的状态的数据同化的第三项,使得处理器根据同化后的状态产生使机器的状态移动的控制输入的序列。因为数据同化用于mpc时间范围上部,所以实施方式使用适于数据同化的卡尔曼滤波器的变体来优化成本函数。卡尔曼滤波器的变体的示例包括经典卡尔曼滤波器(kf)、扩展卡尔曼滤波器(ekf)、无香型卡尔曼滤波器(ukf)、集合卡尔曼滤波器(enkf)、集合卡尔曼平滑器(enks)、4d变分模型(4dvar)中的一个或组合。

一些实施方式基于以下另一个认识:当机器的动力学方程用作软约束时,该方程不必是确切的且可以简化。例如,在一个实施方式中,机器的动力学方程近似机器的动力学的确切方程。例如,一个实施方式使用用系统的状态的动力学的近似方程修改的mpc的成本函数,其中,近似方程由应用于系统状态的动力学的确切方程的模型降阶来确定。

示例性实施方式

在一个示例性实施方式中,mpc通过对范围[t,t+t]求解预测模型来确定当前控制输入u(t)。作为总体框架的起始点,该实施方式考虑预测模型的修改变体,其中,控制u(τ)和参数向量p使性能指数j(u,p)最小化:

其中,

在不确定模型动力学

对状态的不确定约束

g(τ,x(τ),u(τ),p)+ηg=0,τ∈[t,t+t],(2)

以及确定约束

x(τ)|τ=t=x(t),(3)

c(τ,x(τ),u(τ),p)|τ∈[t,t+t]=0,(4)

ψ(x(τ),p)|τ=t+t=0.(5)的情况下。

用于时间依赖微分方程(1)的初始值x(τ)|τ=t是动力学系统的当前状态向量x(t)。求解预测问题的控制向量u=u(τ)用作在时间t控制动力学系统的输入。向量p(t)的分量是系统的参数。非线性方程(1)描述了用于预测的模型系统动力学。当时变干扰ηf和ηg具有随机性质时,协方差矩阵cf和cg可变。

作为使原始成本函数(性能指数j(u,p))最小化的补充,根据使用通过选择范围内的合适解x(τ)进行的4dvar/mhe最小化项的本发明的一些实施方式使干扰向量ηf和ηg最小化:

其中,是具有权重矩阵c-1的l2范数。贯穿剩余部分,我们将非传统符号用于范数,例如,pfp实际意指通常由表示的f的范数。在我们的测试示例中,我们使用形式cf=α-1i和cg=β-1i的协方差矩阵,α=1且合适的标量β>0,i为单位矩阵。

根据本发明的实施方式,我们通过将4dvar/mhe最小化项加到原始成本函数(性能指数j(u,p))来松弛动力学方程。根据本发明的实施方式,修改成本函数的最小化可以由交替方向乘子法(admm)或交替最小化算法(ama)来执行,其中,有人重复交替控制和干扰的最小化。我们注意,范围内的解与4dvar/mhe模型中的自由选择对照,具有固定初始值x(t)。

上面陈述的范围预测问题的连续算式化可以在范围[t,t+t]内的均匀时间网格上离散化,该范围被分成尺寸δτ的n个相等时间步,并且在网格点τi(i=0,1,...,n)处对时间连续向量函数x(τ)和u(τ)采样,并且分别由编索引值xi和ui表示这些向量函数。借助于矩形正交规则近似范围内的性能成本j的积分。由向前差分算式近似状态向量的时间微分。

在得到用于nmpc算式化的欧拉方程之前,该实施方式用固定x0离散化4dvar模型:

为了进一步方便,实施方式引入块对角矩阵

和向量

在该符号中,离散化的4dvar问题采用以下形式:

相对于向量g和r的x的梯度等于

因此,4dvar的解xi(i=1,...n)满足方程

然后将离散化的最优控制问题nmpc算式化为如下:

在xi的系统(6)和等式约束

c(τi,xi,ui,p)=0,i=0,1,...,n-1,(7)

ψ(xn,p)=0.(8)的情况下。

可以借助于离散拉格朗日函数得到离散化范围问题的必要最优性条件

其中,变量在两个更大向量x=[xiλi]t(i=0,1,...,n)和u=[uiμiνp]t(i=0,1,...,n-1)中。这里,是共态向量,μ与约束(7)关联的拉格朗日乘子向量。由拉格朗日乘子ν的帮助松弛终端约束(8)。

计算拉格朗日l的导数获得必要的最优性条件、卡瑞施-库恩-塔克(karush-kuhn-tucker(kkt))静止条件:

例如,一个实现还将kkt条件转换成非线性方程f[u,x,t]=0,其中,向量u将控制输入u、拉格朗日乘子μ、拉格朗日乘子ν以及乘子p全部组合在一个向量中。

f[u,x,t]中的向量自变量x表示当前测量或估计的状态向量,该状态向量在以下过程中充当初始向量x0,这消除状态变量xi和共态变量λi。

具有被测量或估计的当前状态x0的一个实施方式通过代替向前欧拉方法xi+1=xi+f(τi,xi,ui,p)δτ求解方程(6)来计算xi,i=1,2...,n。然后,从以下线性方程组计算共态λi(i=n,n-1,...,1)

值λn由相对于x的项νtψ(xn,p)的微分来限定。

接着,实施方式使用刚刚获得的xi和λi将f[u,x,t]计算为

相对于未知向量u(t)的方程

f[u(t),x(t),t]=0(9)

给出所需的必要的最优性条件。

一些实施方式使用在均匀时间网格tj=jδt(j=0,1,...)上用mpc控制的动力学系统,并且表示xj=x(tj)。在这些实施方式中,需要在控制器板上在各时间步tj在线求解方程(9),这是nmpc实现的有挑战性部分。

相对于未知变量uj=u(tj)的非线性方程f[uj,xj,tj]=0等效于以下方程

f[uj,xj,t]-f[uj-1,xj,tj]=bj,

其中,

bj=-f[uj-1,xj,tj].(11)

使用通常与时间步δt和δτ不同的小标量h>0,我们引入向前微分运算符

aj(v)=(f[uj-1+hv,xj,tj]-f[uj-1,xj,tj])/h(12)

该运算符沿着方向v近似导数fu[uj-1,xj,tj](v)。方程f[uj,xj,tj]=0等效于运算符方程aj(δuj/h)=bj/h,其中,δuj=uj-uj-1。

让我们引入具有由算式ajek=aj(ek)限定的列ajek(k=1,...,m)的m×m矩阵aj,其中,m是向量u的维数,并且ek表示m×m单位矩阵的第k列。矩阵aj是雅可比矩阵fu[uj-1,xj,tj]的o(h)近似。雅可比矩阵fu是对称的,即,雅可比矩阵fu[u,x,t]对于所有u、x以及t对称。

假设方程f[u0,x0,t0]=0的近似解u0可用。找到足够准确的近似u0对于牛顿型方法以及搜索的成功是关键的,因为它通常是具有挑战性的运算。

u0的第一块入口在状态x0当做输入控制u0。下一状态x1=x(t1)是传感器估计的或由算式x1=x0+f(t0,x0,u0)δt计算;参考(1)。在时间tj,j>1,我们具有状态xj和来自之前时间tj-1的向量uj-1。我们的目标是相对于v求解以下方程:

aj(v)=bj/h.(13)

然后,设置δuj=hv,uj=uj-1+δuj,并且将uj的第一块分量选择为控制uj。下一系统状态xj+1=x(tj+1)是传感器估计的或由算式xj+1=xj+f(tj,xj,uj)δt计算。

求解算符方程(13)的直接方式是明确形成矩阵aj并然后例如由高斯(gaussian)消去求解线性方程组ajδuj=bj。更快的另选方案是由gmres迭代法求解(13),其中,在没有矩阵aj的明确构建的情况下使用算符aj(v)。

一个实施方式数字地计算从r3中的单位二维球面上的初始状态x0到终端状态xf的最小时间运动:系统动力学由以下普通微分方程组来管理

其中,控制输入u受到不等式约束|u-c|≤r,我们用以下等式约束来松弛该不等式约束

变量ud是假想的且受下面引入的标量wd控制。成本函数是其中,p=tf-t是到目的地的时间,并且wd是小正常数。

该实施方式选择与间隔[t,tf]一致的后退范围。借助于线性映射τ→t+τp由无维时间τ∈[0,1]参数化范围。将正规化间隔[0,1]均匀地分成具有步长δτ=1/n的网格τi=iδτ,i=0,1,...,n。离散化变量包括状态xi和共态λi、控制输入ui和松弛变量ud,i、拉普拉斯算子μi和ν、参数p。

对后退范围的动力学系统的不确定预测模型是向前欧拉方法

其中,

欧拉方法的截断误差是是(1)中的干扰ηf。显著地,ηf在这里不是随机的,并且与状态函数x(τ)高度相关。直接验证连续系统动力学满足对状态的等式约束因此,约束(4)具有和ηg=0。4dvar近似被设计为“柔软地”满足约束(4)。注意,对于该问题,可以通过在欧拉方法的每一个步骤之后将xi+1投影到单位球面上来确切满足状态约束

满足等式约束的又一种方式是使用保存范数pxjp2的所谓的指数积分器xj+1=exp(a(uj)xj)。对于测试示例,我们将该指数积分器用于测试系统动力学的数值模拟。

离散化成本函数是

一个实现在固定初始值x0和标量参数β≥0的情况下选择状态xi的4dvar近似,

参数β确定满足等式约束的力:常数β越大,强制越强。

根据一些实施方式,4dvar等效于非线性方程组

其中,

对应的离散拉格朗日函数具有以下形式:

共态λ满足以下算式:

其中,c是具有块的块对角矩阵:

函数f(u,x0,t),其中,

u=[u0,...,un-1,ud,0,...,ud,n-1,

μ0,...,μn-1,ν,p]t,

从上到下具有以下行:

xn-xf;

一些实施方式考虑具有源于系统动力学的状态约束的问题。实施方式将终端约束的数量减少至由对状态的等式约束确定的平滑流形的维数。例如,在一种情况下,球面的维数等于2,因此,拉格朗日乘子ν仅包含2个分量,而不是3个。如果未满足终端约束的上述减少,那么随后计算导致牛顿型迭代中的奇异雅克比。

激光加工机

一些实施方式提供了用于控制冗余激光加工机的操作的系统和方法。一些实施方式在约束的情况下使用基于优化的后退范围控制来控制机器,这些约束保证用由跟踪误差的边界限定的误差跟踪参考轨迹的可行性。后退范围控制的非限制性示例是模型预测控制(mpc)。

图8示出了根据本发明的一个实施方式的示例激光加工机的等距视图。激光加工机为了例示的目的而示出,并且该机器的设计不旨在限制本发明的范围。激光加工机包括慢致动器和快致动器,下面提供它们的示例。

工件800支撑在台架820下方的束集堆810上。台架沿着第一方向(例如,沿着y轴)在轨道825和826上移动。台架820由第一私服马达和第一螺钉823沿着第一方向移动。平台830设置在台架820上,并且沿着第一方向与台架一起移动。而且,平台830由第二私服马达和第二螺钉835沿着第二方向(例如,沿着x轴)移动。在该实施方式中,台架820、第一私服马达和第一螺钉823以及第二私服马达和第一螺钉835形成用于使平台沿着第一和第二方向在于工件平行的平面中移动的运动系统。然而,本发明的其他实施方式使用不同类型的棱柱形关节来移动平台。例如,第一棱柱形关节可以包括第一方向线性驱动马达,并且第二棱柱形关节可以包括第二方向线性驱动马达。

流电组件,例如,具有两个正交流电驱动器(即,第一驱动器840和第二驱动器845)、第一镜841和第二镜846的两轴流电扫描头,设置在平台830上。由第一驱动器840引起的第一镜841的第三运动沿着第三方向定位激光束,并且由第二驱动器845引起的第二镜846的第四运动沿着第四方向定位激光束。

在本描述的背景下,台架820是具有大操作范围的第一致动器或慢致动器,并且流电组件是具有更小操作范围的第二致动器或快致动器。然而,这种使用不旨在限制权利要求的范围。例如,在一些变型例中,第一致动器是快致动器,并且第二致动器是慢致动器。

在各种实施方式中,流电组件设置在平台上,使得第三方向相对于第一方向固定,并且第四方向相对于第二方向固定。例如,在一个实施方式中,第一方向与第三方向一致,并且第二方向与第四方向一致。在另一个实施方式中,第一方向与第三方向形成45度角,并且第二方向与第四方向形成45度角。

流电组件可以贴附到平台,以便固定运动方向。另选地,流电组件可以旋转地设置在平台上,使得可以在激光加工机的操作之前或期间固定第一、第二、第三以及第四方向的人工定向。在本发明的背景下,流电组件是具有小操作范围的第二级或快级。

激光加工机可以包括激光器850,该激光器用于经由光纤870和准直器875将切割激光束860引导到流电组件的第一镜841和第二镜846。在另选实施方式中,激光束经由沿着y台架和x轴平台移动的对角镜引导到流电组件。然而,其他变型例也是可以的。

准直后的切割激光束860由镜引导穿过用于将激光束聚焦在工件上的聚焦模块880,这在工件800上产生组合的x轴和y轴流电组件扫描区域865,并且切割工件800。聚焦模块880的示例是场平坦fθ透镜或非远心fθ透镜。工件800的尺寸可以由于平台的运动而大于流电扫描区域865。

在一些实施方式中,控制模块包括计算机数控(cnc)控制器895。其他实施方式可以使用不同类型的控制器。控制模块可以根据限定激光束的位置的轨迹的预计算g代码890控制运动系统和流电组件,或者可以执行决定如何控制机器的计算。例如,计算可以限定用于x轴平台830、y轴台架x运动流电组件和镜841、以及y运动流电组件和镜846的连续位置。

通常,机器用具有不同动力学行为的致动器建立。例如,由于位移质量差,第一致动器通常显著慢于第二致动器。根据该差,得到缓慢和快致动器的所指示名称。

一个实施方式将慢致动器的动力学建模为

p(k+1)=p(k)+tsv(k)

其中,p是慢致动器的位置,v是慢致动器的速度,τ是慢致动器的转矩,ts是执行控制循环的机器的控制时段,k是控制循环的指数,j是慢致动器的惯性,l是将纵向运动转换成线性运动的滚珠螺杆的节距长度,并且τ是慢致动器的转矩,β是对于慢致动器的给定角速度确定慢致动器上的摩擦转矩的摩擦系数。

根据本发明的实施方式,可以通过将对应差的大小加到原始成本函数来松弛动力学方程中的一个或两个。例如,第一方程

p(k+1)=p(k)+tsν(k)

首先被重写为p(k+1)-p(k)-tsν(k)=0,

然后被重写为magnitude(p(k+1)-p(k)-tsν(k))=0,

其中,“magnitude”可以是向量(诸如2-)范数,可以平方。然后使动力学的第一原始方程p(k+1)=p(k)+tsν(k)下降,并且向原始成本函数加附加项magnitude(p(k+1)-p(k)-tsν(k))。因此,动力学的第一原始方程p(k+1)=p(k)+tsν(k)在修改成本函数的mpc最小化中可能被违反,虽然被促进为真。如果动力学的第一原始方程p(k+1)=p(k)+tsν(k)中的参数ts不确定,则可以是有益的。

通常,参数p、v、t是具有x和y坐标的二维向量,并且经受以下约束:

pmin≤p(k)≤pmax

vmin≤v(k)≤vmax

amin≤a(k)≤amax

τmin≤τ(k)≤τmax,

这些约束限定对位置p、速度v、加速度a以及转矩τ的下界和上界,并且根据本发明的一些实施方式,可以保持为硬约束。

一个实施方式将慢致动器的模型表达为线性微分方程

x(k+1)=ax(k)+bu(k)

y(k)=cx(k),

其中,k是对信号采样的时刻,即,控制循环的指数,u是机器输入,y是机器输出,x是机器的状态,并且a、b、c是模型的参数。例如,x=[p,v]’,y=p,u=τ,并且a、b、c是适当维数的度量,并且慢致动器的操作经受以下线性约束:

其中,x、u是多面集。

根据本发明的其他实施方式,可以通过将对应差的大小加到原始成本函数来松弛动力学方程中的一个或两个。例如,第一方程

x(k+1)=ax(k)+bu(k)

首先被重写为x(k+1)-ax(k)-bu(k)=0,

然后被重写为

magnitude(x(k+1)-ax(k)-bu(k))=0,

其中,“magnitude”可以是向量(诸如2-)范数,可以平方,即,magnitude(x(k+1)-ax(k)-bu(k))=||x(k+1)-ax(k)-bu(k)||2。然后使动力学的第一原始方程x(k+1)=ax(k)+bu(k)下降,并且对于所有k向原始成本函数加附加项magnitude(x(k+1)-ax(k)-bu(k))。因此,动力学的第一原始方程x(k+1)=ax(k)+bu(k)在修改成本函数的mpc最小化中可能被违反,虽然被促进为真。如果动力学的第一原始方程x(k+1)=ax(k)+bu(k)中的矩阵a和b中的至少一个不确定,则可以是有益的。另外或另选地,如果已知动力学的第一原始方程x(k+1)=ax(k)+bu(k)例如因为它近似更准确的动力学的非线性方程x(k+1)=f(x(k),u(k))而仅近似保持,则松弛可以是有益的,该更准确的非线性方程由于实时非线性最小化的不实用计算成本而无法直接用于mpc中。

动力学的第二方程y(k)=cx(k)可以类似另外或另选地松弛,用将附加项magnitude(y(k)-cx(k))加到要在范围内的实时mpc优化中最小化的原始成本函数来代替。

本发明的一些实施方式基于以下认识:仅松弛动力学的方程可能导致以下情况:对不确切满足动力学的原始方程的状态,保持mpc优化问题的最优控制解,即使原始方程被松弛。这种琐碎的场景可能是不期望的,并且在本发明的一些实施方式中,可以通过在成本函数中包括另外项来避免,该成本函数描述了控制和状态中的一个或组合的期望行为和结构中的一个或组合。在激光切割机示例中,另外项例如可以对慢致动器的加速度进行惩罚,其中,成本函数中的另外项将是加速度a的大小|a|2,尽管加速度已经难受其给定上界约束。

本发明的一些实施方式提出使用交替方向乘子法(admm)或交替最小化算法(ama)来使用另外项修改的成本函数最小化,其中,有人重复交替控制和状态的最小化。例如,使原始成本函数为j(u,x,y),第一另外项为α||y-cx||2,这对于所有k促进y(k)=cx(k),并且使第二另外项为β||x||2,这促进小x。然后,修改后的最小二乘成本函数为j(u,x,y)+α||y-cx||2+β||x||2.

不是相对于所有变量一起最小化,而是有人可以重复地交替控制u和状态以及观测x和y的最小化,这可能在计算上是有利的。

本发明的上述实施方式可以以大量方式中的任一个来实现。例如,实施方式可以使用硬件、软件或其组合来实现。当在软件中实现时,可以在任意合适的处理器或处理器的集合上执行软件代码,而不管处理器是设置在单个计算机中还是分布在多个计算机之间。这种处理器可以被实现为集成电路,一个或多个处理器在集成电路部件中。但处理器可以使用任意合适格式的电路来实现。

进一步地,应当理解,计算机可以以若干形式中的任一个来具体实施,诸如机架安装计算机、台式计算机、膝上型计算机、微型计算机或平板计算机。这种计算机可以由任意合适形式的一个或更多个网络互联,这些网络包括作为局域网或广域网(诸如企业网络或因特网)。这种网络可以基于任意合适的技术,并且可以根据任意合适的协议来操作,并且可以包括无线网络、有线网络或光纤网络。

而且,这里所概述的各种方法或处理可以被编码为可在采用各种操作系统或平台中的任一个的一个或更多个处理器上执行的软件。另外,这种软件可以使用若干合适编程语言和/或编程或脚本工具中的任一个来编写。

而且,本发明的实施方式可以被具体实施为示例已经被提供的方法。作为方法的一部分执行的步骤可以以任意合适的方式来排序。因此,可以构造以下实施方式,其中,虽然动作在例示性实施方式中被示出为顺序动作,但动作以与所例示的不同顺序来执行,这可以包括同时执行一些动作。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1