JP2660006B2 - Rotor angle detection method - Google Patents
Rotor angle detection methodInfo
- Publication number
- JP2660006B2 JP2660006B2 JP63186247A JP18624788A JP2660006B2 JP 2660006 B2 JP2660006 B2 JP 2660006B2 JP 63186247 A JP63186247 A JP 63186247A JP 18624788 A JP18624788 A JP 18624788A JP 2660006 B2 JP2660006 B2 JP 2660006B2
- Authority
- JP
- Japan
- Prior art keywords
- rotor
- rotor angle
- value
- pulse coder
- angle
- 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 - Lifetime
Links
- 238000001514 detection method Methods 0.000 title description 17
- 238000000034 method Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Landscapes
- Control Of Electric Motors In General (AREA)
- Length Measuring Devices By Optical Means (AREA)
Description
【発明の詳細な説明】 <産業上の利用分野> 本発明はロータ角度検出方法に係り、特にロータ角度
に応じた電流指令を発生してACサーボモータを制御する
ACサーボモータ制御装置のロータ角度検出方法に関す
る。DETAILED DESCRIPTION OF THE INVENTION <Industrial application field> The present invention relates to a rotor angle detection method, and in particular, controls an AC servomotor by generating a current command according to a rotor angle.
The present invention relates to a method for detecting a rotor angle of an AC servomotor control device.
<従来技術> ACサーボモータたとえば同期電動機の制御において
は、速度誤差に応じてトルク指令TCを発生すると共に、
電気角360゜中のどこにロータが位置しているかをリア
ルタイムで検出し、該ロータ角度θに応じて3相信号si
nθ,sin(θ−120゜),sin(θ−240゜)を発生し、ト
ルク指令TCに3相信号を乗算してU,V,W相の電流指令を
発生し、該電流指令をPWM変調して得られるパルスによ
ってトランジスタインバータを駆動して同期電動機を回
転させるようにしている。In the control of <art> AC servo motor, for example a synchronous motor, while generating the torque command T C according to the velocity error,
It detects in real time where the rotor is located within the electrical angle of 360 °, and outputs a three-phase signal si according to the rotor angle θ.
nθ, sin (θ-120 °), generates a sin (θ-240 °), U is multiplied by a three-phase signal to the torque command T C, V, generates a current command W-phase, the electric current command A pulse obtained by PWM modulation drives a transistor inverter to rotate a synchronous motor.
このため、ACサーボモータ制御においては正確にロー
タが位置する回転角度を検出する必要がある。従来はパ
ルスコーダにアブソリュートコードを発生する手段とイ
ンクリメンタルパルスを発生する手段を設けると共に、
該インクリメンタルパルスを計数し、アブソリュートコ
ードが所定値になる毎にリセットされる計数手段(ロー
タ位相検出用カウンタ)を設け、該ロータ位相検出用カ
ウンタのの計数値によりロータの回転角度θを検出して
いる。For this reason, in the AC servomotor control, it is necessary to accurately detect the rotation angle at which the rotor is located. Conventionally, a pulse coder is provided with a means for generating an absolute code and a means for generating an incremental pulse,
Counting means (rotor phase detection counter) is provided which counts the incremental pulse and resets each time the absolute code reaches a predetermined value, and detects the rotation angle θ of the rotor based on the count value of the rotor phase detection counter. ing.
ところで、パルスコーダのカウンタリセット点とロー
タ角度の零度位置がズレていると正確なロータ角度の検
出ができない。そこで、従来はACサーボモータのU,V,W
相にロータ角度零度に応じた直流電流を流してロータを
固定し、しかる後パルスコーダを回転方向に調整し、ロ
ータ位相検出用カウンタの計数値が0となる回転方向位
置でパルスコーダをACサーボモータに組み付けるように
している。Incidentally, if the counter reset point of the pulse coder deviates from the zero-degree position of the rotor angle, accurate rotor angle detection cannot be performed. Therefore, conventionally, U, V, W
The rotor is fixed by passing a DC current corresponding to the rotor angle of zero degree to the phase, and then the pulse coder is adjusted in the rotation direction, and the pulse coder is connected to the AC servomotor at the rotation position where the count value of the rotor phase detection counter becomes 0. I try to assemble it.
<発明が解決しようとする課題> しかし、このようにACサーボモータの動力線を直流電
源に接続し、パルスコーダの電流位相検出用カウンタを
モニタしながらパルスコーダとACサーボモータの組み付
け位相を決めるというのは、製造工程上かなりの手間が
かゝるという問題がある。特に、DDロボット(ダイレク
ト・ドライブロボット)では、モータがビルトインタイ
プ(内蔵型)のため、パルスコーダがアームに直付けと
なり、ロボット組み立て工程中にパルスコーダの位相合
せを行うことになり、非常に煩わしい作業となる。<Problems to be solved by the invention> However, in this way, the power line of the AC servomotor is connected to the DC power supply, and the mounting phase of the pulsecoder and the AC servomotor is determined while monitoring the current phase detection counter of the pulsecoder. However, there is a problem that a considerable amount of time is required in a manufacturing process. In particular, in the case of DD robots (direct drive robots), the pulse coder is directly attached to the arm because the motor is a built-in type (built-in type), and phase adjustment of the pulse coder is performed during the robot assembly process, which is a very troublesome work. Becomes
以上から、本発明の目的はパルスコーダをロータのど
の位置に取り付けてもよく、換言すれば組み付け時にパ
ルスコーダのカウンタリセット点とロータ位相の零度位
置の位相合せをする必要がないロータ角度検出方法を提
供することである。In view of the above, an object of the present invention is to provide a rotor angle detecting method in which the pulse coder may be attached to any position of the rotor, in other words, there is no need to align the phase of the pulse coder counter reset point with the zero-degree position of the rotor phase during assembly. It is to be.
<課題を解決するための手段> 第1図は本発明のロータ角度検出方法を実現する装置
のブロック図である。<Means for Solving the Problems> FIG. 1 is a block diagram of an apparatus for realizing the rotor angle detecting method of the present invention.
1はパルスコーダ、1aは回転符号板、1dはロータ位相
検出用カウンタ、2はロータ、3aはオフセット記憶レジ
スタ、3bは減算部、3cはデジタルサーボ制御部、ASCは
アブソリュート符号、ICCはインクリメンタル符号であ
る。1 is a pulse coder, 1a is a rotation code plate, 1d is a rotor phase detection counter, 2 is a rotor, 3a is an offset storage register, 3b is a subtraction unit, 3c is a digital servo control unit, ASC is an absolute code, and ICC is an incremental code. is there.
<作用> パルスコーダ1の回転符号板1aにアブソリュート符号
ASCとインクリメンタル符号ICCを設けると共に、該イン
クリメンタル符号ICCに基づいて発生するインクリメン
タルパルスを計数し、アブソリュートコードが所定値に
なる毎にリセットされるカウンタ1dを設け、パルスコー
ダ1をロータ2に組み付け後、モータのU,V,W相にロー
タ角度の零度に応じた電流を印加し、ロータの回転停止
時にカウンタ1dの内容をオフセット値θOFSとしてオフ
セット記憶レジスタ3aに格納し、ACモータの制御時に減
算部3bでカウンタ1dの計数値θRからオフセット値θ
OFSを減算し、減算結果θをロータ角度としてデジタル
サーボ制御部3cに入力してデジタルサーボ制御を実行す
る。<Operation> Absolute code on rotation code plate 1a of pulse coder 1
ASC and an incremental code ICC are provided, and a counter 1d that counts an incremental pulse generated based on the incremental code ICC and is reset every time the absolute code becomes a predetermined value is provided, and after the pulse coder 1 is assembled to the rotor 2, Apply current to the U, V, and W phases of the motor according to the zero degree of the rotor angle, store the contents of the counter 1d as the offset value θ OFS in the offset storage register 3a when the rotor stops rotating, and subtract it when controlling the AC motor. offset value from the count value theta R of the counter 1d in parts 3b theta
OFS is subtracted, and the subtraction result θ is input to the digital servo controller 3c as a rotor angle to execute digital servo control.
<実施例> 第1図は本発明のロータ角度検出方法を実現する装置
のブロック図である。<Embodiment> FIG. 1 is a block diagram of an apparatus for realizing a rotor angle detecting method according to the present invention.
1はパルスコーダであり、4ビットのアブソリュート
コード符号ASC、細かいピッチで形成されたインクリメ
ンタル符号ICCを備えた回転符号板1aと、第1、第2ピ
ックアップ1b,1cと、ロータ位相検出用カウンタ1dを有
している。回転符号板1aの4ビットのアブソリュート符
号ASC(0000〜1111)により電気角で0゜〜360゜が表現
され、更に細かくはインクリメンタル符号に基づいて発
生するインクリメンタルパルスSINを計数することによ
り現わされる。Reference numeral 1 denotes a pulse coder which includes a 4-bit absolute code code ASC, a rotary code plate 1a having an incremental code ICC formed at a fine pitch, first and second pickups 1b and 1c, and a rotor phase detection counter 1d. Have. An electrical angle of 0 ° to 360 ° is represented by a 4-bit absolute code ASC (0000 to 1111) of the rotation code plate 1a, and more specifically, it appears by counting incremental pulses S IN generated based on an incremental code. Is done.
第1ピックアップ1bは、アブソリュート符号ASCを検
出し、検出されたアブソリュートコードが所定値になっ
た時(たとえば第4ビットがハイレベルからローレベル
に変化し、残りの第1〜第3ビットが全てローレベルの
時)リセットパルスPRを発生し、第2ピックアップ1cは
インクリメンタル符号ICCを検出してインクリメンタル
パルスSINを発生し、ロータ位相検出用カウンタ1dはイ
ンクリメンタルパルスSINを計数すると共に、リセット
パルスPRによりリセットされる。The first pickup 1b detects the absolute code ASC, and when the detected absolute code reaches a predetermined value (for example, the fourth bit changes from high level to low level, and the remaining first to third bits are all when) generates a reset pulse P R of low level, the second pick 1c is an incremental pulse S iN occurs by detecting the incremental code ICC, rotor phase detection counter 1d counts the incremental pulses S iN, reset It is reset by the pulse P R.
2はパルスコーダが取り付けられるロータ、3はデジ
タル的にACサーボモータを制御するACサーボモータ制御
装置であり、オフセット記憶レジスタ3a、減算部3b、デ
ジタルサーボ制御部3c等を有している。Reference numeral 2 denotes a rotor to which a pulse coder is attached, and reference numeral 3 denotes an AC servomotor control device that digitally controls an AC servomotor, and includes an offset storage register 3a, a subtraction unit 3b, a digital servo control unit 3c, and the like.
オフセット記憶レジスタ3aにはパルスコーダ1をロー
タ2に組み付けた時のロータ位相検出用カウンタ1dの計
数値がオフセット値として記憶される。すなわち、パル
スコーダ1をロータ2に固定した後、モータのU,V,W相
の各コイルにロータ角度の零度に応じた電流IU=I
(A)、IV=IW=−I/2(A)を印加し、ロータが停止
した時のロータ位相検出用カウンタ1dの計数値をオフセ
ット値θOFSとして読み取ってオフセット記憶レジスタ3
aに格納する。In the offset storage register 3a, the count value of the rotor phase detection counter 1d when the pulse coder 1 is assembled to the rotor 2 is stored as an offset value. That is, after the pulse coder 1 is fixed to the rotor 2, a current I U = I according to the zero degree of the rotor angle is applied to each of the U, V, and W phase coils of the motor.
(A), I V = I W = −I / 2 (A) is applied, and the count value of the rotor phase detection counter 1d when the rotor stops is read as the offset value θ OFS and the offset storage register 3 is read.
Store in a.
減算部3bは実際のACサーボモータ制御時に、ロータ位
相検出用カウンタ1dの計数値θRからオフセット値θ
OFSを減算した値θをロータ角度として出力する。During the subtraction portion 3b actual AC servo motor control, an offset value theta from the count value theta R of the rotor phase detection counter 1d
The value θ obtained by subtracting OFS is output as the rotor angle.
デジタルサーボ制御部3cは、第2図に示すような構成
を有している。11は移動指令MCMDと位置フィードバック
PAの差(位置誤差)ERを演算する演算部、12は位置誤差
ErをKP倍して指令速度VCMDを発生するポジションゲイン
設定部である。13は速度制御部であり、速度指令VCMDと
速度フィードバックVAの差である速度偏差EVを演算する
演算部13aと、速度偏差EVをKV倍してトルク指令TCを発
生するゲイン設定部13bを有している。14は乗算部であ
り、ロータ角度θとトルク指令TCを入力され、 IU=TC・sin(θ+90゜) (1) IV=TC・sin(θ−30゜) (2) IW=TC・sin(θ−150゜) (3) をU,V,W相の電流指令ICとして出力する。15は一定電流
指令発生部であり、オフセット記憶レジスタ3a(第1図
参照)にオフセット値θOFS記憶する際に、U,V,W相にロ
ータ角度の零度に応じた電流 IU=I(A)、IV=IW=−I/2(A) (4) を電流指令IC′として印加する。尚、(4)式は(1)
〜(3)式においてθ=0゜、TC=Iとして得られる。The digital servo controller 3c has a configuration as shown in FIG. 11 is movement command M CMD and position feedback
Calculator for calculating a P difference A (position error) E R, 12 is the position error
The E r is a position gain setting unit for generating a K P multiplied by the command speed V CMD. 13 is a speed control unit, a calculating unit 13a for calculating the speed deviation E V is the difference of the speed command V CMD and the speed feedback V A, the speed deviation E V and K V multiplied to generate a torque command T C It has a gain setting unit 13b. Numeral 14 denotes a multiplication unit which receives the rotor angle θ and the torque command T C , and I U = T C · sin (θ + 90 °) (1) I V = T C · sin (θ-30 °) (2) I outputs W = T C · sin (θ -150 °) to (3) U, V, as a current command I C of W-phase. Reference numeral 15 denotes a constant current command generator, which stores a current I U = I (I) corresponding to the zero degree of the rotor angle in the U, V, and W phases when the offset value θ OFS is stored in the offset storage register 3a (see FIG. 1). A), I V = I W = −I / 2 (A) (4) is applied as the current command I C ′. Expression (4) is expressed by (1)
~ (3) θ = 0 ° in the equation is obtained as T C = I.
16は合成部(IC,IC′が同時に発生することはな
い)、17はモータ部であり、Ktはモータトルク定数、J
はモータイナーシャである。16 is a synthesizing unit (I C and I C ′ do not occur simultaneously), 17 is a motor unit, Kt is a motor torque constant, J
Is motor inertia.
以下、第1図,第2図の全体的動作を説明する。 Hereinafter, the overall operation of FIGS. 1 and 2 will be described.
パルスコーダ1をロータ2に組み付けた後であって、
ACサーボモータをデジタル制御する前にデジタルサーボ
制御部3cにおいて一定電流指令発生部15(第2図参照)
よりモータのU,V,W相にロータ角度零度に応じた直流電
流((4)式参照)を印加する。After assembling the pulse coder 1 to the rotor 2,
Before digitally controlling the AC servomotor, the digital servo controller 3c generates a constant current command generator 15 (see FIG. 2).
A DC current (see equation (4)) corresponding to the rotor angle of zero is applied to the U, V, and W phases of the motor.
尚、直流電流印加前にロータを手動で回転して、第1
ピックアップ1bからリセットパルスPRを少なくとも1個
発生し、これによりロータ位相検出用カウンタ1dの計数
値を1回リセットしておく。Note that the rotor is manually rotated before the DC current is applied, so that the first
At least one generates a reset pulse P R from pickup 1b, thereby keep reset once the count value of the rotor phase detection counter 1d.
直流電流の印加によりロータ2が回転すると該回転に
応じて第2ピックアップ1cからインクリメンタルパルス
SINが発生し、カウンタ1dにより回転方向に応じてカウ
ントされる。When the rotor 2 is rotated by the application of the DC current, an incremental pulse is output from the second pickup 1c according to the rotation.
SIN occurs and is counted by the counter 1d according to the rotation direction.
そして、ロータ2がその零度位置に到達した停止すれ
ば、あるいは直流電流印加後所定時間経過すればその時
のロータ位相検出用カウンタ1dの計数値をオフセット値
θOFSとしてオフセット記憶レジスタ3aに格納する。When the rotor 2 stops at the zero-degree position or stops for a predetermined time after the DC current is applied, the count value of the rotor phase detection counter 1d at that time is stored in the offset storage register 3a as the offset value θ OFS .
以上によりオフセット値θOFSの格納が完了すれば、
デジタルサーボ制御が可能となりデジタルサーボ制御部
3cによりサーボ制御が行われる。この場合、減算部3bは
ロータ位相検出用カウンタ1dの計数値θRからオフセッ
ト値θOFSを減算し、減算結果θをロータ角度としてデ
ジタルサーボ制御部3cに入力し、該デジタルサーボ制御
部3cは該ロータ角度θに基づいて同期電動機のデジタル
サーボ制御を実行する。When the storage of the offset value θ OFS is completed,
Digital servo control becomes possible and digital servo controller
Servo control is performed by 3c. In this case, the subtraction unit 3b subtracts the offset value θ OFS from the count value θ R of the rotor phase detection counter 1d, inputs the subtraction result θ as a rotor angle to the digital servo control unit 3c, and the digital servo control unit 3c The digital servo control of the synchronous motor is executed based on the rotor angle θ.
<発明の効果> 以上本発明によれば、パルスコーダをロータに組み付
け後、モータのU,V,W相にロータ角度の零度に応じた電
流を印加し、ロータの回転停止時にロータ角度計数手段
の内容をオフセット値として格納し、ACモータのデジタ
ルサーボ制御時にロータ角度計数手段の計数値からオフ
セット値を減算した値をロータ角度とするように構成し
たから、パルスコーダをロータのどの位置に取り付けて
もよく、換言すれば組み付け時にパルスコーダのカウン
タリセット点とロータ位相の零度位置に位相合せをする
必要がない。<Effect of the Invention> As described above, according to the present invention, after assembling the pulse coder to the rotor, a current corresponding to the zero degree of the rotor angle is applied to the U, V, and W phases of the motor. The content is stored as an offset value, and the value obtained by subtracting the offset value from the count value of the rotor angle counting means at the time of digital servo control of the AC motor is configured as the rotor angle, so that the pulse coder can be attached to any position of the rotor. In other words, in other words, there is no need to align the phase of the counter reset point of the pulse coder with the zero-degree position of the rotor phase during assembly.
第1図は本発明のロータ角度検出方法を実現する装置の
ブロック図、 第2図は本発明にかかるデジタルサーボ制御部のブロッ
ク図である。 1……パルスコーダ、 1a……回転符号板、 ASC……アブソリュート符号、 ICC……インクリメンタル符号 1d……ロータ位相検出用カウンタ、 2……ロータ、 3a……オフセット記憶レジスタ、 3b……減算部、 3c……デジタルサーボ制御部FIG. 1 is a block diagram of an apparatus for realizing a rotor angle detecting method according to the present invention, and FIG. 2 is a block diagram of a digital servo control unit according to the present invention. 1 pulse coder 1a rotary code plate ASC absolute code ICC incremental code 1d rotor phase detection counter 2 rotor 3a offset storage register 3b subtraction unit 3c …… Digital servo controller
Claims (1)
度に応じた電流指令を発生してACサーボモータを制御す
るACサーボモータ制御装置のロータ角度検出方法におい
て、 パルスコーダにアブソリュートコードを発生する手段と
インクリメンタルパルスを発生する手段を設けると共
に、 該インクリメンタルパルスを計数し、アブソリュートコ
ードが所定値になる毎にリセットされる計数手段を設
け、 パルスコーダをロータに組み付け後、モータのU,V,W相
にロータ角度の零度に応じた電流を印加し、 ロータの回転停止時に前記計数手段の内容をオフセット
値として格納し、 ACサーボモータの制御時に前記計数手段の計数値からオ
フセット値を減算した値をロータ角度とすることを特徴
とするロータ角度検出方法。1. A rotor angle detecting method for an AC servo motor control device for controlling an AC servo motor by generating a current command according to a rotor angle detected by using a pulse coder, comprising: means for generating an absolute code in the pulse coder; A means for generating incremental pulses is provided, and a counting means for counting the incremental pulses and resetting each time the absolute code reaches a predetermined value is provided.After assembling the pulse coder to the rotor, the U, V, W phases of the motor are provided. A current corresponding to the zero degree of the rotor angle is applied, the content of the counting means is stored as an offset value when the rotation of the rotor is stopped, and the value obtained by subtracting the offset value from the counting value of the counting means at the time of controlling the AC servomotor is used as the rotor value. A method for detecting a rotor angle, wherein the method is an angle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63186247A JP2660006B2 (en) | 1988-07-26 | 1988-07-26 | Rotor angle detection method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63186247A JP2660006B2 (en) | 1988-07-26 | 1988-07-26 | Rotor angle detection method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0236783A JPH0236783A (en) | 1990-02-06 |
JP2660006B2 true JP2660006B2 (en) | 1997-10-08 |
Family
ID=16184926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63186247A Expired - Lifetime JP2660006B2 (en) | 1988-07-26 | 1988-07-26 | Rotor angle detection method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2660006B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9484060B2 (en) * | 2013-08-19 | 2016-11-01 | Canon Kabushiki Kaisha | Encoder |
CN112532122B (en) * | 2020-11-06 | 2022-12-20 | 北京精密机电控制设备研究所 | Electromechanical servo actuator zero setting device using encoder |
-
1988
- 1988-07-26 JP JP63186247A patent/JP2660006B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0236783A (en) | 1990-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0141859A1 (en) | Servo control circuit | |
EP0201605A1 (en) | System for controlling the speed of a servo motor | |
US4484126A (en) | Induction motor controller | |
EP0104909B1 (en) | Servomotor control method and apparatus therefor | |
EP0139006A1 (en) | System for controlling synchronous motor | |
JPS59161708A (en) | Servo driving unit | |
JPS61214002A (en) | Control system for follow-up error | |
JP2541169B2 (en) | Resolver detection error correction method | |
JP2660006B2 (en) | Rotor angle detection method | |
US4602196A (en) | Measurement method, and apparatus therefor | |
EP0126778B1 (en) | Servomotor control system | |
JP2004336949A (en) | Motor drive control method and motor drive controller | |
JPH05244792A (en) | Method and apparatus for compensating current phase delay in motor | |
JP3354633B2 (en) | Stepping motor drive | |
JP2764002B2 (en) | Position control system | |
JPWO2020149002A1 (en) | Motor control device | |
JP3111798B2 (en) | Variable speed drive | |
JPS6225893A (en) | Controller for synchronous motor | |
JP3768092B2 (en) | Fully closed loop position controller | |
JPH061992B2 (en) | Motor drive controller | |
Ollervides et al. | Feedback Electronic Power Drive for a Brushless AC Servomotor | |
JPH01258278A (en) | Method and device for driving magnetic head | |
JPH08182377A (en) | Circuit for automatic phase correction of synchronous motor | |
JPS6328284A (en) | Motor speed controller | |
JPH01218380A (en) | Speed control device for moving objects |