首页 / 专利库 / 人工智能 / 人工智能 / 机器学习 / 强化学习 / 机器学习装置、控制装置以及机器学习方法

机器学习装置、控制装置以及机器学习方法

阅读:1037发布:2020-07-15

专利汇可以提供机器学习装置、控制装置以及机器学习方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种 机器学习 装置、控制装置以及机器学习方法。机器学习装置对具备校正生成部和限制部的伺服控制装置进行与校正生成部的校正量的最佳化有关的机器学习,其中,校正生成部生成添加在对驱动机床、 机器人 或者工业机械的轴的伺服 电动机 进行控制的控制指令的校正量,限制部将校正量或者添加了校正量的控制指令限制在设定范围内,在机器学习动作中,在伺服控制装置中校正量或者添加了校正量的控制指令成为设定范围外,且限制部对校正量或者添加了校正量的控制指令加以限制而成为设定范围内的情况下,在机器学习装置中,将校正量反映到学习中,继续进行将由校正生成部生成的校正量最佳化的新的搜索。,下面是机器学习装置、控制装置以及机器学习方法专利的具体信息内容。

1.一种机器学习装置,其对具备校正生成部和限制部的伺服控制装置进行与上述校正生成部的校正量的最佳化有关的机器学习,其中,上述校正生成部生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机进行控制的控制指令的校正量,上述限制部将上述校正量或者添加了上述校正量的控制指令限制在设定范围内,其特征在于,在机器学习动作中,在上述伺服控制装置中上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外,且上述限制部对上述校正量或者添加了上述校正量的上述控制指令加以限制而成为上述设定范围内的情况下,在上述机器学习装置中,将上述校正量反映到学习中,继续进行将由上述校正生成部生成的上述校正量最佳化的新的搜索。
2.根据权利要求1所述的机器学习装置,其特征在于,
上述限制部在对上述校正量或者添加了上述校正量的上述控制指令加以限制的情况下,将上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外的情况通知给上述机器学习装置,
上述机器学习装置在接受到上述通知时,将上述校正量反映到学习中。
3.根据权利要求1或2所述的机器学习装置,其特征在于,
作为上述机器学习而进行强化学习
从上述限制部接受到上述通知时,给予不选择上述校正量或者添加了上述校正量的上述控制指令超过上述设定范围那样的上述校正量的回报。
4.根据权利要求3所述的机器学习装置,其特征在于,
基于上述回报更新价值函数,并基于更新后的价值函数,生成最佳的上述校正量或者校正参数的调整信息,并输出到上述校正生成部。
5.根据权利要求1~4中任一项所述的机器学习装置,其特征在于,
上述控制指令包括速度指令和转矩指令中的至少一个,上述校正量包括对上述速度指令添加的位置前馈项和对上述转矩指令添加的速度前馈项中的至少一个。
6.根据权利要求1~5中任一项所述的机器学习装置,其特征在于,
上述设定范围是上限和下限被固定的范围。
7.根据权利要求1~5中任一项所述的机器学习装置,其特征在于,
上述设定范围是上限和下限变动的范围。
8.根据权利要求7所述的机器学习装置,其特征在于,
上述限制部根据加工精度或者加工周期时间来改变上述设定范围的上限和下限。
9.一种控制装置,其特征在于,具备:
权利要求1~8中任一项所述的机器学习装置;以及
伺服控制装置,具备:校正生成部,其生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机的进行控制的控制指令的校正量;以及限制部,其将上述校正量或者添加了上述校正量的控制指令限制在设定范围内。
10.根据权利要求9所述的控制装置,其特征在于,
上述机器学习装置包含于上述伺服控制装置。
11.一种机器学习装置的机器学习方法,上述机器学习装置对伺服控制装置进行与校正量的最佳化有关的机器学习,其中,上述伺服控制装置生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机的进行控制的控制指令的校正量,将校正量或者添加了上述校正量的控制指令限制在设定范围内,其特征在于,
在机器学习动作中,在上述伺服控制装置中上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外,且对上述校正量或者添加了上述校正量的上述控制指令加以限制而成为上述设定范围内的情况下,在上述机器学习装置中,将上述校正量反映到学习中,继续进行将上述校正量最佳化的新的搜索。

说明书全文

机器学习装置、控制装置以及机器学习方法

技术领域

[0001] 本发明涉及对具备校正生成部的伺服控制装置进行与校正生成部的校正量的最佳化有关的机器学习的机器学习装置、包括该机器学习装置的控制装置以及机器学习方法,上述校正生成部生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机进行控制的控制指令的校正量。

背景技术

[0002] 例如专利文献1中记载有伺服控制装置,该伺服控制装置对控制伺服电动机的速度指令或者转矩指令添加位置前馈项或者速度前馈项等校正量,伺服电动机驱动机床、机器人或者工业机械的轴。
[0003] 专利文献1中记载有在切断电源之前报告伺服电动机的动作状态的伺服控制装置。该伺服控制装置具备伺服电动机和安全单元。若伺服电动机的速度、位置、加速度、移动量、移动方向、转矩中的至少任意一个成为第一动作范围外,则安全单元切断对伺服电动机的供电。另外,若速度、位置、加速度、移动量、移动方向、转矩中的至少任意一个包含于第一动作范围内,并且成为比第一动作范围窄的第二动作范围外,则安全单元输出警告。
[0004] 专利文献1:日本特开2017-55655号公报

发明内容

[0005] 在对控制驱动机床、机器人或者工业机械的轴的伺服电动机的速度指令或者转矩指令添加位置前馈项或者速度前馈项等校正量的伺服控制装置中,存在若生成的校正量不在适当的范围内,位置偏差增大,则被伺服控制装置驱动的机床、机器人、或者工业机械的动作变得不稳定,机床等由于报警而停止、结束的情况。
[0006] 例如,在不是空运转,而一边使机床实际动作一边学习校正量的情况下,若该校正量不在适当的范围内,则有可能在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0007] 另一方面,在添加到速度指令或者转矩指令的位置前馈项或者速度前馈项等校正量使用后述的高阶的传递函数生成的情况下,考虑机器学习装置一边使机床实际动作一边通过机器学习求出该传递函数的系数的方法。
[0008] 作为这种学习方法的一个例子,考虑通过强化学习进行的传递函数的系数的机器学习。强化学习是所谓的监督学习,即,若智能体观测环境的状态,并选择某个行为,则环境基于该行为变化,随着环境的变化,给予一些回报,智能体学习更好的行为的选择(决策)。在通过这种强化学习而机器学习到传递函数的系数的情况下,在环境的状态是位置偏差的情况下,若例如选择该位置偏差增大这样的系数,则在电动机或者机械前端产生振动而不能进行有效的机器学习,另外,机床等由于报警而停止、结束,从而机器学习中断。因此,需要在机器学习装置一边使机床实际动作,一边对校正量进行机器学习的情况下,即使选择不适当的校正量,也能够继续机器学习的机器学习装置、包括该机器学习装置的控制装置以及机器学习方法,而不会在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0009] 本发明的目的在于提供一种机器学习装置、包括该机器学习装置的控制装置以及机器学习方法,在具备生成添加到控制伺服电动机的控制指令的校正量的校正生成部的伺服控制装置中,在一边使机床、机器人或者工业机械等实际动作一边对校正生成部中的校正量的计算式进行机器学习的情况下,在机器学习中,即使计算出不适当的校正量,也能够继续机器学习而不会在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0010] (1)本发明所涉及的机器学习装置对具备校正生成部(例如,后述的位置前馈处理部113、速度前馈处理部115、或者校正生成部117)和限制部(例如,后述的速度指令限制部104或者转矩指令限制部108)的伺服控制装置(例如,后述的伺服控制装置100或者100A)进行与上述校正生成部的校正量的最佳化有关的机器学习,其中,上述校正生成部生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机(例如,后述的伺服电动机109)进行控制的控制指令的校正量,上述限制部将上述校正量或者添加了上述校正量的控制指令限制在设定范围内,
[0011] 在机器学习动作中,在上述伺服控制装置中上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外,且上述限制部对上述校正量或者添加了上述校正量的上述控制指令加以限制而成为上述设定范围内的情况下,在上述机器学习装置中,将上述校正量反映到学习中,继续进行将由上述校正生成部生成的上述校正量最佳化的新的搜索。
[0012] (2)在上述(1)的机器学习装置中,上述限制部在对上述校正量或者添加了上述校正量的上述控制指令加以限制的情况下,将上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外的情况通知给上述机器学习装置,
[0013] 上述机器学习装置在接受到上述通知时,将上述校正量反映到学习中。
[0014] (3)在上述(1)或者(2)的机器学习装置中,作为上述机器学习而进行强化学习,[0015] 从上述限制部接受到上述通知时,给予不选择上述校正量或者添加了上述校正量的上述控制指令超过上述设定范围那样的上述校正量的回报。
[0016] (4)在上述(3)的机器学习装置中,基于上述回报更新价值函数,并基于更新后的价值函数,生成最佳的上述校正量或者校正参数的调整信息,并输出到上述校正生成部。
[0017] (5)在上述(1)~(4)的任一项的机器学习装置中,上述控制指令包括速度指令和转矩指令中的至少一个,上述校正量包括对上述速度指令添加的位置前馈项和对上述转矩指令添加的速度前馈项中的至少一个。
[0018] (6)在上述(1)~(5)的任一项的机器学习装置中,上述设定范围是上限和下限被固定的范围。
[0019] (7)在上述(1)~(5)的任一项的机器学习装置中,上述设定范围是上限和下限变动的范围。
[0020] (8)在上述(7)的机器学习装置中,上述限制部根据加工精度或者加工周期时间来改变上述设定范围的上限和下限。
[0021] (9)本发明所涉及的控制装置:具备上述(1)~(8)中任一项所述的机器学习装置(例如,后述的机器学习装置200);以及伺服控制装置(例如,后述的伺服控制装置100或者100A)具备:校正生成部(例如,后述的位置前馈处理部113、速度前馈处理部115、或者校正生成部117),其生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机的进行控制的控制指令的校正量;以及限制部(例如,后述的速度指令限制部104或者转矩指令限制部108),其将上述校正量或者添加了上述校正量的控制指令限制在设定范围内。
[0022] (10)在上述(9)的控制装置中,上述机器学习装置包含于上述伺服控制装置。
[0023] (11)本发明所涉及的机器学习方法是机器学习装置(例如,后述的机器学习装置200)的机器学习方法,上述机器学习装置对伺服控制装置(例如,后述的伺服控制装置100或者100A)进行与校正量的最佳化有关的机器学习,其中,上述伺服控制装置生成添加在对驱动机床、机器人或者工业机械的轴的伺服电动机(例如,后述的伺服电动机109)的进行控制的控制指令的校正量,将校正量或者添加了上述校正量的控制指令限制在设定范围内,[0024] 在机器学习动作中,在上述伺服控制装置中上述校正量或者添加了上述校正量的上述控制指令成为上述设定范围外,且对上述校正量或者添加了上述校正量的上述控制指令加以限制而成为上述设定范围内的情况下,在上述机器学习装置中,将上述校正量反映到学习中,继续进行将上述校正量最佳化的新的搜索。
[0025] 根据本发明,在具备生成添加到对驱动机床、机器人或者工业机械的轴进行控制的伺服电动机的控制指令的校正量的校正生成部的伺服控制装置中,在一边使机床、机器人或者工业机械等实际动作一边对上述校正生成部的校正量进行机器学习的情况下,在机器学习中,即使计算出不适当的修正量,也能够继续机器学习,而不会在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。附图说明
[0026] 图1是表示本发明的第一实施方式的控制装置的一构成例的框图
[0027] 图2是表示限制了校正后的控制指令的设定范围被固定的情况下的特性图。
[0028] 图3是表示分开设置限制了校正后的控制指令的设定范围与基准范围的情况下的特性图。
[0029] 图4是表示限制了校正后的控制指令的设定范围的上限以及下限动态变动的情况下的特性图。
[0030] 图5是用于说明加工形状为八边形的情况下的电动机的动作的图。
[0031] 图6是用于说明将加工形状为八边形的每隔一个角置换为圆弧的形状的情况下的电动机的动作的图。
[0032] 图7是表示本发明的第一实施方式的机器学习装置的框图。
[0033] 图8是表示第一实施方式中的机器学习装置的动作的流程图
[0034] 图9是表示本发明的第二实施方式的控制装置的一构成例的框图。
[0035] 图10是表示本发明的其他实施方式的控制装置的框图。

具体实施方式

[0036] 以下,使用附图对本发明的实施方式详细地进行说明。
[0037] (第一实施方式)
[0038] 图1是表示本发明的第一实施方式的控制装置的一构成例的框图。图1所示的控制装置10具备伺服控制装置100和机器学习装置200。伺服控制装置100与机器学习装置200、数值控制装置(CNC装置)300连接。
[0039] 首先,对伺服控制装置100进行说明。
[0040] 伺服控制装置100具备减法器101、位置控制部102、加法器103、速度指令限制部104、减法器105、速度控制部106、加法器107、转矩指令限制部108、伺服电动机109、积分器
110、位置检测处理部111、微分器112、位置前馈处理部113、二阶微分器114以及速度前馈处理部115。
[0041] 数值控制装置300基于使伺服电动机109动作的程序制作位置指令值。在机床中,在搭载有被加工物(工件)的工作台在X轴方向以及Y轴方向上移动的情况下,对X轴方向以及Y轴方向分别设置图1所示的伺服控制装置100。使工作台在3轴以上的方向上移动的情况下,对各个轴方向设置伺服控制装置100。
[0042] 数值控制装置300设定进给速度,制作位置指令值,并输出到减法器101、微分器112、二阶微分器114以及机器学习装置200以便成为由加工程序指定的加工形状。根据输入的程序、命令制作位置指令。
[0043] 减法器101从数值控制装置300接受位置指令,求出位置指令与位置反馈后的检测位置的差,并将该差作为位置偏差输出到位置控制部102以及机器学习装置200。
[0044] 位置控制部102将从减法器101输出的位置偏差乘以位置增益(position gain)Kp而得的值作为速度指令输出到加法器103。速度指令是控制伺服电动机109的控制指令之一。
[0045] 加法器103将速度指令和从位置前馈处理部113输入的位置前馈(feed forward)项(为校正量)相加并输出到速度指令限制部104。
[0046] 速度指令限制部104检测加上位置前馈项后的速度指令(以下,称为校正后的速度指令)是否在进行限制的设定范围内(上限以下以及下限以上)。若校正后的速度指令在设定范围内,则速度指令限制部104直接将校正后的速度指令输出到减法器105。另一方面,在校正后的速度指令为设定范围外(超过上限或者小于下限)的情况下,速度指令限制部104对校正后的速度指令加以限制而将校正后的速度指令设为设定范围内,并将设为设定范围内的速度指令输出到减法器105。
[0047] 另外,速度指令限制部104在对速度指令加以限制而设为设定范围内的情况下,对机器学习装置200进行速度限制通知。
[0048] 如以下那样设定限制了校正后的速度指令的设定范围。此外,在图2~图4中,控制指令为速度指令。
[0049] 图2所示的设定范围是固定了上限A1和下限B1的基准范围。该设定范围适合使用于制作不改变加工工件的批量产品的情况。
[0050] 图3所示的设定范围是设置了与基准范围的上限A1和下限B1不同的、由加工工件决定的固定的上限A2和下限B2的范围。该设定范围适合使用于制作加工工件变化的订购产品的情况。
[0051] 例如,能够通过[(加工工件的惯性)/(基准惯性)]×(基准范围)来求出该设定范围。
[0052] 图4所示的设定范围是上限A3和下限B3根据加工精度或者加工周期时间动态变动的范围。如图4所示,上限A3和下限B3设定为相对于未设置位置前馈(FF)的情况、或者后述的位置前馈处理部113的传递函数的系数为初始值(β=1,G(s)=1)的情况下的指令值分离宽度Δ上下。
[0053] 根据加工精度上限A3和下限B3动态变动的情况下,例如能够通过[(要求加工精度)/(基准精度)]×(基准值)来求出宽度Δ。将基准值设为固定值。另外,根据加工周期时间上限A3和下限B3动态变动的情况下,例如能够通过[(基准周期时间)/(要求加工周期时间)]×(基准值)来求出宽度Δ。将基准值设为固定值。
[0054] 减法器105求出来自速度指令限制部104的输出与速度反馈后的速度检测值的差,并将该差作为速度偏差输出到速度控制部106。
[0055] 速度控制部106对速度偏差进行比例积分处理(PI处理),并作为转矩指令输出到加法器107。具体而言,速度控制部106用积分器对速度偏差进行积分,将对该积分值乘以积分增益Ki而得的值和对速度偏差乘以比例增益Kv而得的值进行相加,并作为转矩指令输出到加法器107。转矩(torque)指令是控制伺服电动机109的控制指令之一。
[0056] 加法器107将从速度控制部106输出的转矩指令和从速度前馈处理部115输出的速度前馈项(成为校正量)相加并输出到转矩指令限制部108。
[0057] 转矩指令限制部108检测加上速度前馈项后的转矩指令(以下,称为校正后的转矩指令)是否在设定范围内(上限以下以及下限以上)。若校正后的转矩指令在设定范围内,则转矩指令限制部108直接将校正后的转矩指令输出到伺服电动机109。在校正后的转矩指令为设定范围外(超过上限或者小于下限)的情况下,转矩指令限制部108限制校正后的转矩指令而设为设定范围内,并将设为设定范围内的转矩指令输出到伺服电动机109。此外,能够与已经说明的速度指令的设定范围同样地决定转矩指令的设定范围。该情况下,在图2~图4中控制指令成为转矩指令。图4所示的设定范围中,上限A3和下限B3设定为相对于未设置速度前馈(FF)的情况、或者后述的速度前馈处理部115的传递函数的系数为初始值(α=1,F(s)=1)的情况下的指令值分离宽度Δ的上下。
[0058] 另外,转矩指令限制部108在限制转矩指令而成为设定范围内的情况下对机器学习装置200进行转矩指令限制通知。
[0059] 伺服电动机109例如也可以包含于机床、机器人、或者工业机械等。伺服控制装置100也可以与伺服电动机109一起作为机床、机器人、或者工业机械等的一部分而设置。
[0060] 伺服电动机109的旋转角度位置由与伺服电动机109相关联的作为位置检测部的旋转编码器检测出,速度检测值作为速度反馈而输入到减法器105。从减法器105到伺服电动机109为止构成速度反馈循环(loop)。
[0061] 积分器110将对速度检测值进行积分而得的积分值输出到位置检测处理部111。位置检测处理部111基于积分值求出位置检测值。位置检测值作为位置反馈而输入到减法器101。从减法器101到位置检测处理部111为止构成位置反馈循环。
[0062] 微分器112对位置指令进行微分后乘以常数β。位置前馈处理部113对微分器112的输出进行通过由公式1(以下,表示为式1)所示的传递函数G(s)表示的位置前馈处理。位置前馈处理部113将其处理结果作为位置前馈项(为校正量)输出到加法器103。
[0063] 公式1的系数ai、bj(m≥i≥0,n≥j≥0;m、n是自然数)是位置前馈处理部113的传递函数G(s)的各系数。
[0064] 【式1】
[0065]
[0066] 二阶微分器114对位置指令进行二阶微分并乘以常数α。速度前馈处理部115对二阶微分器114的输出进行通过由公式2(以下,表示为式2)所示的传递函数F(s)表示的速度前馈处理,并将其处理结果作为速度前馈项(为校正量)输出到加法器107。
[0067] 公式2的系数ci、dj(m≥i≥0,n≥j≥0;m、n是自然数)是速度前馈处理部115的传递函数F(s)的各系数。
[0068] 【式2】
[0069]
[0070] 机器学习装置200对位置前馈处理部113的传递函数的系数和速度前馈处理部115的传递函数的系数进行机器学习(以下,称为学习)。
[0071] 机器学习装置200将速度前馈处理部115的传递函数的系数的学习和位置前馈处理部113的传递函数的系数的学习分开进行,先于位置前馈处理部113的传递函数的系数的学习进行比位置前馈处理部113位于内侧(内环)的速度前馈处理部115的传递函数的系数的学习。具体而言,机器学习装置200固定位置前馈处理部113的传递函数的系数,学习速度前馈处理部115的传递函数的系数的最佳的值。然后,机器学习装置200将速度前馈处理部115的传递函数的系数固定为通过学习得到的最佳的值,学习位置前馈处理部113的传递函数的系数。
[0072] 这样,机器学习装置200能够在通过学习最佳化后的速度前馈项的条件下,进行位置前馈处理部113的传递函数的系数的最佳化所涉及的学习,能够抑制位置偏差的变动。
[0073] 因此,通过先于位置前馈处理部113的传递函数的系数的学习进行比位置前馈处理部113位于内侧(内环)的速度前馈处理部115的传递函数的系数的学习,能够抑制位置偏差的变动,实现高精度化。
[0074] 在以下的说明中,以速度前馈处理部115的传递函数的系数所涉及的机器学习(强化学习)为例进行说明。此外,作为机器学习的一个例子,本实施方式对强化学习进行了说明,但机器学习并不特别限定于强化学习。
[0075] 机器学习装置200通过执行预先设定的加工程序(为“学习时的加工程序”),对速度前馈处理部115的传递函数的系数进行机器学习(以下,称为学习)。
[0076] 这里,由学习时的加工程序指定的加工形状例如是图5所示的八边形、以及/或者图6所示的八边形的角每隔一个角被置换为圆弧的形状等。
[0077] 这里,机器学习装置200通过由学习时的加工程序指定的加工形状的位置A1和位置A3以及/或者位置B1和位置B3,评价在线性控制中变更了旋转速度时的振动,调查针对位置偏差的影响,由此进行传递函数G(s)所涉及的系数的学习。
[0078] 此外,机器学习装置200通过加工形状的位置A2和位置A4以及/或者位置B2和位置B4,评价旋转方向反转的情况下产生的惯性移动(所谓的“象限突起”),调查针对位置偏差的影响,从而也能够进行用于计算抑制象限突起的校正量的传递函数所涉及的系数的学习。
[0079] 在机器学习装置200所包含的各功能模的说明之前,首先对强化学习的基本机制进行说明。智能体(相当于本实施方式中的机器学习装置200)观测环境的状态,选择某行为,环境基于该行为而变化。随着环境的变化,给予某些回报,智能体学习更好的行为的选择(决策)。
[0080] 监督学习表示完全正确的答案,相对于此,强化学习中的回报是基于环境的一部分的变化的片断值的情况较多。因此,智能体进行学习,使得以将来的回报的合计最大的方式选择行为。
[0081] 这样,在强化学习中,通过学习行为,从而基于行为给予环境的相互作用学习适当的行为,即学习用于使将来得到的回报最大的行为。这在本实施方式中,例如表示选择用于减少位置偏差的行为信息这样的、获得对未来造成影响这样的行为。
[0082] 这里,强化学习能够使用任意的学习方法,但在以下的说明中,以学习在某环境的状态S下选择行为A的价值Q(S,A)的方法亦即Q学习(Q-learning)的情况为例进行说明。
[0083] 在Q学习中,其目的在于在某状态S下,从能够采取的行为A中选择价值Q(S,A)最高的行为A作为最佳的行为。
[0084] 然而,在最初开始Q学习的时间点,对于状态S与行为A的组合,完全不知道价值Q(S,A)的正确的值。因此,智能体在某状态S下选择各种行为A,对于此时的行为A,基于给予的回报,选择更好的行为,由此学习正确的价值Q(S,A)。
[0085] 另外,智能体想使将来得到的回报的合计最大化,所以最终目的是使其成为Q(S,A)=E[Σ(γt)rt]。这里E[]表示期待值,t是时刻,γ是后述的被称为折扣率的参数,rt是时刻t的回报,Σ是时刻t的合计。该式中的期待值是根据最佳的行为状态变化的情况下的期待值。但是,不清楚在Q学习的过程中最佳的行为是什么,所以智能体通过进行各种行为,一边搜索一边进行强化学习。这样的价值Q(S,A)的更新式例如能够通过如下的公式3(以下作为式3表示)表示。
[0086] 【式3】
[0087]
[0088] 在上述的公式3中,St表示时刻t的环境的状态,At表示时刻t的行为。通过行为At,状态变化为St+1。rt+1表示通过该状态的变化得到的回报。另外,带max的项为在状态St+1下选择了此时知道的Q值最高的行为A的情况下的Q值乘以γ后的值。这里,γ是0<γ≤1的参数,被称为折扣率。另外,α是学习系数,为0<α≤1的范围。
[0089] 上述的公式3表示根据试行At的结果、返回的回报rt+1,更新状态St下的行为At的价值Q(St,At)的方法。
[0090] 该更新式表示若与状态St下的行为At的价值Q(St,At)相比,基于行为At的下个状态St+1下的最佳的行为的价值maxaQ(St+1,A)较大,则增大Q(St,At),相反若变小,则减小Q(St,At)。换句话说,更新式使某状态下的某行为的价值接近基于此的下个状态下的最佳的行为的价值。但是,行为的价值之差根据折扣率γ和回报rt+1的一方而改变,但更新式基本上为某状态下的最佳的行为的价值传播到此前的前一个状态下的行为的价值的机制。
[0091] 这里,在Q学习中,有制作关于全部的状态行为对(S,A)的Q(S,A)的表格,并进行学习的方法。但是,求出全部的状态行为对的Q(S,A)的值时状态数过多,有时为了Q学习收敛需要很多时间。
[0092] 因此,Q学习也可以利用公知的被称为DQN(Deep Q-Network)的技术。具体而言,DQN使用适当的神经网络构成价值函数Q,并调整神经网络的参数,由此用适当的神经网络对价值函数Q进行近似而计算出价值Q(S,A)的值。通过利用DQN,Q学习收敛所需要的时间变短。此外,DQN例如在以下的非专利文献中有详细的记载。
[0093] <非专利文献>「Human-level control through deep reinforcement learning」,Volodymyr Mnih1著[online],[平成29年1月17日检索],因特网〈URL:http://files.davidqiu.com/research/nature14236.pdf〉
[0094] 机器学习装置200进行以上说明的Q学习。具体而言,机器学习装置200将伺服控制装置100中的包括速度前馈处理部115的传递函数的各系数ci、dj(m≥i≥0,n≥j≥0;m,n是自然数)的值、执行学习时的加工程序而获取的伺服控制装置100的位置偏差信息、以及位置指令在内的指令以及反馈等伺服状态作为状态S,并学习将该状态S所涉及的速度前馈处理部115的传递函数的各系数ci、dj的值的调整选择为行为A的价值Q。
[0095] 机器学习装置200基于速度前馈处理部115的传递函数的各系数ci、dj的值执行学习时的加工程序而观测包含指令以及反馈等的伺服状态的状态信息S,来决定行为A,其中,所述指令包括将上述的加工形状的位置A1和位置A3、以及/或者位置B1和位置B3处的伺服控制装置100的位置指令以及位置偏差信息。机器学习装置200每次进行行为A时都返回回报。机器学习装置200例如试错地搜索最佳的行为A以使将来的回报的合计最大。这样一来,机器学习装置200能够对包含指令、反馈等字符状态的状态S,选择最佳的行为A(即,速度前馈处理部115的最佳的系数ci,dj),该指令包含基于速度前馈处理部115的传递函数的各系数ci、dj的值,执行学习时的加工程序而获取到的伺服控制装置100的位置指令以及位置偏差信息。机器学习装置200能够进行线性动作时的速度前馈处理部115的传递函数的各系数ci、dj的学习。
[0096] 即,机器学习装置200基于学习到的价值函数Q,选择对于某状态S所涉及的速度前馈处理部115的传递函数的各系数ci、dj应用的行为A中,价值函数Q的值最大这样的行为A,从而能够选择通过执行学习时的加工程序而获取的位置偏差最小这样的行为A(即,速度前馈处理部115的系数ci、dj)。
[0097] 图7是表示第一实施方式的机器学习装置200的框图。
[0098] 为了进行上述的强化学习,如图7所示,机器学习装置200具备状态信息获取部201、学习部202、行为信息输出部203、价值函数存储部204、以及最佳化行为信息输出部
205。学习部202具备回报输出部2021、价值函数更新部2022、以及行为信息生成部2023。
[0099] 状态信息获取部201从伺服控制装置100获取包括指令、反馈等伺服状态的状态S,该指令包括伺服控制装置100中的速度前馈处理部115的传递函数的各系数ci、dj、以及包括基于这些系数执行学习时的加工程序而获取的伺服控制装置100的位置指令以及位置偏差信息。另外,状态信息获取部201从转矩指令限制部108获取通知将转矩指令限制在设定范围内的转矩指令限制通知信号。该状态信息S相当于Q学习中的环境状态S。
[0100] 状态信息获取部201将获取到的状态信息S对学习部202输出。
[0101] 此外,最初开始Q学习的时间点的速度前馈处理部115的系数ci、dj预先由用户生成。在本实施方式中,机器学习装置200通过强化学习将用户制作的速度前馈处理部115的系数ci、dj的初始设定值调整为最佳的值。将二阶微分器114的系数α设为固定值,例如设为α=1。另外,作为初始设定值,将速度前馈处理部115的系数ci、dj例如设为公式2的c0=1,c1=0,c2=0,……,cm=0,d0=1,d1=0,d2=0,……,dn=0。另外,预先设定系数ci、dj的维m、n。即,ci为0≤i≤m,dj为0≤j≤n。
[0102] 此外,在操作者预先调整机床的情况下,系数ci、dj也可以将调整完毕的值作为初始值。
[0103] 学习部202是在某环境状态S下学习选择某行为A的情况下的价值Q(S,A)的部分。另外,若学习部202从转矩指令限制部108接受转矩指令限制通知信号,则将状态S中的速度前馈处理部115的系数ci、dj作为伺服电动机109进行异常动作的校正参数反映到学习中。然后,学习部202继续进行该状态S的学习动作。此外,该状态S的学习所涉及的加工程序的执行也可以在中途停止。因此,学习部202对数值控制装置300发送用于停止该状态S的学习所涉及的加工程序的执行的指示信号即可。然后,学习部202重新搜索与产生异常时的速度前馈处理部115的系数ci、dj不同的用于下次学习的系数,并设定于速度前馈处理部115,并且将表示设定了速度前馈处理部115的系数的系数设定通知信号发送到数值控制装置300。若数值控制装置300接受系数设定通知信号,则在继续学习的情况下,使加工程序动作而将位置指令发送到伺服控制装置100。
[0104] 回报输出部2021是在某状态S下,计算选择了行为A的情况下的回报的部分。这里,状态S中的状态变量亦即位置偏差的集合(位置偏差集合)由PD(S)表示,通过行为信息A从状态S变化后的状态信息S'所涉及的状态变量亦即位置偏差集合由PD(S')表示。另外,状态S中的位置偏差的评价函数值为基于预先设定的评价函数f(PD(S))计算出的值。行为信息A是速度前馈处理部115的各系数ci、dj(i、j表示0以及正的整数)的修正。
[0105] 这里,状态S中的状态变量亦即位置偏差的集合是指在包含上述的加工形状的位置A1和位置A3以及/或者位置B1和位置B3的预定的范围内测量出的位置偏差的集合。
[0106] 作为评价函数f,例如能够应用计算位置偏差的绝对值的累计值的函数∫|e|dt,对位置偏差的绝对值进行时间的加权来计算累计值的函数∫t|e|dt,计算位置偏差的绝对值的2n(n是自然数)次幂的累计值的函数∫e2ndt(n是自然数),计算位置偏差的绝对值的最大值的函数Max{|e|}等。e表示位置偏差。
[0107] 此时,在基于通过行为信息A修正后的状态信息S'所涉及的修正后的速度前馈处理部115动作的伺服控制装置100的位置偏差的评价函数值f(PD(S'))大于基于通过行为信息A修正前的状态信息S所涉及的修正前的速度前馈处理部115动作的伺服控制装置100的位置偏差的评价函数值f(PD(S))的情况下,回报输出部2021将回报的值设为负值。
[0108] 此外,回报输出部2021在从转矩指令限制部108接受到速度限制通知信号时,能够将回报的值设为绝对值大的负值,以免选择生成产生设定范围外的转矩指令的速度前馈项的速度前馈处理部115的系数ci、dj。这样一来,产生设定范围外的转矩指令时的速度前馈处理部115的系数ci、dj实质上能够从今后的学习范围排除。
[0109] 另一方面,在位置偏差的评价函数值f(PD(S'))小于位置偏差的评价函数值f(PD(S))的情况下,回报输出部2021将回报的值设为正值。
[0110] 此外,在位置偏差的评价函数值f(PD(S'))与位置偏差的评价函数值f(PD(S))相等的情况下,回报输出部2021也可以将回报的值为零。
[0111] 另外,执行行为A后的状态S'的位置偏差的评价函数值f(PD(S'))大于之前的状态S中的位置偏差的评价函数值f(PD(S))的情况下的负值也可以根据比率变大。换句话说,可以使负值根据位置偏差的值变大的程度变大。相反,执行行为A后的状态S'的位置偏差的评价函数值f(PD(S'))小于之前的状态S中的位置偏差的评价函数值f(PD(S))的情况下的正值也可以根据比率变大。换句话说,可以使正值根据位置偏差的值变小的程度变大。
[0112] 价值函数更新部2022基于状态S、行为A、将行为A应用于状态S的情况下的状态S'、以及如上述那样计算出的回报的值进行Q学习,由此更新价值函数存储部204所存储的价值函数Q。
[0113] 价值函数Q的更新既可以通过在线学习进行,也可以通过批量学习进行,还可以通过小批量学习进行。
[0114] 在线学习是通过将某行为A应用于当前的状态S,而每次状态S迁移至新的状态S'时,都立刻进行价值函数Q的更新的学习方法。另外,批量学习是通过将某行为A应用于当前的状态S,反复进行状态S迁移至新的状态S',从而收集学习用的数据,并使用收集到的所有学习用数据,进行价值函数Q的更新的学习方法。并且,小批量学习是在线学习和批量学习的中间的每次学习用数据积存一定程度时都进行价值函数Q的更新的学习方法。
[0115] 行为信息生成部2023对当前的状态S选择Q学习过程中的行为A。行为信息生成部2023在Q学习的过程中,为了进行修正伺服控制装置100的速度前馈处理部115的各系数ci、dj的动作(相当于Q学习中的行为A),而生成行为信息A,并将生成的行为信息A输出到行为信息输出部203输出。更具体而言,行为信息生成部2023例如对于状态S所包含的速度前馈处理部115的各系数ci、dj,使行为A所包含的速度前馈处理部115的各系数ci、dj加上或者减去增量(increasement)(例如0.01程度)。
[0116] 而且,行为信息生成部2023应用速度前馈处理部115的各系数ci、dj的增加或者减少,在迁移至状态S'、返回了正的回报(正值的回报)的情况下,作为下个行为A',也可以采取对于速度前馈处理部115的各系数ci、dj与上次的行为相同地加上或者减去增量等、选择位置偏差的值更小这样的行为A'的对策。
[0117] 另外,相反,在返回了负的回报(负值的回报)的情况下,作为下个行为A',行为信息生成部2023也可以采取例如对于速度前馈处理部115的各系数ci、dj,与上次的行为相反地减去或者加上增量等、选择位置偏差小于上次的值这样的行为A'的对策。
[0118] 另外,行为信息生成部2023也可以采取通过在当前推定出的行为A的价值中选择价值Q(S,A)最高的行为A'的贪婪算法、或者以某较小的概率ε随机地选择行为A'除此以外选择价值Q(S,A)最高的行为A'的ε贪婪算法这样的公知的方法来选择行为A'的对策。
[0119] 行为信息输出部203是将从学习部202输出的行为信息A对伺服控制装置100发送的部分。如上所述,伺服控制装置100基于该行为信息,对当前的状态S,即当前设定的速度前馈处理部115的各系数ci、dj进行微修正,由此迁移到下个状态S'(即,修正后的速度前馈处理部115的各系数ci、dj)。
[0120] 另外,行为信息生成部2023将速度前馈处理部115的各系数ci、dj调整为与产生设定范围外的转矩指令时的系数ci、dj不同的系数ci、dj,并将通知设定了系数的系数设定通知信号发送给数值控制装置300。
[0121] 价值函数存储部204是存储价值函数Q的存储装置。价值函数Q例如也可以按每个状态S、每个行为A存储为表格(以下,称为行为价值表)。存储于价值函数存储部204的价值函数Q由价值函数更新部2022更新。另外,存储于价值函数存储部204的价值函数Q也可以在与其他的机器学习装置200之间共享。若在多个机器学习装置200间共享价值函数Q,则能够由各机器学习装置200分散进行强化学习,所以能够提高强化学习的效率。
[0122] 最佳化行为信息输出部205基于通过价值函数更新部2022进行Q学习而更新后的价值函数Q,生成用于使速度前馈处理部115进行价值Q(S,A)最大的动作的行为信息A(以下,称为“最佳化行为信息”)。
[0123] 更具体而言,最佳化行为信息输出部205获取价值函数存储部204所存储的价值函数Q。如上述那样通过价值函数更新部2022进行Q学习来更新该价值函数Q。而且,最佳化行为信息输出部205基于价值函数Q生成行为信息,并将生成的行为信息输出到伺服控制装置100(速度前馈处理部115)。该最佳化行为信息与行为信息输出部203在Q学习的过程中输出的行为信息同样地,包含修正速度前馈处理部115的各系数ci、dj的信息。
[0124] 在伺服控制装置100中,基于该行为信息修正速度前馈处理部115的各系数ci、dj。
[0125] 机器学习装置200通过以上的动作进行速度前馈处理部115的各系数ci、dj的学习以及优化,并以减少位置偏差的值的方式动作。
[0126] 如以上所述,通过利用本实施方式所涉及的机器学习装置200,简化了伺服控制装置100的速度前馈处理部115的校正参数(系数ci、dj)的调整。通过校正参数(系数ci、dj)的调整完成速度前馈处理部115的速度前馈项的调整。
[0127] 在本实施方式中,伺服控制装置100具备转矩指令限制部108,转矩指令限制部108在加上了速度前馈项的转矩指令(以下,称为校正后的转矩指令)成为设定范围外时,将校正后的转矩指令限制在设定范围内。
[0128] 机器学习装置200通过来自转矩指令限制部108的转矩指令限制通知信号,识别校正后的转矩指令成为设定范围外。若机器学习装置200识别出校正后的转矩指令成为设定范围外,则使状态S中的速度前馈处理部115的系数ci、dj作为伺服电动机109进行异常的动作的校正参数反映到学习中。然后,机器学习装置200重新搜索用于下次学习的系数,选择下个行为信息,并设定于速度前馈处理部115,并且将表示重新设定了速度前馈处理部115的系数的系数设定通知信号发送到数值控制装置300。这样一来,机器学习装置200能够开始基于下个行为的学习动作。
[0129] 如以上所述,本实施方式的机器学习装置在对速度前馈处理部115的校正参数(系数ci、dj)进行机器学习的情况下,在机器学习中,即使选择不适当的速度前馈项(校正量),也能够继续机器学习,以防止在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0130] 以上,对伺服控制装置100、机器学习装置200所包含的功能模块进行了说明。
[0131] 为了实现这些功能模块,伺服控制装置100以及机器学习装置200分别具备CPU(Central Processing Unit:中央处理单元)等运算处理装置。另外,伺服控制装置100以及机器学习装置200也分别具备储存有应用软件或者OS(Operating System:操作系统)等各种控制用程序的HDD(Hard Disk Drive:硬盘驱动器)等辅助存储装置、用于储存运算处理装置执行程序暂时需要的数据的RAM(Random Access Memory:随机存取存储器)这样的主存储装置。
[0132] 而且,在伺服控制装置100以及机器学习装置200的各个中,运算处理装置从辅助存储装置读取应用软件或者OS,并一边使读取到的应用软件或者OS在主存储装置展开,一边进行基于这些应用软件或者OS的运算处理。另外,基于该运算结果,控制各装置所具备的各种硬件。由此,实现本实施方式的功能模块。换句话说,本实施方式能够通过硬件和软件配合来实现。
[0133] 由于伴随机器学习的运算量较多,所以优选机器学习装置200例如在个人计算机安装GPU(Graphics Processing Units:图形处理单元),利用被称为GPGPU(General-Purpose computing on Graphics Processing Units:通用图形处理器)的技术。若将GPU利用于伴随机器学习的运算处理,则运算处理高速化。并且,为了进行更高速的处理,机器学习装置200也可以使用多台这样的安装有GPU的计算机构建计算机集群(cluster),由该计算机集群所包含的多个计算机执行并行处理。
[0134] 接下来,参照图8对本实施方式的机器学习装置200的动作进行说明。如图8所示,在步骤S21中,机器学习装置200开始学习动作。这里,学习动作是指如下的一系列的处理,即,在状态S中,选择行为A(速度前馈处理部115的系数ci、dj),并设定于速度前馈处理部115,通过执行学习时的加工程序而获取上述的加工形状的位置A1和位置A3以及/或者位置B1和位置B3处的位置偏差的集合(状态S'中的状态变量),计算该位置偏差的评价函数值,通过与状态S中的位置偏差的评价函数值进行比较,计算出回报,更新价值函数存储部204存储的价值函数Q。在以下的步骤中,机器学习装置200执行一系列的处理。
[0135] 而且,在学习动作时,在转矩指令限制部108识别出校正后的转矩指令成为设定范围外的情况下,机器学习装置200将状态S中的行为A(速度前馈处理部115的系数ci、dj)作为伺服电动机109进行异常的动作的行为(校正参数)反映到回报中,继续进行该状态S、行为A的学习。由此,机器学习装置能够通过搜索下个行为,生成新的行为,而继续机器学习以免学习中断。
[0136] 在步骤S22中,机器学习装置200判定校正后的控制指令是否在设定范围以内。在判定为校正后的控制指令成为设定范围外的情况下(否),移至步骤S25。在校正后的控制指令在设定范围内的情况下(否),移至步骤S23。此外,这里,控制指令成为转矩指令。
[0137] 在步骤S23中,机器学习装置200判定该学习动作是否结束。在该学习动作结束的情况下(是),移至步骤S24。在该学习动作没结束的情况下(否),移至步骤S22。
[0138] 在步骤S24中,机器学习装置200搜索下个行为,设定新的参数。具体而言,机器学习装置200进行用于调整速度前馈处理部115的校正量(速度前馈项)的校正参数设定(速度前馈处理部115的系数ci、dj的设定)。然后,移至步骤S29。
[0139] 在步骤S25中,机器学习装置200使校正后的转矩指令为设定范围外时的速度前馈处理部115的系数ci、dj反映到学习中。
[0140] 在步骤S26中,机器学习装置200判定加工程序是否结束。在该加工程序结束的情况下(是),移至步骤S27。在该加工程序没结束的情况下(否),再次执行步骤S26。
[0141] 在步骤S27中,机器学习装置200搜索下个行为,将速度前馈处理部115的系数ci、dj(校正参数)调整为与校正后的转矩指令成为设定范围外时的系数不同的系数并设定。
[0142] 在步骤S28中,机器学习装置200对数值控制装置300通知速度前馈处理部115的系数ci、dj被设定为新的系数。数值控制装置300通过接受该通知,识别速度前馈处理部115的系数ci、dj被设定为新的系数。因此,在继续学习的情况下,在速度前馈处理部115的系数ci、dj被设定为新的系数的状态下,数值控制装置300能够使加工程序动作并将位置指令发送给伺服控制装置100。
[0143] 在步骤S28中,机器学习装置200判断是否结束机器学习,在继续机器学习的情况下(否),返回步骤S21。在结束机器学习的情况下(是),结束机器学习处理。
[0144] 以上,对机器学习装置200进行的速度前馈处理部115的系数的学习进行了说明,但位置前馈处理部113的传递函数的系数的机器学习也同样进行。以下,对位置前馈处理部113的传递函数的系数的机器学习进行说明。
[0145] 机器学习装置200将伺服控制装置100中的、包含位置前馈处理部113的传递函数的各系数ai、bj(m≥i≥0,n≥j≥0)的值、执行学习时的加工程序而获取的伺服控制装置100的位置偏差信息、以及位置指令在内的指令以及反馈等伺服状态作为状态S,学习该状态S所涉及的将位置前馈处理部113的传递函数的各系数ai、bj的值的调整选择为行为A的价值Q。
[0146] 机器学习装置200基于位置前馈处理部113的传递函数的各系数ai、bj执行学习时的加工程序而观测包含指令以及反馈等伺服状态的状态信息S来决定行为A,该指令包括上述的加工形状的位置A1和位置A3以及位置B1和位置B3处的伺服控制装置100的位置指令以及位置偏差信息。机器学习装置200每次进行行为A时都返回回报。机器学习装置200例如试错地搜索最佳的行为A以使将来的回报的合计最大。这样一来,机器学习装置200能够对包含指令、反馈等的伺服状态的状态S,选择最佳的行为A(即,位置前馈处理部113的最佳的系数ai、bj),该指令包括基于位置前馈处理部113的传递函数的各系数ai、bj执行学习时的加工程序而获取的伺服控制装置100的位置指令以及位置偏差信息。在位置A1和位置A3以及位置B1和位置B3中,不改变X轴方向以及Y轴方向的伺服电动机的旋转方向,机器学习装置200能够进行线性动作时的位置前馈处理部113的传递函数的各系数ai、bj的学习。
[0147] 即,机器学习装置200能够通过基于学习到的价值函数Q,选择应用于某个状态S的位置前馈处理部113的传递函数的各系数ai、bj的行为A中价值函数Q的值最大的行为A,从而选择通过执行学习时的加工程序而获取的位置偏差最小的行为A(即,位置前馈处理部113的系数ai、bj)。
[0148] 此外,机器学习装置200具备的状态信息获取部201、(包括回报输出部2021、价值函数更新部2022、行为信息生成部2023的)学习部202、行为信息输出部203、价值函数存储部204、以及最佳化行为信息输出部205中的位置前馈处理部113的传递函数的各系数ai、bj所涉及的处理能够通过将第一实施方式中的速度前馈处理部115切换为位置前馈处理部113,并且将速度前馈处理部115的各系数ci、dj切换为位置前馈处理部113的传递函数的各系数ai、bj来进行说明,所以省略详细的说明。
[0149] 另外,最初开始进行Q学习的时间点的位置前馈处理部113的系数ai、bj预先由用户生成。在本实施方式中,机器学习装置200通过强化学习将用户制作的位置前馈处理部113的系数ai、bj的初始设定值调整为最佳的值。将微分器112的系数β设为固定值,例如设为β=1。另外,作为初始设定值,位置前馈处理部113的系数ai、bj例如为公式1的a0=1,a1=0,a2=
0,……,am=0,b0=1,b1=0,b2=0,……,bn=0。另外,预先设定系数ai、bj的维度m、n。即,ai为0≤i≤m,bj为0≤j≤n。
[0150] 另外,系数ai、bj的初始设定值也可以应用与速度前馈处理部115的各系数ai、bj的初始设定值相同的值。
[0151] 相同地,对于伺服控制装置100中的位置前馈处理部113的各系数ai、bj的处理,也能够通过将速度前馈处理部115的各系数ci、dj切换为位置前馈处理部113的传递函数的各系数ai、bj来进行说明。
[0152] 如以上所述,伺服控制装置100具备微分器112、位置前馈处理部113、以及速度指令限制部104。机器学习装置200通过来自速度指令限制部104的速度指令限制通知,识别速度指令被限制在设定范围内。若机器学习装置200识别出速度指令被限制在设定范围内,则将状态S中的位置前馈处理部113的系数ai、bj作为伺服电动机109进行异常的动作的校正参数反映到学习中。通过校正参数(系数ai、bj)调整完成了位置前馈处理部113的位置前馈项的调整。然后,机器学习装置200重新搜索用于下次学习的系数,选择下个行为信息,并设定于位置前馈处理部113,并且将表示重新设定了位置前馈处理部113的系数的系数设定通知信号发送到数值控制装置300。这样一来,数值控制装置300在继续进行学习的情况下,在位置前馈处理部113的系数被设定为不是伺服电动机109进行异常的动作的系数的新的系数的状态下,能够使加工程序动作并将位置指令发送到伺服控制装置100。
[0153] 如以上所述,本实施方式的机器学习装置在对位置前馈处理部113的系数进行机器学习的情况下,在机器学习中,即使选择了不适当的系数,也能够继续机器学习,而不会因在电动机或者机械前端产生振动而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0154] 接下来,对机器学习装置200的动作进行说明。
[0155] 对于机器学习装置200的位置前馈处理部113的传递函数的各系数ai、bj所涉及的动作,也能够通过在第一实施方式中的图8所示的机器学习装置200的处理流程中,将速度前馈处理部115切换为位置前馈处理部113,将速度前馈处理部115的各系数ci、dj切换为位置前馈处理部113的传递函数的各系数ai、bj来进行说明,所以省略详细的说明。此外,在图8的处理流程中,步骤S22中的校正后的控制指令为速度指令。
[0156] (变形例)
[0157] 在本实施方式中,伺服控制装置100为了限制加上位置前馈项后的速度指令的范围而具备速度指令限制部104,为了限制加上速度前馈项后的转矩指令的范围而具备转矩指令限制部108。
[0158] 但是,伺服控制装置100也可以为了限制位置前馈项的范围,而代替速度指令限制部104在位置前馈处理部113与加法器103之间具备位置前馈项限制部。另外,伺服控制装置100也可以为了限制位置前馈项的范围,而代替转矩指令限制部108在速度前馈处理部115与加法器107之间具备速度前馈项限制部。位置前馈项限制部的设定范围以及速度前馈项限制部的设定范围已经使用图2~图4进行了说明,既可以为固定的范围,也可以为动态变动的范围。
[0159] 在本实施方式中,机器学习装置200先进行速度前馈处理部115的传递函数的系数的学习,在使速度前馈处理部115的传递函数的系数最佳化之后,进行位置前馈处理部113的传递函数的系数的学习,但本实施方式并不局限于此。
[0160] 例如,机器学习装置200也可以同时学习位置前馈处理部113的传递函数的系数以及速度前馈处理部115的传递函数的系数。但是,在机器学习装置200同时学习系数的情况下,存在二个学习相互干扰而信息处理量增大的可能性。
[0161] 另外,在本实施方式中,作为校正生成部,伺服控制装置100具备基于位置指令生成针对速度指令的校正量的位置前馈项生成部(微分器112以及位置前馈处理部113)和基于位置指令生成针对转矩指令的校正量的速度前馈项生成部(二阶微分器114以及速度前馈处理部115)。
[0162] 但是,作为校正生成部,伺服控制装置100也可以具备位置前馈项生成部或速度前馈项生成部的任意一个。该情况下,例如,在伺服控制装置100仅具备位置前馈项生成部时,不需要二阶微分器114、速度前馈处理部115、加法器107以及转矩指令限制部108。
[0163] (第二实施方式)
[0164] 在以上说明的第一实施方式中,对机器学习装置200进行X轴方向以及Y轴方向的伺服电动机的旋转方向不改变的线性动作时的位置前馈处理部和速度前馈处理部的系数的最佳化所涉及的学习动作的情况进行了说明。
[0165] 但是,本发明并不局限于线性动作时的学习动作,也能够应用于进行非线性动作的学习动作。例如,如已经说明那样,公知的有若作为非线性动作,机床通过由电动机和滚珠丝杠驱动的进给驱动系统进行圆运动,则在轴的运动方向反转的象限切换时产生突起状的轨迹误差(以下,称为“象限突起”)。
[0166] 在第二实施方式中,对机器学习装置200学习象限突起的校正量,速度指令限制部限制加上象限突起的校正量后的速度指令的范围,机器学习装置200将成为范围外时的象限突起的校正量反映到学习中的例子进行说明。
[0167] 图9是表示本发明的第二实施方式的控制装置的一构成例的框图。在图9的控制装置10B中,对与图1所示的控制装置的各构成部件相同的构成部件标注相同的符号并省略说明。
[0168] 如图9所示,伺服控制装置100A具备反转检测部116以及校正生成部117。伺服控制装置100A不具备图1所示的、微分器112、位置前馈处理部113、二阶微分器114、速度前馈处理部115、加法器107以及转矩指令限制部108。
[0169] 数值控制装置300例如基于图6所示的、八边形的角每隔一个角置换为圆弧的形状的加工形状的、学习时的加工程序制作位置指令。
[0170] 位置指令被输入到减法器101、反转检测部116、以及机器学习装置200。
[0171] 反转检测部116从位置指令检测反转部。例如,在图6所示的圆弧的位置B2处,使工作台在Y轴方向上移动的电动机的旋转方向反转,反转检测部116基于位置指令检测出位置B2处的反转。校正生成部117基于反转的检测信号将校正量输出到加法器103。
[0172] 速度指令限制部104检测出加上了从校正生成部117输出的校正量后的速度指令(以下,称为校正后的速度指令)是否在进行限制的设定范围内(上限以下以及下限以上)。若校正后的速度指令在设定范围内,则速度指令限制部104直接将校正后的速度指令输出到减法器105。另一方面,在校正后的速度指令是设定范围外的情况下,速度指令限制部104对校正后的速度指令加以限制而设为设定范围内,将设为设定范围内的速度指令输出到减法器105。
[0173] 另外,速度指令限制部104在将速度指令限制在设定范围内的情况下对机器学习装置200进行速度限制通知。
[0174] 如以上所述,本实施方式的机器学习装置在对校正生成部117的校正量进行机器学习的情况下,在机器学习中,即使选择了不适当的修正量,也能够继续机器学习,而不会因产生象限突起而不能进行有效的学习,另外,机床等由于报警而停止、结束,从而学习中断。
[0175] (变形例)
[0176] 在本实施方式中,伺服控制装置100A为了限制加上了象限突起的校正量后的速度指令的范围而具备速度指令限制部104。
[0177] 但是,伺服控制装置100A也可以代替速度指令限制部104,而在校正生成部117与加法器103之间具备校正量限制部,以限制象限突起的校正量的范围。校正量限制部的设定范围既可以为固定的范围,也可以为动态变动的范围。
[0178] 机器学习装置200为了校正象限突起,而使用图6所示的加工形状的位置B2和位置B4处的成为减法器101的输出的位置偏差进行学习,调整校正生成部117的校正量。
[0179] 在进行象限突起的校正的情况下,也可以使用图5所示的八边形的加工形状的学习时的加工程序。该情况下,例如,在图5所示的位置A2处,使工作台在Y轴方向上移动的电动机的旋转方向反转,在位置A4处,使工作台在X轴方向上移动的电动机的旋转方向反转。机器学习装置200为了校正象限突起,而例如使用图5所示的八边形的加工形状的位置A2和位置A4处的成为减法器101的输出的位置偏差进行学习,调整校正生成部117的校正量。
[0180] 以上对本发明所涉及的各实施方式进行了说明,但上述的伺服控制装置的伺服控制部以及机器学习装置所包含的各构成部能够通过硬件、软件或者它们的组合实现。另外,通过上述的伺服控制装置所包含的各构成部的各个的配合进行的伺服控制方法也能够通过硬件、软件或者它们的组合实现。这里,通过软件实现是指通过计算机读取程序并执行而实现。
[0181] 程序能够使用各种类型的非暂时计算机可读记录介质(nontransitory computer readable medium)储存,并供给到计算机。非暂时计算机可读记录介质包括各种类型的有实体的记录介质(tangible storage medium:有形存储介质)。非暂时计算机可读记录介质的例子包括磁记录介质(例如,软盘、硬盘驱动器)、光磁记录介质(例如,光磁盘)、CD-ROM(Read Only Memory:只读存储器)、CD-R、CD-R/W、半导体存储器(例如,掩膜ROM、PROM(Programmable ROM:可编程ROM)、EPROM(Erasable PROM:可擦除PROM)、闪存ROM、RAM(random access memory:随机存取存储器))。
[0182] 上述的实施方式是本发明的优选实施方式,但并不将本发明的范围仅限定在上述实施方式,能够在不脱离本发明的要旨的范围中以实施各种变更的形态实施。
[0183] <伺服控制装置具备机器学习装置的变形例>
[0184] 在上述的实施方式中,在控制装置内设置机器学习装置200和伺服控制装置100或者100A而构成,机器学习装置200和伺服控制装置100或者100A通过独立的装置构成,但也可以通过伺服控制装置100实现机器学习装置200的功能的一部分或者全部。
[0185] 另外,在上述的实施方式中,伺服控制装置100或者100A和数值控制装置300通过独立的装置构成,但也可以通过数值控制装置300实现伺服控制装置100或者100A的功能的一部分或者全部。数值控制装置300也可以包括机器学习装置200、伺服控制装置100或者100A,该情况下,数值控制装置300构成控制装置。
[0186] <系统构成的自由度
[0187] 图10是表示其他的构成的控制装置的框图。如图10所示,控制装置10B具备n台伺服控制装置100-1~100-n、n台机器学习装置200-1~200-n、网络400以及数值控制装置300-1~300-n。此外,n是任意的自然数。n台伺服控制装置100-1~100-n分别与图1、图7、图8以及图9所示的伺服控制装置100、100A~100C的任意一个对应。n台机器学习装置200-1~200-n分别与图1以及图9所示的机器学习装置200的任意一个对应。数值控制装置300-1~300-n与数值控制装置300对应,对于伺服控制装置100-1~100-n的各个进行设置。伺服控制装置100-1~100-n也可以包含于数值控制装置300-1~300-n。
[0188] 这里,伺服控制装置100-1和机器学习装置200-1成为1对1的组,能够通信地连接。伺服控制装置100-2~100-n和机器学习装置200-2~200-n,也与伺服控制装置100-1和机器学习装置200-1相同地连接。在图10中,伺服控制装置100-1~100-n与机器学习装置200-1~200-n的n个组经由网络400连接,但伺服控制装置100-1~100-n和机器学习装置200-1~200-n的n个组中,各个组的伺服控制装置和机器学习装置也可以经由连接接口直接连接。这些伺服控制装置100-1~100-n和机器学习装置200-1~
200-n的n个组例如既可以在工厂中设置多组,也可以设置于分别不同的工厂。
[0189] 此外,网络400例如是在工厂内构建的LAN(Local Area Network:局域网)、因特网、公用电话网、或者它们的组合。网络400中的具体的通信方式以及有线连接和无线连接的哪一个等并不特别限定。
[0190] 在上述的图10的控制装置中,机器学习装置200-1~200-n和伺服控制装置100-1-100-n成为1对1的组,能够通信地连接,但例如也可以使1台机器学习装置200-1与多个伺服控制装置100-1~100-m(m<n或者m=n)连接为能够经由网络400通信,实施各伺服控制装置100-1~100-m的机器学习。此外,这里使用的m、n是与公式1以及公式2使用的m、n无关的值。
[0191] 此时,也可以设为将机器学习装置200-1的各功能适当地分散到多个服务器的分散处理系统。另外,也可以在上利用虚拟服务器功能等,实现机器学习装置200-1的各功能。
[0192] 另外,也可以构成为在有与多个相同的型号、相同规格、或者相同系列的伺服控制装置100-1~100-n分别对应的多个机器学习装置200-1~200-n的情况下,共享各机器学习装置200-1~200-n中的学习结果。这样一来,能够进一步构建更佳的模型。
[0193] 符号说明
[0194] 10、10A、10B...控制装置;100、100A...伺服控制装置;101...减法器;102...位置控制部;103...加法器;104...速度指令限制部;105...减法器;106...速度控制部;107...加法器;108...转矩指令限制部;109...电动机;110...积分器;111...位置检测处理部;112...微分器;113...位置前馈处理部;114...二阶微分器;115...速度前馈处理部;
116...反转检测部;117...校正生成部;200...机器学习装置;201...状态信息获取部;
202...学习部;203...行为信息输出部;204...价值函数存储部;205...最佳化行为信息输出部;300...数值控制装置;400...网络。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈