特許第6241330号(P6241330)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日産自動車株式会社の特許一覧

<>
  • 特許6241330-モータ制御装置 図000009
  • 特許6241330-モータ制御装置 図000010
  • 特許6241330-モータ制御装置 図000011
  • 特許6241330-モータ制御装置 図000012
  • 特許6241330-モータ制御装置 図000013
  • 特許6241330-モータ制御装置 図000014
  • 特許6241330-モータ制御装置 図000015
  • 特許6241330-モータ制御装置 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6241330
(24)【登録日】2017年11月17日
(45)【発行日】2017年12月6日
(54)【発明の名称】モータ制御装置
(51)【国際特許分類】
   H02P 21/05 20060101AFI20171127BHJP
   H02P 21/22 20160101ALI20171127BHJP
【FI】
   H02P21/05
   H02P21/22
【請求項の数】2
【全頁数】16
(21)【出願番号】特願2014-47032(P2014-47032)
(22)【出願日】2014年3月11日
(65)【公開番号】特開2015-171301(P2015-171301A)
(43)【公開日】2015年9月28日
【審査請求日】2017年1月25日
(73)【特許権者】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(72)【発明者】
【氏名】森 智章
(72)【発明者】
【氏名】正治 満博
(72)【発明者】
【氏名】二瓶 晶子
【審査官】 池田 貴俊
(56)【参考文献】
【文献】 特開2009−232531(JP,A)
【文献】 特開2012−75236(JP,A)
【文献】 特開2010−268568(JP,A)
【文献】 米国特許出願公開第2011/0298403(US,A1)
【文献】 米国特許出願公開第2013/0141023(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 21/05
H02P 21/22
(57)【特許請求の範囲】
【請求項1】
トルク指令値に基づいてモータへの電流指令値を生成する電流指令値生成部と、前記トルク指令値に基づいてモータの干渉電圧を生成する干渉電圧生成部と、前記電流指令値生成部により生成された電流指令値とモータコイルへ供給される電流の検出値との偏差をゼロに近づける第1の仮電圧指令値を生成する電流フィードバック制御部と、ローパスフィルタを介して前記干渉電圧から干渉電圧指令値を求め、前記干渉電圧指令値と第1の仮電圧指令値とを加算して第1の電圧指令値を生成する第1制御部と、を有し、前記第1の電圧指令値によりモータを駆動する電流ベクトル制御モードを実行する電流ベクトル制御部と、
前記トルク指令値に基づいてモータへの電圧位相値を生成する電圧位相生成部と、前記トルク指令値に基づいてモータへの電圧振幅指令値を生成する電圧振幅生成部と、前記電流の検出値に基づいてモータトルクを推定するトルク推定部と、前記トルク推定部により推定されたモータトルク及び前記トルク指令値から求められる電圧位相補正値と前記電圧位相値との偏差、並びに、前記電圧振幅生成部により生成された電圧振幅指令値に基づいて、第2の電圧指令値を生成する第2制御部と、を有し、前記第2の電圧指令値によりモータを制御する電圧位相制御モードを実行するする電圧位相制御部と、
前記電流ベクトル制御モードの実行中において前記電流ベクトル制御部にて生成された前記第1の電圧指令値を選択し、前記電圧位相制御モードの実行中において前記電圧位相制御部にて生成された前記第2の電圧指令値を選択し、選択した電圧指令値によりモータの制御を行わせる切替部と、
前記電圧位相値と前記電圧振幅指令値とから第2の仮電圧指令値を求める補正前電圧生成部と、
ローパスフィルタを介することで前記補正前電圧生成部により生成された第2の仮電圧指令値から得られた値から、前記検出値にモータコイル抵抗を乗じた値を減算する第1減算器と、
前記第2の電圧指令値から前記第1減算器により得られた値を減算する第2減算器と、を備え、
前記電圧位相制御モードから前記電流ベクトル制御モードに遷移して、前記切替部により前記第2の電圧指令値が選択されている状態から前記第1の電圧指令値が選択される状態に切り替えられた場合、前記干渉電圧指令値の初期値を前記第1減算器により得られた値とし、前記第1の仮電圧指令値の初期値を前記第2減算器により得られた値とする
ことを特徴とするモータ制御装置。
【請求項2】
前記切替部によって前記第2の電圧指令値が選択されている状態から前記第1の電圧指令値が選択されるように要求する電流制御移行判定部をさらに備え、
前記電圧振幅生成部は、弱め磁束制御を行う高回転域において前記電圧位相制御モードの電圧振幅が前記電流ベクトル制御モードの電圧振幅よりも大きくなるように、且つ、当該高回転域よりも低回転域において前記電圧位相制御モードの電圧振幅が前記電流ベクトル制御モードの電圧振幅よりも小さくなるように生成し、
前記電流制御移行判定部は、前記電流指令値生成部により生成された電流指令値が前記検出値よりも小さくなる場合に、前記切替部によって前記第2の電圧指令値が選択されている状態から前記第1の電圧指令値が選択されるように要求する
ことを特徴とする請求項1に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モータ制御装置に関する。
【背景技術】
【0002】
従来、PWM制御(電流ベクトル制御)によりモータを制御する第1のMG制御手段と、電圧位相制御によりモータを制御する第2のMG制御手段と、それぞれの制御手段の稼働中における制御状態変数(例えば比例項や積分項)をモニタするモニタ手段と、を備えたモータ制御装置が提案されている。この装置では、第1のMG制御手段の制御から第2のMG制御手段の制御に切り替える場合、又は第2のMG制御手段の制御から第1のMG制御手段の制御に切り替える場合に、切替後のMG制御手段の制御状態変数の初期値を、切替前にモニタ手段によりモニタされた制御状態変数に基づいて設定する。
【0003】
より詳細に、この装置は、第2のMG制御手段の三相電圧指令信号から三相の基本波形を抽出し、これをd−q座標に変換してd軸基本電圧Vd0とq軸基本電圧Vq0とを演算する。そして、第2のMG制御手段の制御から第1のMG制御手段の制御に切り替える場合には、第1のMG制御手段が備えるPI制御器の出力(d軸電流指令値Vd及びq軸電流指令値Vq)が、切替直前の電圧(d軸基本電圧Vd0及びq軸基本電圧Vq0)と等しくなるように制御状態変数の初期値を設定する(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−143235号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
また、モータの制御には、非干渉制御というものが知られている。非干渉制御とは、ロータの回転に伴ってモータ内部で生じる速度起電力を補償するように電圧指令値を定める制御である。この非干渉制御を行うことによって、速度起電力による応答性や追従性の低下を効果的に抑制できると期待されている。
【0006】
しかし、特許文献1に記載のモータ制御装置に非干渉制御を組み込んだうえで、電圧位相制御から電流制御に切り替える場合、非干渉制御部について初期化を行うと共に、非干渉制御部と電流フィードバック制御部との初期値の配分についても考慮して初期化を行わないと、トルクステップを伴う過渡的な切替直後において過渡的に電流及びトルクの脈動が発生してしまう。
【0007】
本発明はこのような従来の課題を解決するためになされたものであり、その目的とするところは、電流ベクトル制御モードにおいて非干渉制御を行いつつも、電圧位相制御モードから電流ベクトル制御モードへの切替にトルクステップが伴う場合において電流及びトルクの脈動を抑制することが可能なモータ制御装置を提供することにある。
【課題を解決するための手段】
【0008】
本発明は、電圧位相値と電圧振幅指令値とから第2の仮電圧指令値を求める補正前電圧生成部と、ローパスフィルタを介することで補正前電圧生成部により生成された第2の仮電圧指令値から得られた値から、電流の検出値にモータコイル抵抗を乗じた値を減算する第1減算器と、第2の電圧指令値から第1減算器により得られた値を減算する第2減算器と、を備え、電圧位相制御モードから電流ベクトル制御モードに切り替えられた場合、干
渉電圧指令値の初期値を第1減算器により得られた値とし、電流フィードバック制御部の出力である第1の仮電圧指令値の初期値を第2減算器により得られた値とする。
【発明の効果】
【0009】
本発明によれば、非干渉制御について初期化を行うと共に、非干渉制御と電流フィードバックとの初期値についても適切とされるため、電流ベクトル制御モードにおいて非干渉制御を行いつつも、電圧位相制御モードから電流ベクトル制御モードに切替がトルクステップを伴う場合において電流及びトルクの脈動を抑制することができる。
【図面の簡単な説明】
【0010】
図1】第1実施形態に係るモータ制御装置を示す構成図である。
図2図1に示した電圧振幅生成部の詳細について説明する図である。
図3図1に示した電流制御移行判定部の詳細を示す構成図である。
図4】切替初期値演算部の詳細を示す構成図である。
図5】本実施形態に係るモータ制御装置及び従来のモータ制御装置それぞれについての電圧位相制御モードから電流ベクトル制御モードに切り替えたときのトルク挙動を示す図である。
図6】本実施形態に係るモータ制御装置の動作の概略を示すタイミングチャートであり、(a)は回転数Nを示し、(b)は電圧振幅V,Vを示し、(c)は電流振幅I,Iを示している。
図7】本実施形態に係るモータ制御装置の動作の詳細を示すフローチャートであり、電圧位相制御モードにおける動作を示している。
図8】本実施形態に係るモータ制御装置1の動作の詳細を示すフローチャートであり、電流ベクトル制御モードにおける動作を示している。
【発明を実施するための形態】
【0011】
以下、本発明の好適な実施形態を図面に基づいて説明する。図1は、本発明の実施形態に係るモータ制御装置を示す構成図である。図1に示すように、モータ制御装置1は、三相モータMを駆動制御するものである。このモータ制御装置1は、電流ベクトル制御部100と、電圧位相制御部200と、制御モード判定部24と、制御モード切替器(切替部)21とを備えている。
【0012】
電流ベクトル制御部100は、上位装置から送信されるトルク指令値Tに基づいてdq軸電圧指令値(第1の電圧指令値)vdi、vqiを生成して出力するものである。この電流ベクトル制御部100は、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえ、予め実験又は解析により求められるdq軸電流テーブルを参照し、dq軸電流指令値i,iを生成すると共に、モータMのdq軸電流検出値i、iを入力して、これらの偏差がゼロとなるようなdq軸電圧指令値vdi、vqiを算出して出力するものである。
【0013】
電圧位相制御部200は、トルク指令値Tに基づいてdq軸電圧指令値(第2の電圧指令値)vdv、vqvを生成して出力するものである。この電圧位相制御部200は、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえ、予め実験又は解析により求められるテーブルを参照するなどして、電圧振幅指令値(電圧ノルム指令値)Vと電圧位相指令値αとを生成し、ベクトル変換を経てdq軸電圧指令値vdv、vqvを算出して出力するものである。
【0014】
制御モード判定部24は、電流ベクトル制御を実行するか電圧位相制御を実行するかを決定し、制御モードを表す信号を出力するものである。以下、電流ベクトル制御部100による制御を行うモードを電流ベクトル制御モードといい、電圧位相制御部200による
制御を行うモードを電圧位相制御モードという。
【0015】
制御モード切替器21は、制御モード判定部24からの信号に基づいて、電流ベクトル制御部100の出力と電圧位相制御部200の出力のいずれかを選択して最終電圧指令値(選択した電圧指令値)v、vとして出力するものである。
【0016】
さらに、モータ制御装置1は、dq軸/UVW相変換器5と、PWM変換器6と、インバータ7と、電圧センサ8と、電流センサ9と、位置検出器11と、回転数演算器12と、UVW相/dq軸変換器13とを備えている。
【0017】
dq軸/UVW相変換器5は、以下の式(1)に基づき、入力した最終電圧指令値v,vを三相電圧指令値v,v,vに変換するものである。ここで、θは位置検出器11により検出された電気角検出値である。
【数1】
【0018】
PWM変換器6は、三相電圧指令値v、v、v及びDC電圧Vdcを入力し、デッドタイム補償や電圧利用率向上処理といった公知の処理を行なうと共に、三相電圧指令値v、v、vに対応したインバータ7のパワー素子駆動信号Duu、Dul、Dvu、Dvl、Dwu、Dwlを生成する。インバータ7にはバッテリBatが接続されており、バッテリBatからのDC電圧Vdcを擬似交流電圧v,v,vに変換して出力する。なお、DC電圧Vdcは、電圧センサ8により検出されている。
【0019】
電流センサ9は、モータMのU相及びV相の電流i,iを検出するものである。なお、モータMのW相の電流iは原理的に以下の式(2)より求めることができる。
【数2】
【0020】
回転数演算器12は、位置検出器11により検出された電気角検出値θから回転数Nを演算するものである。UVW相/dq軸変換器13は、電流センサ9により検出されたU相及びV相の電流i,iと位置検出器11により検出された電気角検出値θとを入力し、以下の式(3)に基づき、dq軸電流検出値(電流の検出値)i,iに変換するものである。
【数3】
【0021】
電流ベクトル制御部100は、電流指令生成部(電圧指令値生成部)110と、干渉電圧生成部120と、電流フィードバック制御器(電流フィードバック制御部)130と、非干渉制御器(第1制御部)140とから構成されている。
【0022】
電流指令生成部110は、モータ温度t℃(tは任意の数であって、以下t=25とする)において所望のトルクを得るためのdq軸電流テーブルを格納したものである。dq軸電流テーブルは、予め実験又は解析により求められるものである。この電流指令生成部110は、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえdq軸電流テーブルを参照し、dq軸電流指令値(電流指令値)i,iを生成して出力する。
【0023】
ここで、dq軸電流指令値i,iを生成する方法は上記に限られず、例えば「内藤治夫編著、日本テクノセンター発行」の「実用モータドライブ制御系設計とその実際」7章第4項に記載の効率最大法、及び25℃におけるモータ定数を用いて計算的に生成するようにしてもよい。
【0024】
干渉電圧生成部120は、予め作成したテーブルを格納しており、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえ当該テーブルを参照しdq軸干渉電圧(干渉電圧)Vd_dcpl,Vq_dcplを生成して出力するものである。
【0025】
電流フィードバック制御器130は、dq軸電流指令値i,i及びdq軸電流検出値i,iを入力し、dq軸電流指令値i,iにdq軸電流検出値i,iを追従させるべくdq軸電流偏差を求め、この偏差を比例積分(PI)演算増幅することにより干渉電圧を加味していない状態のdq軸電圧指令値(第1の仮電圧指令値)v’,v’を算出するものである。
【0026】
非干渉制御器140は、電流フィードバック制御器130により算出されたdq軸電圧指令値v’,v’、及び、dq軸干渉電圧vd_dcpl,vq_dcplを入力して、公知の電流ベクトル制御を行ってdq軸電圧指令値vdi,vqiを算出するものである。この非干渉制御器140は、dq軸電流規範応答の時定数を持つローパスフィルタを有し、ローパスフィルタを介することでdq軸干渉電圧vd_dcpl,vq_dcplからdq軸干渉電圧指令値(干渉電圧指令値)vd_LPF,vq_LPFを算出する。また、非干渉制御器140は、算出したdq軸干渉電圧指令値vd_LPF,vq_LPFと、電流フィードバック制御器130により算出された干渉電圧を加味していない状態のdq軸電圧指令値v’,v’とを加算して、dq軸電圧指令値vdi,vqiを算出する。
【0027】
電圧位相制御部200は、電圧振幅生成部210と、電圧位相生成部220と、トルク演算器(トルク推定部)230と、減算器240と、PI制御器250と、減算器260と、dq軸電圧生成部(第2制御部)270とを備えている。
【0028】
電圧振幅生成部210及び電圧位相生成部220は、トルク指令値T、DC電圧V
、及びモータ回転数Nに基づき電圧ノルム指令値Vと電圧位相値αffとをテーブル参照によって算出し出力する。テーブルには、モータMが基準温度である場合において予め実験的に求めた所望のトルクを得る値が格納されている。
【0029】
トルク演算器230は、予め記憶されているモータ温度25℃における磁石磁束Φa_25℃(モータ定数の1つ)、UVW相/dq軸変換器13にて算出されたdq軸電流検出値i,i、及び、後述のインダクタンス生成部16により生成されたdq軸インダクタンス差(Ld−Lq)25℃(モータ定数の1つ)を入力して、以下の式(1)からモータトルク推定値Tcalを算出する。
【数4】
なお、pはモータMの極対数である。
【0030】
減算器240は、モータトルク推定値Tcalとトルク指令値Tとの差分ΔTを算出するものである。
【0031】
PI制御器250は、差分ΔTを入力し、以下の式(5)から電圧位相補正値αfbを算出するものである。電圧位相補正値αfbはPI増幅された値である。
【数5】
なお、Kpは比例ゲインであり、Kiは積分ゲインである。
【0032】
減算器260は、電圧位相生成部220からの電圧位相値αffと、PI制御器250からの電圧位相補正値αfbとを、減算することにより補正し、電圧位相指令値αを算出するものである。
【0033】
dq軸電圧生成部270は、電圧振幅生成部210からの電圧ノルム指令値Vと減算器260からの電圧位相指令値αとを入力し、以下の式(6)からdq軸電圧指令値vdv、vqvを算出するものである。
【数6】
【0034】
さらに、モータ制御装置1は、インダクタンス生成部16と、電圧位相制御移行判定部22と、電流制御移行判定部23とを備えている。
【0035】
インダクタンス生成部16は、予めオフラインで解析又は実験により得られたテーブルを格納しており、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえ当該テーブルを参照しモータ温度25℃におけるdq軸インダクタンス差(Ld−Lq)25℃を生成して出力するものである。
【0036】
電圧位相制御移行判定部22は、電流ベクトル制御モードから電圧位相制御モードへの移行判定を行うものである。まず、電圧位相制御移行判定部22による判定に先だって、電圧振幅生成部210の詳細について説明する。電圧振幅生成部210に格納されるテーブルは、以下に示すルールに従って実験又は解析により取得された値が設定されている。
【0037】
図2は、図1に示した電圧振幅生成部210の詳細について説明する図である。図2に示すように、電圧振幅生成部210は、モータMが高回転数となるほど、回転数に比例して大きくなる電圧振幅V,Vを生成する。この比例関係は、電流ベクトル制御モードの方が電圧位相制御モードよりも先に上限値に達してしまう。すなわち、第1高回転域a、低回転域b、及び第2高回転域cを図2に示すように設定した場合、電流ベクトル制御モードは、低回転域bにおいて比例関係を有するが、第1高回転域a及び第2高回転域cにおいて上限値に達してしまっている。一方、電圧位相制御モードは、第1高回転域a及び低回転域bにおいて比例関係を有するが、第2高回転域cにおいて上限値に達してしまっている。
【0038】
ここで、電流ベクトル制御モードでは、モータMの温度変化やバラツキにより電圧振幅Vが変化する。このため、電圧位相制御モードにおける電圧振幅Vは、この変化分を考慮して設定されている。すなわち、低回転域bにおいて電圧位相制御モードにおける電圧振幅Vは、モータMの温度変化やバラツキにより電圧振幅Vが変化したとしても、電圧振幅Vを下回るように比例関係における傾きが設定されている。
【0039】
従って、電圧振幅生成部210は、弱め磁束制御を行う高回転域において電圧位相制御モードの電圧振幅Vが電流ベクトル制御モードの電圧振幅Vよりも大きくなるように、且つ、当該高回転域よりも低回転域において電圧位相制御モードの電圧振幅Vが電流ベクトル制御モードの電圧振幅Vよりも小さくなるように生成することとなる。
【0040】
電圧位相制御移行判定部22は、トルク指令値Tが閾値以上である場合に、電流ベクトル制御モードから電圧位相制御モードへの移行要求を行う。ここで、電圧位相制御移行判定部22は、予めモータ回転数NとDC電圧Vdcとを指標とするテーブルを格納しており、閾値は、このテーブルを参照することによって求められ、例えば図2に示す第2高回転域cのように低回転域b及び第1高回転域aよりも高回転高トルク側に設定されている。低回転域b及び第1高回転域aでは電圧位相制御モードから電流ベクトル制御モードへの移行が発生し得るからであり、モード切替のチャタリングを防止するためである。
【0041】
図3は、図1に示した電流制御移行判定部23の詳細を示す構成図である。図3に示すように、電流制御移行判定部23は、電圧位相制御モードから電流ベクトル制御モードへの移行判定を行うものであり、ローパスフィルタ23a,23bと、二乗器23c〜23fと、加算器23g,23hと、電流振幅比較器23iとから構成される。電流制御移行判定部23は、電流指令生成部110から出力されるdq軸電流指令値i,iと、UVW相/dq軸変換器13から出力されるdq軸電流検出値i,iとを入力する。
【0042】
ローパスフィルタ23a,23bは、dq軸電流規範応答の時定数τiaを持ち、dq軸電流指令値i,iの過渡成分を除去する。第1及び第2の二乗器23c,23dは過渡成分が除去された各指令値i,iをそれぞれ二乗し、第1加算器23gは二乗された各指令値i,iを加算して得られた値ia_LPF2*を電流振幅比較器23iに出力する。
【0043】
一方、第3及び第4の二乗器23e,23fはdq軸電流検出値i,iをそれぞれ二乗し、第2加算器23hは二乗された各検出値i,iを加算して得られた値i
を電流振幅比較器23iに出力する。
【0044】
電流振幅比較器23iは、以下の表1に従って電流制御移行要求を行うかを判断する。
【表1】
【0045】
すなわち、dq軸電流指令値i,iの二乗和(過渡成分除去した二乗和)がdq軸電流検出値i,iの二乗和よりも大きい場合、電流振幅比較器23iは電流制御移行要求を行わないと判断する。一方、dq軸電流指令値i,iの二乗和(過渡成分除去した二乗和)がdq軸電流検出値i,iの二乗和以下である場合、電流振幅比較器23iは電流制御移行要求を行うと判断する。
【0046】
このような電流制御移行要求は、図2に示す理論に基づいて行われる。例えばモータMの温度変化やバラツキを考慮しない場合、低回転域bにおいて電流ベクトル制御モードにおける電圧振幅Vが電圧位相制御モードにおける電圧振幅Vよりも大きくなる。このため、低回転域bにおいては、電流ベクトル制御モードにおける電流指令値が電圧位相制御モードにおける電流指令値よりも小さくなる。一方、第1高回転域a及び第2高回転域cにおいて電流ベクトル制御モードにおける電圧振幅Vが電圧位相制御モードにおける電圧振幅Vよりも小さくなる。このため、第1高回転域a及び第2高回転域cにおいては、電流ベクトル制御モードにおける電流値についても電圧位相制御モードにおける電流値よりも大きくなる。
【0047】
従って、低回転域bにおいては、dq軸電流指令値i,iの二乗和(過渡成分除去した二乗和)がdq軸電流検出値i,iの二乗和以下となり、電流制御移行要求が行われることとなる。これに対して、第1高回転域a及び第2高回転域cにおいては、dq軸電流指令値i,iの二乗和(過渡成分除去した二乗和)がdq軸電流検出値i,iの二乗和を超えることとなり、電流制御移行要求が行われないこととなる。以上より、電圧位相制御モードから電流ベクトル制御モードへの切替は切替ポイントP1で行われることとなる。なお、モータMの温度変化やバラツキが発生すると、切替は切替ポイントP2,P3等で行われることはいうまでもない。
【0048】
ここで、従来のモータ制御装置では、電圧位相制御モードから電流ベクトル制御モードに切替がトルクステップを伴う場合、電流及びトルクに脈動が発生してしまう。そこで、本実施形態に係るモータ制御装置1は、切替初期値演算部20を備えている。この切替初期値演算部20は、電圧位相制御モードから電流ベクトル制御モードに切り替えられた場合に電流ベクトル制御モードにおける初期値を演算し、この初期値により電流及びトルクの脈動を抑えるものである。
【0049】
図4は、切替初期値演算部20の詳細を示す構成図である。図4に示すように、切替初期値演算部20は、dq軸電圧演算部(補正前電圧生成部)20aと、ローパスフィルタ20b,20cと、二乗器20d,20eと、減算器20f〜20iとを備えている。
【0050】
dq軸電圧演算部20aは、電圧振幅生成部210により生成された電圧ノルム指令値Vと、電圧位相生成部220により生成された電圧位相値αffとを入力し、dq
軸電圧生成部270と同様にして仮のdq軸電圧指令値(第2の仮電圧指令値)vdv’,vqv’を算出する。
【0051】
ローパスフィルタ20b,20cは、非干渉制御器140のローパスフィルタと同じ規範応答の時定数τiaを持ち、dq軸電圧演算部20aにより算出された仮のdq軸電圧指令値vdv’,vqv’に対して一次遅れフィルタ処理を施す。
【0052】
二乗器20d,20eは、UVW相/dq軸変換器13に算出されたdq軸電流検出値i,iにモータコイルの抵抗Rを乗じた値を算出する。第1及び第2の減算器(第1減算器)20f,20gは、ローパスフィルタ20b,20cの出力から二乗器20d,20eの出力を減算するものである。
【0053】
第3及び第4の減算器(第2減算器)20h,20iは、制御モード切替器21からの最終電圧指令値v、v(すなわちdq軸電圧生成部270により生成された第2の電圧指令値vdv,vqv)から第1及び第2の減算器20f,20gにより得られた値を減算する。
【0054】
また、本実施形態において電圧位相制御モードから電流ベクトル制御モードに切り替えられた場合、干渉電圧指令値Vd_LPF,Vq_LPFの初期値を第1及び第2の減算器20f,20gにより得られた値とし、dq軸電圧指令値v’,v’の初期値を第3及び第4の減算器20h,20iにより得られた値とする。これにより、非干渉制御と電流フィードバックとの初期値が適切とされ、電流及びトルクの脈動が抑えることとなる。
【0055】
図5は、本実施形態に係るモータ制御装置1及び従来のモータ制御装置それぞれについての電圧位相制御モードから電流ベクトル制御モードに切り替えたときのトルク挙動を示す図である。なお、図5において縦軸はトルクを示し、横軸は時刻を示している。
【0056】
図5に示すように、従来のモータ制御装置は、干渉電圧指令値Vd_LPF,Vq_LPFについて初期化を行っておらず、且つ、dq軸電圧指令値v’,v’との配分についても考慮されていない。このため、時刻0.1sにて電圧位相制御モードから電流ベクトル制御モードに切り替えられた場合、モータトルクは、図5の破線に示すように、時刻0.15s時点において20Nm程度トルク指令値Tよりも下回ってしまう。
【0057】
これに対して本実施形態に係るモータ制御装置1は、上記の如く、干渉電圧指令値Vd_LPF,Vq_LPFの初期値を第1及び第2の減算器20g,20fにより得られた値とし、dq軸電圧指令値v’,v’を第3及び第4の減算器20h,20iにより得られた値としている。このため、モータトルクは、図5の実線に示すように、時刻0.1s〜0.15sの間においてトルク指令値Tをやや下回るものの、ほぼトルク指令値Tに追従することとなる。
【0058】
さらに、本実施形態に係るモータ制御装置1は、電圧位相制御モードから電流ベクトル制御モードへの切替を上記の表に従って行っている。このため、モータトルクは、図5の太線に示すように、時刻0.1s〜0.15sの間においてもトルク指令値Tに追従することとなる。これは、図2及び表を参照して説明したように、電圧位相制御モードの電流指令値と電流ベクトル制御モードの電流指令値とが交差するタイミングで電圧位相制御モードから電流ベクトル制御モードへ切り替えられるため、トルク、dq軸電圧及びdq軸電流のいずれもが段差なく切り替わるからである。
【0059】
図6は、本実施形態に係るモータ制御装置1の動作の概略を示すタイミングチャートで
あり、(a)は回転数Nを示し、(b)は電圧振幅V,Vを示し、(c)は電流振幅I,Iを示している。なお、図6に示す動作においては、トルク指令値Tが一定であるものとする。
【0060】
まず、図6(a)に示すように、時刻0から時刻t2を経て時刻t3まで比例的に回転数Nが増加したとする。これにより、電流ベクトル制御モードにおける電圧振幅Vについても図2を参照して説明したように比例的に増加し、時刻t2以前の時刻t1において上限値に達する。そして、電圧振幅Vは時刻t2まで上限値を保つ(図6(b)参照)。一方、電流振幅Iは、時刻0から時刻t1まで一定値を保ち、時刻t1以降において単調増加する(図6(c)参照)。
【0061】
そして、トルク指令値Tが、電圧位相制御移行判定部に格納されるテーブルから求められる閾値以上になったとすると、時刻t2において電流ベクトル制御モードから電圧位相制御モードに切り替えられる。これにより、電流ベクトル制御モードにおける電圧振幅Vから電圧位相制御モードにおける電圧振幅Vに移行し、値は増加する。また、このときの電圧振幅Vは上限値に達している(図6(b)参照)。一方、電流振幅I,Iについても電流ベクトル制御モードにおける電流振幅Iから電圧位相制御モードにおける電流振幅Iに移行し、値は減少する(図6(c)参照)。
【0062】
その後、時刻t3まで電圧振幅Vは一定値を保ち、電流振幅Iは回転数Nの増加に合わせて単調増加する。
【0063】
そして、図6(a)に示すように、時刻t3から時刻t5,t6を経て比例的に回転数Nが減少したとすると、時刻t5以前の時刻t4まで電圧振幅Vは一定値を保ち(図6(b)参照)、電流振幅Iは回転数Nの減少に合わせて単調減少する(図6(c)参照)。
【0064】
そして、時刻t4以降電圧振幅Vは回転数Nの減少に合わせて単調減少し(図6(b)参照)、電流振幅Iはこれとは逆に単調増加する(図6(c)参照)。
【0065】
そして、時刻t5において電流ベクトル制御モードにおける電流振幅Iと電圧位相制御モードにおける電流振幅Iとが一致したとすると(又は電流振幅Iが電流振幅Iよりも小さくなったとすると)、制御モードが電圧位相制御モードから電流ベクトル制御モードに切り替えられる。これにより、電圧位相制御モードにおける電圧振幅Vから電流ベクトル制御モードにおける電圧振幅Vに移行する(図6(b)参照)。また、電流振幅I,Iについても電圧位相制御モードにおける電流振幅Iから電流ベクトル制御モードにおける電流振幅Iに移行する(図6(c)参照)。この時点では時刻t2と異なり、電圧振幅V,V及び電流振幅I,Iに段差が発生せず、電流及びトルクの脈動の抑制に寄与することができる。
【0066】
なお、時刻t5において電圧振幅Vは上限値に達しているため、時刻t6までのこの値を保つ(図6(b)参照)。一方、電流振幅Iは回転数Nの減少に合わせて単調減少する(図6(b)参照)。そして、時刻t6以降、電圧振幅Vは回転数Nの減少に合わせて単調減少し(図6(b)参照)、電流振幅Iは一定値を保つ(図6(c)参照)。
【0067】
図7及び図8は、本実施形態に係るモータ制御装置1の動作の詳細を示すフローチャートであり、図7は電圧位相制御モードにおける動作を示し、図8は電流ベクトル制御モードにおける動作を示している。
【0068】
まず、図7に示すように、モータ制御装置1は、トルク指令値T、dq軸電流検出値
,i、dq軸電流指令値i,i、電気角検出値θ、回転数N、及びDC電圧Vdcを取得する(S1)。次いで、電流制御移行判定部23は、dq軸電流指令値i,iと、dq軸電流検出値i,iとを入力し、値ia_LPF2*及び値iを算出する(S2)。そして、電流振幅比較器23iは、値iが値ia_LPF2*以上であるか否かを判断する(S3)。
【0069】
値iが値ia_LPF2*以上であると判断した場合(S3:YES)、初期化処理が実行され(S4)、制御モードは電流ベクトル制御モードに移行し(S5)、図7に示す処理は終了する。
【0070】
初期化処理では、まずdq軸電圧演算部20aによって、電圧振幅Vと電圧位相目標値αffとが入力され、dq軸電圧指令値vdv’,vqv’が算出される。そして、dq軸電圧指令値vdv’,vqv’はローパスフィルタ20b,20cにより一次遅れフィルタ処理が施され、得られた値からdq軸電流検出値i,iにモータコイルの抵抗Rを乗じた値が減算される。そして、減算により得られた値が干渉電圧指令値Vd_LPF,Vq_LPFの初期値とされる。また、第2の電圧指令値vdv,vqvから上記の減算により得られた値を減算し、これにより得られた値をdq軸電圧指令値v’,v’の初期値とする。
【0071】
一方、値iが値ia_LPF2*以上でないと判断した場合(S3:NO)、電圧振幅生成部210は電圧振幅Vを生成すると共に、インダクタンス生成部16はdq軸インダクタンス差(Ld−Lq)25℃を生成する(S6)。次に、トルク演算器230は、モータ温度25℃における磁石磁束Φa_25℃、dq軸電流検出値i,i、及び、dq軸インダクタンス差(Ld−Lq)25℃を入力して、式(1)からモータトルク推定値Tcalを算出する(S7)。
【0072】
その後、トルク演算器230は、モータトルク推定値Tcalとトルク指令値Tとの差分を入力し、式(2)から電圧位相補正値αfbを算出する(S8)。
【0073】
次いで、dq軸電圧生成部270は、電圧位相補正値αfbと電圧位相目標値αffとの偏差α、及び、電圧振幅指令値Vから式(3)に基づいてdq軸電圧指令値vdv,vqvを算出する(S9)。
【0074】
次に、dq軸/UVW相変換器5は、回転子の電気角検出値θを入力して、式(4)により、dq軸電圧指令値v,vを三相電圧指令値v,v,vに変換する(S10)。そして、三相電圧指令値v,v,vに基づいてモータMが駆動され、図7に示す処理は終了する。なお、図7に示す処理は電流ベクトル制御モードに移行しない限り、モータ制御装置1の電源がオフとなるまで、繰り返し実行される。
【0075】
また、電流ベクトル制御モードでは図8に示す処理が実行される。まず、モータ制御装置1は、トルク指令値T、dq軸電流検出値i,i、電気角検出値θ、回転数N、及びDC電圧Vdcを取得する(S11)。次いで、電圧位相制御移行判定部22は、モータ回転数NとDC電圧Vdcとを指標とするテーブルに基づいて閾値Trefを求める(S12)。そして、電圧位相制御移行判定部22は、トルク指令値Tが閾値Tref以上であるを判断する(S13)。
【0076】
トルク指令値Tが閾値Tref以上であると判断した場合(S13:YES)、制御モードは電圧位相制御モードに移行し(S14)、図8に示す処理は終了する。
【0077】
一方、トルク指令値Tが閾値Tref以上でないと判断した場合(S13:NO)、
電流指令生成部110は、トルク指令値T、DC電圧Vdc、及びモータ回転数Nを入力のうえdq軸電流テーブルを参照し、dq軸電流指令値i,iを生成する(S15)。
【0078】
その後、干渉電圧生成部120はdq軸干渉電圧Vd_dcpl,Vq_dcplを生成し、電流フィードバック制御器130及び非干渉制御器140は、公知の電流ベクトル制御を行ってdq軸電圧指令値vdi,vqiを算出する(S16)。
【0079】
次に、dq軸/UVW相変換器5は、回転子の電気角検出値θを入力して、式(4)により、dq軸電圧指令値v,vを三相電圧指令値v,v,vに変換する(S17)。そして、三相電圧指令値v,v,vに基づいてモータMが駆動され、図8に示す処理は終了する。なお、図8に示す処理は電圧移行制御モードに移行しない限り、モータ制御装置1の電源がオフとなるまで、繰り返し実行される。
【0080】
このようにして、本実施形態に係るモータ制御装置によれば、非干渉制御について初期化を行うと共に、非干渉制御と電流フィードバックとの初期値についても適切とされるため、電流ベクトル制御モードにおいて非干渉制御を行いつつも、電圧位相制御モードから電流ベクトル制御モードに切替がトルクステップを伴う場合において電流及びトルクの脈動を抑制することができる。
【0081】
また、電圧振幅指令値V,Vを上記のように設定しているので、電流の大きさが電圧位相制御モードと電流ベクトル制御モードの適用領域境界で逆転する領域が得られる。そして、図6の時刻t5のように、電流ベクトル制御モードのdq軸電流指令値i,iとdq軸電流検出値i,iとの一致を持って適用領域境界を検出して切替を判定する。その際、上記のフィードバックを行うことにより、切替前後のトルクが一致するようにしているので、トルク、電流の振幅と位相、電圧の振幅と位相が切替前後で段差無く一定となり、トルク段差やトルクショックを抑制することができる。よって、より適した初期化制御を行うことができる。
【0082】
以上、実施形態に基づき本発明を説明したが、本発明は上記実施形態に限られるものでは無く、本発明の趣旨を逸脱しない範囲で、変更を加えてもよい。
【0083】
例えば、電流振幅比較器23iは、dq軸電流指令値i,iの二乗和(過渡成分除去した二乗和)がdq軸電流検出値i,iの二乗和以下である場合、電流制御移行要求を行うと判断している。しかし、二乗和に限らず、二乗しない値(例えば絶対値)により電流制御移行要求を行うか否かを判断してもよい。
【符号の説明】
【0084】
1 :モータ制御装置
5 :dq軸/UVW相変換器
6 :PWM変換器
7 :インバータ
8 :電圧センサ
9 :電流センサ
11 :位置検出器
12 :回転数演算器
13 :UVW相/dq軸変換器
16 :インダクタンス生成部
20 :切替初期値演算部
20a :dq軸電圧演算部
20b,20c :ローパスフィルタ
20d,20e :二乗器
20f〜20i :減算器
21 :制御モード切替器(切替部)
22 :電圧位相制御移行判定部
23 :電流制御移行判定部
23a,23b :ローパスフィルタ
23c〜23f :二乗器
23g,23h :加算器
23i :電流振幅比較器
24 :制御モード判定部
100 :電流ベクトル制御部
110 :電流指令生成部(電圧指令値生成部)
120 :干渉電圧生成部
130 :電流フィードバック制御器(電流フィードバック制御部)
140 :非干渉制御器(第1制御部)
200 :電圧位相制御部
210 :電圧振幅生成部
220 :電圧位相生成部
230 :トルク演算器(トルク推定部)
240 :減算器
250 :PI制御器
260 :減算器
270 :dq軸電圧生成部(第2制御部)
Bat :バッテリ
図1
図2
図3
図4
図5
図6
図7
図8