(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 CN 112318511 A(43)申请公布日 2021.02.05
(21)申请号 202011205828.2(22)申请日 2020.11.02
(71)申请人 北京邮电大学
地址 100876 北京市海淀区西土城路10号(72)发明人 贾庆轩 杨名硕 (51)Int.Cl.
B25J 9/16(2006.01)
权利要求书2页 说明书6页 附图2页
CN 112318511 A(54)发明名称
基于数据驱动的机械臂轨迹跟踪控制方法(57)摘要
本发明专利提供了一种基于数据驱动的机械臂轨迹跟踪控制方法,属于工业机器人控制领域。该方法将子空间辨识和模型预测控制理论相结合,子空间辨识不断为预测控制更新模型,再利用模型预测控制方法实现机械臂的轨迹跟踪。与现有技术相比,本发明的轨迹跟踪控制方法是无模型控制方法,可以直接利用被控系统的输入输出数据以及未来的输入量实现对系统的控制,不需要传统的参数模型,从而避免了传统基于模型控制方法中第一步建立动力学模型的复杂过程,同时本发明采用了滚动优化策略,即在线反复进行优化计算,滚动实施,可以使模型失配、畸变、扰动等引起的不确定性得到及时弥补,保证系统的跟随控制性能最优。
CN 112318511 A
权 利 要 求 书
1/2页
1.一种利用基于数据驱动的机械臂轨迹跟踪控制方法,将子空间辨识和模型预测控制理论相结合,子空间辨识不断为预测控制更新模型,再利用模型预测控制方法实现机械臂的轨迹跟踪,该控制方法包括如下步骤:
第一步:采用状态空间模型输入测量值,
来描述机械臂
控制系统的模型,其中:x(t)为系统的过程状态,y(t)位系统的输出测量值,u(t)为系统的
为状态空间方程的系数矩阵,对状态空间模型离散化,得到离散
状态模型:x(k+1)=Ax(k)+Bu(k),y(k)=Cx(k)+Du(k)。
第二步:在子空间辨识方法中利用已获得的输入、输出数据,建立Hankel矩阵Up、Uf、Yp、Yf。其中:p和f分别代表过去和将来,Up、Uf表示系统过去和将来的输入Hankel矩阵,Yp、Yf表示系统过去和将来的输出Hankel矩阵。
第三步:将系统最优预测输出值表示为:Yf=LwWp+LuUf,其中Lu和Lw为预测模型参数矩阵,Wp=[Yp Up]T,利用最小二乘法求出参数矩阵Lw、Lu。
第四步:引入工业生产中常用的预测控制代价函数:
其中:r代表参考轨迹,代表最优预测输出值,为在t时刻对t+k时刻的预测输出,Q
代表控制过程的权重,λ代表控制过程的权重,P代表预测时域,G代表控制时域。结合GPC(广义预测)理论,将代价函数改写成:
将子空间辨识同预测控制代价函数相结合:
J=(rf-Lwwp-Luuf)TQ(rf-Lwwp-Luuf)T+ufTλIuf第五步:对uf进行求导,从而最小化目标函数J,令
得到控制变量的最优值:
2.根据权利要求1所述的控制方法,对预测控制器进行修正,由于在实际的工业生产过程中,不包含积分器的控制器,在参考系数不为零时,会导致系统出现稳态误差,使用带有增量形式的目标函数,从而减小系统的稳态误差,提高控制效果。
(1)将Up、Uf、Yp、Yf的第一列定义为up、uf、yp、yf,利用步骤3可以得到用预测增量表示的预测输出:Δyf=LwΔwp+LuΔuf,其中Δ也被称作为差分算子。
(2)利用系统的输出增量Δy,系统的最优预测值可以表示为其改写成:
将
其中SP,G为预测输入的系数矩阵,
2
CN 112318511 A
权 利 要 求 书
2/2页
为便于计算,我们定义:
和为带有增量的预测模型参数矩阵,
(3)利用步骤5通过最小化目标函数J而获得的控制变量,可以得到在包含积分器的控制器情况下系统的控制变量最优值:
3.控制系统通过将Δuf中的第一行Δu(k)添加到当前的输入u(k)中,得到新的控制输入u(k+1),并同时得到新的模型输出y(k+1),从而在线反复进行优化计算即滚动优化策略。
4.一种基于数据驱动的机械臂轨迹跟踪控制方法,其特征在于包括处理器及轨迹跟踪控制模块,所述轨迹控制模块,即预测控制模块在被处理器调用时,执行权利1~3项的机械臂轨迹跟踪控制方法。
3
CN 112318511 A
说 明 书
基于数据驱动的机械臂轨迹跟踪控制方法
1/6页
技术领域
[0001]本发明涉及工业机器人控制领域,具体而言是一种子空间辨识和模型预测控制相结合的控制方法。
背景技术
[0002]预测控制经过几十年的发展与应用,从线性时不变预测控制发展出应用非线性、时变系统的多种新的预测控制技术,成为控制工程界的一个研究热点。预测控制是一种基于模型的控制算法,在过程模型中可以得到预测矩阵,预测矩阵通常用来预测未来输出。状态空间模型是过程模型中一种常用的模型,状态空间模型不仅能够反映系统的外部关系,更能揭示系统的内部特性。基于状态空间模型的控制方法既适用于单输入单输出(SISO)系统,又适用于多输入多输出(MIMO)系统,既可以处理定常系统又可处理时变系统。利用状态空间理论方法来分析和设计系统,提高了设计控制系统的层次。但是,人们试图将状态空间控制方法应用到工业过程时,发现在理论与实践之间依然存在着较大的差距。主要原因在于人们无法获取工业过程准确的状态空间模型,而基于数据驱动的控制方法可以很好地解决这一问题。
[0003]基于数据驱动的控制方法将子空间辨识与预测控制相结合,子空间辨识方法自从提出以来就获得了广泛的关注并得到了迅速发展,在理论研究的基础上,子空间辨识方法的应用也取得了诸多成果。例如,在过程工业如石油、化工、电力、造纸等行业,在机械工业如机械臂、振动分析等,以及在数据融合、军事等领域,子空间辨识方法都得到了广泛的应用。子空间辨识方法是一种基于数据驱动的方法,最典型特征是适用于多输入多输出系统的建模。随着对子空间辨识算法研究的不断开展,人们可以清楚地看到,子空间方法直接基于所得到的输入输出数据,不需要模型机理结构知识,只需要事先确定系统阶次,通过计算直接得到可以表示预测输出的子空间预估器模型。而且,由于子空间方法在辨识中利用了线性代数工具,与传统的辨识方法相比,不需要非线性的迭代及搜索过程,简化了很多计算量。因此基于数据驱动的控制方法在机器人的应用领域上具有广泛前景。发明内容
[0004]本发明的目的在于克服现有技术的不足,提出一种基于数据驱动的机械臂轨迹跟踪控制方法,该方法不需要传统的动参数模型,可以直接利用被控系统的输入输出数据以及未来的输入量就可以实现对系统的优化控制。[0005]本发明用以下方案实现:
[0006]一种利用基于数据驱动的机械臂轨迹跟踪控制方法,将子空间辨识和模型预测控制理论相结合,子空间辨识不断为预测控制更新模型,再利用模型预测控制方法实现机械臂的轨迹跟踪。每个采样T时间,子空间对以往的输出数据进行辨识,将更新后的模型传递到预测控制器中,预测控制器求解系统最优控制问题,在随后的采样间隔[T,T+1)内应用生成的最优输入信号控制机械臂沿跟踪轨迹运动,在下一个时刻T+1,控制系统基于上个状态
4
CN 112318511 A
说 明 书
2/6页
的测量值重复上述操作。
[0007]本发明涉及的方法包括以下步骤:
[0008]
第一步:采用状态空间模型来描述机
械臂控制系统的模型,其中:x(t)为系统的过程状态,y(t)位系统的输出测量值,u(t)为系统的输入测量值,
为状态空间方程的系数矩阵。对状态空间模型离散化,得到
离散状态模型:x(k+1)=Ax(k)+Bu(k),y(k)=Cx(k)+Du(k)。
[0009]加入带有增量形式的目标函数,从而减小系统的稳态误差,提高控制效果,得到新的状态空间模型Δx(k+1)=AΔx(k)+BΔu(k),Δy(k)=CΔx(k)+DΔu(k)。[0010]其中Δ也被称为差分算子。[0011]第二步:在子空间辨识方法中利用已获得的输入、输出数据,建立Hankel矩阵Up、Uf、Yp、Yf。其中:p和f分别代表过去和将来,Up、Uf表示系统过去和将来的输入Hankel矩阵,Yp、Yf表示系统过去和将来的输出Hankel矩阵。[0012]将Up、Uf、Yp、Yf的第一列定义为up、uf、yp、yf,将其加入增量形式:Δup、Δuf、Δyp、Δyf。
[0013]第三步:将系统最优预测输出值表示为:Yf=LwWp+LuUf,其中其中Lu和Lw为预测模型参数矩阵,Wp=[Yp Up]T,利用最小二乘法求出Lw、Lu。[0014]将最优预测输出值表示为增量形式:Δyf=LwΔwp+LuΔuf。
[0015]
系统的最优预测值可以表示为将其改写成:
[0016]
[0017]
其中SP,G为预测输入的系数矩阵,
[0018]
[0019]为便于计算,我们定义:
[0020][0021][0022]
和为带有增量的预测模型参数矩阵,
第四步:引入工业生产中常用的预测控制代价函数:
[0023]其中:r代表参考轨迹,代表最优预测输出值,为在t时刻对t+k时刻的预测
输出,Q代表控制过程的权重,λ代表控制过程的权重,P代表预测时域,G代表控制时域。结合
5
CN 112318511 A
说 明 书
3/6页
GPC(广义预测)理论,将代价函数改写成:
[0024][0025][0026]
TTT
J=(rf-F-SP,IufGΔuf)Q(rf-F-SP,GΔuf)+ufλ
第五步:对uf进行求导,从而最小化目标函数J,令得到控制变量的最优
值:
[0027][0028]
第六步:控制系统通过将Δuf中的第一行Δu(k)添加到当前的输入u(k)中,得到
新的控制输入u(k+1),并同时得到新的模型输出y(k+1),从而在线反复进行优化计算即滚动优化策略。
[0030]与现有技术相比,本发明的有益效果是解决了机械臂在控制过程中,由于其多变量、高度非线性、强耦合的特性所导致建模复杂且不准确的缺点,通过基于子空间辨识的预测控制器,直接利用输入输出数据进行轨迹跟踪控制,并且保证了系统的控制性能,具有实用价值。
附图说明
[0031]图1为发明控制流程图。
[0032]图2为发明实例中系统控制框图。
[0033]图3为发明实例中基于数据驱动的机械臂轨迹跟踪控制输出图。
具体实施方式
[0034]为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。[0035]如图1所示,本发明提出了一种基于数据驱动的机械臂轨迹跟踪控制方法,一种利用基于数据驱动的机械臂轨迹跟踪控制方法,将子空间辨识和模型预测控制理论相结合,子空间辨识不断为预测控制更新模型,再利用模型预测控制方法实现机械臂的轨迹跟踪。每个采样T时间,子空间对以往的输出数据进行辨识,将更新后的模型传递到预测控制器中,预测控制器求解系统最优控制问题,在随后的采样间隔[T,T+1)内应用生成的最优输入信号控制机械臂沿跟踪轨迹运动,在下一个时刻t+1,控制系统基于上个状态的测量值重复上述操作。
[0036]本发明涉及的方法包括以下步骤:
[0037]
[0029]
第一步:采用状态空间模型来描述机
械臂控制系统的模型,其中:x(t)为系统的过程状态,y(t)位系统的输出测量值,u(t)为系统的输入测量值,
为状态空间方程的系数矩阵。对状态空间模型离散化,得到
离散状态模型:x(k+1)=Ax(k)+Bu(k),y(k)=Cx(k)+Du(k)。
6
CN 112318511 A[0038]
说 明 书
4/6页
加入带有增量形式的目标函数,从而减小系统的稳态误差,提高控制效果,得到新
的状态空间模型Δx(k+1)=AΔx(k)+BΔu(k),Δy(k)=CΔx(k)+DΔu(k)。[0039]其中Δ也被称为差分算子。
[0040]将状态空间模型写成矩阵形式:
[0041]
[0042]
其中M=1,2,3…
[0044]针对本实例中的2自由度机械臂系统,系统有两个输入、两个输出,输入为机械臂的关节角度、角速度,输出为机械臂的关节跟踪精度。[0045]第二步:在子空间辨识方法中利用已获得的输入、输出数据,建立Hankel矩阵Up、Uf、Yp、Yf。其中:p和f分别代表过去和将来,Up、Uf表示系统过去和将来的输入Hankel矩阵,Yp、Yf表示系统过去和将来的输出Hankel矩阵。[0046]为保证实验的准确性,选取数据构成的Hankel矩阵的列数需要足够的大,在这里选择输入输出数据的Hankel矩阵为20行2000列的矩阵。
[0047]可将系统的输入输出数据的子空间矩阵方程表示为:[0048]Yp=ΓMXp+HMUp,Yf=ΓMXp+HMUf
[0049]其中ΓM和HM为子空间矩阵方程系数矩阵:
[0050]
[0043]
[0051]
第三步:将系统最优预测输出值表示为:Yf=LwWp+LuUf,其中其中其中Lu和Lw为预
测模型参数矩阵,Wp=[Yp Up]T。
[0052]在本实例控制过程所使用的子空间预测器,其中的阶数M可设置为20。[0053]子空间预测方程的系数矩阵Lw、Lu可以使用最小二乘法来求解出。
[0054]
[0055]
在本实例实际控制过程的实现中,系统的过去、将来的输入、输出Hankel矩阵,其中只有第一列被用作子空间预测方程中。分别将Up、Uf、Yp、Yf的第一列定义为:
[0056]
7
CN 112318511 A
说 明 书
5/6页
[0057]
[0058][0059][0060]
定义带有增量形式Hankel矩阵:Δup、Δuf、Δyp、Δyf。将最优预测输出值表示为增量形式:Δyf=LwΔwp+LuΔuf。当系统的预测时域为P时,系统的最优预测值可以表示为
矩阵形式表示为:
[0061]
[0062]
将其改写成:
[0063]
[00]
其中SP,G为预测输入的系数矩阵,
[0065]
[0066]为便于计算,我们定义:
[0067][0068][0069]
和为带有增量的预测模型参数矩阵,
第四步:引入工业生产中常用的预测控制代价函数:
[0070]其中:r代表参考轨迹,代表最优预测输出值,为在t时刻对t+k时刻的预测
输出,Q代表控制过程的权重,λ代表控制过程的权重,P代表预测时域,G代表控制时域。
[0071]预测控制调节参数选择:Q=1,λ=0.01,预测时域P=20,控制时域G=3。[0072]结合GPC(广义预测)理论,将代价函数改写成:
[0073]
8
CN 112318511 A[0074][0075]
说 明 书
6/6页
TTT
J=(rf-F-SP,IufGΔuf)Q(rf-F-SP,GΔuf)+ufλ
第五步:对uf进行求导,从而最小化目标函数J,令得到控制变量的最优
值:
[0076][0077]
第六步:控制系统通过将Δuf中的第一行Δu(k)添加到当前的输入u(k)中,得到
新的控制输入u(k+1),并同时得到新的模型输出y(k+1),从而在线反复进行优化计算即滚动优化策略。
[0079]重复步骤4-6,实现工业机械臂各关节驱动系统的轨迹跟踪控制,图2显示了本发明提出的基于数据驱动的机械臂轨迹跟踪控制框图,本实例以2自由度机械臂为例,对机械臂的两个关节角度进行跟踪,图3展示了基于数据驱动的机械臂轨迹跟踪控制的效果,跟踪性能更加快速、稳定。
[0078]
9
CN 112318511 A
说 明 书 附 图
1/2页
图1
图2
10
CN 112318511 A
说 明 书 附 图
2/2页
图3
11