(57)【特許請求の範囲】
【請求項１】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記モータ自体についての複数の状態量は、前記モータの角度と、前記モータのトルクと、前記モータのうちの巻線および永久磁石のそれぞれの温度と、前記モータについての出力軸トルクと、前記モータの合計電流であって前記インバータまたはパワーアンプについての合計電流に関連付けられるものと、前記モータの各相ごとの個別電流であって前記インバータまたはパワーアンプについての各相ごとの個別電流に関連付けられるものと、前記モータのうちのステータの振動状態量とから成り、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記推定部は、その学習済の学習モデルを用いることにより、前記少なくとも１つの選択モータ状態量を推定するＡＩ搭載型モータ状態量推定システム。
【請求項２】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータ角度関連量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータ角度関連量を含み、
前記複数のモータ状態量推定用センサは、前記モータの角度をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ角度関連量を推定するＡＩ搭載型モータ状態量推定システム。
【請求項３】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータトルク関連量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータトルク関連量を含み、
前記複数のモータ状態量推定用センサは、前記モータのトルクをダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータトルク関連量を推定するＡＩ搭載型モータ状態量推定システム。
【請求項４】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量は含むが、前記モータの温度は含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータの温度を含み、
前記複数のモータ状態量推定用センサは、前記モータの温度をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータの温度を推定するＡＩ搭載型モータ状態量推定システム。
【請求項５】
前記モータの温度は、前記モータのうち巻線の温度および／または磁石の温度を含む請求項４に記載のＡＩ搭載型モータ状態量推定システム。
【請求項６】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータについての出力軸トルクを含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記出力軸トルクを含み、
前記複数のモータ状態量推定用センサは、前記出力軸トルクをダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体についての前記出力軸トルクを推定するＡＩ搭載型モータ状態量推定システム。
【請求項７】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータの合計電流であって前記インバータまたはパワーアンプについての合計電流に関連付けられるものと、前記モータの各相ごとの個別電流であって前記インバータまたはパワーアンプについての各相ごとの個別電流に関連付けられるものとを含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記合計電流と、前記各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記複数のモータ状態量推定用センサは、前記合計電流をダイレクトに測定するセンサと、前記各相ごとの個別電流をダイレクトに測定するセンサとを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記合計電流と前記各相ごとの個別電流とを推定するＡＩ搭載型モータ状態量推定システム。
【請求項８】
さらに、
前記各相ごとの個別電流であって前記推定部によって推定されたものに基づき、前記インバータもしくはパワーアンプおよび／または前記モータにおけるいずれの相に故障が発生している可能性があるか否かを、故障している可能性があるいずれかの相に関連付けて判定する故障診断を行う故障診断部を含む請求項７に記載のＡＩ搭載型モータ状態量推定システム。
【請求項９】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータにおけるステータの振動状態量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記ステータの振動状態量を含み、
前記複数のモータ状態量推定用センサは、前記ステータの振動状態量をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記ステータの振動状態量を推定するＡＩ搭載型モータ状態量推定システム。
【請求項１０】
さらに、
前記ステータの振動状態量であって前記推定部によって推定されたものに基づき、前記モータの寿命の末期を推定し、その時期を事前に告知する寿命予測部を含む請求項９に記載のＡＩ搭載型モータ状態量推定システム。
【請求項１１】
前記機械学習は、前記ステータの振動状態量であって、前記モータに設置される加速度センサおよび／またはトルクセンサを用いて測定されたものを用いて行われる請求項９または１０に記載のＡＩ搭載型モータ状態量推定システム。
【請求項１２】
前記モータは、巻線，鉄心および永久磁石を含み、
前記モータの温度は、前記巻線および前記永久磁石のうちの少なくとも１つの温度を含む請求項４に記載のＡＩ搭載型モータ状態量推定システム。
【請求項１３】
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ・コントローラに実装される機械学習モデルを設計して構築するモータモデル用機械学習方法であって、
前記機械学習モデルは、請求項１ないし１２のいずれかに記載の学習モデルであり、
当該方法は、
前記モータを電磁気学的側面からモデリングし、電圧方程式を用いて記述するモータモデルを構築する第１ステップと、
前記モータおよび負荷より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する第２ステップと、
前記モータモデルの特性および前記運動モデルの特性に基づき、前記モータ駆動系および前記運動系について複数の状態変数を選択する第３ステップと、
前記機械学習モデルの性能要件に基づき、前記選択された複数の状態変数から、前記機械学習モデルにとっての複数の入力変数および少なくとも１つの出力変数を選択する第４ステップと、
前記機械学習モデルの性能要件に基づき、前記機械学習モデルのネットワーク構成を構築する第５ステップと、
前記選択された少なくとも１つの出力変数の特性に基づき、前記機械学習モデルのための複数の教師データセットを取得する第６ステップと、
前記取得された複数の教師データセットを用いて前記機械学習モデルのための機械学習を実行し、それにより、前記機械学習モデルを構築する第７ステップと
を含むモータモデル用機械学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気エネルギーを運動エネルギーに変換するモータの状態量を取得する技術に関し、モータに搭載されるセンサに代えて機械学習モデル（ＡＩ）を用いることにより、センサレス・パラメータ推定法によって特定のモータ状態量を取得する技術および／または前記機械学習モデルを構築する技術に関する。
【背景技術】
【０００２】
電気エネルギーを運動エネルギーに変換するために、電気的に駆動されるモータが使用される。この種のモータは、ますます拡大する種々の用途を有しており、そのような用途としては、例えば、自動車の如き移動体の駆動源や、ロボット、工作機械、搬送機械、荷役機械、空調機器、事務機器の如き運動発生装置の駆動源（アクチュエータ）がある。
【０００３】
例えば、自動車という用途においては、モータのみを駆動源として搭載する形式であるか、モータと燃焼機関とをいずれも駆動源として搭載する形式であるかを問わず、モータを駆動源として自動車に搭載することが普及している。この用途においては、モータの種類やモータが使用される環境の如何を問わず、モータを思い通りに制御することがますます必要となってきている。
【０００４】
モータを使用する場合には、そのモータを制御する制御系の設計が重要である。また、モータを精度よく制御するためには、モータの入出力特性に適合する制御系の設計が必要である。
【０００５】
さらに、モータを精度よく制御するためには、モータまたはそれを主体とするモータ駆動系全体の実状を正確に監視し、その結果を踏まえてモータの制御信号（例えば、モータ電流指令値、インバータ／パワーアンプ電圧指令値など）を決定することが重要である。具体的には、モータまたはそれを主体とするモータ駆動系に関する状態量すなわち状態変数の実際値を精度よくリアルタイムに取得することが重要である。
【０００６】
また、モータのための制御系を設計するために、実際のモータを使用することが困難である場合がある。この場合には、その実モータの入出力特性を模擬する計算を行う仮想モータが実モータの代わりに使用され、その仮想モータを用いて、実モータのための制御系が設計される場合もある（例えば、特許文献１参照。）。
【０００７】
さらに、近年、人工知能（ＡＩ）に関し、ニューラルネットワークおよびディープラーニングなどの技術が急速に進歩し、その結果、人工知能を用いた推論システムの実用化が急速に普及している。
【０００８】
そして、ＡＩが搭載されたモータ駆動系も既に提案されている（例えば、特許文献２および３参照。）。
【０００９】
特許文献２に開示されているモータ駆動系は、機械学習装置を備えており、その機械学習装置は、状態観測部と学習部とを有するように構成される。その状態観測部は、当該モータ駆動系についての複数の入力変数（モータ駆動系における各構成要素の状態変数）を検出するために、温度センサ、電流センサ、電圧センサおよびモータ位置センサを有する。
【００１０】
特許文献３には、モータの位置すなわち回転角度を検出するためにロータリーエンコーダが使用されることが開示されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１４−２１７０８６号公報
【特許文献２】特許第６２４３３８５号公報
【特許文献３】特許第６５６７２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
前述のように、モータ駆動系において、制御対象（例えば、モータなど）の状態量すなわち状態変数を取得するために、一般に、センサが用いられる。センサは、取得することが必要な状態量をダイレクトに、すなわち、別の測定値からの推定なしで取得することができるため、状態量についての高精度かつリアルタイムな取得に適している。
【００１３】
しかしながら、モータ駆動系について取得することが必要な複数の状態量をそれぞれ検出することが可能な複数のセンサのすべてを当該モータ駆動系に搭載することが困難ないしは不可能なことがある。
【００１４】
それは、例えば、センサをモータに設置するのに必要なスペースが増加するという問題、センサ自体が精密機械であるために高価であるという問題、モータへのセンサの設置不良という問題、センサ自体の機械的故障（信号線の断線、耐環境性など）という問題などがあるからである。
【００１５】
モータ駆動系に搭載されることが可能なセンサの例として、モータの角度（角度位置、回転位置）を検出する角度センサ（位置センサ）がある。角度センサとしては、例えば、前述のロータリーエンコーダやレゾルバがある。それら例示的な角度センサは、機械的な位置センサに分類される。
【００１６】
モータ駆動系におけるモータに角度センサを搭載することが可能であれば、理論的には、その角度センサにより、モータの全回転速度域においてモータ角度を精度よく測定できる。
【００１７】
しかし、実際には、角度センサは、例えば、取付スペースに関する問題、コストに関する問題などがあるために、実用上は（試験品ならともかく実機としては、量産段階では）、モータに搭載することが困難である。
【００１８】
そのため、モータ駆動系においては、モータ角度が、モータの別の状態量の測定値からの推定によって取得される場合がある。その手法の一つとして、モータの電圧や電流、磁力、トルクなどをセンサによって検出し、その電流検出値からモータ角度が推定される。
【００１９】
図２５には、モータの回転速度とモータに発生するトルクおよび誘起電圧との関係の一例がグラフで表されている。角度センサを用いずにモータ角度（「モータ位置」とも称する）を推定する方法は、センサレス・パラメータ計測（推定）法とも称される。
【００２０】
主なセンサレス・パラメータ計測法は、誘起電圧を利用する計測方式と、高周波信号を注入する計測方式（高調波電圧重畳法など）とに大別される。
【００２１】
しかし、誘起電圧を利用する計測方式は、モータの停止時および低速域では、誘起電圧が発生しないかまたは微弱であるため、それらのモータ速度域においては、モータ位置推定法としては不適当である。
【００２２】
また、高周波信号を注入する計測方式は、モータの突極性（高周波特性）を利用して、モータの回転角（位置）を推定するものである。しかし、この計測方式は、注入される高周波の影響によってモータが振動する場合があるという問題がある。また、モータの高速回転域においては、位置推定誤差が増加する場合があるという問題がある。
【００２３】
そのため、モータ位置を上述の複数のセンサレス・パラメータ計測法によって取得するためには、各モータ速度域ごとに計測方式を異ならせることが必要である。その結果、この場合には、必要な信号処理が複雑となるという問題がある。
【００２４】
以上説明した事情を背景として、本発明は、モータに搭載されるセンサに代えて機械学習モデル（ＡＩ）を用いることにより、センサレス・パラメータ推定法によってモータの特定のモータ状態量（「状態変数」とも称される。）を取得し、および／または前記機械学習モデルを構築することを課題としてなされたものである。
【課題を解決するための手段】
【００２５】
その課題を解決するために、本発明の一側面によれば、電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記モータ自体についての複数の状態量は、前記モータの角度と、前記モータのトルクと、前記モータのうちの巻線および永久磁石のそれぞれの温度と、前記モータについての出力軸トルクと、前記モータの合計電流であって前記インバータまたはパワーアンプについての合計電流に関連付けられるものと、前記モータの各相ごとの個別電流であって前記インバータまたはパワーアンプについての各相ごとの個別電流に関連付けられるものと、前記モータのうちのステータの振動状態量とから成り、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記推定部は、その学習済の学習モデルを用いることにより、前記少なくとも１つの選択モータ状態量を推定するＡＩ搭載型モータ状態量推定システムが提供される。
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。
【００２６】
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。
【００２７】
（１）  電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系についての複数の入力変数から、前記モータ駆動系についての少なくとも１つの状態量を少なくとも１つの出力変数として推定するシステムであって、
それぞれのセンサを用いて前記複数の入力変数を測定する測定部と、
前記モータを停止または回転させた場合の前記モータ駆動系の前記少なくとも１つの状態量を推定するための機械学習を行った学習済みの学習モデルに、前記測定された複数の入力変数を入力することにより、前記少なくとも１つの状態量を前記学習モデルから前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数の入力変数は、前記少なくとも１つの状態量を含まず、
前記測定部は、前記少なくとも１つの状態量を測定するためのセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記少なくとも１つの状態量を取得するＡＩ搭載型モータ状態量推定システム。
【００２８】
（２）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータ角度関連量を含まず、
前記少なくとも１つの出力変数は、前記モータ角度関連量を含み、
前記測定部は、前記モータの角度を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータ角度関連量を取得する（１）項に記載のＡＩ搭載型モータ状態量推定システム。
【００２９】
この出願書類の全体を通じ、それぞれの物理量の名称に後付けされた「関連量」という用語は、その物理量の絶対値と、時間微分値と、時間積分値とのうちの少なくとも１つを意味する。
【００３０】
（３）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータトルク関連量を含まず、
前記少なくとも１つの出力変数は、前記モータトルク関連量を含み、
前記測定部は、前記モータのトルクを測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータトルク関連量を取得する（１）または（２）項に記載のＡＩ搭載型モータ状態量推定システム。
【００３１】
（４）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータ駆動系のうち、前記モータの特性が他の位置より温度によって敏感に変動する特性敏感位置の温度であってセンサによって測定することが実用的ではないものを含まず、
前記少なくとも１つの出力変数は、前記特性敏感位置の温度を含み、
前記測定部は、前記特性敏感位置の温度を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記特性敏感位置の温度を取得する（１）ないし（３）項のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
【００３２】
（５）  前記特性敏感位置は、前記モータのうち巻き線が配置される位置および／または磁石が配置される位置を含む（４）項に記載のＡＩ搭載型モータ状態量推定システム。
【００３３】
（６）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータについての出力軸トルクと、前記モータに連結される外部負荷から作用する外部負荷トルクとを含まず、
前記少なくとも１つの出力変数は、前記出力軸トルクと前記外部負荷トルクとを、それぞれ互いに独立した変数として含み、
前記測定部は、前記出力軸トルクを測定するセンサと、前記外部負荷トルクを測定するセンサとを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記出力軸トルクと前記外部負荷トルクとを取得する（１）ないし（５）項のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
【００３４】
（７）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記インバータ（またはパワーアンプ）についての合計電流と、前記インバータ（またはパワーアンプ）についての各相ごとの個別電流とを含まず、
前記少なくとも１つの出力変数は、前記インバータ（またはパワーアンプ）についての合計電流と、前記インバータ（またはパワーアンプ）についての各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記測定部は、前記インバータ（またはパワーアンプ）についての合計電流を測定するセンサと、前記インバータ（またはパワーアンプ）についての各相ごとの個別電流を測定するセンサとを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記インバータ（またはパワーアンプ）についての合計電流と前記インバータ（またはパワーアンプ）についての各相ごとの個別電流とを取得する（１）ないし（６）項のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
【００３５】
（８）  さらに、
前記インバータ（またはパワーアンプ）についての各相ごとの個別電流であって前記推定部によって推定されたものに基づき、前記インバータ（またはパワーアンプ）および／または前記モータにおけるいずれの相に故障が発生している可能性があるか否かを判定する故障診断を行う故障診断部を含む（７）項に記載のＡＩ搭載型モータ状態量推定システム。
【００３６】
（９）  前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータにおけるステータの振動状態量を含まず、
前記少なくとも１つの出力変数は、前記ステータの振動状態量を含み、
前記測定部は、前記ステータの振動状態量を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記ステータの振動状態量を取得する（１）ないし（８）項のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
【００３７】
（１０）  さらに、
前記ステータの振動状態量であって前記推定部によって推定されたものに基づき、前記モータの寿命の末期を推定し、その時期を事前に告知する寿命予測部を含む（９）項に記載のＡＩ搭載型モータ状態量推定システム。
【００３８】
（１１）  前記機械学習は、前記ステータの振動状態量であって、前記モータに設置される加速度センサおよび／またはトルクセンサを用いて測定されたものを用いて行われる（９）または（１０）項に記載のＡＩ搭載型モータ状態量推定システム。
【００３９】
（１２）  電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系についての複数の入力変数から、前記モータ駆動系についての少なくとも１つの状態量を少なくとも１つの出力変数として推定するシステムであって、
それぞれのセンサを用いて前記複数の入力変数を測定する測定部と、
前記モータを停止または回転させた場合の前記モータ駆動系の前記少なくとも１つの状態量を推定するための機械学習を行った学習済みの学習モデルに、前記測定された複数の入力変数を入力することにより、前記少なくとも１つの状態量を前記学習モデルから前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数の入力変数は、前記インバータ（またはパワーアンプ）における各相のインバータ電圧関連量（またはパワーアンプ電圧関連量）と、前記モータにおける各相のモータ電流関連量とを含むが、前記少なくとも１つの状態量を含まず、
前記測定部は、前記少なくとも１つの状態量を測定するためのセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記少なくとも１つの状態量を取得するＡＩ搭載型モータ状態量推定システム。
【００４０】
（１３）  電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ・コントローラに実装される機械学習モデルを設計して構築するモータモデル用機械学習方法であって、
前記機械学習モデルは、（１）ないし（１２）項のいずれかに記載の学習モデルであり、
当該方法は、
前記モータを電磁気学的側面からモデリングし、電圧方程式を用いて記述するモータモデルを構築する第１ステップと、
前記モータおよび負荷より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する第２ステップと、
前記モータモデルの特性および前記運動モデルの特性に基づき、前記モータ駆動系および前記運動系について複数の状態変数を選択する第３ステップと、
前記機械学習モデルの性能要件に基づき、前記選択された複数の状態変数から、前記機械学習モデルにとっての複数の入力変数および少なくとも１つの出力変数を選択する第４ステップと、
前記機械学習モデルの性能要件に基づき、前記機械学習モデルのネットワーク構成を構築する第５ステップと、
前記選択された少なくとも１つの出力変数の特性に基づき、前記機械学習モデルのための複数の教師データセットを取得する第６ステップと、
前記取得された複数の教師データセットを用いて前記機械学習モデルのための機械学習を実行し、それにより、前記機械学習モデルを構築する第７ステップと
を含むモータモデル用機械学習方法。
【００４１】
（１４）  （１）ないし（１３）項のいずれかに記載のシステムまたは方法を実行するためにコンピュータによって実行されるプログラム。
【００４２】
本明細書の全体を通じて、「プログラム」という用語は、例えば、それの機能を果たすためにコンピュータにより実行される指令の組合せを意味するように解釈したり、それら指令の組合せのみならず、各指令に従って処理されるファイルやデータをも含むように解釈することが可能であるが、それらに限定されない。
【００４３】
また、このプログラムは、それ単独でコンピュータにより実行されることにより、所期の目的を達するものとしたり、他のプログラムと共にコンピュータにより実行されることにより、所期の目的を達するものとすることができるが、それらに限定されない。後者の場合、本項に係るプログラムは、データを主体とするものとすることができるが、それに限定されない。
【００４４】
（１５）  （１４）項に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。
【００４５】
この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、ＣＤ、ＣＤ−ＲＯＭ等の光記録媒体、ＭＯ等の光磁気記録媒体、ＲＯＭ等のアンリムーバブル・ストレージ等のいずれかを採用し得るが、それらに限定されない。
【図面の簡単な説明】
【００４６】
【図１】図１は、本発明の例示的な複数の実施形態に従う複数のＡＩ搭載型モータ状態量推定システムに共通のモータ駆動系を表す機能ブロック図である。
【図２】図２は、図１に示す実インバータ／パワーアンプの一例を概略的に示す回路図である。
【図３】図３は、図１に示す仮想モータ計算部の一例を表す機能ブロック図である。
【図４】図４は、図３に示す仮想モータが用いるモータモデルの一例を概略的にかつ数学的に記述する図である。
【図５】図５（ａ）は、図３に示す仮想モータ計算部の全体シーケンスを示すタイミングチャートであり、図５（ｂ）は、その仮想モータ計算部の個別の計算サイクルを示すタイミングチャートである。
【図６】図６は、図１に示すモータ制御装置の作動の一例を示すタイミングチャートである。
【図７】図７は、本発明の例示的な第１実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図８】図８は、図７に示す推定部の一例を概念的に表す図である。
【図９】図９は、図７に示す実用モータ駆動系の一例を機能ブロック図である。
【図１０】図１０は、本発明の例示的な第２実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図１１】図１１は、図１０に示す推定部の一例を概念的に表す図である。
【図１２】図１２は、図１０に示す実用モータ駆動系の一例を機能ブロック図である。
【図１３】図１３は、本発明の例示的な第３実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図１４】図１４は、図１３に示す推定部の一例を概念的に表す図である。
【図１５】図１５は、図１３に示す実用モータ駆動系の一例を機能ブロック図である。
【図１６】図１６は、本発明の例示的な第４実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図１７】図１７は、図１６に示す推定部の一例を概念的に表す図である。
【図１８】図１８は、図１６に示す実用モータ駆動系の一例を機能ブロック図である。
【図１９】図１９は、本発明の例示的な第５実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図２０】図２０は、図１９に示す推定部の一例を概念的に表す図である。
【図２１】図２１は、図１９に示す実用モータ駆動系の一例を機能ブロック図である。
【図２２】図２２は、本発明の例示的な第６実施形態に従うＡＩ搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【図２３】図２３は、図２２に示す推定部の一例を概念的に表す図である。
【図２４】図２４は、図２２に示す実用モータ駆動系の一例を機能ブロック図である。
【図２５】図２５は、横軸にモータ速度、縦軸にモータトルクおよびモータ誘起電圧がそれぞれ取られたグラフであって、センサレスでモータ角度を推定する方法の種類がモータ速度に応じて異なる様子を説明するためのものである。
【図２６】図２６は、前記複数の実施形態に共通の機械学習モデルの構成の一例を概念的に表す図である。
【発明を実施するための形態】
【００４７】
以下、本発明のさらに具体的で例示的な複数の実施形態を図面に基づいて詳細に説明する。
【００４８】
＜複数の実施形態に共通の特徴＞
【００４９】
後述の第１ないし第６実施形態は、いずれも、電源からの電気エネルギーをインバータを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系において、学習済みの機械学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータの少なくとも１つの状態量（状態変数、パラメータ）を取得するＡＩ搭載型モータ状態量推定システムに関する。
【００５０】
１．モータ駆動系
【００５１】
モータ駆動系１０を有するモータ駆動システム（以下、単に「システム」という。）１１の基本構成は、後述の複数の実施形態に共通であり、図１ないし図６に示されている。
【００５２】
図１には、モータ駆動系１０を有するシステム１１が概略的に機能ブロック図で表されている。このシステム１１は、そのシステム１１の駆動源として実モータ１２を備えている。このシステム１１のいくつかの具体例としては、絶対空間に対して移動する移動体や、可動部材に運動を付与する運動付与装置などがある。
【００５３】
なお、「実モータ」という用語は、同じモータ駆動系につき、仮想モータという別の概念が存在する場合にその仮想モータと区別するために用いる用語であり、同じモータ駆動系につき、仮想モータという別の概念が存在しない場合には、単に「モータ」と称してもよい。
【００５４】
実モータ１２は、一般に、複数極のロータ（回転子ともいうが、図示しない）と、複数極のステータ（固定子ともいうが、図示しない）と、磁束形成部（図示しないが、具体的には、例えば、巻き線）とを有するように構成される。図２に示すように、実モータ１２は、前記ロータと共に回転するシャフト１３を有しており、そのシャフト１３が可動部材（図示しないが、具体的には、例えば、車両の車輪、工作機械の工具、ロボットのアームなど）に機械的に連結され、それにより、可動部材が駆動される。
【００５５】
実モータ１２のいくつかの具体例としては、界磁に永久磁石を使用して回転する永久磁石同期モータ（ＰＭＳＭ）、永久磁石を使用せず、渦電流を利用して回転する誘導モータ（ＩＭ）、スイッチ・リラクタンス・モータ（ＳＲＭ）などがある。そのリラクタンス・モータにおいては、ロータが、永久磁石を使用することなく、強磁性の鉄心で構成されるため、リラクタンス・モータは、永久磁石を使用しない無整流子モータの一種である。
【００５６】
実モータ１２が３相（Ｕ相、Ｖ相、Ｗ相）の巻線を有する場合、実モータ１２の各種物理量を記述するために、次のような記号が使用される。
【００５７】
Ｖｕ，Ｖｖ，Ｖｗ：端子電圧（「巻線電圧」または「相電圧」ともいう。）[V]
Ｉｕ，Ｉｖ，Ｉｗ：相電流（「巻線電流」ともいう。）[A]
θｍ：ロータ（またはシャフト１３）の角度（位相または回転位置であり、「モータ角度」または「モータ位置」ともいう）[rad]
ωｍ：ロータ（またはシャフト１３）の角速度（「モータ速度」ともいう）[rad/sec]
Ｔ：モータ１２の出力軸（シャフト１３）に作用するトルクであるモータ出力軸トルク[Nm]
Ｆｕ，Ｆｖ，Ｆｗ：相磁束[Wb]
【００５８】
なお、複数の実施形態の説明において、同じ記号が、単独で使用される箇所と、「＊」を末尾に有するように使用される箇所とが存在する。それら実施形態においては、同じ記号が、単独で使用される場合には、実際値または検出値を意味する一方、「＊」と組み合わせて使用される場合には、指令値を意味するという用法と、同じ記号が、単独で使用される場合には、実モータ１２についての物理量であることを意味する一方、「＊」と組み合わせて使用される場合には、後述の仮想モータ６０についての物理量であることを意味するという用法とがあるが、特記しない限り、前者の用法を採用することに留意されたい。
【００５９】
図１に示すように、システム１１は、実モータ１２を駆動するために、実インバータ／パワーアンプ１４をさらに備えている。その実インバータ／パワーアンプ１４は、実モータ１２に電気エネルギーを供給する実インバータまたは実パワーアンプを有するように構成される。実モータ１２に供給される電気エネルギーは、実モータ１２が３相（Ｕ相、Ｖ相、Ｗ相）の巻線を有する場合、端子電圧Ｖｕ，Ｖｖ，Ｖｗである。
【００６０】
図２には、実インバータ／パワーアンプ１４が実インバータ１６を有する場合につき、その実インバータ１６が概念的に回路図で表されている。実インバータ１６は、既によく知られているように、直流電圧Ｖｄｃが印加される入力端子２０と、端子電圧Ｖｕ，Ｖｖ，Ｖｗを実モータ１２に出力するための出力端子２２と、それら入力端子２０と出力端子２２との間に接続された複数のゲート２４と、端子電圧Ｖｕ，Ｖｖ，Ｖｗを検出する抵抗２６と、その抵抗２６に作用する電圧によって端子電圧Ｖｕ，Ｖｖ，Ｖｗを表すアナログ信号をデジタル信号に変換するＡＤＣ（交直変換器）２８とを有するように構成される。
【００６１】
複数のゲート２４は、複数のスイッチング素子（すなわち、複数の上アーム・スイッチング素子および複数の下アーム・スイッチング素子）として構成されており、それらゲート２４は、外部からの複数のパルス信号であるゲート信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｗに応じてスイッチング動作を行う。
【００６２】
このように構成されることにより、実インバータ１６は、外部から複数のゲート信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｗが制御信号として入力されると、その制御信号に応じた高さの端子電圧Ｖｕ，Ｖｖ，ＶｗをＰＷＭ（パルス幅変調）方式によって生成し、それら生成された端子電圧Ｖｕ，Ｖｖ，Ｖｗを実モータ１２に供給する。すなわち、本実施形態においては、複数のゲート信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｗが、複数の制御信号を構成するとともに、各信号が、ＰＷＭ信号として形成されるのである。
【００６３】
外部から実インバータ／パワーアンプ１４に入力される制御信号は、実インバータ／パワーアンプ１４が実インバータ１６を有する場合には、上述のように、前記複数のゲート信号であるが、実インバータ／パワーアンプ１４が実パワーアンプ（図示しない）を有する場合には、実モータ１２の相数と同数のアナログ信号となる。
【００６４】
図１に示すように、システム１１は、実モータ１２の作動状態をモニタするために、実モータ１２の作動状態を検出し、その結果を表す実モータ状態信号を出力する実モータ状態検出部３０をさらに備えている。実モータ状態検出部３０は、実モータ１２の作動状態として、例えば、実モータ１２の実３相電流Ｉｕ，Ｉｖ，Ｉｗ、実モータ速度ωｍ、実モータ位置θｍなどを検出できる。実３相電流Ｉｕ，Ｉｖ，Ｉｗをモニタすることが必要である場合には、実モータ状態検出部３０は、電流センサ（図示しない）を含むように構成され、また、実モータ位置θｍを検出することが必要である場合には、実モータ状態検出部３０は、例えば、ロータリーエンコーダ（図示しない）を含むように構成される。
【００６５】
図１に示すように、システム１１は、実モータ１２を制御するために、プロセッサ４０を備えている。プロセッサ４０は、ＦＰＧＡ(field-programmable gate array)やＡＳＩＣ(application specific integrated circuit)などの演算回路（例えば、ＰＬＤ(Programmable logic device）、ワイヤード論理回路)４２と、コンピュータのＣＰＵ４４とを含むように構成されている。演算回路４２により、例えば、１μｓｅｃという長さの第１の周期で、３２ビットの浮動小数点演算を行い、それにより、仮想モータ計算部５０による計算を行う。また、ＣＰＵ４４により、例えば、数１０μｓｅｃという長さの第２の周期であって前記第１の周期より長いもので、システム１１の全体を制御するための処理を行う。そのような処理としては、例えば、初期化、終了処理、時間的に可変である制御目標値を表す目標信号を入力する処理などがある。
【００６６】
演算回路４２により、仮想モータ計算部５０（以後、「コントローラ」または「モータ・コントローラ」とも称される。）が実現される。すなわち、仮想モータ計算部５０は、演算回路４２により、高速演算可能であるように構成されているのである。
【００６７】
概略的に説明するに、仮想モータ計算部５０は、図３に示すように、実モータ１２の電圧−電流特性（後に図４を参照して詳述される電圧電流方程式により表される）を模擬する仮想モータ６０を主体として構成されている。仮想モータ計算部５０は、その仮想モータ６０を用いることにより、目標信号によって表される制御目標値に応じた実モータ１２の電流（指令電流）を生成するためにその実モータ１２に供給すべき電圧（指令電圧）を計算する。
【００６８】
仮想モータ６０は、それに、指令電流を表す電流信号が入力されると、実モータ１２を模擬する解析プログラムを演算回路４２（図１参照）に実行させることにより、前記入力された電流信号によって表される仮想電流（仮想３相電流）と同じ大きさを有する実電流（実３相電流）を実モータ１２によって実現するためにその実モータ１２に供給すべき実電圧（実３相電圧）が計算される。その計算された実電圧が、上述の指令電圧である。
【００６９】
その実モータ１２の指令電圧は、仮想モータ６０にとっての指令電圧でもあり、また、上述の、実モータ１２の指令電流は、仮想モータ６０にとっての指令電流でもある。よって、結局、仮想モータ計算部５０は、実モータ１２と仮想モータ６０との共通の指令電流から、それら実モータ１２と仮想モータ６０とに共通の指令電圧を計算することになる。
【００７０】
従来の技術では、仮想モータ６０は、実モータ１２や、その実モータ１２を制御する実コントローラについての試験が終了するまで、実モータ１２を代替するものとして試験機において使用される。そして、それら実モータ１２や実コントローラが完成する（仕様が確定する）と、今度は、実モータ１２が、仮想モータ６０を代替するものとして実機に搭載される。このように、従来の技術では、試験機においても実機においても、仮想モータ６０が実モータ１２と一緒に搭載されるとともに一緒に作動させられることはなかった。
【００７１】
これに対し、本実施形態においては、試験機であるか実機であるかを問わず、仮想モータ６０が実モータ１２と一緒に搭載されるとともに一緒に作動させられ、それにより、仮想モータ６０を用いて実モータ１２を制御したり、実モータ１２を用いて仮想モータ６０をティーチングすることが可能である。
【００７２】
仮想モータ計算部５０は、実モータ１２の停止中（実モータ１２に入力される制御信号が時間的に変化しないために、実モータ１２への電気エネルギーの供給が不要である場合）であっても、作動し続ける。
【００７３】
本実施形態においては、システム１１のうち、図１に示す仮想モータ計算部５０（プロセッサ４０によって実現される）を構成する部分が、モータ駆動系１０のうちのモータ・コントローラを構成し、また、図３に示す仮想モータ計算部５０も、モータ駆動系１０のうちのモータ・コントローラを構成している。
【００７４】
ここで、一般的なモータの入出力特性を説明するに、図４に示すように、３相巻線のモータの入出力特性は、一般に、電圧方程式（電圧電流方程式）によって近似的に記述できることが既に知られている。この事実によれば、その電圧方程式を用いることにより、各相ごとの相電流を表すモータ電流ベクトルｉ（＝［ｉｕ，ｉｖ，ｉｗ］）から、各相ごとの端子電圧を表すモータ電圧ベクトルｖ（＝［ｖｕ，ｖｖ，ｖｗ］）を計算することができる。
【００７５】
図４に示す電圧方程式中の各種記号の定義を説明するに、「Ｒａ」は、モータの巻線抵抗を表し、また、「ψ」は、モータの鎖交磁束ベクトルψ（＝［ψｕ，ψｖ，ψｗ］）を表し、また、「ｔ」は、時間を表している。
【００７６】
図４に示すように、モータの鎖交磁束ベクトルψは、相電流による鎖交磁束と、電機子鎖交磁束との和に等しい。相電流による鎖交磁束は、「Ｌ（自己インダクタンス）」と「Ｍ（相互インダクタンス）」を各要素とするインダクタンス行列を用いて表現され、また、電機子鎖交磁束は、ベクトルφ（＝［φｕ，φｖ，φｗ］）として表現される。インダクタンス行列は、各要素Ｌ，Ｍが、モータの電流と角度（位置、位相）との少なくとも一方に依存するテーブルとして表現され、また、電機子鎖交磁束ベクトルφも、各要素が、モータの電流と角度（位置、位相）との少なくとも一方に依存するテーブルとして表現される。それらテーブルにより、前記電圧方程式と協働して、モータの非線形特性を、モータの駆動周波数全域にわたって表現することができる。
【００７７】
したがって、図４に示す電圧方程式によって表現される非線形モータモデルを使用すれば、モータの入出力特性が非線形であっても、モータの駆動周波数全域を複数の帯域に分割して各帯域ごとに異なる線形モータモデルを使用することなく、モータの駆動周波数全域を実質的に漏れなくカバーする非線形モータ特性を単一のモデルで精度よく表現することが可能となる。
【００７８】
図４に示す電圧方程式は、実モータ１２についても成立し、よって、仮想モータ６０は、その電圧方程式を用いることにより、図３に示すように、仮想モータ６０の各相ごとの相電流を表す仮想モータ電流ベクトルＩ＊（＝［Ｉｕ＊，Ｉｖ＊，Ｉｗ＊］（仮想３相指令電流信号によって表される）であって、図４に示すモータ電流ベクトルｉ（＝［ｉｕ，ｉｖ，ｉｗ］）に相当する）から、仮想モータ６０の各相ごとの端子電圧を表す仮想モータ電圧ベクトルＶ＊（＝［Ｖｕ＊，Ｖｖ＊，Ｖｗ＊］（仮想３相指令電圧信号によって表される）であって、図４に示すモータ電圧ベクトルｖ（＝［ｖｕ，ｖｖ，ｖｗ］に相当する）を計算する。
【００７９】
したがって、本実施形態によれば、仮想モータ６０が、図４に示す電圧方程式によって表現される非線形モータモデルを使用して実モータ１２の作動を模擬するため、入出力特性が非線形である実モータ１２の駆動周波数全域にわたり、実モータ１２の作動を精度よく模擬することが可能となる。
【００８０】
図４に示す電圧方程式は、実モータ１２につき、電流から電圧を計算するために使用することも、電圧から電流を計算するために使用することも可能である。前者の計算は、実モータ１２において電圧から電流が発生するという現実の物理的現象の時間的進行方向とは逆向きの計算であるため、逆モデル計算と称することができるのに対し、後者の計算は、上述の現実の物理的現象の時間的進行方向と同じ向きの計算であるため、順モデル計算と称することができる。本実施形態においては、それら２種類の計算のうち、逆モデル計算が採用されている。
【００８１】
実モータ１２は、前記ロータを含む可動部材が質量（イナーシャ）や抵抗を有するなどの理由により、応答遅れを有するが、仮想モータ６０は、応答遅れを実質的に有しない。その結果、実モータ１２に指令電圧が入力されるタイミングと同じタイミングで仮想モータ６０に指令電流が入力されると、指令電圧に対して実モータ１２の出力電流（現実の物理量）が応答するタイミングより早いタイミングで、仮想モータ６０の出力電圧（電圧の計算値）が応答する。その結果、各回の計算サイクル（図５参照）内において、実モータ１２に入力すべき指令電圧が、その指令電圧を実モータ１２に入力すべきタイミングより早いタイミングで計算されることが保証されるように仮想モータ計算部５０を設計することが容易となる。
【００８２】
図３に示すように、仮想モータ計算部５０は、前記目標信号と、実モータ状態検出部３０から出力された実モータ状態信号（例えば、実モータ位置θｍを表す信号）とに基づき、仮想モータ６０を制御することにより（すなわち、前記逆モデル計算を行うことにより）、複数の制御信号（前述のゲート信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｗ）を生成する。仮想モータ計算部５０は、それら生成された複数の制御信号を、実インバータ／パワーアンプ１４に出力し、それにより、実モータ１２を制御する。
【００８３】
具体的には、仮想モータ計算部５０は、前記目標信号によって表される制御目標値に基づき、かつ、仮想モータ６０の仮想作動位置（仮想可動部材としての仮想ロータの作動位置）が実モータ１２の実作動位置（実可動部材としての実ロータの実作動位置）に一致すると仮定して、実モータ１２と仮想モータ６０とに共通の指令電圧を前記逆モデル計算によって決定する。これにより、実モータ１２と仮想モータ６０とが、一緒に、かつ、ロータ位置に関して互いに実質的に同期するように、駆動されることになる。
【００８４】
仮想モータ計算部５０のより具体的な構成については、後に図３を参照することにより、説明するが、それに先立ち、図５に示すタイミングチャートを参照することにより、この仮想モータ計算部５０の作動の一例を詳細に説明する。
【００８５】
仮想モータ計算部５０の全体シーケンスを表す図５（ａ）に例示するように、制御目標値Ｔ０は、仮想モータ計算部５０に入力周期Ｔｉｎ（例えば、数１０μｓｅｃ）で反復的に入力される。仮想モータ計算部５０は、１サイクル分の計算を入力周期Ｔｉｎより短い仮想モータ計算周期Ｔｖ（例えば、１μｓｅｃ）で反復的に行い、それにより、制御目標値Ｔ０の１回の入力サイクルの間、複数サイクル分の計算を行う。本実施形態においては、入力周期Ｔｉｎが、仮想モータ計算周期Ｔｖより長い長さを有するように設定されているが、これに代えて、仮想モータ計算周期Ｔｖと実質的に同じ長さを有するように設定することが可能である。
【００８６】
ここに、「制御目標値Ｔ０」は、例えば、実モータ１２からの出力に関連する物理量の指令値、例えば、実モータ１２の前記ロータの位置に関する物理量（例えば、位置、速度、加速度）の指令値や、実モータ１２の前記ロータに作用する力に関する物理量（例えば、トルク、軸力）の指令値としたり、実モータ１２への入力に関連する物理量の指令値、例えば、３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊や、ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊としたり、それら複数種類の指令値からの任意の組合せとすることが可能である。
【００８７】
仮想モータ計算部５０の各回の計算サイクル内の処理のシーケンスを表す図５（ｂ）に例示するように、仮想モータ計算部５０は、１サイクル分の計算を仮想モータ計算周期Ｔｖで反復的に行い、各回の計算サイクルにおいては、制御目標値Ｔ０(i)と、実モータ１２の実モータ位置θｍ(t)とに基づき、前記制御信号Ｇｕ−Ｇｚを決定し、その決定された制御信号Ｇｕ−Ｇｚを実インバータ／パワーアンプ１４に出力し、それにより、実モータ１２を制御する。
【００８８】
制御目標値Ｔ０(i)は、入力周期Ｔｉｎを有する入力サイクルごとに、例えば外部装置から、入力されるのに対し、実モータ位置θｍ(t)は、仮想モータ計算周期Ｔｖを有する計算サイクルごとに、実モータ状態検出部３０から取り込まれる。制御目標値Ｔ０(i)は、入力サイクルごとに入力されると、メモリに一時的に保存される。同じ入力サイクルに属する複数回の計算サイクルについては、同じ制御目標値Ｔ０(i)が、各回の計算サイクルごとに、前記メモリから仮想モータ計算部５０に取り込まれることになる。
【００８９】
各回の計算サイクルにおける複数の処理のシーケンスをより具体的に説明するに、図５（ｂ）に例示するように、仮想モータ計算部５０は、各回の計算サイクルにおいて、まず、制御目標値Ｔ０(t)と、実モータ位置θｍ(t)とを取り込む。この処理を、図５（ｂ）においては、「θｍ（ｔ）入力」で表す。
【００９０】
次に、仮想モータ計算部５０は、状態量の変換を行う。具体的には、仮想モータ計算部５０は、取り込まれた制御目標値Ｔ０(t)を後述の仮想ｄｑ軸指令電流信号に変換する第１変換と、その仮想ｄｑ軸指令電流信号を、実モータ位置θｍ(t)のもと、仮想３相指令電流信号に変換する第２変換とを行う。この処理を、図５（ｂ）においては、「変換」で表す。
【００９１】
その後、仮想モータ計算部５０は、前記仮想３相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想３相指令電流信号に対応する仮想３相指令電圧信号を決定し、その決定された仮想３相指令電圧信号を前記制御信号Ｇｕ−Ｇｚに変換する第３変換を行う。この処理を、図５（ｂ）においては、「逆モデル計算」で表す。
【００９２】
続いて、仮想モータ計算部５０は、その取得された制御信号Ｇｕ−Ｇｚを実インバータ／パワーアンプ１４に出力し、それにより、実モータ１２を制御する。この処理を、図５（ｂ）においては、「Ｇｕ〜Ｇｚ出力」で表す。各回の計算サイクルにおいて、仮想モータ６０に仮想３相指令電流信号が１回しか入力されないため、仮想モータ６０は、１回しか作動しない。
【００９３】
なお、図５（ｂ）（図８も同様）においては、制御信号Ｇｕ−Ｇｚが実インバータ／パワーアンプ１４に供給された後、その制御信号Ｇｕ−Ｇｚが属する回の計算サイクルが終了するタイミングと同じタイミングで、実モータ位置θｍ(t)がθｍ(t+1)（＝θｍ(t)＋Δθ）に変化することが図示されている。しかし、これは、説明のための一例にすぎず、実際には、前記タイミングより早いか遅いタイミングで、実モータ位置θｍ(t)がθｍ(t+1)に変化する。
【００９４】
次に、図３を参照することにより、仮想モータ計算部５０の構成の一例を具体的に説明する。ただし、同じ記号が、単独で使用される場合には、仮想モータ６０についての実際値または検出値を意味する一方、「＊」と組み合わせて使用される場合には、仮想モータ６０についての指令値を意味する。
【００９５】
仮想モータ計算部５０は、ｄｑ座標系（回転直交２軸ｄｑ座標系）上において磁束−トルク制御を行う。ここに、「ｄ」は、仮想モータ６０の仮想磁束を表し、また、「ｑ」は、仮想モータ６０の仮想トルクを表している。
【００９６】
そのような制御を実現するために、仮想モータ計算部５０は、前記目標信号を仮想ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊（仮想ｄ軸指令電流信号Ｉｄ＊および仮想ｑ軸指令電流信号Ｉｑ＊）に変換する目標信号変換器６６と、ベクトル制御（前記ロータの位置情報を用いて、軸電流をｄｑ座標系から３相座標系へ座標変換し、前記ステータの相電流を制御する）により、それら仮想ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊を仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊に変換するｄｑ／ＵＶＷ座標変換器６８とを備えている。
【００９７】
仮想モータ６０を実モータ１２から切り離して使用する従来の技術では、ｄｑ−ＵＶＷ座標変換器６８は、仮想モータ６０の仮想モータ位置θｍのもとで、仮想ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊を仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊に変換するように設計されるのが通常である。これに対し、本実施形態においては、ｄｑ−ＵＶＷ座標変換器６８が、仮想モータ位置θｍに代えて実モータ位置θｍを用いる。
【００９８】
その結果、本実施形態によれば、仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊が、仮想モータ６０の仮想モータ位置θと、実モータ１２の実モータ位置θｍとが互いに一致する状態で取得されることになる。
【００９９】
しかし、仮想モータ６０が実モータ１２の入出力特性を十分に正確に再現するように教示される場合には、仮想モータ位置θと実モータ位置θｍとが互いに十分に一致することになる。この場合には、ｄｑ−ＵＶＷ座標変換器６８が実モータ位置θｍに代えて仮想モータθを参照したとしても、仮想３相指令電圧信号Ｖｕ＊，Ｖｖ＊，Ｖｗ＊が、仮想モータ６０の仮想モータ位置θと、実モータ１２の実モータ位置θｍとが互いに一致する状態で取得されることになる。
【０１００】
仮想モータ計算部５０においては、仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊が仮想モータ６０に入力され、その後、仮想モータ６０は、前記逆モデル計算により、それら仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊によって表される電流を実モータ１２において実現するためにその実モータ１２に供給すべき電圧を表す仮想３相指令電圧信号Ｖｕ＊，Ｖｖ＊，Ｖｗ＊を出力する。
【０１０１】
仮想モータ計算部５０は、さらに、その出力された仮想３相指令電圧信号Ｖｕ＊，Ｖｖ＊，Ｖｗ＊を、各々ＰＷＭ信号という形態を有する複数の制御信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｚに変換するＰＷＭ信号発生器７８を備えている。
【０１０２】
図６には、モータ駆動系１０の作動の一例がフローチャートで表されている。このフローチャートは、ＣＰＵ４４によって実行されるステップＳ１およびＳ２と、演算回路４２によって反復的に実行されるステップＳ３−Ｓ９とを表している。それらステップＳ３−Ｓ１１は、１回ずつ実行されることにより、一回の計算サイクルを達成する。
【０１０３】
まず、ステップＳ１において、初期化が行われる。具体的には、例えば、実モータ状態検出部３０により、初期の実モータ位置θｉｎｉｔが取得され、同じ位置が、仮想モータ６０の初期の仮想モータ位置θｉｎｉｔとされる。
【０１０４】
次に、入力周期Ｔｉｎ（例えば、数１０μｓｅｃ）が経過するごとに割り込みが発生してステップＳ２が実行される。このステップＳ２においては、今回の制御目標値Ｔ０が入力される。
【０１０５】
続いて、ステップＳ３において、データ入力が行われ、具体的には、実モータ状態検出部３０から実モータ位置θｍが入力される。
【０１０６】
その後、ステップＳ４において、目標信号変換器６６により、制御目標値Ｔ０を表す目標信号が仮想ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊に変換される。これにより、前記第１変換が行われる。続いて、ステップＳ５において、ｄｑ／ＵＶＷ座標変換器６８により、その仮想ｄｑ軸指令電流信号Ｉｄ＊，Ｉｑ＊が、実モータ１２の実モータ回転角θｍのもとで、仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊に変換される。これにより、前記第２変換が行われる。
【０１０７】
その後、ステップＳ６において、その仮想３相指令電流信号Ｉｕ＊，Ｉｖ＊，Ｉｗ＊が仮想モータ６０に入力され、それに応答して仮想モータ６０から仮想３相指令電圧信号Ｖｕ＊，Ｖｖ＊，Ｖｗ＊が出力される。これにより、前記逆モデル計算が行われる。続いて、ステップＳ７において、ＰＷＭ信号発生器７８により、仮想３相指令電圧信号Ｖｕ＊，Ｖｖ＊，Ｖｗ＊がＰＷＭ信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｚに変換される。これにより、前記第３変換が行われる。
【０１０８】
その後、ステップＳ８において、そのようにして取得されたＰＷＭ信号Ｇｕ，Ｇｖ，Ｇｗ，Ｇｘ，Ｇｙ，Ｇｚが実インバータ／パワーアンプ１４に対して出力され、それにより、実モータ１２が駆動される。
【０１０９】
続いて、ステップＳ９において、システム１１の主電源（図示しない）がオフにされたか否かが判定される。その主電源が未だオンである場合には、その判定がＮＯとなり、次回の計算サイクルでの計算のために、ステップＳ２に戻る。これに対し、主電源がオフにされた場合には、ステップＳ９の判定がＹＥＳとなり、以上で、モータ駆動系１０の作動が終了する。
【０１１０】
以上の説明から明らかなように、本実施形態においては、仮想モータ計算部５０が、目標信号に基づいて仮想モータ６０を作動させることにより、その目標信号によって表される制御目標値を実モータ１２が実現するためにその実モータ１２に必要な制御信号をフィードフォワード制御で決定する。
【０１１１】
仮想モータ計算部５０は、制御信号を決定するために実モータ位置θｍを参照するが、これは、仮想モータ６０の仮想モータ位置を実モータ位置θｍに一致させ、それにより、仮想モータ６０が実モータ１２を模擬する精度を向上させるためである。
【０１１２】
実モータ位置θｍを参照するという処理が存在するという事実に注目すれば、仮想モータ計算部５０が採用しているフィードフォワード制御がフィードバック要素を有するように解釈される余地がある。しかし、実モータ位置θｍは、制御系においてフィードバック信号として用いられるのではなく、仮想モータ６０のための前述のｄｑ軸制御において座標変換のために用いられるに過ぎない。よって、仮想モータ計算部５０が採用している制御は、前記処理の存在にもかかわらず依然としてフィードフォワード制御であると解釈するのが自然である。
【０１１３】
なお付言するに、仮想モータ６０についての上述の説明は、実モータ１２の特性の説明でもあるから、実モータ１２のハードウエア構成についての上述の説明と、仮想モータ６０についての上述の説明との組合せにより、実モータ１２の構造および特性が説明されると考えることが可能である。
【０１１４】
２．ＡＩ搭載型モータ状態量推定システムの概要
【０１１５】
後に詳述するが、本発明の例示的な第１ないし第６実施形態は、図７，図１０，図１３，図１６，図１９および図２２にそれぞれ示すように、いずれの実施形態も、学習用モータ駆動系９０と、機械学習装置１００と、実用モータ駆動系１１０とを備えている。
【０１１６】
各実施形態における学習用モータ駆動系９０および実用モータ駆動系１１０は、いずれも、モータ１２を主体とする主要駆動部を有し、その主要駆動部は、図１ないし図６に示すモータ駆動系１０と構成上、共通する。
【０１１７】
また、各実施形態における実用モータ駆動系１１０のうちの測定部２００１および推定部３６０が、各実施形態におけるＡＩ搭載型モータ状態量推定システムのうちの主要部を構成する。
【０１１８】
２−１．学習用モータ駆動系の概要
【０１１９】
学習用モータ駆動系９０は、前述のモータ駆動系１０と同様に、主要駆動部として、モータ１２と、インバータ１４と、実モータ状態検出部３０（図１には示されているが、図７，図１０，図１３，図１６，図１９および図２２には示されていない。）と、コントローラ（図１では、「仮想モータ計算部」に相当し、「モータ・コントローラ」とも称される。）５０とを有する。
【０１２０】
コントローラ５０は、図１に示すモータ駆動系１０と同様に、プロセッサ４０とメモリ（図示しない）とを有するコンピュータを主体として構成されている。コントローラ５０は、図１ないし図６に示すモータ駆動系１０と同様に、実モータ状態検出部３０からの実モータ状態信号に基づき、モータ１２の駆動状態を制御する。
【０１２１】
学習用モータ駆動系９０は、さらに、当該学習用モータ駆動系９０のうちの主要駆動部について複数の状態変数を測定する測定部２００を有する。測定部２００による測定結果は、通常、コントローラ５０の作動には利用されず、専ら機械学習装置１００の作動に利用される。
【０１２２】
各実施形態における学習用モータ駆動系９０の測定部２００は、インバータ１４におけるＵ，Ｖ，Ｗ各相の電圧（例えば、前述の端子電圧Ｖｕ，Ｖｖ，Ｖｗであり、以下、単に「インバータ電圧」と称することがある。）を検出する電圧センサ３２と、モータ１２におけるＵ，Ｖ，Ｗ各相の電流（例えば、前述の３相電流Ｉｕ，Ｉｖ，Ｉｗであり、以下、単に「モータ電流」と称することがある。）を検出する電流センサ３４とを有する。電流センサ３４は、例えば、ＣＴ方式、ホール素子方式、ロゴスキー方式、ゼロフラックス方式などである。
【０１２３】
各実施形態における学習用モータ駆動系９０の測定部２００は、さらに、他の少なくとも１つのセンサを有し、その検出値は、電圧センサ３２の検出値および電流センサ３４の検出値と組み合わされて、機械学習装置１００が複数の教師データセットを取得するために使用される。ここに、「他の少なくとも１つのセンサ（以下、「学習用センサ」という。）の種類は、後述の複数の実施形態の間で互いに異なる。
【０１２４】
２−２．機械学習装置の概要
【０１２５】
機械学習装置１００は、学習用モータ駆動系９０の複数の状態変数を測定部２００を介して観測する状態観測部３００を有する。機械学習装置１００は、さらに、その状態観測部３００によって観測された複数の状態変数を用いることにより、学習モデル（機械学習モデル）３１０を構築するための学習部３２０を有する。それら状態観測部３００および学習部３１０は、プロセッサ３３０およびメモリ３３２を備えたコンピュータ３４０によって実現される。
【０１２６】
図２６には、学習モデル３１０の一例が概念的に表されている。この例においては、概念的に説明すれば、複数のニューロン（ノード）が、各々、重みを割り当てられた複数のリンクによって互いに連結されている。一例においては、各ニューロンが、複数の入力ｘに対してそれぞれの重みｗを付けた複数の値の総和が所定のしきい値を超えたときに、出力ｙを「１」にして、その値を次のニューロンに伝播する。
【０１２７】
２−３．機械学習アルゴリズムの概要
【０１２８】
機械学習装置１００は、任意の機械学習アルゴリズムを用いて学習モデル３１０を作成してもよい。そのような学習アルゴリズムとしては、教師あり学習、教師なし学習、強化学習などがあるが、本発明の例示的な第１ないし第６実施形態においては、教師あり学習が採用される。
【０１２９】
さらに、機械学習装置１００は、その学習アルゴリズムとして深層学習を用いてもよい。また、機械学習装置１００は、例えば、ＧＰＧＰＵや大規模ＰＣクラスターなどを適用することにより実現してもよい。
【０１３０】
２−４．機械学習モデルの概要
【０１３１】
次に、機械学習モデル３１０の例を、入力変数および出力変数のそれぞれの種類に着目して説明する。
【０１３２】
Ａ．入力変数
【０１３３】
Ａ−１．インバータ関連状態変数
【０１３４】
Ｕ相インバータ電圧
Ｖ相インバータ電圧
Ｗ相インバータ電圧
【０１３５】
Ａ−２．モータ関連状態変数
【０１３６】
Ｕ相モータ電流
Ｖ相モータ電流
Ｗ相モータ電流
【０１３７】
Ｂ．出力変数
【０１３８】
＜電気系（回路方程式）関連出力変数＞
【０１３９】
Ｂ−１．インバータ関連状態変数
【０１４０】
Ｂ−１−１．他のインバータ電圧（インバータ１４に関する電圧であって、インバータ１４に搭載されたセンサによって測定されない部位の電圧）
【０１４１】
Ｂ−１−２．インバータ電流（インバータ１４に関する電流であって、インバータ１４に搭載されたセンサによって測定されない部位の電流）
＋アームＵ相電流
−アームＵ相電流
＋アームＶ相電流
−アームＶ相電流
＋アームＷ相電流
−アームＷ相電流
インバータ合計電流
【０１４２】
Ｂ−２．モータ関連状態変数
【０１４３】
Ｂ−２−１．他のモータ電流（モータ１２に関する電流であって、モータ１２に搭載されたセンサによって測定されない部位の電流）
Ｕ相モータ電流（前記入力変数としてＵ相モータ電流が存在しない場合）
Ｖ相モータ電流（前記入力変数としてＶ相モータ電流が存在しない場合）
Ｗ相モータ電流（前記入力変数としてＷ相モータ電流が存在しない場合）
ｄ軸電流
ｑ軸電流
【０１４４】
Ｂ−２−２．他のモータ電圧（モータ１２に関する電圧であって、モータ１２に搭載されたセンサによって測定されない部位の電圧）
Ｕ相誘起電圧
Ｖ相誘起電圧
Ｗ相誘起電圧
Ｕ相逆起電圧
Ｖ相逆起電圧
Ｗ相逆起電圧
【０１４５】
Ｂ−２−３．インダクタンス（モータ１２に関するインダクタンスであって、モータ１２に搭載されたセンサによって測定されない部位のインダクタンス）
Ｕ相インダクタンス
Ｖ相インダクタンス
Ｗ相インダクタンス
ＵＶ相間インダクタンス
ＵＷ間インダクタンス
ＶＷ間インダクタンス
【０１４６】
Ｂ−２−４．効率関連変数
モータ効率
モータ損失（鉄損、銅損）
【０１４７】
Ｂ−２−５．温度関連変数（温度は、モータ１２の電気系に影響を及ぼす）
モータ温度ＴＨｍ（モータ１２の実特性が、モータ１２内の他の位置より温度によって敏感に変動する特性敏感位置の温度であって量産段階ではセンサによって実測することが実用的ではないもの）
周辺温度
【０１４８】
Ｂ−２−６．他の変数
最大トルク制御やトルク・リプル低減制御、鉄損低減制御などの各種制御に必要なモータ電流指令値
モータ１２の弱め界磁コイルの電流
モータ１２の進角制御における進角角度
モータ１２の軸受（例えば、モータ１２のハウジングのうちモータ１２のシャフト１３を回転可能に支持する部分に設置される）の劣化度
モータ１２の鎖交磁束
ステータの電気抵抗値（例えば、電機子抵抗値）
モータ１２の極数
【０１４９】
＜機械系（運動方程式）関連出力変数＞
【０１５０】
Ｂ−２−７．位置関連変数
モータ１２
モータ１２の角度（または位置）θｍまたはθM
モータ１２の角速度（または速度）ωｍまたはωM
モータ１２の角加速度（または加速度）αｍまたはαM
負荷Ｌ
負荷Ｌの角度（または位置）θL
負荷Ｌの角速度（または速度）ωL
負荷Ｌの角加速度（または加速度）αL
【０１５１】
Ｂ−２−８．トルク関連変数
モータ１２：出力軸トルクＴ１（＝モータトルクＴｍ）
負荷Ｌ：モータ１２の出力軸に連結される外部負荷（図示しない）に作用するトルクである外部負荷トルクＴ２（＝外乱トルク）
【０１５２】
Ｂ−２−９．摩擦関連変数
モータ１２の粘性摩擦係数（動摩擦係数）
モータ１２の静止摩擦係数
【０１５３】
＜他の出力変数＞
【０１５４】
Ｂ−２−１０．振動関連変数
ステータ振動状態量
ロータ振動状態量
【０１５５】
Ｂ−２−１１．ビヘイビアモデル
モータ１２のビヘイビアモデル（モータ１２の挙動がそれの性能要件が満たされるようにソフトウエア上で要件定義（記述された）モデル（定義式など））例えば、ＰＭＳＭモータの鎖交磁束を用いたビヘイビアモデル
【０１５６】
３．実用モータ駆動系の概要
【０１５７】
実用モータ駆動系１１０は、図１ないし図６に示すモータ駆動系１０と同様に、モータ１２、インバータ１４およびコントローラ５０と実モータ状態検出部３０とを有する。実用モータ駆動系１１０は、さらに、測定部２００１および推定部３６０を有する。
【０１５８】
コントローラ５０は、図１に示すモータ駆動系１０と同様に、プロセッサ４０とメモリ（図示しない）とを有するコンピュータを主体として構成されている。そのコンピュータは、推定部３６０および同じ実用モータ駆動系１１０における他の要素を実行するためにも利用される。
【０１５９】
実用モータ駆動系１１０において、測定部２００１および推定部３６０は、学習用モータ駆動系９０における測定部２００のうちの学習用センサに代えて設置されており、その学習用センサによって実測可能である状態変数（パラメータ）を、その学習用センサを用いずにセンサレスで計測する。
【０１６０】
そのセンサレス・パラメータ計測のために、実用モータ駆動系１１０のうちの推定部３６０は、機械学習装置１００によって作成された学習モデル３１０と同じものを用いる。
【０１６１】
前述のように、学習用モータ駆動系９０においては、測定部２００が専ら機械学習装置１００の作動のために利用されるが、実用モータ駆動系１１０においては、測定部２００１が、専ら推定部３６０の作動のために利用され、ひいては、コントローラ５０によるモータ制御のために利用される。
【０１６２】
具体的には、推定部３６０は、電圧センサ３２および電流センサ３４によるそれぞれの検出値をそれぞれ入力変数として学習モデル３１０に適用することにより、学習用モータ駆動系９０にしか存在しない学習用センサによってしか実測できないパラメータを、その学習用センサを用いることなく、学習モデル３１０にとっての出力変数として推定する。
【０１６３】
実用モータ駆動系１１０においては、前述の学習用モータ駆動系９０とは異なり、推定部３６０の推定結果であって測定部２００１の測定結果に基づいて取得されたものに基づいてモータ１２の駆動状態を制御する。よって、実用モータ駆動系１００における測定部２００１および推定部３６０は、学習用モータ駆動系９０における実モータ状態検出部３０に相当する。
【０１６４】
具体的には、第１実施形態においては、実用モータ駆動系１１０が、推定部３６０によってセンサレスで推定されたモータ角度θｍに基づいてモータ１２の駆動状態を、前述のモータ駆動系１０（図１ないし図６参照）と同様にして制御する。
【０１６５】
また、第２実施形態においては、実用モータ駆動系１１０が、推定部３６０によってセンサレスで推定されたモータトルクＴｍに基づいてモータ１２の駆動状態を、前述のモータ駆動系１０（図１ないし図６参照）と同様にして制御する。
【０１６６】
また、第３ないし第６実施形態においては、それぞれ対応する図面に示されていないが、第１または第２実施形態と同様に、実用モータ駆動系１１０が、推定部３６０によってセンサレスで推定されたモータ角度θｍまたはモータトルクＴｍに基づいてモータ１２の駆動状態を、前述のモータ駆動系１０（図１ないし図６参照）と同様にして制御する。
【０１６７】
ただし、第３ないし第６実施形態においては、それぞれ対応する図面に示すように、推定部３６０は、第１および第２実施形態とは異なり、それら実施形態におけるセンサレス推定値とは別のパラメータをも推定する。
【０１６８】
４．モータモデル用機械学習方法
【０１６９】
学習モデル３１０を作成するために、第１ないし第６実施形態について共通に、例えば、次のような方法が実行される。
【０１７０】
第１ステップ
【０１７１】
設計者が、モータ１２を電磁気学的側面からモデリングし、図４に例示するように、電圧方程式を用いて記述するモータモデル６０を構築する。
【０１７２】
第２ステップ
【０１７３】
設計者が、モータ１２および負荷Ｌ（図示しない）より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する。
【０１７４】
モータ１２と負荷Ｌとが回転軸を介して互いに連結された２慣性系としての運動系の運動方程式の一例は、次のとおりである。
ＪMαM(t)−ＪLαL(t)＝Ｔ１(t)−Ｔ２(t)＝Ｋcoup（θM−θL）
【０１７５】
ただし、
ＪM：モータ１２の慣性モーメント（イナーシャ）
αM(t)：モータ１２の角加速度(=dωM(t)/dt)
ＪL：負荷Ｌの慣性モーメント（イナーシャ）
αL(t)：負荷Ｌの角加速度
Ｔ１(t)：出力軸トルク（＝モータトルクＴｍ)
Ｔ２(t)：外部負荷トルク（＝外乱トルクＴｄ）
Ｋcoup：モータ１２と負荷Ｌとを互いに連結するカップリング（ねじりばねとしての前記回転軸）のばね係数
θM：モータ角度
θL：負荷Ｌの角度
【０１７６】
ここに、「出力軸トルク」という用語は、モータ電流に起因して理論的にロータに発生する理論モータトルクを意味するように定義したり、その理論モータトルクから、モータ１２の内部損失、例えば、摩擦トルクを減算した有効モータトルクとして定義してもよい。
【０１７７】
また、「外部負荷Ｌトルク」は、モータ１２の外部にある負荷Ｌからロータに、モータ出力軸トルクを減殺する向きに印加されるものであり、その意味で外乱トルクと称することも可能である。
【０１７８】
第３ステップ
【０１７９】
設計者が、モータモデル６０の特性および前記運動モデルの特性に基づき、前記電気系（学習用モータ駆動系９０および実用モータ駆動系１１０のそれぞれの主要駆動部）ならびに前記運動系について複数の状態変数を選択する。
【０１８０】
第４ステップ
【０１８１】
設計者が、機械学習モデル３１０（図２６参照）の性能要件に基づき、前記選択された複数の状態変数から、前械学習モデル３１０にとっての複数の入力変数および少なくとも１つの出力変数を選択する。
【０１８２】
機械学習モデル３１０の性能要件としては、例えば、計算速度（変数の数が少ないほど高速処理が可能、ネットワークの層数が少ないほど高速処理が可能）、拡張性（事後的に変数を容易に追加できる可能性）、互換性、製造コスト、運営コストなどがある。
【０１８３】
第５ステップ
【０１８４】
設計者が、機械学習モデル３１０の性能要件に基づき、機械学習モデル３１０のネットワーク構成を構築する。
【０１８５】
ネットワーク構成の一例は、ニューラルネットワークであり、そのニューラルネットワークの一例は、ＬＳＴＭ（長・短期記憶）である。
【０１８６】
ＬＳＴＭを行うネットワークにおいては、再帰型ニューラルネットワークＲＮＮの中間層での各ユニットをＬＳＴＭブロックというメモリユニットに置き換えた構造を有する。ＬＳＴＭブロックには、入力ゲート、忘却ゲートおよび出力ゲートという３種類のゲートと、記憶セルとがある。
【０１８７】
このＬＳＴＭによれば、記憶セルに保存されている１ステップ前の状態を忘却ゲートで参照しながら、入力ゲートおよび忘却ゲートを開閉し、それにより、出力を調整する。
【０１８８】
このＬＳＴＭによれば、時系列データを用いて出力変数を高精度で推定できるという効果が、他の種類のニューラルネットワークでは奏することができない特有の効果として得られる。
【０１８９】
第６ステップ
【０１９０】
前記選択された少なくとも１つの出力変数の特性に基づき、機械学習モデル３１０のための複数の教師データセットを取得する。
【０１９１】
一例においては、作業者が、前記複数の入力変数および前記少なくとも１つの出力変数をそれぞれ実測する複数のセンサを学習用モータ駆動系９０（図７参照）に設置する。この時点では、センサレスで計測すべきパラメータを実測するための学習用センサも学習用モータ駆動系９０（図７参照）に設置する。
【０１９２】
作業者は学習用モータ駆動系９０を作動させ、その作動中、機械学習装置１００のコンピュータ３４０（図７参照）が測定部２００の複数のセンサからの複数の測定値を、取り込む。そのコンピュータ３４０は、各時刻に関連づけて、それら測定値を互いに紐付けしてメモリ３３２に保存する。
【０１９３】
センサレスで計測すべきパラメータについて想定される変域（例えば、そのパラメータがモータ角度である場合には、０度−３６０度）の全体につき、複数の測定値が取得されるように、学習用モータ駆動系９０が作動させられる。
【０１９４】
コンピュータ３４０は、メモリ３３２に保存されているもとのデータを、前記パラメータについての測定値と、他の複数の測定値との関係として並び替える。具体的には、コンピュータ３４０は、前記パラメータについての各測定値ごとに、その測定値と他の複数の測定値とを互いに紐付けする。ここに、各データセットは、教師データセットと称される。最終的に、前記パラメータについての複数の測定値と同数の教師データセットが取得される。
【０１９５】
第７ステップ
【０１９６】
機械学習装置１００のコンピュータ３４０（図７参照）が、前記取得された複数の教師データセットを用いて機械学習モデル３１０のための機械学習を実行し、それにより、機械学習モデル３１０を構築する。
【０１９７】
第８ステップ
【０１９８】
完成した機械学習モデル３１０を実用モータ駆動系１１０（図７参照）の推定部３６０に実装する。
【０１９９】
以上、本発明の例示的な複数の実施形態に共通の要素について説明したが、以下、それら実施形態を個別に、かつ、前記共通の要素とは異なる要素のみを説明する。
【０２００】
＜第１実施形態＞
【０２０１】
図７には、本発明の例示的な第１実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０２０２】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、モータ１２の角度を検出する角度センサ３０１を有する。角度センサ３０１の一例は、ロータリーエンコーダである。
【０２０３】
機械学習装置１００は、測定部２００により複数の状態変数について測定された複数の値であって角度センサ３０１による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータ角度を出力変数とする学習モデル３１０を作成する。
【０２０４】
実用モータ駆動系１１０は、角度センサ３０１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０２０５】
図８に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、モータ角度θｍを出力変数として推定する。
【０２０６】
推定されたモータ角度θｍは、モータ角度θｍの実際値としてコントローラ５０に入力され、そのコントローラ５０は、モータ角度θｍの実際値と目標値とに基づき、前述の、インバータ１４についての複数のゲート信号を制御信号として生成してインバータ１４に入力する。
【０２０７】
図９には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、角度センサ３０１に代えて測定部２００１および推定部３６０が採用され、それにより、センサレスでモータ角度θｍが計測される。
【０２０８】
１．入力変数と出力変数との間の相関関係
【０２０９】
フレミングの法則により、モータ電流ｉ（正確には、電機子電流、巻線電流）が分かれば、モータ１２に発生するモータトルクＴｍ(t)が分かる。
Ｔｍ(t)＝Ｋｔ・ｉ(t)
ただし、Ｋｔは、既知のトルク係数である。
【０２１０】
さらに、ニュートンの法則により、モータトルクＴｍ(t)が分かればモータ１２の角加速度αM(t)が分かる。
ＪMαM(t)＝Ｔｍ(t)
ただし、ＪMは、既知のモータイナーシャである。
【０２１１】
さらに、角加速度αM(t)が分かれば、時間積分により、角速度ωM(t)が分かり、さらなる時間積分により、モータ角度θｍ(t)が分かる。
【０２１２】
よって、モータ電流の値とモータ角度θｍ(t)の値との間に、理論的に立証可能な一定の相関関係が存在する。
【０２１３】
２．センサレス推定値の用途
【０２１４】
センサレス推定値としてのモータ角度θｍは、例えば、実用モータ駆動系１１０においてモータ１２の駆動状態を制御するために使用することが可能である。
【０２１５】
３．本実施形態によって奏される特有の効果
【０２１６】
（１）第１の効果
本実施形態によれば、前述のように種々の欠点を有する角度センサ３０１を使用せずにモータ角度θｍを安価に、かつ、高い信頼性および精度で推定できる。
【０２１７】
（２）第２の効果
本実施形態によれば、モータ角度θｍ(t)がモータ電流のみならずインバータ電圧をも考慮して推定される。そのインバータ電圧は、モータ１２に印加される電圧であり、そのインバータ電圧と、モータ１２の内部で生じるモータ電圧との双方に起因して、モータ１２に電流が流れる。
【０２１８】
この時、インバータ電圧とモータ電流との間には、モータモデル６０にあるような相関関係が生じることが知られている。モータ１２における電流の流れやすさは、インバータ電圧とインダクタンスの値によって決まり、そのインダクタンスの値はモータ電流の量と密接に関連して連続的に変化する。
【０２１９】
また、モータ１２の出力トルク（モータトルク）も、モータ電流の量に起因して変化する物理量であるため、前記インダクタンスが変化するということは、モータ電流の変動につながることを意味し、ひいてはトルクの変動につながることを意味する。
【０２２０】
よって、機械学習装置１００に、インバータ電圧またはそのインバータ電圧の時間微分値もしくは時間積分値（「インバータ電圧関連量」のいくつかの例）と、モータ電流またはそのモータ電流の時間微分値もしくは時間積分値（「モータ電流関連量」のいくつかの例）とをそれぞれ入力変数として、かつ、モータ角度θを出力変数として学習させると、モータ１２のインダクタンス変動をも考慮しつつ、モータ角度θｍを推定可能な学習モデル３１０が生成される。
【０２２１】
また、モータ１２におけるモータ電圧とモータ電流とのそれぞれの時間変化量は、モータ１２における銅損、鉄損および磁束密度のそれぞれの変化から大きな影響を受ける。よって、本実施形態においては、学習モデル３１０が、モータ１２における銅損、鉄損および磁束密度のそれぞれの変動を反映するように作成される。
【０２２２】
したがって、モータ電圧とモータ電流の相関関係について学習を行った学習モデル３１０によれば、銅損、鉄損および磁束密度のそれぞれの影響を加味したモータ角度θｍの推定が可能となるため、モータ角度θｍの推定精度が向上する。
【０２２３】
ところで、インバータ１４とモータ１２とが互いに接続された電気回路において、インバータ電圧やモータ電流の計測には時間的な遅れが生じる。そのため、インバータ１４の制御を行う際は、現在値よりも遅れた過去の値を使うことになる。同様に、モータ角度θｍを推定する際は、インバータ電圧やモータ電流については、それぞれの過去の値を使って、モータ角度θｍの現在値を推定することになる。
【０２２４】
一方、モータ電流ｉの現在値は、モータモデル６０から、インバータ電圧ｖの過去値に対応している。具体的には、例えば、モータモデル６０において、インバータ電圧をｔ＝０で与えたとすると、モータ電流がｔ＝１で発生することを意味し、逆に、ｔ＝１のモータ電流、すなわち、モータ電流の現在値は、ｔ＝０のインバータ電圧、すなわち、インバータ電圧の過去値に対応することになる。よって、モータモデル６０を用いれば、インバータ電圧の過去値が分かれば、モータ電流の現在値を推定できる。また、前述のように、モータ角度θｍは、インバータ電圧とモータ電流とから推定可能である。その結果、モータ角度θｍは、インバータ電圧とモータ電流とのそれぞれの取得遅れに関係なく取得できる。
【０２２５】
したがって、機械学習装置１００は、モータ電流が現在値から将来値に向かう過程（時間プロファイル）において、その過程の特性、すなわち、モータ電流の現在値（静的特性）と、その勾配（動的特性）とをそれぞれ属性とするものから、時間積分という性格を有するモータ角度θｍを、現在値の取得の遅れに関係なく、精度よく推定することが可能となる。
【０２２６】
４．取得される状態変数とその取得場所
【０２２７】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流およびモータ角度θｍ
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０２２８】
＜第２実施形態＞
【０２２９】
図１０には、本発明の例示的な第２実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０２３０】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、モータ１２のシャフト１３またはロータに採用するトルク（モータトルク）Ｔｍを検出するトルクセンサ３１１を有する。トルクセンサ３１１としては、例えば、磁歪式、ひずみゲージ式、圧電式、光学式、ばね式、静電容量式などがある。
【０２３１】
機械学習装置１００は、測定部２００により複数の状態変数について測定された複数の値であってトルクセンサ３１１による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータトルクＴｍを出力変数とする学習モデル３１０を作成する。
【０２３２】
実用モータ駆動系１１０は、トルクセンサ３１１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０２３３】
図１１に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、モータトルクＴｍを出力変数として推定する。
【０２３４】
推定されたモータトルクＴｍは、モータトルクＴｍの実際値としてコントローラ５０に入力され、そのコントローラ５０は、モータトルクＴｍの実際値と目標値とに基づき、前述の、インバータ１４についての複数のゲート信号を制御信号として生成してインバータ１４に入力する。
【０２３５】
図１２には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、トルクセンサ３１１に代えて測定部２００１および推定部３６０が採用され、それにより、センサレスでモータトルクＴｍが計測される。
【０２３６】
１．入力変数と出力変数との間の相関関係
【０２３７】
フレミングの法則により、モータ電流（正確には、電機子電流）が分かれば、モータ１２に発生するモータトルクＴｍ(t)が分かる。
Ｔｍ(t)＝Ｋｔ(t)
ただし、Ｋｔは、既知のトルク係数である。
【０２３８】
よって、モータ電流の値とモータトルクＴｍ(t)の値との間に、理論的に立証可能な一定の相関関係が存在する。
【０２３９】
２．センサレス推定値の用途
【０２４０】
センサレス推定値としてのモータトルクＴｍは、例えば、実用モータ駆動系１１０においてモータ１２の駆動状態を制御するために使用することが可能である。
【０２４１】
３．本実施形態によって奏される特有の効果
【０２４２】
（１）第１の効果
本実施形態によれば、前述のように種々の欠点を有するトルクセンサ３１１を使用せずにモータトルクＴｍを安価に、かつ、高い信頼性および精度で推定できる。
【０２４３】
（２）第２の効果
前述の説明から容易に類推されるように、モータ１２のインダクタンスが変動すると、モータ電流も変動し、その結果、モータトルクＴｍが変動する。よって、モータ１２のインダクタンスの変動は、モータトルクＴｍ(t)の推定精度の低下につながる。
【０２４４】
これに対し、本実施形態によれば、モータトルクＴｍ(t)が、モータ電流関連量のみならずインバータ電圧関連量をも考慮して推定される。
【０２４５】
よって、本実施形態によれば、学習モデル３１０がモータ１２のインダクタンスの変動を考慮してモータ電流を推定可能となるため、モータトルクＴｍ(t)の推定精度が向上する。
【０２４６】
４．取得される状態変数とその取得場所
【０２４７】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流およびモータトルクＴｍ
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０２４８】
＜第３実施形態＞
【０２４９】
図１３には、本発明の例示的な第３実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０２５０】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、モータ１２のうちの特定の位置のモータ温度ＴＨｍを検出する温度センサ３３１を有する。温度センサ３３１としては、例えば、熱電対、白金測温抵抗体、サーミスタ測温体などがある。
【０２５１】
ここに、「特定の位置」は、その位置の温度が、他の部位の温度より、モータ１２の実特性を敏感に変動させる要因となるように選択される。その特定の位置は、特性敏感位置と称される。しかも、その特性敏感位置には、温度センサ３３１を取り付けることが困難であり、試験品ならともかく量産品においては、温度センサ３３１を特性敏感位置に取り付けることは実用的ではない。
【０２５２】
特性敏感位置としては、例えば、モータ１２のうちの巻線（ステータ巻線、固定子巻線、電機子巻線）、永久磁石（ロータ側磁石）などがある。よって、温度センサ３３１は、例えば、巻線温度（ステータ側温度）、永久磁石温度（ロータ側温度）などを検出することになる。永久磁石は、通常、モータ１２のロータ（回転子）と共に回転するため、試験品ならともかく量産品においては、永久磁石の温度を実測することは困難である。
【０２５３】
機械学習装置１００は、測定部２００１により複数の状態変数について測定された複数の値であってトルクセンサ３１１による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータ温度ＴＨｍを出力変数とする学習モデル３１０を作成する。
【０２５４】
実用モータ駆動系１１０は、温度センサ３３１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０２５５】
図１４に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、モータ温度ＴＨｍを出力変数として推定する。
【０２５６】
推定されたモータ温度ＴＨｍは、モータ温度ＴＨｍの実際値としてコントローラ５０に入力される。一例においては、そのコントローラ５０が、温度補償を行うため、モータ温度ＴＨｍの実際値の、許容範囲の上限値からの増分に基づき、その増分に基づくモータ１２の性能低下分が補償されるように、前述の、インバータ１４についての複数のゲート信号を制御信号として生成してインバータ１４に入力する。
【０２５７】
図１５には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、温度センサ３３１に代えて測定部２００１および推定部３６０が採用され、それにより、センサレスでモータ温度（例えば、巻線温度、永久磁石温度）ＴＨｍが計測される。
【０２５８】
１．入力変数と出力変数との間の相関関係
【０２５９】
モータ１２は、電気エネルギーを機械エネルギーに変換する機械であるため、その変換の際のエネルギー損失が熱として発生し、その熱を内的要因としてモータ１２の温度が上昇する。
【０２６０】
また、モータ１２が、外部の発熱体に近接して配置されて使用される場合には、その発熱体からの熱を外的要因としてモータ１２の温度が上昇する可能性もある。
【０２６１】
いずれにしても、モータ１２の巻線（ステータ側）の温度が上昇する。その巻線での熱損失は銅損と称され、また、鉄心での損失は鉄損と称される。銅損は、巻線の電気抵抗により損失するジュール熱である。これに対し、鉄損は、材料内部での誘導起電力によって生じる渦電流による渦電流損と、交流で鉄心が磁化されるときに発生するヒステリシス損とである。
【０２６２】
モータ１２の巻線（ステータ側）の温度が上昇すると、モータ１２の永久磁石（ロータ側）の温度も上昇する。
【０２６３】
永久磁石は、温度が上昇すると、減磁する。その減磁が起こると、巻線を流れる電流すなわちモータ電流が増加する。
【０２６４】
そうすると、モータ電流の、正規の値からの増分が分かると、モータ１２の永久磁石の温度の、正規の値からの増分が分かる。よって、モータ電流の値と永久磁石の温度の値との間に、理論的に立証可能な一定の相関関係が存在する。
【０２６５】
したがって、モータ１２のうち、巻線、鉄心および永久磁石のそれぞれの位置は、前述の特性敏感位置として選択することが可能である。それら３つの候補位置のうち、最も実測することが困難な位置は、永久磁石である。
【０２６６】
よって、学習用センサとしての温度センサ３３１は、永久磁石に設置され、その温度センサ３３１の出力信号は、例えば、回転トランス（図示しない）を介して、モータ１２の外部にある機械学習装置３４０の状態観測部３００に出力される。
【０２６７】
２．センサレス推定値の用途
【０２６８】
（１）第１の用途
推定されたモータ温度ＴＨｍは、モータ温度ＴＨｍの上昇に基づくモータ１２の性能低下分が補償されるように、モータ１２の作動中に、前記制御信号をリアルタイムで補正するために利用してもよい。
【０２６９】
（２）第２の用途
モータ１２において永久磁石および巻線の温度が上昇すると、その巻線の電気抵抗値（図４においては、「Ｒａ」で表されている。）が増加する。すなわち、温度上昇に伴い、ステータの温度（固定子鉄心および固定子巻線のそれぞれの温度）が上昇し、それに伴い、ステータの電気抵抗値（固定子巻線の電気抵抗値）が増加するのである。
【０２７０】
よって、コントローラ５０は、実モータ１２を記述するモータモデル（仮想モータ）６０を定義するために使用される前述の電圧方程式（図４参照）における巻線抵抗Ｒａを、推定部３６０によって推定されたモータ温度ＴＨｍ（例えば、永久磁石温度）に基づき、モータ温度ＴＨｍが上昇すれば巻線抵抗Ｒａが増加するように補正するように構成してもよい。
【０２７１】
すなわち、モータモデル６０を、モータ１２の作動中に、リアルタイムで補正するためにモータ温度ＴＨｍの推定値を用いてもよいのである。
【０２７２】
３．本実施形態によって奏される特有の効果
【０２７３】
（１）第１の効果
本実施形態を用いる場合の直接的な効果として、前述のように、量産品においては温度センサ３３１の設置が困難であるために温度を実測できない部位のその温度であってモータ１２の特性を顕著に変化させるものを、温度センサ３３１を使用せずにモータ温度ＴＨｍを安価に、かつ、高い信頼性および精度で推定できるという効果が得られる。
【０２７４】
（２）第２の効果
本実施形態によれば、モータ１２の挙動がモータ電流関連量のみならずインバータ電圧関連量すなわちモータ電圧関連量をも考慮して高精度に推定され、そのうえで、それら２つの状態変数にモータ１２の実測温度を関連付けることによって機械学習モデル３１０が学習される。よって、本実施形態によれば、その機械学習モデル３１０を用いることにより、２つの状態変数からのモータ１２の温度の推定精度が向上する。
【０２７５】
（３）第３の効果
モータモデル６０は、従来、図４に示すインダクタンス行列のそれぞれの要素Ｌ，Ｍが固定値であるように定義されていた。一方、要素Ｌ，Ｍは、本来、モータ１２の温度に応じて変動する可変値である。例えば、モータ１２の回転子の温度が上昇すると、モータ１２内において、減磁してインダクタンスの変動が小さくなる。
【０２７６】
このような事情を踏まえ、本実施形態を用いる場合の派生的な効果として、モータモデル６０を、インダクタンス行列のそれぞれの要素Ｌ，Ｍがモータ１２の温度ＴＴに応じて変化する可変値であるように再定義し、モータ・コントローラ５０が、モータ１２の制御に際し、そのモータ１２の温度ＴＴとして、前述のモータ温度ＴＨｍの推定値を用いることが可能となるという効果が得られる。
【０２７７】
（４）第４の効果
モータ１２の固定子巻線の温度が上昇すると、モータ１２の巻線抵抗Ｒａが増加する。
【０２７８】
この現象に着目すると、本実施形態を用いる場合の派生的な効果として、モータモデル６０を、巻線抵抗Ｒａがモータ１２の温度ＴＴに応じて変化する可変値であるように再定義し、モータ・コントローラ５０が、モータ１２の制御に際し、そのモータ１２の温度ＴＴとして、前述のモータ温度ＴＨｍの推定値を用いることが可能となるという効果が得られる。
【０２７９】
（５）第５の効果
モータ１２の回転子の温度が上昇すると、モータ１２内において、減磁して、回転角度に依存するインダクタンスの変動が小さくなる。
【０２８０】
この現象に着目すると、本実施形態を用いる場合の派生的な効果として、モータモデル６０を、巻線抵抗Ｒａがモータ１２の温度ＴＴに応じて変化する可変値であるように再定義し、モータ・コントローラ５０が、モータ１２の制御に際し、そのモータ１２の温度ＴＴとして、前述のモータ温度ＴＨｍの推定値を用いることが可能となるという効果が得られる。
【０２８１】
４．取得される状態変数とその取得場所
【０２８２】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流および温度センサＴＨｍ
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０２８３】
＜第４実施形態＞
【０２８４】
図１６には、本発明の例示的な第４実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０２８５】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、モータ１２のシャフト１３またはロータに作用する前述の出力軸トルクＴ１を検出する前述のトルクセンサ３１１を有する。
【０２８６】
トルクセンサ３１１は、前記外部負荷Ｌがモータ１２のシャフト１３に接続されていない状態での測定値として出力軸トルクＴ１を出力し、一方、前記外部負荷Ｌがモータ１２のシャフト１３に接続されている状態での測定値として合計トルクＴ３（出力軸トルクＴ１と外部負荷トルクセンサＴ２との和）を出力する。合計トルクＴ３から出力軸トルクＴ１を減算することにより、外部負荷トルクセンサＴ２を、計算により、出力軸トルクＴ１から独立した状態変数として取得することが可能である。
【０２８７】
機械学習装置１００は、測定部２００により複数の状態変数について測定された複数の値であってトルクセンサ３１１による実測値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、出力軸トルクＴ１および外部負荷トルクＴ２をそれぞれ出力変数とする学習モデル３１０を作成する。
【０２８８】
実用モータ駆動系１１０は、トルクセンサ３１１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０２８９】
図１７に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、出力軸トルクＴ１および外部負荷トルクＴ２をそれぞれ互いに独立した２つの状態変数として、かつ、それぞれ出力変数として推定する。
【０２９０】
推定された出力軸トルクＴ１および外部負荷トルクＴ２はコントローラ５０に入力され、そのコントローラ５０は、出力軸トルクＴ１および外部負荷トルクＴ２に基づき、前述の、インバータ１４についての複数のゲート信号を制御信号として生成してインバータ１４に入力する。
【０２９１】
図１７には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、トルクセンサ３１１に代えて測定部２００１および推定部３６０が採用され、それにより、センサレスで出力軸トルクＴ１および外部負荷トルクＴ２がそれぞれ、互いに独立した状態変数として計測される。
【０２９２】
１．入力変数と出力変数との間の相関関係
【０２９３】
前述の２慣性系の運動方程式の一例は、個々の慣性について、次のように変形できる。
ＪMαM(t)＋Ｋcoup(ωM−ωL)＝Ｔｍ（＝Ｔ１）
ＪLαL(t)−Ｋcoup（ωM−ωL)＋Ｔｄ（＝Ｔ２）＝０
【０２９４】
フレミングの法則により、モータ電流ｉ（正確には、電機子電流）が分かれば、モータトルクＴｍすなわち出力軸トルクＴ１が分かる。
Ｔ１＝Ｋｔ・ｉ(t)
ただし、Ｋｔは、既知のトルク係数である。
【０２９５】
よって、モータ電流の値と出力軸トルクＴ１の値との間に、理論的に立証可能な一定の相関関係が存在する。
【０２９６】
また、上述の第１式において、モータ１２の角速度ωMは、学習用モータ駆動系９０において可観測な物理量であるモータ角度θMの時間微分として誘導でき、また、モータ１２の角加速度αMは、角速度ωMの時間微分として誘導できる。また、ＪMおよびＫcoupはいずれも既知の定数である。よって、第１式から、負荷Ｌの角速度ωLを誘導できる。
【０２９７】
また、上述の第２式において、負荷Ｌの角加速度αLは、角速度ωLをの時間微分として誘導できる。また、ＪLおよびＫcoupはいずれも既知の定数である。よって、第２式から、外乱トルクＴｄすなわち外部負荷トルクＴ２を誘導できる。
【０２９８】
よって、モータ角度θMの値と外部負荷トルクＴ２の値との間に、理論的に立証可能な一定の相関関係が存在する。
【０２９９】
２．センサレス推定値の用途
【０３００】
（１）第１の用途
センサレス推定値としての出力軸トルクＴ１は、例えば、実用モータ駆動系１１０においてモータ１２の駆動状態を制御するために使用することが可能である。
【０３０１】
（２）第２の用途
センサレス推定値としての外部負荷トルクＴ２は、負荷Ｌの静的および／または動的なダイナミクスを推定し、および／または解析するために使用することが可能である。
【０３０２】
３．本実施形態によって奏される特有の効果
【０３０３】
（１）第１の効果
本実施形態によれば、前述のように種々の欠点を有するトルクセンサ３１１を使用せずに出力軸トルクＴ１および外部負荷トルクＴ２をそれぞれ、互いに独立した状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【０３０４】
（２）第２の効果
前述の説明から容易に類推されるように、モータ１２のインダクタンスの変動は、モータ電流の変動につながり、ひいては、出力軸トルクＴ１および外部負荷トルクＴ２の推定精度の低下につながる。
【０３０５】
これに対し、本実施形態によれば、出力軸トルクＴ１および外部負荷トルクＴ２が、モータ電流関連量のみならずインバータ電圧関連量をも考慮して推定される。
【０３０６】
よって、本実施形態によれば、学習モデル３１０がモータ１２のインダクタンスの変動を考慮してモータ電流を推定可能となるため、出力軸トルクＴ１および外部負荷トルクＴ２の推定精度が向上する。
【０３０７】
４．取得される状態変数とその取得場所
【０３０８】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流、出力軸トルクＴ１および外部負荷トルクＴ２
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０３０９】
＜第５実施形態＞
【０３１０】
図１９には、本発明の例示的な第５実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０３１１】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、インバータ１４の合計電流を検出するインバータ合計電流センサ３７１と、インバータ１４の各相ごとの個別電流を検出する複数のインバータ個別電流センサ３８１とを有する。
【０３１２】
インバータ合計電流センサ３７１は、図２に示すように、インバータ１４のうち、電源Ｖｄｃが接続される正極端子および負極端子に接続されるように設置される。
【０３１３】
また、複数のインバータ個別電流センサ３８１は、次の６つの個別電流を検出するようにインバータ１４に設置される。
【０３１４】
＋アームＵ相電流（図２に示すＵ相上アーム・スイッチング素子に設置）
−アームＵ相電流（同図に示すＵ相下アーム・スイッチング素子に設置）
＋アームＶ相電流（同図に示すＶ相上アーム・スイッチング素子に設置）
−アームＶ相電流（同図に示すＶ相下アーム・スイッチング素子に設置）
＋アームＷ相電流（同図に示すＷ相上アーム・スイッチング素子に設置）
−アームＷ相電流（同図に示すＷ相下アーム・スイッチング素子に設置）
【０３１５】
機械学習装置１００は、測定部２００により複数の状態変数について測定された複数の値であってインバータ合計電流センサ３７１および複数のインバータ個別電流センサ３８１による複数の検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindをそれぞれ出力変数とする学習モデル３１０を作成する。
【０３１６】
実用モータ駆動系１１０は、インバータ合計電流センサ３７１および複数のインバータ個別電流センサ３８１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０３１７】
図２０に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindをそれぞれ互いに独立した複数の状態変数として、かつ、それぞれ出力変数として推定する。
【０３１８】
図２１には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、インバータ合計電流センサ３７１および複数のインバータ個別電流センサ３８１に代えて推定部３６０が採用され、それにより、センサレスでインバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindがそれぞれ、互いに独立した状態変数として計測される。
【０３１９】
推定されたインバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindは実用モータ駆動系１１０のうちの故障診断部４００に入力され、その故障診断部４００は、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindに基づき、モータ１２の複数の相巻線のうちのいずれが故障している可能性があるのかを診断する。
【０３２０】
故障診断部４００は、例えば、インバータ合計電流Ｉtotの推定値と、複数のインバータ個別電流Ｉindの複数の推定値の合計値とが互いに一致しない場合に、モータ１２が、いずれかのゲート２４（不定）に関連して、故障している可能性があると診断する。
【０３２１】
さらに、故障診断部４００は、例えば、インバータ合計電流Ｉtotの推定値と、複数のインバータ個別電流Ｉindの複数の推定値の合計値とが互いに一致する場合に、そのときにインバータ１４に出力された制御信号（制御信号（前述の複数のゲート信号）を参照すれば、インバータ１４のうちいずれのゲート２４がＯＮにされるはずであったのかが分かる）との比較により、モータ１２が、いずれかのゲート２４に関連して、故障しており、そのゲート２４は、本来であれば０ではないはずのインバータ個別電流Ｉindが０であるゲート２４である可能性があると診断する。
【０３２２】
１．入力変数と出力変数との間の相関関係
【０３２３】
図２に例示する電気回路によれば、各相ごとのモータ電流の合計値は、インバータ合計電流Ｉtotに関連付けられる。また、図２に例示する電気回路によれば、各相ごとのモータ電流は、各相ごとのインバータ個別電流Ｉindに関連付けられる。
【０３２４】
よって、各相ごとのモータ電流の合計値とインバータ合計電流Ｉtotとの間に、理論的に立証可能な一定の相関関係が存在する。また、各相ごとのモータ電流と各相ごとのインバータ個別電流Ｉindとの間に、理論的に立証可能な一定の相関関係が存在する。
【０３２５】
２．センサレス推定値の用途
【０３２６】
センサレス推定値としてのインバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindは、前記制御信号と比較すれば、複数の相のうちいずれの相に電流が流れていないとか過電流が流れているという故障が発生している可能性の有無を診断するために使用することが可能である。
【０３２７】
３．本実施形態によって奏される特有の効果
【０３２８】
（１）第１の効果
本実施形態によれば、前述のように種々の欠点を有するインバータ合計電流センサ３７１および複数のインバータ個別電流センサ３８１を使用せずにインバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindをそれぞれ、互いに独立した状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【０３２９】
（２）第２の効果
モータモデル６０においてインダクタンスが固定値として設定される場合には、モータ１２のインダクタンスの変動は、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindの推定精度の低下につながる。
【０３３０】
これに対し、本実施形態によれば、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindが、モータ電流のみならずインバータ電圧をも考慮して推定される。
【０３３１】
よって、本実施形態によれば、学習モデル３１０がモータ１２のインダクタンスの変動を考慮してインバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindを推定可能となるため、インバータ合計電流Ｉtotおよび複数のインバータ個別電流Ｉindの推定精度が向上する。
【０３３２】
４．取得される状態変数とその取得場所
【０３３３】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流、インバータ合計電流およびインバータ個別電流
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０３３４】
＜第６実施形態＞
【０３３５】
図２２には、本発明の例示的な第６実施形態に従う学習用モータ駆動系９０、機械学習装置１００および実用モータ駆動系１１０がそれぞれ機能ブロック図で表されている。
【０３３６】
本実施形態においては、学習用モータ駆動系９０が、学習用センサとして、モータ１２のステータの振動状態量（例えば、加速度、振動周波数（例えば、高周波成分の周波数）、振幅など）を検出するステータ用加速度センサ４６１を有する。そのステータ用加速度センサ４６１は、モータ１２のステータに設置される。
【０３３７】
機械学習装置１００は、測定部２００により複数の状態変数について測定された複数の値であってステータ用加速度センサ４６１による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、ステータ振動状態量を出力変数とする学習モデル３１０を作成する。
【０３３８】
実用モータ駆動系１１０は、ステータ用加速度センサ４６１を有しないが、その代わりに、測定部２００１および推定部３６０を有する。
【０３３９】
図２３に示すように、推定部３６０は、実用モータ駆動系１１０の作動中、電圧センサ３２および電流センサ３４によってそれぞれ検出された複数の値を複数の入力変数として学習モデル３１０に適用し、それにより、ステータ振動状態量およびロータ振動状態量をそれぞれ互いに独立した複数の状態変数として、かつ、それぞれ出力変数として推定する。
【０３４０】
図２４には、実用モータ駆動系１１０が機能ブロック図で表されている。この実用モータ駆動系１１０は、図１に示すモータ駆動系１０に近似する学習用モータ駆動系９０に対し、ステータ用加速度センサ４６１に代えて測定部２００１および推定部３６０が採用され、それにより、センサレスでステータ振動状態量が状態変数として計測される。
【０３４１】
推定されたステータ振動状態量は実用モータ駆動系１１０のうちの寿命予測部４１０に入力され、その寿命予測部４１０は、ステータ振動状態量に基づき、モータ１２の寿命の末期を予測する。
【０３４２】
ところで、モータ１２、特に、ＰＭＳＭモータは、駆動中に、出力軸トルクＴ１の脈動、すなわち、トルク脈動が発生する可能性がある。トルク脈動は、コギングトルクやインバータ１４の短絡防止時間などが原因で発生する可能性がある。
【０３４３】
トルク脈動が発生すると、その反作用により、モータ１２のフレーム（ステータ側を含む）に振動が発生する。そのフレーム振動は、ロータの振動および／またはステータの振動として発現される。
【０３４４】
さらに、他の要因によってもモータ１２にフレーム振動が発生し得る。そのような要因としては、機械系を構成する部品の摩耗がある。
【０３４５】
いずれにしても、そのフレーム振動は、モータ１２の制御性能の低下、実用モータ駆動系１１０のうちの機械系の劣化などの問題を招来する可能性がある。そのうち、特に、機械系の劣化は、モータ１２の寿命が予定より早期に尽きる原因となり得る。
【０３４６】
そのような事情を背景として、状態観測部３４０は、モータ１２のフレーム振動のうちのステータ振動を、ステータに取り付けた加速度センサ４６１によってステータ加速度として実測するとともに、その実測されたステータ加速度のうちの定常成分（低周波成分）および振動成分（高周波成分）からステータ加速度振動成分ｇｓｔのみをフィルタ（例えば、ＦＦＴアナライザ）で抽出し、そのステータ加速度振動成分ｇｓｔから、許容できないステータ振動の有無を判定する。ステータ振動の要因としては機械系の摩耗がある。
【０３４７】
この場合、学習モデル３１０の入力変数は、インバータ電圧およびモータ電流であり、また、出力変数は、ステータ振動状態量としてのステータ加速度振動成分ｇｓｔである。
【０３４８】
これに対し、寿命予測部４１０は、プロセッサとメモリとを有し、ステータ加速度振動成分ｇｓｔとモータ１２の残り寿命年数との間に予め定められた関係であって事前に統計的に確認されたものがメモリに保存されている。
【０３４９】
寿命予測部４１０のプロセッサは、その関係に従い、モータ１２の残り寿命年数を予測する。さらに、寿命予測部４１０のプロセッサは、その予測を行った日時に、その残り寿命年数の予測値を加算することにより、モータ１２の寿命の末期を計算する。
【０３５０】
１．入力変数と出力変数との間の相関関係
【０３５１】
前述のように、ロータ振動の要因はモータ電流の振動である。よって、モータ電流とロータ振動状態量、すなわち、予想外のロータ振動の有無との間に、理論的に立証可能な一定の相関関係が存在する。
【０３５２】
これに対し、ステータに振動が発生すると、モータ１２の全体に振動が発生し、その結果、モータ１２の出力軸の回転運動に予想外の変動が発生する。出力軸の回転運動に予想外の変動が発生すると、モータ角度θｍの時刻歴に予想外の変動が発生する。一方、モータ角度θｍは、前述のように、モータ電流から誘導可能である。
【０３５３】
よって、モータ電流とステータ振動状態量、すなわち、予想外のステータ振動の有無との間に、理論的に立証可能な一定の相関関係が存在する。
【０３５４】
２．センサレス推定値の用途
【０３５５】
センサレス推定値としてのステータ振動状態量は、モータ１２の振動の有無を診断でき、ひいては、モータ１２の寿命の末期を予想できる。
【０３５６】
３．本実施形態によって奏される特有の効果
【０３５７】
本実施形態によれば、ステータ用加速度センサ４６１を使用せずにステータ振動状態量を状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【０３５８】
４．取得される状態変数とその取得場所
【０３５９】
（１）学習用モータ駆動系９０における実モータ状態量検出部（モータ制御用測定部）３０：
モータ角度θｍ、モータトルクＴｍなど
（２）学習用モータ駆動系９０における測定部（学習用測定部）２００：
インバータ電圧、モータ電流、ステータ加速度振動成分ｇｓｔ（ステータ振動状態量）
（３）実用モータ駆動系１１０における測定部（モータ制御用測定部）２００１：
インバータ電圧およびモータ電流
【０３６０】
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記［発明の概要］の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
本発明により、次の複数の態様が得られる。
（態様１）
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも１つである選択モータ状態量を少なくとも１つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも１つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも１つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも１つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも１つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも１つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも１つの選択モータ状態量を推定するように学習されており、
前記推定部は、その学習済の学習モデルを用いることにより、前記少なくとも１つの選択モータ状態量を推定するＡＩ搭載型モータ状態量推定システム。
（態様２）
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータ角度関連量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータ角度関連量を含み、
前記複数のモータ状態量推定用センサは、前記モータの角度をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ角度関連量を推定する態様１に記載のＡＩ搭載型モータ状態量推定システム。
（態様３）
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータトルク関連量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータトルク関連量を含み、
前記複数のモータ状態量推定用センサは、前記モータのトルクをダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータトルク関連量を推定する態様１または２に記載のＡＩ搭載型モータ状態量推定システム。
（態様４）
前記複数の入力変数は、前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量は含むが、前記モータの温度は含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記モータの温度を含み、
前記複数のモータ状態量推定用センサは、前記モータの温度をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータの温度を推定する態様１ないし３のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
（態様５）
前記モータの温度は、前記モータのうち巻線の温度および／または磁石の温度を含む態様４に記載のＡＩ搭載型モータ状態量推定システム。
（態様６）
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータについての出力軸トルクと、前記モータに連結される外部負荷から作用する外部負荷トルクとを含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記出力軸トルクと前記外部負荷トルクとを、それぞれ互いに独立した変数として含み、
前記複数のモータ状態量推定用センサは、前記出力軸トルクをダイレクトに測定するセンサと、前記外部負荷トルクをダイレクトに測定するセンサとを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体についての前記出力軸トルクと前記外部負荷についての前記外部負荷トルクとを推定する態様１ないし５のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
（態様７）
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記インバータまたはパワーアンプについての合計電流と、前記インバータまたはパワーアンプについての各相ごとの個別電流とを含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記合計電流と、前記各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記複数のモータ状態量推定用センサは、前記合計電流をダイレクトに測定するセンサと、前記各相ごとの個別電流をダイレクトに測定するセンサとを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記合計電流と前記各相ごとの個別電流とを推定する態様１ないし６のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
（態様８）
さらに、
前記各相ごとの個別電流であって前記推定部によって推定されたものに基づき、前記インバータもしくはパワーアンプおよび／または前記モータにおけるいずれの相に故障が発生している可能性があるか否かを、故障している可能性があるいずれかの相に関連付けて判定する故障診断を行う故障診断部を含む態様７に記載のＡＩ搭載型モータ状態量推定システム。
（態様９）
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータにおけるステータの振動状態量を含まず、
前記少なくとも１つの選択モータ状態量および前記少なくとも１つの出力変数は、いずれも、前記ステータの振動状態量を含み、
前記複数のモータ状態量推定用センサは、前記ステータの振動状態量をダイレクトに測定するセンサを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記ステータの振動状態量を推定する態様１ないし８のいずれかに記載のＡＩ搭載型モータ状態量推定システム。
（態様１０）
さらに、
前記ステータの振動状態量であって前記推定部によって推定されたものに基づき、前記モータの寿命の末期を推定し、その時期を事前に告知する寿命予測部を含む態様９に記載のＡＩ搭載型モータ状態量推定システム。
（態様１１）
前記機械学習は、前記ステータの振動状態量であって、前記モータに設置される加速度センサおよび／またはトルクセンサを用いて測定されたものを用いて行われる態様９または１０に記載のＡＩ搭載型モータ状態量推定システム。
（態様１２）
前記モータは、巻線，鉄心および永久磁石を含み、
前記モータの温度は、前記巻線，鉄心および永久磁石のうちの少なくとも１つの温度を含む態様４に記載のＡＩ搭載型モータ状態量推定システム。
（態様１３）
電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ・コントローラに実装される機械学習モデルを設計して構築するモータモデル用機械学習方法であって、
前記機械学習モデルは、態様１ないし１２のいずれかに記載の学習モデルであり、
当該方法は、
前記モータを電磁気学的側面からモデリングし、電圧方程式を用いて記述するモータモデルを構築する第１ステップと、
前記モータおよび負荷より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する第２ステップと、
前記モータモデルの特性および前記運動モデルの特性に基づき、前記モータ駆動系および前記運動系について複数の状態変数を選択する第３ステップと、
前記機械学習モデルの性能要件に基づき、前記選択された複数の状態変数から、前記機械学習モデルにとっての複数の入力変数および少なくとも１つの出力変数を選択する第４ステップと、
前記機械学習モデルの性能要件に基づき、前記機械学習モデルのネットワーク構成を構築する第５ステップと、
前記選択された少なくとも１つの出力変数の特性に基づき、前記機械学習モデルのための複数の教師データセットを取得する第６ステップと、
前記取得された複数の教師データセットを用いて前記機械学習モデルのための機械学習を実行し、それにより、前記機械学習モデルを構築する第７ステップと
を含むモータモデル用機械学習方法。
【要約】
【課題】機械学習モデルを用いることにより、モータの特定のモータ状態量をセンサレスで推定する。
【解決手段】モータ１２を停止または回転させるモータ駆動系１１０についての複数の入力変数から少なくとも１つの状態量を少なくとも１つの出力変数として推定するシステムにおいて、それぞれのセンサを用いて複数の入力変数を測定する測定部２００１と、前記少なくとも１つの状態量を推定するための機械学習を行った学習済みの学習モデル３１０に、前記複数の入力変数を入力することにより、前記状態量を学習モデルから前記少なくとも１つの出力変数として推定する推定部３６０とを設ける。複数の入力変数は、各相のインバータ電圧関連量と、各相のモータ電流関連量とを含むが、前記少なくとも１つの状態量を含まず、測定部２００１は、前記状態量を測定するためのセンサを含まない。
【選択図】図７【図１】
0006850458.tif 000002
【図２】
0006850458.tif 000003
【図３】
0006850458.tif 000004
【図４】
0006850458.tif 000005
【図５】
0006850458.tif 000006
【図６】
0006850458.tif 000007
【図７】
0006850458.tif 000008
【図８】
0006850458.tif 000009
【図９】
0006850458.tif 000010
【図１０】
0006850458.tif 000011
【図１１】
0006850458.tif 000012
【図１２】
0006850458.tif 000013
【図１３】
0006850458.tif 000014
【図１４】
0006850458.tif 000015
【図１５】
0006850458.tif 000016
【図１６】
0006850458.tif 000017
【図１７】
0006850458.tif 000018
【図１８】
0006850458.tif 000019
【図１９】
0006850458.tif 000020
【図２０】
0006850458.tif 000021
【図２１】
0006850458.tif 000022
【図２２】
0006850458.tif 000023
【図２３】
0006850458.tif 000024
【図２４】
0006850458.tif 000025
【図２５】
0006850458.tif 000026
【図２６】
0006850458.tif 000027