(57)【要約】  【課題】ロータ位置のセンサレス検出方法において、ロータ停止時のＮ／Ｓ判定において音・振動を抑制し、かつ短時間に判定が可能な電動機の制御装置を提供する。  【解決手段】分離された重畳電流から仮のｄ軸位相角θ０を検出し、仮のｄ軸位相角θ０におけるＮ／Ｓ判定を行って仮のｄ軸位相角θ０から真のｄ軸位相角θを求めるＮ／Ｓ判定手段を備え、該Ｎ／Ｓ判定手段は、仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向（反発方向）のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力するように構成し、かつ、ロータの動き（ｄ軸位相角の変化）を監視し、音・振動を出す程に動く前に電流を落としたり符号を反転した電流を印加したりして、ロータが音・振動を出す程に動かないように制御する電動機の制御装置。【選択図】図２
2005333761.tif 000002
【特許請求の範囲】
【請求項１】
直流電源に接続され、前記直流電源からの電力を交流に変換して出力すると共に、この出力された交流電力によって電動機を駆動するインバータ回路と、該インバータ回路を目標トルク値とｄ軸位相角θに基づいて制御する制御手段と、を備えた電動機の制御装置において、
前記電動機を駆動する駆動電流に、該駆動電流とは異なる周波数の重畳電流を重畳する重畳手段と、
前記電動機に供給した電流から前記重畳電流を分離する分離手段と、
前記分離された重畳電流から仮のｄ軸位相角θ０を検出するｄ軸検出手段と、
前記仮のｄ軸位相角θ０におけるロータのＮ極／Ｓ極の判定を行って前記仮のｄ軸位相角θ０から真のｄ軸位相角θを求めるＮ／Ｓ判定手段と、を備え、
前記Ｎ／Ｓ判定手段は、前記仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力することを特徴とする電動機の制御装置。
【請求項２】
請求項１に記載の電動機の制御装置において、
前記Ｎ／Ｓ判定手段は、前記仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、弾かれなかった場合は、前記ｄ軸電流に位相誤差を加えた駆動電流を印加し、これによって弾かれた場合には前記仮決めしたｄ軸が実際のｄ軸であると判断し、共に前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力することを特徴とする電動機の制御装置。
【請求項３】
請求項２に記載の電動機の制御装置において、
前記Ｎ／Ｓ判定手段は、前記仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、弾かれなかった場合は、前記ｄ軸電流に位相誤差を加えた駆動電流を印加し、これによって弾かれた場合には前記仮決めしたｄ軸が実際のｄ軸であると判断し、それでも弾かれなかった場合には、位相誤差の方向を反対にした駆動電流を印加し、これによって弾かれた場合には前記仮決めしたｄ軸が実際のｄ軸であると判断し、共に前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力することを特徴とする電動機の制御装置。
【請求項４】
請求項３に記載の電動機の制御装置において、
前記Ｎ／Ｓ判定手段は、前記仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、弾かれなかった場合は、前記ｄ軸電流に位相誤差を加えた駆動電流を印加し、これによって弾かれた場合には前記仮決めしたｄ軸が実際のｄ軸であると判断し、それでも弾かれなかった場合には、位相誤差の方向を反対にした駆動電流を印加し、これによって弾かれた場合には前記仮決めしたｄ軸が実際のｄ軸であると判断し、共に前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力し、さらにそれでも弾かれなかった場合は、前記仮のｄ軸位相角θ０に１８０°を加算した値を真のｄ軸位相角θとして出力することを特徴とする電動機の制御装置。
【請求項５】
請求項１乃至請求項４に記載の電動機の制御装置において、
前記ｄ軸電流または前記ｄ軸電流に位相誤差を加えた駆動電流の印加によってロータが弾かれた場合には、前記ｄ軸電流または駆動電流の方向を逆転するか若しくは０にすることよってロータを停止させることを特徴とする電動機の制御装置。
【請求項６】
請求項１に記載の電動機の制御装置において、
前記Ｎ／Ｓ判定手段は、前記仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、弾かれなかった場合は、前記重畳電流の大きさを検出し、その値が所定値以下の場合には仮決めしたｄ軸が実際のｄ軸であると判断し、共に前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力し、前記重畳電流の値が所定値より大きい場合には、前記仮のｄ軸位相角θ０に１８０°を加算した値を真のｄ軸位相角θとして出力することを特徴とする電動機の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電動機の制御装置に関し、例えばロータに永久磁石を備えた三相同期電動機（Intenal Permanent
Magnet Motor：以下、ＩＰＭモータと記載）におけるセンサレス制御技術に関する。
【背景技術】
【０００２】
電動機をインバータで駆動し、トルク制御系として制御するためには、ロータの磁極位置（ｄ軸位相角）を検出する必要がある。ロータの位置をセンサレスで検出する方法としては、下記特許文献１に記載のように、駆動電流（または電圧：以下同じ）に高周波電流（または電圧：以下同じ）を重畳し、高周波電流ベクトル軌跡の長軸を検出するものがある。  
高周波電流を重畳してロータの磁極位置を検出する方法は、ＩＰＭモータの突極性（ｄ軸とｑ軸のインダクタンスの差）を利用しているが、この方法では±９０°範囲でしか位置を検出することができず、Ｎ極とＳ極の差が分からない（３０°と−１５０°の区別がつかない）。そこで、初期にＮ／Ｓ判定を行い、その後は位置検出の連続性により±１８０°範囲の検出に拡張している。Ｎ／Ｓ判定の方法としては、ｑ軸電流は０のままｄ軸にある程度の大きな負の電流を印加し、磁気飽和の度合いを重畳した高周波電流の大きさにより判定する。つまりｄ軸電流ｉｄ＞０のときは磁気飽和が生じて高周波電流が大きくなる一方、ｉｄ＜０のときは磁気飽和が起こらず高周波電流が大きくならないといった性質を利用し、ロータ停止時にｄ軸にのみ電流を印加して磁気飽和の有無によりＮ／Ｓ判定を行う。
【０００３】
【特許文献１】特開２００１−３３９９９９号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上記の方法においては次のごとき問題があった。すなわち、モータのティースが有限であることや、コアの加工精度、巻線のばらつき、組み立て精度、インバータの誤差等により高周波電流重畳による磁極位置検出には誤差があり、常に真のｄ軸のみに電流を印加することはむずかしいので、電流印加によってトルクが発生する。また、仮りに真のｄ軸のみに電流を印加できたとしても、上記の磁極位置検出の誤差と同じ原因によってトルクを発生する。  
磁気飽和を起こすためには印加電流を大きくする必要があるが、推定したｄ軸と実際のｄ軸には上記のようにズレがある可能性が高いため、大きな電流を流すとモータが大きなトルクで回転し、モータから駆動輪までの動力伝達径路に存在するガタが詰まるときに大きな衝撃音を発生するという問題がある。この大きな衝撃音を防止するためには印加電流を緩やかに増加させる必要があるが、この場合には、磁気飽和に必要な印加電流まで大きくするのに時間がかかり、Ｎ／Ｓ判定時間が延びるといった問題が発生する。  
本発明は上記のごとき問題を解決するためになされたものであり、ロータ停止時のＮ／Ｓ判定において音・振動を抑制し、かつ短時間に判定が可能な電動機の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的を達成するため、本発明においては、分離された重畳電流から仮のｄ軸位相角θ０を検出し、仮のｄ軸位相角θ０におけるＮ／Ｓ判定を行って仮のｄ軸位相角θ０から真のｄ軸位相角θを求めるＮ／Ｓ判定手段、を備え、該Ｎ／Ｓ判定手段は、仮のｄ軸位相角θ０をｄ軸として仮決めし、そのｄ軸についてロータが弾かれる方向（反発方向）のｄ軸電流を印加し、弾かれた場合には仮決めしたｄ軸が実際のｄ軸であると判断し、前記仮のｄ軸位相角θ０を真のｄ軸位相角θとして出力するように構成している。また、本発明においては、ロータの動き（ｄ軸位相角の変化）を監視し、音・振動を出す程に動く前に電流を落としたり符号を反転した電流を印加したりして、ロータが音・振動を出す程に動かないようにする制御を行うように構成している。
【発明の効果】
【０００６】
印加電流が小さくて済むことから、トルクが発生したとしても小さく、ガタが詰まるときの衝撃音が小さくてすむ。また、衝撃音が小さいため、印加電流の増大速度（電流応答）も早くでき、Ｎ／Ｓ判定を素早く行なえる、という効果が得られる。
【発明を実施するための最良の形態】
【０００７】
（実施例１）
図１は、本発明の一実施例の全体構成を示すブロック図である。  
図１において、制御手段１（詳細後述）は、例えばコンピュータで構成されており、電流センサ４と電圧センサ６の信号を入力し、ＰＷＭ（Pulse Width Modulation）指令７を算出してインバータ回路２へ送る。インバータ回路２は、電源部５の直流電力をＰＷＭ指令７に応じた三相電力に変換し、その電力でＩＰＭモータ３を駆動する。電流センサ４はインバータ回路２からＩＰＭモータ３へ送られる三相電力のうちの二相（例えばＵ相とＶ相）の電流を検出する。また、電圧センサ６は電源部５の出力電圧（インバータ２の入力電圧）を検出する。上記電流センサ４と電圧センサ６の検出値は制御手段１へ送られ、ＰＷＭ指令７の算出に用いられる。なお、三相電流は、Ｕ＋Ｖ＋Ｗ＝０の関係があるので、何れかの二相を検出すれば演算で残りの一相の電流も求めることが出来る。
【０００８】
図２は、図１における制御手段１の詳細を示す第１の実施例のブロック図である。  
図２において、電流目標値作成部１０は、外部から与えられたトルク目標値（例えばアクセルペダル操作量等）に基づいてｄ軸電流目標値およびｑ軸電流目標値を作成する。なお、ｄ軸電流とはｄ軸方向に磁界を作る電流成分であり、ｑ軸電流とはｑ軸方向に磁界を作る電流成分（位相がｄ軸から９０°進んでいる）である。また、ｄ軸位相角θ（以下、単に“位相角θ”と略記する）とは、ｄ軸とα軸との成す角である。
【０００９】
ｄ−ｑ軸変換部１１は、図１の電流センサ４から与えられる三相電流と位相角θからｄ軸電流とｑ軸電流（図ではｄ−ｑ軸電流と略記）を算出する。電流制御部（電流−電圧変換）１２は、例えばＰＩ制御（ＰＩ制御は公知の比例・積分制御）を行って、上記のｄ軸電流目標値とｄ軸電流、ｑ軸電流目標値とｑ軸電流とを一致させるように制御するためのｄ軸電圧指令とｑ軸電圧指令を算出する。なお、上記の電流制御には、非干渉制御を入れても良いし、三相電流の高周波分を除くためのローパスフィルタを入れても良い。
【００１０】
三相変換部１３は、入力した２相分のｄ軸電圧指令とｑ軸電圧指令および位相角θに基づいて３相分の三相電圧指令を演算して出力する。  
また、高周波回転電圧発生部１４（駆動電流よりも高周波数の重畳電流を重畳する重畳手段）は、高周波の回転電圧を発生させ、三相変換部１３からの三相電圧指令に重畳させてＰＷＭ指令作成部１５に送出する。  
ここで回転電圧とは三相平衡電圧のことであり、図３（ａ）に示すように、二相交流座標系であるα−β座標系に交換したときに電圧ベクトル軌跡が真円となる状態をいう。この回転電圧は、ＩＰＭモータ３に同期しない高周波の電圧であるため、この回転電圧によってＩＰＭモータ３が回転することはない。なお、ＩＰＭモータのようにｄ軸とｑ軸とでインダクタンスに差がある場合には、図３（ｂ）に示すように電流ベクトル軌跡はｄ軸方向に膨らんだ楕円となる。この場合、ｑ軸は位相がｄ軸から９０°進んでいる。
【００１１】
ＰＷＭ指令作成部１５は、高周波回転電圧発生部１４からの回転電圧と三相変換部１３からの三相電圧指令とを重畳した電圧と、図１の電圧センサ６から与えられた直流電圧とを入力し、ＰＷＭ指令７を作成する。このＰＷＭ指令７によって図１のインバータ回路２を制御し、インバータ回路２から出力する三相電力によってＩＰＭモータ３を駆動する。
【００１２】
一方、周波数分離部１６（重畳電流を分離する分離手段）は、一般的には周波数フィルタを用いて、電流センサ４から入力した三相電流から高周波電流を分離して出力し、３相２相変換部１７に送る。３相２相変換部１７は、周波数分離部１６から入力した高周波成分の三相電流を、図３（ｂ）に示すα−β座標系の二相電流に変換し、変換されたα−β座標系の電流をｄ軸検出部１８に送る。ｄ軸検出部１８では、仮の位相角θ０を検出し、Ｎ／Ｓ判定部１９は、Ｎ／Ｓ判定を行って真の位相角θを求める。
【００１３】
まず、ｄ軸検出部１８（ｄ軸位相角検出手段）は、３相２相変換部１７でα−β座標系に変換された電流ベクトルのα軸成分ｉαとβ軸成分ｉβとにつき、図４に示すように、ピーク値を検出することで振幅Ｉα（実線で示したα軸成分ｉαの極大値または極小値の絶対値）および振幅Ｉβ（破線で示したβ軸成分ｉβの極大値または極小値の絶対値）を求めるとともに、ゼロクロスの時間を検出することで重畳電流位相φｉα、φｉβを求める。そして、図３（ｂ）に示すα−β座標系においてα軸から楕円長軸（ｄ軸）までの角度θを下記（数１）式により求める。
【００１４】
【数１】
2005333761.tif 000003
図５（ａ）、（ｂ）は、図２における制御内容を示したフローチャートである。図５（ａ）は全体の概略フローであり、ステップＳ１において、高周波電流を重畳して仮のｄ軸を検出し、ステップＳ２において、Ｎ／Ｓ判定を行って真のｄ軸を検出して位相角θを検出する。そしてステップＳ３において、上記の位相角θを用いて電動機のトルク制御を行う。
【００１５】
また、図５（ｂ）は、上記の位相角θを検出するフローであり、ステップＳ４では、入力電流を周波数分離して高周波成分を抽出する（前記周波数分離部１６）。ステップＳ５では、分離した高周波電流をα−β座標系の二相電流に変換する（前記３相２相変換部１７）。  
ステップＳ６では、α−β座標系に変換された電流ベクトルのα軸成分ｉαとβ軸成分ｉβとにつき、振幅Ｉα、振幅Ｉβと位相φｉα、φｉβを求める。そしてステップＳ７では、±９０°の範囲でα軸とｄ軸とのなす角度θを前記（数１）式で算出する。ただし、この段階の角度は仮の位相角θ０である（前記ｄ軸検出部１８）。
【００１６】
ステップＳ８〜ステップＳ１１においては、下記のようにして真の角度θを算出して出力する（前記Ｎ／Ｓ判定部１９）。  
すなわち、上記の（数１）式により、±９０°の範囲でα軸とｄ軸とのなす角度θが求まる。この角度θを±１８０°の範囲まで拡張するために、連続した検出では９０°以上位相が変化することがないという前提を用いる。つまり、図５（ｂ）に示すフローは、たとえば１００μｓｅｃ毎に起動するので、通常９０°以上位相が変化することはない。つまり極めて短時間なのでロータが９０°以上回転することは無い。したがって、連続した検出において、８９°から−８９°に変化した場合には、８９°から９１°（＝−８９°＋１８０°）へ変化したものとする。同様に、−８９°から８９°に変化した場合には、−８９°から−９１°（＝８９°＋１８０°−３６０°）に変化したものとする。これにより、α軸とｄ軸とのなす角度θを±１８０°の範囲で検出することができる。
【００１７】
ただし、最初の検出を行ったときの初期位相（ステップＳ８でＹＥＳの場合）は、変化の比較対象が存在しないので決定できない。すなわち、最初の検出の演算結果が３０°であった場合、この初期位相が３０°なのか−１５０°なのかが不明である。このため、図５（ａ）のステップＳ１に示したように、最初の検出では暫定的にθの範囲を±９０°の範囲、上記の例では３０°とした仮のｄ軸（位相角θ０）としておき、後述するＮ／Ｓ判定による極性判定によって正しいθ、つまりθを±１８０°の範囲で求めることとする。上記のｄ軸検出部１８で求めたα軸から楕円長軸（ｄ軸）までの角度θを仮の位相角θ０としてｄ軸検出部１８から出力する。
【００１８】
図６は、Ｎ／Ｓ判定部１９における演算内容を示すフローチャートである。  
Ｎ／Ｓ判定部１９は、初期には判定角θ１＝０としてｄ軸検出部１８からの仮の位相角θ０をそのまま位相角θとして出力し、ｄ−ｑ軸電流目標値も電流目標値作成部１０から入力した値をそのまま出力している。  
ｄ軸検出部１８によって仮のｄ軸（仮の位相角θ０）を検出し、ステップＳ２０において、ロータが停止（検出した位相角が不変）していることを確認した時点で、θ０をラッチして位相角θを固定し、ｄ軸のみに負の電流を印加する（ｉｑ＝０、ｉｄ＜０）。
【００１９】
ステップＳ２１では、上記の電流を印加した際にロータが動いたか否かを判断する。ロータが停止しているか、動いたかは、検出した位相角が変化したか否かで判断する。この時ロータが動かない場合があるが、これはモータが全くトルクを発生しないか、トルクを発生したとしても動力伝達機構のガタ（隙間）が詰まっている状態で、そのままガタが詰まる方向へ動こうとした場合である。この時は、従来技術と同様に高周波電流の大きさを下記（数２）式を用いて検出する。そしてステップＳ２２〜ステップＳ２５に示したように、高周波電流の大きさが実験的に求めておいたしきい値以下であれば、ｄ軸に負の電流を印加していることになるので、判定角θ１を０°とする。また、高周波電流の大きさが実験的に求めておいたしきい値を越えていれば、ｄ軸に正の電流を印加していることになり、位相は１８０°反転しているため、判定角θ１を１８０°とする。なお、高周波電流による電流ベクトル軌跡は楕円となるが、（数２）式はこの楕円の長軸ａ×短軸ｂを算出する式である。
【００２０】
【数２】
2005333761.tif 000004
図７はｄ軸電流による磁気飽和を示す図である。図７に示す通り、高周波電流の大きさが変わるのは、磁気飽和のためである。ｄ軸に負の電流を印加すると磁石の磁束を弱めることになり磁気飽和は起きないが、正の電流を印加すると磁石の磁束を強めることになるので磁気飽和が起こる。時期飽和が起こるとインダクタンスが下がり、振幅が等しい高周波電圧に対して流れる高周波電流が大きくなる、という仕組みである。  
図６のステップＳ２１で、ロータが動いた場合は、動力伝達機構のガタでロータが自由に動ける場合で、かつ、モータのティースが有限であることや、コアの加工精度、巻線のばらつき、組み立て精度、インバータの誤差等により、真のｄ軸のみに電流を印加することができなかった場合、または、真のｄ軸のみに電流を印加できたとしても、上記と同じ原因によりトルクを発生した場合である。
【００２１】
ロータが動いた場合は、ステップＳ２６により、瞬時にｄ軸の電流を反転させたり、電流を０にしたりして、ロータを止める。この制御により衝撃音を確実に防止できる。ロータが動いた時は、ｄ軸に負の電流を印加していることになるので、位相は正しくなっており、判定角θ１は０°とする（ステップＳ２７）。なお、上記のようにｄ軸の電流を反転させたり、電流を０にするには、Ｎ／Ｓ判定部１９から出力するｄ−ｑ軸電流目標値を、電流０もしくは反転させる値にすることによって行う。
【００２２】
ステップＳ２８では、電流を０にし、ステップＳ２９では、ステップＳ２４、Ｓ２５、Ｓ２７の結果に応じてｄ軸検出部１８からの位相角θ０に判定角θ１（０°または１８０°）を加算し、真の位相角θとして出力する。
【００２３】
図８は、正負のｄ軸電流によるロータの動きやすさを説明するための図である。  
図８に示す通り、正負のｄ軸電流ではそれぞれ挙動が異なり、負の電流は反発側（ロータが弾かれる方向）であるのでロータが大きく動きやすく、正の電流は吸引側であるのでロータがほとんど動かない（位相誤差の範囲内でのみ動く）、という特徴がある。従って、或るしきい値以上に動いた場合つまり弾かれた場合は、それはｄ軸に負の電流を印加していることになる。
【００２４】
図９〜図１２は、トルク制御に移行するまでのＮ／Ｓ判定の動作波形を示す図であり、図５（ａ）のフローチャートの部分に対応する。  
図９は、ロータが動かない（検出位相θが不変）、かつ仮決めしたｄ軸が正しい場合で、ｉｄ＜０を印加した際の高周波電流の振幅は小さい。  
図１０は、ロータが動かない、かつ仮決めしたｄ軸が１８０°反転している場合で、ｉｄ＜０として印加した電流は、実際にはｉｄ＞０となっており、飽和により高周波電流の振幅が大きくなっている。  
図１１は、ロータが動いた場合（検出位相θが変化）で、動いたと判定したのちｉｄ＞０を印加してロータを止めている。  
図１２は、ロータが動いた場合で、動いたと判定したのち電流を０にしている。
【００２５】
図１１、図１２の場合は、前記のように磁気飽和による高周波電流の判定はできないが、ｉｄ＞０を印加した場合に動く量より大きく動いた（つまり弾かれた）ので、ｉｄ＜０を印加していることがわかり、仮決めしたｄ軸は正しいと判断できる。
【００２６】
上記のように、本実施例においては、印加電流が小さくて済むことから、トルクが発生したとしても小さく、ガタが詰まるときの衝撃音が小さくてすむ。また、衝撃音が小さいため、印加電流の増大速度（電流応答）も早くでき、Ｎ／Ｓ判定を素早く行なえる、という効果がある。
【００２７】
（実施例２）
図１３は、第２の実施例のＮ／Ｓ判定のフローチャートを示す図である。  
Ｎ／Ｓ判定部１９は、初期には判定角θ１＝０としてｄ軸検出部１８からの位相角θ０をそのまま位相角θとして出力し、ｄ−ｑ軸電流目標値も電流目標値作成部１０から入力した値をそのまま出力している。
【００２８】
まず、ステップＳ３０では、ｄ軸検出部１８によって仮のｄ軸を検出し、ロータが停止していることを確認した時点でθ０をラッチして位相角θを固定し、ｄ軸のみに負の電流を印加する。
【００２９】
ステップＳ３１では、前記と同様に、ロータが動いたか否かを判断し、ロータが動かない場合は、ステップＳ３２で、図８の位相誤差がある場合と同じ状態になるように、意図的にｄ軸電流の位相に誤差を加えて（印加する駆動電流の位相を変えて）、ステップＳ３３で、再びロータが動いたか否かを判断する。
【００３０】
さらに、この状態でもロータが動かない場合は、ステップＳ３４で、符号を反転させた位相誤差を加えて動くかどうかを確認する。このように２種類の位相誤差を加えるのは、弱め側（反発側）であるにも関わらず、たまたまガタが詰まっていて動かない場合もあることを想定している。  
最後まで動かなかった（意図的に与えた位相誤差の範囲内で動いた）場合は、ステップＳ３６で、判定角θ１を１８０°とする。
【００３１】
ステップＳ３１、Ｓ３３、Ｓ３５でロータが動いた場合は、ステップＳ３７により、瞬時にｄ軸の電流を反転させたり、電流を０にしたりして、ロータを止める。ロータが動いた時は、ｄ軸に負の電流を印加していることになるので、位相は正しくなっており、判定角θ１は０°とする（ステップＳ３８）。
【００３２】
ステップＳ３９では、電流を０にし、ステップＳ４０では、ステップＳ３６、Ｓ３８の結果に応じてｄ軸検出部１８からの位相角θ０に判定角θ１（０°または１８０°）を加算し、真の位相角θとして出力する。
【００３３】
この実施例２の場合は、磁気飽和による判定を用いないので実施例１に比べて印加電流が小さい。従って、誤差によって大きなトルクが発生することを考慮しなくて済むため、電流応答を早くし、結果的に判定時間を短くできる。
【００３４】
図１４〜図１７は、実施例２におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形を示す図である。  
図１４は、仮決めしたｄ軸が１８０°反転していた場合で、ｉｑ＝０、ｉｄ＜０を印加してもロータは動かず、意図的に位相誤差を与えても位相誤差範囲内で動く（追従する）のみである。
【００３５】
図１５は、仮決めしたｄ軸が正しい場合で、かつモータのティースが有限であることや、コアの加工精度、巻き線のばらつき、組み立て精度、インバータの誤差等により、真のｄ軸のみに電流を印加することができなかった場合、または、真のｄ軸のみに電流を印加できたとしても、上記と同じ原因によりトルクを発生した場合で、ロータが動いた場合である。ロータが動いたことを判定し、止めるためにｉｄ＞０を印加している。
【００３６】
図１６は、仮決めしたｄ軸が正しい場合で、かつｉｑ＝０、ｉｄ＜０を印加しても全くトルクを発生しないか、トルクを発生したとしても動力伝達機構のガタ（隙間）が詰まっている状態で、そのままガタが詰まる方向へ動こうとした場合であり、ロータは動かない。この場合には、意図的に位相誤差を与えると、ロータが大きく動くので、動いたことを判定し、止めるためにｉｄ＞０を印加している。
【００３７】
図１７は、図１６とほぼ同様であるが、意図的に位相誤差を与えてトルクを発生させても、その位相誤差がたまたま動力伝達機構のガタ（隙間）が詰まっている状態で、そのままガタが詰まる方向へ動こうとした場合であり、ロータは動かない。そこで、符号を反転させて位相誤差を与えることによりロータが大きく動くので、動いたことを判定し、止めるためにｉｄ＞０を印加している。
【００３８】
以下、これまでに説明した演算に用いる各数式をまとめて記載する。ただし、（数３）式はｄ軸／ｑ軸電流の演算式、（数４）式はｄ軸／ｑ軸電圧指令値の演算式、（数５）式はｄ軸／ｑ軸電圧指令値の演算式、（数６）式は三相電圧指令値の演算式、（数７）式は三相ＰＷＭデューティ幅の演算式である。
【００３９】
【数３】
2005333761.tif 000005
ただし、
ｉｄ，ｉｑ：ｄ軸／ｑ軸電流計測値［Ａ］
ｉｕ，ｉｖ，ｉｗ：三相電流計測値［Ａ］
ただし、ｉｗ＝−ｉｕ−ｉｖとして省略可
θ：Ｎ／Ｓ判定部１９から出力される位相角
【００４０】
【数４】
2005333761.tif 000006
ただし、
ｉｄ＊，ｉｑ＊：ｄ軸／ｑ軸電流指令値［Ａ］
ｖｄ＊，ｖｑ＊：ｄ軸／ｑ軸電圧指令値［Ｖ］
ｓ：ラプラス演算子
Ｋｐｄ，Ｋｐｑ：ｄ軸／ｑ軸比例ゲイン
Ｋｉｄ，Ｋｉｑ：ｄ軸／ｑ軸積分ゲイン
【００４１】
【数５】
2005333761.tif 000007
ただし、
ｖｄ＊，ｖｑ＊：ｄ軸／ｑ軸電圧指令値［Ｖ］
ｖｄ'＊，ｖｑ'＊：ＰＩ制御出力のｄ軸／ｑ軸電圧指令値［Ｖ］
ｉｄ，ｉｑ：ｄ軸／ｑ軸電流値［Ａ］
Ｌｄ，Ｌｑ：ｄ軸／ｑ軸インダクタンス［Ｈ］
Φ：誘起電圧定数［Ｗｂ］
ω：角速度（電気角）［ｒａｄ／ｓ］
【００４２】
【数６】
2005333761.tif 000008
ただし、
ｖｕ＊，ｖｖ＊，ｖｗ＊：三相電圧指令値［Ｖ］
【００４３】
【数７】
2005333761.tif 000009
ただし、
ｖｄｃ：直流電圧計測値［Ｖ］
ｔｕ＊，ｔｖ＊，ｔｗ＊：三相ＰＷＭデューティ幅（上アームオン時間）
Ｔ０：ＰＷＭ周期（１０［kHz］の場合は１００［μｓ］）
次に、ｄ軸検出部におけるｄ軸位相検出は、ｄ−ｑ軸レベルで行う方法もあるし、高周波電流制御を行って高周波電流を一定に制御し、高周波電圧で磁気飽和を判定する方法もある。また、ベクトルレベルで制御する場合もあるし、振幅の平均値を制御する場合もある。以下、それぞれの場合について説明する。
【００４４】
図１８は、ｄ−ｑ軸レベルでｄ軸検出を行う場合のブロック図である。  
高周波回転電圧発生部１４’は、ｄ−ｑ軸電圧指令を発生させる。周波数分離部１６は、ｄ−ｑ軸変換部１１で変換後のｄ軸電流とｑ軸電流を入力し、そのうちから高周波成分（高周波ｄ−ｑ軸電流）を分離する。  
ｄ軸検出部１８’では、ｄ−ｑ軸上に変換された高周波分離された電流ベクトルのｄ軸成分ｉｄとｑ軸成分ｉｑをそれぞれ、ピーク値検出、０クロスの時間検出により、振幅、位相を求める。この時、ｄ軸から楕円長軸までの角度θは、ＩαとＩβをＩｄとＩｑに、φｉαとφｉβをφｉｄとφｉｑに変更する以外は、前記（数１）式と同様であるが、これに一定の係数を乗じて（比例演算を行って）角速度ωを求め、そのωを積分することにより、ｄ軸位相角θ０を生成して出力する。このようにｄ−ｑ軸レベルでｄ軸検出を行うと、モータ回転時に位相誤差が少ないという利点がある。
【００４５】
図１９は、高周波電圧で磁気飽和を判定する場合のブロック図である。  
これまで説明した実施例は、電圧ベクトル軌跡が真円の高周波電流を重畳し、該高周波電流の電流ベクトルからｄ軸位相角を求めるという構成であったが、図１９の実施例は、電流ベクトル軌跡が真円の高周波電流を重畳し、該高周波電流のα−β軸上の電圧ベクトルからｄ軸位相角を求めるという構成である。
【００４６】
図１９において、周波数分離部１６は、一般的な周波数フィルタを用いて、電流センサ４から入力した三相電流から高周波電流を分離して出力する。  
高周波電流制御部２０は、上記高周波電流と高周波電流目標値とを入力し、高周波電流ベクトル軌跡が真円（図３ａ参照）となるように、ＰＩ制御等を行って高周波三相電圧指令を作成する。  
なお、高周波制御は前記した様に、三相（静止座標系）ではなく、ｄ−ｑ軸上（回転座標系）で行うこともできる。このようにｄ−ｑ軸上で高周波制御を行い、ｄ−ｑ軸上でｄ軸検出を行う場合は、モータ回転時に周波数のずれがない。
【００４７】
高周波三相電圧指令をベクトル化すると、図３（ｂ）に示すように、その電圧ベクトル軌跡は楕円となる。磁気飽和が生じない低負荷時には、楕円の長軸方向はｑ軸（インダクタンス最大の位置）を指しており、ｄ軸検出はｑ軸位相から９０°を差し引くことによって行うことが出来る。すなわち、３相２相変換部１７では、高周波電流制御部２０から出力された高周波三相電圧指令を入力し、図３（ｂ）に示すようなα−β軸電圧を出力する。ｄ軸検出部１８は、上記のようにｑ軸位相から９０°を差し引くことによってｄ軸位相角θ０を算出して出力する。  
なお、楕円の長軸（すなわちｑ軸）の位相角は、前記（数１）式におけるＩαとＩβをＶαとＶβに、φｉαとφｉβをφｖαとφｖβに置き換えた式により求めることができる。
【００４８】
図２０は、振幅の平均値を制御する場合のブロック図である。  
図２０において、高周波電流制御部２０’は、高周波電流の平均の振幅を一定とするように制御し、ベクトル軌跡が真円となる高周波電圧指令を出力する。この場合、ｄ軸検出は高周波電流（ｉα、ｉβ、φｉα、φｉβ）を用い、Ｎ／Ｓ判定（磁気飽和）は高周波電圧指令（ｖα、ｖβ、φｖα、φｖβ）を用いる。  
また、図１９、図２０において、位相角検出とＮ／Ｓ判定をｄ−ｑ軸レベルで行うことも出来る。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施例の全体構成を示すブロック図。
【図２】図１における制御手段１の詳細を示す第１の実施例のブロック図。
【図３】真円の電圧ベクトル軌跡と楕円の電流ベクトル軌跡とを示す図。
【図４】ピーク値を検出することで振幅Ｉα、振幅Ｉβを検出し、ゼロクロスの時間を検出することで重畳電流位相φｉα、φｉβを求める方法を説明するための図。
【図５】図２の実施例における制御内容を示したフローチャートであり、（ａ）は全体の概略フロー、（ｂ）は位相角θを検出するフロー。
【図６】Ｎ／Ｓ判定部１９における演算内容を示すフローチャート。
【図７】ｄ軸電流による磁気飽和を示す図。
【図８】正負のｄ軸電流によるロータの動きやすさを説明するための図。
【図９】実施例１におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１０】実施例１におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１１】実施例１におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１２】実施例１におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１３】第２の実施例のＮ／Ｓ判定のフローチャートを示す図。
【図１４】実施例２におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１５】実施例２におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１６】実施例２におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１７】実施例２におけるトルク制御に移行するまでのＮ／Ｓ判定の動作波形図。
【図１８】ｄ−ｑ軸レベルでｄ軸検出を行う場合のブロック図。
【図１９】高周波電圧で磁気飽和を判定する場合のブロック図。
【図２０】振幅の平均値を制御する場合のブロック図。
【符号の説明】
【００５０】
１…制御手段                        ２…インバータ回路
３…ＩＰＭモータ                    ４…電流センサ
５…電源部                          ６…電圧センサ
７…ＰＷＭ指令                    １０…電流目標値作成部
１１…ｄ−ｑ軸変換部                １２…電流制御部
１３…三相変換部                    １４、１４’…高周波回転電圧発生部
１５…ＰＷＭ指令作成部              １６…周波数分離部
１７…３相２相変換部                １８、１８’…ｄ軸検出部
１９…Ｎ／Ｓ判定部                  ２０、２０’…高周波電流制御部
【図１】
2005333761.tif 000010
【図２】
2005333761.tif 000011
【図３】
2005333761.tif 000012
【図４】
2005333761.tif 000013
【図５】
2005333761.tif 000014
【図６】
2005333761.tif 000015
【図７】
2005333761.tif 000016
【図８】
2005333761.tif 000017
【図９】
2005333761.tif 000018
【図１０】
2005333761.tif 000019
【図１１】
2005333761.tif 000020
【図１２】
2005333761.tif 000021
【図１３】
2005333761.tif 000022
【図１４】
2005333761.tif 000023
【図１５】
2005333761.tif 000024
【図１６】
2005333761.tif 000025
【図１７】
2005333761.tif 000026
【図１８】
2005333761.tif 000027
【図１９】
2005333761.tif 000028
【図２０】
2005333761.tif 000029