CN106557074B - 生成最佳速度分布的机床、仿真装置以及机器学习器 - Google Patents

生成最佳速度分布的机床、仿真装置以及机器学习器 Download PDF

Info

Publication number
CN106557074B
CN106557074B CN201610849640.9A CN201610849640A CN106557074B CN 106557074 B CN106557074 B CN 106557074B CN 201610849640 A CN201610849640 A CN 201610849640A CN 106557074 B CN106557074 B CN 106557074B
Authority
CN
China
Prior art keywords
movement
amount
axle
machine learning
lathe
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610849640.9A
Other languages
English (en)
Other versions
CN106557074A (zh
Inventor
金丸智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of CN106557074A publication Critical patent/CN106557074A/zh
Application granted granted Critical
Publication of CN106557074B publication Critical patent/CN106557074B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/416Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
    • G05B19/4163Adaptive control of feed or cutting velocity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33034Online learning, training
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33056Reinforcement learning, agent acts, receives reward, emotion, action selective
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41367Estimator, state observer, space state controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49061Calculate optimum operating, machining conditions and adjust, adapt them
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49107Optimize spindle speed as function of calculated motion error
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49111Cutting speed as function of contour, path, curve

Abstract

本发明提供一种生成最佳速度分布的机床,其具备评价其动作的动作评价部和机器学习轴的移动量的机器学习器。该机器学习器基于包含动作评价部的输出数据的机床的状态数据来计算回报,机器学习轴的移动量的决定,根据机器学习结果来决定并输出轴的移动量。然后,基于该决定的所述轴的移动量、取得的状态数据、相加后的回报来机器学习轴的移动量的决定。

Description

生成最佳速度分布的机床、仿真装置以及机器学习器
技术领域
本发明涉及一种机床,特别是涉及一种生成各轴的控制中的最佳速度分布的机床。
背景技术
以往,生成加工程序,基于该生成的加工程序来控制机床从而进行部件或金属模具等的加工。进行加工时的加工速度在加工程序内作为轴的移动速度来指令,其是工具与加工物的相对移动(工具移动)的最大速度,实际上在机床中,在加工开始时或角部、曲线部分等输出了按照各轴的加减速时间常数来改变了轴的移动速度的移动数据。另外,对于加工物具有目标加工时间,该目标加工时间通过机床的操作者一边确认加工物的加工面精度一边变更加减速时间常数,或者变更在程序内指令的工具的进给速度等方法来进行调整。
作为与这样的加工中的参数调整相关联的现有技术,在日本特开2003-058218号公报中公开了作为参数组准备并使用在加工中能够调整的多个种类的参数的参数调整方法。另外,在日本特开2006-043836号公报中公开了使用加工图案一边考虑加工精度一边进行用于缩短加工时间的加工路径信息生成和加工条件设定的加工条件设定方法。
一般来说,在加工中能够通过在整体上增大控制工具时的指令速度或加速度来提高整体的加工速度,但是另一方面,当在角部、曲线部分附近将工具的移动速度或加速度设定得大时,有时实际的工具路径从指令路径脱离。
图8A以及图8B表示实际的工具路径从通过加工程序指令的工具路径脱离的例子。
在图8A所示的车削加工或图8B所示的钻孔加工等各种各样的加工中,当增大工具的速度或角速度时,在角部或曲线部附近产生因过冲或内旋等引起的路径脱离。
当发生这样的路径脱离时,如图9A以及图9B所示,加工面精度降低或产生加工不良(图9A)、或由于与工件的干扰而产生工具损坏(图9B)等。为了不发生这样的情况而一边考虑与轴移动相关的各要素,一边为了缩短加工时间进行速度或加速度的调整,存在操作者花费大的劳力的问题,另外,还存在未必能够将速度或加速度调整到最佳这样的问题。
针对这样的问题,上述的日本特开2003-058218号公报以及日本特开2006-043836号公报中公开的现有技术仅能够应对适合于所准备的参数组或加工图案的状况,而无法灵活地应对各种各样的状况。
发明内容
本发明的目的在于提供一种生成各轴的控制中的最佳速度分布的机床。
在本发明中,得到从某个时间的机床的轴的位置开始到下一个瞬间的轴的位置为止的变化量。这是从数值控制装置输出的被称为指令脉冲的数据。以往,机床厂商的技术人员通过设定为各轴加减速时间常数等方法来进行调整,因此存在得不到最佳变化量的情况。通过使轴的移动量成为最佳,在指定的工具路径上生成最佳的速度分布,并实现每一次加工的时间缩短以及加工精度的提高。
本发明的机床基于由程序指令的工具的指令路径来驱动至少一个轴从而进行工件的加工,其具备:动作评价部,其评价所述机床的动作来输出评价数据;以及机器学习器,其机器学习所述轴的移动量的决定。并且,所述机器学习器具有:状态观测部,其取得包含所述机床的至少所述轴的轴位置的数据、从所述动作评价部输出的评价数据来作为状态数据;回报条件设定部,其设定回报条件;回报计算部,其基于所述状态观测部取得的所述状态数据来计算回报;移动量调整学习部,其机器学习所述轴的移动量的决定;以及移动量输出部,其基于所述移动量调整学习部针对所述轴的移动量的决定的机器学习结果以及所述状态数据,决定并输出所述轴的移动量,以使所述工具的移动速度的分布成为最佳。并且,所述移动量调整学习部构成为,根据决定的所述轴的移动量、在所述机床根据输出的所述轴的移动量进行了动作后由所述状态观测部取得的所述状态数据、所述回报计算部计算出的所述回报,来机器学习所述轴的移动量的决定。
可以将所述回报计算部构成为,在所述轴的合成速度增加时,或者在加工精度提高时计算正的回报,另一方面,在所述工具脱离所述指令路径时计算负的回报。
能够使所述机床与至少一个其他的机床相连接,在与所述其他的机床之间相互交换或共享机器学习的结果。
可以将所述移动量调整学习部构成为使用调整后的所述轴的移动量、通过自变量表现了由所述状态观测部取得的所述状态数据的评价函数来进行机器学习,以使所述回报为最大。
本发明的仿真装置对机床进行仿真,该机床基于由程序指令的工具的指令路径来驱动至少一个轴从而进行工件的加工。该仿真装置具备:动作评价部,其评价所述机床的仿真动作来输出评价数据;以及机器学习器,其机器学习所述轴的移动量的决定。并且,所述机器学习器具有:状态观测部,其取得包含所述机床的至少所述轴的轴位置的仿真的数据、从所述动作评价部输出的评价数据来作为状态数据;回报计算部,其基于所述状态观测部取得的所述状态数据来计算回报;移动量调整学习部,其机器学习所述轴的移动量的决定;以及移动量输出部,其基于所述移动量调整学习部针对所述轴的移动量的决定的机器学习结果以及所述状态数据,决定并输出所述轴的移动量,以使所述工具的移动速度的分布成为最佳。并且,所述移动量调整学习部构成为,根据所决定的所述轴的移动量、在根据输出的所述轴的移动量进行了所述机床的仿真动作后由所述状态观测部取得的所述状态数据、所述回报计算部计算出的所述回报,来机器学习所述轴的移动量的决定。
并且,本发明的机器学习器对机床具备的至少一个轴的移动量的调整进行机器学习,其具备:学习结果存储部,其存储所述轴的移动量的决定的机器学习结果;状态观测部,其取得包含所述机床的至少所述轴的轴位置的状态数据;以及移动量输出部,其基于在所述学习结果存储部中存储的所述机器学习结果和所述状态数据,来决定并输出所述轴的移动量,以使所述机床的工具的移动速度的分布成为最佳。
在本发明中,通过在最佳的各轴移动量的决定中引入机器学习,能够得到最佳的速度分布,能够以更短时间实现更高加工精度的工件加工。
附图说明
通过参照以下的附图,能够更加明确理解本发明的上述以及其他的目的以及特征。在这些图中:
图1A以及图1B表示通过本发明使机床的速度分布最佳化的例子,其中,图1A为车削加工的速度调整的例子,调整为最佳的速度(轴的移动量),虚线箭头是指令路径,实线箭头为工具路径,虚线圆为学习前的速度的大小,实线圆为学习后的速度的大小;图1B为钻孔加工的速度调整的例子,调整为最佳的速度(轴的移动量),虚线箭头是指令路径,实线箭头为工具路径,虚线圆为学习前的速度的大小,实线圆为学习后的速度的大小。
图2说明强化学习算法的基本概念。
图3是关于本发明的一个实施方式的机床的机器学习的想像图。
图4对在本发明的一个实施方式中处理的各数据进行说明,其中,虚线箭头是指令路径,实线箭头为工具路径,工具的行进方向:(δxt-1、δzt-1);从工具路径的脱离量:d;当前的各轴速度:(δxt-1、δzt-1);当前的各轴加速度:(δxt-1-δxt-2、δzt-1-δzt-2)。
图5是本发明的一个实施方式的机床的功能框图。
图6是说明图5的机器学习器中的移动量调整学习部进行的机器学习的流程的流程图。
图7是本发明的一个实施方式的仿真装置的功能框图。
图8A以及图8B对工件加工中的工具路径的脱离进行说明,其中,图8A为车削加工中的路径脱离的例子,虚线箭头是指令路径,实线箭头为工具路径,图8B为钻孔加工中的路径脱离的例子,虚线箭头是指令路径,实线箭头为工具路径。
图9A以及图9B说明工具路径脱离导致的问题,其中,图9A为基于路径脱离的加工不良的例子,虚线箭头是指令路径,实线箭头为工具路径,图9B为基于路径脱离的工具损坏的例子,虚线箭头是指令路径,实线箭头为工具路径。
具体实施方式
图1A以及图1B表示通过本发明使机床的速度分布最佳化的例子。
在图1A以及图1B中,虚线的圆表示在指令路径的各点的所指令的速度的大小(学习前的速度大小),实线的圆表示在指令路径的各点的最佳化的速度的大小(学习后的速度大小)。
在本发明中,在加工工件的机床中导入作为人工智能的机器学习器,通过进行与基于加工程序进行的工件加工中的机床各轴的移动量相关的机器学习,如图1A以及图1B所示,进行调整以使在工件加工中的某个时间点的机床各轴的速度(移动量)成为最佳。在这样的各轴的移动量的调整中,通过得到以更快且顺滑的工具移动、以及尽量不脱离工具路径为目的的最佳速度分布,从而以更短时间实现更高加工精度的工件加工。
以下,对本发明的机床中导入的机器学习简单地进行说明。
<1.机器学习>
一般来说,机器学习根据其目的或条件分类为有教师学习(supervisedlearning)、无教师学习(unsupervised learning)等各种算法。在本发明中,目的在于学习基于加工程序进行的工件加工中的机床各轴的移动量,考虑到难以明确地表示针对基于输出的各轴移动量的工具移动路径进行何种行为(各轴的移动量的调整)是正确的,采用强化学习(reinforcement learning)的算法,即仅通过给予回报来使机器学习器自动地学习用于达成目标的行为。
图2说明强化学习算法的基本概念。
在强化学习中,通过作为学习主体的智能体(机器学习器)与作为控制对象的环境(控制对象系统)之间的互动,推进智能体学习和行为。更具体地说,在智能体与环境之间进行如下的互动:
(1)智能体观测在某个时间点的环境的状态st
(2)基于观测结果和过去的学习来选择自身采取的行为at从而执行行为at
(3)通过执行行为at,环境的状态st变化为下一状态st+1
(4)基于作为行为at的结果的状态的变化,智能体收取回报rt+1
(5)智能体基于状态st、行为at、回报rt+1以及过去的学习结果来推进学习。
在上述(5)的学习中,智能体取得观测到的状态st、行为at、回报rt+1的映射来作为成为判断将来能够取得的回报量的基准的信息。例如,当把在各时刻可取得的状态的个数设为m,可取得的行为的各数设为n时,通过重复行为而得到m×n的二维排列,该m×n的二维排列存储与状态st和行为at的组合相对的回报rt+1
然后,基于上述得到的映射,使用用于表示当前的状态或行为有多好的函数即价值函数(评价函数),在重复行为的过程中更新价值函数(评价函数),由此来学习与状态相对的最佳行为。
状态价值函数是表示某个状态st是有多好的状态的价值函数。将状态价值函数表现为以状态为自变量的函数,在重复行为的过程的学习中,基于针对某个状态下的行为得到的回报、通过该行为而进行迁移的未来的状态的价值等对状态价值函数进行更新。根据强化学习的算法定义了状态价值函数的更新式,例如,在作为强化学习算法之一的TD学习中,通过下述式(1)定义状态价值函数。此外,在式(1)中,将α称为学习系数,将γ称为折扣率,以0<α≤1、0<γ≤1的范围来进行定义。
式1
V(st)←V(st)+α[rt+1+γV(st+1)-V(st)]
另外,行为价值函数是表示在某个状态st下行为at是有多好的行为的价值函数。将行为价值函数表现为以状态和行为为自变量的函数,在重复行为的过程的学习中,基于针对某个状态下的行为得到的回报、通过该行为而进行迁移的未来的状态下的行为的价值等对行为价值函数进行更新。根据强化学习的算法定义了行为价值函数的更新式,例如,在作为代表性的强化学习算法之一的Q学习中,行为价值函数通过下述式(2)来定义。此外,在式(2)中,将α称为学习系数、将γ称为折扣率,并以0<α≤1、0<γ≤1的范围来进行定义。
式2
此外,作为存储学习结果即价值函数(评价函数)的方法,除了使用近似函数的方法、使用排列的方法以外,例如在状态s取得很多状态的情况下,具有使用将状态st以及行为at作为输入来输出价值(评价)的多值输出的SVM或神经网络等有教师学习器的方法等。
然后,在上述(2)的行为选择中,使用通过过去的学习而生成的价值函数(评价函数)来选择在当前的状态st下到将来的回报(rt+1+rt+2+…)为最大的行为at(在使用状态价值函数时是用于转移到价值最高的状态的行为,在使用行为价值函数时是在该状态下价值最高的行为)。此外,在智能体的学习中有时以学习的进展为目的,在(2)的行为选择中以一定的概率选择随机的行为(ε贪婪法)。
如此,通过重复(1)~(5)来推进学习。当在某个环境中学习结束后,置于新的环境时还进行追加的学习,由此能够推进学习从而适应该环境。
因此,如本发明那样,通过在基于加工程序进行的工件加工中的某个时间点的机床各轴的速度(移动量)的决定中应用本发明,即使在用于新机床的控制时,也能够基于在过去的工件加工中的某个时间点的机床各轴的速度(移动量)的学习,将新的加工程序作为新的环境来进行追加学习,由此能够在短时间进行某个时间点的各轴速度(移动量)的学习。
另外,在强化学习中,作为经由网络等连接了多个智能体的系统,通过在智能体间共享状态s、行为a、回报r等信息来用于各个学习,从而进行各个智能体还考虑其他智能体的环境来进行学习的分散强化学习,由此能够进行高效的学习。在本发明中,在对多个环境(作为控制对象的机床)进行控制的多个智能体(机器学习器)经由网络等相连接的状态下进行分散机器学习,由此能够高效地进行机床基于加工程序进行的工件加工中的某个时间点的各轴的速度(移动量)的学习。
此外,作为强化学习的算法,众所周知有Q学习、SARSA法、TD学习、AC法等各种方法,作为适用于本发明的方法,可以采用任意的强化学习算法。上述各个强化学习算法为众所周知,所以在本说明书中省略各算法的更详细的说明。
以下,基于具体的实施方式对导入了机器学习器的本发明的机床进行说明。
<2.实施方式>
图3表示一想像图,该想像图关于在导入了本发明的一实施方式的成为人工智能的机器学习器的机床中,在某个时间点的各轴速度(移动量)的决定的机器学习。此外,在图3中仅表示了为了说明本实施方式的机床中的机器学习所需要的结构。
在本实施方式中,作为机器学习器20用于确定环境(在“<1.机器学习>”中说明的状态st)的信息,对机器学习器20输入工具的行进方向、从工具路径的脱离量、当前的各轴速度、当前的各轴加速度等。这些值是从机床1的各部位取得的数据、以及基于该数据由动作评价部3计算出的数据。
图4对本实施方式的机床1的各数据进行说明。
在机床1中,将解析加工程序得到的指令路径存储到存储器(未图示),在上述的输入数据中,除了从机床1得到的时刻t的各轴的轴位置(xt、zt)、各轴的移动速度(δxt-1、δzt-1)、各轴的加速度(δxt-1-δxt-2、δzt-1-δzt-2),还包含动作评价部3基于上述各数据计算出的例如各轴位置从指令路径脱离的距离d等那样的数据。
此外,在图4中,表示了X-Z的二维坐标系中的各输入数据的例子,在机床的各轴的数量为3轴以上时,能够通过与轴数相符地来适当增加输入数据的维数来进行应对。
在本实施方式中,作为机器学习器20针对环境输出的内容(在“<1.机器学习>”中说明的行为at),将下一瞬间(控制装置的控制周期中的当前周期)的各轴的移动量作为输出数据。在本实施方式中,将在某个周期中输出的各轴的移动量设为通过驱动各轴的伺服电动机在该周期内无延迟地消耗(移动)的移动量。因此,以下把(在一定的控制周期中输出的)移动量直接作为工具的移动速度来处理。
另外,在本实施方式中,作为对机器学习器20给予的回报(在“<1.机器学习>”中说明的回报rt),采用各轴的合成速度的提高(正回报)、向与指令相反的方向移动(负回报)、工具路径的脱离(负回报)、超过最高速度(负回报)等。动作评价部3根据输入数据、输出数据等,并基于各回报的达成度来计算回报。此外,关于基于哪个数据来决定回报,可以由操作者根据机床1中的加工程序的加工内容来适当设定,例如,在钻孔加工中可以将未到达孔底定义为负回报。
并且,在本实施方式中,机器学习器20基于上述的输入数据、输出数据、回报来进行机器学习。在机器学习中,在某个时刻t,通过输入数据的组合来定义状态st,针对该定义的状态st进行的移动量的输出成为行为at、然后,根据通过该行为at而进行了移动量输出的结果即新得到的输入数据进行评价计算而得到的值成为回报rt+1,如<1.机器学习>中说明的那样,通过将其用于与机器学习的算法相对应的价值函数(评价函数)的更新式来推进学习。
以下,基于图5的功能框图来说明机床1的功能。
图5是本实施方式的机床的功能框图。
本实施方式的机床1具备:用于在工件加工中驱动各轴的伺服电动机等驱动部(未图示)、控制伺服电动机的伺服控制部(未图示)等机床标准具备的结构和周边设备(未图示)、控制这些驱动部和周边设备的数值控制部2、基于这些驱动部和周边设备的动作、从数值控制部2取得的各数据来评价机床动作的动作评价部3、以及作为进行机器学习的人工智能的机器学习器20。
在将图5的功能框图所示的结构与图2所示的强化学习中的要素进行对比时,图5的机器学习器20对应于图2的“智能体”,另外,包含图5的机床1所具备的驱动部、周边设备、数值控制部2等在内的全部结构对应于图2的“环境”。此外,除了上述结构以外,机床1还具备一般的机床的结构,除了为了说明本发明的机器学习的动作而特别需要的结构以外,在本说明书中省略详细的说明。
数值控制部2解析从存储器(未图示)读出的或者经由输入设备(未图示)等输入的加工程序,基于解析而得到的控制数据来控制机床1的各部。该数值控制部2通常基于加工程序的解析结果来进行控制,在本实施方式中,按照从机器学习器20输出的各轴的移动量来进行驱动机床1的工具的各轴控制。
动作评价部3基于从数值控制部2取得的机床1的各轴的轴位置、数值控制部2解析的加工程序所指令的工具的指令路径、由加工程序指令的工具的进给速度(最高速度)等,在各控制周期评价从机器学习器20输出的机床的各轴的移动量,并向机器学习器20通知其评价结果。动作评价部3针对行为的评价用于计算机器学习器20的学习的回报。
作为行为评价的例子,例举了基于机床1各轴的移动量的移动方向与根据机床1的各轴的轴位置而掌握的工具的当前位置附近由加工程序指令的指令路径的移动方向之间形成的角度,或工具的当前位置从指令路径的脱离量、基于各轴的移动量的移动速度与工具的当前位置附近由加工程序指令的最高速度之间的差等,只要能够在从机器学习器20输出的行为的评价中评价好坏,则可以在评价中使用任何行为。
进行机器学习的机器学习器20具备状态观测部21、状态数据存储部22、回报条件设定部23、回报计算部24、移动量调整学习部25、学习结果存储部26、移动量输出部27。如图所示,机器学习器20可以设置在机床1内,也可以设置在机床1外的个人计算机等中。
状态观测部21经由数值控制部2观测并在机器学习器20内取得与机床1相关的物理量数据,并且在机器学习器20内取得动作评价部3的动作评价结果。在进行观测并在机器学习器20内取得的物理量数据中除了具有上述的各轴的轴位置、速度、加速度以外,还具有温度、电流、电压、压力、时间、扭矩、力、消耗功率、以及对各物理量进行运算处理而计算出的计算值等。另外,作为动作评价部3针对动作的评价结果,如上所述具有指令路径与工具的移动方向之间的角度、工具的当前位置与工具路径之间的脱离程度、工具的移动速度与指令的最高速度之间的差等。
状态数据存储部22输入并存储状态数据,并对回报计算部24、移动量调整学习部25输出存储的该状态数据。在状态数据存储部22中输入的状态数据即可以是在最新的加工运行中取得的数据,也可以是在过去的加工运行中取得的数据。另外,能够输入并存储在其他的机床40或集中管理系统30中存储的状态数据,或者将状态数据存储部22存储的状态数据输出到其他的机床40或集中管理系统30。
回报条件设定部23在由操作者等设定的机器学习中设定给予回报的条件。在回报中具有正的回报和负的回报,能够适当设定。可以从集中管理系统中使用的个人计算机或平板终端等向回报条件设定部23进行输入,但是通过设为能够经由机床1所具备的未图示的MDI设备来进行输入,能够更简单地进行设定。
回报计算部24基于回报条件设定部23设定的条件来分析从状态观测部21或状态数据存储部22输入的状态数据,并将计算出的回报输出到移动量调整学习部25。
以下,表示通过本实施方式的回报条件设定部23设定的回报条件的例子。
[回报1:各轴的合成速度的提高(正回报、负回报)]
在各轴的合成速度比过去的各轴的合成速度提高时,由于关系到加工的循环时间的提高,因此根据其程度给予正的回报。
另一方面,在各轴的合成速度超过了由指令给予的最高速度,或者各轴的速度超过了在机床1中设定的各轴的最高速度时,因为关系到机床1的故障等,因此根据其程度给与负的回报。
[回报2:向与指令不同的方向移动]
根据角度,在朝着移动方向与通过加工程序指令的指令路径有很大不同的方向移动时,根据其程度给予负的回报,其中,上述角度是基于机床1的各轴的移动量的移动方向与根据机床1各轴的轴位置而掌握的工具的当前位置附近的通过加工程序指令的指令路径的移动方向之间的角度。作为负回报的例子,在工具的移动方向与指令路径的移动方向形成的角度比预定的角度(例如±45度以内)大时,可以给予其差乘以预定系数而得到的值来作为负的回报,也可以在单纯地超过了180度时(与指令路径的移动方向相反的方向)给予负回报。
[回报3:工具路径的脱离]
在工具的当前位置从通过加工程序指令的指令路径脱离时,根据其脱离的程度给予负回报。关于脱离的程度,可以根据工具的当前位置与指令路径之间的距离量来给予负回报。
移动量调整学习部25基于包含输入数据等的状态数据、自身进行的机床1的各轴的移动量的调整结果、以及由回报计算部24计算出的回报来进行机器学习(强化学习)。
在此,在移动量调整学习部25进行的机器学习中,通过某时刻t的状态数据的组合来定义状态st,根据该定义的状态st来决定各轴的移动量成为行为at,将通过后述的移动量输出部27决定的各轴的移动量输出到数值控制部2,回报计算部24根据由数值控制部2基于所决定的各轴的移动量进行了机床1各轴的移动的结果而得到的数据计算出的值成为回报rt+1。关于在学习中使用的评价函数,对应于所采用的学习算法来决定评价函数。例如,在使用Q学习时,可以按照上述式(2)更新行为价值函数Q(st、at)由此来推进学习。
使用图6的流程图来说明图5的机器学习器20的移动量调整学习部25进行的机器学习的流程。以下,对各步骤进行说明。
[步骤SA01]当开始了机器学习时,状态观测部21取得机床1的加工状态的数据。
[步骤SA02]移动量调整学习部25基于状态观测部21取得的加工状态的数据来确定当前的状态st
[步骤SA03]移动量调整学习部25基于过去的学习结果和在步骤SA02确定的状态st来选择行为at(各轴的移动量的决定)。
[步骤SA04]执行在步骤SA03选择出的行为at
[步骤SA05]状态观测部21取得表示机床1的状态的加工状态的数据。在该阶段中,机床1的状态与从时刻t到时刻t+1的时间推移一起通过在步骤SA04中执行的行为at而进行变化。
[步骤SA06]基于在步骤SA05取得的评价结果的数据,回报计算部24计算回报rt+1
[步骤SA07]基于在步骤SA02确定的状态st、在步骤SA03选择的行为at、在步骤SA06计算出的回报rt+1,移动量调整学习部25进行机器学习,并返回步骤SA02。
返回到图5,学习结果存储部26存储所述移动量调整学习部25学习的结果。另外,在移动量调整学习部25再次使用学习结果时,将存储的学习结果输出到移动量调整学习部25。在学习结果的存储中,如上所述,可以通过近似函数、排列、或多值输出的SVM或神经网络等有教师学习器等存储与使用的机器学习算法相对应的价值函数。
此外,在学习结果存储部26中能够输入并存储其他的机床40或集中管理系统30存储的学习结果,或者能够对其他的机床40或集中管理系统30输出学习结果存储部26存储的学习结果。
移动量输出部27基于移动量调整学习部25学习的结果和当前的状态数据来决定各轴的移动量。这里所说的各轴的移动量的决定相当于在机器学习中使用的行为a。关于各轴的移动量的决定,例如可以准备组合了各轴正负方向的移动量的行为来作为可选择的行为(例如,行为1:(X轴移动量、Z轴移动量)=(1、0)、行为2:(X轴移动量、Z轴移动量)=(2、0)、...、行为n:(X轴移动量、Z轴移动量)=(δxmax、δzmax)),基于过去的学习结果来选择将来得到的回报最大的行为。另外,也可以采用上述的ε贪婪法,以预定的概率选择随机的行为,由此来谋求学习的进展。
此后,移动量输出部27对数值控制部2输出所决定的各轴的移动量。然后,数值控制部2基于从移动量输出部27输出的各轴的移动量来驱动机床1的各轴。
然后,通过动作评价部3再次进行各轴的驱动结果的评价,通过机器学习器20取得该评价结果和当前的机床1的状况,使用输入的状态数据来重复学习,由此能够得到更好的学习结果。
如此作为机器学习器20进行学习的结果,在确认了移动路径上的各位置的最佳移动速度的分布的阶段完成机器学习器20的学习。针对学习完成后的机器学习器20输出的各轴的移动量(指令脉冲),以一圈工具路径的量聚集了该输出的各轴的移动量而得到的数据成为工具的移动数据。
在使用上述学习完成后的学习数据来实际通过机床进行加工时,机器学习器20可以不进行新的学习而直接使用学习完成时的学习数据来重复运行。
另外,可以将学习完成后的机器学习器20(或者,在学习结果存储部26中复制了其他的机器学习器20完成后的学习数据的机器学习器20)安装在其他的机床40中,直接使用学习完成时的学习数据来重复运行。
并且,还能够将学习完成后的机器学习器20的学习功能保持有效地安装在其他的机床40中,从而继续进行工件的加工,由此进一步学习每个机床不同的个体差异和随时间的变化等,一边探索对于机床来说更好的工具路径一边进行运行。
此外,如上所述在使用机床的数值控制部2来进行学习动作时,数值控制部2可以实际不运行机床1而基于虚拟的工件加工处理来进行学习。另外,如图7所示,可以在具备另外对机床的动作进行仿真的仿真部5的仿真装置4中加入机器学习器20,基于该仿真部5的仿真结果来进行机器学习器20的学习动作。无论在哪种情况下,在学习的初始阶段经常输出大幅脱离指令路径的移动量,因此希望不伴随实际的工件加工。
另外,机床1的机器学习器20可以单独进行机器学习,但是在多个机床1还分别具备与外部之间的通信单元时,能够发送接收并共享各自的所述状态数据存储部22存储的状态数据和学习结果存储部26存储的学习结果,因此能够更高效地进行机器学习。例如,当在预定的范围内改变移动量来进行学习时,能够一边在多个机床1中使不同的移动量在预定的范围内分别变动来加工工件,一边在各个机床1之间交换状态数据和学习数据,从而并行地推进学习,由此能够高效地进行学习。
在这样在多个机床1之间进行数据交换时,通信既可以经由集中管理系统30等的主计算机,也可以使机床1彼此直接进行通信,还可以使用云端,由于具有处理大量数据的情况,因此尽量优选通信速度快的通信单元。
以上对本发明的实施方式进行了说明,但是本发明并不限于上述实施方式的例子,能够通过施加适当的变更以各种方式来进行实施。

Claims (6)

1.一种机床,其基于由程序指令的工具的指令路径来驱动至少一个轴从而进行工件的加工,其特征在于,具备:
动作评价部,其评价所述机床的动作来输出评价数据;以及
机器学习器,其机器学习每个控制周期的所述轴的移动量的决定,
所述机器学习器具有:
状态观测部,其取得包含所述机床的至少所述轴的轴位置的数据、和从所述动作评价部输出的评价数据来作为状态数据;
回报条件设定部,其设定回报条件;
回报计算部,其基于所述状态观测部取得的所述状态数据来计算回报;
移动量调整学习部,其机器学习每个控制周期的所述轴的移动量的决定;以及
移动量输出部,其基于所述移动量调整学习部针对每个控制周期的所述轴的移动量的决定的机器学习结果以及所述状态数据,决定并输出每个控制周期的所述轴的移动量,以使所述工具的移动速度的分布成为最佳,
所述移动量调整学习部根据决定的每个控制周期的所述轴的移动量、在所述机床根据输出的每个控制周期的所述轴的移动量进行了动作后由所述状态观测部取得的所述状态数据、以及所述回报计算部计算出的所述回报,来机器学习每个控制周期的所述轴的移动量的决定。
2.根据权利要求1所述的机床,其特征在于,
所述回报计算部在所述轴的合成速度增加时,或者在加工精度提高时计算正的回报,在所述工具脱离所述指令路径时计算负的回报。
3.根据权利要求1或2所述的机床,其特征在于,
与至少一个其他的机床相连接,
在与所述其他的机床之间相互交换或共享机器学习的结果。
4.根据权利要求3所述的机床,其特征在于,
所述移动量调整学习部使用所决定的每个控制周期的所述轴的移动量、和通过自变量表现了由所述状态观测部取得的所述状态数据的评价函数来进行机器学习,以使所述回报为最大。
5.一种仿真装置,其对机床进行仿真,该机床进行基于由程序指令的工具的指令路径来驱动至少一个轴的工件加工,所述仿真装置的特征在于,具备:
动作评价部,其评价所述机床的仿真动作来输出评价数据;以及
机器学习器,其机器学习每个控制周期的所述轴的移动量的决定,
所述机器学习器具有:
状态观测部,其取得包含所述机床的至少所述轴的轴位置的仿真的数据、和从所述动作评价部输出的评价数据来作为状态数据;
回报计算部,其基于所述状态观测部取得的所述状态数据来计算回报;
移动量调整学习部,其机器学习每个控制周期的所述轴的移动量的决定;以及
移动量输出部,其基于所述移动量调整学习部针对每个控制周期的所述轴的移动量的决定的机器学习结果以及所述状态数据,决定并输出每个控制周期的所述轴的移动量,以使所述工具的移动速度的分布成为最佳,
所述移动量调整学习部根据所决定的每个控制周期的所述轴的移动量、在根据输出的每个控制周期的所述轴的移动量进行了所述机床的仿真动作后由所述状态观测部取得的所述状态数据、以及所述回报计算部计算出的所述回报,来机器学习每个控制周期的所述轴的移动量的决定。
6.一种机器学习器,其对机床具备的至少一个轴的每个控制周期的移动量的决定进行机器学习,其中所述机床具备动作评价部,所述动作评价部评价所述机床的动作来输出评价数据,其特征在于,所述机器学习器具备:
学习结果存储部,其存储每个控制周期的所述轴的移动量的决定的机器学习结果;
状态观测部,其取得包含所述机床的至少所述轴的轴位置的数据、和从所述动作评价部输出的评价数据来作为状态数据;以及
移动量输出部,其基于在所述学习结果存储部中存储的所述机器学习结果和所述状态数据,来决定并输出每个控制周期的所述轴的移动量,以使所述机床的工具的移动速度的分布成为最佳。
CN201610849640.9A 2015-09-25 2016-09-26 生成最佳速度分布的机床、仿真装置以及机器学习器 Active CN106557074B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015188218A JP6077617B1 (ja) 2015-09-25 2015-09-25 最適な速度分布を生成する工作機械
JP2015-188218 2015-09-25

Publications (2)

Publication Number Publication Date
CN106557074A CN106557074A (zh) 2017-04-05
CN106557074B true CN106557074B (zh) 2018-04-10

Family

ID=57981633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610849640.9A Active CN106557074B (zh) 2015-09-25 2016-09-26 生成最佳速度分布的机床、仿真装置以及机器学习器

Country Status (4)

Country Link
US (1) US20170090452A1 (zh)
JP (1) JP6077617B1 (zh)
CN (1) CN106557074B (zh)
DE (1) DE102016117560B4 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6325504B2 (ja) * 2015-10-28 2018-05-16 ファナック株式会社 学習制御器の自動調整を行う機能を有するサーボ制御装置
JP6499710B2 (ja) * 2017-04-20 2019-04-10 ファナック株式会社 加減速制御装置
JP6577522B2 (ja) 2017-06-07 2019-09-18 ファナック株式会社 制御装置及び機械学習装置
JP2019020959A (ja) * 2017-07-14 2019-02-07 ファナック株式会社 制御装置及び学習装置
EP3676674A1 (en) 2017-09-01 2020-07-08 Omron Corporation Manufacturing support system and method
JP6659652B2 (ja) * 2017-10-31 2020-03-04 ファナック株式会社 加工条件調整装置及び機械学習装置
JP2019141869A (ja) * 2018-02-19 2019-08-29 ファナック株式会社 制御装置及び機械学習装置
JP6813532B2 (ja) * 2018-05-17 2021-01-13 ファナック株式会社 シミュレーション装置
JP6849643B2 (ja) * 2018-11-09 2021-03-24 ファナック株式会社 出力装置、制御装置、及び評価関数と機械学習結果の出力方法
JP2020095317A (ja) * 2018-12-10 2020-06-18 ファナック株式会社 数値制御装置
AT526214A1 (de) * 2022-05-23 2023-12-15 Fill Gmbh Optimieren einer numerischen Steuerung einer Werkzeugmaschine

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102354104A (zh) * 2005-09-19 2012-02-15 克利夫兰州立大学 控制器、观测器及其应用
CN103517789A (zh) * 2011-05-12 2014-01-15 株式会社Ihi 运动预测控制装置和方法
CN103760820A (zh) * 2014-02-15 2014-04-30 华中科技大学 数控铣床加工过程状态信息评价装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2669626B2 (ja) * 1987-12-28 1997-10-29 富士通株式会社 ロボット制御方式
JP2523150B2 (ja) * 1988-01-18 1996-08-07 富士通株式会社 ロボット制御方式
JPH03231306A (ja) * 1990-02-07 1991-10-15 Komatsu Ltd ロボットの軌跡制御装置
JP2961621B2 (ja) * 1990-09-27 1999-10-12 豊田工機株式会社 数値制御装置の加工条件作成機能の学習方法
JP3036143B2 (ja) 1991-09-02 2000-04-24 三菱電機株式会社 数値制御装置
JPH0635525A (ja) * 1992-07-16 1994-02-10 Tsubakimoto Chain Co ロボットアームの制御方法
JP3135738B2 (ja) * 1993-03-18 2001-02-19 三菱電機株式会社 数値制御装置
JP3227266B2 (ja) * 1993-04-26 2001-11-12 オークマ株式会社 数値制御装置
JP2003058218A (ja) 2001-06-06 2003-02-28 Fanuc Ltd サーボモータを駆動制御する制御装置
JP4461371B2 (ja) 2004-08-06 2010-05-12 マツダ株式会社 工作機械の加工条件設定方法、その加工条件設定プログラム、及び、その加工条件設定プログラムを記録した記録媒体
US8060290B2 (en) 2008-07-17 2011-11-15 Honeywell International Inc. Configurable automotive controller
EP2607975A1 (de) 2011-12-21 2013-06-26 Siemens Aktiengesellschaft Modellbasierter Prädiktivregler und Verfahren zur Regelung eines technischen Prozesses
ES2791712T3 (es) 2013-09-27 2020-11-05 Siemens Ag Equipo de control con optimizador integrado

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102354104A (zh) * 2005-09-19 2012-02-15 克利夫兰州立大学 控制器、观测器及其应用
CN103517789A (zh) * 2011-05-12 2014-01-15 株式会社Ihi 运动预测控制装置和方法
CN103760820A (zh) * 2014-02-15 2014-04-30 华中科技大学 数控铣床加工过程状态信息评价装置

Also Published As

Publication number Publication date
US20170090452A1 (en) 2017-03-30
DE102016117560B4 (de) 2019-02-07
JP2017062695A (ja) 2017-03-30
DE102016117560A1 (de) 2017-03-30
CN106557074A (zh) 2017-04-05
JP6077617B1 (ja) 2017-02-08

Similar Documents

Publication Publication Date Title
CN106557074B (zh) 生成最佳速度分布的机床、仿真装置以及机器学习器
CN106557075B (zh) 生成最佳的加速/减速的机床
CN106406235A (zh) 机床、模拟装置以及机械学习器
CN108227482B (zh) 控制系统以及机器学习装置
CN108241342B (zh) 数值控制装置以及机器学习装置
CN108345273B (zh) 数值控制装置及机器学习装置
CN106557070B (zh) 机器学习装置、电动机控制装置、加工机及机器学习方法
DE602005006126T2 (de) Verfahren und system zur off-line-programmierung von mehreren interagierenden robotern
DE102012218297B4 (de) Verfahren zur dynamischen Optimierung einer Robotersteuerschnittstelle
US11402817B2 (en) Life predicting device and machine learning device
CN109960219A (zh) 控制装置以及机器学习装置
CN106552974A (zh) 具有移动轴异常负载警告功能的线放电加工机
JP2022063240A (ja) 自己学習システムを用いて工作機械上での機械加工をシミュレーションするための方法及び装置
US10635091B2 (en) Machining condition adjustment device and machine learning device
JP6781242B2 (ja) 制御装置、機械学習装置及びシステム
JP6813532B2 (ja) シミュレーション装置
CN110347120A (zh) 控制装置以及机器学习装置
CN108994818A (zh) 控制装置以及机器学习装置
CN109794657A (zh) 控制装置以及机器学习装置
CN110171159A (zh) 控制装置以及机器学习装置
CN109202394A (zh) 部件供给装置以及机器学习装置
CN109725597A (zh) 测试装置以及机器学习装置
CN110174871A (zh) 控制装置、机器学习装置以及系统
CN107850886B (zh) 用于使工件定向的方法
Prabhu et al. Fuzzy-logic-based reinforcement learning of admittance control for automated robotic manufacturing

Legal Events

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