JP3683304B2 - Acサーボモータの制御方法 - Google Patents
Acサーボモータの制御方法 Download PDFInfo
- Publication number
- JP3683304B2 JP3683304B2 JP11109895A JP11109895A JP3683304B2 JP 3683304 B2 JP3683304 B2 JP 3683304B2 JP 11109895 A JP11109895 A JP 11109895A JP 11109895 A JP11109895 A JP 11109895A JP 3683304 B2 JP3683304 B2 JP 3683304B2
- Authority
- JP
- Japan
- Prior art keywords
- phase
- voltage command
- current
- motor
- phase voltage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Control Of Ac Motors In General (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、工作機械や産業機械等の機械,装置やロボットの駆動源として使用されるACサーボモータの制御方法に関する。
【0002】
【従来の技術】
図13は従来から行なわれているACサーボモータの制御系のブロック線図である。位置ループ制御(1)は、位置指令からエンコーダ等で検出される位置フィードバック値を減じて位置偏差を求め、この位置偏差にポジションゲインを乗じて速度指令を求める。そして、速度ループ処理(2)は、この速度指令から速度フィードバック値を減じて速度偏差を求め、この速度偏差に比例,積分制御等を行って、トルク指令(電流指令)を求める。さらに、電流ループ処理(3)は、このトルク指令から電流フィードバック値を減じ、PWM制御等を行って各相の電圧指令を求め、この電圧指令をACサーボモータMに供給してモータ制御を行っている。
【0003】
上記制御系において、電流ループとして、従来は例えば3相ACサーボモータの場合では3相電流を別々に制御する方式が一般的である。図14は上記3相電流を別々に制御する電流ループ処理の詳細図である。
【0004】
図14において、はじめに、U,V,W相に対するトルク指令を求める。この各相に対するトルク指令は、速度ループ処理で求めたトルク指令(電流指令)の位相をロータ位置θに対応して求めることにより得ることができ、エンコーダ等で検出されたサーボモータのロータ位置θからU,V,W相に対して電気角でそれぞれ2π/3ずれた正弦波をトルク指令(電流指令)に乗じることによって、各相の電流指令を求めることができる。
【0005】
そして、この電流指令から電流検出器で検出される各相の実電流Iu,Iv,Iwを減じて電流偏差を求め、さらに、各相電流制御器5u,5v,5wで比例積分(PI)制御等を行なって各相の指令電圧Eu,Ev,Ewを電力増幅器6に出力する。電力増幅器6は、インバータ等でPWM制御を行なって各相の電流Iu,Iv,IwをサーボモータMに供給してモータを駆動する。以下、このような電流制御方法を交流方式という。
【0006】
以上のように、ACサーボモータにおいては、位置,速度ループの最も内側のマイナーループに電流ループを持っており、この電流ループはACサーボモータの各相に流す電流をそれぞれ制御するループとなっている。
【0007】
上記3相電流を別々に交流方式によって制御する場合には、モータの回転速度が上昇すると電流指令の周波数も上昇し、電流位相が徐々に遅れるため電流の無効成分が多くなり、トルクを効率よく発生することができなくなるという欠点があり、また、制御量として交流を扱っているため、定速度回転かつ定負荷時における定常状態においてさえも、指令に対する位相の遅れや振幅の減衰等の偏差が存在し、直流モータと同程度のトルク制御を実現することが困難である。
この欠点を改善する方法として、3相電流をd−q変換してd相,q相の2相電流に座標変換した後に、それぞれの相を直流電流で制御する方法が知られている。以下、直流方式という。このd−q変換を利用する方法は、電流を直流として制御するので制御系の位相遅れがなく、トルク特性が3相電流を別々に制御する場合と比較して改善されることが知られている。d−q変換においては、d軸は磁界の作る磁束の方向にとることが一般的であり、図15に示すようにロータの永久磁石の磁束の向きにd軸をとり、該d軸に直交する向きにq軸をとっている。
【0008】
【発明が解決しようとする課題】
しかしながら、従来のd−q変換による直流方式により制御を行うと、高速回転において、制御系の遅れの影響によって、系の安定性が損なわれる場合があり、そのため、回転速度を上げることができないという問題点がある。
そこで、本発明は前記した従来の問題点を解決して、制御系の遅れにより生じる不安定性を改善することができるACサーボモータの制御方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
本出願の第1の発明は、モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、d相電圧指令をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相電圧指令をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことによって、前記目的を達成するものである。
【0010】
第1の発明において、d相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることによって、モータ速度と制御系の遅れ量に応じた電圧指令の補正を行うことができる。
【0011】
また、本出願の第2の発明は、モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、電流制御器のd相積分項の出力をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相積分項の出力をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことによって、前記目的を達成するものである。
【0012】
第2の発明において、電流制御器のd相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることによって、モータ速度と制御系の遅れ量に応じた電圧指令の補正を行うことができる。
【0013】
【作用】
第1の発明において、モータを駆動するトルク指令,ロータ位相,および電流フィードバック値を取り込みんでd−q変換を行い、d相電流が零になるように直流方式の制御を行う。このとき、d相電圧指令をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相電圧指令をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行う。この補正として、d相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じる処理を行う。これによって、電圧指令は、モータ速度と制御系の遅れ量に応じた補正が行われ、高速回転駆動時にも、制御系の遅れにより生じる系の不安定性を防止して、回転速度を上げることができる。
【0014】
また、第2の発明は、直流方式の制御において、電流制御器のd相積分項の出力をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相積分項の出力をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行う。そして、この補正として、電流制御器のd相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じる処理を行う。これによって、電圧指令は、モータ速度と制御系の遅れ量に応じた補正が行われ、高速回転駆動時にも、制御系の遅れにより生じる系の不安定性を防止して、回転速度を上げることができる。また、電流フィードバックの量子化誤差による影響を除去することができる。
【0015】
【実施例】
以下、本発明の実施例を図を参照しながら詳細に説明する。
なお、以下、3相同期電動機をサーボモータとして使用した場合を例として、説明する。
はじめに、d−q変換を利用する電流制御方法について解析する。交流電動機において3相交流で表した回路方程式は次の式(1)で表される。
【0016】
【数1】
上記式(1)の左辺はモータのU,V,W相の電圧であり、右辺例えば第1項の左側の行列はインピーダンス行例であり、Rは巻線抵抗、L’は巻線の自己インダクタンス、M’は相互インダクタンスで、Pは微分演算子である。また、右辺第1項右側のベクトルは各相電流Iu,Iv,Iwのベクトルであり、右辺第2項は各相の巻線が誘起する起電力eu,ev,ewである。なお、L を漏れインダクタスとすると、L’=L +M’の関係がある。
【0017】
次に、3相交流座標系から2相交流座標系に変換する式(2)で表される交流行列C1、及び2相交流座標系から3相交流座標系に変換する式(3)で表される交流行列C2を用いて、上記式(1)を変換すると、いわゆるd−q変換を行なう式(4)が得られる。
【0018】
なお、d−q変換においては、d軸は磁界の作る磁束の方向にとることが一般的であり、図15に示すようにロータの永久磁石の磁束の向きにd軸をとり、該d軸に直交する向きにq軸をとっている。
【0019】
【数2】
【0020】
【数3】
【0021】
【数4】
なお、上記式(3)において、θはロータの電気角(u相の巻線を基準として時計回りの方向にとった界磁の角度)であり、式(4)におけるωはロータの回転角速度(機械角)、Φは巻線鎖交磁束数の最大値である。また、L=L +3M’/2の関係にある。
【0022】
上記式(4)より、磁界の作る磁束方向のd相電流Idを「0」に制御し、q相電流Iqについてのみ、その大きさを制御するようにすると、直流サーボモータと同じ制御を行うことができる。
そして、上記変換行列C1,C2と3相の電圧,電流の合計が「0」である関係、すなわち、Vu+Vv+Vw=0、Iu+Iv+Iw=0の関係から、3相電圧Vu,Vv,Vwと2相電圧Vd,Vq、及び3相電流Iu,Iv,Iwと2相電流Id,Iqの関係は次の式(5),式(6)が成立する。
【0023】
【数5】
【0024】
【数6】
図1はACサーボモータをd−q変換を用いて制御するときのブロック線図である。図1において、d相に対する電流指令を「0」とし、q相に対する電流指令を速度ループから出力されるトルク指令とする。そして、モータの各u,v,w相の実電流Iu,Iv,Iw(いずれかから2相を検出すればよい)及びロータ位置検出器で検出されたロータの位相θにより、3相電流から2相電流へ変換する手段9でd相,q相の電流Id,Iqを求め、前記各相指令値から減じてd相,q相の電流偏差を求める。そして、電流制御器5d,5qにおいて従来と同様の比例・積分制御を行い、d相指令電圧Vd及びq相指令電圧Vqを求める。
【0025】
2相電圧から3相電圧に変換する手段8は、この2相の指令電圧Vd,VqからU,V,W相の指令電圧Vu,Vv,Vwを求めて電力増幅器6に出力する。電力増幅器6は、インバータ等でサーボモータの各相に対して電流Iu,Iv,Iwを供給し、サーボモータを制御する。
【0026】
そこで、図1中の手段9において、上記式(6)の演算を行って2相電流のId,Iqを求めて各相の電流フィードバックとする。さらに、手段8において、上記式(5)の演算を行って2相電圧Vd,Vqから3相電圧Vu,Vv,Vwを求める。
【0027】
ここで、前記式(1)で示した3相同期電動機の回路方程式を、式(2)で示した変換行列C1を用いて2相交流座標系に変換する。そして、この変換において、電流フィードバックの遅れ分として遅れ時間δを考慮すると、2相交流座標系における3相同期電動機の回路方程式は、次式(7)で表される。
【0028】
【数7】
さらに、この式(7)について、変換行列C2を用いて、2相交流座標系から回転座標系に変換して近似を行うと、次式(8)となる。
【0029】
【数8】
この式(8)について、整理して(式(9)参照)、d−q座標上で観察した空間的な関係式で表すと式(10)となる。
【0030】
【数9】
【0031】
【数10】
ここでは、[ ]の符号によってベクトルを表しており、電圧ベクトルを[v]で表し、電流ベクトルを[i]で表し、回転ベクトルを[ω]で表している。また、回転ベクトル[ω]の方向を図2中の紙面と垂直方向で定めると、回転ベクトル[ω]中のマトリクスは、空間的に位相を90°進めることになり、前記式(10)中の外積×で表すことができる。
【0032】
さらに、ここで、式(10)中のd2 [i]/dt2 ,およびδRd[i]/dtの項の絶対値は一般に小さいため、ほぼ0と近似することができ、また、2δL[ω]×d[i]/dtの項の絶対値も一般に小さいため、δL[ω]×d[i]/dtに等しいと近似することができる。この近似によって、式(10)は次の式(11)によって表すことができる。
【0033】
【数11】
式(11)の関係を図2のd−q座標上で表した電圧ベクトル図によって示す。図2において、[v1]は遅れ分δを0とした場合であって、従来の方式による電圧指令に相当し、式(11)中の右辺の第1項目に対応している。
【0034】
これに対して、制御系が持つ遅れδによって発生する電圧[v]は、遅れが無い場合の電圧ベクトル[v1]に、速度ωと遅れδを掛け位相を90°進めて得られるδ[ω]×[v1]を加えたものとなる。
【0035】
したがって、式(11)から、あらかじめ予想される遅れ分の電圧δ[ω]×[v1]を、電圧指令にフィードフォワードすることによって、制御系の応答性を向上させ、遅れによる影響を減少させ、これによって、制御系の安定性を改善させることができる。
【0036】
次に、本発明のACサーボモータの第1の制御方法について、図3を用いて説明する。図3は、本発明のACサーボモータの第1の制御方法を適用したブロック図である。
【0037】
前記式(11)について、制御系が持つ遅れδによって発生する電圧[v]のd相電圧をVd*とし、q相電圧をVq*とすると、それぞれの以下の式によって表すことができる。
【0038】
Vd*=Vd−δ・ω・Vq …(12)
Vq*=Vq+δ・ω・Vd …(13)
この式(12),(13)を用いてd相電圧指令Vd*およびq相電圧指令Vq*を求めるブロック図を構成すると図3を得る。なお、式(12),(13)中のVqおよびVdは入力される電圧指令であり、Vd*およびVq*は補正されたd相電圧指令およびq相電圧指令である。
【0039】
図3のブロック図は、前記した図1中の電流制御ブロック5d,5q中の電流制御器の出力部分に電圧指令を補正するブロックを追加することによって構成することができる。
【0040】
電圧指令を補正するブロックは、d相電圧指令Vd*については、q相電圧指令Vqに遅れδと速度ωを掛けたものをd相電圧指令Vdから減じることによって求め、他方、q相電圧指令Vq*については、d相電圧指令Vdに遅れδに速度ωを掛けたものをq相電圧指令Vdに加えることによって求める処理を行う。
【0041】
図4は、本発明の実施例を適用したサーボモータ制御系のブロック図であり、その構成は従来のデジタルサーボ制御を行なう装置と同一の構成であるため、概略的に示している。図4において、20はコンピュータを内蔵した数値制御装置(CNC)、21は共有RAM、22はプロセッサ(CPU),ROM,RAM等を有するデジタルサーボ回路、23はトランジスタインバータ等の電力増幅器、MはACサーボモータ、24はACサーボモータMの回転とともにパルスを発生するエンコーダ、25はロータ位相を検出するためのロータ位置検出器である。
図5は上記デジタルサーボ回路22のプロセッサが所定周期毎に実施する電流ループ制御処理のフローチャートである。デジタルサーボ回路22のプロセッサは、数値制御装置(CNC)から指令された位置指令(もしくは速度指令)を共有RAM21を介して読み取り位置ループ処理,速度ループ処理を行なう。
【0042】
まず、速度ループ処理によって出力されたトルク指令を読むとともに(ステップS1)、ロータ位置検出器25からロータ位相θおよびモータ速度およびを取り込む(ステップS2)。
次に、電流検出器で検出されるU相,V相の実電流Iu,Ivを取込み(ステップS3)、取り込んだU相,V相の実電流Iu,Ivとロータ位相θより前記式(6)の演算を行なってd相,q相の電流Id,Iqを算出する(ステップS4)。
【0043】
ステップS4で求めたd相電流Idをフィードバック電流とし、d相電流指令を「0」として、通常の電流ループ処理(比例積分制御)を行い、d相指令電圧Vdを求める。また、ステップS1で読み取ったトルク指令をq相の電流指令とし、ステップS4で算出したq相の電流値Iqをフィードバック電流として電流ループ処理を行ってq相電圧指令Vqを求める(ステップS5)。
【0044】
次に、ステップS5で求めたd相指令電圧Vdとq相電圧指令Vqの電圧補正を行い、d相電圧指令Vd*およびq相電圧指令Vq*を求める(ステップS6)。
【0045】
ステップS6で求めたd相電圧指令Vd*およびq相電圧指令Vq*を、2相電圧Vd,Vqから3相電圧Vu,Vv,Vwを求める式(5)を用いて、3相電圧指令に変換する(ステップS7)。この求めた3相電圧指令Vu,Vv,Vwを電力増幅器に入力し、インバータ等によってPWM制御を行い、各相の電流をサーボモータに供給し駆動を行い、当該周期の電流ループ処理を終了する(ステップS8)。
【0046】
次に、本発明のACサーボモータの第2の制御方法について説明する。
【0047】
前記した本発明のACサーボモータの第1の制御方法を実際のシステムに適用した場合、電流フィードバックの量子化誤差の影響を受けやすい。図3のブロック図において、電流フィードバック値IqおよびIdをフィードバックして得られる電圧指令に対する遅れδと速度ωの積の外積分を補正量としているため、電流フィードバック値の誤差がそのまま補正に影響することになる。そこで、本発明のACサーボモータの第2の制御方法では、電圧指令はほぼ積分項出力と等しいとして、前記式(11)について、制御系が持つ遅れδによって発生する電圧[v]のd相電圧をVd*とし、q相電圧をVq*とすると、それぞれの以下の式によって表すことができる。
【0048】
Vd*=Vd−δ・ω・k1(Iq*−Iq)/s …(14)
Vq*=Vq+δ・ω・k1(−Iq)/s …(15)
この式(14),(15)を用いてd相電圧指令Vd*およびq相電圧指令Vq*を求めるブロック図を構成すると図6を得る。なお、式(14),(15)中のVqおよびVdは入力される電圧指令であり、Vd*およびVq*は補正されたd相電圧指令およびq相電圧指令であり、k1h積分ゲイン、Id,Iqは電流フィードバック、Iq*は電流指令を示している。
【0049】
図6のブロック図は、前記した図1中の電流制御ブロック5d,5q中の電流制御器の出力部分に電圧指令を補正するブロックを追加することによって構成することができる。電圧指令を補正するブロックは、d相電圧指令Vd*については、q相の積分項の出力に遅れδと速度ωを掛けたものをd相の積分項の電圧指令Vdから減じることによって求め、他方、q相電圧指令Vq*については、d相の積分項の出力に遅れδと速度ωを掛けたものをq相電圧指令Vdに加えることによって求める処理を行う。
【0050】
これによって、電流フィードバックId,Iqによる影響を減少させることができる。
【0051】
なお、この本発明のACサーボモータの第2の制御方法において、デジタルサーボ回路22のプロセッサが所定周期毎に実施する電流ループ制御処理は、前記図4に示したものと同じ構成によって、前記図5に示すフローチャートとほぼ同の処理により行うことができる。
【0052】
なお、本発明のACサーボモータの第2の制御方法では、図5のフローチャート中のステップS6における電圧指令補正における補正式を式(12),(13)に代えて、式(14),(15)を用いる。
【0053】
(実施例のシミュレーション結果)
図7〜図9,および図10〜図12は、シミュレーション結果を示すものである。図7は、従来の直流方式によるシミュレーション結果であり、速度およびU相電流Iuの変化を示している。図7は、従来の直流方式による制御方法では、発振の限界が約2500rpmであることを示している。
【0054】
これに対して、図8は本発明のACサーボモータの第1の制御方法によるシミュレーション結果であり、図9は本発明のACサーボモータの第2の制御方法によるシミュレーション結果である。図8は、ACサーボモータの第1の制御方法による発振の限界は約4000rpmであり、図9は、ACサーボモータの第2の制御方法による発振の限界は約5000rpmであることを示しており、本発明によるACサーボモータの制御方法によって、高い回転速度においても系を安定に保つことができる。
なお、図10〜図12は、図7〜図9における拡大図を示している。
【0055】
【発明の効果】
以上説明したように、本発明によれば、制御系の遅れにより生じる不安定性を改善することができるACサーボモータの制御方法を提供することができる。
【図面の簡単な説明】
【図1】ACサーボモータをd−q変換を用いて制御するときのブロック線図である。
【図2】d−q座標上で表した電圧ベクトル図である。
【図3】本発明のACサーボモータの第1の制御方法を適用したブロック図である。
【図4】本発明の実施例を適用したサーボモータ制御系のブロック図である。
【図5】デジタルサーボ回路のプロセッサが所定周期毎に実施する電流ループ制御処理のフローチャートである。
【図6】本発明のACサーボモータの第2の制御方法を適用したブロック図である。
【図7】従来の直流方式によるシミュレーション結果である。
【図8】本発明の第1の制御方法によるシミュレーション結果である。
【図9】本発明の第2の制御方法によるシミュレーション結果である。
【図10】従来の直流方式によるシミュレーション結果の拡大図である。
【図11】本発明の第1の制御方法によるシミュレーション結果の拡大図である。
【図12】本発明の第2の制御方法によるシミュレーション結果の拡大図である。
【図13】従来のACサーボモータの制御系のブロック線図である。
【図14】3相電流を別々に制御する電流ループ処理の詳細図である。
【図15】d−q変換の座標系を説明する図である。
【符号の説明】
1 位置制御ブロック
2 速度制御ブロック
3 電流制御ブロック
5 電流制御器
6 電力増幅器
【産業上の利用分野】
本発明は、工作機械や産業機械等の機械,装置やロボットの駆動源として使用されるACサーボモータの制御方法に関する。
【0002】
【従来の技術】
図13は従来から行なわれているACサーボモータの制御系のブロック線図である。位置ループ制御(1)は、位置指令からエンコーダ等で検出される位置フィードバック値を減じて位置偏差を求め、この位置偏差にポジションゲインを乗じて速度指令を求める。そして、速度ループ処理(2)は、この速度指令から速度フィードバック値を減じて速度偏差を求め、この速度偏差に比例,積分制御等を行って、トルク指令(電流指令)を求める。さらに、電流ループ処理(3)は、このトルク指令から電流フィードバック値を減じ、PWM制御等を行って各相の電圧指令を求め、この電圧指令をACサーボモータMに供給してモータ制御を行っている。
【0003】
上記制御系において、電流ループとして、従来は例えば3相ACサーボモータの場合では3相電流を別々に制御する方式が一般的である。図14は上記3相電流を別々に制御する電流ループ処理の詳細図である。
【0004】
図14において、はじめに、U,V,W相に対するトルク指令を求める。この各相に対するトルク指令は、速度ループ処理で求めたトルク指令(電流指令)の位相をロータ位置θに対応して求めることにより得ることができ、エンコーダ等で検出されたサーボモータのロータ位置θからU,V,W相に対して電気角でそれぞれ2π/3ずれた正弦波をトルク指令(電流指令)に乗じることによって、各相の電流指令を求めることができる。
【0005】
そして、この電流指令から電流検出器で検出される各相の実電流Iu,Iv,Iwを減じて電流偏差を求め、さらに、各相電流制御器5u,5v,5wで比例積分(PI)制御等を行なって各相の指令電圧Eu,Ev,Ewを電力増幅器6に出力する。電力増幅器6は、インバータ等でPWM制御を行なって各相の電流Iu,Iv,IwをサーボモータMに供給してモータを駆動する。以下、このような電流制御方法を交流方式という。
【0006】
以上のように、ACサーボモータにおいては、位置,速度ループの最も内側のマイナーループに電流ループを持っており、この電流ループはACサーボモータの各相に流す電流をそれぞれ制御するループとなっている。
【0007】
上記3相電流を別々に交流方式によって制御する場合には、モータの回転速度が上昇すると電流指令の周波数も上昇し、電流位相が徐々に遅れるため電流の無効成分が多くなり、トルクを効率よく発生することができなくなるという欠点があり、また、制御量として交流を扱っているため、定速度回転かつ定負荷時における定常状態においてさえも、指令に対する位相の遅れや振幅の減衰等の偏差が存在し、直流モータと同程度のトルク制御を実現することが困難である。
この欠点を改善する方法として、3相電流をd−q変換してd相,q相の2相電流に座標変換した後に、それぞれの相を直流電流で制御する方法が知られている。以下、直流方式という。このd−q変換を利用する方法は、電流を直流として制御するので制御系の位相遅れがなく、トルク特性が3相電流を別々に制御する場合と比較して改善されることが知られている。d−q変換においては、d軸は磁界の作る磁束の方向にとることが一般的であり、図15に示すようにロータの永久磁石の磁束の向きにd軸をとり、該d軸に直交する向きにq軸をとっている。
【0008】
【発明が解決しようとする課題】
しかしながら、従来のd−q変換による直流方式により制御を行うと、高速回転において、制御系の遅れの影響によって、系の安定性が損なわれる場合があり、そのため、回転速度を上げることができないという問題点がある。
そこで、本発明は前記した従来の問題点を解決して、制御系の遅れにより生じる不安定性を改善することができるACサーボモータの制御方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
本出願の第1の発明は、モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、d相電圧指令をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相電圧指令をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことによって、前記目的を達成するものである。
【0010】
第1の発明において、d相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることによって、モータ速度と制御系の遅れ量に応じた電圧指令の補正を行うことができる。
【0011】
また、本出願の第2の発明は、モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、電流制御器のd相積分項の出力をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相積分項の出力をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことによって、前記目的を達成するものである。
【0012】
第2の発明において、電流制御器のd相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることによって、モータ速度と制御系の遅れ量に応じた電圧指令の補正を行うことができる。
【0013】
【作用】
第1の発明において、モータを駆動するトルク指令,ロータ位相,および電流フィードバック値を取り込みんでd−q変換を行い、d相電流が零になるように直流方式の制御を行う。このとき、d相電圧指令をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相電圧指令をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行う。この補正として、d相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じる処理を行う。これによって、電圧指令は、モータ速度と制御系の遅れ量に応じた補正が行われ、高速回転駆動時にも、制御系の遅れにより生じる系の不安定性を防止して、回転速度を上げることができる。
【0014】
また、第2の発明は、直流方式の制御において、電流制御器のd相積分項の出力をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、q相積分項の出力をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行う。そして、この補正として、電流制御器のd相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じる処理を行う。これによって、電圧指令は、モータ速度と制御系の遅れ量に応じた補正が行われ、高速回転駆動時にも、制御系の遅れにより生じる系の不安定性を防止して、回転速度を上げることができる。また、電流フィードバックの量子化誤差による影響を除去することができる。
【0015】
【実施例】
以下、本発明の実施例を図を参照しながら詳細に説明する。
なお、以下、3相同期電動機をサーボモータとして使用した場合を例として、説明する。
はじめに、d−q変換を利用する電流制御方法について解析する。交流電動機において3相交流で表した回路方程式は次の式(1)で表される。
【0016】
【数1】
上記式(1)の左辺はモータのU,V,W相の電圧であり、右辺例えば第1項の左側の行列はインピーダンス行例であり、Rは巻線抵抗、L’は巻線の自己インダクタンス、M’は相互インダクタンスで、Pは微分演算子である。また、右辺第1項右側のベクトルは各相電流Iu,Iv,Iwのベクトルであり、右辺第2項は各相の巻線が誘起する起電力eu,ev,ewである。なお、L を漏れインダクタスとすると、L’=L +M’の関係がある。
【0017】
次に、3相交流座標系から2相交流座標系に変換する式(2)で表される交流行列C1、及び2相交流座標系から3相交流座標系に変換する式(3)で表される交流行列C2を用いて、上記式(1)を変換すると、いわゆるd−q変換を行なう式(4)が得られる。
【0018】
なお、d−q変換においては、d軸は磁界の作る磁束の方向にとることが一般的であり、図15に示すようにロータの永久磁石の磁束の向きにd軸をとり、該d軸に直交する向きにq軸をとっている。
【0019】
【数2】
【0020】
【数3】
【0021】
【数4】
なお、上記式(3)において、θはロータの電気角(u相の巻線を基準として時計回りの方向にとった界磁の角度)であり、式(4)におけるωはロータの回転角速度(機械角)、Φは巻線鎖交磁束数の最大値である。また、L=L +3M’/2の関係にある。
【0022】
上記式(4)より、磁界の作る磁束方向のd相電流Idを「0」に制御し、q相電流Iqについてのみ、その大きさを制御するようにすると、直流サーボモータと同じ制御を行うことができる。
そして、上記変換行列C1,C2と3相の電圧,電流の合計が「0」である関係、すなわち、Vu+Vv+Vw=0、Iu+Iv+Iw=0の関係から、3相電圧Vu,Vv,Vwと2相電圧Vd,Vq、及び3相電流Iu,Iv,Iwと2相電流Id,Iqの関係は次の式(5),式(6)が成立する。
【0023】
【数5】
【0024】
【数6】
図1はACサーボモータをd−q変換を用いて制御するときのブロック線図である。図1において、d相に対する電流指令を「0」とし、q相に対する電流指令を速度ループから出力されるトルク指令とする。そして、モータの各u,v,w相の実電流Iu,Iv,Iw(いずれかから2相を検出すればよい)及びロータ位置検出器で検出されたロータの位相θにより、3相電流から2相電流へ変換する手段9でd相,q相の電流Id,Iqを求め、前記各相指令値から減じてd相,q相の電流偏差を求める。そして、電流制御器5d,5qにおいて従来と同様の比例・積分制御を行い、d相指令電圧Vd及びq相指令電圧Vqを求める。
【0025】
2相電圧から3相電圧に変換する手段8は、この2相の指令電圧Vd,VqからU,V,W相の指令電圧Vu,Vv,Vwを求めて電力増幅器6に出力する。電力増幅器6は、インバータ等でサーボモータの各相に対して電流Iu,Iv,Iwを供給し、サーボモータを制御する。
【0026】
そこで、図1中の手段9において、上記式(6)の演算を行って2相電流のId,Iqを求めて各相の電流フィードバックとする。さらに、手段8において、上記式(5)の演算を行って2相電圧Vd,Vqから3相電圧Vu,Vv,Vwを求める。
【0027】
ここで、前記式(1)で示した3相同期電動機の回路方程式を、式(2)で示した変換行列C1を用いて2相交流座標系に変換する。そして、この変換において、電流フィードバックの遅れ分として遅れ時間δを考慮すると、2相交流座標系における3相同期電動機の回路方程式は、次式(7)で表される。
【0028】
【数7】
さらに、この式(7)について、変換行列C2を用いて、2相交流座標系から回転座標系に変換して近似を行うと、次式(8)となる。
【0029】
【数8】
この式(8)について、整理して(式(9)参照)、d−q座標上で観察した空間的な関係式で表すと式(10)となる。
【0030】
【数9】
【0031】
【数10】
ここでは、[ ]の符号によってベクトルを表しており、電圧ベクトルを[v]で表し、電流ベクトルを[i]で表し、回転ベクトルを[ω]で表している。また、回転ベクトル[ω]の方向を図2中の紙面と垂直方向で定めると、回転ベクトル[ω]中のマトリクスは、空間的に位相を90°進めることになり、前記式(10)中の外積×で表すことができる。
【0032】
さらに、ここで、式(10)中のd2 [i]/dt2 ,およびδRd[i]/dtの項の絶対値は一般に小さいため、ほぼ0と近似することができ、また、2δL[ω]×d[i]/dtの項の絶対値も一般に小さいため、δL[ω]×d[i]/dtに等しいと近似することができる。この近似によって、式(10)は次の式(11)によって表すことができる。
【0033】
【数11】
式(11)の関係を図2のd−q座標上で表した電圧ベクトル図によって示す。図2において、[v1]は遅れ分δを0とした場合であって、従来の方式による電圧指令に相当し、式(11)中の右辺の第1項目に対応している。
【0034】
これに対して、制御系が持つ遅れδによって発生する電圧[v]は、遅れが無い場合の電圧ベクトル[v1]に、速度ωと遅れδを掛け位相を90°進めて得られるδ[ω]×[v1]を加えたものとなる。
【0035】
したがって、式(11)から、あらかじめ予想される遅れ分の電圧δ[ω]×[v1]を、電圧指令にフィードフォワードすることによって、制御系の応答性を向上させ、遅れによる影響を減少させ、これによって、制御系の安定性を改善させることができる。
【0036】
次に、本発明のACサーボモータの第1の制御方法について、図3を用いて説明する。図3は、本発明のACサーボモータの第1の制御方法を適用したブロック図である。
【0037】
前記式(11)について、制御系が持つ遅れδによって発生する電圧[v]のd相電圧をVd*とし、q相電圧をVq*とすると、それぞれの以下の式によって表すことができる。
【0038】
Vd*=Vd−δ・ω・Vq …(12)
Vq*=Vq+δ・ω・Vd …(13)
この式(12),(13)を用いてd相電圧指令Vd*およびq相電圧指令Vq*を求めるブロック図を構成すると図3を得る。なお、式(12),(13)中のVqおよびVdは入力される電圧指令であり、Vd*およびVq*は補正されたd相電圧指令およびq相電圧指令である。
【0039】
図3のブロック図は、前記した図1中の電流制御ブロック5d,5q中の電流制御器の出力部分に電圧指令を補正するブロックを追加することによって構成することができる。
【0040】
電圧指令を補正するブロックは、d相電圧指令Vd*については、q相電圧指令Vqに遅れδと速度ωを掛けたものをd相電圧指令Vdから減じることによって求め、他方、q相電圧指令Vq*については、d相電圧指令Vdに遅れδに速度ωを掛けたものをq相電圧指令Vdに加えることによって求める処理を行う。
【0041】
図4は、本発明の実施例を適用したサーボモータ制御系のブロック図であり、その構成は従来のデジタルサーボ制御を行なう装置と同一の構成であるため、概略的に示している。図4において、20はコンピュータを内蔵した数値制御装置(CNC)、21は共有RAM、22はプロセッサ(CPU),ROM,RAM等を有するデジタルサーボ回路、23はトランジスタインバータ等の電力増幅器、MはACサーボモータ、24はACサーボモータMの回転とともにパルスを発生するエンコーダ、25はロータ位相を検出するためのロータ位置検出器である。
図5は上記デジタルサーボ回路22のプロセッサが所定周期毎に実施する電流ループ制御処理のフローチャートである。デジタルサーボ回路22のプロセッサは、数値制御装置(CNC)から指令された位置指令(もしくは速度指令)を共有RAM21を介して読み取り位置ループ処理,速度ループ処理を行なう。
【0042】
まず、速度ループ処理によって出力されたトルク指令を読むとともに(ステップS1)、ロータ位置検出器25からロータ位相θおよびモータ速度およびを取り込む(ステップS2)。
次に、電流検出器で検出されるU相,V相の実電流Iu,Ivを取込み(ステップS3)、取り込んだU相,V相の実電流Iu,Ivとロータ位相θより前記式(6)の演算を行なってd相,q相の電流Id,Iqを算出する(ステップS4)。
【0043】
ステップS4で求めたd相電流Idをフィードバック電流とし、d相電流指令を「0」として、通常の電流ループ処理(比例積分制御)を行い、d相指令電圧Vdを求める。また、ステップS1で読み取ったトルク指令をq相の電流指令とし、ステップS4で算出したq相の電流値Iqをフィードバック電流として電流ループ処理を行ってq相電圧指令Vqを求める(ステップS5)。
【0044】
次に、ステップS5で求めたd相指令電圧Vdとq相電圧指令Vqの電圧補正を行い、d相電圧指令Vd*およびq相電圧指令Vq*を求める(ステップS6)。
【0045】
ステップS6で求めたd相電圧指令Vd*およびq相電圧指令Vq*を、2相電圧Vd,Vqから3相電圧Vu,Vv,Vwを求める式(5)を用いて、3相電圧指令に変換する(ステップS7)。この求めた3相電圧指令Vu,Vv,Vwを電力増幅器に入力し、インバータ等によってPWM制御を行い、各相の電流をサーボモータに供給し駆動を行い、当該周期の電流ループ処理を終了する(ステップS8)。
【0046】
次に、本発明のACサーボモータの第2の制御方法について説明する。
【0047】
前記した本発明のACサーボモータの第1の制御方法を実際のシステムに適用した場合、電流フィードバックの量子化誤差の影響を受けやすい。図3のブロック図において、電流フィードバック値IqおよびIdをフィードバックして得られる電圧指令に対する遅れδと速度ωの積の外積分を補正量としているため、電流フィードバック値の誤差がそのまま補正に影響することになる。そこで、本発明のACサーボモータの第2の制御方法では、電圧指令はほぼ積分項出力と等しいとして、前記式(11)について、制御系が持つ遅れδによって発生する電圧[v]のd相電圧をVd*とし、q相電圧をVq*とすると、それぞれの以下の式によって表すことができる。
【0048】
Vd*=Vd−δ・ω・k1(Iq*−Iq)/s …(14)
Vq*=Vq+δ・ω・k1(−Iq)/s …(15)
この式(14),(15)を用いてd相電圧指令Vd*およびq相電圧指令Vq*を求めるブロック図を構成すると図6を得る。なお、式(14),(15)中のVqおよびVdは入力される電圧指令であり、Vd*およびVq*は補正されたd相電圧指令およびq相電圧指令であり、k1h積分ゲイン、Id,Iqは電流フィードバック、Iq*は電流指令を示している。
【0049】
図6のブロック図は、前記した図1中の電流制御ブロック5d,5q中の電流制御器の出力部分に電圧指令を補正するブロックを追加することによって構成することができる。電圧指令を補正するブロックは、d相電圧指令Vd*については、q相の積分項の出力に遅れδと速度ωを掛けたものをd相の積分項の電圧指令Vdから減じることによって求め、他方、q相電圧指令Vq*については、d相の積分項の出力に遅れδと速度ωを掛けたものをq相電圧指令Vdに加えることによって求める処理を行う。
【0050】
これによって、電流フィードバックId,Iqによる影響を減少させることができる。
【0051】
なお、この本発明のACサーボモータの第2の制御方法において、デジタルサーボ回路22のプロセッサが所定周期毎に実施する電流ループ制御処理は、前記図4に示したものと同じ構成によって、前記図5に示すフローチャートとほぼ同の処理により行うことができる。
【0052】
なお、本発明のACサーボモータの第2の制御方法では、図5のフローチャート中のステップS6における電圧指令補正における補正式を式(12),(13)に代えて、式(14),(15)を用いる。
【0053】
(実施例のシミュレーション結果)
図7〜図9,および図10〜図12は、シミュレーション結果を示すものである。図7は、従来の直流方式によるシミュレーション結果であり、速度およびU相電流Iuの変化を示している。図7は、従来の直流方式による制御方法では、発振の限界が約2500rpmであることを示している。
【0054】
これに対して、図8は本発明のACサーボモータの第1の制御方法によるシミュレーション結果であり、図9は本発明のACサーボモータの第2の制御方法によるシミュレーション結果である。図8は、ACサーボモータの第1の制御方法による発振の限界は約4000rpmであり、図9は、ACサーボモータの第2の制御方法による発振の限界は約5000rpmであることを示しており、本発明によるACサーボモータの制御方法によって、高い回転速度においても系を安定に保つことができる。
なお、図10〜図12は、図7〜図9における拡大図を示している。
【0055】
【発明の効果】
以上説明したように、本発明によれば、制御系の遅れにより生じる不安定性を改善することができるACサーボモータの制御方法を提供することができる。
【図面の簡単な説明】
【図1】ACサーボモータをd−q変換を用いて制御するときのブロック線図である。
【図2】d−q座標上で表した電圧ベクトル図である。
【図3】本発明のACサーボモータの第1の制御方法を適用したブロック図である。
【図4】本発明の実施例を適用したサーボモータ制御系のブロック図である。
【図5】デジタルサーボ回路のプロセッサが所定周期毎に実施する電流ループ制御処理のフローチャートである。
【図6】本発明のACサーボモータの第2の制御方法を適用したブロック図である。
【図7】従来の直流方式によるシミュレーション結果である。
【図8】本発明の第1の制御方法によるシミュレーション結果である。
【図9】本発明の第2の制御方法によるシミュレーション結果である。
【図10】従来の直流方式によるシミュレーション結果の拡大図である。
【図11】本発明の第1の制御方法によるシミュレーション結果の拡大図である。
【図12】本発明の第2の制御方法によるシミュレーション結果の拡大図である。
【図13】従来のACサーボモータの制御系のブロック線図である。
【図14】3相電流を別々に制御する電流ループ処理の詳細図である。
【図15】d−q変換の座標系を説明する図である。
【符号の説明】
1 位置制御ブロック
2 速度制御ブロック
3 電流制御ブロック
5 電流制御器
6 電力増幅器
Claims (4)
- モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、
d相電圧指令をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、
q相電圧指令をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことを特徴とするACサーボモータの制御方法。 - 前記補正は、d相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相電圧指令にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることを特徴とする請求項1記載のACサーボモータの制御方法。
- モータ駆動電流とロータ位相をd−q変換してd相電流を求め、該d相電流が零になるように制御を行うACサーボモータの制御方法において、
電流制御器のd相積分項の出力をモータ速度と制御系の遅れ量に応じてq相電圧指令に加え、
q相積分項の出力をモータ速度と制御系の遅れ量に応じてd相電圧指令から減じる補正を行うことを特徴とするACサーボモータの制御方法。 - 前記補正は、電流制御器のd相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをq相電圧指令に加え、q相積分項の出力にモータの制御系の遅れ量とモータ速度とを掛けたものをd相電圧指令から減じることを特徴とする請求項3記載のACサーボモータの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11109895A JP3683304B2 (ja) | 1995-04-13 | 1995-04-13 | Acサーボモータの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11109895A JP3683304B2 (ja) | 1995-04-13 | 1995-04-13 | Acサーボモータの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08289599A JPH08289599A (ja) | 1996-11-01 |
JP3683304B2 true JP3683304B2 (ja) | 2005-08-17 |
Family
ID=14552344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11109895A Expired - Fee Related JP3683304B2 (ja) | 1995-04-13 | 1995-04-13 | Acサーボモータの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3683304B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3121561B2 (ja) * | 1997-04-21 | 2001-01-09 | ファナック株式会社 | 射出成形機 |
JP3634270B2 (ja) | 2001-02-02 | 2005-03-30 | 株式会社豊田中央研究所 | モータ駆動回路 |
JP4446284B2 (ja) * | 2004-02-19 | 2010-04-07 | 株式会社安川電機 | 誘導電動機の制御装置 |
JP2019134514A (ja) * | 2018-01-29 | 2019-08-08 | オムロン株式会社 | モータ制御装置およびモータ制御システム |
DE102018124105A1 (de) * | 2018-09-28 | 2020-04-02 | Valeo Siemens Eautomotive Germany Gmbh | Verfahren zur Ermittlung eines eine Winkeldifferenz zwischen einer angenommenen und einer tatsächlichen Lage einer d-Achse beschreibenden Korrekturwerts, Steuerungseinrichtung und Wechselrichter |
-
1995
- 1995-04-13 JP JP11109895A patent/JP3683304B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08289599A (ja) | 1996-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3709239B2 (ja) | Acサーボモータの磁気飽和補正方式 | |
EP1460758B1 (en) | Vector control method and apparatus | |
JPH0984400A (ja) | サーボモータの電流制御方法 | |
JPH02254987A (ja) | 誘導電動機の制御方式及びその装置 | |
JP4402600B2 (ja) | 同期電動機の駆動システム及び同期電動機の駆動方法 | |
JP3683313B2 (ja) | サーボモータの電流制御方法 | |
JP4154149B2 (ja) | ベクトル制御インバータ装置 | |
JP3527207B2 (ja) | モータ制御装置 | |
JP3383682B2 (ja) | Acサーボモータの電流制御方法 | |
JP3683304B2 (ja) | Acサーボモータの制御方法 | |
JP2007135345A (ja) | 磁石モータ制御装置 | |
US5726545A (en) | Current controlling method for servo motor | |
JPH0614592A (ja) | Acサーボモータの加速度制御方式 | |
JP3751991B2 (ja) | Acサーボモータの電流制御方法 | |
JP3674638B2 (ja) | 誘導電動機の速度推定方法および誘導電動機駆動装置 | |
WO2022168340A1 (ja) | モータ制御装置 | |
Zaky et al. | Decoupled Speed and Torque Control of IPMSM Drives Using a Novel Load Torque Estimator. | |
JP6768594B2 (ja) | 交流電動機の制御装置 | |
JP3283729B2 (ja) | 誘導電動機の制御装置 | |
JP2023176838A (ja) | 3相交流電動機の制御装置 | |
JP5846195B2 (ja) | 電動機駆動装置の制御装置および電動機駆動システム | |
JP2022152779A (ja) | モータ制御装置、モータ制御方法、およびプログラム | |
JP2014110642A (ja) | 同期機制御装置 | |
JP2001197797A (ja) | モータ制御装置 | |
JPH02262887A (ja) | センサレス速度制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040427 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050525 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090603 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |