一种补偿位置域上重复干扰的交互式学习控制器及方法
技术领域
本发明涉及伺服驱动控制领域,特别是涉及一种补偿位置域上重复干扰的交互式学习控制器及方法。
背景技术
在各种复杂机械结构的运动控制中,最基本的控制单元在于伺服电机的运动控制,因此伺服驱动与运动控制器是数控机床、工业机器人以及其他产业自动化机械结构控制的核心技术之一。其中,伺服驱动器按照被控制对象从内到外由电流环、速度环和位置环构成,相应的控制模式分别为力矩、速度和位置控制模式。
图1显示了常用的永磁同步电机空间矢量控制结构。在图中θe,θref,n和nref分别是电机转角,转角参考值,电机转速,转速参考值;P,PI分别是位置环的比例调节器,电流环和速度环的比例积分调节器。内环电流环首先采集相电流,经过Clarke和Park变换进行磁链解耦,从而实现当采用iSdref=0的转子磁链定向控制后,通过iSqref来线性控制电机转矩。这样伺服驱动系统等效模型就如图2所示。在图2中,C1(z)是电流环控制器,P(z)是控制对象电机模型,C2(z)是速度环控制器,P2(z)是速度环等价控制对象,C3(z)是位置环控制器,P3(z)是位置环等价控制对象,Td是各种因素引起的力矩干扰总和。
在典型的伺服控制系统中,不管是工作在位置、速度或力矩控制模式中,由于机械传动机构有效负载的变化、机械摩擦的非均匀分布以及系统模型参数的误差(如相电流检测时的偏置等),Td都会在位置域上呈现出一种周期性。另外在大部分运动控制的运用中,如工业机器人控制,给定是一种重复性的位置路径或者速度跟踪轨迹。从图3显示的一般力矩模式下的速度曲线(靠下的曲线)可以看到,速度的变化的重复性,其中基频(转速周期)主要是由于转子一圈内负载的变化,五次频(伺服电机是5对极的)主要是相电流采集时的静态误差通过Clarke变换引入系统的干扰,可以通过偏置补偿来减小(靠上的曲线)。图4为在速度控制模式下的电机转速,在速度闭环下能一定程度上减小速度的重复性误差但不能消除。
当系统重复在固定的时间间隔完成重复的任务时,可以采用时域上的迭代学习控制器通过递归学习来提高系统跟踪精度。图5为带重复控制器的速度环的示意图。如图5所示,其显示的带有重复控制器10的速度环来跟踪/补偿特定周期(NTs)的参考信号/扰动D(z),在图中,Y(z)是速度,Yr(z)是参考速度,C2(z)是速度环控制器,P2(z)是速度环的等价控制对象,Gf(z)是相位补偿用的滤波器,Q(z)是滑动平均滤波器,kr是迭代学习因子。
当没有加入重复控制器时,Yr(z)到Y(z)的闭环传递函数表达为:
其中z-d是系统的延迟,A(z-1)是系统闭环传递函数的分母(它的特征值都在单位圆内);把传递函数的分子分成两部分,其中B+(z-1)包含可以被抵消的稳定零点(单位圆内),B-(z-1)包含不稳定的和在单位圆附近的零点。由此,Gf(z)相位补偿滤波器可以设计为:
其中,B-(z)是将B-(z-1)里的z-1由z替代,nu是B-(z-1)的阶次,b=B-(1)2。
由图5得到重复控制器Cr(z):
其中Q(z)是滑动平均滤波器。
由图5可以得出从D(z),Yr(z)到Y(z)的传递函数分别是:
在理想情况Q(z)=1下,当参考信号Yr(z)和扰动D(z)角频率趋近如下频率点ωm时,
ωm=2πm/(NTs)(m=0,1,2,...,N/2) (6)
Z-N将趋近1,于是由以上(4)(5)式可以得到:
这表明,系统能完全抑制周期是NTs的重复性扰动,也能完全跟踪周期是NTs的重复性参考信号,从而达到零稳态误差。
在实际的应用中,由于实际的机械或负载引起的周期性扰动的频谱一般也主要分布在低阶次谐波上,滑动平均滤波器Q(z)设计成一个零相移的低通滤波,这样重复控制器虽然不能完全补偿周期性扰动的高次谐波,但有效地提高了系统的稳定性和鲁棒性。
下面,不失一般性,以Q(z)=(z+2+z-1)/4为例给出递归算法表达。将这代入(3)式可以得到,
由上式可以得到如下递归学习算法在时域上的表示:
从上面可看出,当前次的结果取决于上一个递归周期的结果和输入,保证了系统的因果性及可实现性。
然而,在实际的使用中,由于行程或速度的不固定,时域上的迭代学习控制算法无法适用。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种补偿位置域上重复干扰的交互式学习控制器及方法,以解决跟踪和补偿位置域上周期性参考信号和扰动,实现跟踪误差的渐进收敛,提高整个控制系统的跟踪精度。
为达上述及其它目的,本发明提出一种补偿位置域上重复干扰的交互式学习控制器,该交互式学习控制器设置于速度环控制器之前,通过在位置域上进行递归学习从而得到对应位置上的补偿信号来跟踪/补偿特定周期的参考信号/扰动。
进一步地,该交互式学习控制器,包括:
学习点设定单元,用于分割重复位置域,设定预期学习点;
存储空间分配单元,用于分配存储空间用来存放对应学习空间点上的学习结果;
节拍点控制单元,用于控制节拍点k,获得当前θ(k),e(k),θ(k)表示第k个节拍时的电机转子转动的角度,e(k)表示第k个节拍时实际电机转动的角速度与期望的控制目标参考角速度的差值;
递归学习点计算单元,用于计算与当前位置最靠近的学习点;
补偿值更新单元,于该递归学习点计算单元计算的学习点到预期学习点时,更新当前递归周期当前时刻的补偿值;
下次递归补偿值计算单元,利用当前位置域学习点和前面两个位置域学习点的补偿值和跟踪误差来计算下一次位置域周期对应点的补偿值;
更新单元,更新学习结果对应存储位置的值,并更新预期学习点以及更新e(k-1),e(k-2),e(k-1),e(k-2)表示历史节拍上的跟踪误差。
进一步地,该学习点设定单元平均分割重复位置域成N点,设定预期学习点为N。
进一步地,该递归学习点计算单元利用下式计算递归学习点:
j=fix(θ+π/N)/(2π/N), fix为取整运算。
进一步地,通过下式计算下次递归位置域周期对应补偿值:
其中,kr为迭代学习因子。
进一步地,该更新单元更新学习结果对应存储位置的值,将预期学习点当前值加1,如果到N,重置为0,并更新e(k-1),e(k-2)。
为达到上述目的,本发明还提供一种补偿位置域上重复干扰的交互式学习控制方法,该方法通过在位置域上来进行递归学习从而得到对应位置上的补偿信号来跟踪/补偿特定周期的参考信号/扰动。
进一步地,该交互式学习控制方法包括:
步骤一,分割重复位置域,设定预期学习点;
步骤二,分配存储空间用来存放对应学习空间点上的学习结果;
步骤三,控制节拍点k,获得当前θ(k),e(k),θ(k)表示第k个节拍时的电机转子转动的角度,e(k)表示第k个节拍时实际电机转动的角速度与期望的控制目标参考角速度的差值;
步骤四,计算与当前位置最靠近的学习点;
步骤五,于步骤四计算的学习点到预期学习点时,更新当前递归周期当前时刻的补偿值;
步骤六,利用当前位置域学习点和前面两个位置域学习点的补偿值以及当前节拍和历史节拍上的跟踪误差来计算下一次位置域周期对应点的补偿值;
步骤七,更新学习结果对应存储位置的值,并更新预期学习点以及更新e(k-1)和e(k-2),e(k-1),e(k-2)表示历史节拍上的跟踪误差。
进一步地,于步骤一中,平均分割重复位置域成N点,设定预期学习点为N。
进一步地,于步骤六中,通过下式计算下次递归位置域周期对应补偿值:
其中,kr为迭代学习因子。
与现有技术相比,本发明一种补偿位置域上重复干扰的交互式学习控制器及方法通过通过把时域上的递归算法改进为在位置域上来进行递归学习从而得到对应位置上的补偿信号来抑制相应的扰动,提高了系统重复跟踪的精度。
附图说明
图1为常用的永磁同步电机空间矢量控制结构图;
图2为图1之伺服驱动系统的等效模型;
图3为力矩模式下的电机转速示意图;
图4为速度模式下电机转速示意图;
图5为带时域重复控制器的速度环结构示意图;
图6为重复干扰时域和位置域上的关系示意图;
图7为本发明一种补偿位置域上重复干扰的交互式学习控制器的结构示意图;
图8为本发明一种补偿位置域上重复干扰的交互式学习控制器的架构示意图;
图9为本发明一种补偿位置域上重复干扰的交互式学习控制方法的步骤流程图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
在描述本发明之前,先说明重复干扰时域和位置域上的关系。如图6所示,在实际的运动控制中,主要重复干扰都是和空间位置相关的,是有空间位置的重复运动从而表现出重复性。图6用来说明位置域上的重复干扰在时域上表现。在图中,旋转角速度是ω,参考轨迹是一个圆,受干扰后如虚线所示,假设干扰为虚线和实线之间的径向距离表示如下:
其中,θ为伺服电机的实际转动角度,从(10)可以看出重复性干扰的周期取决于旋转角速度。在工业机器人或数控机床上,电机的运行角度或角速度取决于工艺的要求,不同工艺要求不同的重复行程或电机速度,即等式(3)和(9)中的N是不定的。但如果从位置域上看,式(10)中的干扰其重复性是不变的,在高精度的运动控制中,伺服电机的运动位置,即图6和等式(10)中的θ是可以准确测量的。
因此,可以通过把等式(9)中时域上的递归算法改进为在位置域上来进行递归学习从而得到对应位置上的补偿信号来抑制相应的扰动。
图7为本发明一种补偿位置域上重复干扰的交互式学习控制器的结构示意图。如图7所示,本发明一种补偿位置域上重复干扰的交互式学习控制器80,设置于速度环控制器C2(z)之前,通过在位置域上来进行递归学习从而得到对应位置上的补偿信号来跟踪/补偿特定周期(NTs)的参考信号/扰动D(z)。
图8为本发明一种补偿位置域上重复干扰的交互式学习控制器的架构示意图。如图8所示,本发明一种补偿位置域上重复干扰的交互式学习控制器,包括:学习点设定单元801、存储空间分配单元802、节拍点控制单元803、递归学习点计算单元804、补偿值更新单元805、下次递归补偿值计算单元806以及更新单元807。
学习点设定单元801,用于分割重复位置域,设定预期学习点,在本发明具体实施例中,学习点设定单元801用于平均分割重复位置域成N点,假设位置重复周期为2π,即学习步长为2π/N,设定预期学习点为N;
存储空间分配单元802,用于分配存储空间m(j),j=0,1,...,N-1用来存放对应学习空间点上的学习结果s(k);
节拍点控制单元803,用于控制节拍点k,获得当前θ(k),e(k),其中θ(k)表示第k个节拍时的电机转子转动的角度,θ可由伺服电机末端带的绝对值编码器直接测量出来的,e(k)表示第k个节拍时实际电机转动的角度与期望的控制目标参考角度的差值;
递归学习点计算单元804,用于计算递归学习点:j=fix(θ+π/N)/(2π/N),fix表示取整,即计算与当前位置最接近的学习点;
补偿值更新单元805,于递归学习点计算单元804计算的递归学习点到预期学习点时,更新当前递归周期当前时刻的补偿值:s(k)=m(j);
下次递归补偿值计算单元806,利用当前位置域学习点和前面两个位置域学习点的补偿值和跟踪误差来计算下一次位置域周期对应点的补偿值,在本发明具体实施例中,通过下式计算下次递归位置域周期对应补偿值:
其中,kr为迭代学习因子。
更新单元807,更新学习结果对应存储位置的值:
并更新预期学习点(当前值加1,如果到N,重置为0)以及更新e(k-1)和e(k-2),e(k-1),e(k-2)表示历史节拍上的跟踪误差。
图9为本发明一种补偿位置域上重复干扰的交互式学习控制方法的步骤流程图。本发明一种补偿位置域上重复干扰的交互式学习控制方法通过在位置域上来进行递归学习从而得到对应位置上的补偿信号来跟踪/补偿特定周期(NTs)的参考信号/扰动D(z),具体包括如下步骤:
步骤901,分割重复位置域,设定预期学习点,在本发明具体实施例中,平均分割重复位置域成N点,假设位置重复周期为2π,即学习步长为2π/N,设定预期学习点为N;
步骤902,分配存储空间m(j),j=0,1,...,N-1用来存放对应学习空间点上的学习结果s(k);
步骤903,控制节拍点k,获得当前θ(k),e(k),其中θ(k)表示第k个节拍时的电机转子转动的角度,θ可由伺服电机末端带的绝对值编码器直接测量出来的,e(k)表示第k个节拍时实际电机转动的角速度与期望的控制目标参考角速度的差值;
步骤904,计算递归学习点:j=fix(θ+π/N)/(2π/N),fix表示取整,即计算与当前位置最靠近的学习点;
步骤905,于步骤904计算的递归学习点到预期学习点时,更新当前递归周期当前时刻的补偿值:s(k)=m(j);
步骤906,利用当前位置域学习点和前面两个位置域学习点的补偿值和跟踪误差来计算下一次位置域周期对应点的补偿值,在本发明具体实施例中,通过下式计算下次递归位置域周期对应补偿值:
其中,kr为迭代学习因子。
步骤907,更新学习结果对应存储位置的值:
并更新预期学习点(当前值加1,如果到N,重置为0)以及更新e(k-1)和e(k-2),e(k-1),e(k-2)表示历史节拍上的跟踪误差。
以下将通过一具体实施例来进一步说明本发明:在本发明具体实施例中,假设位置重复周期是2π,位置域上迭代算法具体步骤如下:
(1)平均分割重复位置域成N点,即学习步长设为2π/N,设定预期学习点为N;
(2)分配存储空间m(j),j=0,1,...,N-1用来存放对应学习空间点上的学习结果s(k);
(3)在控制节拍点k,获得当前θ(k),e(k);
(4)计算递归学习点:j=fix(θ+π/N)/(2π/N),fix表示取整,即计算与当前位置最靠近的学习点;
(5)如果预期学习点为N,或者j==预期学习点,到6);否则到10);
(6)更新当前递归周期当前时刻的补偿值:s(k)=m(j);
(7)通过下式计算下次递归位置域周期对应补偿值:
即利用当前位置域学习点和前面两个位置域学习点的补偿值以及当前节拍和历史节拍上的跟踪误差来计算下一次位置域周期对应点的补偿值。
(9)更新预期学习点(当前值加1,如果到N,重置为0),更新e(k-1),e(k-2);
(10)回到(3)
和背景技术中时域上的递归学习等式(9)比较,可以看出等式(11)不是在每个控制节拍进行迭代,而是在预先设置好的位置点上进行递归迭代。
当系统工作在稳定的速度下,由于d(θ)=ωdt,等式(11)等价于在时间域上以不同于系统控制控制节拍的频率进行迭代。以图6为例,当转速为ω时,通过相邻两个学习点的时间间隔为:
这样本发明之重复控制器就等价与一个控制节拍为2π/(Nω)的时域上的重复控制器,但控制节拍是随着转速而改变的,其性能等价于前面时域上重复控制器的分析,同样具备补偿重复干扰的特性。
综合所述,本发明一种补偿位置域上重复干扰的交互式学习控制器及其方法通过通过把时域上的递归算法改进为在位置域上来进行递归学习从而得到对应位置上的补偿信号来抑制相应的扰动,提高了系统重复跟踪的精度。
与传统的运动控制技术相比,本发明有具有以下优点:
1)现有的传统伺服控制没有应用重复控制来补偿重复误差,由于实际应用上速度和重复行程的不确定性,难以实现传统的重复控制器。
2)对于传统的重复控制器,其存储空间的大小是不确定的,本发明所需的存储空间是可以给定的。
3)本发明可以提高系统重复跟踪的精度。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。