(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024143591
(43)【公開日】2024-10-11
(54)【発明の名称】モータ駆動制御装置およびモータ駆動制御方法
(51)【国際特許分類】
H02P 6/15 20160101AFI20241003BHJP
【FI】
H02P6/15
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023056352
(22)【出願日】2023-03-30
(71)【出願人】
【識別番号】000114215
【氏名又は名称】ミネベアミツミ株式会社
(74)【代理人】
【識別番号】100173691
【弁理士】
【氏名又は名称】高橋 康久
(74)【代理人】
【識別番号】100137095
【弁理士】
【氏名又は名称】江部 武史
(74)【代理人】
【識別番号】100091627
【弁理士】
【氏名又は名称】朝比 一夫
(74)【代理人】
【識別番号】100091292
【弁理士】
【氏名又は名称】増田 達哉
(72)【発明者】
【氏名】秀島 雄介
【テーマコード(参考)】
5H560
【Fターム(参考)】
5H560AA01
5H560BB04
5H560BB07
5H560BB12
5H560DA02
5H560DA19
5H560DB20
5H560DC05
5H560DC12
5H560EB01
5H560GG04
5H560JJ02
5H560TT11
5H560TT15
5H560XA04
5H560XA12
5H560XA15
(57)【要約】
【課題】モータの個体差を吸収し、かつ、その個体差を自動的にキャンセルすることによりモータの高効率駆動を図ることのできるモータ駆動制御装置およびモータ駆動制御方法を提供する。
【解決手段】モータ駆動制御装置2は、モータMの進角量δを決定する学習モデル310を有する進角算出部31と、モータMに駆動電圧を印加し、進角算出部31が決定した進角量δでモータMを駆動させるモータ制御部としてのモータドライブIC4と、を有する。そして、モータドライブIC4がモータMの回転速度ωを一定に維持しながら学習モデル310の方策に従って進角量δを変化させ、進角算出部31が各進角量δでの駆動電圧に基づいて進角量δの最適解を求め、モータドライブIC4が最適解でモータMを駆動する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
モータの進角量を決定する学習モデルを有する進角算出部と、
前記モータに駆動電圧を印加し、前記進角算出部が決定した前記進角量で前記モータを駆動させるモータ制御部と、を有し、
前記モータ制御部が前記モータの回転速度を一定に維持しながら前記学習モデルの方策に従って前記進角量を変化させ、
前記進角算出部が各前記進角量での前記駆動電圧に基づいて前記進角量の最適解を求め、
前記モータ制御部が前記最適解で前記モータを駆動することを特徴とするモータ駆動制御装置。
【請求項2】
前記方策は、前記駆動電圧を取得する探索範囲を狭める度に前記進角量の変化量を小さくする請求項1に記載のモータ駆動制御装置。
【請求項3】
前記方策は、前記駆動電圧が減少から増加に転じるまで第1間隔で前記進角量を同じ方向に変化させる第1探索と、
前記第1探索で得られた前記駆動電圧に基づいて前記第1探索よりも狭い探索範囲を決定し、決定した前記探索範囲内において前記第1間隔よりも小さい第2間隔で前記進角量を変化させる第2探索と、を行う請求項2に記載のモータ駆動制御装置。
【請求項4】
前記第1探索において第n回目の探索での前記駆動電圧が最小値であった場合、
前記第2探索では、第n-1回目の探索での前記駆動電圧と第n+1回目の探索での前記駆動電圧とを比較し、小さい方の探索と前記n回目の探索との間を前記探索範囲として決定する請求項3に記載のモータ駆動制御装置。
【請求項5】
前記モータ制御部は、駆動パルス信号を生成するPWM回路と、前記PWM回路から出力された前記駆動パルス信号に基づいて前記駆動電圧を前記モータに印加するモータ駆動制御部と、を有し、
前記進角算出部は、前記駆動パルス信号のDutty比に基づいて前記駆動電圧を検出する請求項1に記載のモータ駆動制御装置。
【請求項6】
前記モータ制御部は、駆動パルス信号を生成するPWM回路と、前記PWM回路から出力された前記駆動パルス信号に基づいて前記駆動電圧を前記モータに印加するモータ駆動制御部と、前記モータ駆動制御部に流れる電流量を検出する電流検出部と、を有し、
前記進角算出部は、前記電流検出部が検出した電流量に基づいて前記駆動電圧を検出する請求項1に記載のモータ駆動制御装置。
【請求項7】
モータの進角量を決定する学習モデルを有する進角算出部と、
前記モータに駆動電圧を印加し、前記進角算出部が決定した前記進角量で前記モータを駆動させるモータ制御部と、を用いて前記モータの駆動を制御するモータ駆動制御方法であって、
前記モータ制御部が前記モータの回転速度を一定に維持しながら前記学習モデルの方策に従って前記進角量を変化させ、
前記進角算出部が各前記進角量での前記駆動電圧に基づいて前記進角量の最適解を求め、
前記最適解で前記モータを駆動することを特徴とするモータ駆動制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モータ駆動制御装置およびモータ駆動制御方法に関する。
【背景技術】
【0002】
例えば、3相のコイルを備えるモータでは、コイルのインダクタンス成分によってコイルへの印加電圧(以下、単に「印加電圧」ともいう。)の位相に対してコイルに流れる電流(以下、単に「コイル電流」ともいう。)の位相が遅れ、モータの効率が低下する。そこで、例えば、コイル電流の位相の遅れ分だけ印加電圧の位相を進めてモータの高効率化を図る進角制御が従来から行われている。この進角制御の一例として、例えば、特許文献1および特許文献2が挙げられる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-066913号公報
【特許文献2】特開2015-062329号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
コイル電流の位相の遅れは、モータの回転速度に応じて変動するため、特許文献1には、ロータの回転速度に応じて適切な進角量を算出し、算出した進角量に基づいてモータの駆動を制御するモータ駆動制御装置が開示されている。
【0005】
具体的には、まず、モータ駆動制御装置は、ステップ1として、上位装置からロータの目標回転速度を取得する。次に、モータ駆動制御装置は、ステップ2として、モータの位置センサ(ホール素子)からの信号に基づいてロータの回転角度を取得する。次に、モータ駆動制御装置は、ステップ3として、ステップ2で取得したロータの回転角度に基づいてロータの回転速度を取得する。また、モータ駆動制御装置は、ステップ4として、各コイルの駆動電流値を取得する。
【0006】
次に、モータ駆動制御装置は、ステップ5として、ステップ2で取得したロータの回転角度とステップ4で取得した各コイルの駆動電流値とに基づいてd-q回転座標系におけるq軸電流値を算出する。次に、モータ駆動制御装置は、ステップ6として、ステップ1で取得したロータの目標回転速度とステップ3で取得したロータの回転速度との差が小さくなるようにq軸電流の指令値を算出する。次に、モータ駆動制御装置は、ステップ7として、ステップ6で算出したq軸電流値の指令値とステップ5で算出したq軸電流値との差が小さくなるようにd-q回転座標系での電圧指令値を算出する。
【0007】
次に、モータ駆動制御装置は、ステップ8として、ステップ5で算出したq軸電流値とステップ3で取得したロータの回転速度とに基づいてd軸電流値がゼロになる進角値を算出する。次に、モータ駆動制御装置は、ステップ9として、ステップ8で算出した進角値およびステップ2で取得したロータの回転角度を加算した角度とステップ7で算出した電圧指令値とに基づいて駆動制御信号を生成する。そして、モータ駆動制御装置は、ステップ9で生成した駆動制御信号に基づいてモータの駆動を制御する。
【0008】
しかしながら、コイルのインダクタンス成分にはモータ個体差があるため、つまり、モータ毎にコイルのインダクタンス成分が異なるため、特許文献1のモータ駆動制御装置のようにして進角量を算出する方法では、進角量のさらなる最適化を図ることが困難である。
【0009】
一方、特許文献2には、コイル電流の位相とコイルの誘起電圧の位相とを検出し、これらが一致するようにモータの駆動を制御する半導体回路装置が開示されている。
【0010】
このような半導体回路装置は、コイル電流の極性に対応した比較結果信号を出力するコンパレータと、比較結果信号に基づいてコイル電流の極性を判定し、その結果に応じた判定信号を出力する判定回路と、モータの位置センサから出力されコイルの誘起電圧の位相と同期した位置検出信号と判定信号とに基づいてコイル電流の位相と誘起電圧の位相とが一致するように駆動電圧の位相を調整する位相調整信号を出力する位相調整回路と、位相調整信号、位置検出信号およびマイコンからの指令信号に基づいてモータの通電を制御するための通電信号を出力する通電信号回路と、通電信号に応じてPWM制御信号を出力するドライブ回路と、PWM制御信号に応じてモータに対して駆動電圧を供給するブリッジ回路と、を有する。
【0011】
このように、コイル電流の位相と誘起電圧の位相とを検出し、これらが一致するように駆動電圧の位相を調整することにより、モータ個体差によるコイルのインダクタンス成分の異なりに影響を受けることなく、モータを高効率で駆動することができる。
【0012】
しかしながら、この場合、モータの製造精度によっては、位置センサとコイルとの機械的な位置ずれ(設計位置からのずれ)が生じ得る。その場合、高効率の駆動を実現するためには、例えば、ユーザが位置ずれをキャンセルするための初期補正を行わなければならない。
【0013】
以上のように、従来の技術では、モータの個体差を吸収し、かつ、その個体差を自動的にキャンセルすることによりモータの高効率駆動を図ることのできるモータ駆動制御装置およびモータ駆動制御方法の実現が困難である。
【0014】
本発明は、かかる点に鑑みてなされたものであり、モータの個体差を吸収し、かつ、その個体差を自動的にキャンセルすることによりモータの高効率駆動を図ることのできるモータ駆動制御装置およびモータ駆動制御方法を提供することを目的とする。
【課題を解決するための手段】
【0015】
このような目的は、以下の(1)および(2)の本発明により達成される。
【0016】
(1) モータの進角量を決定する学習モデルを有する進角算出部と、
前記モータに駆動電圧を印加し、前記進角算出部が決定した前記進角量で前記モータを駆動させるモータ制御部と、を有し、
前記モータ制御部が前記モータの回転速度を一定に維持しながら前記学習モデルの方策に従って前記進角量を変化させ、
前記進角算出部が各前記進角量での前記駆動電圧に基づいて前記進角量の最適解を求め、
前記モータ制御部が前記最適解で前記モータを駆動することを特徴とするモータ駆動制御装置。
【0017】
(2) モータの進角量を決定する学習モデルを有する進角算出部と、
前記モータに駆動電圧を印加し、前記進角算出部が決定した前記進角量で前記モータを駆動させるモータ制御部と、を用いて前記モータの駆動を制御するモータ駆動制御方法であって、
前記モータ制御部が前記モータの回転速度を一定に維持しながら前記学習モデルの方策に従って前記進角量を変化させ、
前記進角算出部が各前記進角量での前記駆動電圧に基づいて前記進角量の最適解を求め、
前記最適解で前記モータを駆動することを特徴とするモータ駆動制御方法。
【発明の効果】
【0018】
本発明のモータ駆動制御装置およびモータ駆動制御方法では、モータに印加する駆動電圧に基づいて進角量の最適解を求め、求めた最適解でモータを駆動する。モータの回転速度を一定にした状態での駆動電圧は、モータ個体差の表れでもあるため、駆動電圧に基づいて進角量の最適解を求めることにより、個体差を自動的にキャンセルすることができる。そのため、ユーザによる初期補正が不要となる。また、駆動電圧が最小となる進角量を最適解とすることにより、モータの高効率駆動を図ることができる。したがって、本発明のモータ駆動制御装置およびモータ駆動制御方法によれば、モータの個体差を吸収し、かつ、その個体差を自動的にキャンセルすることによりモータの高効率駆動を図ることができる。
【図面の簡単な説明】
【0019】
【
図1】第1実施形態に係るモータ駆動制御装置のブロック図である。
【
図3】印加電圧とコイル電流との位相差を示すグラフである。
【
図5】学習モデルの方策に基づいて進角量の最適解を求める方法を示すフローチャートである。
【
図6】学習モデルの方策に基づいて進角量の最適解を求める方法を示す表である。
【
図7】学習モデルの方策に基づいて進角量の最適解を求める方法を示すグラフである。
【
図8】第2実施形態に係るモータ駆動制御装置のブロック図である。
【発明を実施するための形態】
【0020】
以下、本発明のモータ駆動制御装置およびモータ駆動制御方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。
【0021】
<第1実施形態>
図1は、第1実施形態に係るモータ駆動制御装置のブロック図である。
図2は、進角量について説明する概略図である。
図3は、印加電圧とコイル電流との位相差を示すグラフである。
図4は、進角量について説明する概略図である。
図5は、学習モデルの方策に基づいて進角量の最適解を求める方法を示すフローチャートである。
図6は、学習モデルの方策に基づいて進角量の最適解を求める方法を示す表である。
図7は、学習モデルの方策に基づいて進角量の最適解を求める方法を示すグラフである。
【0022】
図1に示す駆動システム1は、モータMと、モータMに設けられた位置センサHと、モータMの駆動を制御するモータ駆動制御装置2と、を有する。図示しないが、本実施形態では、パーソナルコンピュータに設けられた冷却ファンを駆動するために駆動システム1が用いられている。ただし、駆動システム1の用途は、特に限定されない。
【0023】
モータMは、3相ブラシレスモータである。モータMは、例えば、W相コイル、U相コイル、V相コイルを備えるステータと、永久磁石を備えるロータと、を有する。このようなモータMに対してモータ駆動制御装置2から駆動電圧が印加されると、各コイルに駆動電流が流れてステータから磁界が発生する。そして、ステータからの磁界と永久磁石からの磁界との相互作用によって吸引力および反発力が生じ、ロータが回転する。なお、モータMとしては、特に限定されず、例えば、単相ブラシレスモータ、2相ブラシレスモータ、4相以上のブラシレスモータ等であってもよい。
【0024】
位置センサHは、モータMのコイルの誘起電圧の位相と同期した位置検出信号SHを出力する。
図1では、モータMの相数と同じ3個の位置センサHがモータMに設けられている。また、位置センサHとして、例えば、ホール素子やホールICを用いることができる。なお、位置センサHの数は、特に限定されず、例えば、モータMの相数と異なっていてもよい。
【0025】
図1に示すように、モータ駆動制御装置2は、強化学習により得られた学習モデル310が決定した方策に基づく探索により進角量δの最適解を求めるマイコン3(マイクロコントローラ)と、マイコン3が求めた進角量δの最適解に基づいてモータMに印加する駆動電圧を生成するモータ制御部としてのモータドライブIC4と、を有する。このように、学習モデル310が決定した方策に基づく探索を行って進角量δの最適解を求めることにより、方策を持たずに不規則または規則的に総当たりで進角量δの最適解を求める場合と比べて演算量を減らすことができる。そのため、進角量δの最適解をより短時間に求めることができ、モータMをより短時間で高効率な駆動状態へ収束させることができると共に、マイコン3やモータドライブIC4の演算資源の節約にもなる。
【0026】
ここで、進角量δについて簡単に説明する。
図2に示すように、モータMでは、ロータの永久磁石が発生させるロータ磁界と励磁されたコイルに生じる電流が発生させるコイル磁界(各コイルの合成磁界)とが90°のときに最大トルクが得られる。そこで、ロータ磁界とコイル磁界とが90°になるようにコイルに駆動電圧を印加するタイミングが調整される。しかしながら、コイルが有するインダクタンス成分によって、駆動電圧を印加してからコイルに実際に電流が流れるまでにタイムラグが生じる。つまり、
図3に示すように、印加電圧の位相に対してコイル電流の位相がずれる(遅れる)。そのため、
図4に示すように、ロータ磁界とコイル磁界とが90°よりも大きくなり、最大トルクが得られない。そこで、印加電圧の位相に対するコイル電流の位相のずれ量分だけ、駆動電圧の印加タイミングを早め、ロータ磁界とコイル磁界とが90°になるよう制御する方法を「進角制御」といい、早めた量を「進角量δ」という。
【0027】
モータ駆動制御装置2の説明に戻り、
図1に示すように、マイコン3は、進角算出部31と、目標速度算出部32と、温度検出部33と、を有する。マイコン3では、CPUがメモリに記憶されているプログラムに従って各種演算処理を実行することにより、各機能ブロックが実現される。
【0028】
進角算出部31は、機械学習部を兼ねており、進角量δの最適解を求めるための学習モデル310を生成し、その学習モデル310が決定した方策に基づいて進角量δの最適解を求める。学習モデル310を用いて進角量δの最適解を求める方法については、後述する。学習モデル310は、所定の技法(アルゴリズム)の機械学習に基づくプログラムである。所定の技法としては、特に限定されず、例えば、CNN(Convolutional Neural Network)等のニューラルネットワーク、線形回帰、ボルツマンマシン、サポートベクターマシン、ベイジアンネットワーク、スパース回帰、決定木、ランダムフォレストを用いた統計的推定、強化学習、深層学習などである。特に、本実施形態では、所定の技法として強化学習を用いている。これにより、学習前のデータ収集や前処理が不要となり、ユーザによる監視なしに学習を開始することができる。
【0029】
温度検出部33は、パーソナルコンピュータに設けられたサーミスタ等の温度検出素子5からの出力信号に基づいてパーソナルコンピュータPCの温度を検出し、検出結果を温度信号Stとして出力する。
【0030】
目標速度算出部32は、温度検出部33から出力された温度信号Stに基づいて、モータMの目標回転速度を決定し、決定した目標回転速度に対応する目標回転速度ωrefを出力する。
【0031】
また、
図1に示すように、モータドライブIC4は、速度制御部41と、通電タイミング生成部42と、駆動波形生成部43と、PWM回路44(PWM:Pulse Width Modulation)と、モータ駆動制御部45と、回転角検出部46と、回転速度算出部47と、を有する。モータドライブIC4は、例えば、コンピュータで構成され、CPUがメモリに記憶されているプログラムに従って各種演算処理を実行することにより、各機能ブロックが実現される。
【0032】
回転角検出部46は、ロータの位置つまり回転角度θを検出する。このような回転角検出部46は、位置センサHから出力される位置検出信号SHを用いてロータの回転角度θを検出し、出力する。
【0033】
回転速度算出部47は、モータMの回転速度ωを検出する。このような回転速度算出部47は、回転角検出部46が出力した回転角度θに基づいてモータMの回転速度ωを算出し、出力する。
【0034】
通電タイミング生成部42は、回転角検出部46が出力した回転角度θと進角算出部31が出力した進角量δの最適解とに基づいて生成した通電位相信号Dpを出力する。通電位相信号Dpは、回転角度θを基準タイミングとし、この基準タイミングから進角量δだけ位相をずらしたタイミングを示す信号である。
【0035】
速度制御部41は、マイコン3の目標速度算出部32から出力された目標回転速度ωrefと回転速度算出部47から出力されたモータMの回転速度ω(実際の回転速度)との差が小さくなるように、電圧指令値Vrefを算出し、出力する。具体的には、速度制御部41は、目標回転速度ωrefと回転速度ωとの差を算出し、算出した差がゼロになるようにPI制御演算を行うことにより、電圧指令値Vrefを算出し、出力する。
【0036】
駆動波形生成部43は、通電タイミング生成部42から出力された通電位相信号Dpと速度制御部41から出力された電圧指令値Vrefとに基づいてコイル毎に波形信号Wdを生成し、出力する。具体的には、電圧指令値Vrefに基づいてコイル毎に波形信号Wdを生成し、生成した波形信号Wdを通電位相信号Dpに応じたタイミングで出力する。
【0037】
PWM回路44は、駆動波形生成部43からコイル毎に供給された波形信号Wdを変調信号として、それぞれにパルス幅変調を行うことで駆動パルス信号Pdを生成し、出力する。
【0038】
モータ駆動制御部45は、PWM回路44から出力された駆動パルス信号Pdに基づいて、コイル毎に通電を行い、コイルを駆動する。例えば、モータ駆動制御部45は、電源の正極側に接続されたスイッチ素子と負極側に接続されたスイッチ素子とをコイル毎に備えている。駆動パルス信号Pdによりスイッチ素子がON/OFFされると、電源からONのスイッチ素子を介してコイル毎に波形信号Wdに応じた駆動電圧が印加される。
【0039】
以上のような構成により、目標回転速度ωrefに従ってモータMの回転速度や回転位置が制御される。
【0040】
次に、マイコン3が備える進角算出部31による進角量δの決定方法について説明する。前述したように、進角算出部31は、強化学習(Reinforcement Learning)により学習モデル310を学習する学習機能を有する。強化学習の方法としては、特に限定されず、例えば、DP法(動的計画法)、MC法(モンテカルロ法)、TD法(時間差分学習法)等から適切な方法を用いることができる。
【0041】
ここで、モータ駆動制御装置2では、モータMが一定の速度で回転している場合において各コイルに印加する駆動電圧が小さい程、モータMが高い効率で駆動していることを意味する。そこで、学習モデル310は、モータMを一定の回転速度に維持した状態で、駆動電圧が最低となる進角量δを最適解として求めるための方策(関数)を有する。例えば、進角算出部31は、ロータの回転速度、モータ負荷、温度等の少なくとも1つのパラメータを変化させながら、その環境において駆動電圧が最も小さくなる進角量δを求め、これを十分な回数(例えば、数万回以上)繰り返し学習することにより、精度の高い学習モデル310を学習する。なお、駆動電圧は、例えば、PWM回路44から出力される駆動パルス信号PdのDutty比に基づいて検出することができる。駆動パルス信号PdのDutty比に基づくことにより、簡単な構成で、かつ、精度よく駆動電圧を検出することができる。
【0042】
以上、モータ駆動制御装置2の構成について説明した。次に、学習モデル310が有する方策(関数)の一例について説明する。なお、方策は、以下に説明するものに限定されない。学習モデル310は、モータMの回転速度ωを一定に維持しながら進角量δを変化させ、各進角量δでの駆動電圧に基づいて進角量δの最適解を求める方策を有する。具体的には、駆動電圧が最小となるときの進角量δを最適解として求める。そして、モータ駆動制御装置2は、この方策により求められた進角量δの最適解でモータMを駆動させる。
【0043】
ここで、モータMの個体差(位置センサHとコイルとの機械的な位置ずれ)によってモータM毎にどの進角量δのときに駆動電圧が最小となるかが異なる。そのため、上述したように駆動電圧に基づいて進角量δの最適解を求めることにより、モータ個体差を自動的にキャンセルすることができる。したがって、ユーザによる初期補正が不要となる。また、駆動電圧が最小となる進角量δを最適解とすることにより、モータMの高効率駆動を図ることができる。したがって、モータ駆動制御装置2によれば、モータMの個体差を吸収し、かつ、その個体差を自動的にキャンセルすることによりモータMの高効率駆動を図ることができる。
【0044】
特に、本実施形態では、モータ駆動制御装置2は、学習モデル310が有する方策に従って、駆動電圧を取得する探索範囲Qを狭める度に進角量δの変化量を小さくする。具体的には、モータ駆動制御装置2は、学習モデル310が有する方策に従って、駆動電圧が減少から増加に転じるまで第1間隔Δd1で進角量δを同じ方向(増加する方向)に変化させる第1探索と、第1探索で得られた駆動電圧に基づいて第1探索よりも狭い探索範囲Qを決定し、決定した探索範囲Q内において第1間隔Δd1よりも小さい第2間隔Δd2で進角量δを変化させる第2探索と、を少なくとも行い、さらに、必要に応じて、第m-1(ただし、mは、3以上の整数)探索で得られた駆動電圧に基づいて第m-1探索よりも狭い探索範囲Qを決定し、決定した探索範囲Q内において第m-1間隔Δdm-1よりも小さい第m間隔Δdmで進角量δを変化させる第m探索を1回または複数回繰り返し行う。ただし、第1探索は、本実施形態とは逆に、駆動電圧が減少から増加に転じるまで第1間隔Δd1で進角量δが減少する方向に変化させてもよい。
【0045】
このような方策によれば、初めは広い範囲を荒く探索し、徐々に範囲を狭めつつ細かく探索することができるため、例えば、方策を持たずに広い範囲を初めから細かく探索する場合と比べて演算量を減らすことができる。そのため、進角量δの最適解をより短時間に求めることができ、モータMをより短時間で高効率な駆動状態へ収束させることができる。なお、駆動電圧は、PWM回路44が出力する駆動パルス信号PdのDutty比に基づいて検出することができる。
【0046】
また、第1探索において第n+1回目の探索で駆動電圧が増加に転じ、直前の第n回目の探索での駆動電圧が最小値であった場合、第n-1回目の探索での駆動電圧と第n+1回目の探索での駆動電圧とを比較し、小さい方の探索回とn回目の探索との間を第2探索での探索範囲Qとする。これは、この探索範囲Qに進角量δの最適解、つまり、駆動電圧が最小となる進角量δが存在する可能性が高いためである。これにより、進角量δの最適解をより確実に、かつ、より短時間で求めることができる。
【0047】
上記の方策について、1つの具体例を
図5に示すフローチャート、
図6に示す表および
図7に示すグラフに基づいて説明する。ただし、方策は、特に限定されない。まず、モータ駆動制御装置2は、第1探索を行う。第1探索では、まず、進角算出部31は、ステップS11として、第1間隔Δd1=15°に設定する。次に、進角算出部31は、ステップS12として、進角量δ=0°として第1回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=0°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が6Vであり、報酬が6である。
【0048】
次に、進角算出部31は、ステップS13として、第1回目の探索に対して第1間隔Δd1=15°だけ進角量δを増加させ、進角量δ=15°として第2回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=15°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が2.7Vであり、報酬が2.7である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、8.7であり、平均値は、4.35である。
【0049】
次に、進角算出部31は、ステップS14として、第2回目の探索に対して第1間隔Δd1=15°だけ進角量δを増加させ、進角量δ=30°として第3回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=30°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が2.3Vであり、報酬が2.3である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、11であり、平均値は、3.66(ただし、小数点第3位以下は切り捨て)である。
【0050】
次に、進角算出部31は、ステップS15として、第3回目の探索に対して第1間隔Δd1=15°だけ進角量δを増加させ、進角量δ=45°として第4回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=45°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が5.4Vであり、報酬が5.4である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、16.4であり、平均値は、4.1である。
【0051】
図示の例では、第4回目の探索で駆動電圧(報酬)が減少から増加に転じている。そのため、以上により、第1探索を終了する。つまり、第1探索では、進角量δ=0°~45°の範囲が探索範囲Qとなる。また、第1探索では、第4回目の直前に行った第3回目の探索での駆動電圧が最小値となる。
【0052】
次に、モータ駆動制御装置2は、第2探索を行う。第2探索では、まず、進角算出部31は、ステップS21として、最小の駆動電圧である第3回目の探索の両隣に位置する第2回目の探索と第4回目の探索とでどちらの駆動電圧(報酬)が小さいかを判定する。
【0053】
図示の例では、第2回目の探索での駆動電圧[2.7V]が第4回目の探索での駆動電圧[5.4V]よりも小さい。そのため、進角算出部31は、ステップS22として、第2回目の探索と第3回目の探索との間に駆動電圧(報酬)が最小となる進角量δが存在すると推定し、以降の探索を第2回目の探索(進角量δ=15°)と第3回目の探索(進角量δ=30°)との間で行う。つまり、第2探索では、進角量δ=15°~30°の範囲が探索範囲Qとなる。
【0054】
次に、進角算出部31は、ステップS23として、第2間隔Δd2を第1間隔Δd1よりも小さく設定する。図示の例では、第2間隔Δd2を第1間隔Δd1の半分に設定している。つまり、第2間隔Δd2=7.5°に設定する。次に、進角算出部31は、ステップS24として、2回目の探索に対して第2間隔Δd2=7.5°だけ進角量δを増加させ、進角量δ=22.5°として第5回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=22.5°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が2.03Vであり、報酬が2.03である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、18.43であり、平均値は、3.68(ただし、小数点第3位以下は切り捨て)である。
【0055】
以上により、第2探索を終了する。図示の例では、第2探索終了時点での駆動電圧の最小値が十分に低くないため、進角算出部31は、探索を継続する。
【0056】
次に、モータ駆動制御装置2は、第3探索を行う。第5回目の探索での駆動電圧が第3回目の探索での駆動電圧を下回った。そのため、進角算出部31は、ステップS31として、第5回目の探索と第3回目の探索との間に駆動電圧が最小となる進角量δが存在すると推定し、第3回目の探索を第5回目の探索(進角量δ=22.5°)と第3回目の探索(進角量δ=30°)との間で行う。つまり、第3探索では、進角量δ=22.5°~30°の範囲が探索範囲Qとなる。
【0057】
次に、進角算出部31は、ステップS32として、第3間隔Δd3を第2間隔Δd2よりも小さく設定する。図示の例では、第3間隔Δd3を第2間隔Δd2の半分に設定している。つまり、第3間隔Δd3=3.75°に設定する。次に、進角算出部31は、ステップS33として、5回目の探索に対して第3間隔Δd3=3.75°だけ進角量δを増加させ、進角量δ=26.25°として第6回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=26.25°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が2.03Vであり、報酬が2.03である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、20.46であり、平均値は、3.41である。
【0058】
以上により、第3探索を終了する。図示の例では、第3探索終了時点での駆動電圧の最小値が十分に低くないため、進角算出部31は、探索を継続する。
【0059】
次に、モータ駆動制御装置2は、第4探索を行う。第6回目の探索での駆動電圧が第5回目の探索での駆動電圧と等しい。そのため、進角算出部31は、ステップS41として、第5回目の探索と第6回目の探索との間に駆動電圧が最小となる進角量δが存在すると推定し、以降の探索を第5回目の探索(進角量δ=22.5°)と第6回目の探索(進角量δ=26.25°)との間で行う。つまり、第4探索では、進角量δ=22.5°~26.25°の範囲が探索範囲Qとなる。
【0060】
次に、進角算出部31は、ステップS42として、第4間隔Δd4を第3間隔Δd3よりも小さく設定する。図示の例では、第4間隔Δd4を第3間隔Δd3の半分に設定している。つまり、第4間隔Δd4=1.875°に設定する。次に、進角算出部31は、ステップS43として、5回目の探索に対して第4間隔Δd4=1.875°だけ進角量δを増加させ、進角量δ=24.375°として第7回目の探索を実行する。これを受け付けたモータドライブIC4は、進角量δ=24.375°でモータMの回転速度ωが所定速度ω0で一定となるように駆動パルス信号Pdを生成する。進角算出部31は、この時の駆動パルス信号PdのDutty比から各コイルに印加された駆動電圧を検出し、検出した駆動電圧をそのまま報酬とする。図示の例では、駆動電圧が2Vであり、報酬が2である。また、進角算出部31は、各回の報酬の合計値および平均値を算出する。この時点での報酬の合計値は、22.46であり、平均値は、3.20(ただし、小数点第3位以下は切り捨て)である。
【0061】
進角算出部31は、第7回目の探索での駆動電圧(報酬)が十分に小さい値であり、求められる駆動効率を十分に発揮することができる値であると判断し、ステップS44として、第7回目の探索での進角量δ=24.375°を進角量δの最適解として決定する。
【0062】
以上により、学習モデル310が有する方策に基づいて進角量δの最適解が求められた。そして、前述したように、進角算出部31は、進角量δの最適解をモータドライブIC4に送信し、それを受けたモータドライブIC4は、進角量δが最適解となるように、所定のタイミングで駆動電圧をモータMに印加する。これにより、モータMの高効率駆動が実現される。
【0063】
このように、学習モデル310が有する方策に基づく探索を行って進角量δの最適解を求めることにより、方策を持たずに不規則または規則的に総当たりで進角量δの最適解を求める場合と比べて演算量を減らすことができる。そのため、進角量δの最適解をより短時間に求めることができ、モータMをより短時間で高効率な駆動状態へ収束させることができると共に、マイコン3やモータドライブIC4の演算資源の節約にもなる。
【0064】
<第2実施形態>
図8は、第2実施形態に係るモータ駆動制御装置のブロック図である。
【0065】
本実施形態のモータ駆動制御装置2は、進角算出部31が駆動電圧を検知する方法が異なること以外は、前述した第1実施形態のモータ駆動制御装置2と同様である。そのため、以下の説明では、本実施形態に関して、前述した実施形態との相違点を中心に説明し、同様の事項に関しては、その説明を省略する。また、本実施形態の図において、前述した実施形態と同様の構成については、同一符号を付している。
【0066】
図8に示すように、本実施形態のモータ駆動制御装置2では、モータドライブIC4は、モータ駆動制御部45に接続された電流検知部48と、電流検知部48に接続された過電流保護回路49と、を有する。電流検知部48は、例えば、シャント抵抗であり、モータ駆動制御部45に供給される電流量を検出し、検出した電流量を電流値Itとして出力する。過電流保護回路49は、電流検知部48が出力した電流値Itに基づいて過電流を検出したときに出力を停止してモータドライブIC4を保護する。
【0067】
また、マイコン3は、電流検知部48が出力した電流値ItをAD変換(アナログデジタル変換)するADコンバータ34を有する。そして、進角算出部31は、ADコンバータ34でデジタル信号に変換された電流値Itに基づいて駆動電圧を検知する。このような構成によっても、簡単な構成で、かつ、精度よく、駆動電圧を検知することができる。
【0068】
以上のような第2実施形態によっても、前述した第1実施形態と同様の効果を発揮することができる。
【0069】
以上、本発明のモータ駆動制御装置およびモータ駆動制御方法を図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。
【符号の説明】
【0070】
1…駆動システム 2…モータ駆動制御装置 3…マイコン 31…進角算出部 310…学習モデル 32…目標速度算出部 33…温度検出部 34…ADコンバータ 4…モータドライブIC 41…速度制御部 42…通電タイミング生成部 43…駆動波形生成部 44…PWM回路 45…モータ駆動制御部 46…回転角検出部 47…回転速度算出部 48…電流検知部 49…過電流保護回路 5…温度検出素子 Dp…通電位相信号 H…位置センサ It…電流値 M…モータ Pd…駆動パルス信号 S11…ステップ S12…ステップ S13…ステップ S14…ステップ S15…ステップ S21…ステップ S22…ステップ S23…ステップ S24…ステップ S31…ステップ S32…ステップ S33…ステップ S41…ステップ S42…ステップ S43…ステップ S44…ステップ SH…位置検出信号 St…温度信号 Vref…電圧指令値 Wd…波形信号 Δd1…第1間隔 Δd2…第2間隔 Δd3…第3間隔 Δd4…第4間隔 δ…進角量 θ…回転角度 ω…回転速度 ω0…所定速度 ωref…目標回転速度