CN110376969B - 调整装置以及调整方法 - Google Patents
调整装置以及调整方法 Download PDFInfo
- Publication number
- CN110376969B CN110376969B CN201910285496.4A CN201910285496A CN110376969B CN 110376969 B CN110376969 B CN 110376969B CN 201910285496 A CN201910285496 A CN 201910285496A CN 110376969 B CN110376969 B CN 110376969B
- Authority
- CN
- China
- Prior art keywords
- machine learning
- unit
- learning
- feedback information
- correction
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/4155—Numerical 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32026—Order code follows article through all operations
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Feedback Control In General (AREA)
- Numerical Control (AREA)
Abstract
本发明提供在与加工程序等分开地使用了用于机器学习的评价用程序时,适当控制在计算负载或学习时间这方面低成本的机器学习的调整装置以及调整方法。本发明具有:反馈信息取得部(308),其从控制装置(100)取得通过控制装置(100)执行包含多种学习要素的评价用程序而获得的反馈信息;判定部(3122),其判定反馈信息对应于多种学习要素中的哪学习要素;反馈信息发送部(301),其将所取得的反馈信息发送给对应于学习要素的机器学习部(210);参数设定信息取得部(302),其取得通过使用了反馈信息的机器学习而获得的控制参数设定信息;以及参数设定信息发送部(309),其将控制参数设定信息发送给控制装置。
Description
技术领域
本发明涉及对控制装置和机器学习装置进行控制的调整装置以及其调整方法,其中,该控制装置对驱动至少两轴以上的电动机进行控制,该机器学习装置针对控制装置进行机器学习。
背景技术
以往,通过机器学习来学习机床、机器人、以及工业机械这样的具有驱动部的装置的动作特性。通过进行基于机器学习的学习结果的控制,能够更适当地控制这些装置。
专利文献1中提出了如下技术:在对由圆弧、多边形、或者它们的组合构成的加工形状进行加工的控制系统中,根据按采样周期检测出的伺服电动机的位置反馈、与位置指令的偏差等来进行学习控制。
现有技术文献
专利文献1:日本特开2012-58824号公报
在现有的机器学习中,例如使用用于对包括圆弧、多边形等多个特征的加工要素(以下,也称为“学习要素”)在内的工件进行加工的评价用的加工程序(以下,也称为“评价用程序”),来进行一个学习模型的机器学习。
但是,在根据一个学习模型来学习多个特征的加工要素时,例如,因参数数量增加等,使得学习模型变得繁杂,并且需要较多的计算负载、较多的学习时间、较多的存储器。
发明内容
本发明是鉴于这样的状况而完成的,其目的在于提供调整装置及其调整方法,该调整装置及其调整方法针对具有按与预先设定的特征性的加工要素对应的学习要素来进行学习的机器学习部的机器学习装置,在使用于对包括多个特征的加工要素在内的工件进行加工的一个评价用程序进行动作并进行学习时,控制为以能够在学习期间根据学习要素并基于对应的机器学习部来进行学习的方式切换机器学习部进行学习。
技术方案(1):本发明涉及的调整装置(例如,后述的“调整装置300”)对控制装置(例如,后述的“CNC装置100”)和机器学习装置(例如,后述的“机器学习装置200”)进行控制,该控制装置至少对驱动两轴以上的电动机进行控制,该机器学习装置具有多个针对所述控制装置进行机器学习的机器学习部(例如,后述的“机器学习部210”),其中,所述调整装置具有:启动指示输出部(例如,后述的“启动指示输出部304”),其输出使所述机器学习部启动的启动指示;反馈信息取得部(例如,后述的“反馈信息取得部308”),其从所述控制装置取得反馈信息,该反馈信息是通过所述控制装置执行包含多个学习要素的评价用程序而获得的;判定部(例如,后述的“判定部3122”),其判定所取得的所述反馈信息对应于多种所述学习要素中的哪个学习要素;反馈信息发送部(例如,后述的“反馈信息发送部301”),其将所取得的所述反馈信息发送给对应于所述学习要素的所述机器学习部;参数设定信息取得部(例如,后述的“参数设定信息取得部302”),其从所述机器学习部取得通过使用了所述反馈信息的机器学习而获得的控制参数设定信息;以及参数设定信息发送部(例如,后述的“参数设定信息发送部309”),其将所取得的所述控制参数设定信息发送给所述控制装置的反馈信息取得源。
技术方案(2):也可以是,技术方案(1)所记载的调整装置还具有:存储部(例如,后述的存储部“305”),其存储所述评价用程序;以及评价用程序输出部(例如,后述的“评价用程序输出部306”),其将所述评价用程序输出给所述控制装置。
技术方案(3):也可以是,技术方案(1)或技术方案(2)所记载的调整装置还具有:评价用程序执行指示输出部(例如,后述的“评价用程序执行指示输出部307”),其将执行所述评价用程序的执行指示发送给所述控制装置。
技术方案(4):也可以是,在技术方案(1)~技术方案(3)所记载的调整装置中,在通过所述电动机驱动了两轴以上时,所述反馈信息取得部从所述控制装置取得所述反馈信息,并发送给对应于所述反馈信息的所述机器学习部。
技术方案(5):也可以是,在技术方案(1)~技术方案(4)所记载的调整装置中,所述反馈信息包含位置指令、位置反馈以及位置偏差中的至少一个。
技术方案(6):也可以是,在技术方案(5)所记载的调整装置中,所述反馈信息还包含速度指令、速度反馈以及速度偏差中的至少一个。
技术方案(7):也可以是,在技术方案(5)或技术方案(6)所记载的调整装置中,所述反馈信息还包含电流指令、电流反馈以及电流偏差中的至少一个。
技术方案(8):也可以是,在技术方案(5)~技术方案(7)所记载的调整装置中,所述反馈信息还包含齿隙校正。
技术方案(9):也可以是,在技术方案(1)~技术方案(8)所记载的调整装置中,所述机器学习是强化学习,所述反馈信息取得部从所述控制装置取得所述反馈信息作为状态信息,所述调整装置具有:参数修正信息发送部(例如,后述的“参数修正信息发送部310”),其将从所述机器学习部获得的控制参数修正信息作为行为信息发送给所述控制装置。
技术方案(10):也可以是,在技术方案(1)~技术方案(9)所记载的调整装置中,所述控制装置具有:多个位置前馈计算部、多个速度前馈计算部、多个电流前馈计算部、以及多个齿隙校正部,所具有的多个所述位置前馈计算部、多个所述速度前馈计算部、多个所述电流前馈计算部、以及多个所述齿隙校正部中的至少一个通过从与自身对应的所述机器学习部取得的所述控制参数设定信息而进行控制参数的设定或更新。
技术方案(11):也可以是,技术方案(1)~技术方案(10)所记载的调整装置包含所述机器学习装置。
技术方案(12):也可以是,技术方案(1)~技术方案(10)所记载的调整装置包含于所述机器学习装置中。
技术方案(13):也可以是,在技术方案(1)~技术方案(10)所记载的调整装置中,所述控制装置包含所述机器学习装置。
技术方案(14):也可以是,技术方案(1)~技术方案(10)所记载的调整装置包含于所述控制装置,且包含所述机器学习装置。
技术方案(15):也可以是,技术方案(1)~技术方案(10)所记载的调整装置包含于所述机器学习装置,该机器学习装置包含于所述控制装置。
技术方案(16):本发明涉及的调整方法是调整装置的调整方法,该调整装置对控制装置和机器学习装置进行控制,该控制装置至少对驱动两轴以上的电动机进行控制,该机器学习装置具有多个针对所述控制装置进行机器学习的机器学习部,其中,启动所述机器学习部,从所述控制装置取得通过所述控制装置执行包含多种学习要素的评价用程序而获得的反馈信息,判定所取得的所述反馈信息对应于多种所述学习要素中的哪个学习要素,将所取得的所述反馈信息发送给对应于所述学习要素的所述机器学习部,从所述机器学习部取得通过使用了所述反馈信息的机器学习而获得的控制参数设定信息,将所取得的所述控制参数设定信息发送给所述控制装置。
发明效果
根据本发明,针对具有按特征性的加工要素对应的学习要素来进行学习的机器学习部的机器学习装置,在使用于对包含多个特征性的加工要素在内的工件进行加工的一个评价用程序进行动作并进行学习时,控制为以能够在一次的学习动作期间,根据各学习要素并基于对应的机器学习部来进行学习的方式,在一次的学习动作期间,根据特征性的加工要素切换为与该加工要素对应的机器学习部来进行学习,由此,通过执行一个评价用程序的一次的学习动作,可以根据各学习模型来同时学习该评价用程序包含的所有学习要素,并且可以进行与学习要素对应的最佳的学习。
附图说明
图1是表示本发明的第一实施方式的调整系统的框图。
图2是表示CNC装置100的一结构例的框图。
图3是表示本发明的第一实施方式中的加工形状的示例的图。
图4是表示第一实施方式的机器学习装置200具有的机器学习部210的框图。
图5A是表示第一实施方式的调整装置300的一结构例的框图。
图5B是表示第一实施方式的调整装置300的一结构例的框图。
图6A是说明调整系统10的启动动作的流程图。
图6B是说明调整系统10的学习动作的流程图。
图6C是说明调整系统10的参数设定信息输出动作的流程图。
图7是表示本发明的变形例中的加工要素的示例的图。
图8是表示本发明的变形例中的加工要素的示例的图。
图9是表示本发明的变形例中的加工要素的示例的图。
图10是表示本发明的变形例中的加工要素的示例的图。
图11是表示本发明的变形例中的加工要素的示例的图。
图12是表示本发明的变形例中的加工要素的示例的图。
图13是表示本发明的变形例中的加工要素的示例的图。
图14是表示本发明的变形例中的CNC装置100A的一结构例的框图。
图15是表示本发明的变形例的调整系统的框图。
图16是表示本发明的变形例的调整系统的框图。
图17是表示本发明的变形例的调整系统的框图。
图18是表示本发明的变形例的CNC装置的框图。
图19是表示本发明的变形例的CNC装置的框图。
附图标记说明
10、11、12、13调整系统;100、110、120、130CNC装置;200、220、230机器学习装置;210机器学习部;300、310、320、330调整装置;301反馈信息发送部;302参数设定信息取得部;303参数修正信息取得部;304启动指示输出部;305评价用程序存储部;306评价用程序输出部;307评价用程序执行指示输出部;308反馈信息取得部;309参数设定信息发送部;310参数修正信息发送部;311参数初始设定发送部;312控制部。
具体实施方式
以下,使用附图对本发明的实施方式进行详细说明。
(第一实施方式)
图1是表示本发明的第一实施方式的调整系统的框图。如图1所示,调整系统10具有:CNC(Computerized Numerical Control,计算机数值控制)装置100、机器学习装置200、以及调整装置300。这里,CNC装置100与机器学习装置200被设为一对一的组,经由调整装置300可通信地连接。更具体来说,调整装置300与CNC装置100、以及调整装置300与机器学习装置200分别经由连接接口直接连接,或分别经由网络连接,能够相互进行通信。另外,网络例如是在工厂内构筑的LAN(Local Area Network,局域网)、互联网、公用电话网、或者它们的组合。对于网络中具体的通信方式、是有线连接和无线连接中的哪一种等没有特别限定。
在第一实施方式中,作为本发明的多个学习要素,使用包括图3所示那样的两个学习要素在内的评价用程序。
图3所示的加工工件为将从虚线A-A起左侧的带R的四边形、与从虚线A-A起右侧的圆弧的一部分组合而得的形状。
如图3所示,在位置P1处,使工作台在X轴方向上移动的伺服电动机从停止转入旋转动作,工作台从Y轴方向的直线动作转入圆弧动作。在位置P2处,使工作台在Y轴方向上移动的伺服电动机从旋转转入停止,工作台从圆弧动作转入X轴方向的直线动作。
此外,如图3所示,在位置Q1处,使工作台在X轴方向上移动的伺服电动机的旋转方向反转,工作台以在X轴方向上直线反转的方式进行移动。
即,图3所示的加工工件包括包含P1~P2在内的加工要素(以下,称为“线形性地变更转速的加工要素”、“第一加工要素”)、与包含Q1在内的加工要素(以下,称为“非线形性地变更转速的加工要素”、“第二加工要素”)的、种类不同的两种加工要素。
在本实施方式中,通过包含位置P1和位置P2在内的加工要素(第一加工要素)进行第一学习,并且通过包含位置Q1在内的加工要素(第二加工要素)进行第二学习,所述第一学习用于进行线形性地变更转速时的速度指令的最佳校正,所述第二学习用于进行旋转方向反转的情况下产生惯性(所谓的“象限突起”)时的(用于抑制象限突起的)速度指令的最佳的校正。
因此,在本实施方式中,机器学习装置具有与各加工要素对应的机器学习部,CNC装置具有与各加工要素对应的校正部,并且各校正部使用通过与自身对应的机器学习部的学习而生成的控制参数来进行针对速度指令的校正。对于这些学习的详细情况在后面叙述。
接下来,对成为控制装置的CNC装置100、机器学习装置200以及调整装置300的各结构进行说明。在以下的说明中,以机器学习装置200强化学习CNC装置100的控制参数的情况为例来进行说明,但是并不限定于此。
<CNC装置100>
图2是表示CNC装置的一结构例的框图。为了便于说明,图2中还示出了调整装置300和机器学习装置200。这里,CNC装置100例示出包括伺服控制部在内的装置,但是并不限定于此。也可以将伺服控制部设为其他装置。
如图2所示,CNC装置100对控制对象500的伺服电动机600进行控制。在所控制的轴是至少两轴以上时,设置与轴的数量对应的伺服电动机600。在本实施方式中,由于评价用程序使至少两轴进行动作,因此伺服电动机的数量至少设置两个。这里,作为电动机示出了伺服电动机,但是也可以使用主轴电动机等其他电动机。控制对象500例如是伺服电动机、包含伺服电动机的机床、机器人、工业机械等。CNC装置100也可以设置成机床、机器人、或工业机械等的一部分。以下,以控制对象500是包含伺服电动机的机床的情况为例进行说明。
如图2所示,CNC装置100具有:数值控制信息处理部1011、存储部1012、减法器1013、位置控制部1014、加法器1015、减法器1016、速度控制部1017、积分器1019、第一校正部1031_1以及第二校正部1031_2。除了数值控制信息处理部1011和存储部1012之外的CNC装置100的各结构部设置于每一个伺服电动机。第一校正部1031_1对应于线形性地变更转速的加工要素(第一加工要素),第二校正部1031_2对应于非线形性地变更转速的加工要素(第二加工要素)。
存储部1012存储评价用程序,该评价用程序是机器学习装置200进行学习时由CNC装置100使用的加工程序。评价用程序与进行实际的切削加工等加工时所使用的加工程序分开来设置。评价用程序一边加工工件一边进行评价,但是包含气割的情况也可以进行评价。评价用程序被从后述的调整装置300发送至数值控制信息处理部1011,数值控制信息处理部1011将评价用程序存储于存储部1012中。
数值控制信息处理部1011根据来自后述的调整装置300的执行指示,从存储部1012读出评价用程序,执行评价用程序。于是,数值控制信息处理部1011根据该评价用程序中所含的代码(code)来生成位置指令值,并输出给减法器1013。数值控制信息处理部1011以成为由评价用程序所指定的加工形状的方式来设定进给速度并生成位置指令值。
减法器1013从数值控制信息处理部1011接收位置指令值,求出位置指令值与位置反馈的检测位置之差,作为位置偏差输出给位置控制部1014并且发送给后述的调整装置300。
位置控制部1014将位置增益Kp乘以位置偏差所得的值作为速度指令值而输出至加法器1015。
第一校正部1031_1例如进行由数学式1(以下表示为数学式1)所示的传递函数Gf(s)所表示的校正量计算处理,将计算出的校正量(以下,也称为“第一校正量”)输出给加法器1015。第一校正部1031_1是对应于第一加工要素的校正部。因此,第一校正部1031_1在进行第一加工要素所涉及的加工时计算校正量。
【数学式1】
在第一实施方式中,在将传递函数Gf(s)的次元设为预先设定的值时,进行机器学习以将各系数a1i、b1j(0≤i、j≤n)设为最佳的系数。以下,将系数a1i、b1j称为CNC装置100的控制参数。
另外,第一校正部1031_1对应于通常的CNC装置中的位置前馈计算部。
第二校正部1031_2例如进行数学式2(以下表示为数学式2)所示的、只有系数不同的相同的传递函数Gf(s)所表示的校正量计算处理,并将计算出的校正量(以下,称为“第二校正量”)输出给加法器1015。第二校正部1031_2是对应于第二加工要素的校正部。因此,第二校正部1031_2在进行第二加工要素所涉及的加工时计算校正量。
【数学式2】
与第一校正部1031_1所使用的传递函数Gf(s)的系数一样,在将传递函数Gf(s)的次元设为预先设定的值时,以将各系数a2i、b2j(0≤i、j≤n)设为最佳的系数的方式来进行机器学习。以下,将数a2i、b2j称为CNC装置100的控制参数。
另外,第二校正部1031_2对应于通常的CNC装置中的齿隙校正部。
加法器1015将速度指令值与第一校正部1031_1或第二校正部1031_2的输出值相加,作为进行了校正的速度指令值输出至减法器1016。减法器1016求出加法器1015的输出与速度反馈后的速度检测值之差,将该差作为速度偏差而输出至速度控制部1017。
速度控制部1017将积分增益K1v乘以速度偏差并进行了积分而得到的值、比例增益K2v乘以速度偏差而得的值相加,作为转矩指令值输出伺服电动机600。
通过与伺服电动机600关联起来的、成为位置检测器的旋转编码器来检测控制对象500的伺服电动机600的旋转角度位置,检测出的信号被用作速度反馈的速度检测值。速度检测值通过积分器1019来进行积分,用作位置反馈的位置检测值。
如上所述,构成CNC装置100。
<机器学习装置200>
接下来,对第一实施方式中的机器学习装置200进行说明。如上所述,机器学习装置200具有两个机器学习部210_1和210_2,机器学习部210_1强化学习[数学式1]所示的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1i(0≤i≤n)。此外,机器学习部210_2强化学习[数学式2]所示的第二校正部1031_2中的传递函数所涉及的控制参数a2j、b2j(0≤j≤n)。即,机器学习部210_1对应于CNC装置100所具有的第一校正部1031_1,机器学习部210_2对应于第二校正部1031_2。
机器学习部210_1进行如下Q学习(Q-learning):将包含[数学式1]所示的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1i的值和通过执行评价用程序而取得的CNC装置100的位置偏差信息在内的、指令以及反馈等伺服状态设为状态S,并将该状态S所涉及的控制参数a1i、b1i的调整设为行为A。同样地,机器学习部210_2进行如下Q学习(Q-learning):将包含[数学式2]所示的第二校正部1031_2中的传递函数所涉及的控制参数a2j、b2j的值和通过执行评价用程序而取得的CNC装置100的位置偏差信息在内的、指令以及反馈等伺服状态设为状态S,并将该状态S所涉及的控制参数a2j、b2j的调整设为行为A。如本领域技术人员所知,Q学习的目的在于:在某种状态s时,从取得的行为A中选择价值Q(S、A)最高的行为A作为最佳行为。
具体来说,智能体(机器学习装置)在某种状态S下选择各种行为A,针对当时的行为A,根据给予的回报,选择更好的行为,由此继续学习正确的价值Q(S、A)。
此外,由于想要使将来获得的回报的总和最大化,所以目标是最终成为Q(S、A)=E[Σ(γt)rt]。这里,E[]表示期待值,t表示时刻,γ表示后述的称为折扣率的参数,rt表示时刻t的回报,Σ表示时刻t涉及的总和。该数学式中的期待值是按照最佳的行为进行了状态变化时的期待值。这样的价值Q(S、A)的更新式例如可以通过如下的数学式3(以下表示为数学式2)来表示。
【数学式3】
在上述的数学式3中,St表示时刻t的环境状态,At表示时刻t的行为。通过行为At,状态变化为St+1。rt+1表示通过该状态的变化而得到的回报。此外,带有max的项是:在状态St+1下,将γ乘以选择出当时已知的Q值最高的行为A时的Q值。这里,γ是0<γ≤1的参数,被称为折扣率。此外,α是学习系数,设α的范围为0<α≤1。
上述的数学式3表示如下方法:行为at的结果是,根据反馈回来的回报rt+1,更新状态st下的行为At的价值Q(St、At)。
机器学习部210_1观测包含CNC装置100的位置偏差信息在内的、包含指令和反馈等伺服状态的状态信息S来决定行为A,其中,根据[数学式1]所示的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j执行预先设定的评价用程序由此获得上述位置偏差信息。状态信息对应于反馈信息。每当进行行为A时机器学习部210_1都返还回报r。
这里,以如下方式设定回报r。
在通过行为信息A使得状态信息S被修正为状态信息S’时,从根据状态信息S’所涉及的修正后的控制参数a1i、bij来进行动作而得的CNC装置100的位置偏差的集合中根据预定的评价函数而计算出的值,大于从根据通过行为信息A来进行修正之前的状态信息S所涉及的修正前的控制参数a1i、b1j来进行动作而得的CNC装置100的位置偏差的集合中根据预定的评价函数而计算出的值时,将回报值设为负值。
另一方面,从根据通过行为信息A而修正所得的状态信息S’所涉及的修正后的控制参数a1i、b1j来进行动作而得的CNC装置100的位置偏差的集合中根据预定的评价函数而计算出的值,小于从根据通过行为信息A而来进行修正之前的状态信息S所涉及的修正前的控制参数a1i、b1j而动作的CNC装置100的位置偏差的集合中根据预定的评价函数而计算出的值时,将回报值设为正值。
这里,所谓位置偏差的值的集合表示在包含所述的加工形状的位置P1与位置P2在内的预定范围内测量的位置偏差的集合。此外,作为评价函数例如例示出计算位置偏差的绝对值的积算值的函数、对位置偏差的绝对值进行时间的加权而计算积算值的函数、计算位置偏差的绝对值的2n(n是自然数)次方的积算值的函数、计算位置偏差的绝对值的最大值的函数等,但是并不限定于此。
在Q学习中,机器学习部210_1例如试错性地探索将来的回报r的总和为最大的最佳行为A。于是,机器学习部210_1能够针对包含CNC装置100的位置偏差信息在内的、包含指令和反馈等伺服状态的状态S来选择最佳的行为A(即,最佳的控制参数a1i、b1j),其中,根据第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j执行预先设定的评价用程序由此获得上述位置偏差信息。
另外,针对机器学习部210_2,将位置偏差的值的集合作为在包含所述加工形状的位置Q1的预定范围内测量的位置偏差的集合,通过换用另一种措辞来进行说明,由此省略详细说明。
图4是表示与本发明的第一实施方式的机器学习部210_1或机器学习部210_2共通的功能块的框图。机器学习部210_1和机器学习部210_2分别具有:状态信息取得部211_1、状态信息取得部211_2、学习部212_1、学习部212_2、行为信息输出部213_1、行为信息输出部213_2、价值函数存储部214_1、价值函数存储部214_2、以及最佳化行为信息输出部215_1、最佳化行为信息输出部215_2。此外,学习部212_1、或学习部212_2分别具有:回报输出部2121_1、回报输出部2121_2、价值函数更新部2122_1、价值函数更新部2122_2、以及行为信息输出部2123_1、行为信息输出部2123_2。
另外,为了便于说明,将机器学习部210_1或机器学习部210_2设为机器学习部210来进行说明。同样地,将状态信息取得部211_1、211_2、学习部212_1、212_2、行为信息输出部213_1、213_2、价值函数存储部214_1、214_2、以及最佳化行为信息输出部215_1、215_2、回报输出部2121_1、2121_2、价值函数更新部2122_1、2122_2、以及行为信息输出部2123_1、2123_2分别简略设为状态信息取得部211、学习部212、行为信息输出部213、价值函数存储部214、最佳化行为信息输出部215、回报输出部2121、价值函数更新部2122、以及行为信息输出部2123。
为了进行上述强化学习,如图4所示,机器学习部210具有:状态信息取得部211、学习部212、行为信息输出部213、价值函数存储部214以及最佳化行为信息输出部215。学习部212具有:回报输出部2121、价值函数更新部2122以及行为信息生成部2123。
如上所述,状态信息取得部211经由后述的调整装置300从CNC装置100取得包含CNC装置100的位置偏差信息在内的、包含指令和反馈等伺服状态的成为反馈信息的状态信息S,其中,根据CNC装置100中的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j执行预先设定的评价用程序由此获得上述位置偏差信息。该状态信息S与Q学习中的环境状态S相当。
状态信息取得部211对学习部212输出取得的状态信息S。
另外,最初开始Q学习的时间点的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j预先通过用户的指定而由后述的调整装置300生成。在本实施方式中,通过强化学习将后述的调整装置300所生成的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j的初始设定值调整为最佳的值。控制参数a1i、b1j或控制参数a2i、b2j例如作为初始设定值而可以设定为a1、0=a2、0=1、a1、1=a2、1=0、b1、0=b2、0=0、b1、1=b2、1=控制对象的惯量值。此外,可以预先设定系数a1i、b1j或a2i、b2j的次元m、n。
例如,将a1i以及a2i设为0≤i≤m,将b1j以及b2j设为0≤j≤n。
学习部212是在某种环境状态S下,学习选择某种行为A时的价值Q(S、A)的部分。具体来说,学习部212具有:回报输出部2121、价值函数更新部2122以及行为信息生成部2123。
回报输出部2121在某种状态S下,如上所述计算选择了行为A时的回报r。
价值函数更新部2122根据状态S、行为A、将行为A应用于状态S时的状态S’、如上所述计算出的回报值r来进行Q学习,从而对价值函数存储部214存储的价值函数Q进行更新。
另外,价值函数Q的更新既可以通过在线学习来进行,也可以通过批量学习来进行,还可以通过小批量学习来进行。调整装置300可以选择在线学习、批量学习、小批量学习中的任一个。
所谓在线学习是如下学习方法:通过将某种行为A应用于当前状态S,由此每当状态S向新状态S’转移时,立即进行价值函数Q的更新。此外,所谓批量学习是如下学习方法:通过重复将某种行为A应用于当前状态S,从而状态S向新状态S’转移,由此收集学习用的数据,使用收集到的所有学习用数据,来进行价值函数Q的更新。并且,所谓小批量学习是在线学习与批量学习中间的、每当积攒了某种程度学习用数据时进行价值函数Q的更新的学习方法。
行为信息生成部2123针对当前状态S选择Q学习的过程中的行为A。在Q学习的过程中,行为信息生成部2123为了进行修正第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j的动作(相当于Q学习中的行为A),而生成行为信息A,针对行为信息输出部213输出所生成的行为信息A。更具体来说,行为信息生成部2123例如将针对状态S所含的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j加上或减去增量(例如,0.01左右)的行为信息A输出给行为信息输出部213。该行为信息A为参数修正信息。
行为信息生成部2123应用第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j的增加或减少而向状态S’转移,当给予正回报(正值的回报)时,可以采取如下方针:作为下一行为A’,针对第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j与前次的动作同样地加上或减少增量等,选择位置偏差值更小的行为A’。
此外,反之,当给予了负回报(负值的回报)时,行为信息生成部2123可以采取以下方针:作为下一行为A’,例如针对第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j,与前次的动作相反地减去或者加上增量等,选择位置偏差比前次的值小的行为A’。
行为信息输出部213是经由后述的调整装置300将从学习部212输出的成为行为信息A的参数修正信息发送给CNC装置100的部分。如上所述,CNC装置100根据该行为信息,对当前状态S即当前设定的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j进行微修正,由此向下一状态S’(即,修正后的第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j)转移。
价值函数存储部214是存储价值函数Q的存储装置。价值函数Q例如可以按状态S和行为A而存储为表(以下,称为行为价值表)。存储于价值函数存储部214的价值函数Q通过价值函数更新部2122来更新。
该最佳化行为信息与行为信息输出部213在Q学习的过程中输出的行为信息同样地,包含修正第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j的信息。该修正第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j的信息为通过机器学习所获得的参数设定信息。
在CNC装置100中,根据参数修正信息来修正第一校正部1031_1中的传递函数所涉及的控制参数a1i、b1j或第二校正部1031_2中的传递函数所涉及的控制参数a2i、b2j,可以将速度前馈设为高次,并以降低位置偏差值的方式来进行动作。
如上所述,本发明所涉及的机器学习装置200因具有机器学习部210_1以及机器学习部210_2,从而通过1次的学习动作,可以在包括位置P1和位置P2的加工要素(第一加工要素)中,进行用于线形性地变更转速时的速度指令的最佳校正的第一学习,并且在包括位置Q1的加工要素(第二加工要素)中,进行用于在旋转方向反转的情况下产生惯性(所谓的“象限突起”)时的(用于抑制象限突起的)速度指令的最佳校正的第二学习。
<调整装置300>
接下来,对第一实施方式的调整装置300进行说明。
图5A和图5B是表示调整装置300的一结构例的框图。调整装置300具有:反馈信息发送部301、参数设定信息取得部302、参数修正信息取得部303、启动指示输出部304、评价用程序存储部305、评价用程序输出部306、评价用程序执行指示输出部307、反馈信息取得部308、参数设定信息发送部309、参数修正信息发送部310、参数初始设定发送部311、以及控制部312。并且,控制部312具有学习控制部3121与判定部3122。
反馈信息发送部301、参数设定信息取得部302、参数修正信息取得部303、启动指示输出部304是用于在与机器学习装置200之间的收发接口而设置的结构部。此外,评价用程序存储部305、评价用程序输出部306、评价用程序执行指示输出部307、反馈信息取得部308、参数设定信息发送部309、参数修正信息发送部310、以及参数初始设定发送部311是用于在与CNC装置100之间的收发接口而设置的结构部。
学习控制部3121进行评价用程序相对评价用程序存储部305的存储,修正存储的评价用程序等。另外,学习控制部3121在将评价用程序存储于评价用程序存储部305时,一起存储评价用程序的程序块号码。
此外,学习控制部3121经由评价用程序输出部306将评价用程序输出给CNC装置100。并且,学习控制部3121经由参数初始设定发送部311将参数的初始设定值发送给CNC装置100。并且,学习控制部3121经由启动指示输出部304对机器学习部210_1或机器学习部210_2输出启动指示。
判定部3122判定经由反馈信息取得部308取得的反馈信息是学习对象外、还是机器学习部210_1的学习对象、或是机器学习部210_2的学习对象。具体来说,判定部3122可以根据评价用加工程序的动作中的当前时间点的加工位置信息,在评价用加工程序的动作中的加工位置处于包含所述的加工形状的位置P1与位置P2在内的预定范围内时,判定为是机器学习部210_1的学习对象,在评价用加工程序的动作中的加工位置处于包含所述的加工形状的位置Q1在内的预定范围内时,判定为是机器学习部210_2的学习对象,在评价用加工程序的动作中的加工位置处于此外的位置时,判定为是学习对象外。
另外,也可以替换加工位置,而是由判定部3122根据评价用程序的程序块号码与包含加工形状的位置P1和位置P2在内的预定范围或包含加工形状的位置Q1在内的预定范围的对应关系,在评价用加工程序的动作中的当前时间点的程序块号码与包含加工形状的位置P1和位置P2在内的预定范围对应时,判定为是机器学习部210_1的学习对象,在评价用加工程序的动作中的当前时间点的程序块号码与包含加工形状的位置Q1在内的预定范围对应时,判定为是机器学习部210_2的学习对象,在评价用加工程序的动作中的程序块号码除此以外时,判定为是学习对象外。
学习控制部3121根据判定部3122涉及的判定结果,将对应的机器学习部表示机器学习部210_1或机器学习部210_2的收件人信息与反馈信息一起发送给反馈信息发送部301。反馈信息发送部301根据收件人信息,将反馈信息发送给机器学习部210_1或机器学习部210_2。
另外,在判定部3122取得的反馈信息是学习对象外时,反馈信息发送部301不将反馈信息发送给机器学习部210_1和机器学习部210_2,不执行机器学习。该情况下,CNC装置100不执行使用了特别的参数的前馈处理,例如只执行反馈处理。
此外,控制部312经由参数设定信息取得部302,对参数设定信息、以及该发送源表示机器学习部210_1还是机器学习部210_2的信息一起取得。在发送源是机器学习部210_1时,通过判定部3122判定为参数设定信息的发送目的地是第一校正部1031_1。另一方面,在发送源是机器学习部210_2时,通过判定部3122判定为参数设定信息的发送目的地是第二校正部1031_2。学习控制部3121经由参数设定信息发送部309对由判定部3122判定出的发送目的地发送参数设定信息。
另外,如上所述,在判定部3122取得的反馈信息是学习对象外时,学习控制部3121可以什么都不做。
同样地,控制部312经由参数修正信息取得部303,对参数修正信息、以及该发送源表示机器学习部210_1还是机器学习部210_2的信息一起取得。在发送源是机器学习部210_1时,通过判定部3122判定为参数修正信息的发送目的地是第一校正部1031_1。另一方面,在发送源是机器学习部210_2时,通过判定部3122判定为参数修正信息的发送目的地是第二校正部1031_2。学习控制部3121经由参数修正信息发送部310对由判定部3122判定出的发送目的地发送参数修正信息。
以上,对CNC装置100、机器学习装置200、以及调整装置300的结构进行了说明。
接下来,使用图6A、图6B以及图6C来对以调整装置300的动作为中心的调整系统的动作进行说明。
图6A是表示调整系统的启动动作的流程的图。
调整装置300的控制部312,首先在步骤S41中,经由参数初始设定发送部311对CNC装置100指示控制参数初始设定。具体来说,调整装置300的控制部312对第一校正部1031_1进行指示,例如作为初始设定值而将系数a1i、b1j设为数学式1的a1、0=1、a1、1=0、b1、0=0、b1、1=控制对象的惯量值,并设定系数a1i、b1j的次数m、n。同样地,调整装置300的控制部312对第二校正部1031_2进行指示,例如作为初始设定值而将系数a2i、b2j设为数学式2的a2、0=1、a2、1=0、b2、0=0、b2、1=控制对象的惯量值,并设定系数a2i、b2j的次数m、n。CNC装置100在步骤S61中,根据来自调整装置300的指示,来设定第一校正部1031_1的系数a1i、b1j的值和次元、以及第二校正部1031_2的系数a2i、b2j的值和次元。
接下来,在步骤S42中,调整装置300的控制部312经由评价用程序输出部306向CNC装置100发送评价用程序。具体来说,控制部312指示评价用程序输出部306发送评价用程序,评价用程序输出部306从评价用程序存储部305读出评价用程序,将评价用程序发送给CNC装置100。在步骤S62中,CNC装置100的数值控制信息处理部1011将评价用程序保存于存储部1012。
接下来,在步骤S43中,调整装置300的控制部312经由启动指示输出部304对机器学习装置200进行启动指示。机器学习装置200在步骤S31中,从调整装置300接收启动指示并进行启动,之后设为待机状态。
接下来,使用图6B对调整系统10的学习动作进行说明。
图6B是说明调整系统10的学习动作的流程图。
在步骤S44中,调整装置300的控制部312经由评价用程序执行指示输出部307指示CNC装置100的数值控制信息处理部1011执行评价用程序。
在接受了来自调整装置300的执行指示之后,在步骤S63中,CNC装置100的数值控制信息处理部1011从存储部1012读出评价用程序,根据评价用程序来生成位置指令值。在步骤S64中,CNC装置100控制伺服电动机600将反馈信息与该反馈信息由来的评价用加工程序的动作中的加工位置信息或评价用程序的程序块号码一起发送给调整装置300,所述反馈信息包含第一校正部1031_1的传递函数的各系数a1i、b1j的值、第二校正部1031_2的传递函数的各系数a2i、b2j的值、以及执行评价用程序而由此取得的CNC装置100的位置偏差信息。该反馈信息为状态信息S。
在步骤S45中,调整装置300的控制部312经由反馈信息取得部308取得反馈信息和程序块号码,并经由反馈信息发送部301发送给评价用加工程序的动作中的加工位置信息或评价用程序的程序块号码所对应的机器学习部210_1或机器学习部210_2。在步骤S32中机器学习部210_1或机器学习部210_2接收反馈信息。
CNC装置100通过步骤S65来判断评价用程序所涉及的一连串的加工是否结束。这里,评价用程序所涉及的一连串的加工已结束的状态是指例如设为图3所示的加工形状的评价用程序的整体的执行已结束的状态。如果评价用程序所涉及的一连串的加工没有结束(步骤S65:否),则返回到步骤S63。如果评价用程序所涉及的一连串的加工结束(步骤S65:是),则针对调整装置300通知评价用程序所涉及的一连串的加工已结束。
调整装置300的控制部312在接收评价用程序所涉及的一连串加工的结束通知时,记录、更新接收到评价用程序的结束通知的次数。然后,在步骤S46中,调整装置300的控制部312判断该次数是否超过预定次数或者是否超过预定的学习期间,从而判断是否结束机器学习。在不结束机器学习时(步骤S46:否),向步骤S47转移。在结束机器学习时(步骤S46:是),向步骤S49转移。
在步骤S47中调整装置300指示机器学习装置200计算回报、更新价值函数。
在通过步骤S33机器学习装置200的机器学习部210_1或210_2接收计算回报、更新价值函数的指示时,在步骤S34中,判断从CNC装置100接收到的控制参数,即自身对应的第一校正部1031_1的传递函数的各系数a1i、b1j的值(控制参数的值)或第二校正部1031_2的传递函数的各系数a2i、b2j的值(控制参数的值)是否是初始设定值。换言之,判断控制参数是初始设定值(状态信息)S0的集合,还是说控制参数是初始设定值(状态信息)S0以后的状态信息S的集合。然后,在控制参数不是初始设定值(状态信息)S0的集合,而是控制参数是初始设定值(状态信息)S0以后的状态信息S的集合时(步骤S34:否),向步骤S35转移。在控制参数的值是初始设定值时(步骤S34:是),向步骤S36转移。
在步骤S35中,机器学习装置200的机器学习部210_1或210_2计算回报,更新价值函数,之后,向步骤S36转移。
在步骤S36中,机器学习装置200的机器学习部210_1或210_2生成控制参数修正信息,将控制参数修正信息发送给调整装置300。这里,控制参数修正信息是指例如针对状态S所含的第一校正部1031_1以及第二校正部1031_2的各系数,使增量(例如0.01左右)与行为A所含的、第一校正部1031_1的各系数a1i、bij或者第二校正部1031_2的各系数a2i、b2j相加或相减的信息。
在步骤S48中,调整装置300将从机器学习装置200接收到的控制参数修正信息发送给CNC装置100的、与机器学习部210_1对应的第一校正部1031_1或与机器学习部210_2对应的第二校正部1031_2。
在步骤S66中,第一校正部1031_1在接收控制参数修正信息时,修正第一校正部1031_1的传递函数所涉及的系数a1i、b1j,第二校正部1031_2在接收控制参数修正信息时,修正第二校正部1031_2的传递函数所涉及的系数a2i、b2j,返回到步骤S63。
于是,CNC装置100根据修正后的第一校正部1031_1的传递函数所涉及的控制参数a1i、b1j或修正后的第二校正部1031_2的传递函数所涉及的控制参数a2i、b2j,重复评价用程序涉及的一连串的加工。
接下来,对调整系统10的控制参数设定信息输出动作进行说明。图6C是说明调整系统10的控制参数设定信息输出动作的流程图。控制参数设定信息输出动作是在步骤S46中,进行了使机器学习结束的判断之后的动作。控制参数设定信息为最佳化行为信息。
如图6C所示,在步骤S49中,调整装置300的控制部312针对机器学习装置200发送控制参数设定信息的输出指示。
在步骤S37中,机器学习装置200的机器学习部210_1或210_2在接收成为最佳化行为信息的控制参数设定信息的输出指示时,计算对应于最后的机器学习的回报,更新价值函数。
在步骤S38中,机器学习装置200的机器学习部210_1或210_2(最佳化行为信息输出部215)取得存储于价值函数存储部214的价值函数Q,根据取得的价值函数Q,例如生成相对于初始状态S0成为最佳化行为信息的控制参数设定信息,将生成的控制参数设定信息输出给调整装置300。
在步骤S50中,调整装置300在一起取得控制参数设定信息以及表示发送源是机器学习部210_1或210_2中的某一个的信息时,输出给CNC装置100的、控制参数设定信息的发送源对应的第一校正部1031_1或第二校正部1031_2。
在步骤S67中,CNC装置100根据从调整装置300接收到的控制参数设定信息,将控制参数设定信息的发送源对应的第一校正部1031_1的传递函数所涉及的系数a1i、b1j以及第二校正部1031_2的传递函数所涉及的系数a2i、b2j设定为最佳的值。
在步骤S51中,调整装置300将学习结束指示发送给CNC装置100和机器学习装置200,结束学习。在CNC装置100和机器学习装置200在从调整装置300接收学习结束指示时,结束学习。
<控制参数设定信息的利用>
如上所述,CNC装置100使用机器学习装置200的机器学习部210_1的学习结果来设定第一校正部1031_1的系数a1i、b1j以及第二校正部1031_2的系数a2i、b2j。这些第一校正部1031_1与第二校正部1031_2分别对应于不同的学习要素。
CNC装置100具有:判定部(未图示),其在执行加工程序时,判定加工程序的当前时间点的执行部位对应于上述学校要素的哪一个,根据该判定部的判定,能够应用与学习要素对应的第一校正部1031_1与第二校正部1031_2。
以上,根据处理流程对CNC装置100、机器学习装置200和调整装置300的动作进行了说明,但是上述的处理流程是一个示例,不限定于此。
为了实现这些功能,CNC装置100、机器学习装置200和调整装置300分别具有CPU(Central Processing Unit,中央处理单元)等运算处理装置。此外,CNC装置100、机器学习装置200和调整装置300分别还具有存储应用软件或OS(Operating System,操作系统)等各种控制用程序的HDD(Hard Disk Drive,硬盘驱动器)等辅助存储装置、存储运算处理装置执行程序之后暂时需要的数据的RAM(Random Access Memory,随机存取存储器)等主存储装置。
并且,分别在CNC装置100、机器学习装置200和调整装置300中,运算处理装置从辅助存储装置中读入应用软件或OS,一边在主存储装置上展开读入的应用软件或OS,一边进行基于这些应用软件或OS的运算处理。此外,根据该运算结果,来控制各装置具有的各种硬件。由此,实现本实施方式的功能块。也就是说,本实施方式可以通过硬件与软件协作来实现。
针对机器学习装置200,由于伴随机器学习的运算量较大,因此例如可以在个人计算机搭载GPU(Graphics Processing Units,图形处理器),通过称为GPGPU(General-Purpose computing on Graphics Processing Units,通用图形处理器)的技术,在使GPU用于伴随机器学习的运算处理时能够进行高速处理。并且,为了进行更高速的处理,使用多台搭载了这样的GPU的计算机来构筑计算机集群,通过该计算机集群所含的多个计算机来进行并列处理。
通过第一实施方式所涉及的调整装置300以及调整装置300执行的调整方法,针对具有对每一个特征性的加工要素所对应的学习要素来进行学习的机器学习部的机器学习装置控制为在进行一次的学习动作期间内,根据特征性的加工要素而切换为与该加工要素对应的机器学习部来进行学习,从而在使用于对包含多个特征性的加工要素在内的工件加工的一个评价用程序进行动作并进行学习时,可以在进行一次的学习动作期间,根据各学习要素并基于对应的机器学习部来进行学习,由此,通过执行一个评价用程序的一次的学习动作,可以根据各学习模型来同时学习该评价用程序包含的所有学习要素,并且可以进行学习要素对应的最佳的学习。
另外,构成为:在机器学习后使各校正部(第一校正部1031_1以及第二校正部1031_2)最优化时,在使任意的加工程序进行动作的情况下,数值控制信息处理部1011根据该加工程序的动作中的加工位置信息或加工程序的程序块号码,来判定当前加工的加工形状是否对应于第一加工要素或第二加工要素,并通过适当的校正部(第一校正部1031_1以及第二校正部1031_2)来进行速度指令的校正。
该情况下,例如通过在执行加工程序之前进行模拟(空运转),而计算与第一加工要素或第二加工要素对应的加工位置信息或加工程序的程序块号码相关的信息,在进行加工程序的动作时,可以参照该信息,判定当前加工的加工形状是否对应于第一加工要素或第二加工要素。
此外,在预读执行加工程序时的加工程序时,可以从其中判定所加工的加工形状是否对应于第一加工要素或第二加工要素。
另外,在上述实施方式中,CNC装置100具有两个校正部即第一校正部1031_1和1031_2,机器学习装置200与之对应地具有两个机器学习部即机器学习部210_1以及210_2,但是并不限定于此。可以根据加工工件中的特征的加工要素的数量,CNC装置100具有任意个数的校正部1031,机器学习装置200具有与之对应的个数的机器学习部210。
以上说明的第一实施方式能够存在各种变形例。
(变形例1)
在第一实施方式中,成为学习对象的加工工件具有的特征的加工要素如图3所示,是从虚线A-A起左侧的带角R的四边形(包括位置P1与位置P2的预定范围)、从虚线A-A起右侧的圆弧的一部分(包括位置Q1的预定范围),但是并不限定于此。
作为其他特征的加工要素,例示出图7~图13。
图7是加工形状为四边形的情况,例如,在图7所示的A点的角(棱角),使工作台在Y轴方向上移动的伺服电动机从停止转入旋转动作,使工作台在X轴方向上移动的伺服电动机从旋转转入停止,工作台从X轴方向的直线动作转入Y轴方向的直线动作。
图8是加工形状为由将一部分的角(棱角)设为圆弧的八边形构成的形状的情况,例如,在图8所示的B点,除了圆弧上的反转时的动作特性之外,速度不连续地发生变化。
图9是加工形状是由分别在端部具有将八边形分为两半而得的形状的十字形构成的形状的情况,其中,所述八边形是将一部分的角(棱角)设为圆弧而得的八边形,例如,在图9所示的C点,驱动X轴的电动机进行从减速到停止的动作,另一方面,驱动Y轴的电动机进行从停止状态到旋转的动作。
图10是加工形状为由带角R的十字形构成的形状的情况,例如,在图10所示的D1点,在驱动X轴的电动机中进行在与停止前相同的方向上开始旋转的切换。此外,在D2点,驱动X轴的电动机在与停止前相同的方向上旋转时进行使驱动Y轴的电动机停止的切换。
图11是加工形状为由凸状的圆弧与凹状的圆弧构成的十字形形成的形状的情况,例如,在图11所示的E1点,驱动X轴的电动机从旋转的停止立即向相同的方向上开始旋转。此外,在E2点,驱动Y轴的电动机从旋转的停止立即向相同的方向开始旋转。
图12是加工形状为由星形构成的形状的情况,例如,在图13所示的F点,驱动X轴的电动机与驱动Y轴的电动机双方的旋转方向反转。
图13表示变形例中的加工形状的示例。如图13所示,作为学习对象的加工工件可以设为将带角R的四边形与星型组合而成的形状。图13所示的加工形状中,在位置P1处,使工作台在X轴方向上移动的伺服电动机从停止转入旋转动作,工作台从Y轴方向的直线动作向圆弧动作转移。在位置P2处,使工作台在Y轴方向上移动的伺服电动机从旋转转入停止,工作台从圆弧动作转入X轴方向的直线动作。
另一方面,在位置R1处,使工作台在X轴方向上移动的伺服电动机、与使工作台在Y轴方向上移动的伺服电动机双方反转。
即,图13所示的加工形状中,包括位置P1~位置P2的区域是线形控制中变更转速的学习要素,包括位置R1的区域是非线形控制中变更转速的学习要素。通过使第一实施方式中的机器学习部210_1以及第一校正部1031_1对应于包括位置P1~位置P2的区域,使机器学习部210_2以及第二校正部1031_2对应于包括位置R1的区域,由此能够与第一实施方式一样地,通过包含种类不同的多个学习要素在内的学习对象,生成多个学习模型。
另外,作为此外的加工形状,虽然详细说明省略,但是也可以使用具有多个图7~图12所例示的特征性的加工要素的加工形状。
(变形例2)
在第一实施方式中,作为设为学习对象的CNC装置所具有的多个校正部例示出了进行针对速度指令的校正的校正部,但是并不限定于此。也可以替换进行针对速度指令的校正的校正部,例如,可以将CNC装置所具有的进行针对转矩指令的校正的校正部设为学习对象。
图14表示本变形例中的CNC装置100A的结构。图14所示的CNC装置100A与CNC装置100不同,代替第一校正部1031_1以及第二校正部1031_2,具有第一校正部1032_1以及第二校正部1032_2,对应于各不相同的学习要素。
第一校正部1032_1以及第二校正部1032_2分别对应于多个特征性的加工要素,来计算转矩指令的校正值,并输出给加法器1018。加法器1018将转矩指令值与第一校正部1032_1以及第二校正部1032_2的输出值相加,作为进行了前馈控制而得的转矩指令值输出给控制对象500的伺服电动机600。
在本变形例中,CNC装置100A通过利用机器学习装置200,来调整第一校正部1032_1以及第二校正部1032_2的控制参数。
(变形例3)
在第一实施方式中,对应于位置前馈计算部的第一校正部1031_1和对应于齿隙校正部的第二校正部1031_2,计算出速度指令的校正值。此外,在上述的变形例2中,虽然同时与对应于速度前馈计算部的第一校正部1032_1、第二校正部1032_2计算出针对转矩指令的校正值,但是并不限定于此。例如,也可以具有第一校正部1033_1以及第二校正部1033_2(未图示),作为进行针对电流指令的校正的校正部。即,对应于电流前馈计算部的两个校正部可以分别对应于多个特征性的加工要素,来计算电流指令的校正值。
(变形例4)
在第一实施方式中,各校正部进行了针对CNC装置中的速度指令的校正,但是并不限定于此。
例如,可以在CNC装置100的第一校正部1031_1以及第二校正部1031_2中,预先初始设定控制参数。该情况下,可以不设置图5A的参数初始设定发送部311、以及图6A的调整装置300的步骤S41与CNC装置100的步骤S61。
(变形例5)
此外,CNC装置100可以将评价用程序预先存储于存储部1012。该情况下,可以不设置调整装置300的评价用程序存储部305和评价用程序输出部306、以及图6A的调整装置300的步骤S42与CNC装置100的步骤S62。
(变形例6)
此外,替换评价用程序执行指示输出部307、以及图6B的调整装置300的步骤S44,CNC装置100可以在步骤S63中,按照操作员的指示,执行评价用程序。
(变形例7)
并且,可以不经由调整装置300而在CNC装置100与机器学习装置200之间直接进行信号的收发。该情况下,可以不设置调整装置300的反馈信息取得部308和反馈信息发送部301、以及图6B所记载的步骤S45中的调整装置300所涉及的反馈信息的接收与发送。
(变形例8)
同样地,也可以不进行调整装置300的图6B所记载的步骤S46中的、调整装置300所涉及的评价用程序涉及的一连串的加工结束的通知的接收、不进行回报计算、价值函数的更新指示的发送。
(变形例9)
此外,在步骤S48中,调整装置300将从机器学习装置200接收到的控制参数修正信息发送给CNC装置100的、对应于机器学习部210_1的第一校正部1031_1或对应于机器学习部210_2的第二校正部1031_2,在步骤S50中,调整装置300将控制参数设定信息输出给对应于机器学习部210_1的第一校正部1031_1或对应于机器学习部210_2的第二校正部1031_2,但是并不限定于此。例如,调整装置300将控制参数修正信息以及控制参数设定信息发给第一校正部1031_1与第二校正部1031_2双方,第一校正部1031_1以及第二校正部1031_2分别可以应用自身对应的控制参数修正信息以及控制参数设定信息。
(变形例10)
图15是表示本发明的变形例10的调整系统的框图。本实施方式的CNC装置100和机器学习装置200具有的机器学习部210与图1、图2和图4所示的CNC装置100和机器学习部210是相同结构,因此,标注相同附图标记并省略说明。就本实施方式的调整系统11而言,调整装置320包含机器学习装置200。调整装置320的结构除了机器学习装置200之外与图5A和图5B所示的调整装置300相同。调整装置320与CNC装置100经由连接接口直接连接,或者经由网络连接,能够彼此进行通信。网络例如是在工厂内构筑的LAN(Local Area Network)、互联网、共用电话网、或者它们的组合。对于网络中的具体通信方式、以及有线连接还是无线连接等没有特别限定。
(变形例11)
图16是表示本发明的变形例11的调整系统的框图。本实施方式的CNC装置100和调整装置300与图1、图2、图5A以及图5B所示的CNC装置100和调整装置300是相同结构,因此标注相同附图标记并省略说明。关于本实施方式的调整系统12,机器学习装置220包含调整装置300。机器学习装置220的结构若除去调整装置300,则与具有多个图4所示的机器学习部210的机器学习装置200相同。CNC装置100与机器学习装置220经由连接接口直接连接,或者经由网络连接,能够彼此进行通信。网络例如是在工厂内构筑的LAN(Local AreaNetwork)、互联网、共用电话网、或者它们的组合。对于网络中的具体通信方式、以及有线连接还是无线连接等没有特别限定。
(变形例12)
图17是表示本发明的变形例12的调整系统的框图。本实施方式的机器学习装置和调整装置与图1、图4、图5A和图5B所示的、具有多个机器学习部210的机器学习装置200和调整装置300是相同结构,因此标注相同附图标记并省略说明。关于本实施方式的调整系统13,CNC装置110包含机器学习装置200。CNC装置110的结构除了机器学习装置200之外与图2所示的CNC装置100相同。CNC装置110与调整装置300经由连接接口直接连接,或者经由网络连接,能够彼此进行通信。
(变形例13)
图18是表示本发明的变形例13的CNC装置的框图。本实施方式的CNC装置120包含调整装置330,并且调整装置330包含机器学习装置200。CNC装置120的结构除了包含机器学习装置200的调整装置330之外与图2所示的CNC装置100相同,具有与CNC装置100相同结构的控制部。本实施方式中,可以在CNC装置120的操作系统上,执行如下应用软件:执行包含机器学习装置200的功能在内的调整装置330的功能。
(变形例14)
图19是表示本发明的变形例14的CNC装置的框图。本实施方式的CNC装置130包含机器学习装置230,并且机器学习装置230还包含调整装置300。CNC装置130的结构除了包含调整装置300的机器学习装置230之外与图2所示的CNC装置100相同,具有与CNC装置100相同结构的控制部。本实施方式中,在CNC装置130的操作系统上,执行如下应用软件:执行包含调整装置300在内的机器学习装置230的功能。
此外,虽然未图示,也可以将伺服控制部作为伺服控制装置,设为与CNC装置分开的装置。
(变形例15)
此外,在第一实施方式中,用于机器学习装置进行强化学习的反馈信息是位置偏差、第一校正部1031_1以及第二校正部1031_2的传递函数的系数的组合,但是,反馈信息不限定于位置偏差,除了位置偏差之外,也可以包含位置指令和位置反馈(位置检测值)中的至少一个。并且,还可以增加速度指令、速度反馈、速度偏差、电流指令、电流反馈、电流偏差、齿隙校正量中的至少一个。位置指令对应于数值控制信息处理部1011的输出,位置反馈对应于积分器1019的输出。速度指令对应于加法器1015的输出,速度反馈(速度检测值)对应于与伺服电动机600关联起来的旋转编码器的输出,速度偏差对应于计算器1016的输出。电流指令对应于加法器1018的输出,电流反馈对应于流向伺服电动机600的电流的检测值,电流偏差对应于减法器1013的输出。齿隙校正量对应于齿隙校正部1021的输出。
上述的CNC装置100~130、机器学习装置200、220、230、以及调整装置300、320和330所含的各结构部可以通过硬件、软件或者它们的组合来实现。此外,通过上述的CNC装置100~130、机器学习装置200、220、230、以及调整装置300、320和330所含的各结构部的各自协作而进行的调整方法也可以通过硬件、软件或者它们的组合来实现。这里,通过软件来实现是指通过计算机读入程序来执行从而实现。
可以使用各种类型的非临时性的计算机可读介质(non-transitory computerreadable medium)来存储程序而提供给计算机。非临时性的计算机可读介质包含各种类型的有实体的存储介质(tangible storage medium)。非临时性的计算机可读介质的示例包含:磁存储介质(例如,软盘、磁带、硬盘驱动器)、磁-光存储介质(例如,光磁盘)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半导体存储器(例如,掩膜ROM、PROM(ProgrammableROM)、EPROM(Erasable PROM)、闪存ROM、RAM(random access memory))。此外,可以通过各种类型的暂时性的计算机可读介质(transitory computer readable medium)将程序供给到计算机。暂时性的计算机可读介质的示例包含电信号、光信号、电磁波。暂时性的计算机可读介质可以经由电线和光纤等有线通信路或者无线通信路将程序供给到计算机。
此外,上述各实施方式的机器学习装置200、220、230对强化学习相关的示例进行了说明。但是,并不限定于此,本发明也可以应用于其他方法,例如“监督学习”、“无监督学习”。
并且,反馈信息可以通过进行机器学习的对象、机器学习的方法来适当选择。
<系统结构的自由度>
在上述图1所示的实施方式中,CNC装置100与机器学习装置200作为一对一的组能够通信地连接,但是例如一台机器学习装置200也可以经由网络400与多台CNC装置100可通信地连接,实施各CNC装置100的机器学习。
此时,机器学习装置200的各功能也可以作为适当分散于多个服务器的分散处理系统。此外,机器学习装置200的各功能也可以在云上利用假想服务器功能等来实现。
此外,当存在分别与多个相同型号名称、相同标准、或者相同系列的CNC装置100_1~100_n对应的多个机器学习装置200_1~200_n时,可以共享各机器学习装置200_1~200_n中的学习结果。这样,能够构筑更合适的模型。
此外,图15以及图18所示的变形例中,虽然对一台CNC装置设置一台调整装置,但是也可以对多台CNC装置设置一台调整装置。并且在图16所示的变形例中,虽然对一台CNC装置设置一台机器学习装置,但是也可以对多台CNC装置设置一台机器学习装置。
Claims (16)
1.一种调整装置,其对控制装置和机器学习装置进行控制,该控制装置至少对驱动两轴以上的电动机进行控制,该机器学习装置具有多个针对所述控制装置进行机器学习的机器学习部,其特征在于,
所述调整装置具有:
启动指示输出部,其输出使所述机器学习部启动的启动指示;
反馈信息取得部,其从所述控制装置取得反馈信息,该反馈信息是通过所述控制装置执行包含多种学习要素的评价用程序而获得的;
判定部,其判定所取得的所述反馈信息对应于多种所述学习要素中的哪个学习要素;
反馈信息发送部,其将所取得的所述反馈信息发送给对应于所述学习要素的所述机器学习部;
参数设定信息取得部,其从所述机器学习部取得通过使用了所述反馈信息的机器学习而获得的控制参数设定信息;以及
参数设定信息发送部,其将所取得的所述控制参数设定信息发送给所述控制装置。
2.根据权利要求1所述的调整装置,其特征在于,
所述调整装置具有:
存储部,其存储所述评价用程序;以及
评价用程序输出部,其将所述评价用程序输出给所述控制装置。
3.根据权利要求1或2所述的调整装置,其特征在于,
所述调整装置具有:
评价用程序执行指示输出部,其将执行所述评价用程序的执行指示发送给所述控制装置。
4.根据权利要求1或2所述的调整装置,其特征在于,
在通过所述电动机驱动了两轴以上时,所述反馈信息取得部从所述控制装置取得所述反馈信息,并发送给对应于所述反馈信息的所述机器学习部。
5.根据权利要求1或2所述的调整装置,其特征在于,
所述反馈信息包含位置指令、位置反馈以及位置偏差中的至少一个。
6.根据权利要求5所述的调整装置,其特征在于,
所述反馈信息还包含速度指令、速度反馈以及速度偏差中的至少一个。
7.根据权利要求5所述的调整装置,其特征在于,
所述反馈信息还包含电流指令、电流反馈以及电流偏差中的至少一个。
8.根据权利要求5所述的调整装置,其特征在于,
所述反馈信息还包含齿隙校正。
9.根据权利要求1或2所述的调整装置,其特征在于,
所述机器学习是强化学习,
所述反馈信息取得部从所述控制装置取得所述反馈信息作为状态信息,
所述调整装置具有:参数修正信息发送部,其将从所述机器学习部获得的控制参数修正信息作为行为信息发送给所述控制装置。
10.根据权利要求1或2所述的调整装置,其特征在于,
所述控制装置具有:多个位置前馈计算部、多个速度前馈计算部、多个电流前馈计算部、以及多个齿隙校正部,所具有的多个所述位置前馈计算部、多个所述速度前馈计算部、多个所述电流前馈计算部、以及多个所述齿隙校正部中的至少一个通过从与自身对应的所述机器学习部取得的所述控制参数设定信息而进行控制参数的设定或更新。
11.根据权利要求1或2所述的调整装置,其特征在于,
所述调整装置包含所述机器学习装置。
12.根据权利要求1或2所述的调整装置,其特征在于,
所述调整装置包含于所述机器学习装置中。
13.根据权利要求1或2所述的调整装置,其特征在于,
所述控制装置包含所述机器学习装置。
14.根据权利要求1或2所述的调整装置,其特征在于,
所述调整装置包含于所述控制装置,且包含所述机器学习装置。
15.根据权利要求1或2所述的调整装置,其特征在于,
所述调整装置包含于所述机器学习装置,该机器学习装置包含于所述控制装置。
16.一种调整装置的调整方法,该调整装置对控制装置和机器学习装置进行控制,该控制装置至少对驱动两轴以上的电动机进行控制,该机器学习装置具有多个针对所述控制装置进行机器学习的机器学习部,其特征在于,
启动所述机器学习部,
从所述控制装置取得通过所述控制装置执行包含多种学习要素的评价用程序而获得的反馈信息,
判定所取得的所述反馈信息对应于多种所述学习要素中的哪个学习要素,
将所取得的所述反馈信息发送给对应于所述学习要素的所述机器学习部,
从所述机器学习部取得通过使用了所述反馈信息的机器学习而获得的控制参数设定信息,
将所取得的所述控制参数设定信息发送给所述控制装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018077686A JP6740279B2 (ja) | 2018-04-13 | 2018-04-13 | 調整装置及び調整方法 |
JP2018-077686 | 2018-04-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110376969A CN110376969A (zh) | 2019-10-25 |
CN110376969B true CN110376969B (zh) | 2021-04-20 |
Family
ID=68053197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910285496.4A Active CN110376969B (zh) | 2018-04-13 | 2019-04-10 | 调整装置以及调整方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11126149B2 (zh) |
JP (1) | JP6740279B2 (zh) |
CN (1) | CN110376969B (zh) |
DE (1) | DE102019202701A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6536978B1 (ja) * | 2018-03-15 | 2019-07-03 | オムロン株式会社 | 学習装置、学習方法、及びそのプログラム |
US10840840B2 (en) | 2018-06-14 | 2020-11-17 | Mitsubishi Electric Corporation | Machine learning correction parameter adjustment apparatus and method for use with a motor drive control system |
JP6719790B1 (ja) * | 2019-09-05 | 2020-07-08 | キタムラ機械株式会社 | Cadデータによるマシニングセンタの自動運転装置 |
US11796977B2 (en) * | 2020-04-29 | 2023-10-24 | Honeywell International Inc. | PID controller autotuner using machine learning approaches |
US11461162B2 (en) * | 2020-07-06 | 2022-10-04 | Ringcentral, Inc. | Maze-driven self-diagnostics using reinforcement learning |
US20230251646A1 (en) * | 2022-02-10 | 2023-08-10 | International Business Machines Corporation | Anomaly detection of complex industrial systems and processes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04324507A (ja) * | 1991-04-25 | 1992-11-13 | Hitachi Ltd | 駆動装置の加減速制御方法及びロボットシステム |
CN103049384A (zh) * | 2012-12-29 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种基于众核的多线程极限能耗测试源程序自动生成框架 |
CN106411224A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、电动机控制装置以及机械学习方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0764948A (ja) * | 1993-08-24 | 1995-03-10 | Kobe Steel Ltd | 波形識別用学習装置及び同装置を用いた制御装置 |
US6060854A (en) * | 1998-11-12 | 2000-05-09 | Vickers, Inc. | Method and apparatus for compensating for windup in a machine |
JP4980453B2 (ja) | 2010-09-06 | 2012-07-18 | ファナック株式会社 | 加工を高精度化するサーボ制御システム |
US9481133B2 (en) * | 2014-12-31 | 2016-11-01 | Makerbot Industries, Llc | Passive z-axis alignment |
JP6490127B2 (ja) * | 2017-03-15 | 2019-03-27 | ファナック株式会社 | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 |
JP6474449B2 (ja) * | 2017-04-07 | 2019-02-27 | ファナック株式会社 | 調整装置及び調整方法 |
EP3743246A1 (en) * | 2018-01-24 | 2020-12-02 | Milwaukee Electric Tool Corporation | Power tool including a machine learning block |
-
2018
- 2018-04-13 JP JP2018077686A patent/JP6740279B2/ja active Active
-
2019
- 2019-02-27 US US16/286,982 patent/US11126149B2/en active Active
- 2019-02-28 DE DE102019202701.6A patent/DE102019202701A1/de active Pending
- 2019-04-10 CN CN201910285496.4A patent/CN110376969B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04324507A (ja) * | 1991-04-25 | 1992-11-13 | Hitachi Ltd | 駆動装置の加減速制御方法及びロボットシステム |
CN103049384A (zh) * | 2012-12-29 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种基于众核的多线程极限能耗测试源程序自动生成框架 |
CN106411224A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、电动机控制装置以及机械学习方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102019202701A1 (de) | 2019-10-17 |
CN110376969A (zh) | 2019-10-25 |
US11126149B2 (en) | 2021-09-21 |
JP2019185539A (ja) | 2019-10-24 |
US20190317456A1 (en) | 2019-10-17 |
JP6740279B2 (ja) | 2020-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110376969B (zh) | 调整装置以及调整方法 | |
JP6474449B2 (ja) | 調整装置及び調整方法 | |
CN109274314B (zh) | 机器学习装置、伺服电动机控制装置、伺服电动机控制系统以及机器学习方法 | |
CN108628355B (zh) | 伺服控制装置及系统、机器学习装置及方法 | |
CN109116811B (zh) | 机器学习装置和方法、伺服控制装置、伺服控制系统 | |
CN108880399B (zh) | 机器学习装置、伺服控制系统以及机器学习方法 | |
CN110083080B (zh) | 机器学习装置及方法、伺服电动机控制装置及系统 | |
JP6748135B2 (ja) | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 | |
CN110376965B (zh) | 机器学习装置、控制装置以及机器学习方法 | |
CN110376964B (zh) | 机器学习装置、控制装置以及机器学习方法 | |
JP6490131B2 (ja) | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 | |
CN111176114B (zh) | 输出装置、控制装置、以及评价函数和机器学习结果的输出方法 | |
JP6784722B2 (ja) | 出力装置、制御装置、及び評価関数値の出力方法 | |
CN110941242B (zh) | 电动机控制装置 | |
CN112445181A (zh) | 机器学习装置、伺服控制装置、伺服控制系统以及机器学习方法 | |
CN111552237A (zh) | 机器学习装置、控制装置、以及机器学习的搜索范围的设定方法 | |
CN110138296B (zh) | 机器学习装置和方法、伺服电动机控制装置和系统 | |
CN110727242B (zh) | 机器学习装置、控制装置、以及机器学习方法 |
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 |