机械学习装置及方法、校正值计算装置及马达驱动装置与流程

文档序号:11064608阅读:408来源:国知局
机械学习装置及方法、校正值计算装置及马达驱动装置与制造工艺

本发明涉及对三相交流马达的马达驱动装置中基于电流指令以及电流反馈值的电流控制相关联的校正值进行学习的机械学习装置及方法、包括该机械学习装置的校正值计算装置及马达驱动装置。



背景技术:

用于驱动控制被用作机床驱动源的三相交流马达的马达驱动装置一般多由位置控制环、速度控制环以及电流控制环构成。

图12是概略地表示通常的马达驱动装置的构成的框图。在位置控制环中,基于由安装于三相交流马达(以下,有时简称为“马达”)204的位置检测部241检测出的马达204的转子实际位置的相关信息(位置反馈值)和由位置指令作成部(未图示)作成的位置指令,由速度指令作成部231作成速度指令。在速度控制环中,基于由安装于马达204的速度检测部242检测出的马达204的转子速度的相关信息(速度反馈值)和由速度指令作成部231作成的速度指令,由电流指令作成部221作成电流指令。在电流控制环中,基于由电流检测部243检测出的从变换器(inverter)202流向马达204的电流的相关信息(电流反馈值)和由电流指令生成部221作成的电流指令值,在电流控制部211作成用于驱动变换器202的驱动指令(例如PWM控制信号)。变换器202是例如通过设于内部的开关元件的开关动作来将直流电力变换为交流电力的马达电力供给用的变换器,由接收到的驱动指令来控制变换器202内的开关元件的开关动作,从而进行将直流电力变换为马达204的驱动用的交流电力的变换动作。马达204将从变换器202输出的交流电力作为驱动电力进行动作,因此控制从变换器202输出的交流电力,能够对马达204的速度、扭矩、或者转子的位置进行驱动控制。通过驱动马达204对机床的可动部进行驱动。

这样,在马达驱动装置以电流指令值和由电流检测部检测出的电流反馈值相等的方式进行电流控制。

但是,通常检测电流反馈值的电流检测部存在偏移。该偏移与马达的动作无关,是仅与电流检测部相关的偏移部分,是即使马达处于停止状态也会检测出的噪声部分。该电流偏移使马达的扭矩产生依赖电角而变化的脉动部分,电角的每旋转一周,发生一次扭矩脉动,针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差变大。因而,优选使用电流反馈偏移校正值来进行校正电流反馈值的所谓的“偏移补偿”。

例如,如特许第3236449号公报所述,公知一种检测AC伺服电动机的实际电流并向电流指令进行电流反馈的控制方法,每当电压指令为零时检测AC伺服电动机的实际电流,求出电流反馈上的偏移数据,利用由偏移数据得到的电流偏移值更新电流偏移值,将更新的电流偏移值向电流指令进行电流反馈并进行偏移补偿。

另外,通常在电流检测部,检测从马达电力供给用变换器流向三相交流马达的UVW三相的实际电流中的两相部分(例如U相实际电流以及V相实际电流),将其作为电流反馈值进行输出。但是,在电流检测部检测的两相电流反馈值中,由于电流检测元件的增益的偏差、电流检测电阻的偏差、检测增益的不均衡或者噪声等影响,在相间发生不平衡。若基于存在相间不平衡的电流反馈值来进行电流控制,则针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差会变大。因而,优选使用电流反馈相间不平衡校正值来对电流反馈值进行校正,从而除去相间不平衡。

另外,通常在马达电力供给用变换器内的开关元件的开关动作中,设有使同一相内的上下各桥臂的开关元件不同时打开(导通)的所谓的“开关死区”(switching dead zone)。在与该开关死区相当的时间期间内,上下各桥臂的开关元件不导通,因此电流不流过桥臂。因此,因为开关死区的存在,即使向开关元件发出的电流指令为例如10[A],电流也只会以平均值基准9.8[A](平均值基准)流过桥臂,所以实际上成为比该电流指令小的电流流过桥臂。因此,为了对因该开关死区引起的电流减少部分进行补偿,以往采用了对最初的电流指令追加死区用电流指令校正值的对策。例如,想在桥臂流过10[A]的电流的情况下,使用在最初的电流指令的10[A]上追加作为死区用电流指令校正值的0.2[A]而得到的“校正后的电流指令”的10.2[A],来控制开关元件的开关动作,使桥臂上实际流过10[A](平均值基准)的电流。像这样,使用死区用电流指令校正值对电流指令进行校正,从而对因开关死区引起的电流减少部分进行补偿。

在像这样进行基于电流指令及电流反馈值的电流控制而驱动三相交流马达的马达驱动装置中,使用用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及为了补偿因马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正中所使用的死区用电流指令校正值,这三个校正值来进行校正处理,从而谋求针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差的最小化(进给顺畅的最佳化)。

以往,电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值使用固定值(一定值)。

但是,在实际中,开关死区因系统的零部件的偏差、周围温度等而变动,因此,即便使用被设定为固定值的死区用电流指令校正值来校正电流指令,也不能说使接近期望值的电流流过。另外,虽然开关死区是使马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开所必不可缺的,但是在与开关死区相应的时间内,在开关元件内流动的电流被中途切断,因此成为发生转子位置指令与转子实际位置之间的误差的主要原因,成为改善进给顺畅的障碍。

另外,以往没有考虑这些校正值相互间的影响而分别独立地设定这些校正值。但是,实际上各校正值互相影响,难以找到各校正值的最佳组合,不能说一定能够使转子位置指令与转子实际位置之间的误差最小化。

另外,用于使针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差最小化的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值依赖于马达驱动装置内的温度、三相交流马达的温度、向马达驱动装置输入的交流输入电压、设于马达驱动装置内的对交流输入电压进行整流的整流器和马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的控制装置的控制电压。因而,优选与马达驱动装置内的温度、三相交流马达的温度、以及马达驱动装置的各部分电压的变动相应地,变更电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值,但是,如上述那样,以往这些校正值采用固定值,难以实时地找出各校正值的最佳组合。



技术实现要素:

本发明鉴于上述问题,其目的在于提供一种能够容易地使针对三相交流马达的转子位置指令与转子实际位置之间的误差最小化的机械学习装置及方法、包括该机械学习装置的校正值计算装置及马达驱动装置。

为了实现上述目的,在第1方案中,对三相交流马达的马达驱动装置中与基于电流指令以及电流反馈值的电流控制相关联的校正值进行学习的机械学习装置包括:状态观测部,其观测由以下数据中的至少一个数据构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、以及马达驱动装置的各部分电压相关的数据;以及学习部,其按照由状态变量构成的训练数据集来学习以下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及用于为了补偿因被设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正的死区用电流指令校正值。

这里,也可以是,上述各部分电压包括以下电压中的至少一个电压:向马达驱动装置输入的交流输入电压、设于马达驱动装置内的对交流输入电压进行整流的整流器与马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的控制装置的控制电压。

并且,也可以是,学习部包括:回报计算部,其基于针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差来计算回报;以及函数更新部,其基于状态变量以及回报,来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。

并且,也可以是,回报计算部在针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差比在当前的误差之前由状态观测部观测到的误差小时增加回报,大时减少回报。

并且,也可以是,回报计算部在针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差在规定范围内时增加回报,在规定范围外时减少回报。

并且,也可以是,回报计算部基于对针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差进行快速傅立叶变换而得到的结果来计算回报。

并且,也可以是,函数更新部基于回报以及进行了快速傅立叶变换后的转子位置指令与转子实际位置之间的误差来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。

并且,也可以是,函数更新部基于状态变量以及回报并按照神经网络模型来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。

并且,也可以是,学习部构成为按照对多个马达驱动装置取得的训练数据集来学习电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。

并且,包括上述第1方案的机械学习装置的用于马达驱动装置的电流控制的校正值计算装置还包括:意图决定部,其基于学习部按照训练数据集进行学习而得的结果,响应当前的状态变量的输入,决定电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。

并且,包括上述校正值计算装置的马达驱动装置还包括:整流器,其对从交流电源侧输入的交流输入电压进行整流而向直流母线侧输出直流电压;马达电力供给用变换器,其经由直流母线与整流器连接,通过对内部的开关元件进行开闭驱动而将直流母线侧的直流电压变换为交流电压并向三相交流马达侧输出;电流检测部,其检测从马达电力供给用变换器流向三相交流马达的电流并将其作为电流反馈值进行输出;电流反馈偏移校正部,其利用电流反馈偏移校正值来校正电流反馈值中包含的偏移部分;电流反馈相间不平衡校正部,其利用电流反馈相间不平衡校正值来校正电流反馈值的相间不平衡;死区用电流指令校正部,其利用死区用电流指令校正值来校正电流指令,以补偿因马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分;位置检测部,其检测三相交流马达的转子实际位置;误差测量部,其测量针对三相交流马达的转子位置指令与转子实际位置之间的误差;马达驱动装置内温度测量部,其测量马达驱动装置内的温度;马达温度测量部,其测量三相交流马达的温度;控制部,其以电流指令与电流反馈值相等的方式控制马达电力供给用变换器的开关元件的开关动作;以及电压检测部,其检测如下电压中的至少一个:向马达驱动装置输入的交流输入电压、整流器与马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的包括电流控制部的控制装置的控制电压。

并且,在第1方案中,对三相交流马达的马达驱动装置的与基于电流指令以及电流反馈值的电流控制相关联的校正值进行学习的机械学习方法包括如下步骤:状态观测步骤,观测由以下数据中的至少一个数据构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、以及马达驱动装置的各部分电压相关的数据;以及学习步骤,按照由状态变量构成的训练数据集来学习以下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及用于为了补偿因被设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正的死区用电流指令校正值。

并且,在第2方案中,对三相交流马达的马达驱动装置中与基于电流指令以及电流反馈值的电流控制相关联的校正值进行学习的机械学习装置包括:状态观测部,其观测由以下数据中的至少一个数据构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、以及马达驱动装置的各部分电压相关的数据;以及学习部,其按照由状态变量构成的训练数据集来学习以下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及用于对被设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区所对应的时间段进行校正的死区用时间段校正值。

这里,也可以是,上述各部分电压包括以下电压中的至少一个电压:向所述马达驱动装置输入的交流输入电压、设于所述马达驱动装置内的对所述交流输入电压进行整流的整流器与所述马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于所述马达驱动装置内的控制装置的控制电压。

并且,包括上述第1方案的机械学习装置的马达驱动装置还包括:意图决定部,其基于学习部按照训练数据集进行学习而得的结果,响应当前的状态变量的输入,决定电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值;整流器,其对从交流电源侧输入的交流输入电压进行整流而向直流母线侧输出直流电压;马达电力供给用变换器,其经由直流母线与整流器连接,通过对内部的开关元件进行开闭驱动而将直流母线侧的直流电压变换为交流电压并向三相交流马达侧输出;电流检测部,其检测从马达电力供给用变换器流向三相交流马达的电流并将其作为电流反馈值进行输出;电流反馈偏移校正部,其利用电流反馈偏移校正值来校正电流反馈值中包含的偏移部分;电流反馈相间不平衡校正部,其利用电流反馈相间不平衡校正值来校正电流反馈值的相间不平衡;死区用时间段校正部,其利用死区用时间段校正值来校正马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区所对应的时间段;位置检测部,其检测三相交流马达的转子实际位置;误差测量部,其测量针对三相交流马达的转子位置指令与转子实际位置之间的误差;马达驱动装置内温度测量部,其测量马达驱动装置内的温度;马达温度测量部,其测量三相交流马达的温度;电流控制部,其以电流指令与电流反馈值相等的方式控制马达电力供给用变换器的开关元件的开关动作;以及电压检测部,其检测如下电压中的至少一个:向马达驱动装置输入的交流输入电压、整流器与马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的包括电流控制部的控制装置的控制电压。

附图说明

参照以下的附图,以更清楚地理解本发明。

图1是实施例的机械学习装置的原理框图。

图2是表示实施例的机械学习方法的动作流程的流程图。

图3是实施例的使用了强化学习的机械学习装置的原理框图。

图4是表示实施例的使用了强化学习的机械学习方法的动作流程的流程图。

图5是表示实施例的包括应用了强化学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的原理框图。

图6是表示实施例的包括应用了强化学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的动作流程的流程图。

图7是表示包括实施例的变形例的机械学习装置的马达驱动装置的原理框图。

图8是表示包括实施例的变形例的机械学习装置的马达驱动装置的动作流程的流程图。

图9是表示神经元的模型的示意图。

图10是表示具有D1~D3的三层权值的神经网络的示意图。

图11是表示实施例的包括应用了有教师学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的原理框图。

图12是概略地表示通常的马达驱动装置的构成的框图。

具体实施方式

以下,参照附图对学习马达电流控制的校正值的机械学习装置及方法、包括该机械学习装置的校正值计算装置及马达驱动装置进行说明。但是,应该理解为本发明不局限于附图或者以下说明的实施方式。

图1是实施例的机械学习装置的原理框图。以下,在不同的附图中标注相同的附图标记的部分表示具有相同的功能的构成要素。

实施例的机械学习装置1构成为:在三相交流马达的马达驱动装置中基于电流指令及电流反馈值的电流控制中,学习以下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及用于为了补偿因设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正的死区用电流指令校正值。

机械学习装置1包括状态观测部11和学习部12。

状态观测部11观测由以下数据中的至少一个数据构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、马达驱动装置的各部分电压相关的数据。

这里,由状态观测部11观测的马达驱动装置的各部分电压包含如下电压中的至少一个:向马达驱动装置输入的交流输入电压、设于马达驱动装置内的对交流输入电压进行整流的整流器和马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的控制装置的控制电压。

由状态观测部11作为状态变量观测的针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据被用作在设于马达驱动装置内的控制装置存储的控制软件的内部数据,是从该控制装置取得的数据。由状态观测部11作为状态变量观测的马达驱动装置内的温度相关的数据从作为马达驱动装置内温度测量部设于马达驱动装置内的任意部位的温度传感器取得。由状态观测部11作为状态变量观测的三相交流马达的温度相关的数据从作为马达温度测量部设于三相交流马达的附近的温度传感器取得。由状态观测部11作为状态变量观测的马达驱动装置的各部分电压相关的数据分别从被设于用于检测如下电压的部位的各电压传感器(电压计)取得:向马达驱动装置输入的交流输入电压、整流器与马达电力供给用变换器之间的直流母线电压、以及用于驱动被设于马达驱动装置内的控制装置的控制电压。

学习部12按照由状态变量构成的数据集来学习如下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值,以及为了补偿因设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正中所使用的死区用电流指令校正值。另外,训练数据集也可以从多个马达驱动装置取得,在该情况下,学习部12按照从多个马达驱动装置取得的训练数据集来学习电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。

这里,电流反馈偏移校正值用于补偿由电流检测部对从马达电力供给用变换器流向三相交流马达的电流进行检测而得到的电流反馈值中包含的偏移。另外,电流反馈相间不平衡校正值用于除去由电流检测部检测出的电流反馈值的相间不平衡。另外,死区用电流指令校正值用于对电流指令进行校正,以补偿因马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分。

图2是表示实施例的机械学习方法的动作流程的流程图。对三相交流马达的马达驱动装置的基于电流指令及电流反馈值的电流控制中的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值进行学习的机械学习方法包括状态观测步骤S101和学习步骤S102。

状态观测步骤S101由状态观测部11来执行,即、观测由如下数据中的至少一个构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、马达驱动装置的各部分电压相关的数据。

学习步骤S102由学习部12来执行,即、按照由状态变量构成的训练数据集来学习以下校正值:用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值,以及用于为了补偿因设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分而对电流指令进行校正的死区用电流指令校正值。

机械学习装置1所用的算法可以使用任何算法。机械学习装置1具有这样的功能:从输入装置的数据集合通过解析而提取其中的有用的规则、知识表现、判断基准等,输出其判断结果,并进行知识的学习。这样的方法具有多种,大致分为“有教师学习”、“无教师学习”、“强化学习”。进而,还具有在实现这些方法的基础上、学习特征量本身的提取的被称为“深层学习(深度学习:Deep Learning)”的方法。另外,这些机械学习(机械学习装置1)例如能够通过应用GPGPU(通用计算图形处理器:General-Purpose computing on Graphics Processing Units)、大规模PC组等来实现。

以下,作为一例,参照图3及图4对使用了强化学习的情况进行说明。“有教师学习”、“无教师学习”等见后述。

图3是实施例的使用了强化学习的机械学习装置的原理框图。学习部12包括回报计算部21和函数更新部22。

回报计算部21基于针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差来计算回报。即,转子位置指令与转子实际位置之间的误差越小,回报计算部21认为由所设定的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值进行的校正越带来好影响,给予高回报。例如,回报计算部21可以是:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差比在当前误差之前由状态观测部11观测的误差小时增加回报,大时减少回报。另外,例如,回报计算部21也可以是:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差在规定范围内时增加回报,在规定范围外时减少回报。

另外,例如回报计算部21也可以构成为:基于将针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差进行快速傅立叶变换(FFT)而得到的结果来计算回报。以下,对基于快速傅立叶变换的结果的回报计算进行说明。这里,对电流反馈偏移校正值进行说明,对于电流反馈相间不平衡校正值及死区用电流指令校正值,也同样能够适用。

对转子位置指令与转子实际位置之间的误差进行快速傅立叶变换,则所得到的结果将三相交流马达的旋转频率以基本波成分的倍数表现出来。在本说明书中,将该倍数成分称为“次数成分”。例如,在三相交流马达的旋转频率为1[Hz](60[rpm])的情况下,对转子位置指令与三相交流马达的转子实际位置之间的误差进行快速傅立叶变换的结果得到4[Hz]的成分时,该成分能可以表现为“四次成分”。另外,次数成分是基本波成分的倍数,因此次数成分的频率根据三相交流马达的旋转频率而变化。

例如在电流反馈偏移校正值与使某特定的次数成分减少(换言之,使误差减小)有很大关系的情况下,在使电流反馈偏移校正值发生了变化时,对发生该特定的次数成分的误差时的回报比发生其之外的次数成分的误差时的回报多地加权。例如,电流反馈偏移校正值与使四次成分减少有很大关系的情况下,以四次成分的回报为10倍、其之外的次数成分的回报为1倍的方式加权。另外,例如在不知道电流反馈偏移校正值与多少次成分的误差减少有关系的情况下,也可以是,使电流反馈偏移校正值变化多次,积累误差的快速傅立叶变换后的结果,掌握关于多少次成分减少的倾向,并将其作为回报加权的参考。

函数更新部22基于由状态观测部11观测到的状态变量以及由回报计算部21计算出的回报,更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数(行为价值表)。函数(行为价值表)的更新方法见后述。另外,对于这些以外的构成要素,与图1所示的构成要素一样,因此,对同一构成要素标注同一附图标记并省略对该构成要素的详细说明。

另外,例如函数更新部22也可以构成为:基于由回报计算部21计算出的回报、以及进行了快速傅立叶变换后的转子位置指令与转子实际位置之间的误差,来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。

也可以是,学习部12对由状态观测部11观测到的状态变量以多层构造进行运算,实时地更新函数(行为价值表)。例如,也可以是,函数更新部22基于由状态观测部11观测出的状态变量以及由回报计算部21计算出的回报,按照神经网络模型,来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。这里,作为对状态变量进行多层构造运算的方法,例如,能够使用后述的图10所示的多层神经网络。

图4是表示实施例的使用了强化学习的机械学习方法的动作流程的流程图。

首先,在状态观测步骤S101,状态观测部11观测由以下数据中的至少一个构成的状态变量:针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差相关的数据、马达驱动装置内的温度相关的数据、三相交流马达的温度相关的数据、马达驱动装置的各部分电压相关的数据。

接着,在回报计算步骤S102-1,回报计算部21基于针对三相交流马达的转子位置指令与三相交流马达的转子实际位置之间的误差来计算回报。

接着,在函数更新步骤S102-2,函数更新部22基于由状态观测部11观测出的状态变量以及由回报计算部21计算出的回报,来更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数(行为价值表)。

接着,对包括上述机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置进行说明。

图5是表示实施例的包括应用了强化学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的原理框图。这里,对利用马达驱动装置1000控制三相交流马达104的情况进行说明。

马达驱动装置1000作为其主电路结构包括:整流器101、马达电力供给用变换器102、直流母线电容器105。在马达驱动装置1000的交流输入侧连接有三相的交流电源103,在马达驱动装置1000的交流电动机侧连接有三相交流马达104。

整流器101对从交流电源103侧输入的交流输入电压进行整流而向直流母线侧输出直流电压。在本发明中,可以使用整流器101的实施方式并不特别限定,例如有二极管整流器、或者PWM控制方式的整流电路等。

马达电力供给用变换器102与设有直流母线电容器105的直流母线相连接,通过对内部的开关元件进行开闭驱动而将直流母线的直流电压变换为交流电压并向三相交流马达104供给交流电流,一般为能够交直双向变换的电力变换器。即,马达电力供给用变换器102能够在直流母线的直流电力与三相交流马达104的驱动电力或者作为再生电力的交流电力之间进行双向电力变换,按照从马达控制部52接收的驱动指令,进行将直流电压变换为交流电压的再生动作(逆变动作)以及将交流电压变换为直流电压的动力运行动作(顺变换动作)中的一者。具体而言,马达电力供给用变换器102基于从马达控制部52接收的驱动指令来使内部的开关元件开关动作,将从直流母线侧供给来的直流电力变换为用于驱动三相交流马达104的期望的电压以及期望的频率的三相交流电力。由此,三相交流马达104基于供给来的电压可变以及频率可变的三相交流电力来进行动作。另外,在三相交流马达104减速时产生再生电力,在该情况下,基于从马达控制部52接收的驱动指令,将在三相交流马达104产生的交流的再生电力向直流电力变换并向直流母线返回。马达电力供给用变换器102例如由像PWM变换器等这样的、开关元件以及与其反并联连接的二极管的三相全桥电路构成。

另外,马达驱动装置1000作为其测量系统包括电流检测部31、位置检测部35、误差测量部36、马达驱动装置内温度测量部37、马达温度测量部38、以及电压测量部40。

电流检测部31检测从马达电力供给用变换器102流向三相交流马达104的UVW三相的实际电流中的两相部分(例如U相实际电流以及V相实际电流),并将其作为电流反馈值输出。

位置检测部35检测三相交流马达104的转子实际位置。

误差测量部36测量从马达控制部52取得的针对三相交流马达的转子位置指令与由位置检测部35检测出的转子实际位置之间的误差。

马达驱动装置内温度测量部37是设置于马达驱动装置内的任意部位的温度传感器,测量马达驱动装置1000内的温度。也可以是,在多个部位设置马达驱动装置内温度测量部37,测量该多个部位的温度。

马达温度测量部38是设置在三相交流马达104的附近的温度传感器,测量三相交流马达104的温度。

电压检测部40测量马达驱动装置1000的各部分电压。这些各部分电压中包含以下电压中的至少一个:向马达驱动装置1000输入的交流输入电压、整流器101与马达电力供给用变换器102之间的直流母线电压、以及用于驱动包括被设于马达驱动装置1000内的电流控制部39在内的控制装置(马达控制部52)的控制电压。另外,图示的例子例示了对这些交流输入电压、直流母线电压以及控制电压全部进行检测的情况。

另外,马达驱动装置1000作为其控制系统包括校正值计算装置51和马达控制部52。

校正值计算装置51包括机械学习装置1和意图决定部13。

校正值计算装置51内的机械学习装置1包括状态观测部11和学习部12。

状态观测部11观测由以下数据构成的状态变量:从误差测量部36取得的转子位置指令与转子实际位置之间的误差相关的数据、从马达驱动装置内温度测量部37取得的马达驱动装置1000内的温度相关的数据、从马达温度测量部38取得的三相交流马达104的温度相关的数据、从电压检测部40取得的马达驱动装置1000的各部分电压相关的数据。观测到的状态变量作为训练数据集用于学习部12的学习。

学习部12内的回报计算部21基于由状态观测部11观测到的状态变量中的转子位置指令与转子实际位置之间的误差相关的数据来计算回报。例如,回报计算部21在针对三相交流马达104的转子位置指令与三相交流马达104的转子实际位置之间的误差比在当前误差之前由状态观测部11观测的误差小时增加回报,大时减少回报。另外,例如回报计算部21在针对三相交流马达104的转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围内时增加回报,在规定范围外时减少回报。

学习部12内的函数更新部22基于由状态观测部11观测出的状态变量以及由回报计算部21计算出的回报,更新用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数(行为价值表)。

校正值计算装置51内的意图决定部13基于学习部12按照训练数据集进行学习的结果,响应当前状态变量的输入,决定电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。在本实施例中,作为一例,学习算法使用了强化学习,因此基于由学习部12内的回报计算部21算出的回报,学习部12内的函数更新部22更新用于变更电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数,意图决定部13基于更新后的函数,选择能够获得最多回报的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。另外,作为能够获得最多回报的校正值,意图决定部13可以选择电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值中的一者、或者两者、或者它们全部。

马达控制部52包括电流反馈偏移校正部32、电流反馈相间不平衡校正部33、死区用电流校正部34以及电流控制部39。

马达控制部52内的电流反馈偏移校正部32使用由意图决定部13决定的电流反馈偏移校正值,校正由电流检测部31检测出的电流反馈值中包含的偏移部分。

马达控制部52内的电流反馈相间不平衡校正部33使用由意图决定部13决定出的电流反馈相间不平衡校正值,校正由电流检测部31检测出的电流反馈值的相间不平衡。

马达控制部52内的死区用电流指令校正部34使用由意图决定部13决定出的死区用电流指令校正值来校正电流指令,以补偿因开关死区引起的电流减少部分。即,向最初的电流指令追加死区用电流指令校正值。

马达驱动装置52内的电流控制部39以校正后的电流指令与电流反馈值相等的方式生成用于控制马达电力供给用变换器102的开关元件的开关动作的驱动指令(例如PWM控制信号)。利用生成的驱动指令对马达电力供给用变换器102的内部的开关元件进行开闭驱动,将直流母线的直流电压变换为交流电压并向三相交流马达104供给交流电流。三相交流马达104以从马达电力供给用变换器102输出的交流电力为驱动电力来进行动作。通过驱动三相交流马达104来驱动例如机床的可动部。

另外,除上述之外,马达控制部52还包括基于由位置检测部35检测出的转子实际位置和由位置指令作成部作成的位置指令来作成速度指令的速度指令作成部、以及基于由安装于三相交流马达104的速度检测部检测出的与三相交流马达104的转子速度相关的信息(速度反馈值)和由速度指令作成部作成的速度指令来作成电流指令的电流指令作成部,在图5省略了图示。

图6是表示实施例的包括应用了强化学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的动作流程的流程图。

通常,在强化学习的情况下,随机选择行为的初始值。在实施例中,在步骤S201,随机选择作为行为的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。

在步骤S202,马达控制部52内的电流控制部39根据基于设定后的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值进行了校正的电流反馈值以及电流指令来进行电流控制,使用三相交流马达104的动作程序、马达电力供给用变换器102的三相交流马达104侧的交流电流或者交流电压和/或三相交流马达104的转速等,作为用于控制三相交流马达104的速度、扭矩、或者转子的位置的驱动指令,指示马达电力供给用变换器102进行将交流电力变换为直流电力的动力运行动作(顺变换动作)以及将直流电力变换为交流电力的再生动作(逆变动作)中的某一个。由此驱动三相交流马达104。这期间,电流检测部31检测从马达电力供给用变换器102流向三相交流马达104的UVW三相的实际电流中的两相部分(例如U相实际电流以及V相实际电流)并将其作为电流反馈值输出,位置检测部35检测三相交流马达104的转子实际位置,误差测量部36测量转子位置指令与转子实际位置之间的误差,马达驱动装置内温度测量部37测量马达驱动装置1000内的温度,马达温度测量部38测量三相交流马达104的温度,电压检测部40检测马达驱动装置1000的各部分电压(向马达驱动装置1000输入的交流输入电压、整流器101与马达电力供给用变换器102之间的直流母线电压、以及用于驱动包括被设于马达驱动装置1000内的电流控制部39在内的马达控制部52的控制电压)。

在步骤S203,状态观测部11观测由以下数据构成的状态变量:从误差测量部36取得的转子位置指令与转子实际位置之间的误差相关的数据、从马达驱动装置内温度测量部37取得的马达驱动装置1000内的温度相关的数据、从马达温度测量部38取得的三相交流马达104的温度相关的数据、从电压检测部40取得的马达驱动装置1000的各部分电压相关的数据。

在步骤S204,状态观测部11基于转子位置指令与转子实际位置之间的误差相关的数据,判断该误差是否在规定范围内。在由状态观测部11判断为转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围内时,在步骤S205,回报计算部21增加回报。另一方面,在由状态观测部11判断为转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围外时,在步骤S206,回报计算部21减少回报。另外,在图6所示的例子中,回报计算部21在转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围内时增加回报,在规定范围外时减少回报,但是作为其替代例,也可以是,回报计算部21在针对三相交流马达104的转子位置指令与三相交流马达104的转子实际位置之间的误差比在当前误差之前由状态观测部11观测的误差小时增加回报,大时减少回报。

在步骤S207,函数更新部22基于由状态观测部11观测出的状态变量以及由回报计算部21算出的回报,更新用于变更电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的函数。

在接下来的步骤S208,意图决定部13基于在步骤S207更新后的函数,选择能够获得最多回报的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。之后,返回步骤S202,这以后,反复执行步骤S202~S208的处理。由此,机械学习装置1学习能够容易地使针对三相交流马达104的转子位置指令与转子实际位置之间的误差最小化的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。另外,训练数据集也可以从多个马达驱动装置1000取得,在该情况下,学习部12按照从多个马达驱动装置1000取得的训练数据集,反复执行步骤S201~S208的处理,学习电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。从多个马达驱动装置1000取得训练数据集能够提高机械学习装置1的学习精度。

在上述实施例中,机械学习装置1构成为学习使转子位置指令与转子实际位置之间的误差最小化、即改善进给顺畅的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值。这些校正值中,死区用电流指令校正值用于对电流指令进行校正,以补偿因马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区引起的电流减少部分。作为上述实施例的变形例,也可以是,替代上述死区用电流指令校正值,机械学习装置1学习死区用时间段校正值,死区用时间段校正值用于校正与使被设于马达驱动装置内的马达电力供给用变换器的同一相内的上下各桥臂的开关元件不同时打开的开关死区相对应的时间段。死区用时间段校正值用于调整与开关死区相对应的时间段。在本变形例中,机械学习装置1学习使与开关死区相对应的时间段在不变为零的范围内尽可能地最小化的死区用时间段校正值。

对于本变形例的机械学习装置1,表示其构成的框图与上述图1及图3所示内容相同,表示其动作流程的流程图与上述图2及图4所示内容相同,因此省略了图示。

图7是表示包括实施例的变形例的机械学习装置的马达驱动装置的原理框图。在本变形例中,对利用马达驱动装置1001控制三相交流马达104的情况进行说明。

本变形例的马达驱动装置1001作为其主电路构成包括整流器101、马达电力供给用变换器102以及直流母线电容器105。在马达驱动装置1000的交流输入侧连接有三相的交流电源103,在马达驱动装置1000的交流电动机侧连接有三相交流马达104。这些主电路构成的部分与图5所示实施例相同,因此省略了说明。

另外,本变形例的马达驱动装置1001作为其测量系统包括电流检测部31、位置检测部35、误差测量部36、马达驱动装置内温度测量部37、马达温度测量部38以及电压测量部40。这些测量系统的部分与图5所示的实施例相同,因此省略了说明。

另外,马达驱动装置1001作为其控制系统包括校正值计算装置61和马达控制部52。校正值计算装置61包括机械学习装置1以及意图决定部15。校正值计算装置61内的机械学习装置1包括状态观测部11和学习部14。

状态观测部11与图5所示的实施例相同,因此省略了说明。

学习部14按照由状态变量构成的训练数据集来学习用于对电流反馈值中包含的偏移部分进行校正的电流反馈偏移校正值、用于对电流反馈值的相间不平衡进行校正的电流反馈相间不平衡校正值、以及用于校正与使被设于马达驱动装置内的马达电力供给用变换器102的同一相内的上下各桥臂的开关元件不同时打开的开关死区相对应的时间段死区用时间段校正值。学习部14包括回报计算部21以及函数更新部22,回报计算部21以及函数更新部22与图5所示的实施例相同,因此省略了说明。

校正值计算装置61内的意图决定部15基于学习部12按照训练数据集进行学习的结果,响应当前状态变量的输入,决定电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值。在学习算法为强化学习的情况下,基于由学习部14内的回报计算部21算出的回报,学习部14内的函数更新部22更新用于变更电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值的函数,意图决定部15基于更新后的函数,选择能够获得最多回报的电流反馈偏移校正值、电流反馈相间不平衡校正值、以及死区用时间段校正值。另外,作为能够获得最多回报的校正值,意图决定部15可以选择电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值中的一者、或者两者、或者它们全部。

马达控制部52包括电流反馈偏移校正部32、电流反馈相间不平衡校正部33、死区用时间段校正部41以及电流控制部39。其中,电流反馈偏移校正部32、电流反馈相间不平衡校正部33以及电流控制部39与图5所示的实施例相同,因此省略了说明。

马达控制部52内的死区用时间段校正部41使用死区用时间段校正值,来校正与使马达电力供给用变换器102的同一相内的上下各桥臂的开关元件不同时打开的开关死区相对应的时间段。

马达驱动装置52内的电流控制部39以使校正后的电流指令与电流反馈值相等的方式生成用于控制马达电力供给用变换器102的开关元件的开关动作的驱动指令(例如PWM控制信号)。当时使用的开关死区是由死区用时间段校正部41使用死区用时间段校正值对该时间段进行了校正(调整)而得到的。利用生成的驱动指令对马达电力供给用变换器102的内部的开关元件进行开闭驱动,将直流母线的直流电压变换为交流电压并向三相交流马达104供给交流电流。三相交流马达104以从马达电力供给用变换器102输出的交流电力为驱动电力来进行动作。通过驱动三相交流马达104来驱动例如机床的可动部。

另外,除上述之外,马达控制部52还包括速度指令作成部以及电流指令作成部,在图7中省略了图示。

图8是表示包括实施例的变形例的机械学习装置的马达驱动装置的动作流程的流程图。

在本变形例中,首先,在步骤S301,随机选择作为行为的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值。

在步骤S302,马达控制部52内的电流控制部39根据基于设定后的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值进行了校正的电流反馈值以及电流指令来进行电流控制,使用三相交流马达104的动作程序、马达电力供给用变换器102的三相交流马达104侧的交流电流或者交流电压和/或三相交流马达104的转速等,作为用于控制三相交流马达104的速度、扭矩、或者转子的位置的驱动指令,指示马达电力供给用变换器102进行将交流电力变换为直流电力的动力运行动作(顺变换动作)以及将直流电力变换为交流电力的再生动作(逆变动作)中的某一个。由此驱动三相交流马达104。这期间的电流检测部31、位置检测部35、误差测量部36、马达驱动装置内温度测量部37、马达温度测量部38以及电压检测部40的动作如与图6的步骤S202相关联地进行了说明的那样。

在步骤S303,状态观测部11观测由从误差测量部36取得的转子位置指令与转子实际位置之间的误差的相关数据、从马达驱动装置内温度测量部37取得的马达驱动装置1000内的温度的相关数据、从马达温度测量部38取得的三相交流马达104的温度的相关数据、从电压检测部40取得的马达驱动装置1000的各部分电压的相关数据构成的状态变量。

在步骤S304,状态观测部11基于转子位置指令与转子实际位置之间的误差的相关数据来判断该误差是否在规定范围内。在由状态观测部11判断为转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围内时,在步骤S305,回报计算部21增加回报。另一方面,在由状态观测部11判断为转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围外时,在步骤S306,回报计算部21减少回报。另外,在图8所示的例子中,回报计算部21在转子位置指令与三相交流马达104的转子实际位置之间的误差在规定范围内时增加回报,在规定范围外时减少回报,但是,作为其替代例,也可以是,回报计算部21在针对三相交流马达104的转子位置指令与三相交流马达104的转子实际位置之间的误差比在当前误差之前由状态观测部11观测的误差小时增加回报,大时减少回报。

在步骤S307,函数更新部22基于由状态观测部11观测出的状态变量以及由回报计算部21算出的回报,更新用于变更电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值的函数。

在接下来的步骤S308,意图决定部15基于在步骤S307更新后的函数,选择能够获得最多回报的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值。之后,返回步骤S302,在这以后,反复执行步骤S302~S308的处理。由此,机械学习装置1学习能够容易地使针对三相交流马达104的转子位置指令与转子实际位置之间的误差最小化的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值。另外,训练数据集也可以从多个马达驱动装置1001取得,在该情况下,学习部14按照从多个马达驱动装置1001取得的训练数据集,反复执行步骤S301~S308的处理,学习电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用时间段校正值。从多个马达驱动装置1001取得训练数据集能够提高机械学习装置1的学习精度。

接着,对上述实施例及其变形例的机械学习装置1的学习算法进一步详细地说明。机械学习装置1具有这样的功能:从输入装置的数据的集合通过解析而提取其中的有用的规则、知识表现、判断基准等,输出其判断结果,并进行知识的学习。如上所述,机械学习装置1的学习算法大致分为“有教师学习”、“无教师学习”、“强化学习”。进而,还具有在实现这些方法的基础上、学习特征量本身的提取的被称为“深层学习的方法。另外,这些机械学习(机械学习装置1)例如能够通过应用GPGPU(General-Purpose computing on Graphics Processing Units)、大规模PC群等来实现。

“有教师学习”是指:能够通过将某输入与结果(标签)的数据组大量地给予机械学习装置1来学习这些数据集所具有的特征,归纳获得从输入推断结果的模型即其相关性。将该有教师学习应用于本实施方式的情况下,能够用于计算电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的部分等。能够使用后述神经网络等的算法来实现。

“无教师学习”是这样的方法:只将输入数据大量给予机械学习装置1,从而学习输入数据如何分布,学习即使不给予相应的教师输出数据,也能针对输入数据进行压缩、分类、整形等的装置。例如,能够对这些数据集所具有的特征相似者进行聚类等。使用该结果,设置某些基准,进行使其最佳化这样的输出分配,从而能够实现输出的预测。

另外,作为“无教师学习”与“有教师学习”的中间的问题设定,还有被称为“半有教师学习”的方法,其只存在一部分的输入与输出的数据组,除此之外仅为输入数据的情况属于“半有教师学习”。在本实施方式中,在无教师学习中使用实际上不使马达驱动装置动作也能够取得的数据(例如模拟数据),能够高效地进行学习。

首先,说明机械学习装置1的学习算法为强化学习的例子。

强化学习的问题设定如下。

·校正值计算装置观测环境状态,决定行为。

·环境按照某些规则发生变化,并且,自身的行为还会使环境变化。

·每次行为都返回回报信号。

·想要最大化的是将来的(折扣)回报的合计。

·从完全不知道或者并非完全知道行为导致的结果的状态起开始学习。即,校正值计算装置实际动作后,首次将其结果作为数据来获得。也就是说,需要一边试错一边探索最佳行为。

·也可以像模仿人的动作那样以事前进行了学习(上述的有教师学习、反向强化学习这样的方法)的状态为初始状态,从好的开始点开始学习。

这里,“强化学习”是这样的学习方法:并非仅进行判断、分类,还学习行为,由此依据行为给予环境的相互作用,来学习适当的行为,即,使将来能够获得的回报最大化。在本实施方式中,这表示能够获得使转子位置指令与转子实际位置之间的误差最小化(使进给顺畅最佳化)的、对未来造成影响的行为。例如在Q学习中会继续说明,但不局限于此。

Q学习是学习在某环境状态s下选择行为a的价值Q(s,a)的方法。也就是说,在某状态s时,将价值Q(s,a)最高的行为a作为最佳行为来选择即可。但是,最初关于状态s与行为a的组合,完全不知道价值Q(s,a)的正确值。因此,智能体(行为主体)在某状态s下选择各种行为a,对当时的行为a给予回报。由此,智能体学习较好的行为选择、即正确的价值Q(s,a)。

进而,行为的结果是想要使将来能够获得的回报的合计最大化,因此以最终成为Q(s,a)=E[Σγtrt]为目标。这里,随着最佳行为,状态发生了变化时取得期望值,因为不知道这个,所以一边探索一边学习。这样的价值Q(s,a)的更新式例如能够由式1来表示。

在上述式1中,st表示时刻t的环境的状态,at表示时刻t的行为。由于行为at,状态变化为st+1。rt+1表示由于该状态的变化得到的回报。另外,带有max的项是在状态st+1下选择了当时所知道的Q值最高的行为a的情况下的Q值乘以γ的值。γ是0<γ≤1的参数,称为折扣率。α是学习系数,为0<α≤1的范围。

式1表示基于试行at的结果返回的回报rt+1来更新状态st下的行为at的评价值Q(st,at)的方法。示出了:与状态s下的行为a的评价值Q(st,at)相比,回报rt+1+行为a导致的下一状态下的最佳行为max a的评价值Q(st+1,max at+1)较大的情况下,增大Q(st,at),相反Q(st+1,max at+1)较小的情况下,将Q(st,at)也减小。也就是说,使某状态下的某行为的价值接近作为结果立即返回的回报和该行为导致的下一状态下的最佳行为的价值。

这里,Q(s,a)在计算机上的表现方法有:针对所有的状态行为对(s,a),将其值以表(行为价值表)的方式保持的方法;准备能近似得出Q(s,a)的函数的方法。后者的方法中,上述更新式能够利用随机梯度下降法等方法实现调整近似函数的参数。作为近似函数,能够使用后述神经网络。

另外,作为有教师学习、无教师学习以及强化学习中的价值函数的近似算法,能够使用神经网络。神经网络由实现模仿例如图9所示那样的神经元的模型的神经网络的运算装置及存储器等来构成。图9是表示神经元的模型的示意图。

如图9所示,神经元输出针对多个输入x(在图9中,作为一例,是输入x1~输入x3)的输出y。各输入x1~x3乘以与该输入x对应的权值w(w1~w3)。由此,神经元输出由式2表现出来的输出y。其中,输入x、输出y及权值w都是矢量。另外,在下述式2中,θ是偏置,fk是激活函数。

接着,参照图10说明具有上述神经元组合而成的三层权值的神经网络。图10是表示具有D1~D3的三层权值的神经网络的示意图。

如图10所示,从神经网络的左侧输入多个输入x(这里,作为一例,是输入x1~输入x3),从右侧输出结果y(这里,作为一例,是结果y1~结果y3)。

具体而言,输入x1~输入x3分别针对三个神经元N11~N13乘以相应的权值后输入。与这些输入相乘的权值统一标记为w1。

神经元N11~N13分别输出z11~z13。在图10中,这些z11~z13统一标记为特征矢量z1,可以视为是将输入矢量的特征量提取后的矢量。该特征矢量z1是权值w1与权值w2之间的特征矢量。z11~z13分别针对两个神经元N21、N22乘以相应的权值后输入。与这些特征矢量相乘的权值统一标记为w2。

神经元N21、N22分别输出z21、z22。在图10中,这些z21、z22统一标记为特征矢量z2。该特征矢量z2是权值w2与权值w3之间的特征矢量。特征矢量z21,z22分别针对三个神经元N31~N33乘以相应的权值后输入。与这些特征矢量相乘的权值统一标记为w3。

最后,神经元N31~N33分别输出结果y1~结果y3。

神经网络的动作具有学习模式和价值预测模式。例如,在学习模式下,使用学习数据集来学习权值w,使用该参数在预测模式下进行校正值计算装置的行为判断。另外,为了方便起见,写了预测,但是,显而易见,检测、分类、推论等各种各样的任务也可以。

这里,能够在预测模式下即时学习实际启动校正值计算装置而得到的数据,并将其反映到接下来的行为中(在线学习),还能够使用预先收集的数据组进行总结学习,以后一直以该参数进行检测模式(批量学习)。还能够每当中间数据积存某程度时插入学习模式。

另外,权值w1~w3能够利用误差反向传播法(反向传播:Back propagation)来进行学习。误差信息从右侧进入,流向左侧。误差反向传播法这样的方法:以减小输入x输入后的输出y与真正的输出y(教师)之间的差异的方式,调整(学习)各神经元的权值。

这样的神经网络能够进一步将层增加至3层以上(被称为深层学习)。能够仅从教师数据自动获得阶段性地进行输入的特征提取、并反馈结果运算的运算装置。

因此,为了实施上述Q学习,本实施方式的机械学习装置1例如如图5所示那样包括状态观测部11、学习部12以及意图决定部13。但是,如上所述,能够适用于本发明的机械学习方法并不局限于Q学习。即,能够应用机械学习装置能够使用的方法的“有教师学习”、“无教师学习”、“半有教师学习”以及“强化学习”等各种方法。另外,例如能够通过应用GPGPU、大规模PC组等来实现这些机械学习(机械学习装置1)。例如应用有教师学习的情况下,价值函数与学习模型相对应,回报与误差相对应。另外,作为该行为价值表,也能够使用用上述神经网络近似得出的函数,这在s以及a的信息量巨大时特别有效。

接着,说明机械学习装置1的学习算法为有教师学习的例子。另外,这里说明图5所示的学习使转子位置指令与转子实际位置之间的误差最小化的、即改善进给顺畅的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的机械学习装置1,但是对于图7所示的在与开关死区相对应的时间段不变为零的范围内尽可能地最小化的死区用时间段校正值的学习,也同样能够应用。

图11是表示实施例的包括应用了有教师学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置的原理框图。从图11与上述图5的比较能够明显看出,图11所示的应用了有教师学习的校正值计算装置以及包括该校正值计算装置的马达驱动装置相对于图5所示的应用了Q学习(强化学习)的校正值计算装置以及包括该校正值计算装置的马达驱动装置而言,还具有结果(标签)提供部42。另外,图11中的机械学习装置1包括状态观测部11、包含误差计算部23及学习模型更新部24的学习部16、以及意图决定部17。

在图11所示的包括应用了有教师学习的机械学习装置的校正值计算装置以及包括该校正值计算装置的马达驱动装置中,误差计算部23以及学习模型更新部24分别与图5所示的应用了Q学习的校正值计算装置以及包括该校正值计算装置的马达驱动装置中的回报计算部21以及函数更新部22相对应。但是,误差计算部23能够从结果提供部42输入结果(标签)。另外,对于其他构成,与上述图5一样,省略其说明。

结果提供部42向学习部16的误差计算部23提供(输入)带标签的数据(结果),误差计算部23接收来自状态观测部11的信号和来自结果提供部42的带标签的数据,来进行误差计算,并且,学习模型更新部24进行学习模型的更新。这里,结果提供部42在例如马达驱动装置1000进行的处理相同的情况下,例如,保持到使马达驱动装置1000驱动的预定日的前日为止得到的带标签的数据,在该预定日能够将结果提供部42保持的带标签的数据提供给误差计算部23。

也就是,也能够将通过在马达驱动装置1000的外部进行的模拟等得到的数据、或者其他马达驱动装置的带标签的数据通过存储卡、通信线路提供给该马达驱动装置1000的误差计算部23。并且,还可以是,结果提供部42由闪存(Flash Memory)等非易失性存储器构成,将结果提供部(非易失性存储器)42内置于学习部16,该结果提供部42所保持的带标签的数据直接供学习部16使用。

图11所示的马达驱动装置1000内的校正值计算装置51所包括的机械学习装置1的动作为:为了取得使转子位置指令与转子的实际位置之间的误差最小化(使进给顺畅最佳化)的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值,例如,误差计算部23根据从结果提供部42输入的结果,并基于状态变量导致的进给顺畅度来计算误差,进行学习模型更新部24的学习模型的更新。

另外,本发明的机械学习装置1不局限于应用上述强化学习(例如,Q学习)或者有教师学习,能够应用各种各样的机械学习的算法。

另外,在上述马达驱动装置1000中,进行机械学习装置1的学习处理时,作为马达驱动装置1000的动作状况,马达驱动装置1000内的温度的相关数据、三相交流马达104的温度的相关数据以及马达驱动装置1000的各部分电压的相关数据积累起来,因此还可以进一步设有这样的功能:基于这些积累数据,从马达驱动装置1000的现状的动作状况预测计算将来的马达驱动装置1000内的温度、三相交流马达104的温度、或者马达驱动装置1000的各部分电压。

上述状态观测部11、学习部12、14、16以及意图决定部13、15、17例如可以以软件程序形式构筑,或者也可以以各种电子电路和软件程序的组合构筑。在例如它们以软件程序形式构筑的情况下,使马达驱动装置1000内的运算处理装置按照该软件程序进行动作,从而能够实现上述各部的功能。或者,也可以是,将包括状态观测部11以及学习部12、14、16的机械学习装置1以写有用于实现各部的功能的软件程序的半导体集成电路的形式实现。或者,也可以是,以不仅包括具有状态观测部11以及学习部12、14、16的机械学习装置1还包括意图决定部13、15、17的形态实现写有用于实现各部的功能的软件程序的半导体集成电路。

另外,利用马达驱动装置1000为了三相交流马达104的驱动控制而原本包括的误差测量部36所取得的转子位置指令与转子实际位置之间的误差相关的数据、由马达驱动装置内温度测量部37测量出的马达驱动装置1000内的温度相关的数据、由马达温度测量部38测量出的三相交流马达104的温度相关的数据、以及由电压检测部40检测出的马达驱动装置1000的各部分电压的相关数据,来执行本发明的机械学习处理,因此不需要像以往技术那样设置新的硬件装置,因此也能够追加安装给现有的马达驱动装置来进行应用。在该情况下,可以将机械学习装置1、写有用于实现意图决定部13、15、17的各部的功能的软件程序的半导体集成电路组装于该现有的马达驱动装置,或者将机械学习装置1、用于实现意图决定部13、15、17的各部的功能的软件程序本身以追加的方式安装于该现有的马达驱动装置内的运算处理装置。另外,也可以是,将针对某一马达驱动装置学习电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值的机械学习装置1安装于另一马达驱动装置,针对该另一马达驱动装置对电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值进行再学习、更新。

采用本发明,可以实现一种能够容易地使针对三相交流马达的转子位置指令与转子实际位置之间的误差最小化的机械学习装置及方法以及包括该机械学习装置的校正值计算装置及马达驱动装置。

采用本发明,在马达驱动装置处于动作中的状态下,与马达驱动装置内的温度、三相交流马达的温度以及马达驱动装置的各部分电压这样的周围环境相应地,机械学习装置自行学习容易使转子位置指令与转子实际位置之间的误差最小化的电流反馈偏移校正值、电流反馈相间不平衡校正值以及死区用电流指令校正值来进行调整,即使周围环境发生变动也能够实时地变更各校正值,能够确切地使转子位置指令与转子实际位置之间的误差最小化。通常,已知有这些各校正值彼此相互影响的情况,但采用本发明,即使周围环境发生变动也能够实时地变更各校正值的最佳组合,因此,与没有考虑校正值相互之间的影响的以往技术相比,能够确切地使转子位置指令与转子实际位置之间的误差最小化。

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