(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-16
(45)【発行日】2024-05-24
(54)【発明の名称】AI搭載型モータ状態量推定システム
(51)【国際特許分類】
H02P 23/14 20060101AFI20240517BHJP
H02P 27/06 20060101ALI20240517BHJP
【FI】
H02P23/14
H02P27/06
(21)【出願番号】P 2020116030
(22)【出願日】2020-07-04
【審査請求日】2023-07-03
(31)【優先権主張番号】P 2019211016
(32)【優先日】2019-11-22
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】505173843
【氏名又は名称】ディエスピーテクノロジ株式会社
(74)【代理人】
【識別番号】100107674
【氏名又は名称】来栖 和則
(72)【発明者】
【氏名】藤井 真一
(72)【発明者】
【氏名】磯部 成久
(72)【発明者】
【氏名】竹田 泰隆
【審査官】服部 俊樹
(56)【参考文献】
【文献】国際公開第2018/220751(WO,A1)
【文献】特開2018-014838(JP,A)
【文献】特開2018-164325(JP,A)
【文献】国際公開第2019/106875(WO,A1)
【文献】特開平06-205599(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 23/14
H02P 27/06
(57)【特許請求の範囲】
【請求項1】
電源からの電気エネルギーをインバータまたはパワーアンプを介して複数の相を有するモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも1つである選択モータ状態量を少なくとも1つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも1つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも1つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも1つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも1つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも1つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも1つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータの合計電流であって前記インバータまたはパワーアンプについての合計電流に関連付けられるものと、前記モータの各相ごとの個別電流であって前記インバータまたはパワーアンプについての各相ごとの個別電流に関連付けられるものとを含まず、
前記少なくとも1つの選択モータ状態量および前記少なくとも1つの出力変数は、いずれも、前記合計電流と、前記各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記複数のモータ状態量推定用センサは、前記合計電流をダイレクトに測定するセンサと、前記各相ごとの個別電流をダイレクトに測定するセンサとを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記合計電流と前記各相ごとの個別電流とを推定し、
当該システムは、さらに、
前記モータのうちの電気系が故障している可能性があるかまたは機械系が故障している可能性があるかを診断し、前記電気系が故障している可能性があると診断した場合と前記機械系が故障している可能性があると診断した場合とに場合分けして前記モータのうち故障している可能性のある部位および/またはその故障の真の原因である可能性のある原因を診断する故障診断部を含むAI搭載型モータ状態量推定システム。
【請求項2】
前記故障診断部は、前記電気系が故障している可能性があると診断した場合に、前記インバータまたはパワーアンプのいずれかのゲートがONにされるはずであり、かつ、前記合計電流の推定値も前記複数の相の前記個別電流の推定値の合計値も0であることを条件に、前記モータにおいていずれかの相の巻線が断線している可能性があると診断する第1診断部を含む請求項1に記載のAI搭載型モータ状態量推定システム。
【請求項3】
前記故障診断部は、前記電気系が故障している可能性があると診断した場合に、前記インバータまたはパワーアンプのいずれのゲートもONにされないはずであり、かつ、前記合計電流の推定値または前記複数の相の前記個別電流の推定値の合計値が0ではないことを条件に、前記モータにおいていずれかの相の巻線が溶着して短絡している可能性があると診断する第2診断部を含む請求項1または2に記載のAI搭載型モータ状態量推定システム。
【請求項4】
前記故障診断部は、前記機械系が故障している可能性があると診断した場合に、前記モータのシャフトの回転状態量のこれまでの時刻履歴の分類に基づき、前記故障の原因を同定するために、予め定められた複数の候補原因のうちのいずれかを選択する第3診断部を含む請求項1ないし3のいずれかに記載のAI搭載型モータ状態量推定システム。
【請求項5】
請求項1ないし4のいずれかに記載の故障診断部として機能するためのプログラム。
【請求項6】
請求項5に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電気エネルギーを運動エネルギーに変換するモータの状態量を取得する技術に関し、モータに搭載されるセンサに代えて機械学習モデル(AI)を用いることにより、センサレス・パラメータ推定法によって特定のモータ状態量を取得する技術および/または前記機械学習モデルを構築する技術に関する。
【背景技術】
【0002】
電気エネルギーを運動エネルギーに変換するために、電気的に駆動されるモータが使用される。この種のモータは、ますます拡大する種々の用途を有しており、そのような用途としては、例えば、自動車の如き移動体の駆動源や、ロボット、工作機械、搬送機械、荷役機械、空調機器、事務機器の如き運動発生装置の駆動源(アクチュエータ)がある。
【0003】
例えば、自動車という用途においては、モータのみを駆動源として搭載する形式であるか、モータと燃焼機関とをいずれも駆動源として搭載する形式であるかを問わず、モータを駆動源として自動車に搭載することが普及している。この用途においては、モータの種類やモータが使用される環境の如何を問わず、モータを思い通りに制御することがますます必要となってきている。
【0004】
モータを使用する場合には、そのモータを制御する制御系の設計が重要である。また、モータを精度よく制御するためには、モータの入出力特性に適合する制御系の設計が必要である。
【0005】
さらに、モータを精度よく制御するためには、モータまたはそれを主体とするモータ駆動系全体の実状を正確に監視し、その結果を踏まえてモータの制御信号(例えば、モータ電流指令値、インバータ/パワーアンプ電圧指令値など)を決定することが重要である。具体的には、モータまたはそれを主体とするモータ駆動系に関する状態量すなわち状態変数の実際値を精度よくリアルタイムに取得することが重要である。
【0006】
また、モータのための制御系を設計するために、実際のモータを使用することが困難である場合がある。この場合には、その実モータの入出力特性を模擬する計算を行う仮想モータが実モータの代わりに使用され、その仮想モータを用いて、実モータのための制御系が設計される場合もある(例えば、特許文献1参照。)。
【0007】
さらに、近年、人工知能(AI)に関し、ニューラルネットワークおよびディープラーニングなどの技術が急速に進歩し、その結果、人工知能を用いた推論システムの実用化が急速に普及している。
【0008】
そして、AIが搭載されたモータ駆動系も既に提案されている(例えば、特許文献2および3参照。)。
【0009】
特許文献2に開示されているモータ駆動系は、機械学習装置を備えており、その機械学習装置は、状態観測部と学習部とを有するように構成される。その状態観測部は、当該モータ駆動系についての複数の入力変数(モータ駆動系における各構成要素の状態変数)を検出するために、温度センサ、電流センサ、電圧センサおよびモータ位置センサを有する。
【0010】
特許文献3には、モータの位置すなわち回転角度を検出するためにロータリーエンコーダが使用されることが開示されている。
【先行技術文献】
【特許文献】
【0011】
【文献】特開2014-217086号公報
【文献】特許第6243385号公報
【文献】特許第6567205号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
前述のように、モータ駆動系において、制御対象(例えば、モータなど)の状態量すなわち状態変数を取得するために、一般に、センサが用いられる。センサは、取得することが必要な状態量をダイレクトに、すなわち、別の測定値からの推定なしで取得することができるため、状態量についての高精度かつリアルタイムな取得に適している。
【0013】
しかしながら、モータ駆動系について取得することが必要な複数の状態量をそれぞれ検出することが可能な複数のセンサのすべてを当該モータ駆動系に搭載することが困難ないしは不可能なことがある。
【0014】
それは、例えば、センサをモータに設置するのに必要なスペースが増加するという問題、センサ自体が精密機械であるために高価であるという問題、モータへのセンサの設置不良という問題、センサ自体の機械的故障(信号線の断線、耐環境性など)という問題などがあるからである。
【0015】
モータ駆動系に搭載されることが可能なセンサの例として、モータの角度(角度位置、回転位置)を検出する角度センサ(位置センサ)がある。角度センサとしては、例えば、前述のロータリーエンコーダやレゾルバがある。それら例示的な角度センサは、機械的な位置センサに分類される。
【0016】
モータ駆動系におけるモータに角度センサを搭載することが可能であれば、理論的には、その角度センサにより、モータの全回転速度域においてモータ角度を精度よく測定できる。
【0017】
しかし、実際には、角度センサは、例えば、取付スペースに関する問題、コストに関する問題などがあるために、実用上は(試験品ならともかく実機としては、量産段階では)、モータに搭載することが困難である。
【0018】
そのため、モータ駆動系においては、モータ角度が、モータの別の状態量の測定値からの推定によって取得される場合がある。その手法の一つとして、モータの電圧や電流、磁力、トルクなどをセンサによって検出し、その電流検出値からモータ角度が推定される。
【0019】
図25には、モータの回転速度とモータに発生するトルクおよび誘起電圧との関係の一例がグラフで表されている。角度センサを用いずにモータ角度(「モータ位置」とも称する)を推定する方法は、センサレス・パラメータ計測(推定)法とも称される。
【0020】
主なセンサレス・パラメータ計測法は、誘起電圧を利用する計測方式と、高周波信号を注入する計測方式(高調波電圧重畳法など)とに大別される。
【0021】
しかし、誘起電圧を利用する計測方式は、モータの停止時および低速域では、誘起電圧が発生しないかまたは微弱であるため、それらのモータ速度域においては、モータ位置推定法としては不適当である。
【0022】
また、高周波信号を注入する計測方式は、モータの突極性(高周波特性)を利用して、モータの回転角(位置)を推定するものである。しかし、この計測方式は、注入される高周波の影響によってモータが振動する場合があるという問題がある。また、モータの高速回転域においては、位置推定誤差が増加する場合があるという問題がある。
【0023】
そのため、モータ位置を上述の複数のセンサレス・パラメータ計測法によって取得するためには、各モータ速度域ごとに計測方式を異ならせることが必要である。その結果、この場合には、必要な信号処理が複雑となるという問題がある。
【0024】
以上説明した事情を背景として、本発明は、モータに搭載されるセンサに代えて機械学習モデル(AI)を用いることにより、モータの状態量をその状態量(「状態変数」とも称される。)をダイレクトに検出するセンサを用いることなくセンサレス・パラメータ推定(後述の「限定的センサレス推定」)によって取得し、および/または前記機械学習モデルを構築することを課題としてなされたものである。
【課題を解決するための手段】
【0025】
その課題を解決するために、本発明のあるアスペクトによれば、電源からの電気エネルギーをインバータまたはパワーアンプを介して複数の相を有するモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも1つである選択モータ状態量を少なくとも1つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも1つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも1つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも1つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも1つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも1つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによって測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによってダイレクトに測定された複数の入力変数が入力されると、前記少なくとも1つの選択モータ状態量を推定するように学習されており、
前記複数の入力変数は、前記インバータまたはパワーアンプにおける各相の電圧関連量と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータの合計電流であって前記インバータまたはパワーアンプについての合計電流に関連付けられるものと、前記モータの各相ごとの個別電流であって前記インバータまたはパワーアンプについての各相ごとの個別電流に関連付けられるものとを含まず、
前記少なくとも1つの選択モータ状態量および前記少なくとも1つの出力変数は、いずれも、前記合計電流と、前記各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記複数のモータ状態量推定用センサは、前記合計電流をダイレクトに測定するセンサと、前記各相ごとの個別電流をダイレクトに測定するセンサとを含まず、
前記推定部は、前記学習済の学習モデルを用いることにより、前記モータ自体について前記合計電流と前記各相ごとの個別電流とを推定し、
当該システムは、さらに、
前記モータのうちの電気系が故障している可能性があるかまたは機械系が故障している可能性があるかを診断し、前記電気系が故障している可能性があると診断した場合と前記機械系が故障している可能性があると診断した場合とに場合分けして前記モータのうち故障している可能性のある部位および/またはその故障の真の原因である可能性のある原因を診断する故障診断部を含むAI搭載型モータ状態量推定システムが提供される。
また、本発明の一側面によれば、電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ自体についての複数の入力変数から、前記モータ自体についての複数の状態量のうち予め選択された少なくとも1つである選択モータ状態量を少なくとも1つの出力変数として推定するシステムであって、
前記複数の入力変数であって前記インバータまたはパワーアンプの電圧関連量および前記モータの電流関連量を含むものを測定する測定部であって各入力変数を個別にダイレクトに測定する複数のモータ状態量推定用センサを有するものと、
前記モータを停止または回転させた場合に生成される前記少なくとも1つの選択モータ状態量を推定するための機械学習を行った学習済みの学習モデルに、前記複数のモータ状態量推定用センサによって測定された複数の入力変数を入力することにより、前記少なくとも1つの選択モータ状態量を、その選択モータ状態量をダイレクトに測定するセンサを用いることなく、前記少なくとも1つの出力変数として推定する推定部と
を含み、
前記複数のモータ状態量推定用センサは、前記少なくとも1つの選択モータ状態量をダイレクトに測定するセンサを含まず、
前記機械学習は、それぞれ前記モータについて予め観測された、前記インバータまたはパワーアンプの電圧関連量と、前記モータの電流関連量と、前記少なくとも1つの選択モータ状態量とであって、それぞれ個別の機械学習用センサによってダイレクトに測定されたものを用いて行われ、それにより、前記学習モデルは、前記複数のモータ状態量推定用センサによって測定された複数の入力変数が入力されると、前記少なくとも1つの選択モータ状態量を推定するように学習されており、
前記推定部は、その学習済の学習モデルを用いることにより、前記少なくとも1つの選択モータ状態量を推定するAI搭載型モータ状態量推定システムが提供される。
【0026】
このシステムは、閉じた系としてのモータにおいて、そのモータの複数の状態変数のうちの一部である複数のモータ状態量を各モータ状態量推定用センサによってダイレクトにかつ実質的にリアルタイムで測定したうえで、その測定結果と、機械学習モデルとを実質的にリアルタイムに用いることにより、同じモータについての他の状態変数(「選択モータ状態量」)を、それをダイレクトに測定するセンサを用いることなく、実質的にリアルタイムで推定すること(以下、説明の便宜上、この固有の推定法を、選択モータ状態量に着目する限りにおいて狭義のセンサレス推定とみなすことができることから、以下、「限定的センサレス推定」という。)を特徴とする。
【0027】
このシステムは、さらに、前記機械学習モデルが、モータ自体について一定の因果関係を有する3個の事前の(リアルタイムではなく)センサ観測値(教示値)、すなわち、インバータまたはパワーアンプの電圧関連量であって事前にセンサによってダイレクトに観測された値と、モータの電流関連量であって事前にセンサによってダイレクトに観測された値と、少なくとも1つの選択モータ状態量であって事前にセンサによってダイレクトに観測された値とをそれぞれ教示値として用いて機械学習されることによって構築されたものであることを特徴とする。
【0028】
このシステムは、さらに、選択モータ状態量が、モータ電流関連量のセンサ測定値およびインバータまたはパワーアンプの電圧関連量のセンサ測定値のうちのいずれかのみが考慮されて推定されるのではなく、それらセンサ測定値の双方が考慮されて推定されることを特徴とする。
【0029】
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。
【0030】
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。
【0031】
(1) 電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系についての複数の入力変数から、前記モータ駆動系についての少なくとも1つの状態量を少なくとも1つの出力変数として推定するシステムであって、
それぞれのセンサを用いて前記複数の入力変数を測定する測定部と、
前記モータを停止または回転させた場合の前記モータ駆動系の前記少なくとも1つの状態量を推定するための機械学習を行った学習済みの学習モデルに、前記測定された複数の入力変数を入力することにより、前記少なくとも1つの状態量を前記学習モデルから前記少なくとも1つの出力変数として推定する推定部と
を含み、
前記複数の入力変数は、前記少なくとも1つの状態量を含まず、
前記測定部は、前記少なくとも1つの状態量を測定するためのセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記少なくとも1つの状態量を取得するAI搭載型モータ状態量推定システム。
【0032】
(2) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータ角度関連量を含まず、
前記少なくとも1つの出力変数は、前記モータ角度関連量を含み、
前記測定部は、前記モータの角度を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータ角度関連量を取得する(1)項に記載のAI搭載型モータ状態量推定システム。
【0033】
この出願書類の全体を通じ、それぞれの物理量の名称に後付けされた「関連量」という用語は、その物理量の絶対値と、時間微分値と、時間積分値とのうちの少なくとも1つを意味する。
【0034】
(3) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータのモータトルク関連量を含まず、
前記少なくとも1つの出力変数は、前記モータトルク関連量を含み、
前記測定部は、前記モータのトルクを測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータトルク関連量を取得する(1)または(2)項に記載のAI搭載型モータ状態量推定システム。
【0035】
(4) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータ駆動系のうち、前記モータの特性が他の位置より温度によって敏感に変動する特性敏感位置の温度であってセンサによって測定することが実用的ではないものを含まず、
前記少なくとも1つの出力変数は、前記特性敏感位置の温度を含み、
前記測定部は、前記特性敏感位置の温度を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記特性敏感位置の温度を取得する(1)ないし(3)項のいずれかに記載のAI搭載型モータ状態量推定システム。
【0036】
(5) 前記特性敏感位置は、前記モータのうち巻き線が配置される位置および/または磁石が配置される位置を含む(4)項に記載のAI搭載型モータ状態量推定システム。
【0037】
(6) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータについての出力軸トルクと、前記モータに連結される外部負荷から作用する外部負荷トルクとを含まず、
前記少なくとも1つの出力変数は、前記出力軸トルクと前記外部負荷トルクとを、それぞれ互いに独立した変数として含み、
前記測定部は、前記出力軸トルクを測定するセンサと、前記外部負荷トルクを測定するセンサとを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記出力軸トルクと前記外部負荷トルクとを取得する(1)ないし(5)項のいずれかに記載のAI搭載型モータ状態量推定システム。
【0038】
(7) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記インバータ(またはパワーアンプ)についての合計電流と、前記インバータ(またはパワーアンプ)についての各相ごとの個別電流とを含まず、
前記少なくとも1つの出力変数は、前記インバータ(またはパワーアンプ)についての合計電流と、前記インバータ(またはパワーアンプ)についての各相ごとの個別電流とを、それぞれ互いに独立した変数として含み、
前記測定部は、前記インバータ(またはパワーアンプ)についての合計電流を測定するセンサと、前記インバータ(またはパワーアンプ)についての各相ごとの個別電流を測定するセンサとを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記インバータ(またはパワーアンプ)についての合計電流と前記インバータ(またはパワーアンプ)についての各相ごとの個別電流とを取得する(1)ないし(6)項のいずれかに記載のAI搭載型モータ状態量推定システム。
【0039】
(8) さらに、
前記インバータ(またはパワーアンプ)についての各相ごとの個別電流であって前記推定部によって推定されたものに基づき、前記インバータ(またはパワーアンプ)および/または前記モータにおけるいずれの相に故障が発生している可能性があるか否かを判定する故障診断を行う故障診断部を含む(7)項に記載のAI搭載型モータ状態量推定システム。
【0040】
(9) 前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記モータにおけるステータの振動状態量を含まず、
前記少なくとも1つの出力変数は、前記ステータの振動状態量を含み、
前記測定部は、前記ステータの振動状態量を測定するセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記ステータの振動状態量を取得する(1)ないし(8)項のいずれかに記載のAI搭載型モータ状態量推定システム。
【0041】
(10) さらに、
前記ステータの振動状態量であって前記推定部によって推定されたものに基づき、前記モータの寿命の末期を推定し、その時期を事前に告知する寿命予測部を含む(9)項に記載のAI搭載型モータ状態量推定システム。
【0042】
(11) 前記機械学習は、前記ステータの振動状態量であって、前記モータに設置される加速度センサおよび/またはトルクセンサを用いて測定されたものを用いて行われる(9)または(10)項に記載のAI搭載型モータ状態量推定システム。
【0043】
(12) 電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系についての複数の入力変数から、前記モータ駆動系についての少なくとも1つの状態量を少なくとも1つの出力変数として推定するシステムであって、
それぞれのセンサを用いて前記複数の入力変数を測定する測定部と、
前記モータを停止または回転させた場合の前記モータ駆動系の前記少なくとも1つの状態量を推定するための機械学習を行った学習済みの学習モデルに、前記測定された複数の入力変数を入力することにより、前記少なくとも1つの状態量を前記学習モデルから前記少なくとも1つの出力変数として推定する推定部と
を含み、
前記複数の入力変数は、前記インバータ(またはパワーアンプ)における各相のインバータ電圧関連量(またはパワーアンプ電圧関連量)と、前記モータにおける各相のモータ電流関連量とを含むが、前記少なくとも1つの状態量を含まず、
前記測定部は、前記少なくとも1つの状態量を測定するためのセンサを含まず、
それにより、前記学習モデルを用いることにより、センサレス・パラメータ推定法によって前記少なくとも1つの状態量を取得するAI搭載型モータ状態量推定システム。
【0044】
(13) 電源からの電気エネルギーをインバータまたはパワーアンプを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系のうちのモータ・コントローラに実装される機械学習モデルを設計して構築するモータモデル用機械学習方法であって、
前記機械学習モデルは、(1)ないし(12)項のいずれかに記載の学習モデルであり、
当該方法は、
前記モータを電磁気学的側面からモデリングし、電圧方程式を用いて記述するモータモデルを構築する第1ステップと、
前記モータおよび負荷より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する第2ステップと、
前記モータモデルの特性および前記運動モデルの特性に基づき、前記モータ駆動系および前記運動系について複数の状態変数を選択する第3ステップと、
前記機械学習モデルの性能要件に基づき、前記選択された複数の状態変数から、前記機械学習モデルにとっての複数の入力変数および少なくとも1つの出力変数を選択する第4ステップと、
前記機械学習モデルの性能要件に基づき、前記機械学習モデルのネットワーク構成を構築する第5ステップと、
前記選択された少なくとも1つの出力変数の特性に基づき、前記機械学習モデルのための複数の教師データセットを取得する第6ステップと、
前記取得された複数の教師データセットを用いて前記機械学習モデルのための機械学習を実行し、それにより、前記機械学習モデルを構築する第7ステップと
を含むモータモデル用機械学習方法。
【0045】
(14) (1)ないし(13)項のいずれかに記載のシステムまたは方法を実行するためにコンピュータによって実行されるプログラム。
【0046】
本明細書の全体を通じて、「プログラム」という用語は、例えば、それの機能を果たすためにコンピュータにより実行される指令の組合せを意味するように解釈したり、それら指令の組合せのみならず、各指令に従って処理されるファイルやデータをも含むように解釈することが可能であるが、それらに限定されない。
【0047】
また、このプログラムは、それ単独でコンピュータにより実行されることにより、所期の目的を達するものとしたり、他のプログラムと共にコンピュータにより実行されることにより、所期の目的を達するものとすることができるが、それらに限定されない。後者の場合、本項に係るプログラムは、データを主体とするものとすることができるが、それに限定されない。
【0048】
(15) (14)項に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。
【0049】
この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、CD、CD-ROM等の光記録媒体、MO等の光磁気記録媒体、ROM等のアンリムーバブル・ストレージ等のいずれかを採用し得るが、それらに限定されない。
【図面の簡単な説明】
【0050】
【
図1】
図1は、本発明の例示的な複数の実施形態に従う複数のAI搭載型モータ状態量推定システムに共通のモータ駆動系を表す機能ブロック図である。
【
図2】
図2は、
図1に示す実インバータ/パワーアンプの一例を概略的に示す回路図である。
【
図3】
図3は、
図1に示す仮想モータ計算部の一例を表す機能ブロック図である。
【
図4】
図4は、
図3に示す仮想モータが用いるモータモデルの一例を概略的にかつ数学的に記述する図である。
【
図5】
図5(a)は、
図3に示す仮想モータ計算部の全体シーケンスを示すタイミングチャートであり、
図5(b)は、その仮想モータ計算部の個別の計算サイクルを示すタイミングチャートである。
【
図6】
図6は、
図1に示すモータ制御装置の作動の一例を示すタイミングチャートである。
【
図7】
図7は、本発明の例示的な第1実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図8】
図8は、
図7に示す推定部の一例を概念的に表す図である。
【
図9】
図9は、
図7に示す実用モータ駆動系の一例を機能ブロック図である。
【
図10】
図10は、本発明の例示的な第2実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図13】
図13は、本発明の例示的な第3実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図16】
図16は、本発明の例示的な第4実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図19】
図19は、本発明の例示的な第5実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図22】
図22は、本発明の例示的な第6実施形態に従うAI搭載型モータ状態量推定システムの一例を表す機能ブロック図である。
【
図25】
図25は、横軸にモータ速度、縦軸にモータトルクおよびモータ誘起電圧がそれぞれ取られたグラフであって、センサレスでモータ角度を推定する方法の種類がモータ速度に応じて異なる様子を説明するためのものである。
【
図26】
図26は、前記複数の実施形態に共通の機械学習モデルの構成の一例を概念的に表す図である。
【発明を実施するための形態】
【0051】
以下、本発明のさらに具体的で例示的な複数の実施形態を図面に基づいて詳細に説明する。
【0052】
<複数の実施形態に共通の特徴>
【0053】
後述の第1ないし第6実施形態は、いずれも、電源からの電気エネルギーをインバータを介してモータに出力することにより、そのモータを停止または回転させるモータ駆動系において、学習済みの機械学習モデルを用いることにより、センサレス・パラメータ推定法によって前記モータの少なくとも1つの状態量(状態変数、パラメータ)を取得するAI搭載型モータ状態量推定システムに関する。
【0054】
1.モータ駆動系
【0055】
モータ駆動系10を有するモータ駆動システム(以下、単に「システム」という。)11の基本構成は、後述の複数の実施形態に共通であり、
図1ないし
図6に示されている。
【0056】
図1には、モータ駆動系10を有するシステム11が概略的に機能ブロック図で表されている。このシステム11は、そのシステム11の駆動源として実モータ12を備えている。このシステム11のいくつかの具体例としては、絶対空間に対して移動する移動体や、可動部材に運動を付与する運動付与装置などがある。
【0057】
なお、「実モータ」という用語は、同じモータ駆動系につき、仮想モータという別の概念が存在する場合にその仮想モータと区別するために用いる用語であり、同じモータ駆動系につき、仮想モータという別の概念が存在しない場合には、単に「モータ」と称してもよい。
【0058】
実モータ12は、一般に、複数極のロータ(回転子ともいうが、図示しない)と、複数極のステータ(固定子ともいうが、図示しない)と、磁束形成部(図示しないが、具体的には、例えば、巻き線)とを有するように構成される。
図2に示すように、実モータ12は、前記ロータと共に回転するシャフト13を有しており、そのシャフト13が可動部材(図示しないが、具体的には、例えば、車両の車輪、工作機械の工具、ロボットのアームなど)に機械的に連結され、それにより、可動部材が駆動される。
【0059】
実モータ12のいくつかの具体例としては、界磁に永久磁石を使用して回転する永久磁石同期モータ(PMSM)、永久磁石を使用せず、渦電流を利用して回転する誘導モータ(IM)、スイッチ・リラクタンス・モータ(SRM)などがある。そのリラクタンス・モータにおいては、ロータが、永久磁石を使用することなく、強磁性の鉄心で構成されるため、リラクタンス・モータは、永久磁石を使用しない無整流子モータの一種である。
【0060】
実モータ12が3相(U相、V相、W相)の巻線を有する場合、実モータ12の各種物理量を記述するために、次のような記号が使用される。
【0061】
Vu,Vv,Vw:端子電圧(「巻線電圧」または「相電圧」ともいう。)[V]
Iu,Iv,Iw:相電流(「巻線電流」ともいう。)[A]
θm:ロータ(またはシャフト13)の角度(位相または回転位置であり、「モータ角度」または「モータ位置」ともいう)[rad]
ωm:ロータ(またはシャフト13)の角速度(「モータ速度」ともいう)[rad/sec]
T:モータ12の出力軸(シャフト13)に作用するトルクであるモータ出力軸トルク[Nm]
Fu,Fv,Fw:相磁束[Wb]
【0062】
なお、複数の実施形態の説明において、同じ記号が、単独で使用される箇所と、「*」を末尾に有するように使用される箇所とが存在する。それら実施形態においては、同じ記号が、単独で使用される場合には、実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、指令値を意味するという用法と、同じ記号が、単独で使用される場合には、実モータ12についての物理量であることを意味する一方、「*」と組み合わせて使用される場合には、後述の仮想モータ60についての物理量であることを意味するという用法とがあるが、特記しない限り、前者の用法を採用することに留意されたい。
【0063】
図1に示すように、システム11は、実モータ12を駆動するために、実インバータ/パワーアンプ14をさらに備えている。その実インバータ/パワーアンプ14は、実モータ12に電気エネルギーを供給する実インバータまたは実パワーアンプを有するように構成される。実モータ12に供給される電気エネルギーは、実モータ12が3相(U相、V相、W相)の巻線を有する場合、端子電圧Vu,Vv,Vwである。
【0064】
図2には、実インバータ/パワーアンプ14が実インバータ16を有する場合につき、その実インバータ16が概念的に回路図で表されている。実インバータ16は、既によく知られているように、直流電圧Vdcが印加される入力端子20と、端子電圧Vu,Vv,Vwを実モータ12に出力するための出力端子22と、それら入力端子20と出力端子22との間に接続された複数のゲート24と、端子電圧Vu,Vv,Vwを検出する抵抗26と、その抵抗26に作用する電圧によって端子電圧Vu,Vv,Vwを表すアナログ信号をデジタル信号に変換するADC(交直変換器)28とを有するように構成される。
【0065】
複数のゲート24は、複数のスイッチング素子(すなわち、複数の上アーム・スイッチング素子および複数の下アーム・スイッチング素子)として構成されており、それらゲート24は、外部からの複数のパルス信号であるゲート信号Gu,Gv,Gw,Gx,Gy,Gwに応じてスイッチング動作を行う。
【0066】
このように構成されることにより、実インバータ16は、外部から複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが制御信号として入力されると、その制御信号に応じた高さの端子電圧Vu,Vv,VwをPWM(パルス幅変調)方式によって生成し、それら生成された端子電圧Vu,Vv,Vwを実モータ12に供給する。すなわち、本実施形態においては、複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが、複数の制御信号を構成するとともに、各信号が、PWM信号として形成されるのである。
【0067】
外部から実インバータ/パワーアンプ14に入力される制御信号は、実インバータ/パワーアンプ14が実インバータ16を有する場合には、上述のように、前記複数のゲート信号であるが、実インバータ/パワーアンプ14が実パワーアンプ(図示しない)を有する場合には、実モータ12の相数と同数のアナログ信号となる。
【0068】
図1に示すように、システム11は、実モータ12の作動状態をモニタするために、実モータ12の作動状態を検出し、その結果を表す実モータ状態信号を出力する実モータ状態検出部30をさらに備えている。実モータ状態検出部30は、実モータ12の作動状態として、例えば、実モータ12の実3相電流Iu,Iv,Iw、実モータ速度ωm、実モータ位置θmなどを検出できる。実3相電流Iu,Iv,Iwをモニタすることが必要である場合には、実モータ状態検出部30は、電流センサ(図示しない)を含むように構成され、また、実モータ位置θmを検出することが必要である場合には、実モータ状態検出部30は、例えば、ロータリーエンコーダ(図示しない)を含むように構成される。
【0069】
図1に示すように、システム11は、実モータ12を制御するために、プロセッサ40を備えている。プロセッサ40は、FPGA(field-programmable gate array)やASIC(application specific integrated circuit)などの演算回路(例えば、PLD(Programmable logic device)、ワイヤード論理回路)42と、コンピュータのCPU44とを含むように構成されている。演算回路42により、例えば、1μsecという長さの第1の周期で、32ビットの浮動小数点演算を行い、それにより、仮想モータ計算部50による計算を行う。また、CPU44により、例えば、数10μsecという長さの第2の周期であって前記第1の周期より長いもので、システム11の全体を制御するための処理を行う。そのような処理としては、例えば、初期化、終了処理、時間的に可変である制御目標値を表す目標信号を入力する処理などがある。
【0070】
演算回路42により、仮想モータ計算部50(以後、「コントローラ」または「モータ・コントローラ」とも称される。)が実現される。すなわち、仮想モータ計算部50は、演算回路42により、高速演算可能であるように構成されているのである。
【0071】
概略的に説明するに、仮想モータ計算部50は、
図3に示すように、実モータ12の電圧-電流特性(後に
図4を参照して詳述される電圧電流方程式により表される)を模擬する仮想モータ60を主体として構成されている。仮想モータ計算部50は、その仮想モータ60を用いることにより、目標信号によって表される制御目標値に応じた実モータ12の電流(指令電流)を生成するためにその実モータ12に供給すべき電圧(指令電圧)を計算する。
【0072】
仮想モータ60は、それに、指令電流を表す電流信号が入力されると、実モータ12を模擬する解析プログラムを演算回路42(
図1参照)に実行させることにより、前記入力された電流信号によって表される仮想電流(仮想3相電流)と同じ大きさを有する実電流(実3相電流)を実モータ12によって実現するためにその実モータ12に供給すべき実電圧(実3相電圧)が計算される。その計算された実電圧が、上述の指令電圧である。
【0073】
その実モータ12の指令電圧は、仮想モータ60にとっての指令電圧でもあり、また、上述の、実モータ12の指令電流は、仮想モータ60にとっての指令電流でもある。よって、結局、仮想モータ計算部50は、実モータ12と仮想モータ60との共通の指令電流から、それら実モータ12と仮想モータ60とに共通の指令電圧を計算することになる。
【0074】
従来の技術では、仮想モータ60は、実モータ12や、その実モータ12を制御する実コントローラについての試験が終了するまで、実モータ12を代替するものとして試験機において使用される。そして、それら実モータ12や実コントローラが完成する(仕様が確定する)と、今度は、実モータ12が、仮想モータ60を代替するものとして実機に搭載される。このように、従来の技術では、試験機においても実機においても、仮想モータ60が実モータ12と一緒に搭載されるとともに一緒に作動させられることはなかった。
【0075】
これに対し、本実施形態においては、試験機であるか実機であるかを問わず、仮想モータ60が実モータ12と一緒に搭載されるとともに一緒に作動させられ、それにより、仮想モータ60を用いて実モータ12を制御したり、実モータ12を用いて仮想モータ60をティーチングすることが可能である。
【0076】
仮想モータ計算部50は、実モータ12の停止中(実モータ12に入力される制御信号が時間的に変化しないために、実モータ12への電気エネルギーの供給が不要である場合)であっても、作動し続ける。
【0077】
本実施形態においては、システム11のうち、
図1に示す仮想モータ計算部50(プロセッサ40によって実現される)を構成する部分が、モータ駆動系10のうちのモータ・コントローラを構成し、また、
図3に示す仮想モータ計算部50も、モータ駆動系10のうちのモータ・コントローラを構成している。
【0078】
ここで、一般的なモータの入出力特性を説明するに、
図4に示すように、3相巻線のモータの入出力特性は、一般に、電圧方程式(電圧電流方程式)によって近似的に記述できることが既に知られている。この事実によれば、その電圧方程式を用いることにより、各相ごとの相電流を表すモータ電流ベクトルi(=[iu,iv,iw])から、各相ごとの端子電圧を表すモータ電圧ベクトルv(=[vu,vv,vw])を計算することができる。
【0079】
図4に示す電圧方程式中の各種記号の定義を説明するに、「Ra」は、モータの巻線抵抗を表し、また、「ψ」は、モータの鎖交磁束ベクトルψ(=[ψu,ψv,ψw])を表し、また、「t」は、時間を表している。
【0080】
図4に示すように、モータの鎖交磁束ベクトルψは、相電流による鎖交磁束と、電機子鎖交磁束との和に等しい。相電流による鎖交磁束は、「L(自己インダクタンス)」と「M(相互インダクタンス)」を各要素とするインダクタンス行列を用いて表現され、また、電機子鎖交磁束は、ベクトルφ(=[φu,φv,φw])として表現される。インダクタンス行列は、各要素L,Mが、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現され、また、電機子鎖交磁束ベクトルφも、各要素が、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現される。それらテーブルにより、前記電圧方程式と協働して、モータの非線形特性を、モータの駆動周波数全域にわたって表現することができる。
【0081】
したがって、
図4に示す電圧方程式によって表現される非線形モータモデルを使用すれば、モータの入出力特性が非線形であっても、モータの駆動周波数全域を複数の帯域に分割して各帯域ごとに異なる線形モータモデルを使用することなく、モータの駆動周波数全域を実質的に漏れなくカバーする非線形モータ特性を単一のモデルで精度よく表現することが可能となる。
【0082】
図4に示す電圧方程式は、実モータ12についても成立し、よって、仮想モータ60は、その電圧方程式を用いることにより、
図3に示すように、仮想モータ60の各相ごとの相電流を表す仮想モータ電流ベクトルI*(=[Iu*,Iv*,Iw*](仮想3相指令電流信号によって表される)であって、
図4に示すモータ電流ベクトルi(=[iu,iv,iw])に相当する)から、仮想モータ60の各相ごとの端子電圧を表す仮想モータ電圧ベクトルV*(=[Vu*,Vv*,Vw*](仮想3相指令電圧信号によって表される)であって、
図4に示すモータ電圧ベクトルv(=[vu,vv,vw]に相当する)を計算する。
【0083】
したがって、本実施形態によれば、仮想モータ60が、
図4に示す電圧方程式によって表現される非線形モータモデルを使用して実モータ12の作動を模擬するため、入出力特性が非線形である実モータ12の駆動周波数全域にわたり、実モータ12の作動を精度よく模擬することが可能となる。
【0084】
図4に示す電圧方程式は、実モータ12につき、電流から電圧を計算するために使用することも、電圧から電流を計算するために使用することも可能である。前者の計算は、実モータ12において電圧から電流が発生するという現実の物理的現象の時間的進行方向とは逆向きの計算であるため、逆モデル計算と称することができるのに対し、後者の計算は、上述の現実の物理的現象の時間的進行方向と同じ向きの計算であるため、順モデル計算と称することができる。本実施形態においては、それら2種類の計算のうち、逆モデル計算が採用されている。
【0085】
実モータ12は、前記ロータを含む可動部材が質量(イナーシャ)や抵抗を有するなどの理由により、応答遅れを有するが、仮想モータ60は、応答遅れを実質的に有しない。その結果、実モータ12に指令電圧が入力されるタイミングと同じタイミングで仮想モータ60に指令電流が入力されると、指令電圧に対して実モータ12の出力電流(現実の物理量)が応答するタイミングより早いタイミングで、仮想モータ60の出力電圧(電圧の計算値)が応答する。その結果、各回の計算サイクル(
図5参照)内において、実モータ12に入力すべき指令電圧が、その指令電圧を実モータ12に入力すべきタイミングより早いタイミングで計算されることが保証されるように仮想モータ計算部50を設計することが容易となる。
【0086】
図3に示すように、仮想モータ計算部50は、前記目標信号と、実モータ状態検出部30から出力された実モータ状態信号(例えば、実モータ位置θmを表す信号)とに基づき、仮想モータ60を制御することにより(すなわち、前記逆モデル計算を行うことにより)、複数の制御信号(前述のゲート信号Gu,Gv,Gw,Gx,Gy,Gw)を生成する。仮想モータ計算部50は、それら生成された複数の制御信号を、実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。
【0087】
具体的には、仮想モータ計算部50は、前記目標信号によって表される制御目標値に基づき、かつ、仮想モータ60の仮想作動位置(仮想可動部材としての仮想ロータの作動位置)が実モータ12の実作動位置(実可動部材としての実ロータの実作動位置)に一致すると仮定して、実モータ12と仮想モータ60とに共通の指令電圧を前記逆モデル計算によって決定する。これにより、実モータ12と仮想モータ60とが、一緒に、かつ、ロータ位置に関して互いに実質的に同期するように、駆動されることになる。
【0088】
仮想モータ計算部50のより具体的な構成については、後に
図3を参照することにより、説明するが、それに先立ち、
図5に示すタイミングチャートを参照することにより、この仮想モータ計算部50の作動の一例を詳細に説明する。
【0089】
仮想モータ計算部50の全体シーケンスを表す
図5(a)に例示するように、制御目標値T
0は、仮想モータ計算部50に入力周期Tin(例えば、数10μsec)で反復的に入力される。仮想モータ計算部50は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値T
0の1回の入力サイクルの間、複数サイクル分の計算を行う。本実施形態においては、入力周期Tinが、仮想モータ計算周期Tvより長い長さを有するように設定されているが、これに代えて、仮想モータ計算周期Tvと実質的に同じ長さを有するように設定することが可能である。
【0090】
ここに、「制御目標値T0」は、例えば、実モータ12からの出力に関連する物理量の指令値、例えば、実モータ12の前記ロータの位置に関する物理量(例えば、位置、速度、加速度)の指令値や、実モータ12の前記ロータに作用する力に関する物理量(例えば、トルク、軸力)の指令値としたり、実モータ12への入力に関連する物理量の指令値、例えば、3相指令電流信号Iu*,Iv*,Iw*や、dq軸指令電流信号Id*,Iq*としたり、それら複数種類の指令値からの任意の組合せとすることが可能である。
【0091】
仮想モータ計算部50の各回の計算サイクル内の処理のシーケンスを表す
図5(b)に例示するように、仮想モータ計算部50は、1サイクル分の計算を仮想モータ計算周期Tvで反復的に行い、各回の計算サイクルにおいては、制御目標値T0(i)と、実モータ12の実モータ位置θm(t)とに基づき、前記制御信号Gu-Gzを決定し、その決定された制御信号Gu-Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。
【0092】
制御目標値T0(i)は、入力周期Tinを有する入力サイクルごとに、例えば外部装置から、入力されるのに対し、実モータ位置θm(t)は、仮想モータ計算周期Tvを有する計算サイクルごとに、実モータ状態検出部30から取り込まれる。制御目標値T0(i)は、入力サイクルごとに入力されると、メモリに一時的に保存される。同じ入力サイクルに属する複数回の計算サイクルについては、同じ制御目標値T0(i)が、各回の計算サイクルごとに、前記メモリから仮想モータ計算部50に取り込まれることになる。
【0093】
各回の計算サイクルにおける複数の処理のシーケンスをより具体的に説明するに、
図5(b)に例示するように、仮想モータ計算部50は、各回の計算サイクルにおいて、まず、制御目標値T
0(t)と、実モータ位置θm(t)とを取り込む。この処理を、
図5(b)においては、「θm(t)入力」で表す。
【0094】
次に、仮想モータ計算部50は、状態量の変換を行う。具体的には、仮想モータ計算部50は、取り込まれた制御目標値T
0(t)を後述の仮想dq軸指令電流信号に変換する第1変換と、その仮想dq軸指令電流信号を、実モータ位置θm(t)のもと、仮想3相指令電流信号に変換する第2変換とを行う。この処理を、
図5(b)においては、「変換」で表す。
【0095】
その後、仮想モータ計算部50は、前記仮想3相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想3相指令電流信号に対応する仮想3相指令電圧信号を決定し、その決定された仮想3相指令電圧信号を前記制御信号Gu-Gzに変換する第3変換を行う。この処理を、
図5(b)においては、「逆モデル計算」で表す。
【0096】
続いて、仮想モータ計算部50は、その取得された制御信号Gu-Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。この処理を、
図5(b)においては、「Gu~Gz出力」で表す。各回の計算サイクルにおいて、仮想モータ60に仮想3相指令電流信号が1回しか入力されないため、仮想モータ60は、1回しか作動しない。
【0097】
なお、
図5(b)(
図8も同様)においては、制御信号Gu-Gzが実インバータ/パワーアンプ14に供給された後、その制御信号Gu-Gzが属する回の計算サイクルが終了するタイミングと同じタイミングで、実モータ位置θm(t)がθm(t+1)(=θm(t)+Δθ)に変化することが図示されている。しかし、これは、説明のための一例にすぎず、実際には、前記タイミングより早いか遅いタイミングで、実モータ位置θm(t)がθm(t+1)に変化する。
【0098】
次に、
図3を参照することにより、仮想モータ計算部50の構成の一例を具体的に説明する。ただし、同じ記号が、単独で使用される場合には、仮想モータ60についての実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、仮想モータ60についての指令値を意味する。
【0099】
仮想モータ計算部50は、dq座標系(回転直交2軸dq座標系)上において磁束-トルク制御を行う。ここに、「d」は、仮想モータ60の仮想磁束を表し、また、「q」は、仮想モータ60の仮想トルクを表している。
【0100】
そのような制御を実現するために、仮想モータ計算部50は、前記目標信号を仮想dq軸指令電流信号Id*,Iq*(仮想d軸指令電流信号Id*および仮想q軸指令電流信号Iq*)に変換する目標信号変換器66と、ベクトル制御(前記ロータの位置情報を用いて、軸電流をdq座標系から3相座標系へ座標変換し、前記ステータの相電流を制御する)により、それら仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するdq/UVW座標変換器68とを備えている。
【0101】
仮想モータ60を実モータ12から切り離して使用する従来の技術では、dq-UVW座標変換器68は、仮想モータ60の仮想モータ位置θmのもとで、仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するように設計されるのが通常である。これに対し、本実施形態においては、dq-UVW座標変換器68が、仮想モータ位置θmに代えて実モータ位置θmを用いる。
【0102】
その結果、本実施形態によれば、仮想3相指令電流信号Iu*,Iv*,Iw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。
【0103】
しかし、仮想モータ60が実モータ12の入出力特性を十分に正確に再現するように教示される場合には、仮想モータ位置θと実モータ位置θmとが互いに十分に一致することになる。この場合には、dq-UVW座標変換器68が実モータ位置θmに代えて仮想モータθを参照したとしても、仮想3相指令電圧信号Vu*,Vv*,Vw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。
【0104】
仮想モータ計算部50においては、仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、その後、仮想モータ60は、前記逆モデル計算により、それら仮想3相指令電流信号Iu*,Iv*,Iw*によって表される電流を実モータ12において実現するためにその実モータ12に供給すべき電圧を表す仮想3相指令電圧信号Vu*,Vv*,Vw*を出力する。
【0105】
仮想モータ計算部50は、さらに、その出力された仮想3相指令電圧信号Vu*,Vv*,Vw*を、各々PWM信号という形態を有する複数の制御信号Gu,Gv,Gw,Gx,Gy,Gzに変換するPWM信号発生器78を備えている。
【0106】
図6には、モータ駆動系10の作動の一例がフローチャートで表されている。このフローチャートは、CPU44によって実行されるステップS1およびS2と、演算回路42によって反復的に実行されるステップS3-S9とを表している。それらステップS3-S11は、1回ずつ実行されることにより、一回の計算サイクルを達成する。
【0107】
まず、ステップS1において、初期化が行われる。具体的には、例えば、実モータ状態検出部30により、初期の実モータ位置θinitが取得され、同じ位置が、仮想モータ60の初期の仮想モータ位置θinitとされる。
【0108】
次に、入力周期Tin(例えば、数10μsec)が経過するごとに割り込みが発生してステップS2が実行される。このステップS2においては、今回の制御目標値T0が入力される。
【0109】
続いて、ステップS3において、データ入力が行われ、具体的には、実モータ状態検出部30から実モータ位置θmが入力される。
【0110】
その後、ステップS4において、目標信号変換器66により、制御目標値T0を表す目標信号が仮想dq軸指令電流信号Id*,Iq*に変換される。これにより、前記第1変換が行われる。続いて、ステップS5において、dq/UVW座標変換器68により、その仮想dq軸指令電流信号Id*,Iq*が、実モータ12の実モータ回転角θmのもとで、仮想3相指令電流信号Iu*,Iv*,Iw*に変換される。これにより、前記第2変換が行われる。
【0111】
その後、ステップS6において、その仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、それに応答して仮想モータ60から仮想3相指令電圧信号Vu*,Vv*,Vw*が出力される。これにより、前記逆モデル計算が行われる。続いて、ステップS7において、PWM信号発生器78により、仮想3相指令電圧信号Vu*,Vv*,Vw*がPWM信号Gu,Gv,Gw,Gx,Gy,Gzに変換される。これにより、前記第3変換が行われる。
【0112】
その後、ステップS8において、そのようにして取得されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に対して出力され、それにより、実モータ12が駆動される。
【0113】
続いて、ステップS9において、システム11の主電源(図示しない)がオフにされたか否かが判定される。その主電源が未だオンである場合には、その判定がNOとなり、次回の計算サイクルでの計算のために、ステップS2に戻る。これに対し、主電源がオフにされた場合には、ステップS9の判定がYESとなり、以上で、モータ駆動系10の作動が終了する。
【0114】
以上の説明から明らかなように、本実施形態においては、仮想モータ計算部50が、目標信号に基づいて仮想モータ60を作動させることにより、その目標信号によって表される制御目標値を実モータ12が実現するためにその実モータ12に必要な制御信号をフィードフォワード制御で決定する。
【0115】
仮想モータ計算部50は、制御信号を決定するために実モータ位置θmを参照するが、これは、仮想モータ60の仮想モータ位置を実モータ位置θmに一致させ、それにより、仮想モータ60が実モータ12を模擬する精度を向上させるためである。
【0116】
実モータ位置θmを参照するという処理が存在するという事実に注目すれば、仮想モータ計算部50が採用しているフィードフォワード制御がフィードバック要素を有するように解釈される余地がある。しかし、実モータ位置θmは、制御系においてフィードバック信号として用いられるのではなく、仮想モータ60のための前述のdq軸制御において座標変換のために用いられるに過ぎない。よって、仮想モータ計算部50が採用している制御は、前記処理の存在にもかかわらず依然としてフィードフォワード制御であると解釈するのが自然である。
【0117】
なお付言するに、仮想モータ60についての上述の説明は、実モータ12の特性の説明でもあるから、実モータ12のハードウエア構成についての上述の説明と、仮想モータ60についての上述の説明との組合せにより、実モータ12の構造および特性が説明されると考えることが可能である。
【0118】
2.AI搭載型モータ状態量推定システムの概要
【0119】
後に詳述するが、本発明の例示的な第1ないし第6実施形態は、
図7,
図10,
図13,
図16,
図19および
図22にそれぞれ示すように、いずれの実施形態も、学習用モータ駆動系90と、機械学習装置100と、実用モータ駆動系110とを備えている。
【0120】
各実施形態における学習用モータ駆動系90および実用モータ駆動系110は、いずれも、モータ12を主体とする主要駆動部を有し、その主要駆動部は、
図1ないし
図6に示すモータ駆動系10と構成上、共通する。
【0121】
また、各実施形態における実用モータ駆動系110のうちの測定部2001および推定部360が、各実施形態におけるAI搭載型モータ状態量推定システムのうちの主要部を構成する。
【0122】
2-1.学習用モータ駆動系の概要
【0123】
学習用モータ駆動系90は、前述のモータ駆動系10と同様に、主要駆動部として、モータ12と、インバータ14と、実モータ状態検出部30(
図1には示されているが、
図7,
図10,
図13,
図16,
図19および
図22には示されていない。)と、コントローラ(
図1では、「仮想モータ計算部」に相当し、「モータ・コントローラ」とも称される。)50とを有する。
【0124】
コントローラ50は、
図1に示すモータ駆動系10と同様に、プロセッサ40とメモリ(図示しない)とを有するコンピュータを主体として構成されている。コントローラ50は、
図1ないし
図6に示すモータ駆動系10と同様に、実モータ状態検出部30からの実モータ状態信号に基づき、モータ12の駆動状態を制御する。
【0125】
学習用モータ駆動系90は、さらに、当該学習用モータ駆動系90のうちの主要駆動部について複数の状態変数を測定する測定部200を有する。測定部200による測定結果は、通常、コントローラ50の作動には利用されず、専ら機械学習装置100の作動に利用される。
【0126】
各実施形態における学習用モータ駆動系90の測定部200は、インバータ14におけるU,V,W各相の電圧(例えば、前述の端子電圧Vu,Vv,Vwであり、以下、単に「インバータ電圧」と称することがある。)を検出する電圧センサ32と、モータ12におけるU,V,W各相の電流(例えば、前述の3相電流Iu,Iv,Iwであり、以下、単に「モータ電流」と称することがある。)を検出する電流センサ34とを有する。電流センサ34は、例えば、CT方式、ホール素子方式、ロゴスキー方式、ゼロフラックス方式などである。
【0127】
各実施形態における学習用モータ駆動系90の測定部200は、さらに、他の少なくとも1つのセンサを有し、その検出値は、電圧センサ32の検出値および電流センサ34の検出値と組み合わされて、機械学習装置100が複数の教師データセットを取得するために使用される。ここに、「他の少なくとも1つのセンサ(以下、「学習用センサ」という。)の種類は、後述の複数の実施形態の間で互いに異なる。
【0128】
2-2.機械学習装置の概要
【0129】
機械学習装置100は、学習用モータ駆動系90の複数の状態変数を測定部200を介して観測する状態観測部300を有する。機械学習装置100は、さらに、その状態観測部300によって観測された複数の状態変数を用いることにより、学習モデル(機械学習モデル)310を構築するための学習部320を有する。それら状態観測部300および学習部310は、プロセッサ330およびメモリ332を備えたコンピュータ340によって実現される。
【0130】
図26には、学習モデル310の一例が概念的に表されている。この例においては、概念的に説明すれば、複数のニューロン(ノード)が、各々、重みを割り当てられた複数のリンクによって互いに連結されている。一例においては、各ニューロンが、複数の入力xに対してそれぞれの重みwを付けた複数の値の総和が所定のしきい値を超えたときに、出力yを「1」にして、その値を次のニューロンに伝播する。
【0131】
2-3.機械学習アルゴリズムの概要
【0132】
機械学習装置100は、任意の機械学習アルゴリズムを用いて学習モデル310を作成してもよい。そのような学習アルゴリズムとしては、教師あり学習、教師なし学習、強化学習などがあるが、本発明の例示的な第1ないし第6実施形態においては、教師あり学習が採用される。
【0133】
さらに、機械学習装置100は、その学習アルゴリズムとして深層学習を用いてもよい。また、機械学習装置100は、例えば、GPGPUや大規模PCクラスターなどを適用することにより実現してもよい。
【0134】
2-4.機械学習モデルの概要
【0135】
次に、機械学習モデル310の例を、入力変数および出力変数のそれぞれの種類に着目して説明する。
【0136】
A.入力変数
【0137】
A-1.インバータ関連状態変数
【0138】
U相インバータ電圧
V相インバータ電圧
W相インバータ電圧
【0139】
A-2.モータ関連状態変数
【0140】
U相モータ電流
V相モータ電流
W相モータ電流
【0141】
B.出力変数
【0142】
<電気系(回路方程式)関連出力変数>
【0143】
B-1.インバータ関連状態変数
【0144】
B-1-1.他のインバータ電圧(インバータ14に関する電圧であって、インバータ14に搭載されたセンサによって測定されない部位の電圧)
【0145】
B-1-2.インバータ電流(インバータ14に関する電流であって、インバータ14に搭載されたセンサによって測定されない部位の電流)
+アームU相電流
-アームU相電流
+アームV相電流
-アームV相電流
+アームW相電流
-アームW相電流
インバータ合計電流
【0146】
B-2.モータ関連状態変数
【0147】
B-2-1.他のモータ電流(モータ12に関する電流であって、モータ12に搭載されたセンサによって測定されない部位の電流)
U相モータ電流(前記入力変数としてU相モータ電流が存在しない場合)
V相モータ電流(前記入力変数としてV相モータ電流が存在しない場合)
W相モータ電流(前記入力変数としてW相モータ電流が存在しない場合)
d軸電流
q軸電流
【0148】
B-2-2.他のモータ電圧(モータ12に関する電圧であって、モータ12に搭載されたセンサによって測定されない部位の電圧)
U相誘起電圧
V相誘起電圧
W相誘起電圧
U相逆起電圧
V相逆起電圧
W相逆起電圧
【0149】
B-2-3.インダクタンス(モータ12に関するインダクタンスであって、モータ12に搭載されたセンサによって測定されない部位のインダクタンス)
U相インダクタンス
V相インダクタンス
W相インダクタンス
UV相間インダクタンス
UW間インダクタンス
VW間インダクタンス
【0150】
B-2-4.効率関連変数
モータ効率
モータ損失(鉄損、銅損)
【0151】
B-2-5.温度関連変数(温度は、モータ12の電気系に影響を及ぼす)
モータ温度THm(モータ12の実特性が、モータ12内の他の位置より温度によって敏感に変動する特性敏感位置の温度であって量産段階ではセンサによって実測することが実用的ではないもの)
周辺温度
【0152】
B-2-6.他の変数
最大トルク制御やトルク・リプル低減制御、鉄損低減制御などの各種制御に必要なモータ電流指令値
モータ12の弱め界磁コイルの電流
モータ12の進角制御における進角角度
モータ12の軸受(例えば、モータ12のハウジングのうちモータ12のシャフト13を回転可能に支持する部分に設置される)の劣化度
モータ12の鎖交磁束
ステータの電気抵抗値(例えば、電機子抵抗値)
モータ12の極数
【0153】
<機械系(運動方程式)関連出力変数>
【0154】
B-2-7.位置関連変数
モータ12
モータ12の角度(または位置)θmまたはθM
モータ12の角速度(または速度)ωmまたはωM
モータ12の角加速度(または加速度)αmまたはαM
負荷L
負荷Lの角度(または位置)θL
負荷Lの角速度(または速度)ωL
負荷Lの角加速度(または加速度)αL
【0155】
B-2-8.トルク関連変数
モータ12:出力軸トルクT1(=モータトルクTm)
負荷L:モータ12の出力軸に連結される外部負荷(図示しない)に作用するトルクである外部負荷トルクT2(=外乱トルク)
【0156】
B-2-9.摩擦関連変数
モータ12の粘性摩擦係数(動摩擦係数)
モータ12の静止摩擦係数
【0157】
<他の出力変数>
【0158】
B-2-10.振動関連変数
ステータ振動状態量
ロータ振動状態量
【0159】
B-2-11.ビヘイビアモデル
モータ12のビヘイビアモデル(モータ12の挙動がそれの性能要件が満たされるようにソフトウエア上で要件定義(記述された)モデル(定義式など))例えば、PMSMモータの鎖交磁束を用いたビヘイビアモデル
【0160】
3.実用モータ駆動系の概要
【0161】
実用モータ駆動系110は、
図1ないし
図6に示すモータ駆動系10と同様に、モータ12、インバータ14およびコントローラ50と実モータ状態検出部30とを有する。実用モータ駆動系110は、さらに、測定部2001および推定部360を有する。
【0162】
コントローラ50は、
図1に示すモータ駆動系10と同様に、プロセッサ40とメモリ(図示しない)とを有するコンピュータを主体として構成されている。そのコンピュータは、推定部360および同じ実用モータ駆動系110における他の要素を実行するためにも利用される。
【0163】
実用モータ駆動系110において、測定部2001および推定部360は、学習用モータ駆動系90における測定部200のうちの学習用センサに代えて設置されており、その学習用センサによって実測可能である状態変数(パラメータ)を、その学習用センサを用いずにセンサレスで計測する。
【0164】
そのセンサレス・パラメータ計測のために、実用モータ駆動系110のうちの推定部360は、機械学習装置100によって作成された学習モデル310と同じものを用いる。
【0165】
前述のように、学習用モータ駆動系90においては、測定部200が専ら機械学習装置100の作動のために利用されるが、実用モータ駆動系110においては、測定部2001が、専ら推定部360の作動のために利用され、ひいては、コントローラ50によるモータ制御のために利用される。
【0166】
具体的には、推定部360は、電圧センサ32および電流センサ34によるそれぞれの検出値をそれぞれ入力変数として学習モデル310に適用することにより、学習用モータ駆動系90にしか存在しない学習用センサによってしか実測できないパラメータを、その学習用センサを用いることなく、学習モデル310にとっての出力変数として推定する。
【0167】
実用モータ駆動系110においては、前述の学習用モータ駆動系90とは異なり、推定部360の推定結果であって測定部2001の測定結果に基づいて取得されたものに基づいてモータ12の駆動状態を制御する。よって、実用モータ駆動系100における測定部2001および推定部360は、学習用モータ駆動系90における実モータ状態検出部30に相当する。
【0168】
具体的には、第1実施形態においては、実用モータ駆動系110が、推定部360によってセンサレスで推定されたモータ角度θmに基づいてモータ12の駆動状態を、前述のモータ駆動系10(
図1ないし
図6参照)と同様にして制御する。
【0169】
また、第2実施形態においては、実用モータ駆動系110が、推定部360によってセンサレスで推定されたモータトルクTmに基づいてモータ12の駆動状態を、前述のモータ駆動系10(
図1ないし
図6参照)と同様にして制御する。
【0170】
また、第3ないし第6実施形態においては、それぞれ対応する図面に示されていないが、第1または第2実施形態と同様に、実用モータ駆動系110が、推定部360によってセンサレスで推定されたモータ角度θmまたはモータトルクTmに基づいてモータ12の駆動状態を、前述のモータ駆動系10(
図1ないし
図6参照)と同様にして制御する。
【0171】
ただし、第3ないし第6実施形態においては、それぞれ対応する図面に示すように、推定部360は、第1および第2実施形態とは異なり、それら実施形態におけるセンサレス推定値とは別のパラメータをも推定する。
【0172】
4.モータモデル用機械学習方法
【0173】
学習モデル310を作成するために、第1ないし第6実施形態について共通に、例えば、次のような方法が実行される。
【0174】
第1ステップ
【0175】
設計者が、モータ12を電磁気学的側面からモデリングし、
図4に例示するように、電圧方程式を用いて記述するモータモデル60を構築する。
【0176】
第2ステップ
【0177】
設計者が、モータ12および負荷L(図示しない)より成る運動系を力学的側面からモデリングし、運動方程式を用いて記述する運動モデルを構築する。
【0178】
モータ12と負荷Lとが回転軸を介して互いに連結された2慣性系としての運動系の運動方程式の一例は、次のとおりである。
JMαM(t)-JLαL(t)=T1(t)-T2(t)=Kcoup(θM-θL)
【0179】
ただし、
JM:モータ12の慣性モーメント(イナーシャ)
αM(t):モータ12の角加速度(=dωM(t)/dt)
JL:負荷Lの慣性モーメント(イナーシャ)
αL(t):負荷Lの角加速度
T1(t):出力軸トルク(=モータトルクTm)
T2(t):外部負荷トルク(=外乱トルクTd)
Kcoup:モータ12と負荷Lとを互いに連結するカップリング(ねじりばねとしての前記回転軸)のばね係数
θM:モータ角度
θL:負荷Lの角度
【0180】
ここに、「出力軸トルク」という用語は、モータ電流に起因して理論的にロータに発生する理論モータトルクを意味するように定義したり、その理論モータトルクから、モータ12の内部損失、例えば、摩擦トルクを減算した有効モータトルクとして定義してもよい。
【0181】
また、「外部負荷Lトルク」は、モータ12の外部にある負荷Lからロータに、モータ出力軸トルクを減殺する向きに印加されるものであり、その意味で外乱トルクと称することも可能である。
【0182】
第3ステップ
【0183】
設計者が、モータモデル60の特性および前記運動モデルの特性に基づき、前記電気系(学習用モータ駆動系90および実用モータ駆動系110のそれぞれの主要駆動部)ならびに前記運動系について複数の状態変数を選択する。
【0184】
第4ステップ
【0185】
設計者が、機械学習モデル310(
図26参照)の性能要件に基づき、前記選択された複数の状態変数から、前械学習モデル310にとっての複数の入力変数および少なくとも1つの出力変数を選択する。
【0186】
機械学習モデル310の性能要件としては、例えば、計算速度(変数の数が少ないほど高速処理が可能、ネットワークの層数が少ないほど高速処理が可能)、拡張性(事後的に変数を容易に追加できる可能性)、互換性、製造コスト、運営コストなどがある。
【0187】
第5ステップ
【0188】
設計者が、機械学習モデル310の性能要件に基づき、機械学習モデル310のネットワーク構成を構築する。
【0189】
ネットワーク構成の一例は、ニューラルネットワークであり、そのニューラルネットワークの一例は、LSTM(長・短期記憶)である。
【0190】
LSTMを行うネットワークにおいては、再帰型ニューラルネットワークRNNの中間層での各ユニットをLSTMブロックというメモリユニットに置き換えた構造を有する。LSTMブロックには、入力ゲート、忘却ゲートおよび出力ゲートという3種類のゲートと、記憶セルとがある。
【0191】
このLSTMによれば、記憶セルに保存されている1ステップ前の状態を忘却ゲートで参照しながら、入力ゲートおよび忘却ゲートを開閉し、それにより、出力を調整する。
【0192】
このLSTMによれば、時系列データを用いて出力変数を高精度で推定できるという効果が、他の種類のニューラルネットワークでは奏することができない特有の効果として得られる。
【0193】
第6ステップ
【0194】
前記選択された少なくとも1つの出力変数の特性に基づき、機械学習モデル310のための複数の教師データセットを取得する。
【0195】
一例においては、作業者が、前記複数の入力変数および前記少なくとも1つの出力変数をそれぞれ実測する複数のセンサを学習用モータ駆動系90(
図7参照)に設置する。この時点では、センサレスで計測すべきパラメータを実測するための学習用センサも学習用モータ駆動系90(
図7参照)に設置する。
【0196】
作業者は学習用モータ駆動系90を作動させ、その作動中、機械学習装置100のコンピュータ340(
図7参照)が測定部200の複数のセンサからの複数の測定値を、取り込む。そのコンピュータ340は、各時刻に関連づけて、それら測定値を互いに紐付けしてメモリ332に保存する。
【0197】
センサレスで計測すべきパラメータについて想定される変域(例えば、そのパラメータがモータ角度である場合には、0度-360度)の全体につき、複数の測定値が取得されるように、学習用モータ駆動系90が作動させられる。
【0198】
コンピュータ340は、メモリ332に保存されているもとのデータを、前記パラメータについての測定値と、他の複数の測定値との関係として並び替える。具体的には、コンピュータ340は、前記パラメータについての各測定値ごとに、その測定値と他の複数の測定値とを互いに紐付けする。ここに、各データセットは、教師データセットと称される。最終的に、前記パラメータについての複数の測定値と同数の教師データセットが取得される。
【0199】
第7ステップ
【0200】
機械学習装置100のコンピュータ340(
図7参照)が、前記取得された複数の教師データセットを用いて機械学習モデル310のための機械学習を実行し、それにより、機械学習モデル310を構築する。
【0201】
第8ステップ
【0202】
完成した機械学習モデル310を実用モータ駆動系110(
図7参照)の推定部360に実装する。
【0203】
以上、本発明の例示的な複数の実施形態に共通の要素について説明したが、以下、それら実施形態を個別に、かつ、前記共通の要素とは異なる要素のみを説明する。
【0204】
<第1実施形態>
【0205】
図7には、本発明の例示的な第1実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0206】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、モータ12の角度を検出する角度センサ301を有する。角度センサ301の一例は、ロータリーエンコーダである。
【0207】
機械学習装置100は、測定部200により複数の状態変数について測定された複数の値であって角度センサ301による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータ角度を出力変数とする学習モデル310を作成する。
【0208】
実用モータ駆動系110は、角度センサ301を有しないが、その代わりに、測定部2001および推定部360を有する。
【0209】
図8に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、モータ角度θmを出力変数として推定する。
【0210】
推定されたモータ角度θmは、モータ角度θmの実際値としてコントローラ50に入力され、そのコントローラ50は、モータ角度θmの実際値と目標値とに基づき、前述の、インバータ14についての複数のゲート信号を制御信号として生成してインバータ14に入力する。
【0211】
図9には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、角度センサ301に代えて測定部2001および推定部360が採用され、それにより、センサレスでモータ角度θmが計測される。
【0212】
1.入力変数と出力変数との間の相関関係
【0213】
フレミングの法則により、モータ電流i(正確には、電機子電流、巻線電流)が分かれば、モータ12に発生するモータトルクTm(t)が分かる。
Tm(t)=Kt・i(t)
ただし、Ktは、既知のトルク係数である。
【0214】
さらに、ニュートンの法則により、モータトルクTm(t)が分かればモータ12の角加速度αM(t)が分かる。
JMαM(t)=Tm(t)
ただし、JMは、既知のモータイナーシャである。
【0215】
さらに、角加速度αM(t)が分かれば、時間積分により、角速度ωM(t)が分かり、さらなる時間積分により、モータ角度θm(t)が分かる。
【0216】
よって、モータ電流の値とモータ角度θm(t)の値との間に、理論的に立証可能な一定の相関関係が存在する。
【0217】
2.センサレス推定値の用途
【0218】
センサレス推定値としてのモータ角度θmは、例えば、実用モータ駆動系110においてモータ12の駆動状態を制御するために使用することが可能である。
【0219】
3.本実施形態によって奏される特有の効果
【0220】
(1)第1の効果
本実施形態によれば、前述のように種々の欠点を有する角度センサ301を使用せずにモータ角度θmを安価に、かつ、高い信頼性および精度で推定できる。
【0221】
(2)第2の効果
本実施形態によれば、モータ角度θm(t)がモータ電流のみならずインバータ電圧をも考慮して推定される。そのインバータ電圧は、モータ12に印加される電圧であり、そのインバータ電圧と、モータ12の内部で生じるモータ電圧との双方に起因して、モータ12に電流が流れる。
【0222】
この時、インバータ電圧とモータ電流との間には、モータモデル60にあるような相関関係が生じることが知られている。モータ12における電流の流れやすさは、インバータ電圧とインダクタンスの値によって決まり、そのインダクタンスの値はモータ電流の量と密接に関連して連続的に変化する。
【0223】
また、モータ12の出力トルク(モータトルク)も、モータ電流の量に起因して変化する物理量であるため、前記インダクタンスが変化するということは、モータ電流の変動につながることを意味し、ひいてはトルクの変動につながることを意味する。
【0224】
よって、機械学習装置100に、インバータ電圧またはそのインバータ電圧の時間微分値もしくは時間積分値(「インバータ電圧関連量」のいくつかの例)と、モータ電流またはそのモータ電流の時間微分値もしくは時間積分値(「モータ電流関連量」のいくつかの例)とをそれぞれ入力変数として、かつ、モータ角度θを出力変数として学習させると、モータ12のインダクタンス変動をも考慮しつつ、モータ角度θmを推定可能な学習モデル310が生成される。
【0225】
また、モータ12におけるモータ電圧とモータ電流とのそれぞれの時間変化量は、モータ12における銅損、鉄損および磁束密度のそれぞれの変化から大きな影響を受ける。よって、本実施形態においては、学習モデル310が、モータ12における銅損、鉄損および磁束密度のそれぞれの変動を反映するように作成される。
【0226】
したがって、モータ電圧とモータ電流の相関関係について学習を行った学習モデル310によれば、銅損、鉄損および磁束密度のそれぞれの影響を加味したモータ角度θmの推定が可能となるため、モータ角度θmの推定精度が向上する。
【0227】
ところで、インバータ14とモータ12とが互いに接続された電気回路において、インバータ電圧やモータ電流の計測には時間的な遅れが生じる。そのため、インバータ14の制御を行う際は、現在値よりも遅れた過去の値を使うことになる。同様に、モータ角度θmを推定する際は、インバータ電圧やモータ電流については、それぞれの過去の値を使って、モータ角度θmの現在値を推定することになる。
【0228】
一方、モータ電流iの現在値は、モータモデル60から、インバータ電圧vの過去値に対応している。具体的には、例えば、モータモデル60において、インバータ電圧をt=0で与えたとすると、モータ電流がt=1で発生することを意味し、逆に、t=1のモータ電流、すなわち、モータ電流の現在値は、t=0のインバータ電圧、すなわち、インバータ電圧の過去値に対応することになる。よって、モータモデル60を用いれば、インバータ電圧の過去値が分かれば、モータ電流の現在値を推定できる。また、前述のように、モータ角度θmは、インバータ電圧とモータ電流とから推定可能である。その結果、モータ角度θmは、インバータ電圧とモータ電流とのそれぞれの取得遅れに関係なく取得できる。
【0229】
したがって、機械学習装置100は、モータ電流が現在値から将来値に向かう過程(時間プロファイル)において、その過程の特性、すなわち、モータ電流の現在値(静的特性)と、その勾配(動的特性)とをそれぞれ属性とするものから、時間積分という性格を有するモータ角度θmを、現在値の取得の遅れに関係なく、精度よく推定することが可能となる。
【0230】
4.取得される状態変数とその取得場所
【0231】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流およびモータ角度θm
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0232】
<第2実施形態>
【0233】
図10には、本発明の例示的な第2実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0234】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、モータ12のシャフト13またはロータに採用するトルク(モータトルク)Tmを検出するトルクセンサ311を有する。トルクセンサ311としては、例えば、磁歪式、ひずみゲージ式、圧電式、光学式、ばね式、静電容量式などがある。
【0235】
機械学習装置100は、測定部200により複数の状態変数について測定された複数の値であってトルクセンサ311による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータトルクTmを出力変数とする学習モデル310を作成する。
【0236】
実用モータ駆動系110は、トルクセンサ311を有しないが、その代わりに、測定部2001および推定部360を有する。
【0237】
図11に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、モータトルクTmを出力変数として推定する。
【0238】
推定されたモータトルクTmは、モータトルクTmの実際値としてコントローラ50に入力され、そのコントローラ50は、モータトルクTmの実際値と目標値とに基づき、前述の、インバータ14についての複数のゲート信号を制御信号として生成してインバータ14に入力する。
【0239】
図12には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、トルクセンサ311に代えて測定部2001および推定部360が採用され、それにより、センサレスでモータトルクTmが計測される。
【0240】
1.入力変数と出力変数との間の相関関係
【0241】
フレミングの法則により、モータ電流(正確には、電機子電流)が分かれば、モータ12に発生するモータトルクTm(t)が分かる。
Tm(t)=Kt(t)
ただし、Ktは、既知のトルク係数である。
【0242】
よって、モータ電流の値とモータトルクTm(t)の値との間に、理論的に立証可能な一定の相関関係が存在する。
【0243】
2.センサレス推定値の用途
【0244】
センサレス推定値としてのモータトルクTmは、例えば、実用モータ駆動系110においてモータ12の駆動状態を制御するために使用することが可能である。
【0245】
3.本実施形態によって奏される特有の効果
【0246】
(1)第1の効果
本実施形態によれば、前述のように種々の欠点を有するトルクセンサ311を使用せずにモータトルクTmを安価に、かつ、高い信頼性および精度で推定できる。
【0247】
(2)第2の効果
前述の説明から容易に類推されるように、モータ12のインダクタンスが変動すると、モータ電流も変動し、その結果、モータトルクTmが変動する。よって、モータ12のインダクタンスの変動は、モータトルクTm(t)の推定精度の低下につながる。
【0248】
これに対し、本実施形態によれば、モータトルクTm(t)が、モータ電流関連量のみならずインバータ電圧関連量をも考慮して推定される。
【0249】
よって、本実施形態によれば、学習モデル310がモータ12のインダクタンスの変動を考慮してモータ電流を推定可能となるため、モータトルクTm(t)の推定精度が向上する。
【0250】
4.取得される状態変数とその取得場所
【0251】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流およびモータトルクTm
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0252】
<第3実施形態>
【0253】
図13には、本発明の例示的な第3実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0254】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、モータ12のうちの特定の位置のモータ温度THmを検出する温度センサ331を有する。温度センサ331としては、例えば、熱電対、白金測温抵抗体、サーミスタ測温体などがある。
【0255】
ここに、「特定の位置」は、その位置の温度が、他の部位の温度より、モータ12の実特性を敏感に変動させる要因となるように選択される。その特定の位置は、特性敏感位置と称される。しかも、その特性敏感位置には、温度センサ331を取り付けることが困難であり、試験品ならともかく量産品においては、温度センサ331を特性敏感位置に取り付けることは実用的ではない。
【0256】
特性敏感位置としては、例えば、モータ12のうちの巻線(ステータ巻線、固定子巻線、電機子巻線)、永久磁石(ロータ側磁石)などがある。よって、温度センサ331は、例えば、巻線温度(ステータ側温度)、永久磁石温度(ロータ側温度)などを検出することになる。永久磁石は、通常、モータ12のロータ(回転子)と共に回転するため、試験品ならともかく量産品においては、永久磁石の温度を実測することは困難である。
【0257】
機械学習装置100は、測定部2001により複数の状態変数について測定された複数の値であってトルクセンサ311による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、モータ温度THmを出力変数とする学習モデル310を作成する。
【0258】
実用モータ駆動系110は、温度センサ331を有しないが、その代わりに、測定部2001および推定部360を有する。
【0259】
図14に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、モータ温度THmを出力変数として推定する。
【0260】
推定されたモータ温度THmは、モータ温度THmの実際値としてコントローラ50に入力される。一例においては、そのコントローラ50が、温度補償を行うため、モータ温度THmの実際値の、許容範囲の上限値からの増分に基づき、その増分に基づくモータ12の性能低下分が補償されるように、前述の、インバータ14についての複数のゲート信号を制御信号として生成してインバータ14に入力する。
【0261】
図15には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、温度センサ331に代えて測定部2001および推定部360が採用され、それにより、センサレスでモータ温度(例えば、巻線温度、永久磁石温度)THmが計測される。
【0262】
1.入力変数と出力変数との間の相関関係
【0263】
モータ12は、電気エネルギーを機械エネルギーに変換する機械であるため、その変換の際のエネルギー損失が熱として発生し、その熱を内的要因としてモータ12の温度が上昇する。
【0264】
また、モータ12が、外部の発熱体に近接して配置されて使用される場合には、その発熱体からの熱を外的要因としてモータ12の温度が上昇する可能性もある。
【0265】
いずれにしても、モータ12の巻線(ステータ側)の温度が上昇する。その巻線での熱損失は銅損と称され、また、鉄心での損失は鉄損と称される。銅損は、巻線の電気抵抗により損失するジュール熱である。これに対し、鉄損は、材料内部での誘導起電力によって生じる渦電流による渦電流損と、交流で鉄心が磁化されるときに発生するヒステリシス損とである。
【0266】
モータ12の巻線(ステータ側)の温度が上昇すると、モータ12の永久磁石(ロータ側)の温度も上昇する。
【0267】
永久磁石は、温度が上昇すると、減磁する。その減磁が起こると、巻線を流れる電流すなわちモータ電流が増加する。
【0268】
そうすると、モータ電流の、正規の値からの増分が分かると、モータ12の永久磁石の温度の、正規の値からの増分が分かる。よって、モータ電流の値と永久磁石の温度の値との間に、理論的に立証可能な一定の相関関係が存在する。
【0269】
したがって、モータ12のうち、巻線、鉄心および永久磁石のそれぞれの位置は、前述の特性敏感位置として選択することが可能である。それら3つの候補位置のうち、最も実測することが困難な位置は、永久磁石である。
【0270】
よって、学習用センサとしての温度センサ331は、永久磁石に設置され、その温度センサ331の出力信号は、例えば、回転トランス(図示しない)を介して、モータ12の外部にある機械学習装置340の状態観測部300に出力される。
【0271】
2.センサレス推定値の用途
【0272】
(1)第1の用途
推定されたモータ温度THmは、モータ温度THmの上昇に基づくモータ12の性能低下分が補償されるように、モータ12の作動中に、前記制御信号をリアルタイムで補正するために利用してもよい。
【0273】
(2)第2の用途
モータ12において永久磁石および巻線の温度が上昇すると、その巻線の電気抵抗値(
図4においては、「Ra」で表されている。)が増加する。すなわち、温度上昇に伴い、ステータの温度(固定子鉄心および固定子巻線のそれぞれの温度)が上昇し、それに伴い、ステータの電気抵抗値(固定子巻線の電気抵抗値)が増加するのである。
【0274】
よって、コントローラ50は、実モータ12を記述するモータモデル(仮想モータ)60を定義するために使用される前述の電圧方程式(
図4参照)における巻線抵抗Raを、推定部360によって推定されたモータ温度THm(例えば、永久磁石温度)に基づき、モータ温度THmが上昇すれば巻線抵抗Raが増加するように補正するように構成してもよい。
【0275】
すなわち、モータモデル60を、モータ12の作動中に、リアルタイムで補正するためにモータ温度THmの推定値を用いてもよいのである。
【0276】
3.本実施形態によって奏される特有の効果
【0277】
(1)第1の効果
本実施形態を用いる場合の直接的な効果として、前述のように、量産品においては温度センサ331の設置が困難であるために温度を実測できない部位のその温度であってモータ12の特性を顕著に変化させるものを、温度センサ331を使用せずにモータ温度THmを安価に、かつ、高い信頼性および精度で推定できるという効果が得られる。
【0278】
(2)第2の効果
本実施形態によれば、モータ12の挙動がモータ電流関連量のみならずインバータ電圧関連量すなわちモータ電圧関連量をも考慮して高精度に推定され、そのうえで、それら2つの状態変数にモータ12の実測温度を関連付けることによって機械学習モデル310が学習される。よって、本実施形態によれば、その機械学習モデル310を用いることにより、2つの状態変数からのモータ12の温度の推定精度が向上する。
【0279】
(3)第3の効果
モータモデル60は、従来、
図4に示すインダクタンス行列のそれぞれの要素L,Mが固定値であるように定義されていた。一方、要素L,Mは、本来、モータ12の温度に応じて変動する可変値である。例えば、モータ12の回転子の温度が上昇すると、モータ12内において、減磁してインダクタンスの変動が小さくなる。
【0280】
このような事情を踏まえ、本実施形態を用いる場合の派生的な効果として、モータモデル60を、インダクタンス行列のそれぞれの要素L,Mがモータ12の温度TTに応じて変化する可変値であるように再定義し、モータ・コントローラ50が、モータ12の制御に際し、そのモータ12の温度TTとして、前述のモータ温度THmの推定値を用いることが可能となるという効果が得られる。
【0281】
(4)第4の効果
モータ12の固定子巻線の温度が上昇すると、モータ12の巻線抵抗Raが増加する。
【0282】
この現象に着目すると、本実施形態を用いる場合の派生的な効果として、モータモデル60を、巻線抵抗Raがモータ12の温度TTに応じて変化する可変値であるように再定義し、モータ・コントローラ50が、モータ12の制御に際し、そのモータ12の温度TTとして、前述のモータ温度THmの推定値を用いることが可能となるという効果が得られる。
【0283】
(5)第5の効果
モータ12の回転子の温度が上昇すると、モータ12内において、減磁して、回転角度に依存するインダクタンスの変動が小さくなる。
【0284】
この現象に着目すると、本実施形態を用いる場合の派生的な効果として、モータモデル60を、巻線抵抗Raがモータ12の温度TTに応じて変化する可変値であるように再定義し、モータ・コントローラ50が、モータ12の制御に際し、そのモータ12の温度TTとして、前述のモータ温度THmの推定値を用いることが可能となるという効果が得られる。
【0285】
4.取得される状態変数とその取得場所
【0286】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流および温度センサTHm
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0287】
<第4実施形態>
【0288】
図16には、本発明の例示的な第4実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0289】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、モータ12のシャフト13またはロータに作用する前述の出力軸トルクT1を検出する前述のトルクセンサ311を有する。
【0290】
トルクセンサ311は、前記外部負荷Lがモータ12のシャフト13に接続されていない状態での測定値として出力軸トルクT1を出力し、一方、前記外部負荷Lがモータ12のシャフト13に接続されている状態での測定値として合計トルクT3(出力軸トルクT1と外部負荷トルクセンサT2との和)を出力する。合計トルクT3から出力軸トルクT1を減算することにより、外部負荷トルクセンサT2を、計算により、出力軸トルクT1から独立した状態変数として取得することが可能である。
【0291】
機械学習装置100は、測定部200により複数の状態変数について測定された複数の値であってトルクセンサ311による実測値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、出力軸トルクT1および外部負荷トルクT2をそれぞれ出力変数とする学習モデル310を作成する。
【0292】
実用モータ駆動系110は、トルクセンサ311を有しないが、その代わりに、測定部2001および推定部360を有する。
【0293】
図17に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、出力軸トルクT
1および外部負荷トルクT
2をそれぞれ互いに独立した2つの状態変数として、かつ、それぞれ出力変数として推定する。
【0294】
推定された出力軸トルクT1および外部負荷トルクT2はコントローラ50に入力され、そのコントローラ50は、出力軸トルクT1および外部負荷トルクT2に基づき、前述の、インバータ14についての複数のゲート信号を制御信号として生成してインバータ14に入力する。
【0295】
図17には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、トルクセンサ311に代えて測定部2001および推定部360が採用され、それにより、センサレスで出力軸トルクT
1および外部負荷トルクT
2がそれぞれ、互いに独立した状態変数として計測される。
【0296】
1.入力変数と出力変数との間の相関関係
【0297】
前述の2慣性系の運動方程式の一例は、個々の慣性について、次のように変形できる。
JMαM(t)+Kcoup(ωM-ωL)=Tm(=T1)
JLαL(t)-Kcoup(ωM-ωL)+Td(=T2)=0
【0298】
フレミングの法則により、モータ電流i(正確には、電機子電流)が分かれば、モータトルクTmすなわち出力軸トルクT1が分かる。
T1=Kt・i(t)
ただし、Ktは、既知のトルク係数である。
【0299】
よって、モータ電流の値と出力軸トルクT1の値との間に、理論的に立証可能な一定の相関関係が存在する。
【0300】
また、上述の第1式において、モータ12の角速度ωMは、学習用モータ駆動系90において可観測な物理量であるモータ角度θMの時間微分として誘導でき、また、モータ12の角加速度αMは、角速度ωMの時間微分として誘導できる。また、JMおよびKcoupはいずれも既知の定数である。よって、第1式から、負荷Lの角速度ωLを誘導できる。
【0301】
また、上述の第2式において、負荷Lの角加速度αLは、角速度ωLをの時間微分として誘導できる。また、JLおよびKcoupはいずれも既知の定数である。よって、第2式から、外乱トルクTdすなわち外部負荷トルクT2を誘導できる。
【0302】
よって、モータ角度θMの値と外部負荷トルクT2の値との間に、理論的に立証可能な一定の相関関係が存在する。
【0303】
2.センサレス推定値の用途
【0304】
(1)第1の用途
センサレス推定値としての出力軸トルクT1は、例えば、実用モータ駆動系110においてモータ12の駆動状態を制御するために使用することが可能である。
【0305】
(2)第2の用途
センサレス推定値としての外部負荷トルクT2は、負荷Lの静的および/または動的なダイナミクスを推定し、および/または解析するために使用することが可能である。
【0306】
3.本実施形態によって奏される特有の効果
【0307】
(1)第1の効果
本実施形態によれば、前述のように種々の欠点を有するトルクセンサ311を使用せずに出力軸トルクT1および外部負荷トルクT2をそれぞれ、互いに独立した状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【0308】
(2)第2の効果
前述の説明から容易に類推されるように、モータ12のインダクタンスの変動は、モータ電流の変動につながり、ひいては、出力軸トルクT1および外部負荷トルクT2の推定精度の低下につながる。
【0309】
これに対し、本実施形態によれば、出力軸トルクT1および外部負荷トルクT2が、モータ電流関連量のみならずインバータ電圧関連量をも考慮して推定される。
【0310】
よって、本実施形態によれば、学習モデル310がモータ12のインダクタンスの変動を考慮してモータ電流を推定可能となるため、出力軸トルクT1および外部負荷トルクT2の推定精度が向上する。
【0311】
4.取得される状態変数とその取得場所
【0312】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流、出力軸トルクT1および外部負荷トルクT2
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0313】
<第5実施形態>
【0314】
図19には、本発明の例示的な第5実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0315】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、インバータ14の合計電流を検出するインバータ合計電流センサ371と、インバータ14の各相ごとの個別電流を検出する複数のインバータ個別電流センサ381とを有する。
【0316】
インバータ合計電流センサ371は、
図2に示すように、インバータ14のうち、電源Vdcが接続される正極端子および負極端子に接続されるように設置される。
【0317】
また、複数のインバータ個別電流センサ381は、次の6つの個別電流を検出するようにインバータ14に設置される。
【0318】
+アームU相電流(
図2に示すU相上アーム・スイッチング素子に設置)
-アームU相電流(同図に示すU相下アーム・スイッチング素子に設置)
+アームV相電流(同図に示すV相上アーム・スイッチング素子に設置)
-アームV相電流(同図に示すV相下アーム・スイッチング素子に設置)
+アームW相電流(同図に示すW相上アーム・スイッチング素子に設置)
-アームW相電流(同図に示すW相下アーム・スイッチング素子に設置)
【0319】
機械学習装置100は、測定部200により複数の状態変数について測定された複数の値であってインバータ合計電流センサ371および複数のインバータ個別電流センサ381による複数の検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、インバータ合計電流Itotおよび複数のインバータ個別電流Iindをそれぞれ出力変数とする学習モデル310を作成する。
【0320】
実用モータ駆動系110は、インバータ合計電流センサ371および複数のインバータ個別電流センサ381を有しないが、その代わりに、測定部2001および推定部360を有する。
【0321】
図20に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、インバータ合計電流Itotおよび複数のインバータ個別電流Iindをそれぞれ互いに独立した複数の状態変数として、かつ、それぞれ出力変数として推定する。
【0322】
図21には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、インバータ合計電流センサ371および複数のインバータ個別電流センサ381に代えて推定部360が採用され、それにより、センサレスでインバータ合計電流Itotおよび複数のインバータ個別電流Iindがそれぞれ、互いに独立した状態変数として計測される。
【0323】
推定されたインバータ合計電流Itotおよび複数のインバータ個別電流Iindは実用モータ駆動系110のうちの故障診断部400に入力され、その故障診断部400は、インバータ合計電流Itotおよび複数のインバータ個別電流Iindに基づき、モータ12の複数の相の巻線のうちのいずれが故障している可能性があるのかを診断する。
【0324】
故障診断部400は、例えば、インバータ合計電流Itotの推定値と、複数のインバータ個別電流Iindの複数の推定値の合計値とが互いに一致しない場合に、モータ12が、いずれかのゲート24(不定)に関連して、故障している可能性があると診断する。
【0325】
さらに、故障診断部400は、例えば、インバータ合計電流Itotの推定値と、複数のインバータ個別電流Iindの複数の推定値の合計値とが互いに一致する場合に、そのときにインバータ14に出力された制御信号(制御信号(前述の複数のゲート信号)を参照すれば、インバータ14のうちいずれのゲート24がONにされるはずであったのかが分かる)との比較により、モータ12が、いずれかのゲート24(特定の1つのゲート24、すなわち、モータ12における複数の相のうち、特定のいずれか1つに1対1に対応するもの)に関連して、故障しており、そのゲート24は、本来であれば0ではないはずのインバータ個別電流Iindが0であるゲート24である可能性があると診断する。
【0326】
この場合、故障診断部400は、モータ12が故障している可能性と、その故障が、特定の相という部位において発生している可能性との双方を指摘する。
【0327】
このようにしてモータ12のうちの電気系が故障している可能性があると診断した場合には、故障診断部400は、故障原因の究明のために、第1の診断ステップを実行する。
【0328】
その第1の診断ステップにおいて、故障診断部400は、インバータ14に出力された制御信号(前述の複数のゲート信号)に基づき、インバータ14のうちいずれのゲート24かがONにされるはずであったか否かを判定する。その判定結果が肯定である場合には、故障診断部400は、インバータ合計電流Itotの推定値も複数のインバータ個別電流Iindの複数の推定値の合計値も0であるか否かを判定し、その判定結果も肯定である場合には、今回の故障の原因として、いずれかの相の巻線が断線している可能性があると診断する。
【0329】
上記のようにしてモータ12のうちの電気系が故障している可能性があると診断されたものの、上記の第1の診断ステップにおいて、いずれの相の巻線にも断線が発生していないと診断された場合には、故障診断部400は、さらなる故障原因の究明のために、上記の第1の診断ステップに引き続き、第2の診断ステップを実行する。
【0330】
その第2の診断ステップにおいて、故障診断部400は、インバータ14に出力された制御信号(前述の複数のゲート信号)に基づき、インバータ14のうちいずれのゲート24もONにされないはずであったか否かを判定する。その判定が肯定である場合には、故障診断部400は、インバータ合計電流Itotの推定値または複数のインバータ個別電流Iindの複数の推定値の合計値が0ではないか否かを判定し、その判定も肯定である場合には、今回の故障の原因として、いずれかの相の巻線が溶けて溶着(融着)して短絡している可能性があると診断する。
【0331】
さらに、上述の診断の結果、故障診断部400が、いずれの相の巻線にも断線および溶着のいずれも発生していないと診断した場合、すなわち、モータ12のうちの電気系が正常であると診断した場合には、故障診断部400は、第3の診断ステップを実行する。
【0332】
その第3の診断ステップにおいて、故障診断部400は、今度は、同じモータ12のうちの機械系(モータ12の内部の軸受部であってシャフト13を回転可能に支持するものを含む)が正常であるか否かを診断する。
【0333】
具体的には、故障診断部400は、例えば、モータ12のシャフト13の実際の回転位置が、それの目標回転位置であって前記制御信号に対応するものからずれているか否かを判定する。その判定結果が肯定である場合には、故障診断部400は、モータ12のうちの電気系は正常であるが、モータ12の回転位置が異常である、すなわち、モータ12のうちの機械系は故障している可能性があると診断する。
【0334】
このように故障診断部400がモータ12のうちの機械系が故障している可能性があると診断した場合、故障診断部400は、第4の診断ステップを実行し、そのステップにおいては、故障診断部400は、モータ12のシャフト13の回転状態量(例えば、回転速度、回転位置、回転加速度)のこれまでの履歴(例えば、モータ12の瞬時回転状態量を表すデータが過去所定時間前までの過去分だけ前記メモリに書き込まれる)を参照する。
【0335】
故障診断部400は、さらに、その履歴の分類に基づき、今回の故障の原因を同定するために、複数の候補原因のうちのいずれかを選択する。
【0336】
それら候補原因としては、例えば、次のものがある。
【0337】
1)第1の候補原因
前記軸受部の内輪と外輪との間に、潤滑剤不足などが原因でそれら内輪と外輪との間に固着現象が発生してモータ12の回転に予定外の振れが発生している可能性
【0338】
この場合、前記軸受部において内輪と外輪との間の擦れが発生し、それが原因で、シャフト13に短周期の微小振動が発生する可能性がある。
【0339】
2)第2の候補原因
前記軸受部が摩耗してモータ12の回転に予定外の振れが発生している可能性
【0340】
この場合、第1の候補原因の場合より長周期の異常振動がシャフト13に発生する可能性がある。
【0341】
3)第3の候補原因
モータ12のシャフト13が何らかの原因で部品に固着するか、シャフト13に連結された外部負荷(例えば、車輪などの回転体、減速機などの機械的な速度制御機構など)自体が故障して回転不能となったために、モータ12が異常停止している可能性
【0342】
そして、故障診断部400は、シャフト13の少なくとも振動周波数に基づき、上述の複数の候補原因のうちのいずれかを、今回の故障の真の原因(真の原因として最も可能性が高い原因)として選択する。シャフト13の振動周波数が0であるときに、シャフト13が停止していると推定してもよいが、任意選択的に、さらに、シャフト13の回転速度をも参照してシャフト13の停止の有無を判定してもよい。
【0343】
このように、本実施形態においては、故障診断部400が、モータ12につき、故障している可能性と、モータ12のうち、故障している可能性のある部位および/またはその故障の真の原因である可能性のある原因とを診断し、その診断結果を、モータ12のユーザおよび/または開発者に提示する。
【0344】
本実施形態においては、故障診断部400が、例えば、(a)インバータ14の合計電流および/またはインバータ14の各相ごとの個別電流とインバータ14に出力された制御信号との間の対応関係に基づき、モータ12のうちの電気系が故障している可能性と、モータ12のうち、故障している可能性のある部位および/またはその故障の真の原因である可能性のある原因とを診断する電気系診断部と、(b)モータ12の回転位置とインバータ14に出力された制御信号との間の対応関係と、モータ12の回転状態量の履歴とに基づき、モータ12のうちの機械系が故障している可能性と、モータ12のうち、故障している可能性のある部位および/またはその故障の真の原因である可能性のある原因とを診断する機械系診断部とのうち少なくとも一方を含むように構成される。
【0345】
ここに、モータ12においては、電気系が機械系を支配するため、電気系が故障すれば、機械系自体は故障していなくても、みかけ上、機械系も故障するという故障波及特性がある。すなわち、電気系とは異なり、機械系には、自身の故障を原因とする単独故障と、自身は故障していないが電気系が故障しているためにそれを原因として故障する連動故障とが存在するのである。
【0346】
このような特性を考慮し、一例においては、前記電気系診断部が前記機械系診断部に先行して実行され、それにより、前記電気系診断部電気系が正常であると診断した場合に限り、前記機械系診断部が実行される。その結果、その機械系診断部は、電気系の故障の影響を受けることなく機械系を精度よく診断することが容易となる。
【0347】
よって、本実施形態によれば、モータ12が故障している可能性の推定と、モータ12のうち、故障している可能性のある部位(特定の部品など)の推定と、その故障の真の原因である可能性のある原因の推定とを行うことが可能となる。
【0348】
1.入力変数と出力変数との間の相関関係
【0349】
図2に例示する電気回路によれば、各相ごとのモータ電流の合計値は、インバータ合計電流Itotに関連付けられる。また、
図2に例示する電気回路によれば、各相ごとのモータ電流は、各相ごとのインバータ個別電流Iindに関連付けられる。
【0350】
よって、各相ごとのモータ電流の合計値とインバータ合計電流Itotとの間に、理論的に立証可能な一定の相関関係が存在する。また、各相ごとのモータ電流と各相ごとのインバータ個別電流Iindとの間に、理論的に立証可能な一定の相関関係が存在する。
【0351】
2.センサレス推定値の用途
【0352】
センサレス推定値としてのインバータ合計電流Itotおよび複数のインバータ個別電流Iindは、前記制御信号と比較すれば、複数の相のうちいずれの相に電流が流れていないとか過電流が流れているという故障が発生している可能性の有無を診断するために使用することが可能である。
【0353】
3.本実施形態によって奏される特有の効果
【0354】
(1)第1の効果
本実施形態によれば、前述のように種々の欠点を有するインバータ合計電流センサ371および複数のインバータ個別電流センサ381を使用せずにインバータ合計電流Itotおよび複数のインバータ個別電流Iindをそれぞれ、互いに独立した状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【0355】
(2)第2の効果
モータモデル60においてインダクタンスが固定値として設定される場合には、モータ12のインダクタンスの変動は、インバータ合計電流Itotおよび複数のインバータ個別電流Iindの推定精度の低下につながる。
【0356】
これに対し、本実施形態によれば、インバータ合計電流Itotおよび複数のインバータ個別電流Iindが、モータ電流のみならずインバータ電圧をも考慮して推定される。
【0357】
よって、本実施形態によれば、学習モデル310がモータ12のインダクタンスの変動を考慮してインバータ合計電流Itotおよび複数のインバータ個別電流Iindを推定可能となるため、インバータ合計電流Itotおよび複数のインバータ個別電流Iindの推定精度が向上する。
【0358】
4.取得される状態変数とその取得場所
【0359】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流、インバータ合計電流およびインバータ個別電流
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0360】
<第6実施形態>
【0361】
図22には、本発明の例示的な第6実施形態に従う学習用モータ駆動系90、機械学習装置100および実用モータ駆動系110がそれぞれ機能ブロック図で表されている。
【0362】
本実施形態においては、学習用モータ駆動系90が、学習用センサとして、モータ12のステータの振動状態量(例えば、加速度、振動周波数(例えば、高周波成分の周波数)、振幅など)を検出するステータ用加速度センサ461を有する。そのステータ用加速度センサ461は、モータ12のステータに設置される。
【0363】
機械学習装置100は、測定部200により複数の状態変数について測定された複数の値であってステータ用加速度センサ461による検出値を含むものを複数の状態変数として観測し、それら状態変数を用い、インバータ電圧およびモータ電流をそれぞれ入力変数、ステータ振動状態量を出力変数とする学習モデル310を作成する。
【0364】
実用モータ駆動系110は、ステータ用加速度センサ461を有しないが、その代わりに、測定部2001および推定部360を有する。
【0365】
図23に示すように、推定部360は、実用モータ駆動系110の作動中、電圧センサ32および電流センサ34によってそれぞれ検出された複数の値を複数の入力変数として学習モデル310に適用し、それにより、ステータ振動状態量およびロータ振動状態量をそれぞれ互いに独立した複数の状態変数として、かつ、それぞれ出力変数として推定する。
【0366】
図24には、実用モータ駆動系110が機能ブロック図で表されている。この実用モータ駆動系110は、
図1に示すモータ駆動系10に近似する学習用モータ駆動系90に対し、ステータ用加速度センサ461に代えて測定部2001および推定部360が採用され、それにより、センサレスでステータ振動状態量が状態変数として計測される。
【0367】
推定されたステータ振動状態量は実用モータ駆動系110のうちの寿命予測部410に入力され、その寿命予測部410は、ステータ振動状態量に基づき、モータ12の寿命の末期を予測する。
【0368】
ところで、モータ12、特に、PMSMモータは、駆動中に、出力軸トルクT1の脈動、すなわち、トルク脈動が発生する可能性がある。トルク脈動は、コギングトルクやインバータ14の短絡防止時間などが原因で発生する可能性がある。
【0369】
トルク脈動が発生すると、その反作用により、モータ12のフレーム(ステータ側を含む)に振動が発生する。そのフレーム振動は、ロータの振動および/またはステータの振動として発現される。
【0370】
さらに、他の要因によってもモータ12にフレーム振動が発生し得る。そのような要因としては、機械系を構成する部品の摩耗がある。
【0371】
いずれにしても、そのフレーム振動は、モータ12の制御性能の低下、実用モータ駆動系110のうちの機械系の劣化などの問題を招来する可能性がある。そのうち、特に、機械系の劣化は、モータ12の寿命が予定より早期に尽きる原因となり得る。
【0372】
そのような事情を背景として、状態観測部340は、モータ12のフレーム振動のうちのステータ振動を、ステータに取り付けた加速度センサ461によってステータ加速度として実測するとともに、その実測されたステータ加速度のうちの定常成分(低周波成分)および振動成分(高周波成分)からステータ加速度振動成分gstのみをフィルタ(例えば、FFTアナライザ)で抽出し、そのステータ加速度振動成分gstから、許容できないステータ振動の有無を判定する。ステータ振動の要因としては機械系の摩耗がある。
【0373】
この場合、学習モデル310の入力変数は、インバータ電圧およびモータ電流であり、また、出力変数は、ステータ振動状態量としてのステータ加速度振動成分gstである。
【0374】
これに対し、寿命予測部410は、プロセッサとメモリとを有し、ステータ加速度振動成分gstとモータ12の残り寿命年数との間に予め定められた関係であって事前に統計的に確認されたものがメモリに保存されている。
【0375】
寿命予測部410のプロセッサは、その関係に従い、モータ12の残り寿命年数を予測する。さらに、寿命予測部410のプロセッサは、その予測を行った日時に、その残り寿命年数の予測値を加算することにより、モータ12の寿命の末期を計算する。
【0376】
1.入力変数と出力変数との間の相関関係
【0377】
前述のように、ロータ振動の要因はモータ電流の振動である。よって、モータ電流とロータ振動状態量、すなわち、予想外のロータ振動の有無との間に、理論的に立証可能な一定の相関関係が存在する。
【0378】
これに対し、ステータに振動が発生すると、モータ12の全体に振動が発生し、その結果、モータ12の出力軸の回転運動に予想外の変動が発生する。出力軸の回転運動に予想外の変動が発生すると、モータ角度θmの時刻歴に予想外の変動が発生する。一方、モータ角度θmは、前述のように、モータ電流から誘導可能である。
【0379】
よって、モータ電流とステータ振動状態量、すなわち、予想外のステータ振動の有無との間に、理論的に立証可能な一定の相関関係が存在する。
【0380】
2.センサレス推定値の用途
【0381】
センサレス推定値としてのステータ振動状態量は、モータ12の振動の有無を診断でき、ひいては、モータ12の寿命の末期を予想できる。
【0382】
3.本実施形態によって奏される特有の効果
【0383】
本実施形態によれば、ステータ用加速度センサ461を使用せずにステータ振動状態量を状態変数として安価に、かつ、高い信頼性および精度で推定できる。
【0384】
4.取得される状態変数とその取得場所
【0385】
(1)学習用モータ駆動系90における実モータ状態量検出部(モータ制御用測定部)30:
モータ角度θm、モータトルクTmなど
(2)学習用モータ駆動系90における測定部(学習用測定部)200:
インバータ電圧、モータ電流、ステータ加速度振動成分gst(ステータ振動状態量)
(3)実用モータ駆動系110における測定部(モータ制御用測定部)2001:
インバータ電圧およびモータ電流
【0386】
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の概要]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。