(57)【要約】【課題】指令電流生成手段に用いられるニュートン法による演算時間を短縮することにより、同期モータの駆動制御を高精度に行うことのできる同期モータ駆動制御装置を提供する。【解決手段】曲線ＣとＩｄ軸とが交わる点を算出する際、図３（ｂ）に示すように、曲線Ｃ上の点ａ１（Ｉｄ0，ｆ（Ｉｄ0））から引かれた接線とＩｄ軸とが交わる点ｂ1（Ｉｄ1，０）を求め、演算値Ｉｄ0と演算値Ｉｄ1との差（Ｉｄ1−Ｉｄ0）が所定値Ａよりも小さい場合、演算値Ｉｄ0に所定値Ａを加えた値（Ｉｄ0＋Ａ）を数式（３）のＩｄnに書き換える。その後、曲線Ｃ上の点ｃ１（Ｉｄ＋Ａ，ｆ（Ｉｄ＋Ａ））から引かれた接線とＩｄ軸とが交わる点を点ｄ1´（Ｉｄ1´，０）とし、順次演算を行う。曲線Ｃの傾きが急な部分における処理回数を削減して、演算時間を大幅に短縮することができる。【選択図】図３
2010045915.tif 000002
【特許請求の範囲】
【請求項１】
入力される制御信号に対応した駆動電流を生成して同期モータに供給するインバータと、指令信号に対応する指令電流を生成する指令電流生成手段と、前記指令電流生成手段から出力される指令電流に座標変換を行って前記制御信号を生成する制御信号生成手段と、を具備し、
前記指令電流生成手段は、トルク指令および前記同期モータの定格を示すモータパラメータによって前記指令電流を導き出すｎ次関数について、以下のステップによって解を導き出す
ことを特徴とする同期モータ駆動制御装置。
演算値算出ステップ：前記ｎ次関数をｆ（Ｘ）とした場合に数式（１）の演算によって得られた値を演算値とする演算算出ステップであって、始めに、所定の初期値Ｘ0を数式（１）のＸnに代入し、演算して得られた値を演算値Ｘ1とし、以降の演算処理においては、先の演算値算出ステップで得た演算値を数式（１）のＸnに代入し、演算して得られた値を演算値Ｘn+1として算出する、
第１判定ステップ：前記演算値算出ステップにおいて、演算値Ｘn+1が得られる度に、得られた演算値Ｘn+1と一つ前の演算によって得られた演算値Ｘnとの差が「０」に収束するか否かを判定し、「０」に収束していると判定した場合には、演算値Ｘnを解とする、
第２判定ステップ：前記第１判定ステップにおいて、演算値Ｘn+1と演算値Ｘnとの差が「０」に収束していないと判定した場合、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａよりも小さいか否かを判定する、
演算値設定ステップ：前記第２判定ステップにおいて、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａよりも小さいと判定した場合は演算値Ｘn+1の値を演算値Ｘn＋Ａに書き換え、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａ以上と判定した場合は演算値Ｘn+1をそのままにする。
【数１】
2010045915.tif 000008
【請求項２】
請求項１記載の同期モータ駆動制御装置において、
前記ｎ次関数は、トルク指令に対してｄ軸指令電流を生成する場合、以下の数式（２）となる
ことを特徴とする同期モータ駆動制御装置。
【数２】
2010045915.tif 000009
但し、Ｉｄ：ｄ軸指令電流、φ：永久磁石の鎖交磁界、Ｌｄ：ｄ軸インダクタンス、Ｌｑ：ｑ軸インダクタンス、Ｔ：指令トルク、ｐ：微分演算子
Ｌｑ＞Ｌｄ、φ＞０、Ｔ＞０、Ｐ＞０
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、永久磁石式同期モータ（ＰＭモータ）をインバータで駆動する同期モータ駆動制御装置に関する。
【背景技術】
【０００２】
一般に、同期モータを制御する装置には、同期モータの巻線に供給する駆動電流を制御するためにインバータが用いられる。このインバータは直流電圧がバイアスされ、制御信号によってオン／オフ制御されることによって、交流波形となる駆動電流を発生させる。また、制御信号は、指令速度や指令トルクに対応した指令電流を生成する指令電流生成部に基づいて生成される。この指令電流生成部では、予め記憶された演算式に基づき、指令速度や指令トルクに対応した指令電流を算出するようになっている。特許文献１〜３は、同期モータを駆動制御するに際し、信号を生成する手段の演算にニュートン法を用いたものである。
【０００３】
【特許文献１】特開２００６−３５３０９１号公報
【特許文献２】特許３２４４８４５号公報
【特許文献３】特許３９２５９０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述した特許文献では、信号を生成するのにニュートン法が用いられる。このニュートン法は、初期値における演算結果と、この結果を基にした次の演算結果とを順次算出し、演算結果と前回の演算結果との差が「０」に収束する際の値を解とするものである。このため、演算時間に相当の時間が費やされてしまう場合がある。
特に、同期モータの駆動制御のように、指令速度や指令トルクに対して精度の高い制御が必要な場合には、この演算時間がボトルネックとなっていた。
【０００５】
本発明は上述した課題に鑑みてなされたものであり、ニュートン法による演算時間を短縮することにより、同期モータの駆動制御を高精度に行うことのできる同期モータ駆動制御装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
上述の目的を達成するため、本発明が採用する同期モータ駆動制御装置の構成は、入力される制御信号に対応した駆動電流を生成して同期モータに供給するインバータと、指令信号に対応する指令電流を生成する指令電流生成手段と、前記指令電流生成手段から出力される指令電流に座標変換を行って前記制御信号を生成する制御信号生成手段と、を具備し、前記指令電流生成手段は、トルク指令および前記同期モータの定格を示すモータパラメータによって前記指令電流を導き出すｎ次関数について、以下のステップによって解を導き出すことを特徴とする。
演算値算出ステップ：前記ｎ次関数をｆ（Ｘ）とした場合に数式（１）の演算によって得られた値を演算値とする演算算出ステップであって、始めに、所定の初期値Ｘ0を数式（１）のＸnに代入し、演算して得られた値を演算値Ｘ1とし、以降の演算処理においては、先の演算値算出ステップで得た演算値を数式（１）のＸnに代入し、演算して得られた値を演算値Ｘn+1として算出する、
第１判定ステップ：前記演算値算出ステップにおいて、演算値Ｘn+1が得られる度に、得られた演算値Ｘn+1と一つ前の演算によって得られた演算値Ｘnとの差が「０」に収束するか否かを判定し、「０」に収束していると判定した場合には、演算値Ｘnを解とする、
第２判定ステップ：前記第１判定ステップにおいて、演算値Ｘn+1と演算値Ｘnとの差が「０」に収束していないと判定した場合、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａよりも小さいか否かを判定する、
演算値設定ステップ：前記第２判定ステップにおいて、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａよりも小さいと判定した場合は演算値Ｘn+1の値を演算値Ｘn＋Ａに書き換え、演算値Ｘn+1と演算値Ｘnとの差が所定値Ａ以上と判定した場合は演算値Ｘn+1をそのままにする。
【数１】
2010045915.tif 000003
【０００７】
上記構成により、演算値設定ステップにおいて、ある演算値Ｘn+1と一つ前の演算値Ｘnとの差が所定値Ａよりも小さい場合には、演算値Ｘn＋所定値Ａをある演算値Ｘn+1に書き換える。
これにより、同期モータ駆動制御装置は、順次演算値算出ステップで演算して得られる演算値Ｘn+1が（Ｘn＋Ａ）を超えるまでの演算処理を省略でき、ニュートン法における演算時間の短縮を図ることができる。
【０００８】
上記構成において、前記ｎ次関数は、トルク指令に対してｄ軸指令電流を生成する場合、以下の数式（２）となることが好ましい。
【数２】
2010045915.tif 000004
但し、Ｉｄ：ｄ軸指令電流、φ：永久磁石の鎖交磁界、Ｌｄ：ｄ軸インダクタンス、Ｌｑ：ｑ軸インダクタンス、Ｔ：指令トルク、ｐ：微分演算子
Ｌｑ＞Ｌｄ、φ＞０、Ｔ＞０、Ｐ＞０
【発明の効果】
【０００９】
本発明による同期モータ駆動制御装置は、指令電流生成手段に用いられるニュートン法による演算時間を短縮することにより、同期モータの駆動制御を高精度に行うことができる。
【発明を実施するための最良の形態】
【００１０】
＜実施形態＞
図１は、本実施形態のよる同期モータ駆動制御装置を示すブロック図である。
同期モータ駆動制御装置（以下、制御装置という）１０は、ＰＷＭ制御されるインバータ１１を備える。インバータ１１は、図示しない直流電源に接続され、制御信号により動作制御されて、ＰＭモータ１０１に３相の駆動電流を供給する。
【００１１】
この制御装置１０は、指令トルクＴを受けてＩｑ指令電流およびＩｑ指令電流を生成する指令電流生成部１８を備える。
この指令電流生成部１８には、一方の出力となるＩｑ指令電流側に、偏差算出部１２ｑを介して比例積分器１３ｑが接続され、他方の出力となるＩｄ指令電流側に、偏差算出部１２ｄを介して比例積分器１３ｄが接続され、比例積分器１３ｑ，１３ｄは分離した制御信号を生成する。さらに、比例積分器１３ｑ，１３ｄの後段には、制御信号を２相−３相変換する座標変換部１４Ａと、この座標変換部１４Ａからの３相制御信号を基準波によってＰＷＭ波形に変換するＰＷＭ波形生成部１５と、が接続される。
比例積分器１３ｑ，１３ｄは、ｑ軸電流，ｄ軸電流の偏差分をそれぞれ比例積分（ＰＩ）演算する。
【００１２】
偏差算出部１２ｑ，１２ｄは、ｑ軸，ｄ軸指令電流信号からｑ軸，ｄ軸検出電流信号を減算する。このｑ軸，ｄ軸検出電流信号は、インバータ１１からＰＭモータ１０１に供給する駆動電流の電流値を電流検出部１６で検出し、この検出信号を３相−２相変換する座標変換部１４Ｂで２相に変換することにより得られる。そして、ｑ軸，ｄ軸検出電流信号は、偏差算出部１２ｑ，１２ｄに入力され、ｑ軸，ｄ軸指令電流信号のフィードバック信号となる。
【００１３】
座標変換部１４Ａ，１４Ｂにおける座標変換のための基準位相信号は、ＰＭモータ１０１のロータ位置を検出するロータリエンコーダ、慣性センサ、表面弾性波センサ、ジャイロセンサ、レゾルバ等からなる角度検出部１７により得られる。
【００１４】
次に、指令電流生成部１８について説明する。
この指令電流生成部１８は、指令トルクＴに対応したＩｑ指令電流およびＩｄ指令電流を生成するものである。本実施形態では、Ｉｄ指令電流の演算処理について説明する。
指令電流生成部１８は記憶部１８Ａと演算部１８Ｂを備え、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）（いずれも図示せず）からなるマイクロコンピュータによって構成される。記憶部１８Ａには、ニュートン法による一般式（数式（１））とＩｄ指令電流を算出するための演算式（数式（２））が記憶される。
【００１５】
【数１】
2010045915.tif 000005
【００１６】
【数２】
2010045915.tif 000006
但し、Ｉｄ：ｄ軸指令電流、φ：永久磁石の鎖交磁界、Ｌｄ：ｄ軸インダクタンス、Ｌｑ：ｑ軸インダクタンス、Ｔ：指令トルク、ｐ：微分演算子
Ｌｑ＞Ｌｄ、φ＞０、Ｔ＞０、Ｐ＞０
演算部１８Ｂは、上記数式（１）および数式（２）からＩｄ指令電流を算出する。
【００１７】
演算部１８Ｂでは、数式（２）にパラメータに数値を代入した上で、Ｉｄ指令電流を変数として変化させることで、数式（２）が「０」となる数値を絞り込む演算を行う。しかし、この方法では、多大な演算時間が必要となるため、数式（１）を用いたニュートン法が用いられている。
【００１８】
ここで、ニュートン法によるＩｄ指令電流の算出方法を、図２および図３（ａ）を参照しつつ説明する。
図２は、一般的なニュートン法による処理を示した流れ図であり、図３（ａ）は、具体例を示したグラフである。このニュートン法では、数式（２）の曲線ＣとＩｄ軸とが交わる点を算出して、この値がＩｄ指令電流となる。数式（１）に数式（２）の関数を用いるために、変数ＸnがＩｄnとなるため、数式（１）は、以下の数式（３）となる。
【００１９】
【数３】
2010045915.tif 000007
【００２０】
演算部１８Ｂは、予め記憶部１８Ａに記憶された初期値Ｉｄ0を読み出し（ステップＳａ１）、数式（３）のＩｄnにＩｄ0を代入して演算して演算値Ｉｄ1を得る（ステップＳａ２）。つまり、演算部１８Ｂは、ステップＳａ２の処理において、図３（ａ）に示すように、曲線Ｃ上の点ａ１（Ｉｄ0，ｆ（Ｉｄ0））から引かれた接線とＩｄ軸とが交わる点ｂ1（Ｉｄ1，０）を求める。
【００２１】
次に、演算部１８Ｂは、Ｉｄ1−Ｉｄ0＝０であるか否かを判定し（ステップＳａ３）、演算値Ｉｄ0と算出された演算値Ｉｄ1との差が「０」に収束しているか否かを判定する。
このステップＳａ３の判定において、Ｉｄ1−Ｉｄ0≠０の場合（ステップＳａ３；ＮＯ）には、未だに差が「０」に収束していないから、演算部１８Ｂは、ステップＳａ２以降の処理を繰り返すべく、演算値Ｉｄ1を数式（３）ではＩｄｎに書き換える（ステップＳａ４）。
【００２２】
その後、演算部１８Ｂは、ステップＳａ２以降の処理を繰り返し、数式（３）のＩｄnに演算値Ｉｄ1を代入して、数式（３）を演算して演算値Ｉｄ2を得る（ステップＳａ２）。先に説明した通り、演算部１８Ｂは、図３（ａ）に示すように、曲線Ｃ上の点ａ２（Ｉｄ1，ｆ（Ｉｄ1））から引かれた接線とＩｄ軸とが交わる点ｂ２（Ｉｄ2，０）を求める。
【００２３】
次に、演算部１８Ｂは、Ｉｄ2−Ｉｄ1＝０であるか否かを判定し（ステップＳａ３）、演算値Ｉｄ1と演算値Ｉｄ2との差が「０」に収束しているか否かを判定する。このステップＳａ３の判定において、Ｉｄ2−Ｉｄ1≠０の場合（ステップＳａ３；ＮＯ）には、未だに差が「０」に収束していないから、演算部１８Ｂは、ステップＳａ２以降の処理を繰り返すべく、数式（１）ではＩｄｎに演算値Ｉｄ2を代入する（ステップＳａ４）。
【００２４】
このように、演算部１８Ｂは、ステップＳａ３の判定処理において、Ｉｄn+1−Ｉｄn＝０となるまで、ステップＳａ２〜Ｓａ４の処理を繰り返す。この処理により、図３（ａ）に示すように、ａ１→ｂ１→ａ２→ｂ２→ａ３→ｂ３→ａ４→ｂ４→ａ５・・・の点をプロットする軌跡を描くことになる。
【００２５】
一方、ステップＳａ３の判定において、Ｉｄn+1−Ｉｄn＝０となった場合、演算値Ｉｄnと演算値Ｉｄn+1との差が「０」に収束しているとみなし、演算部１８Ｂは、この演算値Ｉｄnを解として、この演算値Ｉｄnの値をＩｄ指令電流として記憶部１８Ａに記憶する（ステップＳａ５）。
【００２６】
このように、ニュートン法を用いた場合であっても、解となる値Ｉｄnの値と予め設定されている初期値Ｉｄ0の値が大幅にずれている場合には、ステップＳａ２〜Ｓａ４の処理を多大に繰り返すことになり、多大な演算時間が費やされることになる。
【００２７】
そこで、本実施形態による指令電流生成部１８は、以下のステップを処理動作に加えることで、演算時間の短縮を図っている。
以下、本実施形態による指令電流生成部１８の特徴について、図４の流れ図および図３（ｂ）のグラフを参照しつつ説明する。なお、図３の流れ図で示した処理と同じ動作のステップには同じステップ番号を付し、その説明を省略するものとする。
【００２８】
演算部１８Ｂは、ステップＳａ１〜Ｓａ３の処理により、初期値Ｉｄ0に対する演算値Ｉｄ1を演算し、ステップＳａ３の判定において、Ｉｄ1−Ｉｄ0≠０となる場合には（ステップＳａ３；ＮＯ）、ステップＳｂ１に移る。
【００２９】
演算部１８Ｂは、演算値Ｉｄ0と演算値Ｉｄ1との差が所定値Ａよりも小さいか否かを判定する（ステップＳｂ１）。
ステップＳｂ１の判定において、Ｉｄ1−Ｉｄ0≧Ａの場合（ステップＳｂ１；ＮＯ）には、未だに差が「０」に収束しておらず、しかも演算値Ｉｄ0と演算値Ｉｄ1との差が所定値Ａ以上となっているから、演算部１８Ｂは、ステップＳａ２以降の処理を繰り返すべく、演算値Ｉｄ1を数式（３）ではＩｄｎに書き換える（ステップＳａ４）。
【００３０】
一方、ステップＳｂ１の判定において、Ｉｄ1−Ｉｄ0＜Ａの場合（ステップＳｂ１；ＹＥＳ）には、未だに差が「０」に収束しておらず、しかも演算値Ｉｄ0と演算値Ｉｄ1との差が所定値Ａよりも小さくなっているから、演算部１８Ｂは、ステップＳａ２以降の処理を繰り返すべく、演算値（Ｉｄ1＋Ａ）を数式（３）ではＩｄｎに書き換える（ステップＳｂ２）。
【００３１】
具体的には、図３（ｂ）に示すように、始めのステップＳａ２の処理により、曲線Ｃ上の点ａ１（Ｉｄ0，ｆ（Ｉｄ0））から引かれた接線とＩｄ軸とが交わる点ｂ1（Ｉｄ1，
０）が求まり、演算値Ｉｄ1を得る。演算部１８Ｂは、演算値Ｉｄ0と演算値Ｉｄ1との差（Ｉｄ1−Ｉｄ0）が所定値Ａよりも小さいから、演算値Ｉｄ0に所定値Ａを加えた値を演算値（Ｉｄ0＋Ａ）とする。
さらに、曲線Ｃ上の点ｃ１（Ｉｄ＋Ａ，ｆ（Ｉｄ＋Ａ））から引かれた接線とＩｄ軸とが交わる点を点ｄ1´（Ｉｄ1´，０）とし、演算値Ｉｄ1´が算出される。以降、Ｉｄn+1−Ｉｄn＝０となるまで、ステップＳａ２，Ｓａ３，Ｓａ４，Ｓｂ１およびＳｂ２の処理を順次繰り返す。
【００３２】
このように、本実施形態による指令電流生成部１８では、Ｉｄn+1−Ｉｄn＜Ａの場合（ステップＳｂ１；ＹＥＳ）に、演算値（Ｉｄ1＋Ａ）を演算値とした上で、次のステップＳａ２の演算処理を実行するようにしているため、曲線Ｃの傾きが急な部分におけるステップＳａ２〜Ｓａ４の処理回数を削減することになり、演算時間を大幅に短縮することができる。
【００３３】
また、指令電流生成部１８では、ステップＳｂ１の判定処理の前に、ステップＳａ３の収束を判定する処理を行うようにしているため、解となる演算値が曲線Ｃの傾きが急な部分にあった場合でも、解を求めることが可能となる。
【００３４】
以上、説明した如く、本実施形態による同期モータ駆動制御装置（制御装置）１０においては、指令電流生成部１８で算出するＩｄ指令電流の演算時間を大幅に短縮するステップをニュートン法に追加したから、ＰＭモータ１０１を駆動制御する際の信号生成時間を大幅に短縮でき、精度の高い駆動制御を行うことができる。
【００３５】
なお、前記実施形態では、指令電流生成部１８において、Ｉｄ指令電流を算出する場合を例に挙げて説明したが、本発明はこれに限るものではなく、Ｉｑ指令電流や他の信号生成に用いる数式がｎ次関数の場合には用いることが可能となる。
【００３６】
さらに、前記実施形態では、同期モータにＰＭモータを用いた場合を例示したが、本発明はこれに限らず、永久磁石をロータ内に埋め込む埋込磁石同期モータ（ＩＰＭモータ）であってもよい。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施形態による同期モータ駆動制御装置を示すブロック図である。
【図２】一般的なニュートン法の処理動作を示す流れ図である。
【図３】ニュートン法による処理動作を具体的に示すグラフである。
【図４】本実施形態によるニュートン法の処理動作を示す流れ図である。
【符号の説明】
【００３８】
１０…同期モータ駆動制御装置（制御装置）、１１…インバータ、１４，１４Ａ，１４Ｂ…座標変換部、１６…電流検出部、１７…角度検出部、１８…指令電流生成部、１０１…ＰＭモータ。
【図１】
2010045915.tif 000010
【図２】
2010045915.tif 000011
【図３】
2010045915.tif 000012
【図４】
2010045915.tif 000013