首页 / 专利库 / 人工智能 / 人工智能 / 机器学习 / 输出装置、控制装置、以及学习参数的输出方法

输出装置、控制装置、以及学习参数的输出方法

阅读:930发布:2020-05-11

专利汇可以提供输出装置、控制装置、以及学习参数的输出方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种输出装置、控制装置、以及学习参数的输出方法,取得 机器学习 中或机器学习后的参数,将该参数变换为用户容易理解的信息来进行输出。输出装置具有:信息取得部,其从对控制伺服 电动机 的伺服控制装置进行机器学习的机器学习装置中,取得学习中或学习后的伺服控制装置的结构要素的参数或第一物理量,所述伺服电动机用于驱动机床、 机器人 或工业机械的轴;输出部,其输出以下中的至少一个:所取得的第一物理量和根据所取得的参数而求出的第二物理量中的某一个物理量、伺服控制装置的结构要素的时间响应特性、以及伺服控制装置的结构要素的 频率 响应特性,使用参数、第一物理量或第二物理量来求出时间响应特性以及频率响应特性。,下面是输出装置、控制装置、以及学习参数的输出方法专利的具体信息内容。

1.一种输出装置,其特征在于,
所述输出装置具有:
信息取得部,其从对控制伺服电动机的伺服控制装置进行机器学习的机器学习装置中,取得学习中或学习后的所述伺服控制装置的结构要素的参数或第一物理量,其中,所述伺服电动机用于驱动机床、机器人或工业机械的轴;以及
输出部,其输出以下中的至少一个:所取得的所述第一物理量和根据所取得的所述参数而求出的第二物理量中的某一个物理量、所述伺服控制装置的结构要素的时间响应特性、以及所述伺服控制装置的结构要素的频率响应特性,
使用所述参数、所述第一物理量或所述第二物理量来求出所述时间响应特性以及所述频率响应特性。
2.根据权利要求1所述的输出装置,其特征在于,
所述输出部包含:显示部,其将所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性显示于显示画面。
3.根据权利要求1或2所述的输出装置,其特征在于,
所述输出装置指示所述伺服控制装置基于所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性来调整所述伺服控制装置的结构要素的参数或第一物理量。
4.根据权利要求1~3中任一项所述的输出装置,其特征在于,
所述输出装置指示所述机器学习装置进行机器学习,该机器学习是通过变更或选择学习范围来基于所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性对所述伺服控制装置的结构要素的参数或第一物理量进行机器学习。
5.根据权利要求1~4中任一项所述的输出装置,其特征在于,
所述输出装置输出所述机器学习装置的学习中使用的评价函数值。
6.根据权利要求1~5中任一项所述的输出装置,其特征在于,
所述输出装置输出从所述伺服控制装置输出的位置偏差相关的信息。
7.根据权利要求1~6中任一项所述的输出装置,其特征在于,
所述伺服控制装置的结构要素的参数是数学公式模型或滤波器的参数。
8.根据权利要求7所述的输出装置,其特征在于,
所述数学公式模型或所述滤波器包含在速度前馈处理部或位置前馈处理部中,所述参数包含滤波器的传递函数的系数。
9.一种控制装置,其特征在于,具有:
权利要求1~8中任一项所述的输出装置;
伺服控制装置,其控制用于驱动机床、机器人或工业机械的轴的伺服电动机;以及机器学习装置,其对伺服控制装置进行机器学习。
10.根据权利要求9所述的控制装置,其特征在于,
所述输出装置包含在所述伺服控制装置和所述机器学习装置中的一个装置之中。
11.一种输出装置的学习参数的输出方法,该学习参数是通过机器学习装置对控制伺服电动机的伺服控制装置进行了机器学习而得的,所述伺服电动机用于驱动机床、机器人或工业机械的轴,其特征在于,
从所述机器学习装置中取得学习中或学习后的所述伺服控制装置的结构要素的参数或第一物理量,
输出以下中的至少一个:所取得的所述第一物理量和根据所取得的所述参数而求出的第二物理量中的某一个物理量、所述伺服控制装置的结构要素的时间响应特性、以及所述伺服控制装置的结构要素的频率响应特性,
使用所述参数、所述第一物理量或所述第二物理量来求出所述时间响应特性以及所述频率响应特性。

说明书全文

输出装置、控制装置、以及学习参数的输出方法

技术领域

[0001] 本发明涉及输出装置、控制装置、以及学习参数的输出方法,特别是涉及从对控制伺服电动机的伺服控制装置进行机器学习的机器学习装置中取得机器学习中或机器学习后的参数(称为学习参数),从该学习参数输出操作员等用户容易理解的信息的输出装置、包含该输出装置的控制装置以及学习参数的输出方法。

背景技术

[0002] 作为本发明相关联的技术,例如在专利文献1中记载了具有输出部的信号变换器,所述输出部通过机器学习单元使用乘法系数模式掌握方法求出目标乘法系数模式,使用该乘法系数模式来进行数字滤波器运算,并显示数字滤波器输出。
[0003] 具体来说,专利文献1公开了如下内容:信号变换器具有信号输入部、运算处理部、以及显示来自运算处理部的输出的输出部,所述运算处理部具有根据输入信号数据将信号数据特征化的功能,运算处理部具有输入文件、学习单元、数字滤波器、参数设定单元,在学习单元中通过机器学习单元使用乘法系数模式掌握方法求出目标乘法系数模式。
[0004] 现有技术文献
[0005] 专利文献1:日本特开平11-31139号公报
[0006] 在专利文献1中,存在如下课题:虽然显示了来自运算处理部的输出,但是并不输出由机器学习单元进行了机器学习后的模式,操作员等用户无法确认机器学习的经过或结果。
[0007] 此外,在通过机器学习装置对控制伺服电动机的伺服控制装置的控制参数进行机器学习时,通常情况下,不显示学习参数以及机器学习装置所使用的评价函数值,因此,用户无法确认机器学习的经过或结果,其中,伺服电动机用于驱动机床、机器人或工业机械的轴。此外,即使显示学习参数或评价函数值,用户也难以理解如何根据学习参数对伺服控制装置的特征进行优化。

发明内容

[0008] 本发明的目的在于提供一种输出装置、包含该输出装置的控制装置、以及学习参数的输出方法,可以取得学习参数,从该学习参数输出操作员等用户容易理解的信息。
[0009] (1)本发明涉及的输出装置(例如,后述的输出装置200、200A、210),具有:
[0010] 信息取得部(例如,后述的信息取得部211),其从对控制伺服电动机(例如,后述的伺服电动机400、410)的伺服控制装置(例如,后述的伺服控制装置300、310)进行机器学习的机器学习装置(例如,后述的机器学习装置100、110)中,取得学习中或学习后的所述伺服控制装置的结构要素的参数或第一物理量,其中,所述伺服电动机用于驱动机床、机器人或工业机械的轴;以及
[0011] 输出部(例如,后述的控制部215和显示部219、控制部215和存储部216),其输出以下中的至少一个:所取得的所述第一物理量和根据所取得的所述参数而求出的第二物理量中的某一个物理量、所述伺服控制装置的结构要素的时间响应特性、以及所述伺服控制装置的结构要素的频率响应特性,
[0012] 使用所述参数、所述第一物理量或所述第二物理量来求出所述时间响应特性以及所述频率响应特性。
[0013] (2)在上述(1)的输出装置中,可以是,所述输出部包含:显示部,其将所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性显示于显示画面。
[0014] (3)在上述(1)或(2)的输出装置中,可以是,所述输出装置指示所述伺服控制装置基于所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性来调整所述伺服控制装置的结构要素的参数或第一物理量。
[0015] (4)在上述(1)~(3)中任一项的输出装置中,可以是,所述输出装置指示所述机器学习装置进行机器学习,该机器学习是通过变更或选择学习范围来基于所述第一物理量、所述第二物理量、所述时间响应特性或所述频率响应特性对所述伺服控制装置的结构要素的参数或第一物理量进行机器学习。
[0016] (5)在上述(1)~(4)中任一项的输出装置中,可以是,所述输出装置输出所述机器学习装置的学习中使用的评价函数值。
[0017] (6)在上述(1)~(5)中任一项的输出装置中,可以是,所述输出装置输出从所述伺服控制装置输出的位置偏差相关的信息。
[0018] (7)在上述(1)~(6)中任一项的输出装置中,可以是,所述伺服控制装置的结构要素的参数是数学公式模型或滤波器的参数。
[0019] (8)在上述(1)~(7)中任一项的输出装置中,可以是,所述数学公式模型或所述滤波器包含在速度前馈处理部或位置前馈处理部中,所述参数包含滤波器的传递函数的系数。
[0020] (9)本发明涉及的控制装置,具有:
[0021] 上述(1)~(8)中任一项所述的输出装置;
[0022] 伺服控制装置,其控制用于驱动机床、机器人或工业机械的轴的伺服电动机;以及[0023] 机器学习装置,其对伺服控制装置进行机器学习。
[0024] (10)在上述(9)的控制装置中,可以是,所述输出装置包含在所述伺服控制装置和所述机器学习装置中的一个装置之中。
[0025] (11)本发明涉及的输出装置的学习参数的输出方法,该学习参数是通过机器学习装置对控制伺服电动机的伺服控制装置进行了机器学习而得的,所述伺服电动机用于驱动机床、机器人或工业机械的轴,
[0026] 从所述机器学习装置中取得学习中或学习后的所述伺服控制装置的结构要素的参数或第一物理量,
[0027] 输出以下中的至少一个:所取得的所述第一物理量和根据所取得的所述参数而求出的第二物理量中的某一个物理量、所述伺服控制装置的结构要素的时间响应特性、以及所述伺服控制装置的结构要素的频率响应特性,
[0028] 使用所述参数、所述第一物理量或所述第二物理量来求出所述时间响应特性以及所述频率响应特性。
[0029] 根据本发明,取得机器学习中或机器学习后的参数,可以将该参数变换为用户容易理解的信息来进行输出。附图说明
[0030] 图1是表示本发明的第一实施方式的控制装置的一结构例的框图
[0031] 图2是表示第一实施例的控制装置的整体结构以及伺服控制装置的结构的框图。
[0032] 图3是表示成为输入信号的速度指令与成为输出信号的检测速度的图。
[0033] 图4是表示输入信号与输出信号的振幅比、以及相位延迟的频率特性的图。
[0034] 图5是表示本发明的第一实施方式的机器学习装置的框图。
[0035] 图6是表示具有不共振的理想特性的伺服控制装置的标准模型的图。
[0036] 图7是表示标准模型的伺服控制装置与学习前和学习后的伺服控制装置的输入输出增益的频率特性的特性图。
[0037] 图8是表示本发明的第一实施例的控制装置所包含的输出装置的一结构例的框图。
[0038] 图9A是表示机器学习中的评价函数值以及评价函数值的最小值推移的特性图以及示出了显示学习中的控制参数值时的显示画面的一例的图。
[0039] 图9B是表示在机器学中根据机器学习的进展状况在显示部显示状态S有关的控制参数的物理量时的显示画面的一例的图。
[0040] 图10是表示本发明的第一实施例的机器学习开始到机器学习结束为止的、以输出装置为中心的控制装置的动作的流程图
[0041] 图11是表示本发明的第二实施例的控制装置的整体结构以及伺服控制装置的结构的框图。
[0042] 图12是表示由学习时的加工程序指定的加工形状是八边形时的图。
[0043] 图13是表示加工形状是八边形的每隔一个置换为圆弧的形状时的图。
[0044] 图14是表示对极和零点的搜索范围进行了表示的复平面的图。
[0045] 图15是速度前馈处理部的频率响应特性图以及表示位置偏差的特性的图。
[0046] 图16是表示本发明的第二实施例的指示机器学习结束之后的输出装置的动作的流程图。
[0047] 图17是改变了中心频率时的速度前馈处理部的频率响应特性图以及表示位置偏差的特性的图。
[0048] 图18是表示由电动机反向特性、陷波滤波器、低通滤波器构成速度前馈处理部时的图。
[0049] 图19是表示本发明的第二实施方式的控制装置的一结构例的框图。
[0050] 图20是表示本发明的第三实施方式的控制装置的一结构例的框图。
[0051] 图21是表示其他结构的控制装置的框图。
[0052] 符号说明
[0053] 10、10A、10B 控制装置
[0054] 100、110 机器学习装置
[0055] 200、200A、210 输出装置
[0056] 211 信息取得部
[0057] 212 信息输出部
[0058] 213 作图部
[0059] 214 操作部
[0060] 215 控制部
[0061] 216 存储部
[0062] 217 信息取得部
[0063] 218 信息输出部
[0064] 219 显示部
[0065] 220 运算部
[0066] 300、310 伺服控制装置
[0067] 400、410 伺服电动机
[0068] 500 调整装置
[0069] 600 网络

具体实施方式

[0070] 以下,使用附图对本发明的实施方式进行详细说明。
[0071] (第一实施方式)
[0072] 图1是表示本发明的第一实施方式的控制装置的一结构例的框图。图1所示的控制装置10具有机器学习装置100、输出装置200、伺服控制装置300以及伺服电动机400。
[0073] 机器学习装置100从输出装置200取得输入到伺服控制装置300的位置指令、速度指令等控制指令以及从伺服控制装置300输出的位置偏差等伺服信息、或从控制指令以及伺服信息中获得的信息(例如,输入输出增益以及相位延迟)等机器学习所使用的信息。在图1中,作为一例而示出了机器学习装置100取得控制指令和伺服信息的示例。此外,机器学习装置100从输出装置200取得由伺服控制装置300输出的数学公式模型的参数或滤波器的参数。机器学习装置100根据输入的信息,对伺服控制装置300的数学公式模型或滤波器的参数进行机器学习,向输出装置200输出数学公式模型或滤波器的学习参数。学习参数例如是设置给伺服控制装置300的陷波滤波器的系数、或速度前馈处理部的系数。在本实施方式中,对机器学习部100进行强化学习进行说明,但是机器学习部100进行的学习并不特别限定于强化学习,例如,本发明也能够应用于进行监督学习的情况。
[0074] 输出装置200取得机器学习装置100的机器学习中或机器学习后的数学公式模型或滤波器的学习参数,从这些学习参数中输出操作员等用户容易理解的表示物理量、时间响应或频率响应的信息。输出方法例如是液晶显示装置的画面显示、使用了打印机等对纸的印刷、对存储器等存储部的存储、经由通信部的外部信号输出等。
[0075] 操作员在数学公式模型或滤波器的学习参数例如是陷波滤波器的系数、速度前馈处理部的系数时,即使观察其自身,也难以掌握陷波滤波器、或速度前馈处理部的特性,此外还难以掌握机器学习装置的学习中如何对特性优化。此外,在机器学习装置100进行强化学习时,可以将用于给予回报的评价函数值输出给输出装置200,但是难以只通过评价函数值掌握如何优化参数。因此,输出装置200输出用户容易理解的表示参数的物理量(例如,中心频率、带宽fw、衰减系数(damping)等)、数学公式模型或滤波器的时间响应或频率响应的信息。这样,输出装置200通过输出用户容易理解的信息,操作员可以容易地理解机器学习的经过以及结果。
[0076] 另外,从机器学习装置110输出的学习参数自身是用户容易理解的物理量时,输出装置输出该信息,在学习参数是用户难以理解的信息时,输出装置变换为用户容易理解的物理量、数学公式模型或滤波器的时间响应或频率响应来进行输出。
[0077] 物理量例如是惯量、质量、粘性、刚性、共振频率、衰减中心频率、衰减率、衰减频率宽度、时间常数、截止频率中的某一个或组合。
[0078] 此外,输出装置200还作为进行机器学习装置100与伺服控制装置300之间的信息(控制指令、控制参数以及伺服信息等)的中继、机器学习装置100和伺服控制装置300的动作控制的调整装置发挥功能。
[0079] 伺服控制装置300根据位置指令、速度指令等控制指令输出电流指令,控制伺服电动机400的旋转。伺服控制装置300例如具有陷波滤波器、或用数学公式模型表示的速度前馈处理部。
[0080] 伺服电动机400例如包含于机床、机器人、工业机械中。控制装置10也可以包含于机床、机器人、工业机械等中。伺服电动机400将检测位置或/和检测速度作为反馈信息输出给伺服控制装置300。
[0081] 以下,根据第一实施例~第四实施例对上述第一实施方式的控制装置的具体结构进行说明。
[0082] <第一实施例>
[0083] 本实施例是机器学习装置110对伺服控制装置310所包含的滤波器的系数进行学习,输出装置210将滤波器的频率响应的推移显示于显示部的示例。
[0084] 图2是表示第一实施例的控制装置的整体结构以及伺服控制装置的结构的框图。
[0085] 控制装置11具有:机器学习装置110、输出装置210、伺服控制装置310、以及伺服电动机410。图2所示的机器学习装置110、输出装置210、伺服控制装置310以及伺服电动机410对应于图1的机器学习装置100、输出装置200、伺服控制装置300以及伺服电动机400。
[0086] 另外,机器学习装置110和输出装置210中的一个或全部也可以设置于伺服控制装置310内。
[0087] 伺服控制装置310作为结构要素而具有减法器311、速度控制部312、滤波器313、电流控制部314以及测量部315。测量部315也可以设置于伺服控制装置310的外部。减法器311、速度控制部312、滤波器313、电流控制部314以及伺服电动机410构成速度反馈环。
[0088] 减法器311求出输入的速度指令与速度反馈后的检测速度之差,将该差作为速度偏差输出给速度控制部312。使频率变化的正弦波信号作为速度指令输入到减法器311和测量部315。使频率变化的正弦波信号从上位装置输入,但也可以是伺服控制装置310具有生成使频率变化的正弦波信号的频率生成部。
[0089] 速度控制部312将积分增益K1v乘以速度偏差而进行了积分所得的值、与比例增益K2v乘以速度偏差所得的值相加,作为转矩指令输出给滤波器313。
[0090] 滤波器313是使特定的频率成分衰减的滤波器,例如使用陷波滤波器。在通过电动机驱动的机床等机械中存在共振点,有时因伺服控制装置310使得共振增大。通过使用陷波滤波器可以降低共振。滤波器313的输出作为转矩指令输出给电流控制部314。
[0091] 数学公式1(以下表示为数学式1)表示滤波器313的传递函数G(s)。控制参数为a0、a1、a2、b0、b1、b2。滤波器是陷波滤波器时,b0=a0、b2=a2=1。
[0092] 【数学式1】
[0093]
[0094] 在以下的说明中,对滤波器是陷波滤波器,在数学公式1中,b0=a0、b2=a2=1,机器学习装置110对系数a0、a1、b1进行机器学习的情况进行说明。
[0095] 电流控制部314根据转矩指令生成用于驱动伺服电动机410的电流指令,将该电流指令输出给伺服电动机410。
[0096] 通过设置于伺服电动机410的旋转编码器(未图示)来检测伺服电动机410的旋转角度位置,速度检测值作为速度反馈输入到减法器311。
[0097] 使频率变化的正弦波信号作为速度指令输入到测量部315。测量部315使用成为输入信号的速度指令(正弦波)、以及从旋转编码器(未图示)输出的成为输出信号的检测速度(正弦波),按照由速度指令规定的各频率,求出输入信号与输出信号的振幅比(输入输出增益)以及相位延迟。图3是表示成为输入信号的速度指令与成为输出信号的检测速度的图。图4是表示输入信号与输出信号的振幅比、以及相位延迟的频率特性的图。
[0098] 像以上那样构成伺服控制装置310,但是为了对滤波器的最佳参数进行机器学习,并输出该参数的频率响应,控制装置11还具有机器学习装置110以及输出装置210。
[0099] 机器学习装置110使用从输出装置210输出的输入输出增益(振幅比)和相位延迟,对滤波器313的传递函数的系数a0、a1、b1进行机器学习(以下,称为学习)。机器学习装置110的学习在出库前进行,也可以在出库后进行再学习。
[0100] 以下,对机器学习装置110的结构以及动作的详细情况进行进一步说明。
[0101] 在进行机器学习装置110所包含的各功能的说明之前,首先对强化学习的基本结构进行说明。智能体(相当于本实施方式中的机器学习装置110)观测环境状态,选择某个行为,根据该行为环境发生变化。随着环境的变化,提供某种回报,智能体学习更好的行为选择(决策)。
[0102] 监督学习表示完全的正确答案,而强化学习中的回报大多是基于环境的部分变化的片段值。因此,智能体学习选择行为使得到将来的回报合计为最大。
[0103] 这样,在强化学习中通过学习行为,在行为给予环境的相互作用基础上学习适当的行为,即学习用于使将来获得的回报为最大的要学习的方法。这表示在本实施方式中,可以获得例如选择抑制机械端的振动的行为信息这样的、影响未来的行为。
[0104] 这里,作为强化学习可以使用任意的学习方法,在以下的说明中,以在某种环境状态S下,使用Q学习(Q-learning)的情况为例进行说明,所述Q学习是学习选择行为A的价值Q(S、A)的方法。
[0105] Q学习以在某种状态S时从能够取得的行为A中将价值Q(S、A)最高的行为A选择为最佳行为为目的。
[0106] 但是,在最初开始Q学习的时间点,对于状态S与行为A的组合来说,完全不知晓价值Q(S、A)的正确值。因此,智能体在某种状态S下选择各种行为A,针对当时的行为A,根据给予的回报,选择更好的行为,由此,继续学习正确的价值Q(S、A)。
[0107] 此外,想要使将来获得的回报的合计最大化,因此,目标是最终成为Q(S、A)=E[Σ(γt)rt]。这里,E[]表示期待值,t表示时刻、γ表示后述的称为折扣率的参数,rt表示时刻t的回报,Σ是时刻t的合计。该数学式中的期待值是按最佳行为状态发生变化时的期望值。但是在Q学习的过程中,由于不知道最佳行为,因此通过进行各种行为,一边搜索一边进行强化学习。这样的价值Q(S、A)的更新式例如可以通过如下的数学公式2(以下表示为数学式
2)来表示。
[0108] 【数学式2】
[0109]
[0110] 在上述的数学式2中,St表示时刻t的环境状态,At表示时刻t的行为。通过行为At,状态变化为St+1。rt+1表示通过该状态的变化而得到的回报。此外,带有max的项是:在状态St+1下,将γ乘以选择出当时知道的Q值最高的行为A时的Q值而得的。这里,γ是0<γ≤1的参数,称为折扣率。此外,α是学习系数,设α的范围为0<α≤1。
[0111] 上述的数学式2表示如下方法:根据尝试At的结果而反馈回来的回报rt+1,更新状态St下的行为At的价值Q(St、At)。
[0112] 该更新式表示了:若行为At导致的下一状态St+1下的最佳行为的价值maxa Q(St+1、A)比状态St下的行为At的价值Q(St、At)大,则增大Q(St、At),反之如果小,则减小Q(St、At)。也就是说,使某种状态下的某种行为的价值接近该行为导致的下一状态下的最佳行为价值。其中,尽管该差因折扣率γ和回报rt+1的存在形式而变化,但基本上是某种状态下的最佳行为价值传播至其前一个状态下的行为价值的结构。
[0113] 这里,Q学习存在如下方法:制作针对所有状态行为对(S、A)的Q(S、A)的表格,来进行学习。但是,有时为了求出所有状态行为对的Q(S、A)的值状态数会过多,使得Q学习收敛需要较多的时间。
[0114] 因此,可以利用公知的称为DQN(Deep Q-Network)的技术。具体来说,可以使用适当的神经网络来构成价值函数Q,调整神经网络的参数,由此通过适当的神经网络来近似价值函数Q来计算价值Q(S、A)的值。通过利用DQN,能够缩短Q学习收敛所需的时间。另外,关于DQN,例如在以下的非专利文献中有详细的记载。
[0115] <非专利文献>
[0116] “Human-level control through deep reinforcement learning”,Volodymyr Mnih1著[online],[平成29年1月17日检索],因特网〈URL:http://files.davidqiu.com/research/nature14236.pdf〉
[0117] 机器学习装置110进行以上说明的Q学习。具体来说,机器学习装置110学习如下内容的价值Q:将滤波器313的传递函数的各系数a0、a1、b1的值、从输出装置210输出的输入输出增益(振幅比)和相位延迟作为状态S,将该状态S有关的滤波器130的传递函数的各系数a0、a1、b1的值的调整择为行为A。
[0118] 机器学习装置110观测状态信息S来决定行为A,其中,状态S是根据滤波器313的传递函数的各系数a0、a1、b1使用上述的频率发生变化的正弦波即速度指令来驱动伺服控制装置310而从输出装置210获得的、包含各频率的每一个的输入输出增益(振幅比)和相位延迟的状态S。机器学习装置110每当进行行为A时返回回报。机器学习装置110例如试错性地搜索最佳的行为A以使到将来的回报合计为最大。通过这样,机器学习装置110能够对状态S选择最佳的行为A(即,滤波器313的传递函数的最佳系数a0、a1、b1),其中,状态S是根据滤波器313的传递函数的各系数a0、a1、b1使用频率变化的正弦波即速度指令来驱动伺服控制装置
310而从输出装置210获得的、包含各频率的每一个的输入输出增益(振幅比)和相位延迟的状态S。
[0119] 即,根据由机器学习装置110学习到的价值函数Q,选择应用于某种状态S有关的滤波器313的传递函数的各系数a0、a1、b1的行为A中的、Q的值为最大那样的行为A,由此,能够选择通过执行加工程序而产生的机器端振动为最小那样的行为A(即,滤波器313的传递函数的各系数a0、a1、b1)。
[0120] 图5是表示本发明的第一实施方式的机器学习装置110的框图。
[0121] 为了进行上述的强化学习,如图5所示,机器学习装置110具有:状态信息取得部111、学习部112、行为信息输出部113、价值函数存储部114、以及优化行为信息输出部115。
学习部112具有:回报输出部1121、价值函数更新部1122、以及行为信息生成部1123。
[0122] 状态信息取得部111从输出装置210取得状态S,其中,状态S是根据滤波器313的传递函数的各系数a0、a1、b1使用速度指令(正弦波)驱动伺服电动机410而获得的、包含输入输出增益(振幅比)和相位延迟的状态S。该状态信息S相当于Q学习中的环境状态S。
[0123] 状态信息取得部111对学习部112输出取得的状态信息S。
[0124] 另外,最初开始Q学习的时间点的滤波器313的传递函数的各系数a0、a1、b1预先由用户生成。在本实施方式中,通过强化学习将用户制作出的滤波器313的传递函数的各系数a0、a1、b1的初始设定值调整为最佳。
[0125] 另外,系数a0、a1、b1在操作员预先调整了机床时,可以将调整完的值作为初始值进行机器学习。
[0126] 学习部112是在某种环境状态S下,学习选择某种行为A时的价值Q(S、A)的部分。
[0127] 回报输出部1121是在某种状态S下计算选择了行为A时的回报的部分。
[0128] 回报输出部1121将在修正了滤波器313的传递函数的各系数a0、a1、b1的情况下测量出的输入输出增益Gs与预先设定的标准模型的各频率的每一个的输入输出增益Gb进行比较。在测量出的输入输出增益Gs比标准模型的输入输出增益Gb大时,回报输出部1121给予负回报。另一方面,在测量出的输入输出增益Gs是标准模型的输入输出增益Gb以下的情况下,回报输出部1121在相位延迟变小时给予正回报,在相位延迟变大时给予负回报,在相位延迟不变时给予零回报。
[0129] 首先,使用图6和图7对在测量出的输入输出增益Gs比标准模型的输入输出增益Gb大时回报输出部1121给予负回报的动作进行说明。
[0130] 回报输出部1121保存输入输出增益的标准模型。标准模型是具有不共振的理想特性的伺服控制装置的模型。标准模型例如可以从图6所示的模型的惯量Ja、转矩常数Kt、比例增益Kp、积分增益KI、微分增益KD计算求出。惯量Ja是电动机惯量与机械惯量的相加值。
[0131] 图7是表示标准模型的伺服控制装置、与学习前和学习后的伺服控制装置310的输入输出增益的频率特性的特性图。如图7的特性图所示,标准模型具有:区域A、区域B,其中,区域A是成为一定的输入输出增益以上,例如-20dB以上的理想的输入输出增益的频率区域,区域B是成为不足一定的输入输出增益的频率区域。在图7的区域A中,通过曲线MC1(粗线)来表示标准模型的理想的输入输出增益。在图7的区域B中,通过曲线MC11(粗虚线)来表示标准模型的理想的虚拟输入输出增益,将标准模型的输入输出增益作为固定值而通过直线MC12(粗线)进行表示。在图7的区域A以及B中,分别用曲线RC1、RC2来表示学习前和学习后的伺服控制部的输入输出增益的曲线。
[0132] 回报输出部1121在区域A中,在测量出的输入输出增益的学习前的曲线RC1超过标准模型的理想的输入输出增益的曲线MC1时给予第一负回报。
[0133] 在超过输入输出增益足够小的频率的区域B中,即使学习前的输入输出增益的曲线RC1超过标准模型的理想的虚拟输入输出增益的曲线MC11,对稳定性的影响也小。因此,如上所述,在区域B中标准模型的输入输出增益不使用理想的增益特性的曲线MC11,而使用一定值的输入输出增益(例如,-20dB)的直线MC12。但是,在学习前测量出的输入输出增益的曲线RC1超过一定值的输入输出增益的直线MC12时可能不稳定,因此作为回报而给予第一负值。
[0134] 接下来,对在测量出的输入输出增益Gs是标准模型的输入输出增益Gb以下时,回报输出部1121根据相位延迟的信息来决定回报的动作进行说明。
[0135] 在以下的说明中,通过D(S)表示状态信息S有关的状态变量即相位延迟,通过D(S’)来表示通过行为信息A(滤波器313的传递函数的各系数a0、a1、b1的修正)从状态S发生了变化的状态S’有关的状态变量即相位延迟。
[0136] 回报输出部1121根据相位延迟的信息来决定回报的方法例如存在以下方法。另外,根据相位延迟的信息来决定回报的方法并非限定于以下说明的方法。
[0137] 在从状态S成为状态S’的情况下,根据相位延迟为180度的频率是变大、变小、还是相同来决定回报。这里,列举相位延迟为180度的情况,但是并非特别限定于180度也可以是其他值。
[0138] 例如,在通过图4所示的相位线图表示了相位延迟时,在从状态S成为状态S’的情况下,若曲线变化成相位延迟为180度的频率变小(在图4的X2方向),则相位延迟变大。另一方面,在从状态S成为状态S’的情况下,若曲线变化成相位延迟为180度的频率变大(在图4的X1方向),则相位延迟变小。
[0139] 因此,在从状态S成为状态S’的情况下,在相位延迟为180度的频率变小时,定义为相位延迟D(S)<相位延迟D(S’),回报输出部1121将回报的值设为第二负值。另外,第二负值的绝对值设定得比第一负值小。
[0140] 另一方面,在从状态S成为状态S’的情况下,在相位延迟为180度的频率变大时,定义为相位延迟D(S)>相位延迟D(S’),回报输出部1121将回报的值设为正值。
[0141] 此外,在从状态S成为状态S’的情况下,在相位延迟为180度的频率不变时,定义为相位延迟D(S)=相位延迟D(S’),回报输出部1121将回报的值设为零。
[0142] 另外,作为定义为执行行为A之后的状态S’的相位延迟D(S’)比之前的状态S下的相位延迟D(S)大时的负值,可以根据比例将负值设定得大。例如,在上述方法中,可以根据频率变小的程度将负值设定得大。反之,作为定义为执行行为A之后的状态S’的相位延迟D(S’)比之前的状态S下的相位延迟D(S)小时的正值,可以根据比例将正值设定得大。例如,在上述方法中,可以根据频率变大的程度将正值设定得大。
[0143] 价值函数更新部1122根据状态S、行为A、将行为A应用于状态S时的状态S’、如上所述计算出的回报值来进行Q学习,由此,对价值函数存储部114存储的价值函数Q进行更新。
[0144] 价值函数Q的更新既可以通过在线学习来进行,也可以通过批量学习来进行,还可以通过小批量学习来进行。
[0145] 在线学习是如下学习方法:通过将某种行为A应用于当前状态S,每当状态S向新状态S’转移时,立即进行价值函数Q的更新。此外,批量学习是如下学习方法:通过重复将某种行为A应用于当前状态S,状态S向新状态S’转移,由此收集学习用的数据,使用收集到的所有学习用数据,来进行价值函数Q的更新。进而,小批量学习是在线学习与批量学习中间的学习方法,是每当积攒了某种程度学习用数据时进行价值函数Q的更新的学习方法。
[0146] 行为信息生成部1123针对当前状态S选择Q学习的过程中的行为A。行为信息生成部1123在Q学习的过程中,为了进行修正滤波器313的传递函数的各系数a0、a1、b1的动作(相当于Q学习中的行为A),而生成行为信息A,对行为信息输出部113输出所生成的行为信息A。
[0147] 更具体来说,行为信息生成部1123例如对状态S所包含的滤波器313的传递函数的各系数a0、a1、b1加上或者减去增量。
[0148] 并且,可以采取如下策略:行为信息生成部1123在应用滤波器313的传递函数的各系数a0、a1、b1的增加或减少而向状态S’转移并返回了正回报(正值的回报)时,作为下一行为A’,选择针对滤波器313的传递函数的各系数a0、a1、b1与前次的动作同样地加上或减去增量等使测量出的相位延迟比前次的相位延迟小那样的行为A’。
[0149] 此外,反之还可以采取如下策略:当返回了负回报(负值的回报)时,行为信息生成部1123作为下一行为A’,例如选择针对滤波器313的传递函数的各系数a0、a1、b1与前次的动作相反地减去或者加上增量等使测量出的输入输出增益比标准模型的输入输出增益大时与前次相比输入增益之差更小那样,或测量出的相位延迟比前次的相位延迟小那样的行为A’。
[0150] 此外,行为信息生成部1123也可以采取如下策略:通过在当前推定的行为A的价值中选择价值Q(S、A)最高的行为A’的贪婪算法,或者用某个较小的概率ε随机选择行为A’,除此之外选择价值Q(S、A)最高的行为A’的ε贪婪算法这样的众所周知的方法,来选择行为A’。
[0151] 行为信息输出部113是针对滤波器313发送从学习部112输出的行为信息A的部分。如上所述,滤波器313根据该行为信息,对当前状态S,即当前设定的各系数a0、a1、b1进行微修正,而向下一状态S’(即,进行了修正的滤波器313的各系数)转移。
[0152] 价值函数存储部114是存储价值函数Q的存储装置。价值函数Q例如可以按状态S、行为A而存储为表(以下,称为行为价值表)。存储于价值函数存储部114的价值函数Q通过价值函数更新部1122而被更新。此外,存储于价值函数存储部114的价值函数Q也可以在与其他机器学习装置110之间共享。如果在多个机器学习装置110之间共享价值函数Q,则能够通过各机器学习装置110分散地进行强化学习,因此,能够提升强化学习的效率。
[0153] 优化行为信息输出部115根据价值函数更新部1122进行Q学习而进行了更新的价值函数Q,生成用于使滤波器313进行价值Q(S、A)为最大的动作的行为信息A(以下,称为“优化行为信息”)。
[0154] 更具体来说,优化行为信息输出部115取得价值函数存储部114存储的价值函数Q。如上所述该价值函数Q是通过价值函数更新部1122进行Q学习而被更新的函数。并且,优化行为信息输出部115根据价值函数Q,生成行为信息,对滤波器313输出所生成的行为信息。
该优化行为信息与行为信息输出部113在Q学习的过程中输出的行为信息一样,包含对滤波器313的传递函数的各系数a0、a1、b1进行修正的信息。
[0155] 在滤波器313中,根据该行为信息来修正传递函数的各系数a0、a1、b1。
[0156] 机器学习部110可以进行动作,以便通过以上的动作进行滤波器313的传递函数的各系数a0、a1、b1的优化,抑制机械端的振动。
[0157] 像以上那样,通过利用本实施例涉及的机器学习装置110,可以使滤波器313的参数调整简化。
[0158] 此外,在上述实施方式中,对由伺服电动机410驱动的机械存在一个共振点的情况进行了说明,但是有时机械存在多个共振点。在机械存在多个共振点时,以与各共振点对应的方式设置多个滤波器,而进行串联连接,由此,可以使所有的共振衰减。机器学习装置针对多个滤波器的各自系数a0、a1、b1,依次通过机器学习求出使共振点衰减的最佳值。
[0159] 接下来,对输出装置210进行说明。
[0160] 图8是表示本发明的第一实施例的控制装置所包含的输出装置的一结构例的框图。如图8所示,输出装置210具有:信息取得部211、信息输出部212、作图部213、操作部214、控制部215、存储部216、信息取得部217、信息输出部218、显示部219、以及运算部220。
[0161] 信息取得部211为从机器学习装置110取得学习参数的信息取得部。控制部215以及显示部219为输出学习参数的物理量的输出部。输出部的显示部219可以使用液晶显示装置、打印机等。输出还包含存储于存储部216的信息,此时,输出部为控制部215以及存储部216。
[0162] 输出装置210具有如下输出功能:通过图来表示机器学习装置110的机器学习中或机器学习后的控制参数(学习参数)的物理量和使用该物理量求出的频率响应,例如滤波器的传递函数G(s)的中心频率(也称为衰减中心频率)、带宽、以及衰减系数、滤波器的频率响应。
[0163] 此外,输出装置210具有进行如下动作的调整功能:伺服控制装置310与机器学习装置之间的信息(例如,输入输出增益和相位延迟)的中继、机器学习装置1100与伺服控制装置310之间的信息(例如,滤波器313的系数的修正信息)的中继、针对伺服控制装置310的控制(例如,滤波器313的微调整)、机器学习装置100的动作控制(例如,针对机器学习装置的学习程序启动指示)。经由信息取得部211、217以及信息输出部212、218进行这些信息的中继以及动作的控制。
[0164] 首先,使用图9A以及图9B对输出装置210输出机器学习中的控制参数的物理量的情况进行说明。
[0165] 图9A是表示机器学习中的评价函数值以及评价函数值的最小值推移的特性图以及示出了显示学习中的控制参数值时的显示画面的一例的图。图9B是表示在机器学习中,根据机器学习的进展状况,在显示部219显示状态S有关的控制参数的物理量时的显示画面的一例的图。
[0166] 如图9A所示,即使在显示部219的显示画面显示机器学习中的评价函数值以及评价函数值的最小值和数学公式1的传递函数的系数a0、a1、a2、b0、b1、b2,用户也不理解评价函数以及控制参数的物理意义,难以理解伺服控制装置的特性的学习经过和结果。因此,在本实施例中像以下说明那样,将控制参数变换为操作员等用户容易理解的信息而输出。第二实施例~第四实施例也一样,将控制参数变换为操作员等用户容易理解的信息来进行输出。通过按压图9A所示的显示画面的例如“变换”按钮,显示图9B所示的显示画面,输出用户容易理解的信息。
[0167] 如图9B所示,显示部219的显示画面P例如在调整流程的栏P1显示轴选择、参数确认、程序确认和编辑、程序启动、机器学习中、结束判定的选择项目。
[0168] 此外,显示画面P显示栏P2,其中,栏P2例如表示滤波器等调整对象、数据采集中等的状况(状态)、表示当前为止的尝试次数相对于预先设定的该机器学习结束为止的尝试次数(以下,也称为“最大尝试次数”)的累积的尝试次数、以及选择学习中继的按钮。
[0169] 此外,显示画面P还显示栏P3,其中,栏P3包含表示滤波器的传递函数G(s)、滤波器的传递函数G(s)的中心频率fc、带宽fw、以及衰减系数R的表、和当前的滤波器的频率响应特性以及学习中最优的滤波器的频率响应特性的图。还显示栏P4,其中,栏P4包含表示中心频率(衰减中心频率)fc相对于学习步骤的推移的图。另外,显示画面P所显示的信息是一例,这些信息的一部分例如可以只显示表示滤波器的频率响应特性以及学习中最优的滤波器的频率响应特性的图,此外,也可以追加其他信息。
[0170] 操作员等用户通过鼠标键盘等操作部214选择液晶显示装置等显示部219的图9B所示的显示画面的“调整流程”的栏P1的“机器学习”时,控制部215经由信息输出部212对机器学习装置110发出包含用尝试次数关联起来的状态S有关的系数a0、a1、b1、该机器学习的调整对象(学习对象)相关的信息、尝试次数、最大尝试次数的信息等输出指示。
[0171] 信息取得部211从机器学习装置110接收包含用尝试次数关联起来的状态S有关的系数a0、a1、b1、该机器学习的调整对象(学习对象)相关的信息、尝试次数、最大尝试次数的信息等时,控制部215将接收到的信息存储于存储部216,并且向运算部220转移控制。
[0172] 运算部220从机器学习装置110的机器学习中的控制参数,具体来说从强化学习时或强化学习后的控制参数(例如上述的状态S有关的系数a0、a1、b1)求出滤波器313的特性(中心频率fc、带宽fw、衰减系数R)以及滤波器313的频率响应。中心频率fc、带宽fw、衰减系数R为从系数a0、a1、b1求出的第二物理量。
[0173] 为了从系数a0、a1、b1求出中心频率fc、带宽fw、衰减系数(damping)R,从数学公式3求出中心角频率ωn、分数带宽ζ(fractional bandwidth)、衰减系数R,并且根据ωn=2πfc,ζ=fw/fc,求出中心频率fc、带宽fw。
[0174] 【数学式3】
[0175]
[0176] 结果,可以通过数学公式4求出中心频率fc、带宽fw、衰减系数R。
[0177] 【数学式4】
[0178]
[0179] 另外,将数学公式3右式的传递函数设为滤波器313的传递函数,由机器学习装置110对中心角频率ωn、分数带宽ζ、衰减系数R的参数进行机器学习,从求出的中心角频率ωn、分数带宽ζ、衰减系数R使用ωn=2πfc,ζ=fw/fc来计算中心频率fc、带宽fw、衰减系数R。
该情况下,中心频率fc、带宽fw、衰减系数R为第一物理量。也可以将该第一物理量变换为后述的第二物理量进行显示。
[0180] 运算部220计算中心频率fc、带宽fw、衰减系数R,求出数学公式3右式的、包含中心角频率ωn、分数带宽ζ、衰减系数R的传递函数时,向控制部215转移控制。
[0181] 另外,这里对滤波器是陷波滤波器的情况进行了说明,但是即使采取滤波器是数学公式1所示那样的一般形式时,由于滤波器具有增益的谷值,因此可以求出中心频率fc、带宽fw、衰减系数R。此外,一般情况下无论滤波器的阶数多高,同样能求出一个以上的衰减的中心频率fc、带宽fw、衰减系数R。
[0182] 控制部215将中心频率fc、带宽fw、衰减系数R的物理量、以及包含中心角频率ωn、分数带宽ζ、衰减系数R的传递函数存储于存储部216,向作图部213转移控制。
[0183] 作图部213从与尝试次数关联起来的状态S有关的、包含系数a0、a1、b1的传递函数,或包含中心角频率ωn、分数带宽ζ、衰减系数R(成为第一物理量)的传递函数,或包含从系数a0、a1、b1求出的中心角频率ωn、分数带宽ζ、衰减系数R(成为第二物理量)的传递函数,求出滤波器313的频率响应,制作频率-增益特性图,进行对该频率-增益特性图施加在学习中最优的滤波器频率响应特性的处理,制作施加了最优的滤波器频率响应特性的频率-增益特性图的图像信息,进而制作表示中心频率(衰减中心频率)fc相对于学习步骤的推移的图,制作该图的图像信息,向控制部215转移控制。可以从数学公式3右式的传递函数求出滤波器313的频率响应。可以从传递函数解析频率响应的软件是公知的,例如,可以使用https://jp.mathworks.com/help/signal/ug/frequency~renponse.htmlhttps://jp.mathworks.com/help/signal/ref/freqz.htmlhttps://docs.scipy.org/doc/scipy-0.19.1/reference/generated/scipy.signal.freqz.htmlhttps://wiki.octave.org/Control_package等。
[0184] 如图9B所示,控制部215显示频率-增益特性图(成为频率响应特性)、由中心频率fc、带宽fw、衰减系数(damping)R(成为第二物理量)构成的表、滤波器的传递函数G(s)、表示中心频率(衰减中心频率)fc相对于学习步骤的推移的图。另外,这里示出了成为第二物理量的中心频率fc、带宽fw、衰减系数(damping)R、以及成为频率响应特性的频率-增益特性图这两者,但是也可以只显示某一方。也可以变换为成为频率响应特性的频率-增益特性图或者与成为频率响应特性的频率-增益特性图一起显示成为时间响应特性的时间-增益特性图。这一点在后述的第二实施例~第四实施例中也是一样的。
[0185] 此外,控制部215例如根据表示陷波滤波器是调整对象的信息,在图9B所示的显示画面P的栏P2的调整对象项目中显示为陷波滤波器,在尝试次数没有达到最大尝试次数时在显示画面的状况项目中显示为数据采集中。并且,控制部215在显示画面的尝试次数项目中显示尝试次数相对于最大尝试次数之比。
[0186] 另外,图9B所记载的显示画面是一例,并不限定于此。也可以显示上述所示例的项目以外的信息。此外,还可以省略上述示例的几个项目的信息显示。
[0187] 此外,在上述说明中,控制部215将从机器学习装置110接收到的信息存储于存储部216,并且实时地在显示部219显示用尝试次数关联起来的状态S有关的滤波器313的频率响应相关的信息等,但是并不限定于此。
[0188] 例如,作为不实时显示的实施例,存在以下的示例。
[0189] 变形例1:在操作员(作业员)指示了显示时,显示图9B所记载的信息。
[0190] 变形例2:(从开始学习时的)尝试次数的累积达到预先设定的规定次数时,显示图9B所记载的信息。
[0191] 变形例3:机器学习的中断时或结束时,显示图9B所记载的信息。
[0192] 在以上的结构例1~3中,也与上述的实时显示的动作一样,信息取得部211从机器学习装置110接收包含用尝试次数关联起来的状态S有关的系数a0、a1、b1、该机器学习的调整对象(学习对象)相关的信息、尝试次数、最大尝试次数的信息等时,控制部215将接收到的信息存储于存储部216。之后,在变形例1中在操作员(作业员)指示了显示时,在变形例2中当尝试次数的累积达到预先设定的规定次数时,在变形例3中在机器学习的中断时或结束时,控制部215进行向运算部220、作图部213转移控制的动作。
[0193] 接下来,对输出装置210的上述输出功能与调整功能进行说明。
[0194] 图10是表示从机器学习开始到机器学习结束为止的、以输出装置为中心的控制装置的动作的流程图。
[0195] 在步骤S31中,输出装置210在操作员通过鼠标、键盘等操作部204选择图9B所示的显示部219的显示画面的“调整流程”的栏P1的“程序启动”时,控制部215将学习程序启动指示经由信息输出部212输出给机器学习装置110。并且,对伺服控制装置310输出通知将学习程序启动指示输出给机器学习装置110的学习程序启动指示通知。
[0196] 在步骤S32中,输出装置210指示要将正弦波输出给伺服控制装置310的上位装置输出正弦波。步骤S32可以在步骤S31之前,也可以与步骤S31同时进行。上位装置接收正弦波输出指示时,将使频率变化的正弦波信号输出给伺服控制装置310。
[0197] 在步骤S21中,机器学习装置110接收学习程序启动指示时,开始机器学习。
[0198] 在步骤S11中,伺服控制装置310控制伺服电动机410,将包含参数信息、输入增益和相位延迟、以及滤波器313的传递函数的系数a0、a1、b1(成为参数信息)的信息输出给输出装置210。并且,输出装置210将参数信息、输入增益以及相位延迟输出给机器学习装置110。
[0199] 机器学习装置110将包含在步骤S21进行的机器学习动作过程中与回报输出部2021所使用的尝试次数关联起来的状态S有关的滤波器313的传递函数的系数a0、a1、b1、最大尝试次数、尝试次数以及滤波器313的传递函数的系数a0、a1、b1的修正信息(成为参数修正信息)在内的信息输出给输出装置210。
[0200] 在步骤S33中,输出装置210通过上述的输出功能,选择图9B所示的显示画面的“调整流程”的栏P1的“机器学习”时,将机器学习装置110中的机器学习中的滤波器313的传递函数的系数的修正信息变换为表示操作员等用户容易理解的物理量(中心频率fc、带宽fw、衰减系数R)、中心频率(衰减中心频率)fc相对于学习步骤的推移的图以及频率响应特性图,输出给显示部219。输出装置210在步骤S33中,或在步骤S33之后或之前,对伺服控制装置310发送滤波器313的传递函数的系数的修正信息。在机器学习结束之前重复进行步骤S11、步骤S21、步骤S33。
[0201] 这里,对实时地将机器学习中的控制参数有关的滤波器313的传递函数的系数的物理量(中心频率fc、带宽fw、衰减系数R)和频率响应特性图有关的信息输出给显示部219的情况进行了说明,但是在作为不实时显示时的示例已经进行了说明的变形例1~变形例3那样的情况下,可以实时地将滤波器313的传递函数的系数的物理量以及频率响应特性图有关的信息输出给显示部219。
[0202] 在步骤S34中,输出装置210判定尝试次数是否达到最大尝试次数,在达到最大尝试次数时,输出装置210在步骤S35中,向机器学习装置210输送结束指示。在没有达到最大尝试次数时,返回到步骤S33。
[0203] 在步骤S35中,机器学习装置210接收到结束指示时结束机器学习。
[0204] 以上,对第一实施方式的输出装置以及控制装置的第一实施例进行了说明,接下来对第二实施例进行说明。
[0205] <第二实施例>
[0206] 本实施例是机器学习装置110对伺服控制装置320所包含的速度前馈处理部的系数进行学习,输出装置210将速度前馈处理部的频率响应和位置偏差的推移显示于显示部的示例。
[0207] 图11是表示本发明的第二实施例的控制装置的整体结构以及伺服控制装置的结构的框图。本实施例的控制装置与图1所示的控制装置相比,伺服控制装置的结构以及机器学习装置、输出装置的动作不同。本实施例的机器学习装置、输出装置的结构与使用图5和图8所说明的、第一实施例的机器学习装置、输出装置的结构一样。
[0208] 如图11所示,伺服控制装置320作为结构要素具有:减法器321、位置控制部322、加法器323、减法器324、速度控制部325、加法器326、积分器327、速度前馈处理部328、以及位置前馈处理部329。加法器326经由未图示的电流控制部与伺服电动机410连接。速度前馈处理部328具有二阶微分器3281和IIR滤波器3282。另外,这里位置前馈处理部329不具有IIR滤波器,而与速度前馈处理部328一样设置IIR滤波器,学习IIR滤波器的系数,像后述那样,使用输出装置210输出IIR滤波器的频率响应、位置偏差的时间响应以及频率响应等信息。即,可以使用输出装置210输出速度前馈处理部328和位置前馈处理部329中的某一个或两者的IIR滤波器的频率响应、位置偏差的时间响应以及频率响应等信息。
[0209] 将位置指令输出给减法器321、速度前馈处理部328、位置前馈处理部329以及输出装置210。
[0210] 减法器321求出位置指令值与位置反馈后的检测位置之差,将该差作为位置偏差输出给位置控制部322以及输出装置210。
[0211] 根据使伺服电动机410动作的程序,由上位装置来制作位置指令。伺服电动机410例如包含于机床中。在机床中,在搭载被加工物(工件)的工作台在X轴方向和Y轴方向上移动时,对X轴方向和Y轴方向分别设置图11所示的伺服控制装置320以及伺服电动机410。在使工作台在三轴以上的方向上移动时,对各轴方向设置伺服控制装置320以及伺服电动机410。
[0212] 位置指令被设定进给速度,以便成为由加工程序指定的加工形状。
[0213] 位置控制部322将位置增益Kp乘以位置偏差而得的值作为速度指令值输出给加法器323。
[0214] 加法器323将速度指令值与位置前馈处理部329的输出值(位置前馈项)相加,作为前馈控制的速度指令值输出给减法器324。减法器324求出加法器323的输出与速度反馈后的速度检测值之差,将该差作为速度偏差输出给速度控制部325。
[0215] 速度控制部325将积分增益K1v乘以速度偏差积分而得的值、与比例增益K2v乘以速度偏差而得的值相加,作为转矩指令值输出给加法器326。
[0216] 加法器326将转矩指令值与速度前馈处理部328的输出值(速度前馈项)相加,作为前馈控制的转矩指令值经由未图示的电流控制部输出给伺服电动机410来驱动伺服电动机410。
[0217] 通过与伺服电动机410关联起来的、作为位置检测部的旋转编码器来检测伺服电动机410的旋转角度位置,速度检测值作为速度反馈而输入到减法器324。速度检测值通过积分器307被积分而成为位置检测值,位置检测值作为位置反馈输入到减法器102。
[0218] 速度前馈处理部328的二阶微分器3281对位置指令值进行二阶微分并乘以常数β,IIR滤波器3282对二阶微分器3281的输出进行由数学公式5(以下表示为数学式5)表示的传递函数VFF(z)所示的IIR滤波处理,将其处理结果作为速度前馈项输出给加法器326。数学公式5的系数c1、c2、d0~d2是IIR滤波器3282的传递函数的各系数。另外,这里传递函数VFF(z)的分母和分子都为二次函数,但并不特别限定于二次函数,也可以是三次以上的函数。
[0219] 【数学式5】
[0220]
[0221] 位置前馈处理部329对位置指令值进行微分并乘以常数α,将其处理结果作为位置前馈项输出给加法器323。
[0222] 如以上那样,构成伺服控制装置320。
[0223] 机器学习装置110通过执行预先设定的加工程序(以下,也称为“学习时的加工程序”),对速度前馈处理部328的IIR滤波器3282的传递函数的系数进行学习。
[0224] 这里,由学习时的加工程序指定的加工形状例如是八边形、或八边形的角每隔一个置换为圆弧的形状等。另外,由学习时的加工程序指定的加工形状并不限定于这些加工形状,也可以是其他加工形状。
[0225] 图12是用于对加工形状是八边形时的电动机的动作进行说明的图。图13是用于对加工形状是八边形的每隔一个角置换为圆弧的形状时的电动机的动作进行说明的图。在图12和图13中,工作台在X轴和Y轴方向上移动以便顺时针加工被加工物(工件)。
[0226] 如图12所示,在加工形状为八边形时,在角的位置A1处,使工作台在Y轴方向上移动的电动机转速慢,使工作台在X轴方向上移动的电动机转速快。在角的位置A2处,使工作台在Y轴方向上移动的电动机旋转方向反转,使工作台在X轴方向上移动的电动机从位置A1朝向位置A2和从位置A2朝向位置A3,以相同的旋转方向等速旋转。
[0227] 在角的位置A3处,使工作台在Y轴方向上移动的电动机转速快,使工作台在X轴方向上移动的电动机转速慢。
[0228] 在角的位置A4处,使工作台在X轴方向上移动的电动机旋转方向反转,使工作台在Y轴方向上移动的电动机从位置A3朝向位置A4和从位置A4朝向下一个角的位置,以相同的旋转方向等速旋转。
[0229] 如图13所示,在加工形状是八边形的每隔一个角置换为圆弧的形状时,在角的位置B1处,使工作台在Y轴方向上移动的电动机转速慢,使工作台在X轴方向上移动的电动机转速快。
[0230] 在圆弧的位置B2处,使工作台在Y轴方向上移动的电动机旋转方向反转,使工作台在X轴方向上移动的电动机从位置B1朝向位置B3以相同的旋转方向等速旋转。与图12所示的加工形状为八边形的情况不同,使工作台在Y轴方向上移动的电动机朝向位置B2缓缓减速,在位置B2处停止旋转,通过位置B2时旋转速度缓缓增加,以便在位置B2的前后形成圆弧的加工形状。
[0231] 在角的位置B3处,使工作台在Y轴方向上移动的电动机转速快,使工作台在X轴方向上移动的电动机转速慢。
[0232] 在圆弧的位置B4处,使工作台在X轴方向上移动的电动机旋转方向反转,工作台以在X轴方向上直线反转的方式进行移动。此外,使工作台在Y轴方向上移动的电动机从位置B3朝向位置B4、以及从位置B4朝向下一个角的位置以相同的旋转方向等速旋转。使工作台在X轴方向上移动的电动机朝向位置B4缓缓减速,在位置B4处停止旋转,通过位置B4时旋转速度缓缓增加,以便在位置B4的前后形成圆弧的加工形状。
[0233] 在本实施方式中,通过以上说明的由学习时的加工程序指定的加工形状的位置A1与位置A3、以及位置B1与位置B3,评价在线性控制中变更转速时的振动,调整对位置偏差的影响,由此,进行速度前馈处理部328的IIR滤波器3282的传递函数的系数优化有关的机器学习。另外,IIR滤波器的传递函数的系数优化有关的机器学习并非特别限定于速度前馈处理部,例如还能够应用于具有IIR滤波器的位置前馈处理部、或进行伺服控制装置的电流前馈时设置的、具有IIR滤波器的电流前馈处理部。
[0234] 以下,对机器学习装置110进行更详细说明。
[0235] 本实施方式的机器学习装置110作为机器学习的一例,进行速度前馈处理部328的IIR滤波器3282的传递函数的系数优化有关的强化学习。另外,本发明中的机器学习不限于强化学习,也可以应用于进行其他机器学习(例如监督学习)的情况。
[0236] 机器学习装置110对将状态S有关的、IIR滤波器3282的传递函数VFF(z)的系数a1,a2,b0~b2的调整选择为行为A的价值Q进行机器学习(以下,称为学习),其中,将指令和反馈等伺服状态作为状态S,上述指令和反馈包含速度前馈处理部328的IIR滤波器3282的传递函数VFF(z)的系数a1,a2,b0~b2、通过执行机器学习时的加工程序而取得的伺服控制装置320的位置偏差信息、以及位置指令。
[0237] 具体来说,本发明的实施方式涉及的机器学习装置110在规定的范围内分别搜索用极坐标表示了传递函数VFF(z)的零点和极的半径r与角度θ并进行学习,由此,设定IIR滤波器3282的传递函数VFF(z)的系数。另外,极是传递函数VFF(z)为无限大的z值,零点是传递函数VFF(z)为0的z值。
[0238] 因此,以如下方式对传递函数VFF(z)的分子中的系数进行变形。
[0239] b0+b1z-1+b2z-2=b0(1+(b1/b0)z-1+(b2/b0)z-2)
[0240] 以下,只要没有特别说明,就用b1’和b2’来分别表示(b1/b0)和(b2/b0)进行说明。
[0241] 并且,机器学习装置110学习位置偏差为最小那样的半径r与角度θ,设定传递函数VFF(z)的系数a1、a2、b1’以及b2’。
[0242] 系数b0例如可以在将半径r和角度θ分别设定为最佳值r0和θ0之后,进行机器学习来求出。系数b0可以与角度θ同时进行学习。此外,也可以与半径r同时进行学习。
[0243] 机器学习装置110根据IIR滤波器3282的传递函数VFF(z)的系数a1、a2、b0~b2的值来观测包含指令以及反馈等伺服状态的状态信息S,从而决定行为A,其中,指令以及反馈包含通过执行学习时的加工程序而在所述的加工形状的位置A1与位置A3和位置B1与位置B3处的、伺服控制装置320的位置指令以及位置偏差信息。机器学习装置110每当进行行为A时返回回报。机器学习装置110例如试错性地搜索最佳行为A以使到将来的回报合计为最大。通过这样,机器学习装置110能够对包含指令和反馈等伺服状态的状态S选择最佳行为A(即,IIR滤波器3282的传递函数VFF(z)的最佳的零点和极值),其中,上述指令和反馈包含根据系数值来执行学习时的加工程序所取得的伺服控制装置320的位置指令以及位置偏差信息,该系数值是根据IIR滤波器3282的传递函数VFF(z)的零点、极值计算出的。在位置A1与位置A3和位置B1与位置B3处,X轴方向和Y轴方向的伺服电动机的旋转方向不变,机器学习装置110可以学习线性动作时的IIR滤波器3282的传递函数VFF(z)的零点和极值。
[0244] 即,根据由机器学习装置110学习到的价值函数Q,选择应用于某种状态S有关的IIR滤波器3282的传递函数VFF(z)的行为A中的、Q的值为最大那样的行为A,由此,能够选择通过执行学习时的加工程序而取得的位置偏差为最小那样的行为A(即,IIR滤波器3282的传递函数VFF(z)的零点和极值)。
[0245] 以下说明学习位置偏差为最小那样的、用极坐标表示了IIR滤波器3282的传递函数VFF(z)的零点和极的半径r与角度θ,来求出传递函数VFF(z)的系数a1、a2、b1’、b2’的方法、以及求出系数b0的方法。
[0246] 机器学习装置110设定从IIR滤波器3282取得的极和零点,其中,极是数学公式5的传递函数VFF(z)为无限大的z,零点是传递函数VFF(z)为0的z。
[0247] 机器学习装置110为了求出极和零点,对数学公式5的分母和分子乘以z2,求出数学公式6(以下,表示为数学式6)
[0248] 【数学式6】
[0249]
[0250] 极是数学公式6的分母为0的z,即z2+a1z+a2=0的z,零点是数学公式6的分子为0的z,即z2+b1’z+b2’=0的z。
[0251] 在本实施方式中用极坐标表示极和零点,对用极坐标表示的极和零点进行搜索。
[0252] 为了抑制振动,零点尤为重要,机器学习装置110首先将极固定,将在分子(z2+b1’z+b2’)中把z=reiθ和其共轭复数z*=re-iθ设为零点(角度θ在规定范围内,0≤r≤1)时计算出的系数b1’(=-reiθ-re-iθ)和b2’(=r2)设定为传递函数VFF(z)的系数,由此,在极坐标上搜索零点reiθ来学习最佳系数b1’、b2’的值。半径r取决于衰减率,角度θ取决于抑制振动的频率。之后,可以将零点固定为最佳值,来学习系数b0的值。接下来,用极坐标表示传递函数VFF(z)的极,以与所述的零点相同的方法来搜索用极坐标表示的极值reiθ。通过这样,可以学习传递函数VFF(z)的分母的最佳系数a1、a2的值。
[0253] 另外,在固定极来学习传递函数VFF(z)的分子中的系数时,只要可以抑制高频侧的增益即可,例如,极相当于二阶低通滤波器。例如,通过数学公式7(以下表示为数学式7)来表示二阶低通滤波器的传递函数。ω是滤波器的峰值增益频率。
[0254] 【数学式7】
[0255]
[0256] 另外,在将极设为三阶低通滤波器时,传递函数可以设置三个由1/(1+Ts)表示的一阶低通滤波器(T是滤波器的时间常数)来构成,或将该一阶低通滤波器与数学公式5的二阶低通滤波器组合来构成。
[0257] 另外,z区域中的传递函数使用双线性变换来求出上述的s区域的传递函数。
[0258] 另外,传递函数VFF(z)的极与零点可以同时进行搜索,但是分开搜索极和零点并分开进行学习,可以降低机器学习量,可以缩短学习时间。
[0259] 在图14的复平面中,极与零点的搜索范围可以缩小到斜线区域所表示的规定的搜索范围,将半径r例如设为0≤r≤1的范围,速度环能够响应的频率范围规定角度θ。关于频率的范围,由于速度环的共振而产生的振动是1100Hz左右,因此例如可以将频率范围的上限设为110Hz。虽然可以通过机床等控制对象的共振特性来决定搜索范围,但是在将采样周期设为1msec时,由于角度θ以大约250Hz对应于90度,因此若将频率范围的上限设为110Hz,就会成为图14的复平面那样的角度θ的搜索范围。通过这样将搜索范围缩小到规定范围,可以降低机器学习量,可以缩短机器学习的收敛时间。
[0260] 在极坐标上搜索零点时,首先将系数b0固定为例如1,将半径r固定为(0≤r≤1)的范围内的任意值,在上述的图14所示的搜索范围中尝试设定角度θ来设定z和其共轭复数z*为(z2+b1’z+b2’)的零点那样的系数b1’(=-rejθ-re-jθ)和b2’(=r2)。在图14所示的搜索范围内设定角度θ的初始设定值。
[0261] 机器学习装置110将求出的系数b1’和b2’的调整信息作为行为A输出给IIR滤波器3282,设定IIR滤波器3282的传递函数VFF(z)的分子的系数b1’和b2’。系数b0如上所述例如设定为1。在通过机器学习装置110进行角度θ的搜索的学习而决定价值Q的值为最大那样的最佳角度θ0时,之后,将角度θ固定为该角度θ0而将半径r设为可变,设定IIR滤波器3282的传jθ -jθ 2
递函数VFF(z)的分子的系数b1’(=-re -re )和b2’(=r)。通过进行半径r的搜索的学习,决定价值Q的值为最大那样的最佳半径r0。通过角度θ0和半径r0来设定系数b1’和b2’,之后,通过对b0进行学习,决定传递函数VFF(z)的分子的系数b0、b1’和b2’。
[0262] 在极坐标上搜索极的情况也可以与传递函数VFF(z)的分子一样进行学习。首先,将半径r固定为(例如,0≤r≤1)的范围的值,与零点的搜索一样,在上述的搜索范围中搜索角度θ,通过学习决定IIR滤波器3282的传递函数VFF(z)的极的最佳角度θ时,之后,将角度θ固定为该角度来搜索半径r并进行学习,由此,决定IIR滤波器3282的传递函数VFF(z)的极的最佳角度θ和最佳半径r。通过这样,决定极的最佳角度θ和最佳半径r对应的最佳系数a1、a2。另外,如已经描述过那样,半径r取决于衰减率,角度θ取决于抑制振动的频率,为了抑制振动而希望先于半径来学习角度θ。
[0263] 如以上那样,分别在规定的范围内搜索用极坐标表示了IIR滤波器3282的传递函数VFF(z)的零点和极的半径r和角度θ并进行学习,以使位置偏差最小,由此,可以比直接学习系数a1、a2、b0、b1’和b2’更高效地进行传递函数VFF(z)的系数a1、a2、b0、b1’和b2’的优化。
[0264] 另外,在进行IIR滤波器3282的传递函数VFF(z)的系数b0的学习时,例如将系数b0的初始值设为1,使之后行为A所包含的、传递函数VFF(z)的系数b0加上或减去增量。系数b0的初始值不限于1。系数b0的初始值可以设为任意值。机器学习装置110每当进行行为A时都根据位置偏差来给予回报,通过试错性地搜索最佳行为A的强化学习将传递函数VFF(z)的系数b0调整为价值Q的值为最大那样的最佳值,以使到将来的回报的合计最大。这里,系数b0的学习在半径r的学习之后,但是也可以与角度θ同时学习,还可以与半径r同时学习。
[0265] 另外,半径r、角度θ、系数b0也可以同时学习,但是通过分开学习可以降低机器学习量,可以缩短机器学习的收敛时间。
[0266] 图11的机器学习装置110的结构与图5所示的结构一样,因此,以下参照图5进行说明。
[0267] 状态信息取得部111从伺服控制装置320取得包含指令、反馈等伺服状态的状态S,其中,指令、反馈包含根据伺服控制装置320中的速度前馈处理部328的IIR滤波器3282的传递函数VFF(z)的系数a1、a2、b0~b2的值来执行学习时的加工程序而取得的伺服控制装置320的位置指令和位置偏差信息。该状态信息S相当于Q学习中的环境状态S。
[0268] 状态信息取得部111对学习部112输出取得到的状态信息S。此外,状态信息取得部111从行为信息生成部1123取得用极坐标表示了零点和极的角度θ、半径r、以及与它们对应的系数a1、a2、b1’、b2’并进行存储,从伺服控制装置320取得的系数a1、a2、b1’、b2’所对应的用极坐标表示了零点和极的角度θ、半径r也一起输出给学习部112。
[0269] 另外,最初开始Q学习的时间点的IIR滤波器3282的传递函数VFF(z)的初始设定由用户预先设定。在本实施方式中,之后,如上所述,通过在规定的范围内分别搜索用极坐标表示了零点和极的半径r与角度θ的强化学习,将用户初始设定的IIR滤波器3282的传递函数VFF(z)的系数a1、a2、b0~b2调整为最佳。速度前馈处理部328的二阶微分器2181的系数α设为固定值,例如设α=1。此外,IIR滤波器3282的传递函数VFF(z)的分母的初始设定设为数学式5所示那样(通过双线性变换而变换后的z区域的传递函数)。此外,对于传递函数VFF(z)的分子的系数b0~b2的初始设定例如可以设b0=1,将r设为0≤r≤1的范围内的值,将θ设为所述的规定搜索范围内的值。
[0270] 此外,关于系数a1、a2、b0~b2以及系数c1、c2、d0~d2,在操作员预先调整了机床的情况下,可以将用极坐标表示了调整完成的传递函数的零点和极的半径r与角度θ的值设为初始值来进行机器学习。
[0271] 学习部112是在某种环境状态S下对选择某种行为A时的价值Q(S、A)进行学习的部分。另外,关于行为A,例如将系数b0固定为1,根据用极坐标表示了传递函数VFF(z)的零点的半径r与角度θ的修正信息来计算IIR滤波器3282的传递函数VFF(z)的分子的系数b1’、b2’的修正信息。在以下的说明中,以系数b0例如初始设定为1,行为信息A是系数b1’、b2’的修正信息的情况为例进行说明。
[0272] 回报输出部1121是在某种状态S下计算选择了行为A时的回报的部分。这里,状态S下的状态变量即位置偏差的集合(位置偏差集合)通过PD(S)来表示,因行为信息A而从状态S变化了的状态信息S’有关的状态变量即位置偏差集合通过PD(S’)来表示。此外,状态S下的位置偏差的值设为根据预先设定的评价函数f(PD(S))而计算出的值。
[0273] 作为评价函数f,例如可以应用如下等函数,
[0274] 计算位置偏差的绝对值的积分值的函数
[0275] ∫|e|dt
[0276] 对位置偏差的绝对值进行时间加权来计算积分值的函数
[0277] ∫t|e|dt
[0278] 计算位置偏差的绝对值的2n(n是自然数)次幂的积分值的函数
[0279] ∫e2ndt(n是自然数)
[0280] 计算位置偏差的绝对值的最大值的函数
[0281] Max{|e|}。
[0282] 此时,在根据通过行为信息A进行了修正的状态信息S’有关的修正后的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S’))比根据通过行为信息A进行修正前的状态信息S有关的修正前的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S))大时,回报输出部1121使回报值为负值。
[0283] 另一方面,在根据通过行为信息A进行了修正的状态信息S’有关的修正后的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S’))比根据通过行为信息A进行修正前的状态信息S有关的修正前的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S))小时,回报输出部1121使回报值为正值。
[0284] 另外,在根据通过行为信息A进行了修正的状态信息S’有关的修正后的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S’))与根据通过行为信息A进行修正前的状态信息S有关的修正前的速度前馈处理部328而进行了动作的伺服控制装置320的位置偏差的值f(PD(S))相等时,回报输出部1121使回报值为零。
[0285] 此外,执行行为A后的状态S’的位置偏差的值f(PD(S’))比之前的状态S下的位置偏差的值f(PD(S))大时的负值,可以根据比例将负值设定得大。也就是说,可以根据位置偏差的值变大的程度使负值变大。反之,执行行为A后的状态S’的位置偏差的值f(PD(S’))比之前的状态S下的位置偏差的值f(PD(S))小时的正值,可以根据比例将正值设定得大。也就是说,可以根据位置偏差的值变小的程度使正值变大。
[0286] 价值函数更新部1122根据状态S、行为A、将行为A应用于状态S时的状态S’、如上所述计算出的回报值来进行Q学习,由此,对价值函数存储部114存储的价值函数Q进行更新。
[0287] 价值函数Q的更新既可以通过在线学习来进行,也可以通过批量学习来进行,还可以通过小批量学习来进行。
[0288] 行为信息生成部1123针对当前状态S选择Q学习的过程中的行为A。行为信息生成部1123在Q学习的过程中,为了进行根据用极坐标表示了零点的半径r与角度θ来修正伺服控制装置320的IIR滤波器3282的传递函数VFF(z)的系数b1’、b2’的动作(相当于Q学习中的行为A),而生成行为信息A,对行为信息输出部113输出所生成的行为信息A。
[0289] 更具体来说,行为信息生成部1123例如为了在极坐标上搜索零点,而在固定了数学公式6的传递函数VFF(z)的系数a1、a2、b0的状态下,在分子(z2+b1’z+b2’)中将z的零点设iθ为re ,在固定了从状态信息取得部111接收到的半径r的状态下,使从状态信息取得部111接收到的角度θ在图14的搜索范围内增加或减少。并且,通过固定了的半径r和增加或减少的角度θ,设定作为零点的z和其共轭复数z*,根据该零点重新求出系数b1’、b2’。
[0290] 可以采取如下策略:行为信息生成部1123在使角度θ增加或减少,重新设定IIR滤波器3282的传递函数VFF(z)的系数b1’、b2’而向状态S’转移并返回了正回报(正值的回报)时,作为下一行为A’,选择与前次的动作同样地增加或减少角度θ等使位置偏差值更小那样的行为A’。
[0291] 此外,反之还可以采取如下策略:当返回了负回报(负值的回报)时,行为信息生成部1123作为下一行为A’,例如选择与前次的动作相反地减少或增加角度θ等使位置偏差比前次的值小那样的行为A’。
[0292] 行为信息输出部1123继续角度θ的搜索,通过来自优化行为信息输出部115的后述的优化行为信息,利用学习来决定价值Q的值为最大那样的最佳角度θ0时,之后,将角度θ固定为该角度θ0而在0≤r≤1的范围内搜索半径r,与角度θ的搜索一样地设定IIR滤波器3282的传递函数VFF(z)的分子的系数b1’、b2’。行为信息生成部1123继续半径r的搜索,通过来自优化行为信息输出部115的后述的优化行为信息,利用学习来决定价值Q的值为最大那样的最佳半径r0时,决定分子的最佳系数b1’、b2’。之后,如上所述,通过学习系数b0,学习传递函数VFF(z)的分子的系数的最佳值。
[0293] 之后,行为信息生成部1123与上述一样地根据用极坐标表示了极的半径r与角度θ来搜索传递函数VFF(z)的分母有关的传递函数的系数。另外,该学习与IIR滤波器3282的传递函数VFF(z)的分子的情况一样通过强化学习将用极坐标表示了极的半径r与角度θ调整为最佳。此时,在与传递函数VFF(z)的分子的情况一样地学习了角度θ之后学习半径r。由于学习方法与传递函数VFF(z)的零点的搜索情况一样,因此详细说明省略。
[0294] 行为信息输出部113是对伺服控制装置320发送从学习部112输出的行为信息A的部分。如上所述,伺服控制装置320根据该行为信息,对当前状态S,即用极坐标表示当前设定的IIR滤波器3282的传递函数VFF(z)的零点的半径r和角度θ进行微修正,而向下一状态S’(即,与进行了修正的零点对应的、IIR滤波器3282的传递函数VFF(z)的系数b1’、b2’)转移。
[0295] 价值函数存储部114是存储价值函数Q的存储装置。价值函数Q例如可以按状态S、行为A而存储为表(以下,称为行为价值表)。存储于价值函数存储部114的价值函数Q通过价值函数更新部1122而被更新。此外,存储于价值函数存储部114的价值函数Q也可以在与其他机器学习装置110之间共享。如果在多个机器学习装置110之间共享价值函数Q,则能够通过各机器学习装置110分散地进行强化学习,因此,能够提升强化学习的效率。
[0296] 优化行为信息输出部115根据价值函数更新部1122进行Q学习而进行了更新的价值函数Q,生成用于使速度前馈处理部328进行价值Q(S、A)为最大的动作的行为信息A(以下,称为“优化行为信息”)。
[0297] 更具体来说,优化行为信息输出部115取得价值函数存储部114存储的价值函数Q。如上所述该价值函数Q是通过价值函数更新部1122进行Q学习而被更新的函数。并且,优化行为信息输出部115根据价值函数Q,生成行为信息,对伺服控制装置320(速度前馈处理部
328的IIR滤波器3282)输出所生成的行为信息。该优化行为信息与行为信息输出部113在Q学习的过程中输出的行为信息一样,包含通过角度θ、半径r和系数b0的学习来修正IIR滤波器3282的传递函数VFF(z)的系数信息。
[0298] 在伺服控制装置320中,根据基于角度θ、半径r和系数b0的行为信息来修正IIR滤波器3282的传递函数VFF(z)的分子有关的传递函数的系数。
[0299] 机器学习装置100在通过以上的动作进行了IIR滤波器3282的传递函数VFF(z)的分子的系数优化之后,与该优化一样,通过角度θ和半径r的学习,来进行IIR滤波器3282的传递函数VFF(z)的分母的系数优化。
[0300] 像以上那样,通过利用本发明涉及的机器学习装置110,可以使伺服控制装置320的速度前馈处理部328的参数调整简化。
[0301] 在本实施方式中,回报输出部1121通过对将状态S下的位置偏差PD(S)作为输入而根据预先设定的评价函数f(PD(S))计算出的状态S的位置偏差的值f(PD(S))、与将状态S’下的位置偏差PD(S’)作为输入而根据评价函数f计算出的状态S’的位置偏差的值f(PD(S’))进行比较而计算出回报的值。
[0302] 但是,也可以当进行回报值的计算时施加位置偏差以外的其他要素。
[0303] 例如,除了成为减法器102的输出的位置偏差之外,还可以对机器学习装置110施加成为加法器323的输出的位置前馈控制的速度指令、位置前馈控制的速度指令与速度反馈之差、以及成为加法器326的输出的位置前馈控制的转矩指令等中的至少一个。
[0304] 接下来,对输出装置210进行说明,但是结构与图8所示的第一实施例的输出装置210一样,因此,只对动作的不同点进行说明。本实施例的显示部219的显示画面与第一实施例所示的图9B的显示画面的不同点在于:第一实施例所示的图9B的显示画面P的栏P3的内容(滤波器的频率响应特性图等)置换为图15所示的、速度前馈处理部的频率响应特性图以及表示位置偏差特性的图。
[0305] 在本实施例中,输出装置210将包含指令以及反馈等的伺服状态输出给机器学习装置110,其中,指令以及反馈包含速度前馈处理部328的IIR滤波器3282的传递函数VFF(z)的系数a1、a2、b0~b2、伺服控制装置320的位置偏差、以及位置指令。此时,控制部215将从减法器321输出的位置偏差与时刻信息一起存储于存储部216中。
[0306] 操作员在通过鼠标、键盘等操作部214选择显示部219的图9B所示的显示画面的“调整流程”的栏P1的“机器学习”时,控制部215经由信息输出部212对机器学习装置110输送包含用尝试次数关联起来的状态S有关的系数a1、a2、b0~b2、该机器学习的调整对象(学习对象)相关的信息、尝试次数、最大尝试次数在内的信息、评价函数值等的输出指示。
[0307] 信息取得部211从机器学习装置110接收包含用尝试次数关联起来的状态S有关的系数a1、a2、b0~b2、该机器学习的调整对象(学习对象)相关的信息、尝试次数、最大尝试次数、评价函数值在内的信息等时,控制部215将接收到的信息存储于存储部216中,并且向运算部220转移控制。
[0308] 运算部220从机器学习装置110的机器学习中的控制参数,具体来说从强化学习时或强化学习后的控制参数(例如上述的状态S有关的数学公式6的传递函数VFF(z)的系数a1、a2、b0~b2)求出速度前馈处理部328的IIR滤波器3282的特性(中心频率fc、带宽fw、衰减系数R)。
[0309] 可以从传递函数VFF(z)的零点和极求出中心频率fc、带宽fw、衰减系数(damping)R,运算部220计算中心频率fc、带宽fw、衰减系数R,求出包含中心频率fc、带宽fw、衰减系数R的传递函数VFF(z)时,向控制部215转移控制。
[0310] 控制部215将包含中心频率fc、带宽fw、衰减系数R的参数、以及中心角频率ωn、分数带宽ζ、衰减系数R的传递函数VFF(z)存储于存储部216中。
[0311] 作图部213与第一实施例所说明的一样,从包含中心角频率ωn、分数带宽ζ、衰减系数R的传递函数求出IIR滤波器3282的频率响应,制作频率-增益特性图。从传递函数求出IIR滤波器3282的频率响应的方法可以使用与第一实施例一样的方法。并且,作图部213将中心频率fc、带宽fw、衰减系数(damping)R各自的值设为表,与频率-增益特性图组合。这成为图15的VFF(z)相关的信息。作图部213根据存储于存储部216的位置偏差和位置指令求出位置偏差的频率特性,制作频率-位置偏差特性图。此外,根据位置偏差和该时刻信息求出位置偏差的时间响应特性图。并且,将每一个采样时间的位置偏差值的均方根(RMS)、在频域观察位置偏差时的频率峰值即误差峰值频率、以及评价函数组合,将频率-位置偏差特性图以及位置偏差的时间响应特性图组合。这成为图15的位置偏差相关的信息。可以通过运算部220求出每一个采样时间的位置偏差值的均方根(RMS)以及误差峰值频率。
[0312] 作图部213制作结合了VFF(z)相关的信息和位置信息相关的信息而得的图像信息,向控制部215转移控制。
[0313] 控制部215将图15的VFF(z)相关的信息和位置偏差相关的信息显示于图9B的栏P3。
[0314] 此外,控制部215例如根据表示速度前馈处理部是调整对象的信息,如图9B所示,在显示画面的调整对象项目显示为速度前馈处理部,在尝试次数没有达到最大尝试次数时在显示画面的状况栏中显示为数据采集中。进而,控制部215在显示画面的尝试次数栏中显示尝试次数相对于最大尝试次数的比。
[0315] 机器学习装置110进行系数a1、a2、b0~b2的学习,即使评价函数值不变,例如即使在机床的加工处理之后的停止状态下,有时也会因停止后的振动使得位置偏差的时间响应、或频率响应发生变化。输出装置210在学习后,观察图15的显示部的显示画面通过观察了位置偏差的时间响应、或频率响应的变化的操作员的指示,进行速度前馈处理部的系数的调整或指示机器学习装置110进行再学习。
[0316] 图16是表示本发明的第二实施例的机器学习结束指示之后的输出装置的动作的流程图。
[0317] 本实施例中的表示从机器学习开始到机器学习结束为止的、以输出装置为中心的控制装置的动作的流程从步骤S31~S35中,与图10所示的流程的不同点在于:状态信息并不是输入增益、相位延迟、陷波滤波器的系数,而是位置指令、位置偏差、速度前馈处理部的系数,行为信息是速度前馈处理部的系数的修正信息。
[0318] 图15的位置偏差的时间响应特性图、频率-位置偏差特性图表示因停止后的振动,使得位置偏差增大的情况。
[0319] 在图15中,操作员选择“调整”按钮时,中心频率fc、带宽fw、衰减系数(damping)R的表的各值能够变更。观察图15的位置偏差的时间响应特性图、频率-位置偏差特性图,操作员将表的中心频率fc从480Hz变换为500Hz。
[0320] 于是,在图16的步骤S36中,控制部215判定为调整,在步骤S37中,对伺服控制装置310输出包含IIR滤波器3282的修正参数(系数a1、a2、b0~b2的变更值)的修正指示。伺服控制装置310返回到步骤S11,通过变更后的系数a1、a2、b0~b2来驱动机床,将位置偏差输出给输出装置210。
[0321] 在步骤S38中,如图17所示,输出装置210根据变更后的中心频率fc,求出IIR滤波器3282的频率响应,将频率-增益特性图显示于显示部219的显示画面,还将表示位置偏差的时间响应特性、频率-位置偏差特性的时间响应特性图、频率-位置偏差特性图显示于显示部219的显示画面。
[0322] 这样,操作员观察IIR滤波器3282的频率响应、位置偏差的时间响应以及频率响应,根据需要变更中心频率fc、带宽fw、衰减系数(damping)R中的一个或多个,可以对IIR滤波器3282的频率响应特性、位置偏差的时间响应特性以及频率响应特性进行微调整。
[0323] 另一方面,在操作员选择图15所示的“再学习”按钮时,在图16的步骤S36中,控制部215判定为再学习,在步骤S39中,对机器学习装置110指示以480Hz为中心的再学习。机器学习装置110返回到步骤S21,执行以480Hz为中心的再学习。此时,图14所示的搜索范围变更为以480Hz为中心的范围,或者从较宽范围选择为较窄范围。
[0324] 在步骤S40中,如图17所示,输出装置210根据从机器学习装置发送的控制参数,求出IIR滤波器3282的频率响应,将频率-增益特性图显示于显示部219的显示画面,此外将表示位置偏差的时间响应特性、频率-位置偏差特性的时间响应特性图、频率-位置偏差特性图显示于显示部219的显示画面。
[0325] 这样,操作员观测IIR滤波器3282的频率响应、位置偏差的时间响应以及频率响应,进行机器学习装置110的再学习,可以进行调整IIR滤波器3282的频率响应特性、位置偏差的时间响应特性以及频率响应特性的再学习。
[0326] 以上,对第一实施方式的输出装置以及控制装置的第二实施例进行了说明,接下来对第三实施例进行说明。
[0327] <第三实施例>
[0328] 本实施例以用户可以理解的方式将第二实施例的控制装置的速度前馈处理部的系数变换为具有物理意义的值,具体来说变换为图18所示的、成为数学公式模型的电动机反向特性(motor reverse characteristic)、陷波滤波器、以及低通滤波器的系数,更具体来说变换为惯量J、中心角频率(陷波频率)ωn、分数带宽(陷波衰减)、衰减系数(陷波深度)R、时间常数τ来进行输出。本实施例中的输出装置的结构与图8所示的输出装置210的结构相同。在第二实施例中使用极坐标进行了学习但是在本实施例中与第一实施例一样,不使用极坐标来进行学习。
[0329] 关于速度前馈处理部328的传递函数F(s),使用成为数学公式模型的电动机反向特性3281A、陷波滤波器3282A、以及低通滤波器3283A来表示时,可以通过数学公式8来进行表示。
[0330] 【数学式8】
[0331]
[0332] 根据数学公式8,相当于b4=J、b3=2JRζωn、b1=0、b0=0、a4=τ2、a3=(2ζωnτ2+2τ)、a2=(ωn2τ2+4ζωnτ+1)、a1=(2ζωn2+2ζωn)、a0=ωn2。此时,衰减中心频率ωn通过[0333] 【数学式9】
[0334]
[0335] 来表示。分数带宽(陷波衰减)、衰减系数(陷波深度)R、时间常数τ也同样地进行计算。
[0336] 这样,输出装置210从传递函数F(s)的系数求出操作员等用户容易理解的物理量,例如分数带宽(陷波衰减)、衰减系数(陷波深度)R、时间常数τ,可以显示于显示部219的显示画面中。此外,可以从包含分数带宽(陷波衰减)、衰减系数(陷波深度)R、时间常数τ的传递函数中求出频率响应特性显示于显示画面中。
[0337] 以上,对第一实施方式的输出装置以及控制装置的第三实施例进行了说明,接下来对第四实施例进行说明。
[0338] <第四实施例>
[0339] 在第一实施例~第三实施例中,对伺服控制装置的结构要素的传递函数如数学式1、数学式5以及数学式8所示那样被特性化的情况进行了说明,但是伺服控制装置的结构要素的传递函数例如是数学公式10(n是自然数)所示那样的、一般传递函数的情况下,也可以应用本实施方式。伺服控制装置的结构要素例如是速度前馈处理部、位置前馈处理部、或电流前馈处理部。
[0340] 例如,机器学习装置110通过机器学习来求出最佳的系数ai、bj使得位置偏差减少。
[0341] 【数学式10】
[0342]
[0343] 并且,可以根据求出的系数ai、bj或包含求出的系数ai、bj的传递函数F(s),通过输出装置210输出表示用户容易理解的物理量、时间响应或频率响应的信息。
[0344] 在求出频率响应时,使用可以从传递函数解析频率响应的公知的软件,求出包含所求出的系数ai、bj在内的传递函数F(s)的频率响应,输出装置210可以将频率响应特性显示于显示部219的显示画面中。
[0345] 作为可以从传递函数解析频率响应的软件,例如可以使用第一实施例所说明的、以下的软件。
[0346] https://jp.mathworks.com/help/signal/ug/frequency~renponse.htmlhttps://jp.mathworks.com/help/signal/ref/freqz.htmlhttps://docs.scipy.org/doc/scipy-0.19.1/reference/generated/
scipy.signal.freqz.htmlhttps://wiki.octave.org/Control_package
[0347] 以上,对本发明的第一实施方式的输出装置以及控制装置的第一实施例~第四实施例进行了说明,接下来对本发明的第二实施方式以及第三实施方式进行说明。
[0348] (第二实施方式)
[0349] 在第一实施方式中,输出装置200与伺服控制装置300和机器学习装置100连接,进行了机器学习装置100与伺服控制装置300之间的信息中继、伺服控制装置300与机器学习装置100的动作控制。
[0350] 在本实施方式中,对输出装置只与机器学习装置连接的情况进行说明。
[0351] 图19是表示本发明的第二实施方式的控制装置的一结构例的框图。控制装置10A具有:机器学习装置100、输出装置200A、伺服控制装置300、以及伺服电动机400。
[0352] 输出装置200A相比于图8所示的输出装置200,不具有信息取得部217以及信息输出部218。
[0353] 由于输出装置200A不与伺服控制装置300连接,因此不进行机器学习装置100与伺服控制装置300之间的信息中继,不进行与伺服控制装置300之间的信息收发。具体来说,执行图10所示的步骤S31的学习程序启动指示、步骤S33的参数的物理量输出、以及步骤S35的再学习指示,但是不进行图10所示的其他动作(例如,步骤S32、S34)。这样,输出装置200A不与伺服控制装置300连接,因此,输出装置200A的动作减少,可以实现装置结构简化。
[0354] (第三实施方式)
[0355] 在第一实施方式中,输出装置200与伺服控制装置300和机器学习装置100连接,但是在本实施方式中,对调整装置与机器学习装置100和伺服控制装置300连接,输出装置与调整装置连接的情况进行说明。
[0356] 图20是表示本发明的第三实施方式的控制装置的一结构例的框图。控制装置10B具有:机器学习装置100、输出装置200A、伺服控制装置300、以及调整装置500。图20所示的输出装置200A与图19所示的输出装置200A的结构一样,但是信息取得部211和信息输出部212不与机器学习装置100连接,而是与调整装置700连接。
[0357] 调整装置500是除去了图8的输出装置200的作图部213、操作部214、显示部219以及运算部220的结构。
[0358] 图20所示的输出装置200A与第二实施方式的图19所示的输出装置200A一样,除了图10所示的、步骤S31的学习程序启动指示、步骤S33的参数的物理量输出、以及步骤S35的参数的微调整指示之外,还进行步骤S35的再学习指示,但是这些动作经由调整装置700来进行。调整装置500对机器学习装置100与伺服控制装置300之间的信息进行中继。此外,调整装置500对输出装置200A进行的、针对机器学习装置100的学习程序启动指示等进行中继,分别将启动指示输出给机器学习装置100。
[0359] 这样,与第一实施方式相比较,输出装置200的功能分给输出装置200A与调整装置500,因此,输出装置200A的动作少,可以实现装置结构简化。
[0360] 以上对本发明有关的各实施方式以及实施例进行了说明,上述的伺服控制装置的伺服控制部、机器学习装置以及输出装置所包含的各结构部可以通过硬件、软件或者它们的组合来实现。此外,由上述伺服控制装置所包含的各结构部的各自协作而进行的伺服控制方法也可以通过硬件、软件或者它们的组合来实现。这里,所谓通过软件来实现表示计算机通过读入程序来执行从而实现。
[0361] 可以使用各种类型的非易失性的计算机可读记录介质(non-transitory computer readable medium)来存储程序并将该程序供给到计算机。非易失性的计算机可读记录介质包含各种类型的有实体的记录介质(tangible storage medium)。非易失性的计算机可读记录介质的示例包含:磁记录介质(例如,磁盘、硬盘驱动器)、光-磁记录介质(例如,光磁盘)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半导体存储器(例如,掩模ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、闪存ROM、RAM(random access memory)。
[0362] 上述实施方式以及实施例是本发明的优选实施方式以及变形例,但是并非将本发明的范围只限定于上述实施方式以及实施例,可以在不脱离本发明精神的范围内以实施了各种变更的方式来进行实施。
[0363] 例如,在图9B中示出了陷波滤波器的频率响应,在图15以及图16中示出了IIR滤波器的频率响应等的频率响应特性,但是也可以表示陷波滤波器的时间响应、IIR滤波器的时间响应等时间响应特性。所谓时间响应例如是给予了阶梯状的输入时的阶跃响应(step response)、给予了脉冲状的输入时的脉冲响应(impulse response)、输入从无变化的状态向以一定速度变化的状态转移时的斜坡响应(ramp response)。可以从包含中心角频率ωn、分数带宽ζ、衰减系数R的传递函数求出阶跃响应、脉冲响应、以及斜坡响应。
[0364] <输出装置包含于伺服控制装置或机器学习装置的变形例>
[0365] 在上述的实施方式中,对将机器学习装置100、输出装置200或200A、以及伺服控制装置300构成为控制装置的示例、将输出装置200分为输出装置200A和调整装置500设置于控制装置而构成的示例进行了说明。在这些示例中,机器学习装置100、输出装置200或200A、伺服控制装置300、调整装置500通过分开的装置构成,但是也可以将这些装置中的一个与其他装置一体地构成。例如,可以通过机器学习装置100或伺服控制装置300来实现输出装置200或200A的功能的一部分或全部。
[0366] 此外,也可以将输出装置200或200A设置于由机器学习装置100以及伺服控制装置300构成的控制装置的外部。
[0367] <系统结构的自由度>
[0368] 图21是表示其他结构的控制装置的框图。如图21所示,控制装置10C具有n台机器学习装置100-1~100-n、输出装置200-1~200-n、以及n台伺服控制装置300-1~300-n、伺服电动机400-1~400-n以及网络600。另外,n是任意自然数。n台机器学习装置100-1~100-n分别与图5所示的机器学习装置100对应。输出装置200-1~200-n与图8所示的输出装置210或图19所示的输出装置200A对应。n台伺服控制装置300-1~300-n分别与图2或图11所示的伺服控制装置300对应。图20所示的输出装置200A以及调整装置500与输出装置200-1~200-n对应。
[0369] 这里,输出装置200-1与伺服控制装置300-1为一对一的组,能够通信地连接。关于输出装置200-2~200-n和伺服控制装置300-2~300-n,也与输出装置200-1和伺服控制装置300-1一样地连接。在图21中,输出装置200-1~200-n和伺服控制装置300-1~300-n的n个组经由网络600而连接,关于输出装置200-1~200-n和伺服控制装置300-1~300-n这n个组,各组的输出装置与伺服控制装置可以经由连接接口而直接连接。关于这些输出装置200-1~200-n与伺服控制装置300-1~300-n这n个组,例如可以在同一个工厂中设置多组,也可以分别设置于不同的工厂中。
[0370] 另外,网络600例如是在工厂内构建的LAN(Local Area Network:局域网)、互联网、公共电话网、或者它们的组合。对于网络600中具体的通信方式是有线连接还是无线连接等没有特别限定。
[0371] 在上述的图21的控制装置中,输出装置200-1~200-n与伺服控制装置300-1~300-n作为一对一的组以能够通信的方式进行连接,例如一台输出装置200-1可以经由网络
600而与多台伺服控制装置300-1~300-m(m<n或m=n)能够通信地连接,与一台输出装置
200-1连接的一台机器学习装置可以实施各伺服控制装置300-1~300-m的机器学习。
[0372] 此时,可以将机器学习装置100-1的各功能作为适当分散到多个服务器的分散处理系统。此外,机器学习装置100-1的各功能也可以在上利用虚拟服务器功能等来实现。
[0373] 此外,当存在与多个相同型号名称、相同规格、或者相同系列的伺服控制装置300-1~300-n分别对应的多个机器学习装置100-1~100-n时,可以共享各机器学习装置100-1~100-n中的学习结果。这样,能够构建更理想的模型。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈