(57)【要約】【課題】シンクロナスリラクタンスモータに対して精度の高い電流制御を行えるモータ制御装置を提供する。【解決手段】ｄ軸励磁電流除去部６１は、三相／二相座標変換部５６によって得られたｄ軸電流ｉｄに含まれているｄ軸駆動電流を演算する。ｑ軸励磁電流除去部６２は、三相／二相座標変換部５６によって得られたｑ軸電流ｉｑに含まれているｑ軸駆動電流を演算する。ｄ軸電流偏差演算部４５は、ｄ軸電流指令値ｉｄ＊とｄ軸駆動電流ｉｍｄとの偏差（ｉｄ＊−ｉｍｄ）を演算する。また、ｑ軸電流偏差演算部４６は、ｑ軸電流指令値ｉｑ＊とｑ軸駆動電流ｉｍｑとの偏差（ｉｑ＊−ｉｍｑ）を演算する。【選択図】図３
2015023635.tif 000002
【特許請求の範囲】
【請求項１】
回転磁界を発生するための駆動電流とロータを励磁するための励磁電流とがモータ電流に含まれているシンクロナスリラクタンスモータを制御するモータ制御装置であって、
前記モータに流れるモータ電流を検出する電流検出手段と、
前記モータに発生させるべきモータトルクに対応した駆動電流指令値を設定する電流指令値設定手段と、
前記電流検出手段によって検出されるモータ電流に含まれている駆動電流を演算する駆動電流演算手段と、
前記駆動電流演算手段によって演算される駆動電流が、前記電流指令値設定手段によって設定される駆動電流指令値に等しくなるように、前記モータを制御する制御手段とを含むモータ制御装置。
【請求項２】
前記駆動電流演算手段は、
前記モータのモータ電流と励磁電流との関係を記憶したテーブルと、
前記電流検出手段によって検出されるモータ電流に対応する励磁電流を前記テーブルから求める励磁電流演算手段と、
前記電流検出手段によって検出されるモータ電流から、前記励磁電流演算手段によって求められる励磁電流を除去することにより、駆動電流を求める手段とを含む、請求項１に記載のモータ制御装置。
【請求項３】
前記駆動電流演算手段は、
前記モータのモータ電流と駆動電流との関係を記憶したテーブルと、
前記電流検出手段によって検出されるモータ電流に対応する駆動電流を前記テーブルから求める手段とを含む、請求項１に記載のモータ制御装置。
【請求項４】
回転磁界を発生するための駆動電流とロータを励磁するための励磁電流とがモータ電流に含まれているシンクロナスリラクタンスモータを制御するモータ制御装置であって、
前記モータに流れるモータ電流を検出する電流検出手段と、
前記モータに発生させるべきモータトルクに対応する駆動電流指令値を設定する電流指令値設定手段と、
前記電流指令値設定手段によって設定される駆動電流指令値をモータ電流指令値に変換する電流指令値変換手段と、
前記電流検出手段によって検出されるモータ電流が、前記電流指令値変換手段によって得られたモータ電流指令値に等しくなるように、前記モータを制御する制御手段とを含むモータ制御装置。
【請求項５】
前記電流指令値変換手段は、
前記モータの駆動電流と励磁電流との関係を記憶したテーブルと、
前記駆動電流指令値設定手段によって設定される駆動電流指令値に対応する励磁電流を前記テーブルから求める励磁電流演算手段と、
前記駆動電流指令値設定手段によって設定される駆動電流指令値に、前記励磁電流演算手段によって求められる励磁電流を加えた値を、モータ電流指令値として設定する手段とを含む、請求項４に記載のモータ制御装置。
【請求項６】
前記電流指令値変換手段は、
前記モータの駆動電流とモータ電流との関係を記憶したテーブルと、
前記駆動電流指令値設定手段によって設定される駆動電流指令値に対応するモータ電流を前記テーブルから求め、得られたモータ電流をモータ電流指令値として設定する手段とを含む、請求項４に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、シンクロナスリラクタンスモータを制御するモータ制御装置に関する。
【背景技術】
【０００２】
電磁エネルギーの位置に対する変化によって発生するリラクタンストルクのみを利用して、ロータを回転させるリラクタンスモータが知られている。リラクタンスモータには、ステータおよびロータが突極部を有するスイッチトリラクタンスモータ（ＳＲＭ：Switched Reluctance Motor）と、ステータがブラシレスモータと同様の構造のシンクロナスリラクタンスモータ（ＳｙｎＲＭ：Synchronous Reluctance Motor）とがある。
【０００３】
シンクロナスリラクタンスモータは、ステータおよびロータのうち、ロータのみに突極部を有している。シンクロナスリラクタンスモータでは、ロータの突極部により、磁束の流れやすい突極部の方向（以下、「ｄ軸方向」という）と磁束が流れにくい非突極部の方向（以下、「ｑ軸方向」という）とがある。このため、ｄ軸方向のインダクタンス（以下、「ｄ軸インダクタンス」という）とｑ軸方向のインダクタンス（以下、「ｑ軸インダクタンス」という）の差によりリラクタンストルクが発生し、このリラクタンストルクによってロータが回転する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2010-64622号公報
【非特許文献】
【０００５】
【非特許文献１】長谷川  勝（中部大学）、道木  慎二（名古屋大学）、佐竹  明善（オークマ）、王  道洪（岐阜大学）、「永久磁石電動機・リラクタンスモータの駆動回路技術とドライブ制御技術  −６．リラクタンスモータ制御技術−  」、平成１６年電気学会産業応用部門大会論文集、Ｉ−１１９〜Ｉ−１２４（２００４）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明の目的は、シンクロナスリラクタンスモータに対して精度の高い電流制御を行えるモータ制御装置を提供することである。
【課題を解決するための手段】
【０００７】
請求項１記載の発明は、回転磁界を発生するための駆動電流とロータを励磁するための励磁電流とがモータ電流に含まれているシンクロナスリラクタンスモータ（１８）を制御するモータ制御装置（１２；１２Ｂ）であって、前記モータに流れるモータ電流を検出する電流検出手段（３３；３３３）と、前記モータに発生させるべきモータトルクに対応した駆動電流指令値を設定する電流指令値設定手段（４１，４３，４４；３４１，３４４）と、前記電流検出手段によって検出されるモータ電流に含まれている駆動電流を演算する駆動電流演算手段（６１，６２；３６２）と、前記駆動電流演算手段によって演算される駆動電流が、前記電流指令値設定手段によって設定される駆動電流指令値に等しくなるように、前記モータを制御する制御手段（４５，４６，４７，４８；３４６，３４８）とを含むモータ制御装置である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表すが、むろん、この発明の範囲は当該実施形態に限定されない。以下、この項において同じ。
【０００８】
この発明によれば、モータ電流に含まれている駆動電流を駆動電流指令値に導くようにモータが制御されるので、シンクロナスリラクタンスモータに対して精度の高い電流制御を行えるようになる。
請求項２記載の発明は、前記駆動電流演算手段は、前記モータのモータ電流と励磁電流との関係を記憶したテーブル（４０ａ，３４０ａ）と、前記電流検出手段によって検出されるモータ電流に対応する励磁電流を前記テーブルから求める励磁電流演算手段（６１，６２；３６２）と、前記電流検出手段によって検出されるモータ電流から、前記励磁電流演算手段によって求められる励磁電流を除去することにより、駆動電流を求める手段（６１，６２；３６２）とを含む、請求項１に記載のモータ制御装置である。
【０００９】
請求項３記載の発明は、前記駆動電流演算手段は、前記モータのモータ電流と駆動電流との関係を記憶したテーブル（４０ｂ，３４０ｂ）と、前記電流検出手段によって検出されるモータ電流に対応する駆動電流を前記テーブルから求める手段（６１，６２；３６２）とを含む、請求項１に記載のモータ制御装置である。
請求項４記載の発明は、回転磁界を発生するための駆動電流とロータを励磁するための励磁電流とがモータ電流に含まれているシンクロナスリラクタンスモータ（１８）を制御するモータ制御装置（１２Ａ；１２Ｃ）であって、前記モータに流れるモータ電流を検出する電流検出手段（３３；３３３）と、前記モータに発生させるべきモータトルクに対応する駆動電流指令値を設定する電流指令値設定手段（４１）と、前記電流指令値設定手段によって設定される駆動電流指令値をモータ電流指令値に変換する電流指令値変換手段（６３，４３，４４；３６３，３４４）と、前記電流検出手段によって検出されるモータ電流が、前記電流指令値変換手段によって得られたモータ電流指令値に等しくなるように、前記モータを制御する制御手段（４５，４６，４７，４８；３４６，３４８）とを含むモータ制御装置である。
【００１０】
この発明によれば、駆動電流指令値に対応したモータ電流指令値にモータ電流を導くようにモータが制御されるので、シンクロナスリラクタンスモータに対して精度の高い電流制御を行えるようになる。
請求項５記載の発明は、前記電流指令値変換手段は、前記モータの駆動電流と励磁電流との関係を記憶したテーブル（４０ｃ；３４０ｃ）と、前記駆動電流指令値設定手段によって設定される駆動電流指令値に対応する励磁電流を前記テーブルから求める励磁電流演算手段（６３；３６３）と、前記駆動電流指令値設定手段によって設定される駆動電流指令値に、前記励磁電流演算手段によって求められる励磁電流を加えた値を、モータ電流指令値として設定する手段（６３，４３，４４；３６３，３４４）とを含む、請求項４に記載のモータ制御装置である。
【００１１】
請求項６記載の発明は、前記電流指令値変換手段は、前記モータの駆動電流とモータ電流との関係を記憶したテーブル（４０ｄ；３４０ｄ）と、前記駆動電流指令値設定手段によって設定される駆動電流指令値に対応するモータ電流を前記テーブルから求め、得られたモータ電流をモータ電流指令値として設定する手段（６３，４３，４４；３６３，３４４）とを含む、請求項４に記載のモータ制御装置である。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の第１実施形態に係るモータ制御装置が適用された電動パワーステアリング装置の概略構成を示す模式図である。
【図２】図２は、電動モータの構成を説明するための図解図である。
【図３】図３は、本発明の第１実施形態に係るモータ制御装置としてのＥＣＵの電気的構成を示す概略図である。
【図４】図４は、電動モータの速度−トルク特性等を示すグラフである。
【図５】図５は、電動モータのモータ電流−トルク特性等を示すグラフである。
【図６】図６は、本発明の第２実施形態に係るモータ制御装置としてのＥＣＵの電気的構成を示す概略図である。
【図７】図７は、本発明の第３実施形態に係るモータ制御装置としてのＥＣＵの電気的構成を示す概略図である。
【図８】図８は、本発明の第４実施形態に係るモータ制御装置としてのＥＣＵの電気的構成を示す概略図である。
【図９】図９は、本出願人が既に開発しているモータ制御装置の電気的構成を示す概略図である。
【図１０】図１０は、検出操舵トルクＴｈに対する電流指令値Ｉ＊の設定例を示すグラフである。
【図１１】図１１は、複数の電機子電流Ｉａ毎に取得した電流位相角βに対するモータトルクＴの特性データの一例を示すグラフである。
【図１２】図１２は、各電機子電流Ｉａに対してモータトルクＴが最大となる電流位相角βの実測データと、各電機子電流ＩａとモータトルクＴが最大となる電流位相角βとの関係を近似的に表した直線とを示すグラフである。
【図１３】図１３は、本出願人が既に開発している他のモータ制御装置の電気的構成を示す概略図である。
【図１４】図１４Ａ〜図１５Ｃは、電流指令値Ｉ＊が正の値である場合に、図１３に示すモータ制御装置によって、電動モータを正転方向に回転させることができることを説明するための模式図である。
【図１５】図１５Ａ〜図１５Ｃは、電流指令値Ｉ＊が負の値である場合に、図１３に示すモータ制御装置によって、電動モータを逆転方向に回転させることができることを説明するための模式図である。
【発明を実施するための形態】
【００１３】
以下では、この発明の実施形態を、添付図面を参照して詳細に説明する。
図１は、本発明の第１実施形態に係るモータ制御装置が適用された電動パワーステアリング装置の概略構成を示す模式図である。
電動パワーステアリング装置１は、車両を操向するための操舵部材としてのステアリングホイール２と、このステアリングホイール２の回転に連動して転舵輪３を転舵する転舵機構４と、運転者の操舵を補助するための操舵補助機構５とを備えている。ステアリングホイール２と転舵機構４とは、ステアリングシャフト６および中間軸７を介して機械的に連結されている。
【００１４】
ステアリングシャフト６は、ステアリングホイール２に連結された入力軸８と、中間軸７に連結された出力軸９とを含む。入力軸８と出力軸９とは、トーションバー１０を介して同一軸線上で相対回転可能に連結されている。すなわち、ステアリングホイール２が回転されると、入力軸８および出力軸９は、互いに相対回転しつつ同一方向に回転するようになっている。
【００１５】
ステアリングシャフト６の周囲には、トルクセンサ１１が設けられている。トルクセンサ１１は、入力軸８および出力軸９の相対回転変位量に基いて、ステアリングホイール２に与えられた操舵トルクを検出する。トルクセンサ１１によって検出される操舵トルクは、ＥＣＵ（電子制御ユニット：Electronic  Control  Unit）１２に入力される。
転舵機構４は、ピニオン軸１３と、転舵軸としてのラック軸１４とを含むラックアンドピニオン機構からなる。ラック軸１４の各端部には、タイロッド１５およびナックルアーム（図示略）を介して転舵輪３が連結されている。ピニオン軸１３は、中間軸７に連結されている。ピニオン軸１３は、ステアリングホイール２の操舵に連動して回転するようになっている。ピニオン軸１３の先端には、ピニオン１６が連結されている。
【００１６】
ラック軸１４は、自動車の左右方向（直進方向に直交する方向）に沿って直線状に延びている。ラック軸１４の軸方向の中間部には、ピニオン１６に噛み合うラック１７が形成されている。このピニオン１６およびラック１７によって、ピニオン軸１３の回転がラック軸１４の軸方向移動に変換される。ラック軸１４を軸方向に移動させることによって、転舵輪３を転舵することができる。
【００１７】
ステアリングホイール２が操舵（回転）されると、この回転が、ステアリングシャフト６および中間軸７を介して、ピニオン軸１３に伝達される。そして、ピニオン軸１３の回転は、ピニオン１６およびラック１７によって、ラック軸１４の軸方向移動に変換される。これにより、転舵輪３が転舵される。
操舵補助機構５は、操舵補助用の電動モータ１８と、電動モータ１８の出力トルクを転舵機構４に伝達するための減速機構１９とを含む。電動モータ１８は、シンクロナスリラクタンスモータからなる。減速機構１９は、ウォーム軸２０と、このウォーム軸２０と噛み合うウォームホイール２１とを含むウォームギヤ機構からなる。減速機構１９は、伝達機構ハウジングとしてのギヤハウジング２２内に収容されている。
【００１８】
ウォーム軸２０は、電動モータ１８によって回転駆動される。また、ウォームホイール２１は、ステアリングシャフト６とは同方向に回転可能に連結されている。ウォームホイール２１は、ウォーム軸２０によって回転駆動される。
電動モータ１８によってウォーム軸２０が回転駆動されると、ウォームホイール２１が回転駆動され、ステアリングシャフト６が回転する。そして、ステアリングシャフト６の回転は、中間軸７を介してピニオン軸１３に伝達される。ピニオン軸１３の回転は、ラック軸１４の軸方向移動に変換される。これにより、転舵輪３が転舵される。すなわち、電動モータ１８によってウォーム軸２０を回転駆動することによって、転舵輪３が転舵されるようになっている。
【００１９】
電動モータ１８のロータの回転角（ロータ回転角）は、レゾルバ等の回転角センサ２５によって検出される。回転角センサ２５の出力信号は、ＥＣＵ１２に入力される。電動モータ１８は、モータ制御装置としてのＥＣＵ１２によって制御される。
図２は、電動モータ１８の構成を説明するための図解図である。
電動モータ１８は、前述したようにシンクロナスリラクタンスモータであり、図２に図解的に示すように、周方向に間隔をおいて配置された複数の突極部を有するロータ１００と、電機子巻線を有するステータ１０５とを備えている。電機子巻線は、Ｕ相のステータ巻線１０１、Ｖ相のステータ巻線１０２およびＷ相のステータ巻線１０３が星型結線されることにより構成されている。
【００２０】
各相のステータ巻線１０１，１０２，１０３の方向にＵ軸、Ｖ軸およびＷ軸をとった三相固定座標（ＵＶＷ座標系）が定義される。また、ロータ１００の回転中心側から外周部へ磁束の流れやすい突極部の方向にｄ軸方向をとり、ロータ１００の回転中心側から外周部へ磁束が流れにくい非突極部の方向にｑ軸方向をとった二相回転座標系（ｄｑ座標系。実回転座標系）が定義される。ｄｑ座標系は、ロータ１００の回転角（ロータ回転角）θに従う実回転座標系である。
【００２１】
ロータ回転角θ（電気角）は、この実施形態では、隣接する２つの突起部（ｄ軸）のうちの基準となる一方の突極部（ｄ軸）のＵ軸から反時計回りの回転角として定義される。基準となる前記一方の突極部の方向を＋ｄ軸方向といい、それに隣接する他方の突極部の方向を−ｄ軸方向ということにする。＋ｄ軸に対して電気角で＋９０度回転した軸を＋ｑ軸といい、＋ｄ軸に対して電気角で−９０度回転した軸を−ｑ軸ということにする。ロータ１００（突極部）に生じる磁極（Ｎ極およびＳ極）は、ｄｑ座標系における電流ベクトルＩａの方向によって決定される。この実施形態では、電動モータ１８の正転方向は、図２におけるロータ１００の反時計方向に対応し、電動モータ１８の逆転方向は、図２におけるロータ１００の時計方向に対応するものとする。
【００２２】
通常は、ロータ回転角θを用いることによって、ＵＶＷ座標系とｄｑ座標系との間での座標変換が行われる（たとえば、特開２００９−１３７３２３号公報の式（１），（２）参照）。
この明細書では、電機子巻線に流れる電流を、「電機子電流」または「モータ電流」ということにする。ｄｑ座標系における電流ベクトルＩａは、電機子巻線に流れる電流のベクトル（電機子電流ベクトル）である。βは電流位相角であり、電機子電流ベクトルＩａとｄ軸との位相差である。
【００２３】
第１実施形態のモータ制御装置としてのＥＣＵ１２について説明する前に、図９〜図１２を参照して、本出願人が既に開発しているモータ制御装置２００について説明する。なお、ＥＣＵ１２以外の電動パワーステアリング装置の構成は、図１の電動パワーステアリング装置１の構成と同じであるものとして、モータ制御装置２００について説明する。
図９は、本出願人が既に開発しているモータ制御装置２００の電気的構成を示す概略図である。
【００２４】
モータ制御装置２００は、トルクセンサ１１によって検出される操舵トルクＴｈに応じて電動モータ１８を駆動することによって、操舵状況に応じた適切な操舵補助を実現する。モータ制御装置２００は、マイクロコンピュータ２３１と、このマイクロコンピュータ２３１によって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３とを備えている。
【００２５】
電流検出部３３は、電動モータ１８の各相のステータ巻線に流れる相電流ｉＵ，ｉＶ，ｉＷ（以下、総称するときには「三相検出電流ｉＵ，ｉＶ，ｉＷ」という）を検出する。これらは、ＵＶＷ座標系における各座標軸方向の電流値である。
マイクロコンピュータ２３１は、ＣＰＵおよびメモリ（ＲＯＭ，ＲＡＭなど）を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、電流指令値設定部４１と、電流位相角演算部４２と、ｄ軸電流指令値演算部４３と、ｑ軸電流指令値演算部４４と、ｄ軸電流偏差演算部４５と、ｑ軸電流偏差演算部４６と、ｄ軸ＰＩ（比例積分）制御部４７と、ｑ軸ＰＩ（比例積分）制御部４８と、ｄ軸指示電圧生成部４９と、ｑ軸指示電圧生成部５０と、二相／三相座標変換部５１と、ＰＷＭ制御部５２と、回転角演算部５３と、三相／二相座標変換部５６とが含まれている。
【００２６】
電流指令値設定部４１は、電動モータ１８によって発生させるべきモータトルクに対応した電流の指令値である電流指令値Ｉ＊を設定する。具体的には、電流指令値設定部４１は、トルクセンサ１１によって検出される操舵トルク（検出操舵トルクＴｈ）に基いて、電流指令値Ｉ＊を設定する。検出操舵トルクＴｈに対する電流指令値Ｉ＊の設定例は、図１０に示されている。検出操舵トルクＴｈは、たとえば左方向への操舵のためのトルクが正の値にとられ、右方向への操舵のためのトルクが負の値にとられている。電動モータ１８の左方向への操舵を補助するためのモータトルクの方向は、電動モータ１８の正転方向に対応し、右方向への操舵を補助するためのモータトルクの方向は、電動モータ１８の逆転方向に対応するものとする。電流指令値Ｉ＊は、電動モータ１８から左方向操舵のための操舵補助力を発生させるべきときには正の値とされ、電動モータ１８から右方向操舵のための操舵補助力を発生させるべきときには負の値とされる。
【００２７】
電流指令値Ｉ＊は、検出操舵トルクＴｈの正の値に対しては正をとり、検出操舵トルクＴｈの負の値に対しては負の値をとる。検出操舵トルクＴｈが零のときには、電流指令値Ｉ＊は零とされる。そして、検出操舵トルクＴｈの絶対値が大きくなるほど、電流指令値Ｉ＊の絶対値は大きな値とされる。これにより、検出操舵トルクＴｈの絶対値が大きくなるほど、操舵補助力を大きくすることができる。
【００２８】
電流指令値設定部４１は、たとえば、図１０に示されるような操舵トルクＴｈと電流指令値Ｉ＊との関係を記憶したマップまたはそれらの関係を表す演算式を用いて、操舵トルクＴｈに応じた電流指令値Ｉ＊を設定する。電流指令値設定部４１によって設定された電流指令値Ｉ＊は、電流位相角演算部４２に与えられるとともに、ｄ軸電流指令値演算部４３およびｑ軸電流指令値演算部４４に与えられる。
【００２９】
電流位相角演算部４２は、電流指令値設定部４１から与えられた電流指令値Ｉ＊と予め設定された電流位相角演算式とに基いて、当該電流指令値Ｉ＊に対してモータトルクが最大値に近い値となる電流位相角β（電気角）［deg］を演算する。電流位相角演算式の作成方法について説明する。
電動モータ１８を高効率で駆動するためには、電機子電流に対するモータトルクの比が大きくなるように電動モータ１８を制御すればよい。
【００３０】
極対数がＰｎであるシンクロナスリラクタンスモータにおけるモータトルクＴは、次式(1)で表される。
Ｔ＝Ｐｎ・（Ｌｄ−Ｌｑ）・ｉｄ・ｉｑ      …(1)
Ｌｄはｄ軸インダクタンス［H］であり、Ｌｑはｑ軸インダクタンス［H］である。また、ｉｄはｄ軸電流［A］であり、ｉｑはｑ軸電流［A］である。
【００３１】
電機子電流の大きさをＩａとし、電流位相差をβとすると、ｉｑ＝Ｉａ・sinβ，ｉｄ＝Ｉａ・cosβとなるので、モータトルクＴは、次式(2)で表される。なお、電流位相差βは、電機子電流ベクトルとｄ軸との位相差である。
Ｔ＝（１／２）・Ｐｎ・（Ｌｄ−Ｌｑ）・Ｉａ２sin２β      …(2)
したがって、ｄ軸インダクタンスＬｄおよびｑ軸インダクタンスＬｑが電流位相角βによって変動しなければ、電流位相角βが４５度のときにモータトルクＴは最大となる。しかしながら、シンクロナスリラクタンスモータでは、ｄ軸インダクタンスＬｄおよびｑ軸インダクタンスＬｑがロータコアの磁気飽和の影響を受けて変動するため、モータトルクＴは電流位相角βが４５度のときに必ずしも最大にならない。
【００３２】
そこで、電動モータ１８に対して予め実験を行うことにより、使用する電機子電流Ｉａの範囲において、複数の電機子電流Ｉａ毎に電流位相角βに対するモータトルクＴの特性データを取得する。
図１１は、複数の電機子電流Ｉａ毎に取得した電流位相角βに対するモータトルクＴの特性データの一例を示すグラフである。図１１の特性データは、前記非特許文献１に掲載のデータを転用したものである。ただし、図１１では、横軸に電流位相角βをとり、縦軸にモータトルクＴをとり、各電機子電流Ｉａの電流位相角βに対するモータトルクＴの特性を、それぞれ曲線で表している。
【００３３】
図１１のグラフにおいて、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似することにより、電機子電流Ｉａとその電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βとの関係を表す近似式を求める。具体的には、次式（3）に基いて、電機子電流Ｉａと電流位相角βとの関係を表す近似式を求める。なお、電機子電流Ｉａが零のときにモータトルクが最大となる電流位相角βは４５度になるものとする。
【００３４】
β＝｛（βｍａｘ−βｍｉｎ）／Ｉａｍａｘ｝・Ｉａ＋βｍｉｎ    …(3)
Ｉａｍａｘは、電機子電流Ｉａの最大値であり、この例では、Ｉａｍａｘ＝５０[A]である。βｍａｘは、電機子電流Ｉａが最大値Ｉａｍａｘである場合に、モータトルクＴが最大値となる電流位相角βであり、この例では、βｍａｘ＝６６[deg]であるとする。βｍｉｎは、電機子電流Ｉａが最小値（零）である場合に、モータトルクＴが最大値となる電流位相角βであり、この例では、βｍｉｎ＝４５[deg]であるとする。
【００３５】
前記式(3)に、Ｉａｍａｘ＝５０[A]、βｍａｘ＝６６[deg]およびβｍｉｎ＝４５[deg]を代入すると、次式(4)で表されるような近似式が得られる。
β＝（２１／５０)・Ｉａ＋４５    …(4)
式(4)が、電機子電流Ｉａから電流位相角βを演算するための演算式（電流位相角演算式）となる。
【００３６】
図１２の折れ線ａは、各電機子電流Ｉａに対してモータトルクＴが最大となる電流位相角βの実測データを示すグラフである。図１２の直線ｂは、前記式(4)で表される近似直線を示している。
前記近似式(4)内の電機子電流Ｉａを電流指令値Ｉ＊の絶対値｜Ｉ＊｜に置き換えることにより、次式(5)で示されるように、電流指令値Ｉ＊から電流位相角βを演算するための演算式（電流位相角演算式）が得られる。
【００３７】
β＝（２１／５０)・｜Ｉ＊｜＋４５    …(5)
電流位相角演算部４２には、前述のようにして求められた電流位相角演算式（例えば前記式(5)）が予め設定されている。電流位相角演算部４２は、予め設定されている電流位相角演算式と、電流指令値設定部４１から与えられた電流指令値Ｉ＊とに基いて、電流指令値Ｉ＊に対してモータトルクが最大値に近い値となる電流位相角βを演算する。電流位相角演算部４２によって演算された電流位相角βは、ｄ軸電流指令値演算部４３およびｑ軸電流指令値演算部４４に与えられる。
【００３８】
前記式(2)から、シンクロナスリラクタンスモータでは、電流指令値Ｉ＊の符号を反転させても、モータトルクＴの方向は反転しないが、電流位相角βの符号を反転させることにより、モータトルクＴの方向を変化させることがわかる。そこで、ｄ軸電流指令値演算部４３およびｑ軸電流指令値生成部４４は、電流指令値Ｉ＊が零以上のときには、電流位相角演算部４２によって演算されたβをそのまま使用して対応する指令値を演算し、電流指令値Ｉ＊が零未満のときには、電流位相角演算部４２によって演算されたβに負の符号を付した−βを電流位相角として使用して対応する指令値を演算する。
【００３９】
ただし、cosβ＝cos（−β）である。そこで、ｄ軸電流指令値演算部４３は、電流指令値設定部４１から与えられた電流指令値Ｉ＊と電流位相角演算部４２から与えられた電流位相角βとを用い、次式（6）に基いてｄ軸電流指令値ｉｄ＊を演算する。
ｉｄ＊＝｜Ｉ＊｜・cosβ      …(6)
ｑ軸電流指令値生成部４４は、電流指令値設定部４１から与えられた電流指令値Ｉ＊と電流位相角演算部４２から与えられた電流位相角βとを用い、次式（7a）または（7b）に基いてｑ軸電流指令値ｉｑ＊を演算する。
【００４０】
Ｉ＊≧０である場合  ｉｑ＊＝｜Ｉ＊｜・sinβ          …(7a)
Ｉ＊＜０である場合  ｉｑ＊＝｜Ｉ＊｜・sin（−β）    …(7b)
ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊を総称して、「二相指示電流ｉｄ＊，ｉｑ＊」という場合がある。
回転角演算部５３は、回転角センサ２５の出力信号に基いて、電動モータ１８のロータの回転角（ロータ回転角）θを演算する。
【００４１】
電流検出部３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷは、三相／二相座標変換部５６に与えられる。三相／二相座標変換部５６は、回転角演算部５３によって演算されたロータ回転角θを用いて、三相検出電流ｉＵ，ｉＶ，ｉＷを、ｄｑ座標上でのｄ軸電流ｉｄおよびｑ軸電流ｉｑ（以下、総称するときには「二相検出電流ｉｄ，ｉｑ」という）に変換する。三相／二相座標変換部５６によって得られたｄ軸電流ｉｄは、ｄ軸電流偏差演算部４５に与えられる。三相／二相座標変換部５６によって得られたｑ軸電流ｉｑは、ｑ軸電流偏差演算部４６に与えられる。
【００４２】
ｄ軸電流偏差演算部４５は、ｄ軸電流指令値ｉｄ＊に対するｄ軸電流ｉｄの偏差を演算する。ｄ軸電流偏差演算部４５によって演算された電流偏差は、ｄ軸ＰＩ制御部４７に与えられて、ＰＩ演算処理を受ける。ｄ軸指示電圧生成部４９は、ｄ軸ＰＩ制御部４７の演算結果に応じて、ｄ軸指示電圧ｖｄ＊を生成する。
ｑ軸電流偏差演算部４６は、ｑ軸電流指令値ｉｑ＊に対するｑ軸電流ｉｑの偏差を演算する。ｑ軸電流偏差演算部４６によって演算された電流偏差は、ｑ軸ＰＩ制御部４８に与えられて、ＰＩ演算処理を受ける。ｑ軸指示電圧生成部５０は、ｑ軸ＰＩ制御部４８の演算結果に応じて、ｑ軸指示電圧ｖｑ＊を生成する。以下、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を総称するときには「二相指示電圧ｖｄ＊，ｖｑ＊」という。
【００４３】
二相指示電圧ｖｄ＊，ｖｑ＊は、二相／三相座標変換部５１に与えられる。二相／三相座標変換部５１は、回転角演算部５３によって演算されたロータ回転角θを用いて、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に変換する。以下、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊を総称するときには「三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊」という。
【００４４】
ＰＷＭ制御部５２は、Ｕ相指示電圧ｖＵ＊、Ｖ相指示電圧ｖＶ＊およびＷ相指示電圧ｖＷ＊にそれぞれ対応するデューティ比のＵ相ＰＷＭ制御信号、Ｖ相ＰＷＭ制御信号およびＷ相ＰＷＭ制御信号を生成し、駆動回路３２に供給する。
駆動回路３２は、Ｕ相、Ｖ相およびＷ相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がＰＷＭ制御部５２から与えられるＰＷＭ制御信号によって制御されることにより、三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に相当する電圧が電動モータ１８の各相のステータ巻線に印加されることになる。
【００４５】
電流偏差演算部４５，４６およびＰＩ制御部４７，４８は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、電動モータ１８に流れるモータ電流（電機子電流）が、ｄ軸およびｑ軸電流指令値演算部４３，４４によって演算される二相指示電流ｉｄ＊，ｉｑ＊に近づくように制御される。
前述したように、電流指令値Ｉ＊は、電動モータ１８によって発生させるべきモータトルクに対応した電流の指令値である。ブラシレスモータでは、電機子巻線に流れる電機子電流が、回転磁界を発生するための電流となる。このため、ブラシレスモータでは、モータトルクは、電機子電流にトルク定数を乗算した値となる。したがって、ブラシレスモータでは、電流指令値によって制御されるべき電流は電機子電流（モータ電流）となる。
【００４６】
しかしながら、シンクロナスリラクタンスモータにおいては、電機子巻線に流れる電機子電流（モータ電流）には、回転磁界を発生するための駆動電流と、ロータ１００を励磁するための励磁電流とが含まれている。このため、シンクロナスリラクタンスモータにおいては、電機子巻線に流れる電機子電流（モータ電流）は、回転磁界を発生するための駆動電流と一致しない。
【００４７】
シンクロナスリラクタンスモータでは、モータトルクは、回転磁界を発生するための駆動電流にトルク定数を乗算した値となり、電流指令値Ｉ＊によって制御されるべき電流は駆動電流となる。つまり、シンクロナスリラクタンスモータでは、電流指令値Ｉ＊は駆動電流の指令値であり、ｄ軸電流指令値ｉｄ＊はｄ軸駆動電流の指令値であり、ｑ軸電流指令値ｉｑ＊はｑ軸駆動電流の指令値である。
【００４８】
一方、図９の電流検出部３３によって検出される三相検出電流ｉＵ，ｉＶ，ｉＷは、電動モータ１８に流れるモータ電流（電機子電流）である。したがって、三相／二相座標変換部５６によって演算されるｄ軸電流ｉｄおよびｑ軸電流ｉｑは、それぞれｄ軸モータ電流およびｄ軸モータ電流である。図９のモータ制御装置２００では、ｄ軸モータ電流ｉｄおよびｑ軸モータ電流ｉｑが、それぞれ、ｄ軸駆動電流指令値ｉｄ＊およびｑ軸駆動電流指令値ｉｑ＊に等しくなるようにシンクロナスリラクタンスモータが制御されている。このように、図９のモータ制御装置２００では、駆動電流と励磁電流とを含むモータ電流を、駆動電流の指令値に導くように電動モータ１８を制御しているため、精度の高い電流制御を行えないおそれがある。
【００４９】
次に第１実施形態におけるモータ制御装置としてのＥＣＵ１２について説明する。
図３は、図１のＥＣＵ１２の電気的構成を示す概略図である。図３において、前述の図９に示された各部に対応する部分には、図９中と同一参照符号を付して示す。
このＥＣＵ１２は、精度の高い電流制御を実現するために開発されたものである。ＥＣＵ１２は、マイクロコンピュータ３１と、このマイクロコンピュータ３１によって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３とを備えている。
【００５０】
マイクロコンピュータ３１は、ＣＰＵおよびメモリを備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。メモリは、ＲＯＭ、ＲＡＭ、不揮発性メモリ４０などを含む。複数の機能処理部には、電流指令値設定部４１と、電流位相角演算部４２と、ｄ軸電流指令値演算部４３と、ｑ軸電流指令値演算部４４と、ｄ軸電流偏差演算部４５と、ｑ軸電流偏差演算部４６と、ｄ軸ＰＩ（比例積分）制御部４７と、ｑ軸ＰＩ（比例積分）制御部４８と、ｄ軸指示電圧生成部４９と、ｑ軸指示電圧生成部５０と、二相／三相座標変換部５１と、ＰＷＭ制御部５２と、回転角演算部５３と、三相／二相座標変換部５６と、ｄ軸励磁電流除去部（ｄ軸駆動電流演算部）６１と、ｑ軸励磁電流除去部（ｑ軸駆動電流演算部）６２とが含まれている。
【００５１】
このＥＣＵ１２では、ｄ軸励磁電流除去部６１およびｑ軸励磁電流除去部６２が設けられている点が、図９に示されるモータ制御装置２００と異なっている。また、このＥＣＵ１２では、不揮発性メモリ４０内にモータ電流／励磁電流変換テーブル４０ａおよびモータ電流／駆動電流変換テーブル４０ｂのうちの少なくとも一方が記憶されている点が、図９に示されるモータ制御装置２００と異なっている。
【００５２】
以下、モータ電流／励磁電流変換テーブル４０ａと、モータ電流／駆動電流変換テーブル４０ｂと、ｄ軸励磁電流除去部６１と、ｑ軸励磁電流除去部６２とについて説明する。
モータ電流／励磁電流変換テーブル４０ａは、電動モータ１８として用いられるシンクロナスリラクタンスモータのモータ電流（電機子電流）と励磁電流との関係を記憶したテーブルである。モータ電流／駆動電流変換テーブル４０ｂは、電動モータ１８として用いられるシンクロナスリラクタンスモータのモータ電流と駆動電流との関係を記憶したテーブルである。これらのテーブル４０ａ，４０ｂの作成方法について説明する。
【００５３】
まず、シンクロナスリラクタンスモータの速度−トルク特性を測定する。シンクロナスリラクタンスモータの速度−トルク特性の測定は、たとえば、図９のモータ制御装置２００を用いて行うことができる。モータ制御装置２００において、電流指令値Ｉ＊を最大値に設定し、モータ負荷を変化させていく。そして、回転速度Ｎと、モータトルクＴと、モータ電流（相電流）Ｉａとを測定する。
【００５４】
このようにして得られたシンクロナスリラクタンスモータの速度−トルク特性および速度−モータ電流特性の一例を、図４に示す。図４において、曲線Ｔはトルクを表し、曲線Ｉａはモータ電流（相電流）を示している。
次に、図４の速度−トルク特性および速度−モータ電流特性に基いて、図５に曲線Ｓで示すようなモータ電流−トルク特性を作成する。そして、図５のモータ電流−トルク特性に対応した近似直線Ｌを引き、近似直線Ｌの傾きをトルク定数推定値ＫＴ［Ｎｍ／Ａ］として求める。近似直線Ｌは、モータトルクをＴとし、モータ電流をＩａとすると、たとえば、「Ｔ＝０．０５１１・Ｉａ−０．９２１４」で表される。
【００５５】
シンクロナスリラクタンスモータでは、トルク定数をＫＴとし、駆動電流をｉｍとすると、モータトルクＴは、Ｔ＝ＫＴ・ｉｍで表される。そこで、トルク測定値Ｔとトルク定数推定値ＫＴとから駆動電流ｉｍを演算する。これにより、図４に曲線ｉｍで示すような、速度−駆動電流特性が得られる。また、ｉｅ＝Ｉａ−ｉｍであるので、図４に曲線ｉｅで示すような、速度−励磁電流特性が得られる。
【００５６】
図４の曲線Ｉａと曲線ｉｅとに基いて、モータ電流Ｉａと励磁電流ｉｅとの関係を記憶したモータ電流／励磁電流変換テーブル４０ａを作成する。また、図４の曲線Ｉａと曲線ｉｍとに基いて、モータ電流Ｉａと駆動電流ｉｍとの関係を記憶したモータ電流／駆動電流変換テーブル４０ｂを作成する。
ｄ軸励磁電流除去部６１は、三相／二相座標変換部５６によって得られたｄ軸電流ｉｄに含まれているｄ軸駆動電流を演算するものである。具体的には、ｄ軸励磁電流除去部６１は、ｄ軸電流ｉｄからそれに含まれているｄ軸励磁電流を除去することにより、ｄ軸電流ｉｄに含まれているｄ軸駆動電流を演算する。より具体的には、ｄ軸励磁電流除去部６１は、まず、三相／二相座標変換部５６によって得られたｄ軸電流ｉｄおよびｑ軸電流ｉｑに基いて、次式(8)により、モータ電流Ｉａを求める。
Ｉａ＝（ｉｄ２＋ｉｑ２）１/２      …(8)
次に、ｄ軸励磁電流除去部６１は、演算されたモータ電流Ｉａとモータ電流／励磁電流変換テーブル４０ａとに基いて、演算されたモータ電流Ｉａに対応する励磁電流ｉｅを求める。
【００５７】
そして、ｄ軸励磁電流除去部６１は、電流位相角演算部４２によって演算されている電流位相角βを用いて、次式（9)により、ｄ軸励磁電流ｉｅｄを演算する。
ｉｅｄ＝ｉｅ・cosβ      …(9)
最後に、ｄ軸励磁電流除去部６１は、次式(10)に示すように、ｄ軸電流ｉｄからｄ軸励磁電流ｉｅｄを減算することにより、ｄ軸駆動電流ｉｍｄを演算する。このｄ軸駆動電流ｉｍｄがｄ軸電流偏差演算部４５に与えられる。
【００５８】
ｉｍｄ＝ｉｄ−ｉｅｄ      …(10)
ｑ軸励磁電流除去部６２は、三相／二相座標変換部５６によって得られたｑ軸電流ｉｑに含まれているｑ軸駆動電流を演算するものである。具体的には、ｑ軸励磁電流除去部６２は、ｑ軸電流ｉｑからそれに含まれているｑ軸励磁電流を除去することにより、ｑ軸電流ｉｑに含まれているｑ軸駆動電流を演算する。
【００５９】
より具体的には、ｑ軸励磁電流除去部６２は、まず、前記式(8)により、モータ電流Ｉａを求める。次に、ｑ軸励磁電流除去部６２は、演算されたモータ電流Ｉａとモータ電流／励磁電流変換テーブル４０ａを用いて、演算されたモータ電流Ｉａに対応する励磁電流ｉｅを求める。そして、ｑ軸励磁電流除去部６２は、電流位相角演算部４２によって演算されている電流位相角βを用いて、次式（11)により、ｑ軸励磁電流ｉｅｑを演算する。
【００６０】
ｉｅｑ＝ｉｅ・sinβ      …(11)
最後に、ｑ軸励磁電流除去部６２は、次式(12a)または(12b)により、ｑ軸駆動電流ｉｍｑを演算する。このｑ軸駆動電流ｉｍｑがｑ軸電流偏差演算部４６に与えられる。
ｉｑ≧０である場合  ｉｍｑ＝ｉｑ−ｉｅｑ  …(12a)
ｉｑ＜０である場合  ｉｍｑ＝ｉｑ＋ｉｅｑ  …(12b)
この第１実施形態では、ｄ軸電流偏差演算部４５は、ｄ軸電流指令値ｉｄ＊とｄ軸駆動電流ｉｍｄとの偏差（ｉｄ＊−ｉｍｄ）を演算する。また、ｑ軸電流偏差演算部４６は、ｑ軸電流指令値ｉｑ＊とｑ軸駆動電流ｉｍｑとの偏差（ｉｑ＊−ｉｍｑ）を演算する。
【００６１】
したがって、第１実施形態では、ｄ軸駆動電流ｉｍｄがｄ軸駆動電流の指令値であるｄ軸電流指令値ｉｄ＊に等しくなり、ｑ軸駆動電流ｉｍｑがｑ軸駆動電流の指令値であるｑ軸電流指令値ｉｑ＊に等しくなるように、電動モータ１８が制御される。このように、第１実施形態では、モータ電流に含まれている駆動電流ｉｍｄ，ｉｍｑを駆動電流の指令値ｉｄ＊，ｉｑ＊に導くように電動モータ１８が制御されるので、精度の高い電流制御を行えるようになる。
【００６２】
ｄ軸励磁電流除去部６１は、モータ電流／駆動電流変換テーブル４０ｂを用いて、ｄ軸駆動電流ｉｍｄを演算するものであってもよい。この場合には、ｄ軸励磁電流除去部６１は、前記式(8)により、モータ電流Ｉａを求める。次に、ｄ軸励磁電流除去部６１は、演算されたモータ電流Ｉａとモータ電流／駆動電流変換テーブル４０ｂを用いて、演算されたモータ電流Ｉａに対応する駆動電流ｉｍを求める。
【００６３】
最後に、ｄ軸励磁電流除去部６１は、電流位相角演算部４２によって演算されている電流位相角βを用いて、次式（13)により、ｄ軸駆動電流ｉｍｄを演算する。このｄ軸駆動電流ｉｍｄがｄ軸電流偏差演算部４５に与えられる。
ｉｍｄ＝ｉｍ・cosβ      …(13)
同様に、ｑ軸励磁電流除去部６２は、モータ電流／駆動電流変換テーブル４０ｂを用いて、ｑ軸駆動電流ｉｍｑを演算するものであってもよい。この場合には、ｑ軸励磁電流除去部６２は、前記式(8)により、モータ電流Ｉａを求める。次に、ｑ軸励磁電流除去部６２は、演算されたモータ電流Ｉａとモータ電流／駆動電流変換テーブル４０ｂを用いて、演算されたモータ電流Ｉａに対応する駆動電流ｉｍを求める。
【００６４】
最後に、ｑ軸励磁電流除去部６２は、電流位相角演算部４２によって演算されている電流位相角βを用いて、次式（14a)または(14b)により、ｑ軸駆動電流ｉｍｑを演算する。このｑ軸駆動電流ｉｍｑがｑ軸電流偏差演算部４６に与えられる。
ｉｑ≧０である場合  ｉｍｑ＝ｉｍ・sinβ      …(14a)
ｉｑ＜０である場合  ｉｍｑ＝−ｉｍ・sinβ    …(14b)
図６は、この発明の第２実施形態に係るモータ制御装置としてのＥＣＵ１２Ａの電気的構成を示す概略図である。図６において、前述の図９に示された各部に対応する部分には、図９中と同一参照符号を付して示す。
【００６５】
このＥＣＵ１２Ａは、精度の高い電流制御を実現するために開発されたものである。ＥＣＵ１２Ａは、マイクロコンピュータ３１Ａと、このマイクロコンピュータ３１Ａによって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３とを備えている。
【００６６】
マイクロコンピュータ３１Ａは、ＣＰＵおよびメモリを備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。メモリは、ＲＯＭ、ＲＡＭ、不揮発性メモリ４０などを含む。複数の機能処理部には、電流指令値設定部４１と、電流位相角演算部４２と、ｄ軸電流指令値演算部４３と、ｑ軸電流指令値演算部４４と、ｄ軸電流偏差演算部４５と、ｑ軸電流偏差演算部４６と、ｄ軸ＰＩ（比例積分）制御部４７と、ｑ軸ＰＩ（比例積分）制御部４８と、ｄ軸指示電圧生成部４９と、ｑ軸指示電圧生成部５０と、二相／三相座標変換部５１と、ＰＷＭ制御部５２と、回転角演算部５３と、三相／二相座標変換部５６と、励磁電流加算部（電流指令値変換部）６３とが含まれている。
【００６７】
このＥＣＵ１２Ａでは、励磁電流加算部６３が設けられている点が、図９に示されるモータ制御装置２００と異なっている。また。このＥＣＵ１２Ａでは、不揮発性メモリ４０内に駆動電流／励磁電流変換テーブル４０ｃおよび駆動電流／モータ電流変換テーブル４０ｄのうちの少なくとも一方が記憶されている点が、図９に示されるモータ制御装置２００と異なっている。
【００６８】
以下、駆動電流／励磁電流変換テーブル４０ｃと、駆動電流／モータ電流変換テーブル４０ｄと、励磁電流加算部６３とについて説明する。
駆動電流／励磁電流変換テーブル４０ｃは、電動モータ１８として用いられるシンクロナスリラクタンスモータの駆動電流と励磁電流との関係を記憶したテーブルである。駆動電流／モータ電流変換テーブル４０ｄは、電動モータ１８として用いられるシンクロナスリラクタンスモータの駆動電流とモータ電流との関係を記憶したテーブルである。これらのテーブル４０ｃ，４０ｄの作成方法について説明する。
【００６９】
前述の第１実施形態で説明したと同様な方法によって、電動モータ１８として用いられるシンクロナスリラクタンスモータの速度−トルク特性を測定する。そして、前述の第１実施形態で説明したと同様な方法によって、図４に曲線Ｔで示すような速度−トルク特性、図４に曲線Ｉａで示すような速度−モータ電流特性、図４に曲線ｉｍで示すような速度−駆動電流特性および図４に曲線ｉｅで示すような速度−励磁電流特性を作成する。
【００７０】
図４の曲線ｉｍと曲線ｉｅとに基いて、駆動電流ｉｍと励磁電流ｉｅとの関係を記憶した駆動電流／励磁電流変換テーブル４０ｃを作成する。また、図４の曲線ｉｍと曲線Ｉａとに基いて、駆動電流ｉｍとモータ電流Ｉａとの関係を記憶した駆動電流／モータ電流変換テーブル４０ｄを作成する。
励磁電流加算部６３は、電流指令値設定部４１によって設定された電流指令値（駆動電流の指令値）Ｉ＊を、モータ電流指令値に変換するものである。具体的には、励磁電流加算部６３は、電流指令値Ｉ＊にそれに応じた励磁電流を加算することにより、モータ電流指令値を演算する。より具体的には、励磁電流加算部６３は、電流指令値Ｉ＊の絶対値｜Ｉ＊｜を駆動電流指令値として、駆動電流／励磁電流変換テーブル４０ｃから駆動電流指令値（＝｜Ｉ＊｜）に対応する励磁電流ｉｅを求める。次に、励磁電流加算部６３は、得られた励磁電流ｉｅと電流指令値Ｉ＊とを用い、次式(15a)または(15b)により、電流指令値Ｉ＊を、それに対応するモータ電流指令値Ｉａ＊に変換する。
【００７１】
Ｉ＊≧０である場合  Ｉａ＊＝Ｉ＊＋ｉｅ          …(15a)
Ｉ＊＜０である場合  Ｉａ＊＝Ｉ＊−ｉｅ          …(15b)
励磁電流加算部６３によって得られたモータ電流指令値Ｉａ＊が、ｄ軸電流指令値演算部４３およびｑ軸電流指令値演算部４４に与えられる。ｄ軸電流指令値演算部４３は、電流指令値設定部４１から与えられたモータ電流指令値Ｉａ＊と電流位相角演算部４２から与えられた電流位相角βとを用い、次式（16）に基いてｄ軸モータ電流指令値ｉｄ＊を演算する。
【００７２】
ｉｄ＊＝｜Ｉａ＊｜・cosβ      …(16)
ｑ軸電流指令値生成部４４は、電流指令値設定部４１から与えられたモータ電流指令値Ｉａ＊と電流位相角演算部４２から与えられた電流位相角βとを用い、次式（17a）または（17b）に基いてｑ軸モータ電流指令値ｉｑ＊を演算する。
Ｉａ＊≧０である場合  ｉｑ＊＝｜Ｉａ＊｜・sinβ          …(17a)
Ｉａ＊＜０である場合  ｉｑ＊＝｜Ｉａ＊｜・sin（−β）    …(17b)
この第２実施形態では、三相／二相座標変換部５６によって演算されるｄ軸電流（ｄ軸モータ電流）ｉｄがｄ軸モータ電流指令値ｉｄ＊に等しくなり、三相／二相座標変換部５６によって演算されるｑ軸電流（ｑ軸モータ電流）ｉｑがｑ軸モータ電流指令値ｉｑ＊に等しくなるように、電動モータ１８が制御される。このように、第２実施形態では、駆動電流指令値Ｉ＊に対応したモータ電流指令値ｉｄ＊，ｉｑ＊にモータ電流ｉｄ，ｉｑを導くように、電動モータ１８が制御されるので、精度の高い電流制御を行えるようになる。
【００７３】
励磁電流加算部６３は、駆動電流／モータ電流変換テーブル４０ｄを用いて、モータ電流指令値Ｉａ＊を演算するものであってもよい。この場合には、励磁電流加算部６３は、電流指令値Ｉ＊の絶対値｜Ｉ＊｜を駆動電流指令値として、駆動電流／モータ電流変換テーブル４０ｄから駆動電流指令値（＝｜Ｉ＊｜）に対応するモータ電流Ｉａを求める。そして、電流指令値Ｉ＊が零以上であれば、励磁電流加算部６３は、求めたモータ電流Ｉａをそのままモータ電流指令値Ｉａ＊として出力する。一方、電流指令値Ｉ＊が零未満であれば、励磁電流加算部６３は、求めたモータ電流Ｉａに負の符号を付した値（−Ｉａ）を、モータ電流指令値Ｉａ＊として出力する。
【００７４】
図７は、この発明の第３実施形態に係るモータ制御装置としてのＥＣＵ１２Ｂの電気的構成を示している。第３実施形態に係るモータ制御装置としてのＥＣＵ１２Ｂについて説明する前に、図１３〜図１５を参照して、本出願人が既に開発しているモータ制御装置３００について説明する。
モータ制御装置３００は、マイクロコンピュータ３３１と、このマイクロコンピュータ３３１によって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３３とを備えている。電動モータ１８は、シンクロナスリラクタンスモータである。
【００７５】
電流検出部３３３は、電動モータ１８の各相のステータ巻線に流れる相電流ｉＵ，ｉＶ，ｉＷ（以下、総称するときには「三相検出電流ｉＵ，ｉＶ，ｉＷ」という）を検出する。これらは、ＵＶＷ座標系における各座標軸方向の電流値である。
マイクロコンピュータ３３１は、ＣＰＵおよびメモリ（ＲＯＭ、ＲＡＭ、不揮発性メモリなど）を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、電流指令値設定部３４１と、ｄ軸電流指令値設定部３４３と、ｑ軸電流指令値設定部３４４と、ｄ軸電流偏差演算部３４５と、ｑ軸電流偏差演算部３４６と、ｄ軸ＰＩ（比例積分）制御部３４７と、ｑ軸ＰＩ（比例積分）制御部３４８と、ｄ軸指示電圧生成部３４９と、ｑ軸指示電圧生成部３５０と、二相／三相座標変換部３５１と、ＰＷＭ制御部３５２と、回転角演算部３５３と、電流位相角演算部３５４と、座標変換用回転角設定部３５５と、三相／二相座標変換部３５６とが含まれている。
【００７６】
電流指令値設定部３４１は、電動モータ１８によって発生させるべきモータトルクに対応した電流の指令値である電流指令値Ｉ＊を設定する。電流指令値設定部３４１の動作は、図９の電流指令値設定部４１の動作と同じであるので、その説明を省略する。電流指令値設定部３４１によって設定された電流指令値Ｉ＊は、ｑ軸電流指令値設定部３４４に与えられる。
【００７７】
ｑ軸電流指令値生成部３４４は、電流指令値設定部３４１から与えられた電流指令値Ｉ＊を、ｑ軸電流指令値ｉｑ＊として設定する。つまり、電流指令値設定部３４１によって設定された電流指令値Ｉ＊がｑ軸電流指令値ｉｑ＊となる。ｄ軸電流指令値設定部３４３は、ｄ軸電流指令値ｉｄ＊を設定する。ｄ軸電流指令値ｉｄ＊は、零に設定される。つまり、ｑ軸電流指令値ｉｑ＊が有意値とされ、ｄ軸電流指令値ｉｄ＊が零とされる。ｑ軸電流指令値ｉｑ＊は、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊を総称して、「二相指示電流ｉｄ＊，ｉｑ＊」という場合がある。
【００７８】
回転角演算部３５３は、回転角センサ２５の出力信号に基いて、電動モータ１８のロータの回転角（ロータ回転角、実回転角）θを演算する。回転角演算部３５３によって演算されたロータ回転角θは、座標変換用回転角設定部３５５に与えられる。
電流位相角演算部３５４は、電流検出部３３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷに基いて、電流位相角β（電気角）［deg］を演算する。電流位相角演算部３５４の動作の詳細については、後述する。電流位相角演算部３５４によって演算された電流位相角βは、座標変換用回転角設定部３５５に与えられる。
【００７９】
座標変換用回転角設定部３５５は、二相／三相座標変換部３５１および三相／二相座標変換部３５６において座標変換に用いられる座標変換用回転角δを演算する。具体的には、座標変換用回転角設定部３５５は、回転角演算部３５３によって演算されたロータ回転角θと、電流位相角演算部３５４によって演算された電流位相角βと、電流指令値設定部３４１によって設定された電流指令値Ｉ＊とに基いて、座標変換用回転角δを演算する。座標変換用回転角設定部３５５の動作の詳細については後述する。
【００８０】
電流検出部３３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷは、三相／二相座標変換部３５６に与えられる。三相／二相座標変換部３５６は、座標変換用回転角設定部３５５によって演算された座標変換用回転角δをロータ回転角θの代わりに用いて、三相検出電流ｉＵ，ｉＶ，ｉＷをｄ軸電流ｉｄおよびｑ軸電流ｉｑに変換する。以下、ｄ軸電流ｉｄおよびｑ軸電流ｉｑを総称するときには「二相検出電流ｉｄ，ｉｑ」という。
【００８１】
三相／二相座標変換部３５６によって得られたｄ軸電流ｉｄは、ｄ軸電流偏差演算部３４５に与えられる。三相／二相座標変換部３５６によって得られたｑ軸電流ｉｑは、ｑ軸電流偏差演算部３４６に与えられる。
ｄ軸電流偏差演算部３４５は、ｄ軸電流指令値ｉｄ＊に対するｄ軸電流ｉｄの偏差を演算する。ｄ軸電流偏差演算部３４５によって演算された電流偏差は、ｄ軸ＰＩ制御部３４７に与えられて、ＰＩ演算処理を受ける。ｄ軸指示電圧生成部３４９は、ｄ軸ＰＩ制御部３４７の演算結果に応じて、ｄ軸指示電圧ｖｄ＊を生成する。
【００８２】
ｑ軸電流偏差演算部３４６は、ｑ軸電流指令値ｉｑ＊に対するｑ軸電流ｉｑの偏差を演算する。ｑ軸電流偏差演算部３４６によって演算された電流偏差は、ｑ軸ＰＩ制御部３４８に与えられて、ＰＩ演算処理を受ける。ｑ軸指示電圧生成部３５０は、ｑ軸ＰＩ制御部３４８の演算結果に応じて、ｑ軸指示電圧ｖｑ＊を生成する。以下、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を総称するときには「二相指示電圧ｖｄ＊，ｖｑ＊」という。
【００８３】
二相指示電圧ｖｄ＊，ｖｑ＊は、二相／三相座標変換部５１に与えられる。二相／三相座標変換部３５１は、座標変換用回転角設定部３５５によって演算された座標変換用回転角δをロータ回転角θの代わりに用いて、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に変換する。以下、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊を総称するときには「三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊」という。
【００８４】
ＰＷＭ制御部３５２は、Ｕ相指示電圧ｖＵ＊、Ｖ相指示電圧ｖＶ＊およびＷ相指示電圧ｖＷ＊にそれぞれ対応するデューティ比のＵ相ＰＷＭ制御信号、Ｖ相ＰＷＭ制御信号およびＷ相ＰＷＭ制御信号を生成し、駆動回路３３２に供給する。
駆動回路３３２は、Ｕ相、Ｖ相およびＷ相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がＰＷＭ制御部３５２から与えられるＰＷＭ制御信号によって制御されることにより、三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に相当する電圧が電動モータ１８の各相のステータ巻線に印加されることになる。
【００８５】
電流偏差演算部３４５，３４６およびＰＩ制御部３４７，３４８は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、電動モータ１８に流れるモータ電流が、ｄ軸およびｑ軸電流指令値設定部３４３，３４４によって演算される二相指示電流ｉｄ＊，ｉｑ＊に近づくように制御される。
次に電流位相角演算部３５４の動作について説明する。電流位相角演算部３５４は、電流検出部３３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷから演算される電機子電流と、予め設定された電流位相角演算式とに基いて、電機子電流に対してモータトルクが最大値に近い値となる電流位相角β（電気角）［deg］を演算する。
【００８６】
この実施形態では、三相／二相座標変換部３５６によって得られるｑ軸電流ｉｑが、電流位相角βを演算するための電機子電流Ｉａとして用いられる。電流位相角演算部３５４には、例えば、図９のモータ制御装置２００において使用された電流位相角演算式（例えば前記式(4)）が予め設定されている。電流位相角演算部３５４は、三相／二相座標変換部３５６から得られたｑ軸電流ｉｑの絶対値｜ｉｑ｜を電機子電流Ｉａとし、予め設定されている電流位相角演算式(4)と電機子電流Ｉａとに基いて、電機子電流Ｉａ（ｑ軸電流ｉｑ）に対してモータトルクが最大値に近い値となる電流位相角βを演算する。
【００８７】
次に、座標変換用回転角設定部３５５の動作について詳しく説明する。座標変換用回転角設定部３５５は、電流指令値Ｉ＊が零以上の値である場合には、つまり電動モータ１８が停止しているかまたは電動モータ１８を回転させるべき方向が正転方向である場合には、次式(18)に基いて、座標変換用回転角δを設定する。
δ＝θ−（９０−β）    …(18)
一方、電流指令値Ｉ＊が零未満の値である場合には、つまり電動モータ１８を回転させるべき方向が逆転方向である場合には、座標変換用回転角設定部３５５は、次式(19)に基いて、座標変換用回転角δを設定する。
【００８８】
δ＝θ＋（９０−β）    …(19)
このように、電動モータ１８を回転させるべき方向に応じて、座標変換用回転角δが｛θ−（９０−β）｝または｛θ＋（９０−β）｝に設定されることにより、電動モータ１８をそれを回転させるべき方向に回転駆動することができる。
以下、この理由について説明する。以下において、図９のモータ制御装置２００のように、演算式ｉｄ＊＝｜Ｉ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉ＊｜sinβに基いてｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊を設定するとともに、ｄｑ座標系とＵＶＷ座標系との間の座標変換をロータ回転角θを用いて行うような制御方法を基本制御方法ということにする。基本制御方法においては、シンクロナスリラクタンスモータの回転方向を反転させる場合には、電流指令値Ｉ＊の極性を変えずに、βが−βに置き換えられる。
【００８９】
まず、図１４Ａ〜図１４Ｃを参照して、電流指令値Ｉ＊が正の値（Ｉ＊＞０）である場合、つまり電動モータを正転方向に回転駆動させる場合について説明する。基本制御方法によって電動モータを正転方向に回転駆動させる場合を想定する。基本制御方法では、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊が、それぞれ演算式ｉｄ＊＝｜Ｉ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉ＊｜sinβに基いて設定される。また、二相／三相座標変換部および三相／二相座標変換部は回転角演算部によって演算されるロータ回転角θをそのまま用いて座標変換を行う。なお、βは４５度付近の角度であるとする。この場合には、ｄ軸電流成分ｉｄがｄ軸電流指令値ｉｄ＊（＞０）に等しくなりかつｑ軸電流成分ｉｑがｑ軸電流指令値ｉｑ＊（＞０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１４Ａに示すようになる。
【００９０】
ロータ１００には磁石が設けられてないので電動モータ１８が駆動されていないときには無極性である。ステータ巻線１０１〜１０３に電流が流れるとロータ１００に磁界が発生し、ロータ１００が磁化される。この際、ロータ１００の極性は、ステータ巻線１０１〜１０３に流れる電流の方向によって決まる。図１４Ａにおいて、電機子電流ベクトルＩａの終点がｄｑ座標系の第１象限または第４象限にある場合には、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＮ極となり、−ｄ軸方向に対応する突極部の極性がＳ極となる。電機子電流ベクトルＩａの終点がｄｑ座標系の第２象限または第３象限にある場合には、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＳ極となり、−ｄ軸方向に対応する突極部の極性がＮ極となる。
【００９１】
そして、極性がＮ極である突極部が、電機子電流ベクトルＩａ側に引き付けられる。したがって、図１４Ａの例では、＋ｄ軸方向に対応する突極部が電機子電流ベクトルＩａ側に引き付けられるので、ロータ１００は反時計方向（正転方向）に回転する。
次に、二相／三相座標変換部および三相／二相座標変換部は基本制御方法と同様に回転角演算部によって演算されたロータ回転角θをそのまま用いて座標変換を行うが、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１４Ａの電流指令値Ｉ＊（＞０）と同じ値に設定する場合を想定する。この場合には、ｄ軸電流成分ｉｄが０となりかつｑ軸電流成分ｉｑが電流指令値Ｉ＊に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１４Ｂに示すようになる。このような制御では、電機子電流ベクトルＩａを、図１４Ａに示すような本来発生させるべき角度（方向）に発生させることができない。
【００９２】
そこで、図１３のモータ制御装置３００のように、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１４Ａの電流指令値Ｉ＊と同じ値に設定した上で、各座標変換部３５１，３５６が座標変換用回転角｛θ−（９０−β）｝を用いて座標変換を行う場合を想定する。この場合には、各座標変換部３５１，３５６は、図１４Ｃに示すように、ｑ軸を−（９０−β）度回転させたｑ’軸と、ｄ軸を−（９０−β）度回転させたｄ’軸とからなるｄ’ｑ’座標系で、座標変換を行うことになる。この際、ｄ軸電流指令値ｉｄ＊の大きさ（＝０）がｄ’軸電流成分ｉｄ’となり、ｑ軸電流指令値ｉｄ＊（＝Ｉ＊）の大きさがｑ’軸電流成分ｉｑ’となるから、電機子電流ベクトルＩａは図１４Ｃに示すようになる。つまり、図１４Ａに示す電流ベクトルＩａの方向と同じ方向に電機子電流ベクトルＩａを発生させることができる。したがって、電動モータ１８を回転させるべき方向に駆動させることができる。
【００９３】
次に、図１５Ａ〜図１５Ｃを参照して、電流指令値Ｉ＊が負の値（Ｉ＊＜０）である場合、つまり電動モータを逆転方向に回転駆動させる場合について説明する。基本制御方法によって電動モータを逆転方向に回転駆動させる場合を想定する。電流指令値Ｉ＊が負の値である場合には、電動モータ１８を回転させるべき方向が逆転方向であることを示している。したがって、基本制御方法では、電流指令値Ｉ＊の極性を変えずに、βが−βに置き換えられる。つまり、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊が、それぞれ演算式ｉｄ＊＝｜Ｉ＊｜cos（−β）＝｜Ｉ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉ＊｜sin（−β）＝−｜Ｉ＊｜sinβに基いて設定される。また、二相／三相座標変換部および三相／二相座標変換部は回転角演算部によって演算されるロータ回転角θをそのまま用いて座標変換を行う。この場合には、ｄ軸電流指令値ｉｄ＊が正の値（ｉｄ＊＞０）となり、ｑ軸電流指令値ｉｑ＊が負の値（ｉｄ＊＜０）となる。そして、ｄ軸電流成分ｉｄがｄ軸電流指令値ｉｄ＊（＞０）に等しくなりかつｑ軸電流成分ｉｑがｑ軸電流指令値ｉｑ＊（＜０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１５Ａに示すようになる。この電機子電流ベクトルＩａの終点はｄｑ座標系の第４象限にあるので、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＮ極となり、−ｄ軸方向に対応する突極部の極性がＳ極となる。したがって、＋ｄ軸方向に対応する突極部が電機子電流ベクトルＩａ側に引き付けられるのでロータ１００は時計方向（逆転方向）に回転する。
【００９４】
次に、二相／三相座標変換部および三相／二相座標変換部は基本制御方法と同様に回転角演算部によって演算されたロータ回転角θをそのまま用いて座標変換を行うが、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１５Ａの電流指令値Ｉ＊（Ｉ＊＜０）と同じ値に設定する場合を想定する。この場合には、ｄ軸電流成分ｉｄが０となりかつｑ軸電流成分ｉｑがＩ＊（Ｉ＊＜０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１５Ｂに示すようになる。このような制御では、電機子電流ベクトルＩａを、図１５Ａに示すような本来発生させるべき角度（方向）に発生させることができない。
【００９５】
そこで、図１３のモータ制御装置３００のように、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１５Ａの電流指令値Ｉ＊（Ｉ＊＜０）と同じ値に設定した上で、各座標変換部３５１，３５６が座標変換用回転角｛θ＋（９０−β）｝を用いて座標変換を行う場合を想定する。この場合には、各座標変換部３５１，３５６は、図１５Ｃに示すように、ｄ軸を＋（９０−β）度回転させたｄ’軸と、ｑ軸を＋（９０−β）度回転させたｑ’軸とからなるｄ’ｑ’座標系で、座標変換を行うことになる。この際、ｄ軸電流指令値ｉｄ＊の大きさ（＝０）がｄ’軸電流成分ｉｄ’となり、ｑ軸電流指令値ｉｄ＊（＝Ｉ＊＜０）がｑ’軸 電流成分ｉｑ’となるから、電機子電流ベクトルＩａは図１５Ｃに示すようになる。つまり、図１５Ａに示す電流ベクトルＩａの方向と同じ方向に電機子電流ベクトルＩａを発生させることができる。したがって、シンクロナスリラクタンスモータからなる電動モータ１８を回転させるべき方向に駆動させることができる。
【００９６】
前述したように、シンクロナスリラクタンスモータにおいては、電機子巻線に流れる電機子電流（モータ電流）には、回転磁界を発生するための駆動電流と、ロータ１００を励磁するための励磁電流とが含まれている。シンクロナスリラクタンスモータでは、モータトルクは、回転磁界を発生するための駆動電流にトルク定数を乗算した値となり、電流指令値Ｉ＊によって制御されるべき電流は駆動電流となる。つまり、シンクロナスリラクタンスモータでは、電流指令値Ｉ＊およびｑ軸電流指令値ｉｑ＊は駆動電流ｉｍの指令値である。
【００９７】
一方、図１３の電流検出部３３３によって検出される三相検出電流ｉＵ，ｉＶ，ｉＷは、電動モータ１８に流れるモータ電流（電機子電流）である。そして、三相／二相座標変換部３５６によって演算されるｑ軸電流ｉｑは、モータ電流（電機子電流）である。図１３のモータ制御装置３００では、ｑ軸電流ｉｑ（モータ電流）がｑ軸電流指令値ｉｑ＊（駆動電流）に等しくなるようにシンクロナスリラクタンスモータが制御されている。このように、図１３のモータ制御装置３００では、駆動電流と励磁電流とを含むモータ電流を、駆動電流の指令値に導くように電動モータ１８を制御しているため、精度の高い電流制御を行えないおそれがある。
【００９８】
図７に戻り、第３実施形態におけるモータ制御装置としてのＥＣＵ１２Ｂについて説明する。図７において、前述の図１３に示された各部に対応する部分には、図１３中と同一参照符号を付して示す。
このＥＣＵ１２Ｂは、精度の高い電流制御を実現するために開発されたものである。ＥＣＵ１２Ｂは、マイクロコンピュータ３１Ｂと、このマイクロコンピュータ３１Ｂによって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３３とを備えている。
【００９９】
マイクロコンピュータ３１Ｂは、ＣＰＵおよびメモリを備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。メモリは、ＲＯＭ、ＲＡＭ、不揮発性メモリ３４０などを含む。複数の機能処理部には、電流指令値設定部３４１と、ｄ軸電流指令値設定部３４３と、ｑ軸電流指令値設定部３４４と、ｄ軸電流偏差演算部３４５と、ｑ軸電流偏差演算部３４６と、ｄ軸ＰＩ（比例積分）制御部３４７と、ｑ軸ＰＩ（比例積分）制御部３４８と、ｄ軸指示電圧生成部３４９と、ｑ軸指示電圧生成部３５０と、二相／三相座標変換部３５１と、ＰＷＭ制御部３５２と、回転角演算部３５３と、電流位相角演算部３５４と、座標変換用回転角設定部３５５と、三相／二相座標変換部３５６と、励磁電流除去部（駆動電流演算部）３６２とが含まれている。
【０１００】
このＥＣＵ１２Ｂでは、励磁電流除去部３６２が設けられている点が、図１３に示されるモータ制御装置３００と異なっている。また、このＥＣＵ１２Ｂでは、不揮発性メモリ３４０内にモータ電流／励磁電流変換テーブル３４０ａおよびモータ電流／駆動電流変換テーブル３４０ｂのうちの少なくとも一方が記憶されている点が、図１３に示されるモータ制御装置３００と異なっている。モータ電流／励磁電流変換テーブル３４０ａまたはモータ電流／駆動電流変換テーブル３４０ｂは、それぞれ、第１実施形態で説明したモータ電流／励磁電流変換テーブル４０ａまたはモータ電流／駆動電流変換テーブル４０ｂ（図３参照）と同じであるのでその説明を省略する。
【０１０１】
以下、励磁電流除去部３６２について説明する。励磁電流除去部３６２は、三相／二相座標変換部３５６によって得られたｑ軸電流ｉｑに含まれている駆動電流を演算する。具体的には、励磁電流除去部３６２は、ｑ軸電流ｉｑからそれに含まれている励磁電流を除去することにより、ｑ軸電流ｉｑに含まれている駆動電流を演算する。
この実施形態では、ｄ軸電流ｉｄは零になるように制御されるため、三相／二相座標変換部３５６によって演算されたｑ軸電流ｉｑがモータ電流Ｉａとなる。そこで、励磁電流除去部３６２は、三相／二相座標変換部３５６によって演算されたｑ軸電流ｉｑの絶対値｜ｉｑ｜をモータ電流Ｉａとして、モータ電流／励磁電流変換テーブル３４０ａから、モータ電流Ｉａ（＝｜ｉｑ｜）に対応する励磁電流ｉｅを求める。そして、励磁電流除去部３６２は、次式(20a)または(20b)に基いて、ｑ軸電流ｉｑ（モータ電流Ｉａ）をそれに対応する駆動電流ｉｍに変換する。この駆動電流ｉｍがｑ軸電流偏差演算部３４６に与えられる。
【０１０２】
ｉｑ≧０である場合  ｉｍ＝ｉｑ−ｉｅ          …(20a)
ｉｑ＜０である場合  ｉｍ＝ｉｑ＋ｉｅ          …(20b)
この第３実施形態では、ｑ軸電流偏差演算部３４６は、ｑ軸電流指令値ｉｑ＊と駆動電流ｉｍとの偏差（ｉｑ＊−ｉｍ）を演算する。図１３の制御装置３００と同様に、第３実施形態においても、ｑ軸電流指令値ｉｑ＊は駆動電流ｉｍの指令値である。したがって、第３実施形態では、駆動電流ｉｍが駆動電流の指令値であるｑ軸電流指令値ｉｑ＊に等しくなるように、電動モータ１８が制御される。このように、第３実施形態では、モータ電流に含まれている駆動電流ｉｍを駆動電流の指令値ｉｑ＊に導くように電動モータ１８が制御されるので、精度の高い電流制御を実現できる。
【０１０３】
励磁電流除去部３６２は、モータ電流／駆動電流変換テーブル３４０ｂを用いて、駆動電流ｉｍを演算するものであってもよい。この場合には、励磁電流除去部３６２は、三相／二相座標変換部３５６によって演算されたｑ軸電流ｉｑの絶対値｜ｉｑ｜をモータ電流Ｉａとして、モータ電流／駆動電流変換テーブル３４０ｂから、モータ電流Ｉａ（＝｜ｉｑ｜）に対応する駆動電流ｉｍを求める。そして、励磁電流除去部３６２は、ｑ軸電流ｉｑが零以上である場合には、モータ電流／駆動電流変換テーブル３４０ｂから求めた駆動電流ｉｍをそのまま駆動電流ｉｍとして出力する。一方、ｑ軸電流ｉｑが零未満である場合には、励磁電流除去部３６２は、モータ電流／駆動電流変換テーブル３４０ｂから求めた駆動電流ｉｍに負の符号を付けた値（−ｉｍ）を駆動電流ｉｍとして出力する。
【０１０４】
図８は、この発明の第４実施形態に係るモータ制御装置としてのＥＣＵ１２Ｃの電気的構成を示す概略図である。図８において、前述の図１３に示された各部に対応する部分には、図１３中と同一参照符号を付して示す。
このＥＣＵ１２Ｃは、精度の高い電流制御を実現するために開発されたものである。ＥＣＵ１２Ｃは、マイクロコンピュータ３１Ｃと、このマイクロコンピュータ３１Ｃによって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３３とを備えている。
【０１０５】
マイクロコンピュータ３１Ｃは、ＣＰＵおよびメモリを備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。メモリは、ＲＯＭ、ＲＡＭ、不揮発性メモリ３４０などを含む。複数の機能処理部には、電流指令値設定部３４１と、ｄ軸電流指令値設定部３４３と、ｑ軸電流指令値設定部３４４と、ｄ軸電流偏差演算部３４５と、ｑ軸電流偏差演算部３４６と、ｄ軸ＰＩ（比例積分）制御部３４７と、ｑ軸ＰＩ（比例積分）制御部３４８と、ｄ軸指示電圧生成部３４９と、ｑ軸指示電圧生成部３５０と、二相／三相座標変換部３５１と、ＰＷＭ制御部３５２と、回転角演算部３５３と、電流位相角演算部３５４と、座標変換用回転角設定部３５５と、三相／二相座標変換部３５６と、励磁電流加算部（電流指令値変換部）３６３とが含まれている。
【０１０６】
このＥＣＵ１２Ｃでは、励磁電流加算部３６３が設けられている点が、図１３に示されるモータ制御装置３００と異なっている。また。このＥＣＵ１２Ｃでは、不揮発性メモリ３４０内に駆動電流／励磁電流変換テーブル３４０ｃおよび駆動電流／モータ電流変換テーブル３４０ｄのうちの少なくとも一方が記憶されている点が、図１３に示されるモータ制御装置３００と異なっている。駆動電流／励磁電流変換テーブル３４０ｃおよび駆動電流／モータ電流変換テーブル３４０ｄは、それぞれ、前述した第２実施形態における駆動電流／励磁電流変換テーブル４０ｃおよび駆動電流／モータ電流変換テーブル４０ｄ（図６参照）と同じであるのでその説明を省略する。
【０１０７】
以下、励磁電流加算部３６３について説明する。励磁電流加算部３６３は、電流指令値設定部３４１によって設定された電流指令値（駆動電流の指令値）Ｉ＊を、モータ電流指令値に変換するものである。具体的には、励磁電流加算部３６３は、電流指令値Ｉ＊にそれに応じた励磁電流を加算することにより、モータ電流指令値を演算する。より具体的には、励磁電流加算部３６３は、電流指令値Ｉ＊の絶対値｜Ｉ＊｜を駆動電流指令値として、駆動電流／励磁電流変換テーブル３４０ｃから駆動電流指令値（＝｜Ｉ＊｜）に対応する励磁電流ｉｅを求める。次に、励磁電流加算部３６３は、得られた励磁電流ｉｅと電流指令値Ｉ＊とを用い、次式(21a)または(21b)に基いて、電流指令値Ｉ＊を、それに対応するモータ電流指令値Ｉａ＊に変換する。
【０１０８】
Ｉ＊≧０である場合  Ｉａ＊＝Ｉ＊＋ｉｅ          …(21a)
Ｉ＊＜０である場合  Ｉａ＊＝Ｉ＊−ｉｅ          …(21b)
励磁電流加算部３６３によって得られたモータ電流指令値Ｉａ＊が、ｑ軸電流指令値演算部３４４に与えられる。ｑ軸電流指令値演算部３４４は、励磁電流加算部３６３によって得られたモータ電流指令値Ｉａ＊を、そのままｑ軸電流指令値ｉｑ＊として出力する。
【０１０９】
この第４実施形態では、三相／二相座標変換部３５６によって演算されるｑ軸電流ｉｑ（モータ電流Ｉａ）がｑ軸電流指令値ｉｑ＊（モータ電流指令値Ｉａ＊）に等しくなるように、電動モータ１８が制御される。このように、第４実施形態では、駆動電流指令値Ｉ＊に対応したモータ電流指令値ｉｑ＊にモータ電流ｉｑを導くように、電動モータ１８が制御されるので、精度の高い電流制御を行えるようになる。
【０１１０】
励磁電流加算部３６３は、駆動電流／モータ電流変換テーブル３４０ｄを用いて、モータ電流指令値Ｉａ＊を演算するものであってもよい。この場合には、励磁電流加算部３６３は、電流指令値Ｉ＊の絶対値｜Ｉ＊｜を駆動電流指令値として、駆動電流／モータ電流変換テーブル３４０ｄから駆動電流指令値（＝｜Ｉ＊｜）に対応するモータ電流Ｉａを求める。そして、電流指令値Ｉ＊が零以上であれば、励磁電流加算部３６３は、求めたモータ電流Ｉａをそのままモータ電流指令値Ｉａ＊として出力する。一方、電流指令値Ｉ＊が零未満であれば、励磁電流加算３６３は、求めたモータ電流Ｉａに負の符号を付した値（−Ｉａ）を、モータ電流指令値Ｉａ＊として出力する。
【０１１１】
以上、この発明の第１〜第４実施形態について説明したが、この発明はさらに他の形態で実施することもできる。前述の第３および第４実施形態では、電流位相角演算部３５４は、電流検出部３３３によって検出された検出電流から演算された電機子電流Ｉａ（この実施形態ではｑ軸電流ｉｑ）と、予め設定された電流位相角演算式（例えば式(5)参照）とに基いて、電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βを演算している。しかし、電流位相角演算部３５４は、前記電流位相角演算式によって表される電機子電流Ｉａと電流位相角βとの関係を記憶したマップと、電流検出部３３３によって検出された検出電流から演算された電機子電流Ｉａとに基いて、電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βを演算してもよい。
【０１１２】
また、前述の第１〜第４実施形態では、前記式(3)に基いて、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似し、得られた近似式に基いて電流位相角演算式を求めている。しかし、最小二乗法等の他の方法によって、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似し、得られた近似式に基いて電流位相角演算式を求めるようにしてもよい。
【０１１３】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【０１１４】
１２，１２Ａ，１２Ｂ，１２Ｃ…ＥＣＵ、１８…電動モータ、２５…回転角センサ、３１，３１Ａ，３１Ｂ，３１Ｃ…マイクロコンピュータ、３３，３３３…電流検出部、４０，３４０…不揮発性メモリ、４０ａ，３４０ａ…モータ電流／励磁電流変換テーブル、４０ｂ，３４０ｂ…モータ電流／駆動電流変換テーブル、４０ｃ，３４０ｃ…駆動電流／励磁電流変換テーブル、４０ｄ，３４０ｄ…駆動電流／モータ電流変換テーブル、４１，３４１…電流指令値設定部、４３，３４３…ｄ軸電流指令値設定部、４４，３４４…ｑ軸電流指令値設定部、４５，３４５…ｄ軸電流偏差演算部、４６，３４６…ｑ軸電流偏差演算部、４７，３４７…ｄ軸ＰＩ制御部、４８，３４８…ｑ軸ＰＩ制御部、６１…ｄ軸励磁電流除去部、６２…ｑ軸励磁電流除去部、３６２…励磁電流除去部、６３，３６３…励磁電流加算部
【図１】
2015023635.tif 000003
【図２】
2015023635.tif 000004
【図３】
2015023635.tif 000005
【図４】
2015023635.tif 000006
【図５】
2015023635.tif 000007
【図６】
2015023635.tif 000008
【図７】
2015023635.tif 000009
【図８】
2015023635.tif 000010
【図９】
2015023635.tif 000011
【図１０】
2015023635.tif 000012
【図１１】
2015023635.tif 000013
【図１２】
2015023635.tif 000014
【図１３】
2015023635.tif 000015
【図１４】
2015023635.tif 000016
【図１５】
2015023635.tif 000017