生成最佳的加速/减速的机床转让专利

申请号 : CN201610861027.9

文献号 : CN106557075B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 古贺大二朗

申请人 : 发那科株式会社

摘要 :

本发明涉及一种生成最佳的加速/减速的机床。机床具备评价其动作的动作评价部和对其轴的移动量进行机器学习的机器学习器。机器学习器根据包括动作评价部的输出的状态数据来计算回报,机器学习轴的移动量的决定,并根据机器学习结果决定轴的移动量并输出。并且,根据所决定的轴的移动量、所取得的状态数据以及计算出的回报来机器学习轴的移动量的决定。

权利要求 :

1.一种机床,根据通过程序指示的刀具的指令路径驱动至少一个轴来进行工件的加工,其特征在于,该机床具备:

动作评价部,其评价上述机床的动作并输出评价数据;以及机器学习器,其对上述轴的移动量的决定进行机器学习,上述机器学习器具有:

状态观测部,其取得包括上述机床的至少上述轴的轴位置的数据、从上述动作评价部输出的评价数据作为状态数据;

回报条件设定部,其设定回报条件;

回报计算部,其根据上述状态观测部所取得的上述状态数据来计算回报;

移动量调整学习部,其对上述轴的移动量的决定进行机器学习;以及移动量输出部,其根据上述移动量调整学习部的上述轴的移动量的决定的机器学习结果和上述状态数据,以使上述刀具的加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量,上述移动量调整学习部根据所决定的上述轴的移动量、在基于所输出的上述轴的移动量的上述机床的动作后由上述状态观测部取得的上述状态数据和上述回报计算部计算出的上述回报,对上述轴的移动量的决定进行机器学习。

2.根据权利要求1所述的机床,其特征在于,

上述回报计算部在上述轴的合成速度增大时计算正的回报,在上述刀具脱离上述指令路径时、上述刀具的速度的N阶时间微分要素的变化大时、上述机床中发生了冲击时计算负的回报,其中,N是任意的自然数。

3.根据权利要求1或2所述的机床,其特征在于,上述机床与至少一个其他的机床连接,在与上述其他 的机床之间相互交换或共享机器学习的结果。

4.根据权利要求3所述的机床,其特征在于,

上述移动量调整学习部使用调整后的上述轴的移动量和通过自变量表示通过上述状态观测部取得的上述状态数据的评价函数来进行机器学习,使得上述回报成为最大。

5.一种仿真装置,对根据通过程序指示的刀具指令路径驱动至少一个轴来进行工件的加工的机床进行仿真,其特征在于,该仿真装置具备:

动作评价部,其评价上述机床的仿真动作并输出评价数据;以及机器学习器,其对上述轴的移动量的决定进行机器学习,上述机器学习器具有:

状态观测部,其取得包括上述机床的至少上述轴的轴位置的仿真出的数据、从上述动作评价部输出的评价数据作为状态数据;

回报计算部,其根据上述状态观测部所取得的上述状态数据来计算回报;

移动量调整学习部,其对上述轴的移动量的决定进行机器学习;以及移动量输出部,其根据上述移动量调整学习部的上述轴的移动量的决定的机器学习结果和上述状态数据,以使上述刀具的加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量,上述移动量调整学习部根据所决定的上述轴的移动量、在基于所输出的上述轴的移动量的上述机床的仿真动作后由上述状态观测部取得的上述状态数据和上述回报计算部计算出的上述回报,对上述轴的移动量的决定进行机器学习。

6.一种机器学习器,对机床所具备的至少一个轴的移动量的决定进行机器学习,其特征在于,该机器学习器具备:

状态观测部,其取得包括上述机床的至少上述轴的轴位置的数据作为状态数据;

回报条件设定部,其设定回报条件;

回报计算部,其根据上述状态观测部所取得的上述状态数据来计算回报;

移动量调整学习部,其对上述轴的移动量的决定进行机器学习;以及移动量输出部,其根据上述移动量调整学习部的上述轴的移动量的决定的机器学习结果和上述状态数据,以使通过上述轴移动的刀具的加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量,上述移动量调整学习部根据所决定的上述轴的移动量、在基于所输出的上述轴的移动量的上述机床的动作后由上述状态观测部取得的上述状态数据和上述回报计算部计算出的上述回报,对上述轴的移动量的决定进行机器学习。

说明书 :

生成最佳的加速/减速的机床

技术领域

[0001] 本发明涉及一种机床,特别涉及生成各轴的控制中的最佳的加速/减速的机床。

背景技术

[0002] 目前,生成加工程序,根据该生成的加工程序控制机床来进行部件和金属模型等的加工。进行加工时的加工速度,在加工程序内作为轴的移动速度而进行指示,但这是刀具和加工物之间的相对移动(刀具移动)的最大速度,实际上在开始加工时或在角部、曲线部分等处,将按照各轴的加减速时间常数使轴的移动速度发生变动的移动数据输出给机床。另外,虽然针对加工物有容许误差以及目标加工时间,但这是通过由机床的操作者一边确认加工物的加工面质量,一边变更加减速时间常数,或者变更在程序内进行指示的速度等方法进行调整。另外,在本说明书中,将表示指令位置和实际加工物的形状误差的加工精度、加工物的形状变化顺畅(加工面的伤或条痕不明显)的程度称为加工面质量。
[0003] 作为这种加工中的加减速时间常数或速度等参数调整所关联的现有技术,在日本特开2003-058218号公报中公开一种将在加工中能够调整的多种参数作为参数集来准备并使用的参数的调整方法。另外,在日本特开2006-043836号公报中公开一种使用加工模式一边考虑加工精度一边进行缩短加工时间的加工路径信息的生成和加工条件设定的加工条件设定方法。
[0004] 一般,通过将在加工中控制刀具时的加速度/减速度整体设定得低,能够提高角部和曲线部的加工面质量,但是加工速度整体下降。另一方面,为了提高加工速度,将加速度/减速度整体设定得高即可,但是通过这样的设定,如果在角部、曲线部分附近进行刀具的急剧减速以及加速的话,则机械有可能产生振动并导致加工面质量的恶化(加工面受伤)。
[0005] 图8A以及图8B表示在通过加工程序指示的刀具路径中的角部产生急剧的加速/减速的例子。
[0006] 在图8A所示的车削加工和图8B所示的开孔加工等各种加工中,如果刀具的速度急剧变化,则通过该冲击在机械中产生振动,成为角部和曲线部的加工面质量的恶化的原因。因此会有以下问题,即为了不产生这样的现象,一边考虑与轴移动关联的各个要素,在取得加工面质量的提高和加工时间缩短之间的平衡的同时进行加速度/减速度的调整,需要操作者花费大量的劳力,另外也不一定能够最佳地调整加速度/减速度。
[0007] 针对这样的问题,在上述日本特开2003-058218号公报或日本特开2006-043836号公报所公开的技术中,只能够对应适合于准备好的参数集和加工模式的状况,而不能够灵活地对应各种状况。

发明内容

[0008] 因此,本发明的目的在于提供一种生成各轴的控制中的最佳的加速/减速的机床。
[0009] 本发明中,得到从某个时间的机床的轴位置到下一个瞬间的轴位置的变化量。这是从数值控制装置输出的被称为指令脉冲的数据。以往,机床厂家的技术者通过设定为各轴加减速时间常数等方法进行了调整,因此有时得不到最佳的变化量。通过将轴的移动量设为最佳,使每一次加工的时间不发生大幅度变化而实现加速度变化少的刀具移动,由此实现高质量的加工。
[0010] 本发明的机床根据通过程序指示的刀具的指令路径驱动至少一个轴并进行工件的加工,该机床具备:动作评价部,其评价上述机床的动作并输出评价数据;以及机器学习器,其对上述轴的移动量的决定进行机器学习。并且,上述机器学习器具备:状态观测部,其取得包括上述机床的至少上述轴的轴位置的数据、从上述动作评价部输出的评价数据作为状态数据;回报条件设定部,其设定回报条件;回报计算部,其根据上述状态观测部所取得的上述状态数据来计算回报;移动量调整学习部,其对上述轴的移动量的决定进行机器学习;以及移动量输出部,其根据上述移动量调整学习部的上述轴的移动量的决定的机器学习结果和上述状态数据,以使上述刀具的加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量。上述移动量调整学习部,根据所决定的上述轴的移动量、在基于所输出的上述轴的移动量的上述机床的动作后上述状态观测部取得的上述状态数据、和上述回报计算部计算出的上述回报,对上述轴的移动量的决定进行机器学习。
[0011] 上述回报计算部在上述轴的合成速度增大时计算正的回报,另一方面,在上述刀具脱离上述指令路径时、上述刀具速度的N阶时间微分要素(N是任意的自然数)的变化大时、以及上述机床中发生了冲击时可以计算负的回报。
[0012] 上述机床与至少一个其他的机床连接,能够在与上述其它机床之间相互交换或共享机器学习的结果。
[0013] 上述移动量调整学习部,使用调整后的上述轴的移动量和通过自变量表现了通过上述状态观测部取得的上述状态数据的评价函数来进行机器学习,使得上述回报成为最大。
[0014] 本发明的仿真装置,对根据通过程序指示的刀具指令路径驱动至少一个轴来进行工件的加工的机床进行仿真,该仿真装置具备:动作评价部,其评价上述机床的仿真动作并输出评价数据;机器学习器,其对上述轴的移动量的决定进行机器学习。并且,上述机器学习器具备:状态观测部,其取得包括上述机床的至少上述轴的轴位置的仿真出的数据、从上述动作评价部输出的评价数据作为状态数据;回报计算部,其根据上述状态观测部所取得的上述状态数据来计算回报;移动量调整学习部,其对上述轴的移动量的决定进行机器学习;以及移动量输出部,其根据上述移动量调整学习部的上述轴的移动量的决定的机器学习结果和上述状态数据,以使上述刀具的加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量。上述移动量调整学习部,根据所决定的上述轴的移动量、在基于所输出的上述轴的移动量的上述机床的仿真动作后上述状态观测部取得的上述状态数据、和上述回报计算部计算出的上述回报,对上述轴的移动量的决定进行机器学习。
[0015] 本发明的机器学习器,对机床所具备的至少一个轴的移动量的调整进行机器学习,其具备:学习结果存储部,其存储上述轴的移动量的决定的机器学习结果;状态观测部,其取得包括上述机床的至少上述轴的轴位置的状态数据;以及移动量输出部,其根据存储在上述学习结果存储部中的上述机器学习结果和上述状态数据,以使上述机床的刀具加速度成为最佳的方式决定上述轴的移动量并输出上述轴的移动量。
[0016] 本发明中,通过在最佳的各轴移动量的决定中采用机器学习,能够通过最佳的加速/减速控制各轴,通过更短的时间实现维持了加工面质量的工件加工。

附图说明

[0017] 通过参照附图说明以下实施方式,能够更加明确本发明的上述以及其他目的和特征。这些附图中:
[0018] 图1A以及图1B是说明本发明的机床通过导入机器学习器而将工件加工时各轴的加速度/减速度最佳化的例子的图,图1A是车削加工中的加减速度调整的例子,图1B是开孔加工中的加减速度调整的例子。
[0019] 图2是说明强化学习算法的基本概念的图。
[0020] 图3是关于本发明一个实施方式的机床的机器学习的图像图。
[0021] 图4是说明本实施方式的机床的各轴相关的各个数据的图,其中,刀具的前进方向为(δxt-1,δzt-1),从刀具路径的脱离量为d,当前的各轴速度为(δxt-1,δzt-1),当前的各轴加速度为(δxt-1-δxt-2,δzt-1-δzt-2)。
[0022] 图5是本发明一个实施方式的机床的功能框图。
[0023] 图6是表示图5的机床的机器学习流程的流程图。
[0024] 图7是本发明的仿真装置的功能框图。
[0025] 图8A以及图8B是说明工件加工中的加工面质量下降的图。

具体实施方式

[0026] 本发明中,对加工工件的机床导入成为人工智能的机器学习器,进行机器学习,该机器学习与将基于加工程序的工件加工中的机床各轴的加速度/减速度的调整为目的的移动量决定相关,由此如图1A以及图1B所示,进行调整使得在工件加工中的各个时间点的机床各轴的加速度/减速度(移动量的变化)成为最佳。在各轴的加速度/减速度的调整中,以更快的刀具移动、尽量不脱离刀具路径以及尽量不产生冲击作为目的,以更短的时间实现维持了加工面质量的工件的加工。
[0027] 以下,简单说明在本发明中导入的机器学习。
[0028] <1.机器学习>
[0029] 一般,机器学习根据其目的或条件被分类为有教师学习(supervised learning)、无教师学习(unsupervised learning)等各种算法。本发明中,目的在于学习以基于加工程序的工件加工中的机床各轴的加速度/减速度的调整为目的的移动量的决定,考虑到难以明确地表示针对基于所输出的各轴移动量的机床状态进行怎样的行为(各轴移动量的决定)才正确,采用仅通过赋予回报而由机器学习器自动学习用于到达目标的行为的强化学习(reinforcement learning)的算法。
[0030] 图2是说明强化学习算法的基本概念的图。
[0031] 在强化学习中,通过成为学习主体的智能体(机器学习器)和成为控制对象的环境(控制对象系统)之间的交换来推进智能体学习和行为。更具体地说:
[0032] (1)智能体观测某个时间点的环境的状态st,
[0033] (2)根据观测结果和过去的学习来选择自己采取的行为at,并执行行为at,[0034] (3)通过执行行为at,环境的状态st变化为下一个状态st+1,
[0035] (4)根据作为行为at的结果的状态的变化,智能体接受回报rt+1,
[0036] (5)在智能体和环境之间进行智能体根据状态st、行为at、回报rt+1以及过去的学习结果来推进学习这样的交换。
[0037] 在上述(5)的学习中,智能体获得观测到的状态st、行为at、回报rt+1的映射,作为成为用于判断将来能够取得的回报量的基准的信息。例如,如果在各个时刻能够取得的状态的个数为m,能够取得的行为的个数为n,则通过重复行为得到存储针对状态st和行为at的组的回报rt+1的m×n的二维矩阵。
[0038] 并且,使用根据上述所得到的映射来表示当前的状态和行为有多好的函数即价值函数(评价函数),在重复行为中更新价值函数(评价函数),从而学习对应于状态的最佳行为。
[0039] 状态价值函数是表示某个状态st是多好的状态的价值函数。状态价值函数作为将状态设为自变量的函数来表现,在重复行为中的学习中,根据针对某个状态下的行为而得到的回报和通过该行为要变化的未来的状态的价值等进行更新。根据强化学习的算法定义状态价值函数的更新式,例如在作为强化学习的算法之一的TD学习中,通过以下式(1)定义状态价值函数。另外,在式(1)中,α被称为学习系数,γ被称为折扣率,通过0<α≤1、0<γ≤1的范围进行定义。
[0040] V(st)←V(st)+α[rt+1+γV(st+1)-V(st)]……(1)
[0041] 另外,行为价值函数是表示在某个状态st中行为at是多好的行为的价值函数。行为价值函数,表现为将状态和行为设为自变量的函数,在重复行为中的学习中,根据针对某个状态下的行为而得到的回报、通过该行为要变化的未来的状态的行为价值等来进行更新。根据强化学习的算法来定义行为价值函数的更新式,例如,在作为代表性的强化学习算法之一的Q学习中,通过以下式(2)定义行为价值函数。另外,在式(2)中,α被称为学习系数,γ被称为折扣率,通过0<α≤1、0<γ≤1的范围进行定义。
[0042]
[0043] 另外,作为存储作为学习结果的价值函数(评价函数)的方法,除了使用近似函数的方法和使用矩阵的方法以外,还有例如在状态s取多个状态的情况下,使用将状态st、行为at作为输入来输出价值(评价)的多值输出的SVM和神经网络等有教师学习器的方法等。
[0044] 并且,在上述(2)中的行为选择中,使用通过过去的学习而生成的价值函数(评价函数)来在当前的状态st中选择将来的回报(rt+1+rt+2+……)成为最大的行为at(使用状态价值函数的情况下为用于转移到价值最高的状态的行为、使用行为价值函数的情况下为在该状态下价值最高的行为)。另外,在智能体的学习中将学习的进展作为目的,在(2)中的行为选择中,有时通过固定的概率选择随机的行为(ε贪婪算法)。
[0045] 这样,通过重复上述的(1)~(5)来推进学习。在某个环境中学习结束后,即使在新的环境的情况下,通过进行追加的学习也能够推进学习使得适应该环境。
[0046] 因此,如本发明这样通过应用于以基于加工程序的工件加工中的各个时间点的各轴的加速度/减速度调整作为目的的移动量的决定,即使是在应用于新机床的控制的情况下,根据将在过去的工件加工中的各个时间点的各轴的加速度/减速度的调整作为目的的移动量决定的学习,将新的加工程序作为新的环境进行追加的学习,由此能够通过短时间进行将基于该加工程序的工件加工中的各个时间点的各轴的加速度/减速度的调整作为目的的移动量的决定的更进一步的学习。
[0047] 另外,在强化学习中,作为经由网络等连接多个智能体而得的系统,在智能体间共享状态s、行为a、回报r等信息并用于各自的学习,由此进行各智能体也考虑其他的智能体的环境来学习的分散强化学习,由此能够进行高效率的学习。在本发明中,在经由网络等连接控制多个环境(成为控制对象的机床)的多个智能体(机器学习器)的状态下进行分散机器学习,由此能够高效地进行将机床中的基于加工程序的工件加工中的各个时间点的各轴的加速度/减速度的调整作为目的的移动量的决定的学习。
[0048] 另外,作为强化学习的算法,知道有Q学习、SARSA法、TD学习、AC法等各种方法,但作为应用于本发明的方法,可以采用任意的强化学习算法。上述各强化学习算法是众所周知的,所以省略本说明书中的各个算法的更详细的说明。
[0049] 以下,根据具体实施方式说明导入了机器学习器的本发明的机床。
[0050] <2.实施方式>
[0051] 图3是表示与移动量的决定的机器学习相关的图像的图,该移动量的决定的机器学习,以导入了本发明一个实施方式的成为人工智能的机器学习器的机床中各个时间点的各轴加速度/减速度的调整为目的。另外,图3只表示出本实施方式的机床中的机器学习的说明所需要的结构。
[0052] 在本实施方式中,作为机器学习器20用于确定环境(在“<1.机器学习”中说明的状态st>的信息,将刀具的前进方向、从刀具路径的脱离量、当前的各轴速度、当前的各轴速度的N阶时间微分要素(加速度、加加速度、……)、冲击的产生等输入到机器学习器20中。这些各值是通过从机床1的各部取得的数据、以及根据该数据通过动作评价部3计算出的数据。
[0053] 图4是说明本实施方式的机床1各轴的各个数据的图。
[0054] 在本实施方式的机床1中,将分析加工程序而得到的指令路径存储在存储器(未图示)中,上述的输入数据中除了包括从机床1得到的时刻t的各轴的轴位置(xt,zt)、各轴的移动速度(δxt-1,δzt-1)、各轴的加速度(δxt-1-δxt-2,δzt-1-δzt-2),还包括如各轴位置从指令路径脱离的距离d等那样,根据上述各数据由动作评价部3计算出的数据。
[0055] 另外,图4中表示了X-Z的二维坐标系中的各输入数据的例子,但是,当机床各轴的数量为3轴以上时,能够通过配合轴数而适当增加输入数据的维数来对应。
[0056] 本实施方式中,作为机器学习器20对环境输出的数据(在“<1.机器学习”中说明的行为at),将下一个瞬间(控制装置的控制周期中的当前周期)的各轴的移动量设为输出数据。另外,在本实施方式中,在某个周期中输出的各轴的移动量,通过驱动各轴的伺服电动机在当前周期内无延迟地被消耗(移动)。因此,以下将(一个控制周期中的)移动量直接作为刀具速度来处理。
[0057] 另外,在本实施方式中,作为对机器学习器20赋予的回报(在“<1.机器学习”中说明的回报rt),采用各轴的合成速度的提高(正回报)、与指令相反方向的移动(负回报)、刀具速度的N阶时间微分要素(N是任意的自然数)的大的变化(负回报)、刀具路径的脱离(负回报)、最高速度的超过(负回报)以及冲击的产生(负回报)等。动作评价部3根据输入数据、输出数据等,根据各个回报的达成程度来计算回报。另外,关于根据哪个数据来决定回报,可以由操作者根据机床1中基于加工程序的加工内容来适当设定,例如,也可以将在开孔加工中未到达孔底的情况定义为负回报。
[0058] 进一步,在本实施方式中,机器学习器20根据上述的输入数据、输出数据以及回报进行机器学习。在该机器学习中,在某个时刻t,通过输入数据的组合定义状态st,针对该定义的状态st而进行的移动量的输出成为行为at,并且根据作为通过该行为at进行了移动量输出的结果而新得到的输入数据而评价计算出的值成为回报rt+1,如通过“<1.机器学习>”说明的那样,通过将其应用到与机器学习的算法对应的价值函数(评价函数)的更新式来推进学习。
[0059] 使用图5的功能框图说明本实施方式的机床1的功能。
[0060] 机床1具备:在工件加工中用于驱动各轴的伺服电动机等驱动部(未图示)和控制该伺服电动机的伺服控制部(未图示)等机床所标准化具备的结构;外围设备(未图示);数值控制部2,其控制这些驱动部和外围设备;动作评价部3,其根据这些驱动部和外围设备的动作和从数值控制部2取得的各个数据来评价机床的动作;冲击检测部4,其通过检测对机床产生的冲击的冲击传感器等而构成;以及机器学习器20,其成为进行机器学习的人工智能。
[0061] 如果将图5所示的机床的结构与图2所示的强化学习中的要素进行对比,则图5的机器学习器20与图2的“智能体”对应,包括图5的机床1所具备的驱动部和外围设备以及数值控制部2等的全体与图2的“环境”对应。另外,机床1除了上述以外还具备一般的机床结构,本发明中的机器学习的动作说明所特别需要的结构以外,省略本说明书中的详细说明。
[0062] 数值控制部2对从存储器(未图示)读出的或者经由输入设备(未图示)而输入的加工程序进行分析,根据分析而得到的控制数据来控制机床1的各部。数值控制部2通常进行基于加工程序的分析结果的控制,但是在本实施方式中,驱动机床1的刀具的各轴的控制按照从机器学习器20输出的各轴的移动量来进行。
[0063] 动作评价部3根据从数值控制部2取得的机床1的各轴的轴位置、数值控制部2分析后的加工程序所指示的刀具的指令路径以及通过加工程序指示的刀具的进给速度(最高速度)等,评价在各个控制周期中从机器学习器20输出的机床的各轴移动量,将该评价结果通知给机器学习器20。动作评价部3的行为评价,被用于机器学习器20的学习中的回报的计算。
[0064] 作为行为评价的例子,列举了基于机床1的各轴的移动量的移动方向与根据机床1的各轴的轴位置把握的在刀具当前位置附近通过加工程序指示的指令路径的移动方向之间所成的角度、根据刀具的当前位置从指令路径的脱离量、基于各轴移动量的移动速度与刀具的当前位置附近的通过加工程序指示的最高速度之间的差、加加速度的绝对值的大小(加速度变化的大小)等。另外,行为评价除了上述情况以外,只要对从机器学习器20输出的行为的评价能够评价是否良好,,则可以对评价使用任何行为评价。
[0065] 进行机器学习的机器学习器20具备状态观测部21、状态数据存储部22、回报条件设定部23、回报计算部24、移动量调整学习部25、学习结果存储部26、移动量输出部27。机器学习器20如图所示,可以配备在机床1内,也可以配备在机床1外的个人计算机等中。
[0066] 状态观测部21经由数值控制部2观测与机床1相关的各个数据,取得到机器学习器20中,或者在机器学习器20内取得动作评价部3的动作评价结果作为状态数据。作为取得到机器学习器20内的状态数据,除了上述各轴的轴位置和速度、各轴的速度的N阶时间微分要素(加速度、加加速度、……)之外,还有温度、电流、电压、压力、时间、转矩、力、消耗功率以及对各物理量进行运算处理而计算出的计算值等。
[0067] 另外,作为动作评价部3的动作评价结果,如上所述,有指令路径与刀具移动方向之间的角度、刀具的当前位置从将容许误差加到刀具路径后的范围的脱离的程度、刀具的移动速度与所指示的最高速度之间的差、加加速度的绝对值的大小(加速度变化的大小)等。另外,加加速度绝对值的大小是作为冲击大小的尺度而使用的,所以不一定需要冲击检测器4的冲击检测值和从动作评价部3取得的加加速度绝对值的大小的两方,也可以只取得一方作为状态数据。
[0068] 状态数据存储部22输入状态数据并存储,将该存储的状态数据输出给回报计算部24和移动量调整学习部25。输入到状态数据存储部22中的状态数据可以是通过最新的加工运行而取得的数据,也可以是通过过去的加工运行而取得的数据,另外,也能够输入并存储、或者输出存储在其他机床40和集中管理系统30中的状态数据。
[0069] 回报条件设定部23在通过操作者等设定的机器学习中设定赋予回报的条件。回报中有正回报和负回报,能够适当设定。对该回报条件设定部23的输入可以来自在集中管理系统中使用的个人计算机和平板终端等,能够经由机床1所具备的MDI设备(未图示)而输入,由此能够更简单地进行设定。
[0070] 回报计算部24根据通过回报条件设定部23设定的条件来分析从状态观测部21或状态数据存储部22输入的状态数据,并将计算出的回报输出给移动量调整学习部25。
[0071] 以下,表示通过本实施方式的回报条件设定部23进行设定的回报条件的例子。
[0072] [回报1:各轴的合成速度的提高(正回报、负回报)]
[0073] 当各轴的合成速度比过去各轴的合成速度提高时,导致加工的周期时间的提高,因此根据其程度赋予正回报。
[0074] 另一方面,当各轴的合成速度超过通过指令而赋予的最高速度、或者各轴的速度超过在机床1中设定的各轴的最高速度时,导致机床1的故障等,因此根据其程度而赋予负回报。
[0075] [回报2:向与指令不同的方向的移动(负回报)]
[0076] 当根据基于机床1的各轴移动量的移动方向与根据机床1各轴的轴位置把握的刀具当前位置附近的通过加工程序进行指示的指令路径的移动方向之间所成的角度,向移动方向与通过加工程序指示的指令路径有很大不同的方向进行移动时,根据其程度赋予负回报。作为负回报的例子,当刀具的移动方向和指令路径的移动方向之间所成的角度比预定角度(例如±45度以内)大时,可以赋予将预定系数乘以其差值而得的值作为负回报,并且也可以在单纯超过180度时(与指令路径的移动方向相反的方向)赋予负回报。
[0077] [回报3:刀具速度的N阶时间微分要素(N是任意的自然数)的大的变化(负回报)][0078] 当机床1的各轴速度的N阶时间微分要素(N是任意的自然数、加速度、加加速度等)的变化超过预先设定的预定值时,根据其超过程度而赋予负回报。
[0079] [回报4:刀具路径的脱离(负回报)]
[0080] 当刀具的当前位置从通过加工程序进行指示的指令路径脱离时,根据该脱离的程度赋予负回报。脱离的程度可以根据刀具的当前位置和指令路径之间的距离量来赋予负回报。
[0081] [回报5:冲击的产生(负回报)]
[0082] 在通过机床1所具备的冲击检测部4检测出超过预先设定的预定值的冲击时,根据其超过程度来赋予负回报。
[0083] 移动量调整学习部25根据包括输入数据等的状态数据、自身进行的机床1的各轴移动量的调整结果以及通过回报计算部24计算出的回报来进行机器学习(强化学习)。
[0084] 这里,在移动量调整学习部25进行的机器学习中,通过某个时刻t的状态数据的组合来定义状态st,根据该定义的状态st决定各轴移动量的行为成为行为at,通过后述的移动量输出部27将决定的各轴移动量输出给数值控制部2,回报计算部24根据作为数值控制部2根据该决定的各轴移动量进行机床1的各轴移动的结果而得到的数据所计算出的值成为回报rt+1。用于学习的价值函数,根据所应用的学习算法来决定。例如,在使用Q学习的情况下,通过按照上述式(2)来更新行为价值函数Q(st,at)来推进学习即可。
[0085] 使用图6的流程图说明图5的机器学习器20的移动量调整学习部25进行的机器学习的流程。以下,说明各个步骤。
[0086] [步骤SA01]如果开始机器学习,则状态观测部21取得机床1的加工状态的数据。
[0087] [步骤SA02]移动量调整学习部25根据状态观测部21所取得的加工状态的数据来确定当前的状态st。
[0088] [步骤SA03]移动量调整学习部25根据过去的学习结果和在步骤SA02确定的状态st来选择行为at(各轴移动量的决定)。
[0089] [步骤SA04]执行通过步骤SA03选择出的行为at。
[0090] [步骤SA05]状态观测部21取得表示机床1的状态的加工状态的数据。在该阶段中,机床1的状态随着从时刻t到时刻t+1的时间推移,通过在步骤SA04执行的行为at而发生变化。
[0091] [步骤SA06]根据在步骤SA05取得的评价结果的数据,回报计算部24计算回报rt+1。
[0092] [步骤SA07]根据在步骤SA02确定的状态st、在步骤SA03选择出的行为at、在步骤SA06计算出的回报rt+1,移动量调整学习部25推进机器学习,返回步骤SA02。
[0093] 返回图5,学习结果存储部26存储由上述移动量调整学习部25学习到的结果。另外,当移动量调整学习部25再使用学习结果时,将所存储的学习结果输出给移动量调整学习部25。如上所述,学习结果的存储中,通过近似函数、矩阵或多值输出的SVM和神经网络等的有教师学习器等存储与所使用的机器学习算法对应的价值函数即可。
[0094] 另外,能够将其它的机床40和集中管理系统30所存储的学习结果输入给学习结果存储部26并进行存储,也能够将学习结果存储部26所存储的学习结果输出给其它机床40和集中管理系统30。
[0095] 移动量输出部27根据移动量调整学习部25所学习到的结果和当前的状态数据来决定各轴移动量。这里所说的各轴移动量的决定相当于用于机器学习(图2)的“行为a”。各轴移动量的决定,例如将各轴正负方向的移动量的组合准备为可选择的行为(例如,行为1:(X轴移动量、Z轴移动量)=(1,0)、行为2:(X轴移动量、Z轴移动量)=(2,0)、……、行为n:(X轴移动量、Z轴移动量)=(δxmax、δzmax),根据过去的学习结果选择将来得到的回报成为最大的行为。另外,可以采用上述的ε贪婪算法,以预定的概率选择随机的行为来谋求学习的进展。
[0096] 之后,移动量输出部27将所决定的各轴移动量输出给数值控制部2。然后,数值控制部2根据从移动量输出部27输出的各轴移动量来驱动机床1的各轴。
[0097] 并且,再次通过动作评价部3进行各轴驱动结果的评价,通过机器学习器20进行该评价结果和当前机床1的状况的取得,使用所输入的状态数据来重复学习,从而能够得到更优的学习结果。
[0098] 这样,在作为机器学习器20学习的结果而确认了指令路径上的各位置的最佳加速/减速的阶段,结束机器学习器20的学习。将通过学习结束后的机器学习器20所输出的各轴的移动量(指令脉冲)收集刀具路径1周的量而得数据成为刀具的移动数据。
[0099] 在使用上述学习结束后的学习数据实际通过机床进行加工时,机器学习器20可以不进行新的学习而直接使用学习结束时的学习数据重复进行运行。
[0100] 另外,可以将学习结束后的机器学习器20(或者将其它机器学习器20结束后的学习数据复制到了学习结果存储部26的机器学习器20)安装在其它的机床40上,直接使用学习结束时的学习数据进行重复运行。
[0101] 进一步,在将学习结束后的机器学习器20的学习功能设为有效的状态下安装在其它机床40上并继续工件的加工,由此进一步学习针对每个机床而不同的个体差和经年变化等,对机床1来说,还能够一边搜索更好的刀具路径一边进行运行。
[0102] 另外,在如以上那样使用机床的数值控制部2来进行学习动作时,数值控制部2不实际使机床1动作而根据虚拟的工件加工处理来进行学习。另外,如图7所示,可以针对另外具备仿真机床动作的仿真部6的仿真装置5组装机器学习器20,根据该仿真部6的仿真结果进行机器学习器20的学习动作。在任何情况下,在学习初始的阶段大多输出大大偏离指令路径的移动量,因此最好是不伴有实际的工件加工。
[0103] 另外,机床1的机器学习器20可以单独进行机器学习,但是如果多个机床1还分别具备与外部的通信单元,则能够接收发送由各自的上述状态数据存储部22存储的状态数据和由学习结果存储部26存储的学习结果并共享,能够效率更好地进行机器学习。例如,当在预定范围内使移动量变化来学习时,一边在多个机床1、40中使不同的移动量在预定范围内分别发生变化并进行加工,一边通过在各个机床1之间交换状态数据和学习数据来并列地推进学习,由此能够高效地进行学习。
[0104] 这样在多个机床1、40之间进行交换时,通信可以经由集中管理系统30等的主计算机,也可以在机床1、40之间直接进行通信,还可以使用云,但是由于有时处理大量数据,因此最好是通信速度尽量快的通信方式。
[0105] 以上,说明了本发明的实施方式,但是本发明不仅限于上述实施方式的例子,通过加以适当的变更能够以各种方式来实施。