具备前馈控制的电动机控制装置制造方法

文档序号:7385852阅读:248来源:国知局
具备前馈控制的电动机控制装置制造方法
【专利摘要】本发明提供一种具备前馈控制的电动机控制装置(1),其控制对控制对象(200)进行驱动的电动机。该电动机控制装置(1)具备:速度反馈控制单元(11),其生成用于进行控制使得控制对象(200)的实际速度跟随所输入的速度指令的修正前转矩指令;逆模型计算单元(12),其使用速度指令和修正前转矩指令,计算控制对象(200)具有的传递函数的逆模型;转矩修正值生成单元(13),其使用速度指令和逆模型,生成转矩修正值;转矩指令生成单元(14),其使用修正前转矩指令和转矩修正值,生成针对驱动控制对象(200)的电动机的转矩指令。
【专利说明】具备前馈控制的电动机控制装置

【技术领域】
[0001]本发明涉及一种对作为机器人、机床或工业机械等机械的驱动源而使用的电动机进行控制的电动机控制装置。

【背景技术】
[0002]在对作为机器人、机床或工业机械等机械的驱动源而使用的电动机进行控制的电动机控制装置中,为了使被旋转驱动的电动机单体、将电动机作为驱动源而联动地进行动作的机械(还存在包含该机械所作用的工件等附属物的情况)等控制对象(以下简称为“控制对象”)按照指令进行动作,而设置反馈控制。在反馈控制中,存在使控制对象的速度跟随速度指令的速度反馈控制、使控制对象的位置跟随位置指令的位置反馈控制等。
[0003]另外,已知为了实现对指令更高的响应性,以对反馈控制进行附加的形式设置了前馈控制。在对指令的前馈控制中,存在为了提高对速度指令的响应性而对速度反馈控制附加的速度前馈控制、为了提高对位置指令的响应性而对位置反馈控制附加的位置前馈控制等。
[0004]图9是表示具有反馈控制和前馈控制的现有一般的电动机控制装置的模块线图。以后,假设在不同的附图中附加了相同的参照符号的部分表示具有相同功能的构成要素。在此,说明通过电动机控制装置100对控制对象200的动作进行控制的情况。
[0005]作为控制对象200的例子,如上述那样,有电动机单体、电动机以及将该电动机作为驱动源而联动地进行动作的机械(还存在包含该机械所作用的工件等附属物的情况)等。在此,作为一个例子,将控制对象200的电动机转矩常数设为Kt,将电动机惯量设为J,将摩擦系数设为C。另外,用s表示微分算子。用“Kt/(Js+C)”表示控制对象200的传递函数。
[0006]控制器101执行使控制对象200的实际的速度(以下也称为“实际速度”)跟随速度指令的速度反馈控制。向控制器101输入从控制对象200反馈的速度与速度指令之间的偏差,输出转矩指令。通过PI控制、PID控制来实现控制器101,例如,如图9所示,在通过PI控制实现的情况下,如果将积分增益设为K1,将比例增益设为K2,则用“K/s+K/’来表示控制器101的传递函数。
[0007]为了实现对速度指令的高响应性的控制,将速度前馈(VFF)控制模块104的传递函数设定为控制对象200的传递函数即“Kt/(Js+C)”的反函数即“(js+c)/Kt”。在此,在将控制器101、速度前馈控制模块104、以及控制对象200组合为一个系统(以下称为“速度控制系统”)的情况下,速度控制系统的输入是“速度指令”,可以将速度控制系统的输入看作从控制对象200反馈的“控制对象200的实际的速度”。如果将速度前馈控制模块104的传递函数设计为控制对象200的传递函数的反函数(在非线性的情况下为逆模型),则速度控制系统的传递函数为“1”,因此能够实现对速度指令的高响应性。
[0008]另外,在图9所示的例子中,将使控制对象200的位置跟随位置指令的位置反馈控制的位置增益模块102的位置增益设为Kp。对用积分模块103对控制对象200的速度进行积分所得的位置和位置指令之间的偏差乘以位置增益Kp,来用作上述速度指令的一部分。此外,用“ι/s”表示积分模块103的传递函数。
[0009]在将传递函数为“I”的速度控制系统、位置增益102、传递函数为“Ι/s”的积分增益模块103、以及位置前馈(PFF)模块105组合为一个系统(以下称为“位置控制系统”)的情况下,位置控制系统的输入是“位置指令”,可以将位置控制系统的输出看作从控制对象200反馈的“控制对象200的实际的位置”。如上述那样,由控制器101、速度前馈控制模块104、以及控制对象200构成的速度控制系统的传递函数是“1”,因此如果将位置前馈控制模块105的传递函数设计为积分增益模块103的传递函数即“Ι/s”的反函数“S”,则对于位置控制系统,传递函数也为“ 1”,因此能够实现对位置控制系统的高响应性。
[0010]另外,如果能够如上述那样使速度控制系统的传递函数为“1”,则将位置前馈控制模块105的传递函数设计为积分增益模块103的传递函数即“Ι/s”的反函数“s”即可,因此容易设计位置前馈控制模块105。因此,在设计电动机控制装置100的速度前馈控制模块104和位置前馈控制模块105时,需要与控制对象200的各种常数有关的详细信息。
[0011]一般,在机器人、机床、或工业机械等机械中,有时难以详细地掌握控制对象的惯量、摩擦等的各种常数,例如对于在机器人、工业机械等中安装在机械上的附属物、通过机床加工的对象物,如果其大小、重量等变动,则惯量、摩擦变动。另外,随着机械的经年变化,摩擦等的常数也变化。另外,根据被电动机驱动的被驱动体的位置,摩擦等的常数也变动。并且,有时惯量还根据被驱动体的位置而发生变动。
[0012]为了即使控制对象的各种常数未知或不确定也要实现高响应性,目前已知通过自适应控制来求出前馈控制的参数的方法。
[0013]例如,如日本特开平3-242703号公报所记载的那样,有以下的方法,即在驱动机械臂的电动机中,对应于机械臂的运动其惯量很大地变动,因此为了即使惯量很大地变动也要实现高的指令响应性,通过最速下降法的算法自适应地求出位置前馈控制的参数使得位置偏差减小。
[0014]另外,例如在日本特开2008-171165号公报中记载的那样,有以下的方法,即自适应地确定因惯量以及重力对控制对象的影响而产生的转矩偏移量,使用该转矩偏移量修正转矩指令来执行前馈控制,由此与包含依赖于旋转角而进行变动的负载的控制对象对应地输出最佳的转矩指令。
[0015]如果如上述那样进行设计使电动机控制装置的速度前馈控制的传递函数成为控制对象的逆模型,则能够实现对速度指令的高响应性。如果能够最佳地设计速度前馈控制的传递函数,则响应性高的位置前馈控制的设计变得比较容易。因此,在速度前馈控制的设计时,确实地掌握与控制对象的各种常数有关的详细信息非常重要。
[0016]但是,在设计电动机控制装置的前馈控制时,在由于某种原因而无法确实地掌握控制对象的各种常数的情况下,完成的前馈控制并不一定是最优的,不能说实现了对指令的高响应性。
[0017]特别在电动机控制装置所驱动的控制对象的惯量和摩擦发生变动的情况下,得到与控制对象的各种常数有关的详细信息非常难,难以提高电动机控制装置对指令的响应性。
[0018]例如,日本特开平3-242703号公报和日本特开2008-171165号公报所记载的发明通过自适应控制求出与控制对象具有的惯量有关的参数来进行前馈控制,但并没有考虑到与控制对象具有的摩擦有关的参数。因此,在日本特开平3-242703号公报和日本特开2008-171165号公报所记载的发明中,能够应对惯量变动的控制对象,但存在无法针对摩擦变动的控制对象进行最佳的前馈控制的问题。


【发明内容】

[0019]本发明的目的在于提供一种电动机控制装置,其具备即使不详细地掌握控制对象的各种常数也能够容易地进行最优设计的,对指令的响应性高的前馈控制。
[0020]另外,本发明另一个目的在于提供一种电动机控制装置,其具备即使控制对象具有的惯量和摩擦变动,对指令的响应性高的前馈控制。
[0021]电动机控制装置控制用于驱动控制对象的电动机,该电动机控制装置具备:速度反馈控制单元,其生成用于进行控制以使控制对象的实际速度跟随所输入的速度指令的修正前转矩指令;逆模型计算单元,其使用速度指令和修正前转矩指令,计算控制对象具有的传递函数的逆模型的系数;转矩修正值生成单元,其使用速度指令和逆模型的系数,生成转矩修正值;转矩指令生成单元,其使用修正前转矩指令和转矩修正值,生成针对驱动控制对象的电动机的转矩指令。
[0022]逆模型计算单元可以具备:系数修正值计算单元,其使用速度指令、修正前转矩指令、预定的适应系数,计算系数修正值;惯量系数推定值计算单元,其使用系数修正值、惯量系数推定值,计算新的惯量系数推定值;粘性摩擦系数推定值计算单元,其使用系数修正值、粘性摩擦系数推定值,计算新的粘性摩擦系数推定值;库伦摩擦系数推定值计算单元,其使用系数修正值、库伦摩擦系数推定值,计算新的库伦摩擦系数推定值,使用新的惯量系数推定值、新的粘性摩擦系数推定值、以及新的库伦摩擦系数推定值,在每个采样期间计算逆模型的系数。
[0023]另外,上述逆模型计算单元可以在速度指令的绝对值比预定的值小时,维持在输入该速度指令的采样期间之前的采样期间中计算出的逆模型的系数,将其输出到转矩修正值生成单元。
[0024]另外,转矩修正值生成单元将根据速度指令计算出的加速度和用于推定控制对象所具有的惯量的惯量系数推定值的积、速度指令和用于推定该控制对象所具有的粘性摩擦系数的粘性摩擦系数推定值的积、以及速度指令的极性和用于推定该控制对象所具有的库伦摩擦系数的库伦摩擦系数推定值的积相加,由此生成上述转矩修正值。

【专利附图】

【附图说明】
[0025]通过参照以下的附图,能够更明确地理解本发明。
[0026]图1是表示第一实施例的电动机控制装置的模块线图。
[0027]图2是表示第一实施例的电动机控制装置的逆模型计算单元的框图。
[0028]图3是表示第一实施例的电动机控制装置的动作流程的流程图。
[0029]图4是表示第一实施例的电动机控制装置的模拟结果(之一)的图。
[0030]图5A是表示第一实施例的电动机控制装置的模拟结果(之二)的图,表示使使用了逆模型的速度前馈控制无效的情况。
[0031]图5B是表示第一实施例的电动机控制装置的模拟结果(之二)的图,表示使使用了逆模型的速度前馈控制发挥功能的情况。
[0032]图6是示例电动机控制装置的控制对象的非线性摩擦所引起的斯特里贝克效应(stribeck effect)的图。
[0033]图7A是表示第一实施例的变形例的电动机控制装置的模拟结果的图,表示不设置死区的情况。
[0034]图7B是表示第一实施例的变形例的电动机控制装置的模拟结果的图,表示设置了死区的情况。
[0035]图8是表示第二实施例的电动机控制装置的模块线图。
[0036]图9是表示具有反馈控制和前馈控制的现有一般的电动机控制装置的模块线图。

【具体实施方式】
[0037]以下,参照附图,说明具备前馈控制的电动机控制装置。但是,应该理解本发明并不限于附图或以下说明的实施方式。
[0038]电动机控制装置所驱动的控制对象包括电动机、包含该电动机和以该电动机作为驱动源联动地进行动作的机械的控制对象、或者包含该机械和该机械所作用的工件等附属物的控制对象等。因此,如果适当地将它们置换并读作以下说明的“控制对象”,则能够理解本发明能够应用于各种用途。此外,在与电动机控制装置驱动控制的电动机联动地进行动作的机械中,有机器人、机床、或工业机械等。此外,用其大小(标量)和极性(向量)规定以下说明的速度指令、转矩指令、位置指令、修正前转矩指令、修正前速度指令。
[0039]图1是表示第一实施例的电动机控制装置的模块线图。根据第一实施例,对驱动控制对象200的电动机进行控制的电动机控制装置I具备:速度反馈控制单元11、逆模型计算单元12、转矩修正值生成单元13、转矩指令生成单元14。在图示的例子中,将控制对象200的电动机转矩常数设为Kt,将电动机惯量设为J,将摩擦系数设为C,另外,将微分算子设为S,用“Kt/(Js+C) ”表示控制对象200的传递函数。对控制对象200产生影响的重力也具有非线性特性,因此控制对象200的传递函数也可以考虑重力的影响。
[0040]速度反馈控制单元11生成用于进行控制使得控制对象200的实际的速度跟随所输入的速度指令的修正前转矩指令。具体地说,向速度反馈控制单元11中包含的控制器101输入从控制对象200反馈的实际速度和速度指令之间的偏差,生成修正前转矩指令并输出,由此进行速度反馈控制,使控制对象200的实际的速度跟随速度指令。通过PI控制或PID控制来实现控制器101,例如,如图1所示在通过PI控制来实现的情况下,如果将积分增益设为K1,将比例增益设为K2,则用“K1/S+K2”来表示控制器101的传递函数。
[0041]逆模型计算单元12使用速度指令和修正前转矩指令,计算控制对象200所具有的传递函数的逆模型的系数。将在后面详细说明逆模型。
[0042]转矩修正值生成单元13使用速度指令和通过逆模型计算单元12计算出的逆模型的系数,生成转矩修正值。将在后面详细说明转矩修正值。
[0043]转矩指令生成单元14使用修正前转矩指令和转矩修正值,生成针对用于驱动控制对象200的电动机的转矩指令。把生成的转矩指令用于控制输出电动机的驱动电力的电力变换器(未图示)。例如,在电力变换器由通过设置在内部的半导体开关元件的开关动作将直流电力变换为交流电力的PWM逆变器构成的情况下,根据生成的转矩指令,生成用于控制PWM逆变器内的半导体开关元件的开关动作的PWM开关信号。PWM逆变器根据接收到的PWM开关信号,使内部的半导体开关元件进行开关动作,将直流电力变换为交流电力后输出到电动机。电动机将从电力变换器输出的交流电力作为驱动电力来进行动作,因此如果控制从电力变换器输出的交流电力,则能够以按照希望的速度、转矩、或电动机内的转子的位置进行动作的方式使电动机动作,结果,能够使包含该电动机作为驱动源的机器人、机床、或工业机械等机械动作。
[0044]接着,说明生成逆模型的逆模型计算单元12、生成转矩修正值的转矩修正值生成单元13、以及生成转矩指令的转矩指令生成单元14的各动作。
[0045]逆模型计算单元12推定包含惯量和摩擦的控制对象200的传递函数的逆模型的系数。在本实施例中,列举以库伦摩擦为代表的具有非线性特性的摩擦为例子。因此,如式I那样,表示图1所示的控制对象200的传递函数“Kt/(Js+C)”的摩擦C。在式I中,将ω⑴设为电动机的速度,将C1设为粘性摩擦系数,将C2设为库伦摩擦系数。另外,“sign O ”是与“O”内的函数有关的符号函数,即“sign(?(t))”表示电动机的速度《⑴的极性。
[0046]C (t) = C1.ω (t) +C2.sign (ω (t)).....(I)
[0047]如式2那样定义包含非线性摩擦的I惯性系统的控制对象200的逆模型。此外,对于速度反馈控制和速度前馈控制,在实际的装置中设想以预定的采样周期进行数字控制,在式2中用离散系统表示。在式2中,将i (η)设为逆模型,将ω (η)设为电动机的速度,将J设为控制对象200的惯量,将Kt设为控制对象200的电动机转矩常数,将T设为采样周期,将η设为I采样周期的采样数据的个数。
[0048]
i (η) = —~-(ω (η)-ω (η-1)) + —-ω (η) + —-sign (ω (η)).?…(2 )
JfI/U.IΛ t
[0049]在速度前馈控制中利用通过式2定义的逆模型。即,依照通过式2定义的逆模型,转矩修正值生成单元13生成转矩修正值。具体地说,逆模型计算单元12 (确定器)使用包含在速度反馈控制单元11中的控制器101的输出即修正前转矩指令和速度指令,逐次推定通过式2定义的逆模型的系数。转矩指令修正值生成单元13使用速度指令以及通过逆模型计算单元12推定出的逆模型的系数,生成转矩修正值。然后,转矩指令生成单元14使用通过转矩指令修正值生成单元13生成的转矩修正值对从控制器101输出的修正前转矩指令进行修正,生成针对驱动控制对象200的电动机的转矩指令。这样,与通过逆模型计算单元12逐次推定的逆模型的系数对应地,通过转矩修正值生成单元13逐次生成转矩修正值,使用该转矩修正值逐次修正作为控制器101的输出的修正前转矩指令,因此实现了能够与控制对象200的惯量和摩擦的变动对应的速度前馈控制。
[0050]为了将作为逆模型的定义式的式2用于转矩修正值生成单元13的转矩修正值的生成处理,如式3那样进行简化。在式3中,将iff(n)设为转矩修正值,将ω (η)设为速度指令,将J设为控制对象200的惯量,将Kt设为控制对象200的电动机转矩常数,将T设为采样周期,将η设为I个采样周期中的采样数据的个数,将Cl设为控制对象200的粘性摩擦系数,将C2设为控制对象200的库伦摩擦系数。另外,“sign O ”是与“ O ”内的函数有关的符号函数,即“sign(? (η))”表示速度指令ω (η)的极性。
[0051]iff (η) = h。.V0 (n).V1 (n) +h2.V2 (η).....(3)
[0052]在此,
[0053]h0 = J/ (Kt.Τ),Ii1 = C1At, h2 = C2/Kt,
[0054]V0 = ω (η) - ω (η-1), V1 = ω (η), V2 = sign (ω (η))
[0055]根据式3可知,转矩修正值生成单元13将根据速度指令ω(η)计算出的加速度ν0(= ω(η) - ω (η— I))和用于控制对象200具有的惯量J的推定的惯量系数推定值%的积% X&、速度指令Vl ( = ω (η))和用于控制对象200所具有的粘性摩擦系数C1的推定的粘性摩擦系数推定值Ii1的积V1 Xh1、速度指令的极性v2( = sign(co (η)))和用于控制对象200所具有的库伦摩擦系数C2的推定的库伦摩擦系数推定值匕的积V2 Xh2进行相加,由此生成转矩修正值iff(n)。
[0056]为了修正控制器101输出的修正前转矩指令,使用式3所示的转矩修正值iff (η)。即,转矩指令生成单元14将从控制器101输出的修正前转矩指令和转矩指令修正值生成单元13生成的转矩修正值相加,生成对驱动控制对象200的电动机的转矩指令。在此,在转矩修正值成为最佳的值的情况下,速度指令和实际的速度之间的偏差变为零(O),因此从控制器101输出的修正前转矩指令变为零(O)。因此,这时转矩修正值是转矩指令本身。
[0057]接着,说明逆模型计算单元12的逆模型的系数的推定算法。在第一实施例中,作为逆模型的系数的推定算法,使用稳定性、推定速度优良的逐次最小二乘法。作为其代替例子,也可以将最速下降法用于推定算法。
[0058]在根据η个采样数据使用最小二乘法来推定式3的惯量系数推定值h0、粘性摩擦系数推定值4、以及库伦摩擦系数推定值h3时使用的推定式如式4那样。此外,在式4中,在本实施例中是Iic^h1、以及h3,因此m = 3。
[0059]i = Vh+e......(4)
[0060]i:n个转矩修正值向量,h:m次的逆模型的系数向量,
[0061]V:nXm的速度指令的矩阵,e:n个误差向量
[0062]式4中的误差向量表示作为来自控制器101的输出的修正前转矩指令。如式5那样设置该误差向量的评价函数。在式5中附加了 “T”的矩阵表示转置矩阵。
[0063]S (h) = eTe = (i~Vh)T (i~Vh).....(5)
[0064]将使误差向量为零向量作为目标,因此使评价函数为最小的必要条件成为式6。
[0065]—— = —2¥^*(i—¥h) = O,,.*.(β)
m
[0066]如果对式6进行整理,则最小二乘法的推定式成为式7那样。
[0067]hf= (VTV)_1VT1.....(7)
[0068]如果为了变换为逐次最小二乘法而定义为观测值处于时刻N,则能够如式8那样对式7进行变换。
[0069]hf= (VntVn)^1VntIn.....⑶
[0070]为了变换为逐次最小二乘法,定义以下的式9。
[0071]Pn= (VntVn)
[0072]P;1 = ΡΝ_Γ1+νΝνΝτ.....(9)
[0073]其中,vN是矩阵V中的N时刻的m次的向量
[0074]如果将式9代入到式8中,则得到式10所示的递归式。
[0075]iB =hw + PNvN(iN -VktSm).....(10)
[0076]如果为了避免式10的逆矩阵的计算,将逆矩阵的辅助定理(matrix invers1nlemma:矩阵求逆引理)应用于式10,则得到式11。
[0077]Pw =Pw.….(H)

I + vN Pff-1vN
[0078]使用单位矩阵和适应系数α,通过式12表示式11的初始值。在式12中,与电动机控制装置I的应用状态对应地适当地设定适应系数α。
[0079]P0 = α 1.....(12)
[0080]逆模型计算单元12使用式11和式12计算式10的递归式,由此计算式3所示的逆模型的系数。
[0081]图2是表示第一实施例的电动机控制装置的逆模型计算单元的框图。
[0082]计算式3所示的逆模型的系数的逆模型计算单元12具备系数修正值计算单元31、惯量系数推定值计算单元32、粘性摩擦系数推定值计算单元33、库伦摩擦系数推定值计算单元34。
[0083]系数修正值计算单元31使用在每个采样期间输入的速度指令、在输入该速度指令的采样期间之前的采样期间生成的修正前转矩指令、预定的适应系数α,来计算系数修正值。
[0084]惯量系数推定值计算单元32使用系数修正值计算单元31计算出的系数修正值、在计算出该系数修正值的采样期间之前的采样期间中计算出并存储在暂时存储单元35中的惯量系数推定值,计算新的惯量系数推定值。把惯量系数推定值计算单元32计算出的新的惯量系数推定值输出到加法器38,并且为了在下一个采样周期用于惯量系数推定值计算单元32的计算处理,而存储在暂时存储单元35中。
[0085]粘性摩擦系数推定值计算单元33使用系数修正值计算单元31计算出的系数修正值、在计算出该系数修正值的采样期间之前的采样期间中计算出并存储在暂时存储单元36中的粘性摩擦系数推定值,计算新的粘性摩擦系数推定值。把粘性摩擦系数推定值计算单元33计算出的新的粘性摩擦系数推定值输出到加法器38,并且为了在下一个采样周期中用于粘性摩擦系数推定值计算单元33的计算处理,而存储在暂时存储单元36中。
[0086]库伦摩擦系数推定值计算单元34使用系数修正值计算单元31计算出的系数修正值、在计算出该系数修正值的采样期间之前的采样期间中计算出并存储在暂时存储单元37中的库伦摩擦系数推定值,计算新的库伦摩擦系数推定值。把库伦摩擦系数推定值计算单元34计算出的新的库伦摩擦系数推定值输出到加法器38,并且为了在下一个采样周期中用于库伦摩擦系数推定值计算单元34的计算处理,而存储在暂时存储单元37中。
[0087]通过加法器38将上述新的惯量系数推定值、上述新的粘性摩擦系数推定值、上述新的库伦摩擦系数推定值相加,生成逆模型。将生成的逆模型的系数输出到转矩修正值生成单元13。另一方面,把存储在暂时存储单元35中的惯量系数推定值、存储在暂时存储单元36中的粘性摩擦系数推定值以及存储在暂时存储单元37中的库伦摩擦系数推定值用于下一个采样期间的逆模型的计算。
[0088]在每个采样期间执行上述各单元31?38的处理。
[0089]图3是表示第一实施例的电动机控制装置的动作流程的流程图。在每个采样周期执行步骤SlOl?S107的处理。此外,以下的步骤SlOl?S107的处理的执行顺序是一个例子,也可以在没有矛盾的范围内适当地替换执行各处理。
[0090]首先,在步骤SlOl中,电动机控制装置I取得本次的采样期间的速度指令和从控制对象200反馈的实际的速度。
[0091]接着,在步骤S102中,逆模型计算单元12取得上次的采样期间的修正前转矩指令和逆模型的系数。更详细地说,逆模型计算单元12内的系数修正值计算单元31取得上次的采样期间的修正前转矩指令。另外,逆模型计算单元12内的惯量系数推定值计算单元32、粘性摩擦系数推定值计算单元33以及库伦摩擦系数推定值计算单元34分别取得上次的采样期间的逆模型的系数(即分别存储在暂时存储单元35?37中的各系数)。
[0092]接着,在步骤S103中,逆模型计算单元12根据本次的采样期间的速度指令、上次的采样期间的修正前转矩以及逆模型的系数,计算新的逆模型的系数。更详细地说,系数修正值计算单元31使用本次的采样期间的速度指令、上次的采样期间的修正前转矩指令、预定的适应系数α,计算系数修正值。另外,惯量系数推定值计算单元32使用系数修正值计算单元31计算出的系数修正值、上次的采样期间的惯量系数推定值,计算新的惯量系数推定值。另外,粘性摩擦系数推定值计算单元33使用系数修正值计算单元31计算出的系数修正值、上次的采样期间的粘性摩擦系数推定值,计算新的粘性摩擦系数推定值。另外,库伦摩擦系数推定值计算单元34使用系数修正值计算单元31计算出的系数修正值、上次的采样期间的库伦摩擦系数推定值,计算新的库伦摩擦系数推定值。
[0093]接着,在步骤S104中,转矩修正值生成单元13根据本次的采样期间的速度指令和通过逆模型计算单元12计算出的逆模型的系数,计算转矩修正值。
[0094]另一方面,在步骤S105中,速度反馈控制单元11内的控制器101针对在步骤SlOl中取得的本次的采样期间的速度指令与从控制对象200反馈的实际的速度的偏差执行PI控制,输出修正前转矩指令。此外,在第一实施例中,作为一个例子对速度反馈控制使用了PI控制,但是例如也可以使用PID控制。
[0095]在步骤S106中,为了将本次的采样期间的修正前转矩指令和逆模型的系数用于下次的采样周期的逆模型的计算,而存储在各存储单元中。更具体地说,将在本次的采样期间中计算出的惯量系数推定值存储在暂时存储单元35中,将在本次的采样期间中计算出的粘性摩擦系数推定值存储在暂时存储单元36中,将在本次的采样期间中计算出的库伦摩擦系数推定值存储在暂时存储单元37中。同样,将在本次的采样期间中计算出的修正前转矩指令也存储在电动机控制装置I内的规定的暂时存储单元中。在下次的采样周期的步骤S102的处理中再次读出这些存储在各存储单元中的各数据,在步骤S103以后的处理中使用。
[0096]在步骤S107中,转矩指令生成单元14将在本次的采样期间中从控制器101输出的修正前转矩指令和通过转矩指令修正值生成单元13生成的转矩修正值相加,生成针对驱动控制对象200的电动机的新的转矩指令。
[0097]如以上说明的那样,根据第一实施例,逆模型计算单元12 (确定器)使用包含在速度反馈控制单元11中的控制器101的输出即修正前转矩指令和速度指令,根据上述递归式,逐次推定考虑了惯量、粘性摩擦、以及库伦摩擦的逆模型的系数,转矩修正值生成单元13使用速度指令、逆模型计算单元12推定出的逆模型的系数,生成转矩修正值。如果最终将推定的逆模型最优化为控制对象200的传递函数的逆模型,则由控制器101、速度前馈控制模块104、以及控制对象200构成的速度控制系统的传递函数成为“1”,因此,能够实现对速度指令的高响应性。另外,将通过逆模型计算单元12 (确定器)推定出的系数直接作为速度前馈的系数而利用,与逐次推定的逆模型对应地逐次变更速度前馈控制的传递函数,因此即使控制对象200所具有的惯量和摩擦变动,也能够对指令具有高响应性。另外,对适应系数α设定初始值,依照上述递归式计算逆模型,因此即使不详细地掌握控制对象200的各种常数,也能够容易地最优设计针对指令响应性高的前馈控制。
[0098]图4是表示第一实施例的电动机控制装置的模拟结果(之一)的图。在计算机上将上述第一实施例的电动机控制装置模型化,在时刻O秒开始5Hz的正弦波状的速度指令的输入,对此后的速度指令和实际的速度之间的偏差进行模拟。如图示那样,在时刻O秒输入了速度指令后,速度指令和实际的速度之间的偏差随着时间的经过逐渐降低,经过I秒左右速度偏差收敛,根据以上的本模拟结果,可知使用了第一实施例的逆模型的速度前馈控制是有效的。
[0099]图5A和图5B是表示第一实施例的电动机控制装置的模拟结果(之二)的图,图5A表示将使用了逆模型的速度前馈控制设为无效的情况,图5B表示使使用了逆模型的速度前馈控制发挥功能的情况。在计算机上将上述的第一实施例的电动机控制装置模型化,关于使用了第一实施例的逆模型的速度前馈控制无效的情况(图5A)和有效的情况(图5B),提供5Hz的正弦波状的速度指令,模拟了速度指令和实际的速度之间的偏差。在将使用了第一实施例1的逆模型的速度前馈控制设为无效的情况下,如图5A所示,速度偏差保持发散,但在将使用了第一实施例1的逆模型的速度前馈控制设为有效的情况下,如图5B所示,速度偏差收敛。根据本模拟结果,也可知使用了第一实施例的逆模型的速度前馈控制是有效的。
[0100]接着,说明第一实施例的变形例。
[0101]如上述那样,控制对象200具有的库伦摩擦具有非线性特性。一般,在非线性摩擦中,具有引起粘滑运动现象的斯特里贝克效应。图6是示例电动机控制装置的控制对象的非线性摩擦所引起的斯特里贝克效应的图。如图6所示,在电动机的速度的过零附近,电动机的摩擦力成为非线性。因此,针对包含该电动机的控制对象而推定出的逆模型有时特别在过零附近具有大的误差。因此,在第一实施例的变形例中,在速度指令Vl(= ω(η))的过零附近设置预定范围的死区,降低斯特里贝克效应的影响。即,逆模型计算单元12在速度指令的绝对值比预定的值σ小时,维持在输入了该速度指令的采样期间之前的采样期间中计算出的逆模型,将其输出到转矩修正值生成单元13。在该情况下,在将死区宽度设为σ时,如式13那样表示上述式10。
[0102]|v,|>0 hK = + PllVftCiit -v/h^)
IlΛΛ
[0103]|ν!|<σ....(13)
[0104]如式13所示,在速度指令V1的绝对值比死区宽度σ小时,逆模型计算单元12不更新逆模型的系数而维持它,输出到转矩修正值生成单元13。另一方面,在速度指令V1的绝对值为死区宽度σ以上时,逆模型计算单元12依照式10的式子计算新的逆模型,将其输出到转矩修正值生成单元13。在图6所示的例子中,例如将死区宽度σ设定为5(rad/s)即可。
[0105]图7A和图7B是表示第一实施例的变形例的电动机控制装置的模拟结果的图,图7A表示不设置死区的情况,图7B表示设置了死区的情况。在计算机上将上述第一实施例的变形例的电动机控制装置模型化,在时刻O秒开始M序列速度指令的输入,对此后的逆模型的系数即惯量系数推定值h0、粘性摩擦系数推定值h1、以及库伦摩擦系数推定值h2进行模拟。在图7A和图7B中,纵轴表示将真值设为I进行标准化时的各系数的大小。在设置了死区的情况下(图7B),与不设置死区的情况(图7A)相比,到逆模型的各系数收敛为真值为止的时间短。另外,在不设置死区的情况下,保持恒定的误差而不收敛为真值。根据本模拟结果,还可知使用了第一实施例的变形例的设置了死区的逆模型的速度前馈控制更加有效。
[0106]接着,说明第二实施例。第二实施例向第一实施例的速度控制追加了位置控制。
[0107]图8是表示第二实施例的电动机控制装置的模块线图,第二实施例的电动机控制装置2向参照图1的第一实施例的电动机控制装置I追加了包含位置增益模块102的位置反馈控制单元21、积分模块22、以及位置前馈控制模块23。此外,对于除此以外的电路构成要素,与图1所示的电路构成要素相同,因此向相同的电路构成要素赋予相同符号,省略与该电路构成要素有关的详细说明。
[0108]根据第二实施例,位置反馈控制单元21生成用于进行控制使得控制对象200的实际的位置跟随所输入的位置指令的修正前速度指令并输出。在图8中,将位置反馈控制单元21的位置增益模块102的位置增益设为Kp。将通过积分模块103对控制对象200的速度进行积分所得的位置和位置指令之间的偏差乘以位置增益Kp,生成修正前速度指令。此夕卜,用“Ι/s”表示积分模块103的传递函数。
[0109]将位置前馈控制模块23的传递函数设定为积分模块103的传递函数“Ι/s”的反函数,即“S”。即,位置前馈控制模块23对输入的位置指令进行微分。如在第一实施例中说明的那样,在速度前馈控制中,通过逆模型计算单元12计算逆模型,通过转矩修正值生成单元13生成转矩修正值。如果最终将推定的逆模型最优化为控制对象200的传递函数的逆模型,则在第一实施例中说明的速度控制系统的传递函数成为“1”,因此,能够实现对速度指令的高响应性。如果速度控制系统的传递函数是“1”,另外如果将位置前馈控制模块105的传递函数设计为积分增益模块103的传递函数“Ι/s”的反函数“S”,则关于位置控制系统,传递函数成为“ 1”,因此能够容易地实现对位置控制系统的高响应性。
[0110]此外,在上述第二实施例中,也可以与第一实施例的变形同样地,在速度指令的过零附近设置预定的范围的死区,降低斯特里贝克效应的影响。
[0111]本发明能够应用于以下的电动机控制装置,该电动机控制装置具备用于使作为机器人、机床或工业机械等机械的驱动源而使用的电动机按照指令进行动作的反馈控制和用于提高对指令的响应性的前馈控制。
[0112]根据本发明,即使不详细地掌握控制对象的各种常数,也能够容易地最优设计具有对指令的响应性高的前馈控制的电动机控制装置。即,依照规定的递归式计算控制对象的传递函数的逆模型,因此即使不详细地掌握控制对象的各种常数,也能够容易地最优设计对指令的响应性高的前馈控制。
[0113]另外,能够实现具备即使控制对象所具有的惯量和摩擦变动,对指令具有高响应性的前馈控制的电动机控制装置。即,逐次推定控制对象的传递函数的逆模型,与该推定结果对应地逐次变更速度前馈控制的传递函数,因此即使控制对象所具有的惯量和摩擦变动,也能够针对指令具有高响应性。能够将逆模型计算单元(确定器)推定出的系数直接作为速度前馈的系数来利用,因此,即使控制对象的惯量和非线性摩擦变动,也能够针对指令具有高响应性。
[0114]另外,如果在对输入的速度指令设置了死区的基础上执行本发明的处理,能够降低非线性摩擦所具有的斯特里贝克效应的影响。
【权利要求】
1.一种电动机控制装置(I),其控制用于驱动控制对象(200)的电动机,该电动机控制装置(I)的特征在于,具备: 速度反馈控制单元(11),其生成用于进行控制以使控制对象(200)的实际速度跟随所输入的速度指令的修正前转矩指令; 逆模型计算单元(12),其使用上述速度指令和上述修正前转矩指令,计算控制对象(200)具有的传递函数的逆模型的系数; 转矩修正值生成单元(13),其使用上述速度指令和上述逆模型的系数,生成转矩修正值; 转矩指令生成单元(14),其使用上述修正前转矩指令和上述转矩修正值,生成针对驱动控制对象(200)的电动机的转矩指令。
2.根据权利要求1所述的电动机控制装置(I),其特征在于, 上述逆模型计算单元(12)具备: 系数修正值计算单元(31),其使用上述速度指令、上述修正前转矩指令、预定的适应系数,计算系数修正值; 惯量系数推定值计算单元(32),其使用上述系数修正值、惯量系数推定值,计算新的惯量系数推定值; 粘性摩擦系数推定值计算单元(33),其使用上述系数修正值、粘性摩擦系数推定值,计算新的粘性摩擦系数推定值; 库伦摩擦系数推定值计算单元(34),其使用上述系数修正值、库伦摩擦系数推定值,计算新的库伦摩擦系数推定值, 使用上述新的惯量系数推定值、上述新的粘性摩擦系数推定值、以及上述新的库伦摩擦系数推定值,在每个采样期间计算上述逆模型的系数。
3.根据权利要求1或2所述的电动机控制装置(I),其特征在于, 上述逆模型计算单元(12)在上述速度指令的绝对值比预定的值小时,维持在输入该速度指令的采样期间之前的采样期间中计算出的上述逆模型的系数,将其输出到上述转矩修正值生成单元(13)。
4.根据权利要求1至3的任意一项所述的电动机控制装置(I),其特征在于, 上述转矩修正值生成单元(13)将根据上述速度指令计算出的加速度和用于推定控制对象(200)所具有的惯量的惯量系数推定值的积、上述速度指令和用于推定该控制对象(200)所具有的粘性摩擦系数的粘性摩擦系数推定值的积、以及上述速度指令的极性和用于推定该控制对象(200)所具有的库伦摩擦系数的库伦摩擦系数推定值的积相加,由此生成上述转矩修正值。
【文档编号】H02P23/14GK104283484SQ201410321091
【公开日】2015年1月14日 申请日期:2014年7月7日 优先权日:2013年7月5日
【发明者】园田直人 申请人:发那科株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1