CN108880399A - 机器学习装置、伺服控制***以及机器学习方法 - Google Patents
机器学习装置、伺服控制***以及机器学习方法 Download PDFInfo
- Publication number
- CN108880399A CN108880399A CN201810444852.8A CN201810444852A CN108880399A CN 108880399 A CN108880399 A CN 108880399A CN 201810444852 A CN201810444852 A CN 201810444852A CN 108880399 A CN108880399 A CN 108880399A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- controller
- control
- machine learning
- value
- 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.)
- Granted
Links
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
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P29/00—Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Power Engineering (AREA)
- Feedback Control In General (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
提供机器学习装置、伺服控制***以及机器学习方法。根据电动机的相位适当调整控制器增益。对控制具备电动机的控制对象装置的动作的伺服控制装置进行强化学习的机器学习装置具备:行为信息输出单元,其对伺服控制装置具备的控制器输出包括控制器增益的传输函数的系数的调整信息的行为信息;状态信息取得单元,其从伺服控制装置取得状态信息,该状态信息包括在控制器根据行为信息使控制对象装置动作时被输入到控制器的指令与控制对象装置的实际动作之间的偏差、电动机的相位、控制器增益的传输函数的系数;根据状态信息中包括的偏差来输出强化学习的回报值的回报输出单元和根据回报值、状态信息、行为信息来更新行为价值函数的价值函数更新单元。
Description
技术领域
本发明涉及用于进行伺服控制相关的机器学习的机器学习装置、伺服控制***以及机器学习方法。
背景技术
目前,已知一种技术,通过进行伺服控制相关的机器学习,适当地控制作为伺服控制的对象的机床等。
例如在专利文献1中公开的技术中,作为状态观测关于主轴的负荷、温度以及振动。然后通过基于该观测到的状态的强化学习来学习用于修正动作指令的价值函数。学习结束后,通过使用这样学习到的价值函数,能够不需要操作员进行的修正操作而根据状况来修正动作指令。
但是,如果使伺服电动机等电动机驱动,则电动机的电感会随着电动机的相位而发生变化。因此如果用于控制电动机驱动的控制器增益为恒定,则会随着电感的变化而产生电动机的旋转不均(ムラ)。为了抑制该旋转不均,需要根据电动机的相位来调整控制器增益。
但是,在一般技术中,不根据电动机的相位来调整控制器增益。例如,在上述专利文献1公开的技术中,记载了根据负荷、温度以及振动来修正赋予机床的动作指令的情况,但是没有记载考虑电动机的相位和调整控制器增益的情况。
另外,即使假设在一般技术中调整控制器增益,电动机的电感也会根据电动机的相位在非常短的时间内瞬间变化,所以该调整并非易事。
专利文献1:日本特开平7-210207号公报
发明内容
本发明鉴于这种情况进行的,其目的为提供能够根据电动机的相位适当地调整控制器增益的机器学习装置、伺服控制***以及机器学习方法。
(1)本发明的机器学习装置(例如后述的机器学习装置100),针对控制具备电动机(例如后述的电动机32)的控制对象装置(例如后述的控制对象装置300)的动作的伺服控制装置(例如后述的伺服控制装置200)进行强化学习,具备:行为信息输出单元(例如后述的行为信息输出部13),其针对上述伺服控制装置所具备的控制器(例如后述的位置控制器23、速度控制器25以及电流控制器27)输出包括控制器增益的传输函数的系数的调整信息的行为信息;状态信息取得单元(例如后述的状态信息取得部11),其从上述伺服控制装置取得状态信息,该状态信息包括在上述控制器根据上述行为信息使上述控制对象装置进行动作时被输入到上述控制器的指令与上述控制对象装置的实际动作之间的偏差、上述电动机的相位、上述控制器增益的传输函数的系数;回报输出单元(例如后述的回报输出121),其根据上述状态信息中包括的上述偏差来输出强化学习的回报值;以及价值函数更新单元(例如后述的价值函数更新部122),其根据上述回报值、上述状态信息、上述行为信息来更新行为价值函数。
(2)上述(1)记载的机器学习装置可以构成为,上述伺服控制装置进行用于修正被输入到上述控制器的指令的反馈控制,上述状态信息取得单元取得被输入到上述控制器中的指令与上述反馈控制的反馈值之间的差值作为上述偏差。
(3)上述(1)或(2)记载的机器学习装置可以构成为,上述控制器是进行位置控制、速度控制以及电流控制中的任意一个的控制器的组合,该机器学习装置在将上述控制器的任意一个作为对象进行了上述强化学习后将其他控制器的一个作为对象进行上述强化学习时,可以按照进行电流控制的控制器、进行速度控制的控制器、进行位置控制的控制器的顺序设为上述强化学习的对象。
(4)上述(1)~(3)中的任意一个记载的机器学习装置,可以根据用于控制上述控制对象装置的动作的位置指令来计算上述电动机的相位。
(5)上述(1)~(4)中的任意一个记载的机器学习装置可以构成为,上述控制器增益的传输函数可以包括上述电动机的相位作为变量。
(6)本发明的伺服控制***具备上述(1)~(5)中的任意一个记载的机器学习装置和上述伺服控制装置,上述伺服控制装置具备:相位计算单元(例如后述的相位计算部21),其根据用于控制上述控制对象装置的动作的位置指令来计算上述电动机的相位,并将计算出的电动机的相位输出给上述状态信息取得单元以及上述控制器。
(7)本发明的机器学习方法为针对控制具备电动机(例如后述的电动机32)的控制对象装置(例如后述的控制对象装置300)的动作的伺服控制装置(例如后述的伺服控制装置200)进行强化学习的机器学习装置(例如后述的机器学习装置100)的学习方法,具备:行为信息输出步骤,针对上述伺服控制装置所具备的控制器(例如后述的位置控制器23、速度控制器25以及电流控制器27)输出包括控制器增益的传输函数的系数的调整信息的行为信息;状态信息取得步骤,从上述伺服控制装置取得状态信息,该状态信息包括在上述控制器根据上述行为信息使上述控制对象装置进行动作时被输入到上述控制器的指令与上述控制对象装置的实际动作之间的偏差、上述电动机的相位、上述控制器增益的传输函数的系数;回报输出步骤,根据上述状态信息中包括的上述偏差来输出强化学习的回报值;以及价值函数更新步骤,根据上述回报值、上述状态信息、上述行为信息来更新行为价值函数。
根据本发明,能够根据电动机的相位适当地调整控制器增益。
附图说明
图1是表示本发明实施方式整体的基本结构的功能框图。
图2是表示本发明实施方式的伺服控制装置的结构要素以及控制对象装置的结构要素和信号的流动的功能框图。
图3是用于说明本发明实施方式的电动机相位的计算的示意图。
图4是表示本发明实施方式的机器学习装置的结构的功能框图。
图5是用于说明本发明实施方式的机器学习装置的机器学习时的动作的流程图。
图6是用于说明本发明实施方式的机器学习装置的输出最优化行为信息时的动作的流程图。
图7是用于说明本发明实施方式所产生的效果的示意图。
附图标记的说明
1:伺服控制***、100:机器学习装置、11:状态信息取得部、12:学习部、121:回报输出部、122:价值函数更新部、123:行为信息生成部、13:行为信息输出部、14:价值函数存储部、15:最优化行为信息输出部、200:伺服控制装置、21:相位计算部、22、24、26:减法器、23:位置控制器、25:速度控制器、27:电流控制器、28:积分器、300:控制对象装置、31:驱动用放大器、32:电动机、33:机器。
具体实施方式
以下,使用附图详细说明本发明的实施方式。
<实施方式的整体结构>
图1是表示实施方式的伺服控制***1的整体结构的功能框图。如图1所示,伺服控制***1包括机器学习装置100、伺服控制装置200以及控制对象装置300。
机器学习装置100是为了调整伺服控制装置200的控制器增益而进行机器学习的装置。机器学习装置100通过机器学习求出控制器增益的传输函数的最优系数。机器学习装置100能够通过个人电脑、服务器或数值控制装置(CNC:Computerized Numerical Control计算机数字控制)等来实现。
伺服控制装置200是通过进行反馈控制来控制控制对象装置300的驱动。另外,伺服控制装置200的控制器增益的传输函数的系数由机器学习装置100来进行调整。
控制对象装置300是具备通过伺服控制装置200的控制进行驱动的伺服电动机的装置。控制对象装置300例如能够通过机床、机器人、工业机械等实现。上述伺服控制装置200可以作为单独的装置来实现,但是也可以作为这些机床、机器人、工业机械等的一部分来实现。
机器学习装置100以及伺服控制装置200可通信地连接。另外,伺服控制装置200以及控制对象装置300也可通信地连接。这些通信例如能够通过在工厂内构建的LAN(LocalArea Network:局域网)来实现。另外,这些通信也可以是有线通信以及无线通信中的任意一个或其组合,对其通信标准没有特别限制。进一步,这些通信可以是经由英特网或公共电话网等网络(省略图示)的通信,此时,各个装置可以被分别设置在附近(例如相同的工厂内),但是也可以分别设置在远方的场所。
另外,图中对这些装置仅分别图示了各一台,但是这些装置的台数没有限制,该连接也不仅是1对1,而可以是1对多或多对多的连接。
<反馈控制>
接着,参照图2说明伺服控制装置200以及控制对象装置300的详细结构以及反馈信号的流动。
如图2所示,本实施方式具备机器学习装置100、作为伺服控制装置200的结构要素的相位计算部21、减法器22、位置控制器23、减法器24、速度控制器25、减法器26、电流控制器27、积分器28以及作为控制对象装置300的结构要素的驱动用放大器31、电动机32以及机器33。另外,后面参照图4描述机器学习装置100的详细结构。
在本实施方式中,作为反馈控制,通过位置控制器23、减法器24以及电流控制器27进行比例运算、积分运算以及微分运算,从而进行PID控制。另外,进行反馈控制以及PID控制的伺服控制装置的基本动作自身对本领域技术人员来说是非常熟悉的,所以省略关于这点的详细说明。
接着,继续参照图2说明机器学习时的信号的流动。以下,首先说明关于反馈控制的信号的流动,然后说明关于机器学习的信号的流动。
首先,从省略了图示的上位装置(例如数值控制装置)或省略了图示的位置指令生成部对伺服控制装置200输入用于控制控制对象装置300的驱动的位置指令。该位置指令是根据使控制对象装置300动作的程序而生成的。这里,在本实施方式中,将电动机32的转子以固定速度在正方向以及/或负方向旋转一周以上的动作作为对象进行机器学习。因此,机器学习时的位置指令为使电动机32的转子以固定速度在正方向以及/或负方向旋转一周以上的动作的位置指令。
输入的位置指令被分支后输出到相位计算部21和减法器22。输出到减法器22的位置指令通过减法器22减去位置反馈值,位置指令与位置反馈值之间的偏差即位置偏差被输入给位置控制器23。另外,位置偏差被分离后输入给机器学习装置100。
在位置控制器23中,在将比例增益设为K3P(Θ),将积分增益设为K3I(Θ),将微分增益设为K3D(Θ)时,通过表示为“K3P(Θ)+K3I(Θ)/s+K3D(Θ)s”的控制器增益的传输函数K3(s,Θ),根据输入的位置偏差来生成速度指令,并将所生成的速度指令输出给速度控制器25。另外,各个控制器增益的传输函数的变量即Θ是电动机32的相位。通过相位计算部21计算出电动机32的相位,并输出给位置控制器23、速度控制器25以及电流控制器27的各个控制器。后面参照图3描述相位计算部21进行的相位的计算方法。
由减法器24从由位置控制器23输出的速度指令减去速度反馈值,速度指令与速度反馈值之间的偏差即速度偏差被输入给速度控制器25。另外,位置偏差被分支后输入给机器学习装置100。
在速度控制器25中,在将比例增益设为K2P(Θ),将积分增益设为K2I(Θ),将微分增益设为K2D(Θ)时,通过表示为“K2P(Θ)+K2I(Θ)/s+K2D(Θ)s”的控制器增益的传输函数K2(s,Θ),根据被输入的速度偏差来生成电流指令,并将所生成的电流指令输出给电流控制器27。
由减法器26从由速度控制器25输出的电流指令减去电流反馈值,速度指令与电流反馈值之间的偏差即电流偏差被输入给电流控制器27。另外,电流偏差被分支后输入给机器学习装置100。
在位置控制器27中,在将比例增益设为K1P(Θ),将积分增益设为K1I(Θ),将微分增益设为K1D(Θ)时,通过表示为“K1P(Θ)+K1I(Θ)/s+K1D(Θ)s”的控制器增益的传输函数K1(s,Θ),根据被输入的电流偏差来生成电压指令,并将所生成的电压指令输出给驱动用放大器31。
驱动用放大器31根据该电压指令生成用于驱动伺服电动机即电动机32的驱动电流,将所生成的驱动电流输出给电动机32。另外,该驱动电流被分支并作为电流反馈值被输入给减法器26。在减法器26中,如上所述地进行电流反馈值的减法运算。
电动机32根据所输入的驱动电流进行旋转。这样,与电动机32连接的机器33工作。机器33例如是装载了被加工物(工件)的工作台。此时,机器33通过省略了图示的滚珠丝杠等连接机构与电动机32连接。
然后,电动机32的旋转运动通过该滚珠丝杠被转换为直线运动。这样,机器33使被加工物(工件)移动到与位置指令对应的预定位置。
这里,在电动机32安装速度检测器(省略图示)。该速度检测器检测出的速度反馈值被分支后分别输出给减法器24和积分器28。在减法器24中,如上所述地进行速度反馈值的减法运算。
另外,在积分器28中,通过将速度反馈值进行积分,生成位置反馈值。然后,积分器28将所生成的位置反馈值输出给减法器22。在电动机32中,如上所述地进行位置反馈值的减法运算。
这里,有用于驱动控制对象装置300的负荷和干扰等影响,所以在作为目标值的位置指令与作为输出值的位置反馈值之间会产生位置偏差。以减少该位置偏差作为目的,重复上述反馈控制。
以上是反馈控制的流程。
<电动机32的相位的计算>
在本实施方式中,为了根据电动机32的相位适当地调整控制器增益,如上所述作为控制器增益的传输函数的变量包括相当于电动机32的相位的Θ。接着,参照图3说明相位计算部21进行的该电动机32的相位的计算。
在本实施方式中,相位计算部21根据所输入的位置指令计算并输出电动机32的相位。作为该计算的前提,相位计算部21存储关于电动机的旋转位置的绝对位置。这里,如图3所示,例如将绝对位置设为Z相。
另一方面,通常在电动机32装备用于检测旋转位置的检测器。该检测器存储作为检测结果的旋转位置等。具体地说,存储为表示电动机32的转速的数据、表示位于旋转一周内的哪个位置的数据。在本实施方式中,例如在接通电源时,从检测器将这些数据通知给相位计算部21。
接收到通知的相位计算部21计算所存储的绝对位置(例如Z相)与根据被通知的表示位于旋转一周内的哪个位置的数据而确定的位置之间的差值(即与绝对值的偏差),从而能够确定将绝对位置设为基准(原点)的初始位置。
并且,在接通电源后,如果根据位置指令开始电动机32的旋转,则相位计算部21根据位置指令计算当前位置的相位。因此,相位计算部21存储机器33的驱动部分的前端与电动机32间的传动比(即电动机每旋转一周的驱动部分的前端的移动量)。然后,根据该传动比,通过下述的数式(式1)计算电动机32的相位相对于赋予机器33的驱动部前端的位置指令发生了多少变化。
电动机的相位[deg]=位置指令[mm]÷传动比[mm/rev]×360 (公式1)
然后,相位计算部21将通过上述公式根据位置指令计算出的相位与将绝对位置设为基准(原点)的初始位置的相位相加,将相加后的相位作为当前位置的相位,分别输出给位置控制器23、速度控制器25以及电流控制器27。位置控制器23、速度控制器25以及电流控制器27将当前位置的相位值代入到控制器增益的传输函数的变量Θ。另外,关于将相位计算部21分别与位置控制器23、速度控制器25以及电流控制器27连接的信号线省略了图示。
<机器学习>
与上述反馈控制并行地进行机器学习装置100的机器学习。为了该机器学习,相位计算部21将当前位置的相位也输出给机器学习装置100。
另外,为了机器学习,从位置控制器23、速度控制器25以及电流控制器27对机器学习装置100输入当前的控制器增益的传输函数的系数。
进一步,如上所述,为了机器学习,也对机器学习装置100输入位置偏差、速度偏差以及电流偏差。
进一步,为了机器学习,机器学习装置100分别对位置控制器23、速度控制器25以及电流控制器27输出控制器增益的传输函数的系数。位置控制器23、速度控制器25以及电流控制器27根据从机器学习装置100输入的控制器增益的传输函数的系数和从相位计算部21输入的控制器增益的传输函数的变量(即电动机32的相位)来输出指令。
机器学习装置100根据这些输入以及输出来进行机器学习。具体地说,机器学习装置100进行机器学习的1个即强化学习。
接着,在说明机器学习装置100中包括的各个功能块之前,首先说明强化学习的基本结构。
在强化学习中,智能体(相当于本实施方式的机器学习装置100)观测环境的状态,选择某个行为,环境根据该行为发生变化。随着环境的变化,赋予任意的回报,智能体学习更良好的行为的选择(意图决策)。
有监督学习表示完全的正解,相比之下,强化学习中的回报大多是基于环境的局部变化的片段值。因此,智能体进行学习以便选择使将来回报的合计为最大的行为。
这样,在强化学习中,通过对行为进行学习,来学习如下的学习方法:基于行为对环境施加的相互作用来学习适当的行为,即进行用于使将未来得到的回报为最大的学习。这表示,在本实施方式中能够获得选择用于降低电动机的电感随相位的变化而变化从而引起的位置偏差、速度偏差以及电流偏差的行为信息这样的对未来产生影响的行为。
这里,作为强化学习,能够使用任意的学习方法,在以下的说明中,以如下例子进行说明:在某个环境的状态s下,使用学习选择了行为a的价值Q(s,a)的方法即Q学习(Q-learning)。
在Q学习中,目的在于,在某个状态s时,从所取得的行为a中选择价值Q(s,a)最高的行为a作为最优的行为。
但是,在最初开始Q学习的时间点,关于状态s和行为a的组合,完全不知道价值Q(s,a)的正确值。因此,智能体在某个状态s下选择各种行为a,根据针对此时的行为a赋予的回报来选择更好的行为,由此学习正确的价值Q(s,a)。
另外,目标在于使将来所得到的回报的合计最大化,所以最终成为价值Q(s,a)=E[∑(γt)rt]。这里,E[]表示期望值,t表示时刻,γ表示后述被称为折扣率的参数,rt表示时刻t的回报,∑表示时刻t的合计。该公式的期望值是按照最优的行为发生了状态变化时的期望值。但是,在Q学习的过程中,未明确最优的行为是什么,所以通过进行各种行为,一边搜索一边进行强化学习。例如通过以下的数学式(公式2)表示这种价值Q(s,a)的更新式。
[数学式1]
在上述的数学式(公式2)中,st表示时刻t的环境的状态,at表示时刻t的行为。根据行为at,状态变化为st+1。rt+1表示根据该状态的变化得到的回报。另外,带有max的项为,在状态st+1下将选择了此时知道的Q值最高的行为a时的Q值与γ相乘后得到的值。这里,γ是0<γ≤1的参数,被称为折扣率。另外,α是学习系数,设为0<α≤1的范围。
上述的数学式(公式2)表示试行at的结果,根据返回的回报rt+1来更新状态st的行为at的价值Q(st,at)的方法。
该更新式表示,如果基于行为at的下一个状态st+1的最佳的行为价值maxa Q(st+1,a)比状态st的行为at的价值Q(st,at)大,则使价值Q(st,at)增大,相反如果小,则减小Q(st,at)。即,使某个状态的某个行为的价值接近于其下一个状态的最佳行为的价值。但是,其差会根据折扣率γ和回报rt+1的理想状态而发生变化,但是基本上为某个状态的最佳的行为的价值传播给到此为止的前一个状态的行为的价值的结构。
这里,Q学习有生成关于所有状态行为对(s,a)的价值Q(s,a)的表来进行学习的方法。但是,会有以下情况:为了求出所有状态行为对的价值Q(s,a)的值,状态数量过多,为了使Q学习收敛则需要更多的时间。
因此,可以使用公知的被称为DQN(Deep Q-Network:深度Q网络)的技术。具体地说,使用适当的神经网络来构成价值函数Q,并调整神经网络的参数,从而利用适当的神经网络对价值函数Q进行近似,从而计算出价值Q(s,a)的值。通过使用DQN,能够缩短使Q学习收敛所需要的时间。另外,关于DQN例如在以下的非专利文献中有详细的记载。
<非专利文献>
“Human-level control through deep reinforcement learning”、VolodymyrMnih1著[在线(online)]、[平成29年5月8日检索]、英特网<URL:http://files.davidqiu.com/research/nature14236.pdf>
机器学习装置100进行以上说明的Q学习。
具体地说,机器学习装置100将伺服状态设为状态s,学习将该状态s的控制器的控制增益的传输函数的各个系数的调整作为行为a而选择的价值Q,该伺服状态包括伺服控制装置200中的位置控制器23、速度控制器25以及电流控制器27内的作为学习对象的控制器的控制器增益的传输函数的系数值以及通过执行学习时的位置指令所对应的控制而取得的伺服控制装置200的各个偏差信息、电动机32的相位。
这里,在例如将电流控制器27的控制器增益的传输函数K1(s,Θ)(=K1P(Θ)+K1I(Θ)/s+K1D(Θ)s)、速度控制器25的控制器增益的传输函数K2(s,Θ)(=K2P(Θ)+K2I(Θ)/s+K2D(Θ)s)以及位置控制器23的控制器增益的传输函数K3(s,Θ)(=K3P(Θ)+K3I(Θ)/s+K3D(Θ)s)分别设为Θ的一次函数时,如以下的数式(3)那样决定控制器增益的传输函数的系数。
KiP(Θ)=aiP·sin(Θ+biP)+ciP
KiI(Θ)=aiI·sin(Θ+biI)+ciI
KiD(Θ)=aiD·sin(Θ+biD)+ciD
这里,i是1≤i≤3的整数。
(式3)
机器学习装置100根据各个控制器增益的传输函数的各个系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3)观测作为信息的状态信息s,并决定行为a,该信息包括通过执行学习时的位置指令所对应的控制而得到的伺服控制装置200的各个偏差信息(电流偏差、速度偏差以及位置偏差)以及电动机32的相位、各个控制器增益的传输函数的各个系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3)。
机器学习装置100每次进行行为a时返回回报。机器学习装置100例如试错地搜索最优的行为a使得将来回报的合计成为最大。由此,机器学习装置100根据控制器增益的传输函数的各个系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3),对包括伺服状态的状态信息s能够选择最优行为a(即位置控制器23、速度控制器25以及电流控制器27内的作为学习对象的控制器的最优系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3)),该伺服状态包括通过执行学习时的位置指令所对应的控制而得到的伺服控制装置200的各个偏差信息。
这样,根据通过机器学习装置100学习到的价值函数Q,选择对某个状态s的控制器增益的传输函数的各个系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3)所适用的行为a中Q值成为最大的行为a,由此能够选择各个偏差成为最小的行为a(即位置控制器23、速度控制器25以及电流控制器27的最优系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤3))。
另外,在本实施方式中,不是针对位置控制器23、速度控制器25以及电流控制器27这3个控制器同时进行学习,而是将这些控制器内的一个作为对象顺序地进行学习。这是因为如果针对位置控制器23、速度控制器25以及电流控制器27的3个控制器同时进行学习,则在使学习收敛之前可能需要时间。
具体地说,首先将电流控制器27作为对象,进行用于选择电流控制器27的最优系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD的学习。此时,关于针对位置控制器23以及速度控制器25的系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(2≤i≤3))还没有进行学习,因此不能够选择最优的系数。因此,关于针对位置控制器23以及速度控制器25的各个系数,以成为能够使电动机32不振荡地毫无问题地进行动作的控制器增益的方式任意设定(例如像现有技术这样成为不依赖相位的固定值)。在作为能够使电动机32不振荡地毫无问题地进行动作的控制器增益的情况下,位置和速度的跟踪性有时会下降,但是即使在学习电流控制器27时位置偏差、速度偏差变大,也只评价针对通过各自的偏差生成的电流指令的电流偏差,因此电流控制器27的学习不会产生问题。
另外,当关于电流控制器27的学习结束时,将速度控制器25设为对象,进行用于选择速度控制器25的最优系数a2P、b2P、c2P、a2I、b2I、c2I、a2D、b2D、c2D的学习。此时,针对电流控制器27的系数已经进行学习,因此根据学习结果选择最优的系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D。关于位置控制器23的系数,以成为能够使电动机32不振荡地毫无问题地进行动作的控制器增益的方式任意设定(例如像现有技术这样成为不依赖相位的固定值)。
进一步,当关于速度控制器25的学习结束时,将位置控制器23设为对象,进行用于选择位置控制器23的最优系数a3P、b3P、c3P、a3I、b3I、c3I、a3D、b3D、c3D的学习。此时,针对电流控制器27以及速度控制器25的各个系数已经进行学习,因此根据学习结果选择最优的系数aiP、biP、ciP、aiI、biI、ciI、aiD、biD、ciD(1≤i≤2)。
通过以上那样,能够分别进行关于位置控制器23、速度控制器25以及电流控制器27的学习,能够针对各个控制器选择最优的系数。
<机器学习装置100的功能块>
接着,参照图4说明上述进行强化学习的机器学习装置100的功能块。
如图4所示,机器学习装置100为了调整电流控制器27、速度控制器25以及位置控制器23的控制器增益,具备状态信息取得部11、学习部12、行为信息输出部13、价值函数存储部14以及最优化行为信息输出部15。另外,学习部12具备回报输出部121、价值函数更新部122以及行为信息生成部123。以下,按照电流控制器27、速度控制器25以及位置控制器23的顺序进行说明。
首先说明电流控制器27的控制器增益的学习。如上所述,关于针对位置控制器23以及速度控制器25的各个系数,以成为能够使电动机32不振荡地毫无问题地进行动作的控制器增益的方式任意设定(例如像现有技术这样作为不依赖相位的固定值)。
状态信息取得部11根据伺服控制装置200的电流控制器27的控制器增益的传输函数的各个系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D,从伺服控制装置200取得作为状态的状态信息s,该状态包括通过执行学习时的位置指令所对应的控制而得到的伺服控制装置200的电流偏差信息。该状态信息s相当于Q学习中的环境状态s。另外,状态信息s中也包括控制器增益的传输函数的各个系数的值。该值可以从位置控制器23、速度控制器25以及电流控制器27取得,但是也可以从将该值作为调整信息而输出的行为信息生成部123取得。
状态信息取得部11将所取得的状态信息s输出给学习部12。
另外,由用户预先生成最初开始Q学习的时间点的电流控制器27的控制器增益的传输函数的系数。即,在本实施方式中,通过强化学习将用户所生成的控制器增益的传输函数的系数的初始设定值调整为最优的值。
学习部12是在某个环境状态s下学习选择某个行为a时的价值Q(s,a)的部分。具体地说,学习部12具备回报输出部121、价值函数更新部122以及行为信息生成部123。
回报输出部121是计算在某个状态s下选择了行为a时的回报的部分。这里,通过PD(s)表示状态s的状态变量即电流偏差的集合(电流偏差集合),通过PD(s’)表示由于行为信息a(控制器增益的传输函数的各个系数)的修正而从状态s发生变化后的状态s’的状态变量即电流偏差集合。另外,将状态s的电流偏差的值设为根据预先设定的评价函数f(PD(s))计算出的值。
作为评价函数f,例如能够适用:
计算电流偏差的绝对值的积分值的函数
∫|e|dt (公式4)、
计算电流偏差的绝对值的2n(n是自然数)幂的积分值的函数
∫e2ndt(n是自然数) (公式5)、
计算电流偏差的绝对值的最大值的函数
Max{|e|} (公式6)等。
此时,当根据通过行为信息a进行修正的状态信息s’的修正后的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s’))变得比根据通过行为信息a进行修正前的状态信息s的修正前的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s))大时,回报输出部121将回报值设为负的值。
另一方面,当根据通过行为信息a进行修正的状态信息s’的修正后的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s’))变得比根据通过行为信息a进行修正前的状态信息s的修正前的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s))小时,将回报值设为正的值。
另外,当根据通过行为信息a进行修正的状态信息s’的修正后的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s’))与根据通过行为信息a进行修正前的状态信息s的修正前的电流控制器27的控制器增益的传输函数的系数而动作的伺服控制装置200的电流偏差的值f(PD(s))相等时,回报输出部121将回报值设为零。
进一步,作为执行行为a后的状态s’的电流偏差的值f(PD(s’))变得比之前的状态s的电流偏差的值f(PD(s))大时的负的值,可以根据比率增大负值。即每次随电流偏差的值变大时,使负的值增大即可。相反,作为执行行为a后的状态s’的电流偏差的值f(PD(s’))变得比之前的状态s的电流偏差的值f(PD(s))小时的正的值,可以根据比率增大正的值。即与电流偏差的值变小的程度对应地增大正的值即可。
价值函数更新部122根据状态s、行为a、将行为a适用于状态s时的状态s’以及如上所述那样计算出的回报值,针对电流控制器27的控制器增益的传输函数的系数进行Q学习,从而更新由价值函数存储部14存储的价值函数Q。
价值函数Q的更新可以通过在线学习进行,也可以通过批量学习进行,也可以通过小批量学习进行。
在线学习是指通过将某个行为a适用于当前的状态s,在每次状态s迁移到新的状态s’时,立刻进行价值函数Q的更新的学习方法。另外,批量学习是指通过将某个行为a适用于当前的状态s,重复进行状态s迁移到新的状态s’,从而收集学习用数据并使用收集到的所有学习用数据进行价值函数Q的更新的学习方法。进一步,小批量学习是指每当滞留有在线学习与批量学习的中间的某个程度学习用数据时进行价值函数Q的更新的学习方法。
行为信息生成部123针对当前的状态s选择Q学习的过程中的行为a。行为信息生成部123在Q学习的过程中,为了进行修正伺服控制装置200的电流控制器27的控制器增益的传输函数的各个系数的动作(相当于Q学习的行为a),生成行为信息a,并将所生成的行为信息a输出给行为信息输出部13。更具体地说,行为信息生成部123例如将针对状态s中包括的电流控制器27的控制器增益的传输函数的各个系数的行为a中包括的控制器增益的传输函数的各个系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D增加或减去增量(例如0.01左右)。
另外,行为信息生成部123在适用电流控制器27的控制器增益的传输函数的各个系数的增加或减少而迁移到状态s’且返回正的回报(正值的回报)时,可以采取以下方法,即作为接下来的行为a’,针对电流控制器27的控制器增益的传输函数的各个系数选择与上次的行为同样地增加增量或减去增量等使电流偏差的值变得更小的行为a’。
另外,相反,当返回负的回报(负的值的回报)时,作为接下来的行为a’,行为信息生成部123可以采取以下方法,即针对电流控制器27的控制器增益的传输函数的各个系数选择与上次的行为相反地减去增量或增加增量等使电流偏差的值变得比上次的值更小的行为a’。
另外,行为信息生成部123可以采取如下方法:通过在当前推定的行为a的价值中选择价值Q(s,a)最高的行为a’的贪婪算法、以某个小概率ε随机选择行为a’且在这以外选择价值Q(s,a)最高的行为a’的ε贪婪算法等公知方法来选择行为a’。
行为信息输出部13是将从学习部12输出的行为信息a发送给作为伺服控制装置200的学习对象的控制器(电流控制器27)的部分。作为学习对象的控制器如上所述,根据该行为信息稍稍修正当前的状态s即当前设定的电流控制器27的控制器增益的传输函数的各个系数,由此迁移到下一个状态s’(即修正后的控制器增益的传输函数的各个系数)。
价值函数存储部14是存储价值函数Q的存储装置。价值函数Q例如可以按照每个状态s、行为a存储为表(以下称为行为价值表)。存储在价值函数存储部14中的价值函数Q由价值函数更新部122来更新。另外,可以在与其他机器学习装置100之间共享存储在价值函数存储部14中的价值函数Q。如果在多个机器学习装置100共享价值函数Q,则能够通过各个机器学习装置100分散地进行强化学习,所以能够提高强化学习的效率。
最优化行为信息输出部15根据由价值函数更新部122通过针对电流控制器27的控制器增益的传输函数的系数进行Q学习而更新后的价值函数Q,生成用于使电流控制器27的控制器增益的传输函数进行价值函数Q(s,a)为最大的动作的行为信息a(以下称为“最优化行为信息”)。
更具体地说,最优化行为信息输出部15取得由价值函数存储部14所存储的价值函数Q。该价值函数Q是如上所述由价值函数更新部122通过针对电流控制器27的控制器增益的传输函数的系数进行Q学习而更新的价值函数。然后,最优化行为信息输出部15根据价值函数Q生成行为信息,将生成的行为信息输出给伺服控制装置200的学习结束的电流控制器27。该最优化行为信息与行为信息输出部13在Q学习过程中输出的行为信息同样地包括修正电流控制器27的控制器增益的传输函数的各个系数的信息。
如上所述,机器学习装置100能够得到用于调整关于电流控制器27的控制器增益的传输函数的系数ai、bj、ck的适当的价值函数,能够使系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D的最优化变得简单。
接着,简单说明在电流控制器27的控制器增益的学习结束后,继续进行速度控制器25的控制器增益的系数a2P、b2P、c2P、a2I、b2I、c2I、a2D、b2D、c2D的Q学习的情况。
如上所述,在进行速度控制器25的控制器增益的Q学习时,关于电流控制器27的系数,根据电流控制器27的学习结果选择最优的系数。另外,关于位置控制器23的系数,以成为能够使电动机32不振荡地毫无问题地进行动作的控制器增益的方式任意设定(例如像现有技术这样成为不依赖相位的固定值)。
速度控制器25的控制器增益的Q学习中的状态信息取得部、学习部12(回报输出部121、价值函数更新部122以及行为信息生成部123)、行为信息输出部13、价值函数存储部14以及最优化行为信息输出部15的处理进行与上述电流控制器27的控制器增益的学习时分别相同的处理。即,机器学习装置100在关于电流控制器27的控制器增益的机器学习的上述说明中,进行以下的机器学习,即将电流控制器27换成速度控制器25,将电流控制器27的控制器增益的系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D换成速度控制器25的控制器增益的系数a2P、b2P、c2P、a2I、b2I、c2I、a2D、b2D、c2D,将电流偏差换成速度偏差。
接着,简单说明在电流控制器27以及速度控制器25的控制器增益的学习结束后,继续进行位置控制器23的控制器增益的系数a3P、b3P、c3P、a3I、b3I、c3I、a3D、b3D、c3D的Q学习的情况。
如上所述,在进行位置控制器23的控制器增益的Q学习时,关于电流控制器27以及速度控制器25的系数,根据电流控制器27以及速度控制器25的学习结果来选择最优的系数。
位置控制器23的控制器增益的Q学习中的状态信息取得部、学习部12(回报输出部121、价值函数更新部122以及行为信息生成部123)、行为信息输出部13、价值函数存储部14以及最优化行为信息输出部15进行与上述电流控制器27的控制器增益的学习时分别相同的处理。即,机器学习装置100在关于电流控制器27的控制器增益的机器学习的上述说明中,进行以下的机器学习,即将电流控制器27换成位置控制器23,将电流控制器27的控制器增益的系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D换成位置控制器23的控制器增益的系数a3P、b3P、c3P、a3I、b3I、c3I、a3D、b3D、c3D,将电流偏差换成位置偏差。
以上,通过顺序地进行电流控制器27、速度控制器25以及位置控制器23的机器学习,伺服控制装置200能够根据机器学习选择控制器增益的传输函数的各个系数的最优值,由此即使是位置控制器23的电感随着电动机的相位而发生变化时也能够进行降低电动机的旋转不均地动作。
以上,通过使用本发明的机器学习装置100能够根据电动机的相位适当地调整控制器增益。
以上说明伺服控制装置200、机器学习装置100中包括的功能块。
为了实现这些功能块,伺服控制装置200以及机器学习装置100分别具备CPU(Central Processing Unit:中央处理单元)等运算处理装置。另外,伺服控制装置200以及机器学习装置100也分别具备存储了应用软件、OS(Operating System:操作***)等各种控制用程序的HDD(Hard Disk Drive:硬盘驱动器)等辅助存储装置、用于存储在运算处理装置执行程序后暂时所需要的数据的RAM(Random Access Memory:随机存取存储器)等主存储装置。
而且,在伺服控制装置200以及机器学习装置100中,运算处理装置从辅助存储装置读入应用软件、OS,使读入的应用软件、OS在主存储装置展开同时进行基于这些应用软件、OS的运算处理。另外,根据该运算结果来控制各装置所具备的各种硬件。这样,实现本实施方式的功能块。即,本实施方式能够通过硬件与软件的协作来实现。
关于机器学习装置100,伴随着机器学习的运算量较多,因此例如在个人计算机中装载GPU(Graphics Processing Units:图形处理单元),通过被称为GPGPU(General-Purpose computing on Graphics Processing Units:图形处理单元的通用计算)的技术,将GPU用于随着机械学习的运算处理时,能够进行高速处理。进一步,为了进行更高速的处理,使用装载了这种CPU的多台计算机来构建计算机集群,通过该计算机集群中包括的多个计算机进行并行处理。
<本实施方式的动作>
接着,参照图5的流程图说明本实施方式的Q学习时的机器学习装置100的动作。另外,在图5的流程图的说明中,为了方便,将位置控制器23、速度控制器25以及电流控制器27简单称为控制器,将位置偏差、速度偏差以及电流偏差简单称为偏差。
在步骤S11中,状态信息取得部11从伺服控制装置200取得状态信息s。取得的状态信息被输出给价值函数更新部122、行为信息生成部123。如上所述,该状态信息s是相当于Q学习中的环境状态s的信息,包括在步骤S11时间点的偏差的集合PD(s)、电动机32的相位以及控制器增益的传输函数的系数。例如,作为偏差PD(s)包括在作为学习对象的是电流控制器27时,由减法器26从电流指令减去电流反馈而得到的电流偏差。另外,包括由相位计算部21计算出的电动机32的相位。进一步,包括电流控制器27的控制器增益的传输函数的系数a1P、b1P、c1P、a1I、b1I、c1I、a1D、b1D、c1D。
在步骤S12中,行为信息生成部123生成新的行为信息a,将所生成的新的行为信息a经由行为信息输出部13输出给作为学习对象的控制器。行为信息生成部123根据上述的方法输出新的行为信息a。另外,接收到行为信息a的控制器通过根据接收到的行为信息修正了当前状态s的控制器增益的传输函数的各个系数后的状态s’来驱动包括电动机32的控制对象装置300。如上所述,该行为信息是相当于Q学习中的行为a的信息。
在步骤S13中,状态信息取得部11从与作为学习对象的控制器输入对应的减法器(例如,作为学习对象的是电流控制器27时,减法器26)取得新状态s’中的偏差PD(s’)。这样,状态信息取得部11取得状态s’的偏差的集合PD(s’)。取得的状态信息被输出给回报输出部121。
在步骤S14中,回报输出部121判断状态s’的偏差的值f(PD(s’))与状态s的偏差的值f(PD(s))之间的大小关系。并且,当判断结果为f(PD(s’))>f(PD(s))时,在步骤S15中,将回报设为负的值。当f(PD(s’))<f(PD(s))时,在步骤S16中,将回报设为正的值。当f(PD(s’))=f(PD(s))时,在步骤S17中,将回报设为零。另外,也可以对回报的负的值、正的值进行加权。
如果步骤S15、步骤S16以及步骤S17中的任意一个结束,则处理进入步骤S18。
在步骤S18中,价值函数更新部122根据通过该任意的步骤计算出的回报的值来更新价值函数存储部14所存储的价值函数Q。另外,步骤S18例示在线更新,但是也可以代替在线更新而置换为批量更新或小批量更新。
在步骤S19中,学习部12判定是否满足结束强化学习的条件。结束强化学习的条件为例如使上述处理重复预定次数、重复预定时间。在还没有满足结束强化学习的条件时,在步骤S19中判定为否,处理再次返回步骤S11。然后,通过重复上述处理,价值函数Q收敛为适当的值。
另一方面,在满足了结束强化学习的条件时,在步骤S19中判定为是,结束处理。
如上所述,在本实施方式中,不是同时学习电流控制器27、速度控制器25以及位置控制器23这3个控制器,而是将这些控制器内的一个作为对象按顺序地进行学习。即,对各个控制器按顺序地进行步骤S11~步骤S19的处理。然后,在对所有的控制器进行了步骤S11~步骤S19的处理时,Q学习时的机器学习装置100的动作结束。
以上,通过参照图5说明的动作,在本实施方式中通过使用机器学习装置100而能够得到用于调整关于各个控制器的控制器增益的传输函数的系数的适当的价值函数,能够使各个系数的最优化变得简单。
接着,参照图6的流程图说明最优化行为信息输出部15的最优化行为信息生成时的动作。
首先,在步骤S21中,最优化行为信息输出部15取得存储在价值函数存储部14中的价值函数Q。价值函数Q为如上所述那样由价值函数更新部122进行Q学习而更新的函数。
在步骤S22中,最优化行为信息输出部15根据该价值函数Q生成最优化行为信息,并将所生成的最优化行为信息输出给伺服控制装置200的各个控制器。该最优化行为信息是用于适当地调整关于各个控制器的控制器增益的传输函数的系数的信息。
在伺服控制装置200中,根据该最优化行为信息将控制器增益的传输函数的各个系数最优化,即使是位置控制器23的电感随着相位而发生变化时也能够进行动作使得减轻旋转不均并降低位置偏差的值。
以上,通过使用本发明的机器学习装置100能够根据电动机的相位来适当地调整控制器增益。
参照图7说明其效果。图7图示了电动机32以恒定速度进行旋转时的各个控制环路的偏差。
首先,图中左边的<传输函数的系数调整前>图示以下情况,即如果随着电动机32的转子的旋转电动机32的相位发生变化,则电动机的电感也会随着该相位的变化而变化,因此如果增益固定则会产生旋转不均。如上所述,在一般的技术中,没有进行传输函数的系数的调整,所以这样会产生旋转不均。这样,例如当控制对象装置300是机床时,会产生工件进给不均,所以不能够对工件的加工面均匀地进行加工。
与此相对,图中右边的<传输函数的系数调整后>图示以下情况,即通过上述本实施方式的处理,根据电动机32的相位的变化进行传输函数的系数调整,所以适当地调整增益,改善旋转不均。这样,根据本实施方式,例如当机控制对象装置300是机床时,能够防止工件进给不均的发生,所以能够对工件的加工面均匀地进行加工。
即,本实施方式根据电动机的相位适当地调整控制器增益,所以与一般的技术相比会达到有利的效果。
上述伺服控制***中包括的各个结构部能够通过硬件、软件或他们的组合来实现。另外,通过上述伺服控制***中包括的各个结构部各自的协作而进行的伺服控制方法也能够通过硬件、软件或他们的组合来实现。这里,通过软件实现是指通过计算机读入程序并执行来实现。
能够使用各种类型的非暂时的计算机可读介质(non-transitory computerreadable 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:随即存取存储器))。另外,也可以通过各种类型的暂时的计算机可读介质(transitory computer readable medium)对计算机提供程序。暂时的计算机可读介质的例子包括电信号、光信号以及电磁波。暂时的计算机可读介质能够经由电线以及光纤等有线通信电路或无线通信电路,将程序提供给计算机。
上述实施方式是本发明的优选实施方式,但是不应将本发明的范围限定为上述实施方式,能够在不脱离本发明主旨的范围中实施实施了各种变更后的方式。以下记载实施了变更后的方式的例子。
<伺服控制装置具备机器学习装置的变形例>
在上述实施方式中,通过与伺服控制装置200分开的装置来构成机器学习装置100,但是例如也可以通过伺服控制装置200来实现机器学习装置100的功能的一部分或全部。
<***结构的自由度>
在上述实施方式中,机械学习装置100与伺服控制装置200作为1对1的组可通信地连接,但是例如也可以为1台机器学习装置100和多个伺服控制装置200经由网络可通信地连接,实施各个伺服控制装置200的机械学习。
此时,机器学习装置100的各个功能可以作为适当分散到多个服务器的分散处理***。另外,也可以在云上使用虚拟服务器功能等来实现机器学习装置100的各个功能。
<电动机32的变形>
在上述实施方式中,假设电动机32是旋转电动机。并且,电动机32的转子将以恒定速度在正方向以及/或负方向旋转一周以上的动作作为对象进行机器学习。
将此进行变形,可以将电动机32不是置换为旋转电动机,而置换为线性电动机。此时,将线性电动机的可动子从定子上的动作区域一端在任意方向移动到另一端的动作作为对象进行机器学习即可。
<控制器的控制方法的变形>
在上述实施方式中,假设了在3个控制器即位置控制器23、速度控制器25以及电流控制器27中分别进行PID控制的情况。将其进行变形,也可以在一部分或全部的控制器中进行PI控制,或只进行比例控制。
例如,在对于速度控制器25以及电流控制器27进行PI控制,对于位置控制器23进行比例控制的情况下,将上述各个控制器的控制器增益的传输函数设为以下的数学式(公式7)即可。
电流控制器27的传输函数K1(s,Θ)=K1P(Θ)+K1I(Θ)/s
速度控制器25的传输函数K2(s,Θ)=K2P(Θ)+K2I(Θ)/s
位置控制器23的传输函数K3(s,Θ)=K3P(Θ)
(公式7)
<控制器的传输函数的系数的变形>
在上述实施方式中,将控制器增益的传输函数的系数、例如电流控制器27的控制器增益的传输函数K1(s,Θ)、速度控制器25的控制器增益的传输函数K2(s,Θ)以及位置控制器23的控制器增益的传输函数K3(s,Θ)分别如数学式(公式3)那样设为Θ的一次函数,但是不限于此。
例如在同样取电流控制器27的控制器增益的传输函数K1(s,Θ)(=K1P(Θ)+K1I(Θ)/s+K1D(Θ)/s)为例的情况下,可以如以下那样设为Θ的多维函数。
K1P(Θ)=Σ1≤i≤L{a1P(i)·sin(iΘ+b1P(i)}+c1P
K1I(Θ)=Σ1≤j≤M{a1I(j)·sin(jΘ+b1I(j)}+c1I
K1D(Θ)=Σ1≤k≤N{a1D(k)·sin(kΘ+b1D(k))}+c1D
这里,L、M、N分别设为1以上的整数。
(公式8)
关于速度控制器25的控制器增益的传输函数K2(s,Θ)以及位置控制器23的控制器增益的传输函数K3(s,Θ)也同样可以设为Θ的多维函数。
另外,在本实施方式中,适用了函数sin,但是不限于此。例如可以适用cos来代替sin。进一步不是通过这种数学式来计算系数的值,而可以通过机器学习来生成将控制器增益的传输函数的系数的值与相位Θ的值对应后的参数表。
<作为学习对象的控制器的选择>
在上述实施方式中,关于位置控制器23、速度控制器25以及电流控制器27这3个控制器,将这些控制器内的一个作为对象按顺序进行学习,最终对3个控制器全部进行了学习,但不限于此。
例如,可以仅对3个学习器内的任意一个学习机进行学习。例如也可以仅对电流控制器27进行学习,或仅对速度控制器25以及电流控制器27进行学习。
<电流指令值>
电流指令值中存在上限值。因此,将容许值CCmax例如设为上限值或上限值以下的值,最好不要超过该容许值CCmax。因此,除了计算基于偏差PD(s)的回报以外,还根据电流指令值是否达到容许值CCmax来计算回报。
具体地说,状态信息取得部11在状态s观测成为加法器107的输出的进行了位置前馈控制的电流指令值CC(s)。状态信息取得部11在观测到在状态s观测到的电流指令值中的即使一个超过了容许值CCmax时,回报输出部121不管基于偏差PD(s)的回报的计算结果、之前状态中的电流指令值怎样,都将回报设为负的值。
另外,当在状态s中观测到的电流指令值没有超过容许值CCmax时,预先设定电流指令值CC(s)的评价函数q,并根据电流指令值CC(s)的评价值q(CC(s)),与偏差PD(s)同样地计算基于电流指令值CC(s)的回报。
此时,回报输出部121可以在基于偏差PD(s)的回报与基于电流指令值CC(s)的回报之间进行加权相加。
另外,在关于偏差PD(s)的评价函数与电流指令值CC(s)的评价函数q之间进行加权,并将被加权后的评价函数相加,使用被加权后的评价函数来决定回报。
Claims (7)
1.一种机器学习装置,对控制具备电动机的控制对象装置的动作的伺服控制装置进行强化学习,其特征在于,
该机器学习装置具备:
行为信息输出单元,其对上述伺服控制装置所具备的控制器输出包括控制器增益的传输函数的系数的调整信息的行为信息;
状态信息取得单元,其从上述伺服控制装置取得状态信息,该状态信息包括在上述控制器根据上述行为信息使上述控制对象装置进行动作时被输入到上述控制器的指令与上述控制对象装置的实际动作之间的偏差、上述电动机的相位、上述控制器增益的传输函数的系数;
回报输出单元,其根据上述状态信息中包括的上述偏差来输出强化学习的回报值;以及
价值函数更新单元,其根据上述回报值、上述状态信息、上述行为信息来更新行为价值函数。
2.根据权利要求1所述的机器学习装置,其特征在于,
上述伺服控制装置是进行用于修正被输入到上述控制器的指令的反馈控制的伺服控制装置,
上述状态信息取得单元取得被输入到上述控制器中的指令与上述反馈控制的反馈值之间的差值作为上述偏差。
3.根据权利要求1或2所述的机器学习装置,其特征在于,
上述控制器是进行位置控制、速度控制以及电流控制中的任意一个的控制器的组合,
该机器学习装置在将上述控制器的任意一个作为对象进行了上述强化学习后,将其他控制器的一个作为对象进行上述强化学习时,按照进行电流控制的控制器、进行速度控制的控制器、进行位置控制的控制器的顺序设为上述强化学习的对象。
4.根据权利要求1~3中的任意一项所述的机器学习装置,其特征在于,
根据用于控制上述控制对象装置的动作的位置指令来计算上述电动机的相位。
5.根据权利要求1~4中的任意一项所述的机器学习装置,其特征在于,
上述控制器增益的传输函数包括上述电动机的相位作为变量。
6.一种伺服控制***,具备权利要求1~5中的任意一项所记载的机器学习装置和上述伺服控制装置,其特征在于,
上述伺服控制装置具备:
相位计算单元,其根据用于控制上述控制对象装置的动作的位置指令来计算上述电动机的相位,并将计算出的电动机的相位输出给上述状态信息取得单元以及上述控制器。
7.一种机器学习装置的机器学习方法,对控制具备电动机的控制对象装置的动作的伺服控制装置进行强化学习,该学习方法的特征在于,具备:
行为信息输出步骤,对上述伺服控制装置所具备的控制器输出包括控制器增益的传输函数的系数的调整信息的行为信息;
状态信息取得步骤,从上述伺服控制装置取得状态信息,该状态信息包括在上述控制器根据上述行为信息使上述控制对象装置进行动作时被输入到上述控制器的指令与上述控制对象装置的实际动作之间的偏差、上述电动机的相位、上述控制器增益的传输函数的系数;
回报输出步骤,根据上述状态信息中包括的上述偏差来输出强化学习的回报值;以及
价值函数更新步骤,根据上述回报值、上述状态信息、上述行为信息来更新行为价值函数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-097527 | 2017-05-16 | ||
JP2017097527A JP6474456B2 (ja) | 2017-05-16 | 2017-05-16 | 機械学習装置、サーボ制御システム及び機械学習方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108880399A true CN108880399A (zh) | 2018-11-23 |
CN108880399B CN108880399B (zh) | 2019-12-06 |
Family
ID=64271615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810444852.8A Active CN108880399B (zh) | 2017-05-16 | 2018-05-10 | 机器学习装置、伺服控制***以及机器学习方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11009837B2 (zh) |
JP (1) | JP6474456B2 (zh) |
CN (1) | CN108880399B (zh) |
DE (1) | DE102018003769B4 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113498497A (zh) * | 2019-03-07 | 2021-10-12 | 三菱电机株式会社 | 机器学习装置、数控装置、异常推测装置及工作机械的控制*** |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6544219B2 (ja) * | 2015-11-30 | 2019-07-17 | オムロン株式会社 | 制御装置 |
KR102215752B1 (ko) * | 2018-12-27 | 2021-02-17 | 서울대학교산학협력단 | Ai 기반 노치 필터의 파라미터 설정 장치 및 방법 |
JP7022096B2 (ja) * | 2019-03-28 | 2022-02-17 | ファナック株式会社 | サーボ制御装置 |
CN112631120B (zh) * | 2019-10-09 | 2022-05-17 | Oppo广东移动通信有限公司 | Pid控制方法、装置和视频编解码*** |
JP7331660B2 (ja) * | 2019-11-26 | 2023-08-23 | 横河電機株式会社 | 装置、方法およびプログラム |
JP7374790B2 (ja) * | 2020-01-30 | 2023-11-07 | 株式会社Screenホールディングス | 搬送装置および搬送方法 |
JP7484382B2 (ja) | 2020-04-24 | 2024-05-16 | 横河電機株式会社 | 制御装置、制御方法および制御プログラム |
CN114609976A (zh) * | 2022-04-12 | 2022-06-10 | 天津航天机电设备研究所 | 一种基于单应性和q学习的无标定视觉伺服控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01298977A (ja) * | 1988-05-27 | 1989-12-01 | Sanyo Denki Co Ltd | モータの制御方法及び装置 |
US20150031969A1 (en) * | 2012-09-14 | 2015-01-29 | Mohammad Khair | System and method for monitoring arterial and venous blood oxygen, blood glucose, and blood constituent concentration |
CN106338967A (zh) * | 2015-07-09 | 2017-01-18 | 发那科株式会社 | 可显示控制***的在线自动调整状况的伺服控制装置 |
CN106411216A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习方法及其装置、电动机控制装置以及电动机装置 |
CN106411224A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、电动机控制装置以及机械学习方法 |
CN106612088A (zh) * | 2015-10-19 | 2017-05-03 | 发那科株式会社 | 机械学习装置及方法、校正值计算装置及马达驱动装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07210207A (ja) | 1994-01-17 | 1995-08-11 | Hitachi Ltd | 適応制御装置 |
JP2000054862A (ja) * | 1998-08-07 | 2000-02-22 | Yamaha Motor Co Ltd | 動力源付き乗物における出力制御方法 |
JP2006238663A (ja) * | 2005-02-28 | 2006-09-07 | Toshiba Corp | 電動機の制御装置 |
-
2017
- 2017-05-16 JP JP2017097527A patent/JP6474456B2/ja active Active
-
2018
- 2018-05-09 DE DE102018003769.0A patent/DE102018003769B4/de active Active
- 2018-05-10 CN CN201810444852.8A patent/CN108880399B/zh active Active
- 2018-05-10 US US15/976,427 patent/US11009837B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01298977A (ja) * | 1988-05-27 | 1989-12-01 | Sanyo Denki Co Ltd | モータの制御方法及び装置 |
US20150031969A1 (en) * | 2012-09-14 | 2015-01-29 | Mohammad Khair | System and method for monitoring arterial and venous blood oxygen, blood glucose, and blood constituent concentration |
CN106338967A (zh) * | 2015-07-09 | 2017-01-18 | 发那科株式会社 | 可显示控制***的在线自动调整状况的伺服控制装置 |
CN106411216A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习方法及其装置、电动机控制装置以及电动机装置 |
CN106411224A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习装置、电动机控制装置以及机械学习方法 |
CN106612088A (zh) * | 2015-10-19 | 2017-05-03 | 发那科株式会社 | 机械学习装置及方法、校正值计算装置及马达驱动装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113498497A (zh) * | 2019-03-07 | 2021-10-12 | 三菱电机株式会社 | 机器学习装置、数控装置、异常推测装置及工作机械的控制*** |
Also Published As
Publication number | Publication date |
---|---|
JP2018195018A (ja) | 2018-12-06 |
DE102018003769A1 (de) | 2018-11-22 |
CN108880399B (zh) | 2019-12-06 |
DE102018003769B4 (de) | 2021-09-23 |
JP6474456B2 (ja) | 2019-02-27 |
US11009837B2 (en) | 2021-05-18 |
US20180335758A1 (en) | 2018-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108880399A (zh) | 机器学习装置、伺服控制***以及机器学习方法 | |
US10921774B2 (en) | Machine learning devices and methods for optimizing the speed and accuracy of thread mill, inner diameter, outer shape, and surface machine tools | |
CN109274314B (zh) | 机器学习装置、伺服电动机控制装置、伺服电动机控制***以及机器学习方法 | |
CN110083080A (zh) | 机器学习装置及方法、伺服电动机控制装置及*** | |
CN109116811A (zh) | 机器学习装置和方法、伺服控制装置、伺服控制*** | |
JP6748135B2 (ja) | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 | |
CN108363356B (zh) | 行动信息学习装置、行动信息最优化***以及计算机可读介质 | |
JP2018152012A (ja) | 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法 | |
JP7010877B2 (ja) | 機械学習装置、数値制御システム及び機械学習方法 | |
CN110376965A (zh) | 机器学习装置、控制装置以及机器学习方法 | |
CN110376969A (zh) | 调整装置以及调整方法 | |
CN110376964A (zh) | 机器学习装置、控制装置以及机器学习方法 | |
US11914333B2 (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
JP2020177257A (ja) | 機械学習装置、制御装置及び機械学習方法 | |
CN110875703A (zh) | 机器学习装置、控制***以及机器学习方法 | |
CN111552237A (zh) | 机器学习装置、控制装置、以及机器学习的搜索范围的设定方法 | |
JP6740263B2 (ja) | 機械学習装置、サーボモータ制御装置、サーボモータ制御システム、及び機械学習方法 | |
Zuperl et al. | System for off‐line feedrate optimization and neural force control in end milling | |
CN110727242B (zh) | 机器学习装置、控制装置、以及机器学习方法 | |
WO2021187268A1 (ja) | 機械学習装置、数値制御システム、設定装置、数値制御装置、及び機械学習方法 | |
WO2021210483A1 (ja) | 機械学習装置、制御装置及び機械学習方法 |
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 |