控制装置及机械学习装置的制作方法

文档序号:16146226发布日期:2018-12-05 16:25阅读:154来源:国知局
控制装置及机械学习装置的制作方法

本发明涉及控制装置及机械学习装置,特别涉及防止切削脱离时的振动的控制装置及机械学习装置。

背景技术

在使用机床利用立铣刀进行横向拉槽切削加工的情况下,如图9所示,在切削工件6时,在工具5上产生切削负载,该工具5的刃部产生挠曲(参照日本特开2000-084794号公报)。

图10a及图10b是表示利用立铣刀进行横向拉槽切削加工的形态的图。

横向拉槽切削加工中,在加工工件6时,对工具5的刃部向与工具5的进给方向相反的方向施加有切削负载,由于该切削负载,如图10b(侧视图)所示,该工具5的刃部产生挠曲。施加于工具5的刃部的切削负载在工件6的切削加工结束的时刻,即工具5到达工件6的端部而工具5的刃部脱离工件6的瞬间急剧减少,与之同时,在工具5的刃部产生的挠曲急剧复原,但是,此时,由于因挠曲复原而引起的反作用,在具5的刃部产生振动。

这样产生的工具的刃部的振动对工件的端部的加工面的品质产生很大影响,根据情况,工件的加工形状的精度可能受损,刃具的寿命可能减少,由于过大的振动,可能成为机械故障的原因。

对于这样的问题,目前,或者忽视工具的刃部脱离工件时的振动,或者通过程序,在工具的刃部脱离工件时指定较低的每单位周期的进给量(进给速度),防止急剧的挠曲变化。

但是,能够防止急剧的挠曲的变化的每单位周期的进给量(进给速度)是什么程度的值,这根据供给的材质、工具的种类、工具、机械的刚性等而不同,另外,将每单位周期的进给量(进给速度)调整得较低是指使循环时间增加,因此不能设定得过低,而且对于缺乏经验的作业者,存在花费较多时间找到最佳的每单位周期的进给量(进给速度)的问题。



技术实现要素:

因此,本发明的目的在于提供一种能够防止在横向拉槽切削加工中工具的刃部脱离工件时产生的刃部的振动的控制装置及机械学习装置。

本发明的一方案的控制装置决定横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量,且具备学习上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量的机械学习装置。而且,该机械学习装置具备:状态观测部,其观测表示上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量的进给量数据、及表示上述工具的刃部脱离上述工件时的该工具的刃部的振动量的振动量数据,作为表示环境的当前状态的状态变量;判断数据取得部,其取得表示上述工具的刃部脱离上述工件时的该工具的刃部的振动量的合适与否的判断结果的判断数据;以及学习部,其使用上述状态变量和上述判断数据,将上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量与上述振动量数据关联起来进行学习。

上述状态观测部还观测表示工具的信息的工具数据、表示工件的信息的工件数据、表示加工形状的信息的加工形状数据、表示机械的信息的机械数据的至少任一个作为上述状态变量,上述学习部能够将上述状态观测部观测到的数据与上述振动量数据关联起来进行学习。

上述判断数据除了上述工具的刃部的振动量的合适与否的判断结果外,还可以包括横向拉槽切削加工耗费的循环时间的合适与否的判断结果。

上述学习部能够具备:报酬计算部,其求出与上述合适与否的判断结果关联的报酬;以及价值函数更新部,其使用上述报酬,更新表示与上述工具的刃部脱离上述工件时的该工具的刃部的振动量相对的上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量的价值的函数。

上述学习部能够通过多层构造运算上述状态变量和上述判断数据。

上述控制装置还可以具备决策部,该决策部基于上述学习部的学习结果,输出基于上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量的指令值。

上述状态观测部还观测表示主轴的转速的主轴转速数据作为上述状态变量,上述学习部能够将上述状态观测部观测到的数据与上述振动量数据关联起来进行学习。

上述决策部能够输出基于上述工具的刃部脱离上述工件时的主轴的转速的指令值。

上述学习部能够使用针对多个机床的每一个所得到的上述状态变量及上述判断数据,学习该多个机床的每一个的上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量。

上述机械学习装置能够存在于云服务器。

本发明的一方案的机械学习装置学习横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量,且具备:状态观测部,其观测表示上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量的进给量数据、及表示上述工具的刃部脱离上述工件时的该工具的刃部的振动量的振动量数据,作为表示环境的当前状态的状态变量;判断数据取得部,其取得表示上述工具的刃部脱离上述工件时的该工具的刃部的振动量的合适与否的判断结果的判断数据;以及学习部,其使用上述状态变量和上述判断数据,将上述工具的刃部脱离上述工件时的该工具的每单位周期的进给量与上述振动量数据关联起来进行学习。

根据本发明,能够通过基于学习结果决定工具的刃部脱离上述工件时的该工具的每单位周期的进给量(进给速度)来防止横向拉槽切削加工中工具的刃部脱离工件时产生的刃部的振动。

附图说明

图1是本发明的第一实施方式的控制装置的概略性的硬件结构图。

图2是本发明的第一实施方式的控制装置的概略性的功能块图。

图3是表示图1所示的控制装置的一形态的概略性的功能块图。

图4是表示机械学习方法的一形态的概略性的流程图。

图5a是说明神经元的图。

图5b是说明神经网络的图。

图6是本发明的第二实施方式的控制装置的概略性的功能块图。

图7是表示装入了控制装置的系统的一形态的概略性的功能块图。

图8是表示装入了控制装置的系统的另一形态的概略性的功能块图。

图9是表示现有技术的横向拉槽加工的例的图。

图10a及图10b是对现有技术的横向拉槽加工的问题点进行说明的图。

具体实施方式

图1是表示第一实施方式的控制装置1和由该控制装置控制的机床的主要部分的概略性的硬件结构图。

该实施方式的控制装置1例如能够作为对进行横向拉槽切削加工的机床(未图示)进行控制的数控装置而安装。本实施方式的控制装置1具备的cpu11是整体控制控制装置1的处理器。cpu11经由总线20读取存储于rom12的系统、程序,并根据该系统、程序控制整个控制装置1。在ram13存储临时的计算数据、显示数据以及操作人员经由后述的显示器/mdi单元70输入的各种数据等。

非易失性存储器14构成为例如通过未图示的电池备份等,从而即使控制装置1的电源被切断也能够保持存储状态的存储器。在非易失性存储器14存储有经由接口15读入的加工程序、经由后述的显示器/mdi单元70输入的加工程序等。在非易失性存储器14还存储为了运转加工程序而使用的加工程序运转处理用程序等,但是这些程序在执行时在ram13展开。另外,在rom12预先写入有用于执行加工程序的作成及编辑所需的编辑模式的处理等的各种系统、程序(包括用于控制与后述的机械学习装置100的交换的系统、程序)。

接口15是用于连接控制装置1和转接器等外部设备72的接口。从外部设备72侧读入加工程序、各种参数等。另外,在控制装置1内编辑成的加工程序能够经由外部设备72存储于外部存储机构。可编程序机床控制器(pmc)16通过内置于控制装置1的序列、程序经由i/o单元17向机床的周边装置(例如,被称为工具交换用的机械臂的驱动器)输出信号而进行控制。另外,pmc16接受配备于机床的主体的操作盘的各种开关等的信号,且在进行必要的信号处理后,发送至cpu11。

显示器/mdi单元70是具备显示器、键盘等的手动数据输入装置,接口18接受来自显示器/mdi单元70的键盘的指令、数据,并发送至cpu11。接口19连接于具备手动驱动各轴时使用的手动脉冲发生器等的操作盘71。

用于控制机床具备的轴的轴控制电路30接受来自cpu11的轴的移动指令量,并将轴的指令输出至伺服放大器40。伺服放大器40接受该指令,并驱动使机床具备的轴移动的伺服马达50。轴的伺服马达50内置位置、速度检测器,将来自该位置、速度检测器的位置、速度反馈信号反馈至轴控制电路30而进行位置、速度的反馈控制。此外,在图1的硬件结构图中,轴控制电路30、伺服放大器40、伺服马达50仅各示出了一个,但实际上准备了成为控制对象的机床具备的轴的数量。例如,在具备直线三轴的机床的情况下,对作为直线轴的x轴、y轴、z轴分别准备轴控制电路30、伺服放大器40、伺服马达50。

主轴控制电路60接受对机床的主轴旋转指令,且向主轴放大器61输出主轴速度信号。主轴放大器61接受该主轴速度信号,使机床的主轴马达62以指示的转速旋转而驱动工具。在主轴马达62结合位置检测器63,位置检测器63与主轴的旋转同步地输出反馈脉冲,该反馈脉冲被cpu11读取。

接口21是用于连接控制装置1和机械学习装置100的接口。机械学习装置100能够观测经由接口21可由控制装置1取得的各信息(经由pmc16取得的各信号的值、伺服马达50、主轴马达62的电流值、存储于ram13等的执行中的加工程序、与工具相关的设定信息等)。另外,控制装置1接受从机械学习装置100输出的用于控制伺服马达50、主轴马达62、机床周边装置的指令,并进行基于加工程序的机床的控制指令的修正等。

图2是第一实施方式的控制装置1和机械学习装置100的概略性的功能块图。

机械学习装置100包括用于通过所谓的机械学习来自己学习在横向拉槽切削加工中工具的刃部脱离工件时的与该工具的刃部的振动量相对的该工具的每单位周期的进给量(进给速度)的软件(学习算法等)及硬件(计算机的cpu等)。控制装置1具备的机械学习装置100学习的是表达在横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量与该工具的每单位周期的进给量(进给速度)的相关性的模型构造。

如图2用功能块表示地,控制装置1具备的机械学习装置100具备状态观测部102、判断数据取得部104以及学习部106,状态观测部102观测包含进给量数据s1和振动量数据s2的表示环境的当前状态的状态变量s,进给量数据s1表示在横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),振动量数据s2表示横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量,判断数据取得部104取得表示在设定的工具的每单位周期的进给量(进给速度)的基础的横向拉槽切削加工中工具的刃部脱离工件时的该工具刃部的振动量合适与否的判断结果的判断数据d,学习部106使用状态变量s和判断数据d将进给量数据s1与工具的刃部的振动量关联起来进行学习。

状态观测部102例如可以构成为计算机的cpu的一个功能,另外,也可以构成为用于使计算机的cpu发挥功能的软件。状态观测部102观测的状态变量s中的进给量数据s1例如能够使用由熟练的作业者申报而赋予控制装置1的加工程序的进给量。另外,进给量数据s1在学习进入到某程度的阶段能够使用机械学习装置100基于学习部106的学习结果在上一个学习周期决定的工具每单位周期的进给量(进给速度),在这样的情况下,也可以机械学习装置100将决定的工具每单位周期的进给量(进给速度)在每个学习周期预先临时存储于内部存储器,状态观测部102从内部存储器取得在上一个学习周期中机械学习装置100决定的工具每单位周期的进给量(进给速度)。

另外,状态变量s中的振动量数据s2例如能够使用根据工具的刃部脱离工件时的流动于伺服马达50的电流值的变动等间接地求出的值。振动量数据s2也可以使用内置于机床的主轴的加速度传感器直接求出,另外,也可以基于使用同时设置于机床的拍摄机构拍摄到的图像直接求出。而且,也可以在加工完成后利用距离传感器、拍摄机构等计量工件的加工部分,基于根据该计量结果指定的加工面的粗糙度间接地求出振动量。

判断数据取得部104例如可以构成为计算机的cpu的一个功能,另外,也可以构成为用于使计算机的cpu发挥功能的软件。判断数据取得部104能够使用横向拉槽切削加工中工具的刃部脱离工件时的对于该工具的刃部的振动量的合适与否的判断值d1作为判断数据d。判断数据取得部104能够使用与状态观测部102观测振动量数据s2相同的方案取得横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量。判断数据d是表示在状态变量s下进行横向拉槽切削加工的情况的结果的指标。

对学习部106同时输入的状态变量s在以该学习部106的学习周期进行考虑的情况下,基于取得判断数据d的一个学习周期前的数据。这样,在控制装置1具备的机械学习装置100进行学习的期间,在环境中,反复执行振动量数据s2的取得、基于进给量数据s1的横向拉槽切削加工的执行、判断数据d的取得。

学习部106例如可以构成为计算机的cpu的一个功能,另外,也可以构成为用于使计算机的cpu发挥功能的软件。学习部106根据被统称为机械学习的任意的学习算法学习相对于工具的刃部的振动量的进给量数据s1。学习部106能够反复执行以包括上述的状态变量s和判断数据d的数据集合为基础的学习。对相对于工具的刃部的振动量的进给量数据s1的学习循环的反复中,状态变量s中的振动量数据s2如上所述地设为在一个学习周期前取得的横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量,进给量数据s1设为基于上次之前的学习结果得到的横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),另外,判断数据d设为成为基于进给量数据s1的设定的状态下的当前学习周期下的相对于工具的刃部的振动量的合适与否的判断结果。

通过反复进行这样的学习循环,学习部106能够自动识别暗示横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量(振动量数据s2)与该工具的每单位周期的进给量(进给速度)的相关性的特征。

在开始学习算法时,振动量数据s2与工具的每单位周期的进给量(进给速度)的相关性实质上未知,但是随着进行学习,学习部106逐渐识别特征而对相关性进行解释。当振动量数据s2与该工具的每单位周期的进给量(进给速度)的相关性被解释至能够信赖的某程度的水准时,学习部106反复输出的学习结果能够用于对当前状态(也就是横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量)进行在工具的刃部脱离工件时应当将工具的每单位周期的进给量(进给速度)设为怎样的程度的值的行动选择(也就是意思决定)。也就是,学习部106随着学习算法的进行,能够使横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量与相对于当前状态应当将该工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)设为怎样的程度的值的行动的相关性逐渐接近最佳解。

如上所述,在控制装置1具备的机械学习装置100中,学习部106使用状态观测部102观测到的状态变量s和判断数据取得部104取得的判断数据d,根据机械学习算法学习工具的每单位周期的进给量(进给速度)。状态变量s由称为进给量数据s1及振动量数据s2的难以受干扰的影响的数据构成,另外,判断数据d通过取得由控制装置1实际测量到的伺服马达50的电流值等而唯一地求出。因此,根据控制装置1具备的机械学习装置100,能够通过使用学习部106的学习结果,不依赖于运算、估计而自动且准确地求出横向拉槽切削加工中与工具的刃部脱离工件时的该工具的刃部的振动量相应的该工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

而且,若能够不运算、估计而自动地求出横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),则仅通过掌握横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量(振动量数据s2),便能够迅速地决定工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的合适的值。因此,能够效率良好地进行工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的决定。

作为控制装置1具备的机械学习装置100的第一变形例,状态观测部102作为状态变量s还能够观测包含工具的刃部脱离工件时的主轴的转速(工具的转速)的主轴转速数据s3。这样的情况下,能够将横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)和工具的刃部脱离工件时的主轴的转速(工具的转速)双方与振动量数据s2关联起来进行学习。

根据上述第一变形例,机械学习装置100能够学习横向拉槽切削加工中相对于工具的刃部脱离工件时的该工具的刃部的振动量的进行横向拉槽切削加工时的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)和主轴的转速(工具的转速)。这样,在横向拉槽切削加工中工具的刃部脱离工件时该工具的刃部显示某振动量的情况下,对于该状态,将进行横向拉槽切削加工时的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)和主轴的转速(工具的转速)双方变更成合适的值,从而能够更合适地抑制振动量。

作为控制装置1具备的机械学习装置100的第二变形例,状态观测部102还能够观测包含工具的种类、工具的形状、工具的材质(刚性)等信息的工具数据s4、包含工件的材质、硬度等信息的工件数据s5、包含工具的刃部的脱离工件的部分的加工形状等信息的加工形状数据s6、包含机械的型号、刚性等信息的机械数据s7、其它对工具的刃部的振动量产生影响的要素等作为状态变量s。这样的情况下,能够将横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)除了振动量数据s2外,还与工具数据s4、工件数据s5、加工形状数据s6、机械数据s7等的至少任一个关联起来进行学习。

根据上述第二变形例,机械学习装置100能够学习不仅相当于横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量,而且相对于工具的种类、工具形状、工具的材质(刚性)、工件的材质、硬度、加工形状、机械的型号、刚性等对工具的刃部的振动量产生影响的事项的进行横向拉槽切削加工时的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

作为控制装置1具备的机械学习装置100的第三变形例,判断数据取得部104能够在对横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断值d1的基础上,使用横向拉槽切削加工耗费的循环时间的评价值d2作为判断数据d。

根据上述第三变形例,机械学习装置100能够在学习横向拉槽切削加工中相对于工具的刃部脱离工件时的工具的刃部的振动量的工具的刃部脱离工件时的工具的每单位周期的进给量(进给速度)时,考虑横向拉槽切削加工耗费的循环时间。

作为控制装置1具备的机械学习装置100的第四变形例,学习部106能够使用对进行同一横向拉槽切削加工的多个机床分别得到的状态变量s及判断数据d,学习这些机床的横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

根据上述第四变形例,能够增加在固定时间得到的包含状态变量s和判断数据d的数据集合的量,因此,能够输入更多样的数据集合,从而提高横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的学习的速度、可靠性。

在具有上述结构的机械学习装置100中,其学习部106执行的学习算法不特别受限定,作为机械学习,能够采用公知的学习算法。

图3是图1所示的控制装置1的一形态,表示具备执行强化学习作为学习算法的一例的学习部106的结构。

强化学习是如下方法:观测存在学习对象的环境的当前状态(也就是输入),并且在当前状态下执行预定的行动(也就是输出),试误地反复进行对该行动赋予什么报酬的循环,将使这些和报酬的合计最大化的方案(本发明的机械学习装置中,横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度))作为最佳解进行学习。

图3所示的控制装置1具备的的机械学习装置100中,该学习部106具备报酬计算部108和价值函数更新部110,报酬计算部108基于状态变量s求出与横向拉槽切削加工中工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果(相当于在取得了状态变量s的接下来的学习周期使用的判断数据d)关联的报酬r,价值函数更新部110使用求出的报酬r更新表示工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的价值的函数q。学习部106的价值函数更新部110反复进行函数q的更新,从而学习横向拉槽切削加工中相对于工具的刃部脱离工件时的该工具的刃部的振动量的该工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

对学习部106执行的强化学习的算法的一例进行说明。该例的算法作为q学习(q-learning)而被已知,是以行动主体的状态s和在该状态s下行动主体可选择的行动a为独立变量,学习表示在状态s下选择了行动a的情况下的行动的价值的函数q(s,a)的方法。在状态s下选择使价值函数q成为最高的行动a是最佳解。状态s与行动a的相关性在未知的状态下开始q学习,在任意的状态s下反复进行选择各种行动a的试误,从而反复更新价值函数q,接近最佳解。在此,作为在状态s下选择行动a的结果,构成为在环境(也就是状态s)发生了变化时,得到与该变化相应的报酬(也就是行动a的权重)r,以选择可得到更高的报酬r的行动a的方式引导学习,从而能够在比较短的时间使价值函数q接近最佳解。

价值函数q的更新式一般能够如下记的(1)式那样表达。(1)式中,st及at分别是时刻t的状态及行动,通过行动at,状态变化成st+1。rt+1是状态从st变化成st+1而得到的报酬。maxq这一项是指在时刻t+1进行了成为最大的价值函数q(和在时刻t认为的)行动a时的q。α及γ分别是学习系数及折扣率,在0<α≤1、0<γ≤1内任意设定。

在学习部106执行q学习的情况下,

·状态观测部102观测到的状态变量s及判断数据取得部104取得的判断数据d相当于更新式的状态s,

·应当如何变更相对于当前状态(也就是横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量)的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的行动相当于更新式的行动a,

·报酬计算部108求出的报酬r相当于更新式的报酬r。

由此,价值函数更新部110通过使用了报酬r的q学习,反复更新表示与当前状态(工具的刃部脱离工件时的该工具的刃部的振动量)相对的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的价值的函数q。

报酬计算部108求出的报酬r例如在基于决定了工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)后,在基于决定了的工具的每单位周期的进给量(进给速度)进行横向拉槽切削加工时,

(i)在该横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果被判断为“合适”的情况下(例如,工具的刃部脱离工件时的该工具的刃部的振动量处于能够允许的范围内的情况,横向拉槽切削加工耗费的循环时间处于能够允许的范围内的情况等),能够设为正(正数)的报酬r,另一方面,

(ii)在该横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果被判断为“否”的情况下,(例如,工具的刃部脱离工件时的该工具的刃部的振动量处于能够允许的范围外的情况,横向拉槽切削加工耗费的循环时间处于能够允许的范围外的情况等),能够设为负(负数)的报酬r。

正负的报酬r的绝对值可以相互相同,也可以不同。另外,作为判断的条件,也可以组合判断数据d包括的多个值进行判断。

另外,该横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果不仅能够设定为“合适”及“否”两种,也能够设定为多个阶段。例如,能够构成为,在工具的刃部的振动量的允许范围的最大值为vmax的情况下,在工具的刃部的振动量v为0≤v<vmax/5时,使报酬r=5,在vmax/5≤v<vmax/2时,使报酬r=2,在vmax/2≤v≤vmax时,使报酬r=1。而且,也能够构成为,学习的初期阶段将vmax设定得比较大,随着学习进行,缩小vmax。

价值函数更新部110能够具有将状态变量s、判断数据d以及报酬r以用函数q表达的行动价值(例如数值)关联起来进行整理得到的行动价值表。该情况下,价值函数更新部110更新函数q的行为等同于价值函数更新部110更新行动价值表的行为。在q学习的开始时,环境的当前状态与工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的相关性未知,因此,在行动价值表中,以与随机决定的行动价值的值(函数q)关联起来的形态准备各个状态变量s、判断数据d以及报酬r。此外,报酬计算部108若知道判断数据d,则能够直接计算与之对应的报酬r,并将计算出的报酬的值r写入行动价值表。

当使用与横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果对应的报酬r进行q学习时,向选择可得到更高的报酬r的行动的方向引导学习,作为在当前状态下执行该选择的行动的结果,根据变化的环境的状态(也就是状态变量s及判断数据d),改写针对在当前状态下进行的行动的行动价值的值(函数q),更新行动价值表。通过反复进行该更新,显示于行动价值表的行动价值的值(函数q)改写成越是合适的行动,越成为更大的值。这样,逐渐了解未知的环境下的当前状态(横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量)和与之相对的行动(工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度))的相关性。也就是,通过更新行动价值表,使横向拉槽切削加工中的工具的刃部脱离工件时的该工具的刃部的振动量与工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的关系逐渐接近最佳解。

参照图4的流程图,对学习部106执行的上述的q学习的流程(也就是机械学习方法的一形态)进一步进行说明。

首先,在步骤sa01中,价值函数更新部110一边参照该时刻的行动价值表,一边作为在状态观测部102观测到的状态变量s表示的当前状态下进行的行动,随机选择工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

然后,价值函数更新部110在步骤sa02获取状态观测部102观测的当前状态的状态变量s,在步骤sa03获取判断数据取得部104取得的当前状态的判断数据d。然后,价值函数更新部110在步骤sa04基于判断数据d判断工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)是否合适,在合适的情况下,在步骤sa05将报酬计算部108求出的正的报酬r应用于函数q的更新式,然后在步骤sa06使用当前状态下的状态变量s及判断数据d、报酬r、行动价值的值(更新后的函数q)更新行动价值表。另一方面,在步骤sa04判断为工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)不合适的情况下,在步骤sa07将报酬计算部108求出的负的报酬r应用于函数q的更新式,然后在步骤sa06使用当前状态下的状态变量s及判断数据d、报酬r、行动价值的值(更新后的函数q)更新行动价值表。

学习部106通过反复进行上述的步骤sa01~sa07,从而反复更新行动价值表,进行工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的学习。此外,从步骤sa04到步骤sa07的求出报酬r的处理及价值函数的更新处理对判断数据d包含的各个数据均执行。

在进行上述的强化学习时,例如,能够取代q学习而使用神经网络。图5a示意性表示神经元的模型。图5b示意性表示组合图5a所示的神经元而构成的三层神经网络的模型。神经网络例如由模拟神经元的模型的运算装置、存储装置等构成。

图5a所示的神经元输出相对于多个输入x(在此,作为一例,输入x1~输入x3)的结果y。使各输入x1~x3乘以与该输入x对应的权重w(w1~w3)。由此,神经元输出由接下来的(2)式表现的结果y。此外,在(2)式中,输入x、结果y以及权重w全部是矢量。另外,θ是偏差,fk是活性化函数。

图5b所示的三层神经网络从左侧输入多个输入x(在此,作为一例,输入x1~输入x3),从右侧输出结果y(在此,作为一例,结果y1~结果y3)。在图示的例中,乘法运算与输入x1、x2、x3的每一个对应的权重(统称地表现为w1),然后各个输入x1、x2、x3均输入至三个神经元n11、n12、n13。

图5b中,将神经元n11~n13的每一个的输出统称地表现为z1。z1能够视为抽出了输入矢量的特征量的特征矢量。图示的例中,乘法运算与特征矢量z1的每一个对应的权重(统称地表现为w2),然后将各个特征矢量z1均输入至两个神经元n21、n22。特征矢量z1表现权重w1与权重w2之间的特征。

图5b中,将神经元n21~n22的每一个的输出统称地表现为z2。z2能够视作抽出了特征矢量z1的特征量的特征矢量。图示的例中,乘法运算与特征矢量z2的每一个对应的权重(统称地表现为w3),然后将各个特征矢量z2均输入至三个神经元n31、n32、n33。特征矢量z2表现权重w2与权重w3之间的特征。最后,神经元n31~n33分别输出结果y1~y3。

此外,也能够采用使用了构成三层以上的层的神经网络的所谓的深度学习的方法。

控制装置1具备的机械学习装置100中,将状态变量s和判断数据d设为输入x,学习部106进行根据上述的神经网络的多层构造的运算,从而能够输出表示行动价值的函数q(结果y)。此外,在神经网络的动作模式中,具有学习模式和价值预测模式,例如,在学习模式下使用学习数据包学习权重w,能够使用该学习到的权重w在价值预测模式下进行行动的价值判断。此外,在价值预测模式下,也能够进行检测、分类、推论等。

上述的控制装置1的结构作为计算机的cpu执行的机械学习方法(或者软件)而记述。该机械学习方法学习横向拉槽切削加工中的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),该机械学习方法中,计算机的cpu执行以下步骤:

·观测表示工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的进给量数据s1、及表示工具的刃部脱离工件时的该工具的刃部的振动量的振动量数据s2作为表示进行横向拉槽切削加工的环境的当前状态的状态变量s的步骤;

·取得表示工具的刃部脱离工件时的该工具的刃部的振动量的合适与否的判断结果的判断数据d的步骤;以及

·使用状态变量s和判断数据d,将振动量数据s2和工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)关联起来进行学习的步骤。

图6表示第二实施方式的控制装置2。

该实施方式的控制装置2具备机械学习装置120和作为状态数据s0取得状态观测部102观测的状态变量s的进给量数据s1及振动量数据s2的状态数据取得部3。状态数据取得部3取得的状态数据s0也能够包含主轴转速数据s3、工具数据s4、工件数据s5、加工形状数据s6、机械数据s7等。该状态数据取得部3能够从控制装置2的各部、机床具备的各种传感器、作业者进行的适当的数据输入等取得状态数据s0。

控制装置2具有的机械学习装置120除了用于通过机械学习而自己学习横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的软件(学习算法等)及硬件(计算机的cpu等)外,还包括将学习到的横向拉槽切削加工中工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)作为对控制装置2的指令输出的软件(运算算法等)及硬件(计算机的cpu等)。控制装置2包括的机械学习装置120能够具有使一个共通cpu执行学习算法、运算算法等全部的软件的结构。

决策部122例如可以构成为计算机的cpu的一个功能,另外也可以构成用于使计算机的cpu发挥功能的软件。决策部122基于学习部106学习到的结果,生成并输出指令值c,指令值c包括决定横向拉槽切削加工中与工具的刃部脱离工件时的该工具的刃部的振动量相对的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的指令。决策部122若将该指令值c输出至控制装置2,则与之相应地,环境的状态发生变化。此外,决策部122可以在决定工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的指令的基础上,还包括决定工具的刃部脱离工件时的主轴的转速(工具的转速)的指令作为指令值c。

状态观测部102在接下来的学习周期观测在输出决策部122对环境的指令值c后变化了的状态变量s。学习部106使用该变化了的状态变量s例如更新价值函数q(即行动价值表),从而学习工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。此外,此时,状态观测部102也可以不是从状态数据取得部3取得的状态数据s0取得进给量数据s1,而使如第一实施方式说明地那样,从机械学习装置120的内部存储器观测。

决策部122在学习到的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)下根据状态变量s向控制装置2输出指令值c。

反复进行该学习周期,从而机械学习装置120进行工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的学习,逐渐提高机械学习装置120自身决定的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的可靠性。

具有上述结构的控制装置2具备的机械学习装置120起到与参照图2及图3叙述的机械学习装置100同等的效果。特别地,图6所示的机械学习装置120能够根据决策部122的输出使环境的状态变化。另一方面,在图2及图3所示的机械学习装置100中,能够对外部装置要求相当于用于使该学习部106的学习结果反映至环境的决策部的功能。

图7表示具备多个机床的一实施方式的系统170。

系统170至少具备具有同一机械结构的多个机床160、160'和将这些机床160、160'相互连接的有线/无线的网络172,这些多个机床中的至少一个构成为具备上述的控制装置2的机床160。另外,系统170能够包括不具备控制装置2的机床160'。这些机床160、160'具有以相同的目的构成的横向拉槽切削加工所需的机构。

就具有上述结构的系统170而言,多个机床160、160'中的具有控制装置2的机床160能够使用学习部106的学习结果,不依赖于运算、估计而自动且准确地求出横向拉槽切削加工中相对于工具的刃部脱离工件时的该工具的刃部的振动量的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。另外,构成为,至少一个机床160的控制装置2基于其它多个机床160、160'的每一个得到的状态变量s及判断数据d学习所有机床160、160'共通的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),且所有机床160、160'共享该学习结果。

因此,根据系统170,能够将更多样的数据集合(包含状态变量s及判断数据d)作为输入,提高工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的学习的速度、可靠性。

图8表示具备多个机床160'的另一实施方式的系统170'。

系统170'具备机械学习装置120(或100)、具有同一机械结构的多个机床160'(不具备控制装置的机床)、以及将这些机床160'和机械学习装置120(或100)相互连接的有线/无线的网络172。

就具有上述结构的系统170'而言,机械学习装置120(或100)能够基于多个机床160'的每一个得到的状态变量s及判断数据d学习所有机床160'共通的横向拉槽切削加工中相对于工具的刃部脱离工件时的该工具的刃部的振动量的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度),使用该学习结果,不依赖于运算、估计而自动且准确地求出横向拉槽切削加工中与工具的刃部脱离工件时的该工具的刃部的振动量相对的工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)。

系统170'能够具有使机械学习装置120(或100)存在于对有线/无线的网络172准备的云服务器等的结构。根据该结构,能够与多个机床160'的每一个存在的场所、时期无关地,在需要时将所需的数量的机床160'连接于机械学习装置120(或100)。

操作系统170、170'的作业者能够在开始机械学习装置120(或100)的学习后的适当的时期执行机械学习装置120(或100)对工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的学习到达度(即工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的可靠性)是否达到要求水平的判断。

以上,对本发明的实施方式进行了说明,但本发明不限于上述的实施方式的例,能够通过施加适当变更而以各种形式实施。

例如,机械学习装置100、120执行的学习算法、机械学习装置120执行的运算算法、控制装置1、2执行的控制算法等不限定于上述的算法,能够采用各种算法。

另外,在上述的实施方式中,控制装置1(或2)和机械学习装置100(或120)作为具有不同的cpu的装置进行了说明,但是,机械学习装置100(或120)也可以通过控制装置1(或2)具备的cpu11和存储于rom12的系统、程序实现。

而且,在上述的实施方式中,示出了控制装置2基于机械学习装置120输出的指令值c控制工具的刃部脱离工件时的该工具的每单位周期的进给量(进给速度)的结构,但是,也可以将机械学习装置120输出的指令值c显示于控制装置2的显示器/mdi单元70上,成为作业者制作加工程序时的参考。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1