(57)【要約】 【課題】  発生トルクに応じて無効電流指令Ｉｄ＊を制御することによって、余分な熱の発生を抑制でき、かつ、効果的に電圧飽和の発生を防止できる電流制御方法を提供すること。【解決手段】  低負荷時は、発生トルクが小さく、サーボモータの電機子に対する総電流指令Ｉ＊が小さくなるので、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ、によって定められる無効電流指令Ｉｄ＊の負方向への大きさが小さくなる。そのため、低負荷時には電機子を流れる総電流を小さくでき、余分な熱の発生を抑制できる。また、高負荷時は、トルクを発生するためのｑ軸電流Ｉｑが大きいために電圧飽和が生じやすくなっている。しかし、それと同時に、高負荷時は総電流指令Ｉ＊が大きく、Ｉｄ＊が負方向へ大きくなっているので、負方向へ大きな無効電流Ｉｄを電機子に流すことができ、高負荷時の電圧飽和の発生を効果的に防止できる。【選択図】 図４
2006074933.tif 000002
【特許請求の範囲】
【請求項１】
多相の電機子巻線を有する電機子と、
界磁とを備え、
前記各相の電機子巻線に電機子電流を流すことによって電機子磁束を発生させ、
この電機子磁束と前記界磁による界磁束との間の相互作用に基づいて前記電機子と前記界磁とを相対回転運動させることにより回転動力を発生するサーボモータにおいて、
電圧飽和が発生することを防止すべく、ｄ軸方向を前記界磁束の方向とするｄｑ変換を施した前記電機子に負のｄ軸電流Ｉｄを流す電流制御方法であって、
前記電機子と前記界磁との相対回転速度が一定の条件下においては、前記ｄ軸電流Ｉｄが、前記ｑ軸電流の大きさ｜Ｉｑ｜に応じて負方向へ増加する、
ことを特徴とする電流制御方法。
【請求項２】
請求項１に記載の電流制御方法において、
Ｉ２＝Ｉｄ２＋Ｉｑ２、で表される前記電機子を流れる総電流Ｉの絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限する、
ことを特徴とする電流制御方法。
【請求項３】
請求項１または請求項２に記載の電流制御方法において、
前記Ｉｄと前記Ｉｑとは、前記電機子を流れる総電流Ｉ、および、０°≦θ＜９０°を満たす位相角θに対して、Ｉｄ＝−｜Ｉ｜・ｓｉｎθ、Ｉｑ＝Ｉ・ｃｏｓθ、の関係を満足するように規定され、
前記位相角θは、前記電機子と前記界磁との相対回転の速さについての増加関数として規定される、
ことを特徴とする電流制御方法。
【請求項４】
請求項１または請求項２に記載の電流制御方法において、
前記Ｉｄと前記Ｉｑとは、０°≦θ＜９０°を満たす位相角θに対して、Ｉｄ＝−｜Ｉｑ｜・ｔａｎθ、の関係を満足するように規定され、
前記位相角θは、前記電機子と前記界磁との相対回転の速さについての増加関数として規定される、
ことを特徴とする電流制御方法。
【請求項５】
多相の電機子巻線を有する電機子と、
界磁とを備え、
前記各相の電機子巻線に電機子電流を流すことによって電機子磁束を発生させ、
この電機子磁束と前記界磁による界磁束との間の相互作用に基づいて前記電機子と前記界磁とを相対回転運動させることにより回転動力を発生するサーボモータにおいて、
ｄ軸方向を前記界磁束の方向とするｄｑ変換を施した前記電機子に対する電流指令として、トルクを発生させるためのｑ軸電流指令Ｉｑ＊と、電圧飽和の発生を防止するための負のｄ軸電流指令Ｉｄ＊とを出力する電流指令器を備え、
前記電機子と前記界磁との相対回転速度が一定の条件下においては、前記ｄ軸電流指令Ｉｄ＊が、前記ｑ軸電流指令の大きさ｜Ｉｑ＊｜に応じて負方向へ増加するように出力される、
ことを特徴とするサーボモータ。
【請求項６】
請求項５に記載のサーボモータにおいて、
前記電流指令器は、
前記電機子の総電流指令Ｉ＊を出力する総電流指令器と、
Ｉ＊２＝Ｉｄ＊２＋Ｉｑ＊２、の関係を満足するように、前記Ｉ＊から前記Ｉｄ＊および前記Ｉｑ＊を演算し出力するｄｑ電流指令器とを備え、
前記総電流指令器は、前記Ｉ＊の絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限するリミッタを備えて構成される、
ことを特徴とするサーボモータ。
【請求項７】
請求項５または請求項６に記載のサーボモータにおいて、
前記相対回転運動の速さを測定する速度センサが設けられ、
前記電流指令器は、
前記電機子の総電流指令Ｉ＊を出力する総電流指令器と、
前記速度センサで測定された速さから、この速さについての増加関数として、０°≦θ＜９０°を満たす位相角θを演算し、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ、Ｉｑ＊＝Ｉ＊・ｃｏｓθ、の関係を満足するように、前記Ｉ＊から前記Ｉｄ＊および前記Ｉｑ＊を演算して出力するｄｑ電流指令器とを備えて構成される、
ことを特徴とするサーボモータ。
【請求項８】
請求項５に記載のサーボモータにおいて、
前記相対回転運動の速さを測定する速度センサが設けられ、
前記電流指令器は、
暫定電流指令Ｉ＊を出力する暫定電流指令器と、
前記速度センサで測定された速さから、この速さについての増加関数として、０°≦θ＜９０°を満たす位相角θを演算し、前記Ｉ＊に対して、Ｉｄ＊＝−｜Ｉ＊｜・ｔａｎθ、Ｉｑ＊＝Ｉ＊、の関係を満足する前記Ｉｄ＊、前記Ｉｑ＊を演算して出力するｄｑ電流指令器とを備えて構成される、
ことを特徴とするサーボモータ。
【請求項９】
請求項８に記載のサーボモータにおいて、
前記電流指令器は、
Ｉｓ＊２＝Ｉｄ＊２＋Ｉｑ＊２＝Ｉ＊２・（１＋ｔａｎ２θ）、で表される前記電機子の総電流指令Ｉｓ＊の絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限するリミッタを備えて構成される、
ことを特徴とするサーボモータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータにおける電流制御方法、および、サーボモータに関する。詳しくは、ｄｑ変換を施した電機子に負の無効電流Ｉｄを流すことにより、サーボモータにおける電圧飽和の発生を防止するための電流制御方法、および、この電流制御方法を実施するための構成を備えるサーボモータに関する。
【背景技術】
【０００２】
従来、ＡＣサーボモータにおいて電圧飽和の発生を防止することを目的として、ｄ軸方向を界磁束の方向とするｄｑ変換を施した電機子に負のｄ軸電流Ｉｄを流すことが行われている（例えば、特許文献１参照）。ＡＣサーボモータにおいて、ｑ軸電流Ｉｑが回転トルクを発生させるために流される有効電流であるのに対して、Ｉｄはトルクの発生に関与しない無効電流である。しかし、Ｉｄを流すことにより、電機子に発生する逆起電力の影響を低減でき、より大きな有効電流Ｉｑを流すことができるようになり、結果として電流・トルク制御を安定に行うことができる。
【０００３】
このことは、特許文献１の図２および図９によく示されている。これらの図は、電機子電圧をｄ軸電圧Ｖｄとｑ軸電圧Ｖｑとの直交２成分に分けて表示したものである。ＶｄとＶｑとの全ベクトル和が電機子における総電圧に相当する。同図中に示される円はリンク電圧を表しており、電機子電圧の上限を規定するものである。そのため、電機子電圧ベクトルの先端が、リンク電圧円の内部に存在している場合に限り、同図の表示に従って所望の電機子電圧が発生され、逆に、電機子電圧ベクトルの先端がリンク電圧円の外部に出ると、所望の電圧は発生されず、トルク発生のための所望のｑ軸電流Ｉｑを流すことができない（いわゆる、電圧飽和）。
【０００４】
さて、各図において逆起電力Ｅは＋ｑ軸方向のベクトルであり、具体的には、同期型ＡＣサーボモータにおいてよく知られている式、Ｅ＝ω・Φ、で表される。ここで、ωはモータの回転角速度、Φは電機子巻線に鎖交する総磁束であり、以下、特に断らない限り、ω≧０、Φ≧０、との仮定の下で説明する。このように、逆起電力Ｅはωに比例するから、高速回転時ほど大きい。同図９において、逆起電力ベクトルＥが大きくなると、このベクトルの先端がリンク電圧円の円周に近づくことになるので、大きなＩｑを流すことができなくなる。なぜなら、Ｉｑを大きくすると、同図中Ｒ・Ｉｑとして表示される＋ｑ軸方向（Ｅと同方向）の駆動電圧ベクトルが長くなり、結果として、電機子電圧ベクトルの先端がリンク電圧円外に出てしまい、電圧飽和が生じてしまうからである。
【０００５】
しかし、ここで、同図２のように、無効電流Ｉｄ（≦０）を流すことにすれば、不都合は解消する。Ｉｄを流すことによって、逆起電力ベクトルＥと逆向きの相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜（−ｑ軸方向）を発生できるからである。この−ｑ軸方向の相殺電圧ベクトルが付加されることによって、＋ｑ軸方向の前記駆動電圧ベクトルＲ・Ｉｑを長くしても、これらのベクトル和としての電機子電圧ベクトルの先端をリンク電圧円内に留めることが可能になる。したがって、この方法によれば、高速回転時であっても、大きなＩｑを流し続けることができ、安定して大きなトルク（∝Ｉｑ）を発生できる。
【０００６】
【特許文献１】特開平９−８４４００号公報（第２〜第４頁、図２、９）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、特許文献１では、逆起電力Ｅがモータの回転角速度ωに比例することに鑑み、無効電流Ｉｄをωのみの１変数関数として定義し、ωが大きくなるほど負方向に大きな無効電流Ｉｄを流して電圧飽和の発生を防止することとしている。ここでは、ωが決まるとＩｄが一意的に決まるので、無効電流Ｉｄの値はモータで発生させるトルクの大きさにはよらない。
したがって、高速回転時（ω：大）であれば、発生トルクの大きさによらず、常に負方向に大きな無効電流Ｉｄが流されていることになる。ところで、高速回転時であっても、モータにかかる負荷が小さいときは、発生トルクが小さくて済み、有効電流Ｉｑ（∝発生トルク）を小さくできる。すると、同図９において、駆動電圧ベクトルＲ・Ｉｑを短くできるから、たとえ、逆起電力Ｅ＝ω・Φが大きくても、また、無効電流Ｉｄに基づく相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜が小さくても、これらの合成ベクトルとしての電機子電圧ベクトルをリンク電圧円内に留めることが可能である。したがって、このとき負方向に大きな無効電流Ｉｄを流す必要はない。
しかし、特許文献１においては、このような場合も依然として負方向に大きな無効電流Ｉｄを流し続けている。このように無駄な電流を流し続けることは、本来発生させずにすんだはずの余分な熱を発生させ続けることになるので、モータの保守管理上追加的な補償措置を講ずる必要が生じたり、また、モータのエネルギー効率が悪化したり、といった、様々な問題が生じる。
【０００８】
本発明は、以上の問題に鑑みてなされたもので、モータにおける発生トルクに応じて無効電流Ｉｄの値を制御することによって、余分な熱の発生を抑え、かつ、効果的に電圧飽和の発生を防止できる電流制御方法、および、この電流制御方法を実施するための構成を備えるサーボモータを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の電流制御方法は、多相の電機子巻線を有する電機子と、界磁とを備え、前記各相の電機子巻線に電機子電流を流すことによって電機子磁束を発生させ、この電機子磁束と前記界磁による界磁束との間の相互作用に基づいて前記電機子と前記界磁とを相対回転運動させることにより回転動力を発生するサーボモータにおいて、電圧飽和が発生することを防止すべく、ｄ軸方向を前記界磁束の方向とするｄｑ変換を施した前記電機子に負のｄ軸電流Ｉｄを流す電流制御方法であって、前記電機子と前記界磁との相対回転速度が一定の条件下においては、前記ｄ軸電流Ｉｄが、前記ｑ軸電流の大きさ｜Ｉｑ｜に応じて負方向へ増加することを特徴とする。
【００１０】
前記の通り、サーボモータにおける発生トルクＴはｑ軸電流Ｉｑに比例する。より具体的には、Ｔ∝Φ・Ｉｑ、で表される。ここで、Φは電機子巻線に鎖交する総磁束として前記したものと同一のものである。
さて、Ｔ∝Ｉｑということは、絶対値の大きなトルクＴを発生させようとすると、絶対値の大きなＩｑを流す必要があることを意味する。Ｉｑの絶対値を大きくすると、駆動電圧ベクトルＲ・Ｉｑが長くなるので、電機子電圧ベクトルをリンク電圧円内に留めるため、負方向に大きな無効電流Ｉｄを流すことによって、駆動電圧ベクトルＲ・Ｉｑと逆向きの大きな相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜を生成させる必要がある。
逆に、低負荷時など、発生トルクＴの絶対値が小さくてよいときは、絶対値の小さいＩｑで済み、駆動電圧ベクトルＲ・Ｉｑを短くできるから、相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜を生成するための無効電流Ｉｄの負方向への大きさを小さくできる。
【００１１】
したがって、発生トルクの絶対値が大きく｜Ｉｑ｜が大きいときは、Ｉｄを負方向に大きくする必要があり、逆に、発生トルクの絶対値が小さく｜Ｉｑ｜が小さいときＩｄの負方向への大きさは小さくて済む。
本発明では、このようなＩｄと｜Ｉｑ｜との関係を実現するべく、電機子と界磁との相対回転速度が一定の条件下においては、Ｉｄが｜Ｉｑ｜に応じて負方向へ増加するようにしている。
この発明によれば、低負荷時など｜Ｉｑ｜が小さいときには、Ｉｄの負方向への大きさを小さく抑え、無駄な無効電流Ｉｄが流されるのを防止できる。そのため、無駄な無効電流Ｉｄに起因する余分な熱の発生を効果的に抑制できるから、モータ保守管理上の追加的な補償措置が不要になってモータの構成を簡素化できるとともに、モータを安価に製造でき、また、モータのエネルギー効率を向上させることができる。
【００１２】
本発明では、Ｉ２＝Ｉｄ２＋Ｉｑ２、で表される前記電機子を流れる総電流Ｉの絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限することが好ましい。
【００１３】
電機子の総電流Ｉの絶対値｜Ｉ｜が所定の許容電流値Ｉｍａｘを超えてしまうと、電機子に過度の負担がかかるため、異常な発熱が生じたり、最悪の場合、サーボモータが破損してしまったりするおそれがある。
本発明では、この問題を解決すべく、｜Ｉ｜がＩｍａｘを超えないように制限することとしている。したがって、常に、｜Ｉ｜≦Ｉｍａｘ、の状態を維持できるから、電機子に過度の電流が流れるのを抑止でき、サーボモータの破損を防止できる。
【００１４】
また、本発明では、前記Ｉｄと前記Ｉｑとは、前記電機子を流れる総電流Ｉ、および、０°≦θ＜９０°を満たす位相角θに対して、Ｉｄ＝−｜Ｉ｜・ｓｉｎθ、Ｉｑ＝Ｉ・ｃｏｓθ、の関係を満足するように規定され、前記位相角θは、前記電機子と前記界磁との相対回転の速さについての増加関数として規定されることが好ましい。
【００１５】
電機子と界磁との相対回転の速さωが大きくなると、電機子に絶対値の大きな逆起電力ω・Φが生じるが、それと同時に、本発明では、速さωについての増加関数θが大きくなって、無効電流Ｉｄ（＝−｜Ｉ｜・ｓｉｎθ）が負方向へ大きくなる。前記の通り、負方向へ大きな無効電流Ｉｄは、逆起電力ベクトルω・Φと逆向きの大きな相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜を生成し、大きな逆起電力を相殺する。したがって、電圧飽和の発生を防止でき、サーボモータにおけるサーボ制御を適切に行うことができる。
【００１６】
なお、相対回転速度ωが一定の条件下においては、前記のようにＩｄが｜Ｉｑ｜に応じて負方向へ増加するように、θの関数形が決定されているものとする。
簡単な例として、θがωのみの関数であるとすれば、ωが一定のときはθが一意的に決定され、Ｉｄ＝−｜Ｉ｜・ｓｉｎθ、｜Ｉｑ｜＝｜Ｉ｜・ｃｏｓθ、は共に｜Ｉ｜のみの関数となるので、｜Ｉｑ｜を増大させるために｜Ｉ｜を増大させれば、それに応じてＩｄが負方向へ増加され、結果的に、Ｉｄが｜Ｉｑ｜に応じて負方向へ増加するように構成されることになる。
また、別の例として、θがωのみならずＩｑ（∝トルクＴ）の関数θ（ω、Ｉｑ）として構成されるときは、ωを一定にしてもθはＩｑの関数として変化される。このときは、ω一定の下、Ｉｄが｜Ｉｑ｜に応じて負方向へ増加するように、Ｉｑに対するθ（ω、Ｉｑ）の関数形が調整されることになる。
【００１７】
また、本発明では、前記Ｉｄと前記Ｉｑとは、０°≦θ＜９０°を満たす位相角θに対して、Ｉｄ＝−｜Ｉｑ｜・ｔａｎθの関係を満足するように規定され、前記位相角θは、前記電機子と前記界磁との相対回転の速さについての増加関数として規定される構成を採用してもよい。
【００１８】
この構成においても、相対回転の速さωが大きくなると、θが大きくなり、無効電流Ｉｄ（＝−｜Ｉｑ｜・ｔａｎθ）が負方向へ大きくなるから、大きな相殺電圧ベクトルが生成される。したがって、速さωが大きくなって大きな逆起電力が生じても、これを相殺でき、電圧飽和の発生を効果的に防止できる。
【００１９】
なお、相対回転速度ωが一定の条件下においては、Ｉｄが｜Ｉｑ｜に応じて負方向へ増加するように、θの関数形が決定されているものとする。このとき、θはωのみの１変数関数でも、ωおよびＩｑの２変数関数でも、または、それ以上の多変数関数でもよい。特に、θがωのみの１変数関数のときは、ωが一定の条件下ではθが一定であり、Ｉｄ＝−｜Ｉｑ｜・ｔａｎθ、は自動的に｜Ｉｑ｜に応じて負方向へ増加する。
【００２０】
続いて、以上の電流制御方法を実現するための構成を備える本発明のサーボモータについて説明する。
【００２１】
本発明のサーボモータは、多相の電機子巻線を有する電機子と、界磁とを備え、前記各相の電機子巻線に電機子電流を流すことによって電機子磁束を発生させ、この電機子磁束と前記界磁による界磁束との間の相互作用に基づいて前記電機子と前記界磁とを相対回転運動させることにより回転動力を発生するサーボモータにおいて、ｄ軸方向を前記界磁束の方向とするｄｑ変換を施した前記電機子に対する電流指令として、トルクを発生させるためのｑ軸電流指令Ｉｑ＊と、電圧飽和の発生を防止するための負のｄ軸電流指令Ｉｄ＊とを出力する電流指令器を備え、前記電機子と前記界磁との相対回転速度が一定の条件下においては、前記ｄ軸電流指令Ｉｄ＊が、前記ｑ軸電流指令の大きさ｜Ｉｑ＊｜に応じて負方向へ増加するように出力されることを特徴とする。
【００２２】
電機子と界磁との相対回転速度ωが一定の条件下においては、Ｉｄ＊が｜Ｉｑ＊｜に応じて負方向へ増加するように出力されるので、低負荷時など、｜Ｉｑ＊｜（∝｜Ｔ＊｜：但し、Ｔ＊はトルク指令）が小さいときには、Ｉｄ＊の負方向への大きさも小さくなっており、無駄な無効電流Ｉｄが電機子に流されるのを的確に防止できる。そのため、無駄な無効電流Ｉｄに起因する余分な熱の発生を効果的に抑制できるから、モータ保守管理上の追加的な補償措置が不要になってサーボモータの構成を簡素化できるとともに、サーボモータを安価に製造でき、また、サーボモータのエネルギー効率を向上させることができる。
【００２３】
本発明では、前記電流指令器は、前記電機子の総電流指令Ｉ＊を出力する総電流指令器と、Ｉ＊２＝Ｉｄ＊２＋Ｉｑ＊２、の関係を満足するように、前記Ｉ＊から前記Ｉｄ＊および前記Ｉｑ＊を演算し出力するｄｑ電流指令器とを備え、前記総電流指令器は、前記Ｉ＊の絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限するリミッタを備えて構成されることが好ましい。
【００２４】
この構成によれば、リミッタによって、電機子の総電流指令Ｉ＊の絶対値｜Ｉ＊｜が、常に、電機子における許容電流値Ｉｍａｘ以下に制限されるので、この電流指令Ｉ＊に基づいて電機子に流される総電流Ｉの絶対値｜Ｉ｜がＩｍａｘを超えることがなくなる。そのため、電機子に過度の電流が流れるのを的確に抑止でき、サーボモータの破損を防止できる。
【００２５】
また、本発明では、前記相対回転運動の速さを測定する速度センサが設けられ、前記電流指令器は、前記電機子の総電流指令Ｉ＊を出力する総電流指令器と、前記速度センサで測定された速さから、この速さについての増加関数として、０°≦θ＜９０°を満たす位相角θを演算し、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ、Ｉｑ＊＝Ｉ＊・ｃｏｓθ、の関係を満足するように、前記Ｉ＊から前記Ｉｄ＊および前記Ｉｑ＊を演算して出力するｄｑ電流指令器とを備えて構成されることが好ましい。
【００２６】
この構成において、ｄｑ電流指令器は、速度センサで測定された回転速さωから位相角θを演算し、このθと、総電流指令器から入力される総電流指令Ｉ＊とに基づいて、Ｉｄ＊とＩｑ＊とを演算する。
速さωが大きくなると、電機子に大きな逆起電力ω・Φが生じるが、それと同時に、本発明では、速さωについての増加関数としてのθが大きくなって、無効電流指令Ｉｄ＊（＝−｜Ｉ＊｜・ｓｉｎθ）が負方向へ大きくなる。この無効電流指令Ｉｄ＊に基づいて電機子に流される負方向へ大きな無効電流Ｉｄは、前記の通り、逆起電力ベクトルω・Φと逆向きの大きな相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜を生成し、大きな逆起電力を相殺する。したがって、本発明によれば、電圧飽和の発生を防止でき、サーボモータにおけるサーボ制御を適切に行うことができる。
【００２７】
また、本発明では、前記相対回転運動の速さを測定する速度センサが設けられ、前記電流指令器は、暫定電流指令Ｉ＊を出力する暫定電流指令器と、前記速度センサで測定された速さから、この速さについての増加関数として、０°≦θ＜９０°を満たす位相角θを演算し、前記Ｉ＊に対して、Ｉｄ＊＝−｜Ｉ＊｜・ｔａｎθ、Ｉｑ＊＝Ｉ＊、の関係を満足する前記Ｉｄ＊、前記Ｉｑ＊を演算して出力するｄｑ電流指令器とを備えて構成されていてもよい。
【００２８】
この構成においても、回転速さωが大きくなると、ωの増加関数としてのθが大きくなり、無効電流指令Ｉｄ＊（＝−｜Ｉ＊｜・ｔａｎθ）が負方向へ大きくなるから、これに基づいて電機子に流される無効電流Ｉｄによって逆起電力と逆向きの大きな相殺電圧ベクトルが生成される。したがって、速さωが大きくなって大きな逆起電力が生じても、これを相殺でき、電圧飽和の発生を防止できる。
【００２９】
また、前記電流指令器は、Ｉｓ＊２＝Ｉｄ＊２＋Ｉｑ＊２＝Ｉ＊２・（１＋ｔａｎ２θ）、で表される前記電機子の総電流指令Ｉｓ＊の絶対値が、前記電機子における許容電流値Ｉｍａｘを超えないように制限するリミッタを備えて構成されることが好ましい。
【００３０】
この構成によれば、リミッタによって、電機子の総電流指令の絶対値｜Ｉｓ＊｜が、常に、電機子における許容電流値Ｉｍａｘ以下に制限されるので、この総電流指令Ｉｓ＊に基づいて電機子に流される総電流Ｉｓ（但し、Ｉｓ２＝Ｉｄ２＋Ｉｑ２）の絶対値｜Ｉｓ｜がＩｍａｘを超えることがなくなる。そのため、電機子に過度の電流が流れるのを的確に抑止でき、サーボモータの破損を防止できる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施形態を図面に基づいて説明する。
＜第１実施形態＞
図１は、本発明の第１実施形態にかかるサーボモータ１の等価回路図である。
サーボモータ１は、永久磁石によって構成される界磁１１と、３相（ｕ、ｖ、ｗ相）の電機子巻線を有する電機子１２とを備える３相同期モータである。界磁１１は、ロータとして回転可能に設けられている。ステータとしての電機子１２の各相に、互いに位相が１２０°ずつ異なる交流電流（電機子電流）を流すと、この交流電流と同一の周波数で回転する電機子磁束を発生できる。界磁１１は、この回転電機子磁束に対して自身の界磁束を平行にしようとする磁気的な力を受けるので、回転電機子磁束に追従して回転される（回転角度ψ、回転角速度ω＝ｄψ／ｄｔ。以下、特に断らない限りω≧０、と仮定する）。このようにして、サーボモータ１において回転動力が発生される。
なお、図１において、Ｖｕ、Ｖｖ、Ｖｗは電機子１２各相の電機子電圧、Ｒは各相共通の抵抗値、Ｌ´は各相共通の自己インダクタンス、Ｍ´は各相間の相互インダクタンスである。また、界磁１１の回転角度ψは、界磁束の方向（界磁１１のＮ極とＳ極とを結ぶ方向）が、電機子１２のｕ相の形成方向に対してなす角度として定義される。
【００３２】
図１のサーボモータ１に対してｄｑ変換を施すと、図２の等価回路が得られる。
図２において、ｄ軸は界磁束の方向と一致され、これと直交する方向にｑ軸が形成される。図１における３相（ｕ、ｖ、ｗ相）の電機子巻線は、ｄ相とｑ相とからなる２相の電機子巻線に変換されている。
この図において、Ｖｄ、Ｖｑは各相の電機子電圧、Ｉｄ、Ｉｑは各相の電機子電流、Ｒは各相共通の抵抗値、Ｌは各相共通の自己インダクタンス、Φは各相電機子巻線に鎖交する総磁束である。これらの各量は、同期モータに関して一般に知られている以下の数１に表される回路方程式を満たす。
【００３３】
【数１】
2006074933.tif 000003
【００３４】
ここで、Ｐは微分演算子ｄ／ｄｔである。この式の右辺の第２項は、ｄｑ各相の巻線に誘起される逆起電力を示している。したがって、Φによる逆起電力ω・Φは、ｑ相巻線のみに誘起されることがわかる。
【００３５】
図２において、サーボモータ１の回転トルクＴを発生させるのは、ｄ軸方向の界磁束と直交するｑ軸電流Ｉｑである。具体的には、Ｔ∝Φ・Ｉｑ、である。これに対してｄ軸電流Ｉｄは、トルクＴの発生に関与しない無効電流である。しかし、特許文献１に開示されているように、負の無効電流Ｉｄを流すと、逆起電力を相殺する相殺電圧成分を発生でき、サーボモータ１における電圧飽和の発生を防止できる。
【００３６】
図３は、図１および図２に示すサーボモータ１におけるフィードバック制御ブロック線図である。
位置指令器２１は、所定のパートプログラム等に従ってサーボモータ１の回転角度（界磁１１の回転角度ψ）の指令値ψ＊を出力する。角度指令ψ＊は、位置比較器２２において、位置センサ３１で測定された実際の回転角度ψと比較され、両者の角度偏差Δψ＝ψ＊―ψが位置制御器２３に入力される。速度指令器としての位置制御器２３は、Δψに基づいて所定の演算を行い、サーボモータ１の回転速度の指令値ω＊を算出し、出力する。速度指令ω＊は、速度比較器２４において、速度センサ３２で測定された実際の回転速度ωと比較され、両者の速度偏差Δω＝ω＊―ωが速度制御器２５に入力される。本発明の総電流指令器としての速度制御器２５は、Δωに基づいて所定の演算を行い、サーボモータ１の電機子１２における総電流の指令値Ｉ＊を算出し、出力する。総電流指令Ｉ＊は、そのまま、演算器２６に入力される。なお、速度制御器２５は、リミッタ２５１を備えて構成されている。後で詳しく述べるように、リミッタ２５１は予め設定された総電流指令の上限値Ｉ＊ｍａｘに基づいて総電流指令Ｉ＊を監視し、総電流指令の絶対値｜Ｉ＊｜がＩ＊ｍａｘを上回らないように制限する役割を果たす。
【００３７】
さて、演算器２６は、速度センサ３２で測定された速さωに基づいてｄｑ電流位相角θを算出する。ここで、θは、ωについての１変数関数θ（ω）として定義されており、演算器２６には、このθの関数形が予め記憶されているものとする。演算器２６は、速度センサ３２から入力されたωを関数θ（ω）に代入し、その演算結果をｄｑ電流位相角度として算出する。なお、後で詳しく述べるように、関数θ（ω）は、速さωについては増加関数として変化される。また、０°≦θ（ω）＜９０°、である。
【００３８】
本発明のｄｑ電流指令器としての演算器２６は、以上のように算出された位相角θと、速度制御器２５から入力された総電流指令Ｉ＊とに基づいて、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ、Ｉｑ＊＝Ｉ＊・ｃｏｓθ、で表されるｄ軸電流指令Ｉｄ＊とｑ軸電流指令Ｉｑ＊とを演算し、出力する。Ｉ＊、Ｉｄ＊、Ｉｑ＊の間にはＩ＊２＝Ｉｄ＊２＋Ｉｑ＊２、の関係式が成立している。
なお、速度制御器２５および演算器２６は、速度偏差Δωから電機子１２の電流指令を演算して出力する、本発明の電流指令器を構成している。
【００３９】
ｄｑ各軸電流指令Ｉｄ＊、Ｉｑ＊は、それぞれ、ｄｑ各軸電流比較器２７ｄ、２７ｑにおいて、サーボモータ１における実際のｄｑ各軸電流Ｉｄ、Ｉｑと比較され、ｄｑ各軸電流偏差ΔＩｄ＝Ｉｄ＊―Ｉｄ、ΔＩｑ＝Ｉｑ＊―Ｉｑが電流制御器２８に入力される。ここで、電流比較器２７ｄ、２７ｑに入力されるｄｑ各軸電流Ｉｄ、Ｉｑは、３相サーボモータ１（ｄｑ変換前：図１参照）の各相の電流Ｉｕ、Ｉｖ、Ｉｗを各相ごとの電流センサ３３ｕ、３３ｖ、３３ｗによって測定し、これらを３相／２相変換器３４で２相のｄｑ軸電流Ｉｄ、Ｉｑに変換することによって得られたものである。
【００４０】
さて、ｄｑ各軸電流偏差ΔＩｄ、ΔＩｑが入力された電流制御器２８は、これらに基づいて所定の演算を行い、ｄｑ各軸電圧Ｖｄ、Ｖｑを算出して、出力する。
２相／３相変換器２９は、このＶｄ、Ｖｑの入力を基に演算を行い、算出された３相電圧Ｖｕ、Ｖｖ、Ｖｗを電力変換器３０に出力する。
電力変換器３０は、図示しない電源装置を介して、３相電圧Ｖｕ、Ｖｖ、Ｖｗに対応する３相電流Ｉｕ、Ｉｖ、Ｉｗを出力し、サーボモータ１の電機子１２のｕ、ｖ、ｗの各相に流す。
【００４１】
サーボモータ１は、以上の構成を備えるフィードバックループによって、その位置、速度、電流が、適切に制御されるようになっている。なお、速度センサ３２で回転速度ωを検出する代わりに、位置センサ３１における検出位置ψのサンプリング周期ごとの差分を用いて回転速度ωを算出してもよい。
【００４２】
続いて、図４を用いて、本実施形態における電流制御方法について詳しく説明する。なお、以下の電流制御方法を具体的に実現するのは、主として、図３における速度制御器２５、演算器２６である。
【００４３】
図４は、速度制御器２５から出力される総電流指令Ｉ＊を一定とした場合における、ｑ軸電流指令Ｉｑ＊および位相角θの、モータ回転速度ωに対する変化の様子を示した図である。ここで、Ｉ＊を一定とする仮定は、図３において、速度偏差Δωを一定とする仮定と同等である。実際のサーボ制御状態ではΔωは時々刻々と変動するので、このような仮定が成り立つのは非常に稀な場合に限られることに注意すべきである。したがって、以上の仮定は、あくまで説明の簡素化のために便宜上設定されるものにすぎない。なお、図４では、本実施形態の効果をよりよく示すために、Ｉ＊≧０、ω≧０、の場合を示す。
【００４４】
図４（Ａ）は、縦軸をＩｑ＊、横軸を回転速度ωとして表したグラフである。前記の通り、Ｉｑ＊はモータのトルク指令Ｔ＊と比例関係（Ｔ＊∝Φ・Ｉｑ＊）にあるので、縦軸をトルク指令Ｔ＊と見ることもできる。図４（Ａ）に示される各曲線Ｃ１、Ｃ２は、互いに異なる総電流指令Ｉ１＊、Ｉ２＊（Ｉ１＊＞Ｉ２＊）について表されたものである。
【００４５】
図４（Ｂ）は、縦軸を位相角θ、横軸を回転速度ωとして表した図である。この図は、演算器２６に予め記憶されているθの関数形θ（ω）を表すものと見ることができる。
０≦ω≦ωｉ、の範囲では、θ（ω）＝０である。ｄ軸電流制御開始速度ωｉは、無効電流Ｉｄを流し始める時点の回転速度であり、電圧飽和を効果的に抑制する観点から最適な値が予め設定されているものとする。
ωｉ≦ω≦ωｆ、の範囲では、θ（ω）は直線的に増加する。ω＝ωｆのときのθ（ω）をθｆとすると、具体的な表式は、θ（ω）＝θｆ＋θｆ・（ω−ωｆ）／（ωｆ−ωｉ）、である。図４（Ｂｉ）、（Ｂａ）、（Ｂｆ）は、それぞれ、ω＝ωｉ、ωａ（任意の値）、ωｆのときの、Ｉ＊（Ｉ１＊またはＩ２＊）、Ｉｄ＊、Ｉｑ＊の関係を示すベクトル図である。これらの各図において、位相角θはθｉ（＝０）、θａ、θｆ、として表示されている。
以上のように、位相角θ（ω）は、０≦ω≦ωｆ、の領域内において、回転速度（速さ）ωについての増加関数として規定されていることがわかる。
【００４６】
回転速度ωを０から徐々に増やしていく場合を考える。０≦ω≦ωｉ、の範囲では、θ＝０であるから、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ＝０、Ｉｑ＊＝Ｉ＊・ｃｏｓθ＝Ｉ＊、である。従って、演算器２６から出力される電流指令はｑ軸方向のみであり、このとき、サーボモータ１に無効電流Ｉｄは流されていないことになる。これは、回転速度ωが小さい領域であれば、前記数１における逆起電力ω・Φが小さいので、無効電流Ｉｄを流さなくとも電圧飽和が起こらないからである。
【００４７】
ωが大きくなっていき、ωｉ≦ω≦ωｆ、の範囲内に入ると、θ（ω）≠０（＞０）となり、ｄ軸電流制御が行われる。すなわち、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ＝−Ｉ＊・ｓｉｎθ、Ｉｑ＊＝Ｉ＊・ｃｏｓθ、を満たすｄｑ各軸電流指令に基づいて、ｄｑ各軸電流Ｉｄ、Ｉｑが電機子１２に流されるようになる。無効電流Ｉｄは、前記の相殺電圧ベクトル−ω・Ｌ・｜Ｉｄ｜を生成し、逆起電力ベクトルω・Φを相殺して、電圧飽和の発生を防止する。特に、位相角θが回転速度ωについての増加関数として規定されているので、ωが大きくなると無効電流指令Ｉｄ＊（＝−｜Ｉ＊｜・ｓｉｎθ）が負方向へ大きくなり、負方向へ大きな無効電流Ｉｄが流される。ωが大きいときは逆起電力ベクトルが大きくなっているが、それと同時に、負方向へ大きな無効電流Ｉｄに基づく大きな相殺電圧ベクトルが生成されていることになるので、電圧飽和の発生が効果的に防止される。
【００４８】
続いて、回転速度ωを、ωｉ≦ω≦ωｆ、内の任意の一つの値ωａに固定した条件下でのｄｑ各軸電流指令Ｉｄ＊、Ｉｑ＊について説明する。ωがωａに固定されているので、ωの１変数関数としての位相角θは一義的に決まっており、前記条件下では一定の値θａを有する。
図４（Ｃ１）は、Ｉ＊＝Ｉ１＊（曲線Ｃ１）、ω＝ωａのときの、ｄｑ各軸電流指令Ｉｄ１＊とＩｑ１＊とを示す図、図４（Ｃ２）は、Ｉ＊＝Ｉ２＊（曲線Ｃ２）、ω＝ωａのときの、ｄｑ各軸電流指令Ｉｄ２＊とＩｑ２＊とを示す図である。ここで、Ｉｄｉ＊＝−｜Ｉｉ＊｜・ｓｉｎθ＝−Ｉｉ＊・ｓｉｎθ＜０：−ｄ軸方向、である（ｉ＝１、２）。
図４（Ｃ１）、（Ｃ２）において、回転速度はωａで共通だから、位相角θａも共通である。そのため、Ｉｄｉ＊（＝−Ｉｉ＊・ｓｉｎθａ）、｜Ｉｑｉ＊｜（＝Ｉｉ＊・ｃｏｓθａ）は、総電流指令Ｉｉ＊によって決定される。ここで、Ｉ１＊＞Ｉ２＊だから、−Ｉｄ１＊＞−Ｉｄ２＊、かつ、｜Ｉｑ１＊｜＞｜Ｉｑ２＊｜、である。したがって、回転速度ωが一定（＝ωａ）の条件下においては、Ｉｄ＊が｜Ｉｑ＊｜に応じて負方向へ増加していることがわかる。このことは、前記の各式から得られる、Ｉｄ＊＝−｜Ｉｑ＊｜・ｔａｎθａ、という表式からも容易に理解される（∵θａ＝一定）。
【００４９】
前に詳しく述べたように、低負荷時などＩｑ（∝Ｔ）が小さいときには、前記駆動電圧ベクトルＲ・Ｉｑが小さいから、電圧飽和を防止するために負方向に大きな無効電流Ｉｄを流す必要はない。本実施形態では、Ｉｄ＊が｜Ｉｑ＊｜に応じて負方向へ増加する（ω一定の条件下）ので、｜Ｉｑ＊｜が小さいときにはＩｄ＊の負方向への大きさを小さくでき、無駄な無効電流Ｉｄが流されるのを防止できる。そのため、無駄な無効電流Ｉｄに起因する余分な熱の発生を効果的に抑制できるから、サーボモータ１保守管理上の追加的な補償措置が不要になってサーボモータ１の構成を簡素化できるとともに、サーボモータ１を安価に製造でき、また、サーボモータ１のエネルギー効率を向上させることができる。
なお、図４においては、Ｉ＊≧０、ω≧０、として説明をしたが、以上の説明は、図４とはモータ１の回転状態が正反対の場合、すなわち、Ｉ＊≦０、ω≦０の場合にほとんどそのまま適用できる。
【００５０】
さて、図５は、無負荷時（トルクＴ≒０）の電流変化を、本実施形態のサーボモータ１と、特許文献１のサーボモータとについて示した図である。この図では、ω＝４０００［ｒｐｍ］の時点で、いずれのサーボモータについてもｄ軸電流制御が開始されている。容易に読み取れるように、ｄ軸電流制御開始後は、特許文献１のサーボモータにおける電機子電流が急激に増大している。これは、無負荷時ゆえ無効電流を流す必要が無いにもかかわらず、回転速度ωに応じて一意的に定まる無効電流（∝ω）を流しているからである。一方、本実施形態のサーボモータ１では、ｄ軸電流制御開始後（ω≧４０００［ｒｐｍ］）も電機子電流に変化が見られない。これは、無負荷のためトルクを発生させる必要がないので、速度制御器２５からの総電流指令Ｉ＊が略０になり、その結果、Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθ≒０、となり、電機子１２には無効電流Ｉｄが流れないからである。
【００５１】
図５は、無負荷時（トルクＴ≒０）という極端な場合について示すものであるが、この図から、低負荷時における電機子電流の様子も容易に類推できる。なお、トルク発生のためのｑ軸電流Ｉｑの大きさは両サーボモータでほとんど同じなので、両サーボモータの比較においては、この影響を無視して考える。
さて、特許文献１のサーボモータでは、負荷の高低によらず回転速度ωによって一意的に決まる無効電流Ｉｄが流されるから、電機子電流の変化の様子は無負荷時の図５とほとんど同じである（厳密に言えば、ｑ軸電流Ｉｑの分だけ「底上げ」されている）。
一方、本実施形態のサーボモータ１では、発生トルクに応じた大きさの総電流指令Ｉ＊に基づいて無効電流指令Ｉｄ＊＝−｜Ｉ＊｜・ｓｉｎθが演算器２６で演算され、これに応じて無効電流Ｉｄが電機子１２に流される。低負荷時ではＩ＊の絶対値が比較的小さな値として出力されるので、流される無効電流Ｉｄの負方向への大きさは、特許文献１におけるＩｄの負方向への大きさよりも小さくなる。なぜなら、特許文献１における無効電流Ｉｄは、高負荷時においても電圧飽和の発生を防止できるようにするため、比較的大きな負方向への大きさをもつものとして設定されているからである。
【００５２】
以上のように、本実施形態のサーボモータ１によれば、従来の特許文献１記載のサーボモータに比べて、低負荷時（無負荷時含む）の電機子電流を小さくすることができ、余分な熱の発生を防止することができる。
【００５３】
なお、図４（Ａ）において、ωｉ≦ω≦ωｆ、の領域でＩｑ＊（＝Ｉ＊・ｃｏｓθ）は、因子ｃｏｓθによって単調に減少していく。これはサーボモータ１におけるトルク指令Ｔ＊が減少していくことを意味するから、一見、モータの高速回転時（ω≧ωｉ）においては発生されるトルクＴが小さくなってしまうように見える。しかし、これは図４（Ａ）が総電流指令Ｉ＊を一定とする仮想的条件の下で表されているためであって、総電流指令Ｉ＊が変動する実際のサーボ制御においては、以下に説明するように、発生トルクＴの減少という問題は生じない。
【００５４】
回転速度ωがωｉよりも大きくなって、ｄ軸電流制御が開始されると、図４（Ａ）に示されるように、トルク指令Ｔ＊（∝Ｉｑ＊）が一時的に減少する。すると、サーボモータ１における発生トルクＴが一時的に減少し、それに応じて、例えば、回転速度ωが一時的に減少する。これは、図３において速度比較器２４に入力されるωが小さくなることを意味するので、速度比較器２４から出力される速度偏差Δω（＝ω＊―ω）は大きくなる。図３において、速度制御器２５は、増加したΔωを基に、より大きな総電流指令Ｉ＊を演算して、出力する。すると、増加したＩ＊を基に演算されるｑ軸電流指令Ｉｑ＊（∝Ｔ＊）も大きくなり、トルク指令Ｔ＊が大きくなる。これによって、発生トルクＴが大きくなるから、前記のように一時的に減少した回転速度ωもほとんど元の大きさに回復される。また、トルク指令Ｔ＊の増加分は、前記したトルク指令Ｔ＊の一時的な減少分を相殺するので、結果的に、モータの高速回転時、ｄ軸電流制御が行われている状況下におけるトルク指令Ｔ＊の減少を抑制できる。
【００５５】
さて、Ｉ＊２＝Ｉｄ＊２＋Ｉｑ＊２、で表される総電流指令Ｉ＊は、Ｉ２＝Ｉｄ２＋Ｉｑ２、で表される電機子総電流Ｉを指令するものである。総電流指令Ｉ＊は、図３に示されるように、速度制御器２５において速度偏差Δωから算出され、演算器２６に出力されるようになっているが、その際、リミッタ２５１の作用により、｜Ｉ＊｜が上限値Ｉ＊ｍａｘを上回らないようになっている。ここで、上限値Ｉ＊ｍａｘは、電機子１２における総電流の最大許容量Ｉｍａｘと同一の値として設定されている。そのため、仮に｜Ｉ＊｜＞Ｉ＊ｍａｘとなるようなことがあると、電機子には最大許容量Ｉｍａｘを超えた総電流Ｉが流れてしまうことになり、異常発熱や、モータ破損の原因になる。本実施形態では、リミッタ２５１が常に、｜Ｉ＊｜≦Ｉ＊ｍａｘ、であるようにＩ＊を制限する。これによって、電機子１２にＩｍａｘを超える総電流が流れることがなくなるから、異常発熱、モータ破損等を的確に防止できる。
より具体的に説明すると、速度制御器２５で算出された総電流指令Ｉ＊の絶対値がＩ＊ｍａｘを超えているとき、リミッタ２５１は、このＩ＊の代わりに、予め記憶された修正電流指令Ｉ＊ｒを演算器２６に出力する。ここで、Ｉ＊ｒは、｜Ｉ＊ｒ｜≦Ｉ＊ｍａｘ、を満たす任意の数値でよいが、モータにおける発生トルクＴを大きく保つ観点からは、その最大値、すなわち、｜Ｉ＊ｒ｜＝Ｉ＊ｍａｘ、とするのが最も好ましい。
【００５６】
ところで、従来、例えば特許文献１においては、回転速度ωについての１変数関数としてＩｄが規定されており、モータ負荷の高低を問わず、ωによって一意的に決定される無効電流Ｉｄが流されていた。しかし、低負荷時においては、高負荷時並の絶対値の大きな無効電流は流す必要がなく、かえって、電機子を流れる総電流が不必要に大きくなってしまうという問題が生じる。また、この総電流が大きくなって最大許容量を超えると、前記の通り、異常発熱等の問題も生じてしまう。
これに対して、本発明では、低負荷時には、無効電流Ｉｄの負方向への大きさを小さく抑えることとしているので、総電流Ｉも大きくならない。本実施形態では、前記のように、リミッタ２５１によって総電流Ｉの絶対値が最大許容量Ｉｍａｘを超えないように制限しているが、仮に、リミッタ２５１を設けなくても、特許文献１記載のサーボモータと比較して、低負荷時の総電流Ｉの絶対値を小さくできるので、｜Ｉ｜が最大許容量Ｉｍａｘを超える可能性が低くなり、サーボモータ１の低負荷時運転を安全に行うことが可能になる。
【００５７】
＜第２実施形態＞
続いて本発明の第２実施形態について説明する。
以下、第１実施形態において既に説明した事項について重ねて説明することは避ける。そのため、第１実施形態における各構成要素と同一の、または、対応する各構成要素については、同一符号を付して、その説明を省略、または、簡略化する。
【００５８】
本実施形態では、図３におけるリミッタ２５１が設けられていない。リミッタ２５１が無いので、本発明の暫定電流指令器としての速度制御器２５からの暫定電流指令Ｉ＊は、そのまま、演算器２６に入力される。なお、第１実施形態では、Ｉ＊の呼称を「『総』電流指令」としていたが、本実施形態では、後述するように、Ｉ＊は電機子１２の総電流を指令するものではないので、『総』の代わりに『暫定』を付して「暫定電流指令」を、その称呼とする。ここで、『暫定』を付したのは、Ｉ＊が、電機子１２に対する直接の電流指令であるＩｄ＊、Ｉｑ＊を生成するための前段階の暫定的な電流指令であることを考慮したためである。
演算器２６では、速度センサ３２で測定された回転速度ωに基づいてｄｑ電流位相角θが予め算出されている。なお、θは、ωについての１変数関数θ（ω）として定義されており、その関数形は、図４（Ｂ）に示したものと同じである。
演算器２６は、この位相角θと、速度制御器２５から入力された暫定電流指令Ｉ＊とに基づいて、Ｉｄ＊＝−｜Ｉ＊｜・ｔａｎθ、Ｉｑ＊＝Ｉ＊、で表されるｄ軸電流指令Ｉｄ＊とｑ軸電流指令Ｉｑ＊とを演算する。
【００５９】
演算器２６には、Ｉｓ＊２＝Ｉｄ＊２＋Ｉｑ＊２＝Ｉ＊２・（１＋ｔａｎ２θ）、で表される総電流指令Ｉｓ＊（≠Ｉ＊）の絶対値が、上限値Ｉｓ＊ｍａｘを上回らないように制限するリミッタ２６１（図示せず）が設けられている。ここで上限値Ｉｓ＊ｍａｘは、第１実施形態の上限値Ｉ＊ｍａｘと同一の値であり、電機子１２における総電流の最大許容量Ｉｍａｘと等しい。
【００６０】
リミッタ２６１は、演算されたＩｄ＊とＩｑ＊とを基にＩｓ＊を算出して、その絶対値｜Ｉｓ＊｜をＩｓ＊ｍａｘと比較する。
｜Ｉｓ＊｜≦Ｉｓ＊ｍａｘ、のとき、リミッタ２６１は、ｄｑ各軸電流指令Ｉｄ＊、Ｉｑ＊を適正であると判定し、これをそのまま、ｄｑ各軸電流比較器２７ｄ、２７ｑに出力する。
一方、｜Ｉｓ＊｜＞Ｉｓ＊ｍａｘのときは、このＩｓ＊を与えるＩｄ＊、Ｉｑ＊に基づくｄｑ各軸電流Ｉｄ、Ｉｑを電機子１２に流すと、総電流の絶対値｜Ｉｓ｜＞最大許容量Ｉｍａｘ、となってしまい、異常発熱等の問題が生じるので、リミッタ２６１は、このＩｄ＊、Ｉｑ＊を不適正と判定する。そこで、リミッタ２６１は、Ｉｄ＊＝−Ｉｓ＊ｍａｘ・ｓｉｎθ、Ｉｑ＊＝±Ｉｓ＊ｍａｘ・ｃｏｓθ、をｄｑ各軸の修正電流指令としてｄｑ各軸電流比較器２７ｄ、２７ｑに出力する。なお、Ｉｑ＊の式の右辺に付いている『±』は、モータ１で発生させるトルクの向きに応じて適宜Ｉｑ＊の符号を選択して出力することを意味する。また、このとき、Ｉｓ＊２＝Ｉｄ＊２＋Ｉｑ＊２＝Ｉｓ＊ｍａｘ２、である。
いずれの場合も、電機子１２を流れる総電流Ｉｓの絶対値が最大許容量Ｉｍａｘ以下の値となるので、異常発熱等が生じることなく、安全にサーボモータ１を運転できる。
【００６１】
続いて、図６を用いて、本実施形態における電流制御方法について説明する。
図６（Ａ）中、Ｃは、暫定電流指令Ｉ＊（＞０）一定とした条件下における、ｑ軸電流指令Ｉｑ＊の回転速度ω（＞０）に対する変化の様子を示すグラフである。本実施形態では、Ｉｑ＊＝Ｉ＊なので、Ｉ＊＝一定、の条件下では、Ｉｑ＊も一定である。これは、第１実施形態の図４（Ａ）において、ｄ軸電流制御が行われると（ωｉ≦ω≦ωｆ）Ｉｑ＊が減少していくのと相違する。
第１実施形態では、前に詳しく説明したように、ｄ軸電流制御状態でωが大きくなると、Ｉｑ＊およびＴ＊（∝Ｉｑ＊）が一時的に減少し、出力トルクＴが一時的に低下してしまうが、本実施形態ではＩｑ＊およびＴ＊が一定なので、トルクＴを安定して出力できる。
【００６２】
図６（Ｃ）にもよく示されるように、ｄ軸電流指令Ｉｄ＊は、Ｉｄ＊＝−｜Ｉ＊｜・ｔａｎθ＝−Ｉ＊・ｔａｎθ（≦０：−ｄ軸方向）、に従って出力される。ωが大きくなるにつれて（ωａ→ωｂ）θは大きくなっていくので（θａ→θｂ）、Ｉｄ＊は負方向へ大きくなっていく。ωが大きいと、電機子１２に生じる逆起電力も大きくなるが、それにつれて無効電流Ｉｄを負方向へ大きくできるので、電圧飽和の発生を効果的に防止できる。
【００６３】
なお、本発明は前述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
前記各実施形態では、回転速度ωについての関数θは、図４（Ｂ）に示される関数形を有していたが、本発明では、θは回転速さωについての増加関数であればよく、制御目的に合わせて所望の関数形を有するものを採用できる。例えば、θは、高速域（ω≧ωｉ：図４参照）に限らずωの全域（０≦ω≦ωｆ）にわたってθ≠０となるような関数であってもよいし、２次以上の関数であってもよいし、折れ線状の関数形を示すものであってもよいし、曲線状の関数形を示すものであってもよい。
【００６４】
また、前記各実施形態では、θはωについての１変数関数θ（ω）とされていたが、本発明では、θは、回転速さωについての増加関数でありさえすれば、ω以外の変数、例えば、ｑ軸電流ＩｑまたはトルクＴ、についても変化する多変数関数であってもよい。θを、例えば、ωとＴとについての２変数関数θ（ω、Ｔ）としたときは、速度センサ３２に加えて、Ｔを測定するトルクセンサを設ける必要がある。θ（ω、Ｔ）は、この両センサで測定されたω、Ｔが演算器２６に入力されることによって演算される。なお、このθ（ω、Ｔ）と、速度制御器２５から入力される電流指令Ｉ＊とから、ｄｑ各軸電流指令Ｉｄ＊、Ｉｑ＊が演算器２６によって算出されることになるが、このときのＩｄ＊が｜Ｉｑ＊｜に応じて負方向へ増加するように（ω一定の条件下）、θ（ω、Ｔ）のＴについての関数形を適切に設定する必要があることに注意すべきである。また、この例において変数Ｔの代わりにＩｑを第２変数とした場合、３相／２相変換器３４から出力されるＩｑを演算器２６にも入力することにすれば、演算器２６は、速度センサ３２からのωと合わせて、θ（ω、Ｉｑ）を算出できる。
【００６５】
また、前記各実施形態では、速度制御器２５は、速度偏差Δωのみを入力として電流指令Ｉ＊を演算して出力していたが、本発明では、速度制御器２５に、速度センサからの測定速度ωや、別途設けられるトルクセンサからの測定トルクや、３相／２相変換器３４からのＩｄやＩｑを入力することによって、これらの各測定量を考慮に入れた、より適切な電流指令Ｉ＊を演算し、出力させることにしてもよい。
【産業上の利用可能性】
【００６６】
本発明は、ＡＣサーボモータに利用できる。
【図面の簡単な説明】
【００６７】
【図１】本発明の第１実施形態にかかるサーボモータの等価回路図。
【図２】前記第１実施形態にかかるサーボモータに対してｄｑ変換を施して得られる等価回路図。
【図３】前記第１実施形態にかかるサーボモータにおけるフィードバック制御ブロック線図。
【図４】前記第１実施形態にかかるサーボモータにおいて、ｑ軸電流指令Ｉｑ＊および位相角θの、モータ回転速度ωに対する変化の様子を表した図。
【図５】無負荷時における電機子電流の変化を、前記第１実施形態にかかるサーボモータと、従来のサーボモータとついて示した図。
【図６】本発明の第２実施形態にかかるサーボモータにおいて、ｑ軸電流指令Ｉｑ＊および位相角θの、モータ回転速度ωに対する変化の様子を表した図。
【符号の説明】
【００６８】
１…サーボモータ
１１…界磁
１２…電機子
２５…速度制御器
２６…演算器
３２…速度センサ
２５１…リミッタ
２６１…リミッタ
Ｉｄ…ｄ軸電流（無効電流）
Ｉｑ…ｑ軸電流（有効電流）
Ｉｄ＊…ｄ軸電流指令（無効電流指令）
Ｉｑ＊…ｑ軸電流指令（有効電流指令）
θ…ｄｑ電流位相角
【図１】
2006074933.tif 000004
【図２】
2006074933.tif 000005
【図３】
2006074933.tif 000006
【図４】
2006074933.tif 000007
【図５】
2006074933.tif 000008
【図６】
2006074933.tif 000009