本發(fā)明涉及學習對電動機的動作指令的機械學習方法、機械學習裝置以及具備該機械學習裝置的控制裝置以及電動機裝置。
背景技術(shù):
為了有效地執(zhí)行使用電動機的預(yù)期工序,希望能夠縮短周期時間。通過最優(yōu)化電動機的加速度或減速度(以下有時稱為“加減速”)而能夠縮短周期時間。一般,通過操作員指定電動機的加減速,所以實現(xiàn)最優(yōu)化有時大大依賴于操作員的知識乃至經(jīng)驗,另外試錯是不可缺少的。
使加減速的最優(yōu)化困難的其他原因是從控制電動機的控制裝置產(chǎn)生的熱。雖然電動機被控制為在不發(fā)生過熱的范圍進行動作,但是是否發(fā)生過熱也會根據(jù)電動機的周圍環(huán)境而不同。因此,為了確切地防止發(fā)生過熱,需要設(shè)想最極端的周圍環(huán)境來進行加減速的最優(yōu)化。其結(jié)果為,當周圍溫度低時,實際上電動機的動作沒有被最優(yōu)化,周期時間有增大的傾向。
根據(jù)發(fā)熱源的溫度來調(diào)整電動機的輸出的技術(shù)是公知的。例如推定用于驅(qū)動電動機的功率半導體模塊的溫度,并且當推定出的溫度超過了基準溫度時限制電動機的輸出的技術(shù)是公知的(參照日本特開2014-239631號公報)。
技術(shù)實現(xiàn)要素:
希望獲得一種根據(jù)周圍溫度使電動機有效地進行動作的控制裝置。
在本申請的優(yōu)選實施方式中,提供一種學習對電動機的動作指令的機械學習裝置,其具備:狀態(tài)觀測部,其觀測具備電動機以及控制該電動機的控制裝置的電動機裝置的周圍溫度、以及上述電動機的周期時間作為狀態(tài)變量;判定數(shù)據(jù)取得部,其取得判定在上述電動機裝置中是否發(fā)生了過熱的判定數(shù)據(jù);以及學習部,其按照根據(jù)上述狀態(tài)變量和上述判定數(shù)據(jù)的組合而生成的訓練數(shù)據(jù)集,學習對上述電動機的動作指令。
在本申請的優(yōu)選實施方式中,上述學習部具備:回報計算部,其根據(jù)上述周期時間和上述判定數(shù)據(jù)來計算回報;函數(shù)更新部,其根據(jù)上述回報來更新用于決定上述動作指令的函數(shù)。
在本申請的優(yōu)選實施方式中,上述回報計算部構(gòu)成為,在判定為上述電動機裝置中未發(fā)生過熱,并且上述周期時間小于預(yù)先決定的閾值時,增大回報;在判定為上述電動機裝置中發(fā)生了過熱時,或者上述周期時間是上述閾值以上時,降低回報。
在本申請的優(yōu)選實施方式中,上述函數(shù)更新部構(gòu)成為,按照上述回報來更新行為價值表。
在本申請的優(yōu)選實施方式中,上述學習部構(gòu)成為,按照對多個電動機裝置生成的訓練數(shù)據(jù)集來學習上述動作指令。
在本申請的優(yōu)選實施方式中,提供一種控制裝置,其具備:上述機械學習裝置;測定上述周圍溫度的溫度測定部;測定上述周期時間的時間測定部;根據(jù)上述學習部學習后的結(jié)果,來決定與當前的上述周圍溫度和當前的上述周期時間對應(yīng)的上述動作指令的意圖決定部。
在本申請的優(yōu)選實施方式中,提供一種電動機裝置,具備:上述控制裝置、通過上述控制裝置進行控制的電動機。
在本申請的優(yōu)選實施方式中,提供一種學習對電動機的動作指令的機械學習方法,包括以下步驟:觀測具備電動機和控制該電動機的控制裝置的電動機裝置的周圍溫度、以及上述電動機的周期時間作為狀態(tài)變量;取得判定在上述電動機裝置中是否發(fā)生了過熱的判定數(shù)據(jù);以及按照根據(jù)上述狀態(tài)變量和上述判定數(shù)據(jù)的組合而生成的訓練數(shù)據(jù)集,學習對上述電動機的動作指令。
附圖說明
通過參照附圖所示的本發(fā)明的例示性實施方式的詳細說明,能夠更加明確本發(fā)明的這些以及其他目的、特征以及優(yōu)點。
圖1是一個實施方式的電動機裝置的框圖。
圖2是表示機械學習裝置的學習過程的流程的流程圖。
圖3是表示神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)例的圖。
圖4是表示提供給電動機的電流與周期時間之間的關(guān)系的圖。
具體實施方式
以下,參照附圖說明本發(fā)明的實施方式。圖1是一個實施方式的電動機裝置1的框圖。電動機裝置1具備:電動機2、控制電動機2的控制裝置3、學習對電動機2的動作指令的機械學習裝置4、和散熱器5。
為了對機床或工業(yè)用機器人的旋轉(zhuǎn)軸賦予動力而使用電動機2。電動機2按照通過控制裝置3生成的動作指令而進行動作。動作指令包括:位置指令、速度指令、以及加速度指令。機械學習裝置4使用后述的機械學習的方法來學習與周圍溫度對應(yīng)的最佳的加速度指令。
控制裝置3是具備通過總線相互連接的CPU、存儲器以及接口的數(shù)字計算機。或者,控制裝置3可以是向電動機2提供動力的放大器,或者也可以是數(shù)字計算機和放大器的組合。以下,說明控制裝置3是數(shù)字計算機的例子。CPU為了實現(xiàn)控制裝置3的各種功能而執(zhí)行必要的運算處理。
存儲器包括ROM、RAM、以及非易失性存儲器等。ROM中存儲有控制控制裝置3的整體動作的系統(tǒng)程序。RAM中暫時存儲來自檢測裝置或者檢測電路的檢測信號以及CPU的運算結(jié)果等。非易失性存儲器中存儲控制電動機2的動作的動作程序以及參數(shù)等。
接口用于將控制裝置3與外部裝置例如輸入裝置和顯示裝置等相互連接,并在它們之間發(fā)送接收信號和數(shù)據(jù)。
如圖1所示,控制裝置3具備:溫度測定部31、指令生成部32、時間測定部33、以及判定部34。
溫度測定部31測定電動機裝置1的周圍溫度。在一個實施方式中,溫度測定部31通過測定散熱器5的溫度而取得周圍溫度。散熱器5用于釋放從電動機裝置1的發(fā)熱源發(fā)生的熱。散熱器5例如是為了與外部空氣進行熱交換而構(gòu)成的散熱片,其溫度對應(yīng)于電動機裝置1的周圍溫度而變化。因此,通過測定散熱器5的溫度,能夠間接地測定周圍溫度。
在另一實施方式中,溫度測定部31可以使用安裝在控制裝置3的殼體上的溫度傳感器來直接測定周圍溫度。這樣,在本說明書中,通過溫度測定部31測定的“周圍溫度”是指直接或間接地測定外部空氣溫度而得到的溫度?;蛘?,也可以根據(jù)與周圍溫度有關(guān)聯(lián)的其他物理量通過計算來求出“周圍溫度”。通過溫度測定部31測定出的周圍溫度被輸入給機械學習裝置4的狀態(tài)觀測部41。
指令生成部32按照存儲在非易失性存儲器中的動作程序和參數(shù)來生成對電動機2的動作指令??刂蒲b置3將與動作指令對應(yīng)的電力提供給電動機2。
時間測定部33測定按照從指令生成部32輸出的動作指令進行動作的電動機2的周期時間。可以針對動作程序的每個程序塊來計算周期時間。通過時間測定部33測定出的周期時間被輸入到機械學習裝置4的狀態(tài)觀測部41中。
判定部34判定在電動機裝置1中是否發(fā)生了過熱(以下有時稱為“過熱判定”)。判定部34使用檢測電路或檢測裝置來執(zhí)行過熱判定,該檢測電路或檢測裝置檢測在控制裝置3的放大器中使用的功率元件或其他發(fā)熱源的溫度?;蛘撸卸ú?4也可以使用檢測局部設(shè)定了溫度上限值的任意部位的溫度的檢測單元來執(zhí)行過熱判定。過熱判定的結(jié)果(以下有時稱為“判定數(shù)據(jù)”)被輸入到機械學習裝置4的判定數(shù)據(jù)取得部42中。
如圖1所示,機械學習裝置4具備:狀態(tài)觀測部41、判定數(shù)據(jù)取得部42、學習部43、以及意圖決定部46。
狀態(tài)觀測部41分別觀測從溫度測定部31發(fā)送的周圍溫度、以及從時間測定部33發(fā)送的周期時間,作為狀態(tài)變量。狀態(tài)變量從狀態(tài)觀測部41被輸入到學習部43中。
判定數(shù)據(jù)取得部42從控制裝置3的判定部34取得判定數(shù)據(jù)。判定結(jié)果用于在后述的回報計算部44中計算回報。
學習部43按照根據(jù)從狀態(tài)觀測部41發(fā)送的狀態(tài)變量和從判定數(shù)據(jù)取得部42發(fā)送的判定數(shù)據(jù)的組合而生成的訓練數(shù)據(jù)集,學習對電動機2的動作指令。
意圖決定部46根據(jù)學習部43學習后的結(jié)果,決定與當前的狀態(tài)變量對應(yīng)的對電動機2的動作指令、特別是加速度指令。指令生成部32將通過意圖決定部46決定的加速度指令賦予給電動機2。另外,作為在機械學習裝置4中包括的單元說明了意圖決定部46,但是也可以構(gòu)成為意圖決定部46被包括在控制裝置3中。另外也可以構(gòu)成為,機械學習裝置4包括在控制裝置3中??刂蒲b置3可以具備:溫度測定部31、指令生成部32、時間測定部33、判定部34、上述的意圖決定部46、以及不包括意圖決定部46的機械學習裝置4。
機械學習裝置4可以是不同于控制裝置3的數(shù)字計算機,或者也可以內(nèi)置在控制裝置3中。在后者的情況下,機械學習裝置4使用控制裝置3的CPU和存儲器來執(zhí)行機械學習。
在一個實施方式中,機械學習裝置4可以設(shè)置在遠離電動機2和控制裝置3的部位。此時,機械學習裝置4經(jīng)由網(wǎng)絡(luò)與控制裝置3連接?;蛘?,機械學習裝置4也可以存在于云服務(wù)器中。
本實施方式的機械學習裝置4按照公知的Q學習方法來執(zhí)行強化學習。機械學習裝置4根據(jù)求取在某狀態(tài)變量s(當前的周圍溫度以及當前的周期時間)時選擇了行為a(賦予給電動機2的動作指令)的情況下的行為價值Q(期待值)的行為價值函數(shù)Q(s、a),學習最佳的行為。
在學習的初始階段,針對某狀態(tài)變量s與行為a的組合而分配的行為價值Q是未知的。機械學習裝置4針對各種狀態(tài)變量s隨機地選擇行為a并執(zhí)行,對作為行為a的結(jié)果而賦予的回報進行累計,由此來更新行為價值函數(shù)Q(s、a)。通過式1表示更新行為價值函數(shù)Q(s、a)的一般式。
這里,st是時刻t的狀態(tài)變量。at是在時刻t執(zhí)行的行為。st+1是時刻t+1的狀態(tài)變量,換言之,是作為進行了行為at的結(jié)果而發(fā)生變化后的狀態(tài)變量。rt+1是與作為行為at的結(jié)果而發(fā)生變化的環(huán)境對應(yīng)地賦予的回報?!癿ax”的項表示狀態(tài)變量st+1的行為價值Q的最大值(即、對最佳行為a的行為價值)。γ是折扣率,被設(shè)定為滿足0<γ≤1(例如γ=0.9~0.99)。α是學習系數(shù),被設(shè)定為滿足0<α≤1(例如α=0.05~0.2)。
在通過式1表示的更新式中,如果時刻t+1的最佳行為a的行為價值大于在時刻t執(zhí)行的行為a的行為價值Q,則增大行為價值Q;相反的情況下,則縮小行為價值Q。換言之,更新行為價值函數(shù)Q(s、a),使得時刻t的行為a的行為價值Q接近時刻t+1的最佳的行為價值。由此,某環(huán)境的最佳的行為價值不斷地依次傳播給在那之前的環(huán)境的行為價值。
如果再次參照圖1,則學習部43具備回報計算部44和函數(shù)更新部45。
回報計算部44根據(jù)電動機2的周期時間和判定數(shù)據(jù)來計算回報r。例如在判定為未發(fā)生過熱,并且周期時間小于預(yù)先決定的的閾值時,使回報r增大(例如賦予回報“1”)。另一方面,當判定為發(fā)生了過熱時,或者周期時間為閾值以上時,降低回報r(例如賦予回報“-1”)。另外,也可以使用按照預(yù)定時間而大小不同的閾值。
函數(shù)更新部45按照回報計算部44所計算的回報,更新用于決定對電動機2的動作指令的函數(shù)。能夠按照訓練數(shù)據(jù)集,例如通過更新行為價值表來進行函數(shù)的更新。行為價值表是將任意的行為與其行為價值關(guān)聯(lián)起來以表的形式進行存儲的數(shù)據(jù)集。
接著,參照圖2所示的流程圖來說明更新行為價值Q(s、a)的強化學習方法。在步驟S201中,溫度測定部31測定散熱器5的溫度。在步驟S202中,時間測定部33測定電動機2的周期時間。
在步驟S203中,判定在電動機裝置1中是否發(fā)生了過熱。按照從判定部34輸出的判定數(shù)據(jù)來執(zhí)行步驟S203的判定。當步驟S203的判定結(jié)果是否定時,即判定為未發(fā)生過熱時,前進到步驟S204。
在步驟S204中,判定在步驟S202中取得的周期時間是否小于預(yù)先決定的閾值。當步驟S204的判定結(jié)果是肯定時(周期時間小于閾值時),前進到步驟S205。在步驟S205中,回報計算部44增大回報r,使得與賦予給電動機2的動作指令對應(yīng)的行為價值Q增大。
當步驟S203中的判定結(jié)果為肯定時,或者步驟S204中的判定結(jié)果為否定時,前進到步驟S206。在步驟S206中,回報計算部44降低回報r,使得與賦予給電動機2的動作指令對應(yīng)的行為價值Q下降。
在步驟S207中,函數(shù)更新部45根據(jù)步驟S205或步驟S206中計算出的回報r,更新行為價值函數(shù)Q(s、a)。之后,再次返回步驟S201,針對新選擇出的動作指令,再次執(zhí)行步驟S201~S207的處理??梢栽诿看巫兏鼊幼髦噶顣r執(zhí)行步驟S201~S207的處理,也可以以預(yù)定的周期重復(fù)執(zhí)行步驟S201~S207的處理。在機械學習的初始階段,可以針對隨機生成的加速度指令來執(zhí)行步驟S201~S207的處理。
在另一實施方式中,機械學習裝置4可以按照神經(jīng)網(wǎng)絡(luò)模型來執(zhí)行機械學習。圖3表示神經(jīng)網(wǎng)絡(luò)模型的例子。神經(jīng)網(wǎng)絡(luò)由如下構(gòu)成:包括1個神經(jīng)元x1、x2、x3、……、x1的輸入層;包括m個神經(jīng)元y1、y2、y3、……、ym的中間層(隱藏層);包括n個神經(jīng)元z1、z2、z3、……、zn的輸出層。另外,在圖3中,中間層只表示為1層,但也可以設(shè)置2層以上的中間層。
神經(jīng)網(wǎng)絡(luò)學習:電動機裝置1的周圍溫度、周期時間、以及有無發(fā)生過熱之間的關(guān)系性。神經(jīng)網(wǎng)絡(luò)按照根據(jù)狀態(tài)變量和判定數(shù)據(jù)而生成的訓練數(shù)據(jù)集,即通過有教師學習,來學習狀態(tài)變量與環(huán)境變化之間的關(guān)系性。根據(jù)本實施方式,在電動機控制裝置3或機械學習裝置4中包括的意圖決定部46構(gòu)成為,輸出層根據(jù)被輸入到神經(jīng)網(wǎng)絡(luò)的輸入層的狀態(tài)變量來決定最佳的動作指令。
根據(jù)上述實施方式的機械學習裝置以及機械學習方法,能夠根據(jù)電動機裝置1的周圍溫度來學習最佳的動作指令。圖4是表示提供給電動機2的電流與周期時間之間的關(guān)系的圖。圖中的實線表示在至少一個部位發(fā)生過熱的情況,虛線表示將使用上述機械學習而求出的動作指令賦予給電動機2的情況。
在比實線圖表更上側(cè)的區(qū)域A1中發(fā)生了過熱,電動機2被視為正進行異常動作,成為緊急停止或警報通知的對象。上述電動機控制裝置3或機械學習裝置4中包括的意圖決定部46是比實線圖表更下側(cè)的區(qū)域A2的范圍內(nèi),決定要接近與區(qū)域A1的邊界的動作指令。換言之,按照本實施方式,將在不會發(fā)生過熱的范圍內(nèi)能夠盡可能縮短周期時間的最佳動作指令賦予給電動機2。
如上所述,根據(jù)本實施方式,使用機械學習的結(jié)果,自動使對電動機的動作指令最佳化,因此不需要依賴操作員的知識或經(jīng)驗。進一步地,由于與周圍溫度對應(yīng)地生成最佳的動作指令,因此能夠始終使電動機的動作最佳化。另外,由于通過機械學習將決定最佳動作指令的過程自動化,因此不需要試錯,能夠降低操作員的負擔。
在一個實施方式中可以構(gòu)成為,學習部43按照針對多個電動機裝置1而生成的訓練數(shù)據(jù)集,學習動作指令。學習部43可以從在相同現(xiàn)場使用的多個電動機裝置1取得訓練數(shù)據(jù)集,或者也可以使用從在不同現(xiàn)場獨立運行的電動機裝置1收集到的訓練數(shù)據(jù)集來學習故障條件。
說明了使用強化學習以及神經(jīng)網(wǎng)絡(luò)進行機械學習的實施方式,但是也可以按照其他公知的方法例如遺傳編程、功能邏輯編程、支持向量機等來執(zhí)行機械學習。
以上,說明了本發(fā)明的各種實施方式,但是如果是本領(lǐng)域技術(shù)人員會認識到即使通過其他實施方式也能夠?qū)崿F(xiàn)本發(fā)明所要達到的作用效果。特別是能夠不脫離本發(fā)明的范圍地刪除或置換上述實施方式的結(jié)構(gòu)要素,或者能夠進一步附加公知的手段。另外,本領(lǐng)域技術(shù)人員明白即使通過任意地組合在本說明書中明示或暗示公開的多個實施方式的特征也能夠?qū)嵤┍景l(fā)明。
本發(fā)明的機械學習裝置以及機械學習方法,按照根據(jù)狀態(tài)變量與判定數(shù)據(jù)的組合而生成的訓練數(shù)據(jù)集,來學習對電動機的動作指令。由于將電動機裝置的周圍溫度和周期時間與是否發(fā)生過熱關(guān)聯(lián)起來而學習動作指令,因此能夠?qū)W習與周圍溫度對應(yīng)的最佳動作指令。
本發(fā)明的控制裝置以及電動機裝置按照與周圍溫度對應(yīng)地最佳化的動作指令來使電動機動作,因此能夠不發(fā)生過熱地縮短周期時間。