CN111052029B - 指令值插值装置和伺服驱动器 - Google Patents

指令值插值装置和伺服驱动器 Download PDF

Info

Publication number
CN111052029B
CN111052029B CN201880054565.4A CN201880054565A CN111052029B CN 111052029 B CN111052029 B CN 111052029B CN 201880054565 A CN201880054565 A CN 201880054565A CN 111052029 B CN111052029 B CN 111052029B
Authority
CN
China
Prior art keywords
value
interpolation
interpolation function
command value
kth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880054565.4A
Other languages
English (en)
Other versions
CN111052029A (zh
Inventor
惠木守
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of CN111052029A publication Critical patent/CN111052029A/zh
Application granted granted Critical
Publication of CN111052029B publication Critical patent/CN111052029B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • G06F17/175Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method of multidimensional data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39358Time optimal control along path for singular points, having veloctiy constraints

Abstract

提供能够以Jerk不会变大、且对指令的追随延迟少的方式对按时序输入的指令值进行插值的内插技术。伺服驱动器(20)的控制部(10)具有基于x(k‑2)至x(k+1)为止的4个指令值而依次生成用于计算第k(≥3)时间区间内的指令值的第k插值函数的功能,其中,作为第k插值函数,生成第k时间区间的开始时间、结束时间处的函数值分别与x(k)、x(k+1)一致、且第k时间区间的开始时间处的二阶导数值与第k‑1插值函数的第k‑1时间区间的结束时间处的二阶导数值一致的时间的5次式。

Description

指令值插值装置和伺服驱动器
技术领域
本发明涉及指令值插值装置和伺服驱动器。
背景技术
为了能够更顺畅地控制数控机床,基于给定的多个指令值,生成用于对各指令值间的指令值进行插值(计算)的插值函数以使一阶导数和二阶导数连续,并使用所生成的各插值函数对指令值进行插值(例如参照专利文献1)。
现有技术文献
专利文献
专利文献1:日本特开2008-225825号公报
发明内容
发明要解决的课题
在已经存在成为插值对象的多个指令值的情况下,插值函数的生成所需要的指令值数没有特别限定。但是,在依次输入指令值的情况下,插值函数的生成所需要的指令值数越少,则越能够减少对由各指令值组成的指令的追随延迟。因此,在依次输入指令值的情况下,插值函数的生成所需要的指令值数少的情况为佳。并且,在依次输入指令值的情况下,也为了防止Jerk(加加速度)变大而期望各插值函数的二阶导数连续。
本发明鉴于上述情况而进行,其目的在于,提供能够以Jerk不会变大、且对指令的追随延迟少的方式对按时序输入的指令值进行插值的内插技术。
解决课题的手段
为了实现上述目的,本发明的对以规定周期ts依次输入的指令值x(k)(k是表示第几个输入的指令值的整数值)进行插值的指令值插值装置具有下述结构,即具有:插值函数生成部件,针对“1”以上的各个k值,以k值的升序来生成第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致的第k插值函数;以及插值部件,以k值的升序来反复如下处理,即使用由所述插值函数生成部件生成的所述第k插值函数来计算所述第k时间区间内的多个指令值的处理,所述插值函数生成部件是基于指令值x(k-2)至指令值x(k+1)为止的4个指令值而生成所述第k(k≥3)插值函数的部件,并且也是生成如下的时间的5次式作为所述第k(k≥3)插值函数的部件,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致。
即,本发明的指令值插值装置的插值函数生成部件在k≥3的情况下,基于指令值x(k-2)至指令值x(k+1)为止的4个指令值,作为用于计算第k指令区间内的指令值的第k插值函数,生成时间的5次式。并且,插值函数生成部件所生成的第k(≥3)插值函数是第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致的函数。因此,根据插值函数生成部件所生成的各插值函数,能够以Jerk(加加速度)变小的方式对指令值进行插值。并且,插值函数生成部件由少量(4个)的指令值生成各插值函数,因此根据本发明所涉及的指令值插值装置,还能够减少对由各指令值组成的指令的追随延迟。
一次导数也连续的情况下,Jerk的抑制效果提高。因此,本发明的指令值插值装置中,也可以采用“所述插值函数生成部件生成如下的时间的5次式作为所述第k(≥3)插值函数,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的结束时间处的一阶导数值、二阶导数值分别与所述第k-1插值函数的第k-1时间区间的开始时间处的一阶导数值、二阶导数值一致”的结构。另外,该结构能够通过例如预先使第k插值函数成为“将满足下述式的a1~a6分别设为0次~5次的系数的从第k时间区间的开始时间起算的经过时间t的5次式”而实现。
[数1]
Figure BDA0002388924360000031
本发明的指令值插值装置中,通常采用“所述插值函数生成部件在被输入了指令值x(k+1)时执行用于生成所述第k(≥1)插值函数的生成处理,所述插值部件在生成了所述第k插值函数时开始用于计算所述第k时间区间内的指令值的处理”的结构。但是,本发明的指令值插值装置中,也可以采用插值函数生成部件的第k插值函数的生成定时、或插值部件的“计算第k时间区间内的指令值的处理”的开始定时与上述不同的结构。
此外,作为本发明的指令值插值装置的插值函数生成部件,能够采用第1、第2插值函数的具体的生成流程不同的各种部件。具体而言,作为插值函数生成部件,也可以采用例如“假定x(-1)、x(0)的值分别为‘3·x(1)-2·x(2)’、‘2·x(1)-x(2)’,通过所述(1)式而生成所述第1插值函数,假定x(0)的值为‘2·x(1)-x(2)’,通过所述(1)式而生成所述第2插值函数”。此外,作为插值函数生成部件,也可以采用“假定x(-1)、x(0)的值均为x(1),通过所述(1)式而生成所述第1插值函数,假定x(0)的值为x(1),通过所述(1)式而生成所述第2插值函数”。
此外,为了即使未输入某一指令值也能够继续进行插值,本发明的指令值插值装置中,也可以采用“在应当输入指令值x(k+1)(k≥3)的输入定时未输入指令值x(k+1)的情况下,所述插值部件使用第k-1插值函数来计算第k时间区间内的指令值”的结构、或“在应当输入指令值x(k+1)(k≥3)的输入定时未输入指令值x(k+1)的情况下,所述插值函数生成部件使用第k-1插值函数来估计指令值x(k+1),并使用所估计的指令值x(k+1)来生成第k插值函数”的结构。
此外,本发明的基于以规定周期依次输入的指令值x(k)(k是表示第几个输入的指令值的整数值)而驱动伺服电机的伺服驱动器具有下述结构:其具有:电源电路,用于驱动所述伺服电机;插值函数生成手段,插值函数生成部件,在被输入了指令值x(k+1)(k≥1)时,生成第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致的第k插值函数;插值部件,使用由所述插值函数生成部件生成的所述第k插值函数,计算所述第k时间区间内的多个指令值;以及驱动控制部件,基于由所述插值部件计算出的各指令值,控制所述电源电路,所述插值函数生成部件是基于指令值x(k-2)至指令值x(k+1)为止的4个指令值而生成所述第k(≥3)插值函数的部件,并且也是生成如下的时间的5次式作为所述第k(≥3)插值函数的部件,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致。
即,本发明的伺服驱动器与本发明的指令值插值装置同样地,具有基于指令值x(k-2)至指令值x(k+1)为止的4个指令值而生成用于计算第k(≥3)指令区间内的指令值的第k插值函数(时间的5次式)的插值函数生成部件。此外,该插值函数生成部件所生成的第k(≥3)插值函数是第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致的函数。因此,根据插值函数生成部件所生成的各插值函数,能够以Jerk(加加速度)变小的方式对指令值进行插值。并且,插值函数生成部件由少量(4个)的指令值生成各插值函数,因此根据本发明的伺服驱动器,能够以对指令的追随延迟少的方式控制电源电路。
发明效果
根据本发明,能够以Jerk不会变大、且对指令的追随延迟少的方式对按时序输入的指令值进行插值。
附图说明
图1是本发明的一个实施方式所涉及的伺服驱动器的概略结构和使用方式的说明图。
图2是实施方式所涉及的伺服驱动器所具有的控制部的功能框图。
图3是用于说明插值函数yk(t)的图。
图4是控制部内的插值函数生成部所执行的插值函数生成处理的流程图。
图5是参数计算处理的具体例的说明图。
图6是参数计算处理的另一具体例的说明图。
图7是采用图5的参数计算处理的情况下的电机的位置和扭矩的时间变化模式的说明图。
图8是采用图6的参数计算处理的情况下的电机的位置和扭矩的时间变化模式的说明图。
图9是插值函数生成处理的步骤S106的处理的说明图。
图10是对同一输入进行1次插值、2次插值、基于控制部的5次插值的情况下的Jerk值的模拟结果的说明图。
图11是实施方式所涉及的基于伺服驱动器的控制部的插值结果的说明图。
具体实施方式
以下,参照附图,说明本发明的实施方式。
图1中,示出本发明的一个实施方式所涉及的伺服驱动器20的概略结构和使用方式。
本实施方式所涉及的伺服驱动器20是用于驱动电机(三相电机)40的装置。如图示那样,伺服驱动器20具有电源电路21、控制部10、和用于测定电源电路21内的逆变器电路24(详情如后所述)的各桥臂的输入输出电流值的电流传感器25。
电源电路21是用于生成向电机40供给的三相交流的电路。电源电路21具有用于将来自三相电源50的三相交流进行整流的整流电路22、和平滑电容器23。进一步,电源电路21具有用于将通过平滑电容器23而平滑化的整流电路22的输出电压转换为三相交流的逆变器电路24。
控制部10是由处理器、闪速ROM、RAM、栅极驱动器等构成的单元。如图示那样,对该控制部10,输入来自各电流传感器25的信号、和来自安装在电机40上的编码器41(绝对编码器或增量编码器)的信号。
此外,在控制部10的闪速ROM中,存储了作为伺服驱动器20用的程序而开发的程序。控制部10通过处理器在RAM上读出该程序并执行,从而作为具有后述各种功能的单元而操作。
以下,说明控制部10的功能。
控制部10基本上是按照由PLC(Programmable logic controller,可编程逻辑控制器)等上位装置30以规定的周期ts(例如4ms)周期性地输入的指令值(本实施方式中为电流指令值)对逆变器电路24进行控制的单元。以下,将来自上位装置30的第k个(k≥1;开头是第1个)指令值表述为x(k)。此外,将输入第k个指令值之后直至输入第k+1个指令值为止的时间区间、和输出第k个指令值之后直至输出第k+1个指令值为止的时间区间表述为第k指令区间。
图2中示出控制部10的功能框图。如图示那样,控制部10作为插值函数生成部11、插值部12和驱动部13而操作。
插值函数生成部11是对每个指令区间生成其指令区间用的插值函数的单元(功能块)。详情将在后面叙述,但该插值函数生成部11生成时间t的5次式,作为第k(≥1)指令区间用的插值函数yk(t)。
yk(t)=a1+a2t+a3t2+a4t3+a5t4+a6t5
另外,该5次式中的t如图3中示意性示出那样,是从第k指令区间的开始时间(开始时刻)起算的经过时间。即,若将应当计算指令值(指令值的插值值)的第k时间区间内的时刻表述为ttgt,将第k指令区间的开始时刻表述为tk,则上述5次式通过在t中代入“ttgt-tk”,成为计算时刻ttgt处的指令值的式。
插值部12(图2)基本上是以与周期ts相比更短的周期to(例如0.125ms)来反复进行基于由插值函数生成部11生成的最新的插值函数的指令值的计算的单元。但是,插值部12具有根据第k-1指令区间用的插值式yk-1(t)来计算第k指令区间内的指令值的功能(详情如后所述)。
驱动部13是控制逆变器电路24,以使来自各传感器25的电流值成为与由插值部12计算的指令值相应的值的单元。
以下,进一步具体说明控制部10的功能。
控制部10的插值函数生成部11在被输入了第1个(最初的)指令值x(1)时,开始图4所示的流程的插值函数生成处理。另外,在该图4和以下的说明中,k是指,初始值为“1”,且每当在步骤S101的处理(判断)中进行向“是”侧的分支时递增“1”的变量。
即,由于输入了指令值x(1)而开始了该插值函数生成处理的插值函数生成部11,首先在步骤S101中等待成为下一指令值的输入定时。换言之,插值函数生成部11从本次指令值的输入时刻起,等待经过指令值的输入周期ts
在成为了指令值的输入定时的情况下(步骤S101;是),插值函数生成部11判断是否被输入了指令值(步骤S102)。并且,插值函数生成部11在被输入了指令值的情况下(步骤S102;是),判断k值是否为4以上(本次输入的指令值是否为第4个以后的指令值)(步骤S103)。
在k值小于4的情况下(步骤S103;否),即在本次输入的指令值为第2个或第3个指令值的情况下,插值函数生成部11在进行参数计算处理(步骤S104)之后进行函数生成处理(步骤S105)。另一方面,在本次输入的指令值为第4个以后的指令值的情况下(步骤S103;是),插值函数生成部11不进行参数计算处理,进行函数生成处理(步骤S105)。
函数生成处理是通过以下的(1)式来计算用于第k指令区间的插值函数“yk(t)=a1+a2t+a3t2+a4t3+a5t4+a6t5”的系数a1~a6,并将计算结果通知给插值部12的处理。
[数2]
Figure BDA0002388924360000071
以下,说明(1)式的导出过程。另外,以下的说明中,将函数f(yk(t)等)的n阶导数表述为f(n)
上述的(1)式是作为深入研究一阶导数、二阶导数在区间边界处连续的指令值插值用的函数的生成方法的结果而得到的。
具体而言,指令区间边界处的函数值与指令值一致,且指令区间边界处的一阶导数、二阶导数连续的插值函数需要满足6个边界条件。因此,如果使用具有6个系数的以下的(2)式(时间t的5次式),则能够得到指令区间边界处的函数值与指令值一致,且指令区间边界处的一阶导数、二阶导数连续的插值函数。
[数3]
yk(t)=a1+a2t+a3t2+a4t3+a5t4+a6t5 …(2)
为了确定(2)式的6个系数的值,原则上需要6个指令值。但是,若系数a1~a6的值的计算所需要的指令值数较多,则对指令的追随延迟变大。因此,在开发上述(1)式时,为了减少对指令的追随延迟,将第k插值函数的第k指令区间的各边界(开始时间“0”、结束时间“ts”)处的一阶导数值、二阶导数值用以下的(3)~(6)式近似。
[数4]
Figure BDA0002388924360000081
Figure BDA0002388924360000082
Figure BDA0002388924360000083
Figure BDA0002388924360000084
(3)式是第k插值函数的第k指令区间的结束时间处的一阶导数值的近似式,(4)式是第k插值函数的第k指令区间的结束时间处的二阶导数值的近似式。这些式通过(2)式的泰勒展开等而导出。
具体而言,若将(2)式在点ts附近进行泰勒展开,则可得到以下的(7)式。
[数5]
Figure BDA0002388924360000085
若忽略该(7)式的右边的“t-ts”的3次以上的各项(视为“0”),则能够得到以下的(8)式。
[数6]
Figure BDA0002388924360000086
若在(8)式的t中代入-ts、0,则分别得到以下的(9)、(10)式。
[数7]
Figure BDA0002388924360000087
Figure BDA0002388924360000088
若将这些式作为yk (1)(ts)、yk (2)(ts)的联立方程式进行解方程,则能够得到以下的(11)式和(12)式。
[数8]
Figure BDA0002388924360000091
Figure BDA0002388924360000092
上述(3)式是将(11)式的右边使用yk(-ts)=x(k-1)、yk(0)=x(k)、yk(ts)=x(k+1)这一关系式而变更为x的式而得到的,上述(4)式是使用相同的关系式将(12)式的右边变更为x的式而得到的。
上述(5)、(6)式分别是第k插值函数的第k指令区间的开始时间处的一阶导数值、二阶导数值的近似式。这些式是通过以下的流程而导出的。
想要求出的第k插值函数是第k指令区间的开始时间处的一阶、二阶导数值分别与第k-1插值函数的第k-1指令区间的结束时间(=第k指令区间的开始时间)处的一阶、二阶导数值一致的函数。因此,第k插值函数需要满足以下的2个条件。
[数9]
Figure BDA0002388924360000093
Figure BDA0002388924360000094
在此,若在上述(3)、(4)式的“k”中代入“k-1”,则能够得到以下的(15)、(16)式。
[数10]
Figure BDA0002388924360000095
Figure BDA0002388924360000096
并且,如果使用(13)式对(15)式进行变形,则得到(5)式,如果使用(14)式对(16)式进行变形,则得到(6)式。因此,如果使得满足(5)、(6)式,则能够得到第k指令区间的开始时间处的一阶、二阶导数值分别与第k-1插值函数的第k-1指令区间的结束时间(=第k指令区间的开始时间)处的一阶、二阶导数值一致的第k插值函数。
以上,如说明那样,(3)、(4)式能够分别作为第k插值函数的第k指令区间的结束时间处的一阶导数值、二阶导数值的近似式来使用。此外,(5)式能够作为第k插值函数的第k指令区间的开始时间处的一阶导数值的近似式、以及第k插值函数的第k指令区间的开始时间处的一阶导数的连续条件式来使用。进一步,(6)式能够作为第k插值函数的第k指令区间的开始时间处的二阶导数值的近似式、以及第k插值函数的第k指令区间的开始时间处的二阶导数的连续条件式来使用。并且,由于yk(0)=x(k)、yk(ts)=x(k+1),因此结果是以下的(17)式成立。
[数11]
Figure BDA0002388924360000101
即,若如下定义矩阵Yd、KX、X,则Yd=KX·X成立。
[数12]
Figure BDA0002388924360000102
此外,若将(1)式(t的5次式)的两边用t微分,则能够得到以下的(18)式,若将(18)式的两边用t微分,则能够得到以下的(19)式。
[数13]
Figure BDA0002388924360000103
Figure BDA0002388924360000104
进一步,由(1)式得到yk(0)=a1,由(18)式、(19)式分别得到yk (1)(0)=a2、yk (2)(0)=2a3
因此,以下的(20)式成立。
[数14]
Figure BDA0002388924360000111
若将该(20)式中的右边的6行6列矩阵、1行6列矩阵分别表述为KA、A,则成为Yd=KA·A成立,但如已经说明那样,Yd=KX·X成立(参照(17)式)。
并且,由于KX、KA、X的元素全部为已知数,因此通过KA -1·KX·X,能够求出A。为了求出A,若实际计算KA -1·KX,则得到以下的矩阵。
[数15]
Figure BDA0002388924360000112
因此,能够通过上述(1)式而算出A(a1~a6)。
返回图4继续说明。
根据上述说明可知,函数生成处理本来是需要连续输入的4个指令值的处理。但是,在将函数生成处理设为这样的处理的情况下,直至输入第4个指令值为止,无法开始电源电路21的控制(电机40的驱动控制)。
为了能够在输入了第2个指令值的阶段开始电源电路21的控制而准备的处理是步骤S104的参数计算处理。
具体而言,上述内容的函数生成处理只要存在连续的4个指令值则能够执行。因此,如果使在第1插值函数的生成时算出(估计出)指令值x(-1)、指令值x(0)而进行函数生成处理,在第2插值函数的生成时算出指令值x(0)而进行函数生成处理,则能够在输入了第2个指令值的阶段开始电源电路21的控制。另外,指令值x(-1)是指,指令值x(1)的2个之前的指令值的估计值,指令值x(0)是指,指令值x(1)的前1个指令值的估计值。
但是,在指令值x(-1)或指令值x(0)的值不适当的情况下,会导致对电源电路21进行不理想的控制。为了防止发生这样的故障,在步骤S104中,基于已经输入的指令值,进行用于计算指令值x(-1)和x(0)、或指令值x(0)的参数计算处理。
以下,说明参数计算处理的具体例。
作为参数计算处理,能够采用如下的处理,即在k=2的情况下,通过以下的(21)和(22)式来计算(估计)x(-1)和x(0),在k=3的情况下,通过以下的(22)式来计算x(0)。
x(-1)=3·x(1)-2·x(2) …(21)
x(O)=2·x(1)-x(2) …(22)
即,在该参数计算处理中,如图5中示意性示出那样,假定指令值的变化速度恒定而算出x(-1)以及x(0)、或x(0)。
此外,作为参数计算处理,还能够采用如图6中示意性示出那样,在k=2的情况下,将与指令值x(1)相同的值作为x(-1)和x(0)来计算,在k=2的情况下下,将与指令值x(1)相同的值作为x(0)来计算的处理。
另外,在采用了前者的参数计算处理(图5)的情况下,电机40的位置、扭矩分别如图7所示那样变化。此外,在采用了后者的参数计算处理(图6)的情况下,电机40的位置、扭矩分别如图8所示那样变化。
即,如果采用假定变化速度恒定而计算指令值x(-1)、x(0)的前者的参数计算处理(图7),则与采用了将指令值x(-1)、x(0)设为与x(1)相同的值的后者的参数计算处理的情况(图8)相比,能够提高轨道重现性。但是,如果采用后者的参数计算处理(图8),则与采用了前者的参数计算处理的情况(图7)相比,能够减小动作开始点的扭矩的峰值。因此,在想要减小动作开始点的扭矩的峰值的情况下,使得进行前者的参数计算处理即可,在想要得到良好的轨道重现性的情况下,使得进行后者的参数计算处理即可。
返回图4继续说明。
结束了函数生成处理的插值函数生成部11返回步骤S101,等待成为下一指令值的输入定时。
插值函数生成部11通常反复进行上述那样的处理。但是,在即使达到指令值的输入定时,也未输入指令值的情况下(步骤S102;否),插值函数生成部11对插值部12指示利用前一指令区间用的5次插值式的插值(步骤S106)。
即,由上位装置30,通常输入平缓地经时变化的指令值。因此,如图9中示意性示出那样,能够用第k-1指令区间用的5次插值式yk-1(t)进行第k-1指令值至未输入的第k指令值(图中为缺失指令值)为止的第k指令区间的插值。另外,第k-1指令区间用的5次插值式yk-1(t)中的t是从第k-1指令区间的开始时刻tk-1起算的经过时间。因此,若将应当计算指令值的时刻ttgt从第k时间区间的开始时刻起算的经过时间表述为Δt,则接收到基于步骤S106的处理的指示的插值部12通过在yk-1(t)的t中代入“ts+Δt”,由此算出时刻ttgt处的指令值。
以上,如说明那样,本实施方式所涉及的伺服驱动器20的控制部10基于指令值x(k-2)至指令值x(k+1)为止的4个指令值,生成用于计算指令值x(k)至指令值x(k+1)为止的第k指令区间内的指令值的第k插值函数(时间的5次式)。并且,控制部10所生成的第k插值函数是,第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,并且,第k时间区间的开始时间处的一阶导数值、二阶导数值分别与第k-1插值函数的第k-1时间区间的结束时间处的一阶导数值、二阶导数值一致的函数。因此,根据控制部10所生成的各插值函数,能够以对原始轨道(插值对象指令值的时间变化模式)的追随性高、Jerk(加加速度)也不会变大的方式对指令值进行插值。
具体而言,图10中示出对同一输入(同一指令值组)进行1次插值、2次插值、基于控制部10的5次插值的情况下的Jerk值的模拟结果。如图示那样,在进行了1次插值的情况下(图10(a)),对指令值的每个输入,产生较大的Jerk。此外,在进行了2次插值的情况下(图10(b)),对指令值的每个输入,也产生较大的Jerk,但根据控制部10的5次插值,如图10(c)所示那样,能够将Jerk值抑制为极小的值。
进一步,控制部10具有使用指令值x(0)等的估计值而生成4个指令值不齐备的第1插值函数、第2插值函数的功能。因此,根据本实施方式所涉及的伺服驱动器20(控制部10),如图11所示那样,与1次插值同样地,从第2个指令值的输入时刻起就能够开始指令值的插值。
《变形方式》
上述实施方式所涉及的伺服驱动器20(控制部10)能够进行各种变形。例如,基于上述技术,也可以制造对不用于电机40的指令值进行校正的装置。此外,插值函数生成处理(图4)也可以变形为下述处理:在指令值的输入定时未输入指令值的情况下(步骤S102;否),通过在第k-1指令区间用的5次插值式yk-1(t)的t中代入2ts,进行算出(估计)x(k+1)的处理之后,进行步骤S105的处理。
如果2次导数连续(第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致),则即使1次导数不连续,Jerk也变小。因此,也可以替代(5)式而使用其他式来计算a1~a6。但是,由于在-1次导数和2次导数的两者连续的情况下,Jerk会变小,因此优选使用(5)式(通过(1)式而计算a1~a6)。
另外,作为能够替代(5)式而使用的式,能够例示出以下的(23)式。
[数16]
Figure BDA0002388924360000141
在替代(5)式而使用该(23)式的情况下,a1~a6通过以下的(24)式而计算。
[数17]
Figure BDA0002388924360000142
标号说明
10 伺服驱动器
11 插值函数生成部
12 插值部
13 驱动部
21 电源电路
22 整流电路
23 平滑电容器
24 逆变器电路
25 电流传感器
30 上位装置
40 电机
41 编码器
50 三相电源

Claims (9)

1.一种指令值插值装置,对以规定周期ts依次输入的指令值x(k)进行插值,k是表示第几个输入的指令值的整数值,其特征在于,具有:
插值函数生成部件,针对“1”以上的各个k值,以k值的升序来生成第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致的第k插值函数;以及
插值部件,以k值的升序来反复如下处理,即使用由所述插值函数生成部件生成的所述第k插值函数来计算所述第k时间区间内的多个指令值的处理,
所述插值函数生成部件是基于指令值x(k-2)至指令值x(k+1)为止的4个指令值而生成所述第k插值函数的部件,并且也是生成如下的时间的5次式作为所述第k插值函数的部件,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致,其中,k≥3。
2.根据权利要求1所述的指令值插值装置,其特征在于,
所述插值函数生成部件生成如下的时间的5次式作为所述第k插值函数,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的结束时间处的一阶导数值、二阶导数值分别与所述第k-1插值函数的第k-1时间区间的开始时间处的一阶导数值、二阶导数值一致,其中,k≥3。
3.根据权利要求2所述的指令值插值装置,其特征在于,
所述第k插值函数是将满足下述式的a1~a6分别设为0次~5次的系数的从第k时间区间的开始时间起算的经过时间t的5次式,其中,k≥3,
[数1]
Figure FDA0002388924430000021
4.根据权利要求1至3中任一项所述的指令值插值装置,其特征在于,
所述插值函数生成部件在被输入了指令值x(k+1)时,执行用于生成所述第k插值函数的生成处理,其中,k≥1,
所述插值部件在生成了所述第k插值函数时,开始用于计算所述第k时间区间内的指令值的处理。
5.根据权利要求3所述的指令值插值装置,其特征在于,
所述插值函数生成部件,
假定x(-1)、x(0)的值分别为“3·x(1)-2·x(2)”、“2·x(1)-x(2)”,通过所述(1)式而生成第1插值函数,
假定x(0)的值为“2·x(1)-x(2)”,通过所述(1)式而生成第2插值函数。
6.根据权利要求3所述的指令值插值装置,其特征在于,
所述插值函数生成部件,
假定x(-1)、x(0)的值均为x(1),通过所述(1)式而生成第1插值函数,
假定x(0)的值为x(1),通过所述(1)式而生成第2插值函数。
7.根据权利要求1至3中任一项所述的指令值插值装置,其特征在于,
在应当输入指令值x(k+1)的输入定时未输入指令值x(k+1)的情况下,所述插值部件使用第k-1插值函数来计算第k时间区间内的指令值,其中,k≥3。
8.根据权利要求1至3中任一项所述的指令值插值装置,其特征在于,
在应当输入指令值x(k+1)的输入定时未输入指令值x(k+1)的情况下,所述插值函数生成部件使用第k-1插值函数来估计指令值x(k+1),并使用所估计的指令值x(k+1)来生成第k插值函数,其中,k≥3。
9.一种伺服驱动器,基于以规定周期依次输入的指令值x(k)而驱动伺服电机,k是表示第几个输入的指令值的整数值,其特征在于,所述伺服驱动器具有:
电源电路,用于驱动所述伺服电机;
插值函数生成部件,在被输入了指令值x(k+1)时,生成第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致的第k插值函数,其中,k≥1;
插值部件,使用由所述插值函数生成部件生成的所述第k插值函数,计算所述第k时间区间内的多个指令值;以及
驱动控制部件,基于由所述插值部件计算出的各指令值,控制所述电源电路,
所述插值函数生成部件是基于指令值x(k-2)至指令值x(k+1)为止的4个指令值而生成所述第k插值函数的部件,并且也是生成如下的时间的5次式作为所述第k插值函数的部件,即所述第k时间区间的开始时间、结束时间处的函数值分别与指令值x(k)、指令值x(k+1)一致,且所述第k时间区间的开始时间处的二阶导数值与第k-1插值函数的第k-1时间区间的结束时间处的二阶导数值一致,其中,k≥3。
CN201880054565.4A 2017-11-09 2018-11-02 指令值插值装置和伺服驱动器 Active CN111052029B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017216317A JP6816704B2 (ja) 2017-11-09 2017-11-09 指令値補間装置及びサーボドライバ
JP2017-216317 2017-11-09
PCT/JP2018/040891 WO2019093246A1 (ja) 2017-11-09 2018-11-02 指令値補間装置及びサーボドライバ

Publications (2)

Publication Number Publication Date
CN111052029A CN111052029A (zh) 2020-04-21
CN111052029B true CN111052029B (zh) 2023-03-07

Family

ID=66438401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880054565.4A Active CN111052029B (zh) 2017-11-09 2018-11-02 指令值插值装置和伺服驱动器

Country Status (5)

Country Link
US (1) US11494465B2 (zh)
EP (1) EP3709117A4 (zh)
JP (1) JP6816704B2 (zh)
CN (1) CN111052029B (zh)
WO (1) WO2019093246A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113093716B (zh) * 2019-12-19 2024-04-30 广州极飞科技股份有限公司 一种运动轨迹规划方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4111517A1 (de) * 1990-04-11 1991-10-17 Brother Ind Ltd Steuereinrichtung zum steuern einer mehrzahl von servomotoren
WO2013133346A1 (en) * 2012-03-07 2013-09-12 Canon Kabushiki Kaisha Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
CN103378793A (zh) * 2012-04-23 2013-10-30 通用汽车环球科技运作有限责任公司 生成用于控制永磁电机操作的电压指令的方法、系统和设备
CN103907070A (zh) * 2012-10-25 2014-07-02 三菱电机株式会社 伺服控制装置
JP2015051469A (ja) * 2013-09-05 2015-03-19 キヤノン株式会社 ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
CN106416027A (zh) * 2014-06-02 2017-02-15 Ats自动化加工系统公司 具有动力曲线轨道区段的线性马达系统
CN106826829A (zh) * 2017-02-22 2017-06-13 武汉工程大学 一种可控误差的工业机器人光顺运动轨迹生成方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3882304A (en) * 1973-05-04 1975-05-06 Allen Bradley Co Parametric interpolation of three-dimensional surfaces
JP5009010B2 (ja) 2007-03-13 2012-08-22 新日本工機株式会社 数値制御装置
JP2011086099A (ja) 2009-10-15 2011-04-28 Toyota Motor Corp 移動体の移動経路データの生成方法
JP5417392B2 (ja) 2011-07-29 2014-02-12 新日本工機株式会社 数値制御装置
JP5326015B2 (ja) 2012-02-20 2013-10-30 ファナック株式会社 加工曲線作成機能を有する数値制御装置
US9517556B2 (en) * 2012-06-29 2016-12-13 Mitsubishi Electric Corporation Robot control apparatus and robot control method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4111517A1 (de) * 1990-04-11 1991-10-17 Brother Ind Ltd Steuereinrichtung zum steuern einer mehrzahl von servomotoren
WO2013133346A1 (en) * 2012-03-07 2013-09-12 Canon Kabushiki Kaisha Robot controlling device, robot apparatus, robot control method, program for executing robot control method, and recording medium on which program is recorded
CN104254430A (zh) * 2012-03-07 2014-12-31 佳能株式会社 机器人控制设备、机器人装置、机器人控制方法、用于执行机器人控制方法的程序、及在其上记录程序的记录介质
CN103378793A (zh) * 2012-04-23 2013-10-30 通用汽车环球科技运作有限责任公司 生成用于控制永磁电机操作的电压指令的方法、系统和设备
CN103907070A (zh) * 2012-10-25 2014-07-02 三菱电机株式会社 伺服控制装置
JP2015051469A (ja) * 2013-09-05 2015-03-19 キヤノン株式会社 ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
CN106416027A (zh) * 2014-06-02 2017-02-15 Ats自动化加工系统公司 具有动力曲线轨道区段的线性马达系统
CN106826829A (zh) * 2017-02-22 2017-06-13 武汉工程大学 一种可控误差的工业机器人光顺运动轨迹生成方法

Also Published As

Publication number Publication date
EP3709117A4 (en) 2021-07-28
US20200285689A1 (en) 2020-09-10
JP6816704B2 (ja) 2021-01-20
WO2019093246A1 (ja) 2019-05-16
EP3709117A1 (en) 2020-09-16
US11494465B2 (en) 2022-11-08
CN111052029A (zh) 2020-04-21
JP2019087128A (ja) 2019-06-06

Similar Documents

Publication Publication Date Title
CN106873506B (zh) 校正装置、校正装置的控制方法、信息处理程序及记录介质
Sencer et al. High speed cornering strategy with confined contour error and vibration suppression for CNC machine tools
JP5328798B2 (ja) 運動制御システムにおいて終了条件を満たす方法およびシステム
US10386794B2 (en) Control device, storage medium, and control system by creating internal model of control target
JP2004288164A (ja) 同期制御装置
JP5312670B2 (ja) 指令生成装置
WO2017094424A1 (ja) 制御装置
JP2006215807A (ja) ロボット制御装置および制御方法
CN111052029B (zh) 指令值插值装置和伺服驱动器
CN109313429A (zh) S型速度规划方法、装置、系统、机器人以及数控机床
CN104238464A (zh) 具有在倍率变化时平缓地变更进给速度的功能的数值控制装置
WO2019092852A1 (ja) サーボ制御装置
US9684616B2 (en) Motor control apparatus and motor control method
KR100842978B1 (ko) 서보 제어방법
JP4623292B2 (ja) デジタルサーボ制御装置
JP6087262B2 (ja) 数値制御装置
CN109067288B (zh) 一种基于电流环的电机控制方法及装置
JP6519405B2 (ja) モータ制御装置
JP2000020104A (ja) 速度制御ゲイン調整方法および装置
JP5841795B2 (ja) Pid制御装置
JP2007034729A (ja) デジタルサーボ制御装置
RU2568523C1 (ru) Способ автоматического регулирования с реверсивным исполнительным механизмом
Torres-Camacho et al. Computationally-efficient algorithm for applying motion-controlled kinematics in stepper motors
WO2020162202A1 (ja) 制御装置および制御プログラム
Jahanpour et al. Contour following using C2 PH quintic spline curve interpolators

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant