JPH05276776A - Phase servo system - Google Patents
Phase servo systemInfo
- Publication number
- JPH05276776A JPH05276776A JP4067471A JP6747192A JPH05276776A JP H05276776 A JPH05276776 A JP H05276776A JP 4067471 A JP4067471 A JP 4067471A JP 6747192 A JP6747192 A JP 6747192A JP H05276776 A JPH05276776 A JP H05276776A
- Authority
- JP
- Japan
- Prior art keywords
- speed
- output
- time
- latch
- mpu
- 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.)
- Pending
Links
Landscapes
- Control Of Electric Motors In General (AREA)
- Control Of Position Or Direction (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は、回転軸の回転速度を
検出する位相サーボシステムに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a phase servo system for detecting the rotation speed of a rotary shaft.
【0002】[0002]
【従来の技術】図5は2相励磁1相出力のレゾルバの概
念的構成を示すもので、90度の機械的角度差をもって
配置した1次巻線1、2にsinωt、cosωtの励
磁信号(一次信号)を加えたとすると、2次巻線3の位
置(回転角)がθのときには、2次巻線3には以下の信
号が発生する。 e=ksin(ωt+θ) k;定数 …(1) 従って、一次信号sinωtと上記式(1)で示す2次
巻線3の出力信号との位相差を求めれば、2次巻線3を
取付けた回転軸の回転角θを求めることができる。2. Description of the Related Art FIG. 5 shows a conceptual structure of a two-phase excitation one-phase output resolver, in which sin ωt and cos ωt excitation signals ( If the position (rotation angle) of the secondary winding 3 is θ, the following signals are generated in the secondary winding 3 assuming that the primary signal is added. e = ksin (ωt + θ) k; constant (1) Therefore, if the phase difference between the primary signal sinωt and the output signal of the secondary winding 3 represented by the above equation (1) is obtained, the secondary winding 3 is attached. The rotation angle θ of the rotation axis can be obtained.
【0003】図6は、従来の位相サーボシステムの構成
を示すブロック図である。FIG. 6 is a block diagram showing the structure of a conventional phase servo system.
【0004】同図において、カウンタ20はカウント上
限が予め設定されたサイクリックカウンタであり、発振
器10からの発振パルスを順次カウントし、そのビット
数で決まるMAX値(飽和値)までのカウントを繰り返
し、そのカウント値を励磁sin・cos発生回路30
及びラッチ40に出力する。図7(a)は、カウンタ2
0の出力が周期的(周期T)にカウントアップされてい
る様子を示している。またカウンタ20は、自己のカウ
ント値の出力信号の周期Tに同期し、その周期Tに1回
発生する信号を生成する。たとえばカウンタ20では、
カウント値が「0」の時点から所定時間t1 が経過した
時点で、生成信号を生成して出力する(図7(c))。
その生成信号は、割り込み要求(割り込み信号)として
マイクロプロセッサユニット(以下、MPUという)5
0に入力され、またラッチ信号としてラッチ60に入力
され、更にリセット信号としてカウンタ70に入力され
る。なおカウンタ70は、入力されたリセット信号に基
づいて、ラッチ60によるラッチ操作が終了した時点で
自己のカウント値をリセットする。In FIG. 1, a counter 20 is a cyclic counter having a preset upper limit count, which sequentially counts oscillation pulses from the oscillator 10 and repeats counting up to a MAX value (saturation value) determined by the number of bits. , The count value of the excitation sin / cos generation circuit 30
And output to the latch 40. FIG. 7A shows the counter 2
It shows that the output of 0 is counted up periodically (cycle T). Further, the counter 20 synchronizes with the cycle T of the output signal of its own count value and generates a signal that occurs once in the cycle T. For example, in counter 20,
When a predetermined time t1 elapses from the time when the count value is "0", a generation signal is generated and output (FIG. 7 (c)).
The generated signal is a microprocessor unit (hereinafter referred to as MPU) 5 as an interrupt request (interrupt signal).
0, the latch signal is input to the latch 60, and the reset signal is input to the counter 70. The counter 70 resets its own count value based on the input reset signal when the latch operation by the latch 60 is completed.
【0005】ラッチ60は、速度指令としての周波数
(パルス数)をカウントするカウンタ70から出力され
るカウント値を入力し、カウンタ20からのラッチ信号
に基づいてカウンタ70のカウント値をラッチする。The latch 60 receives the count value output from the counter 70 which counts the frequency (pulse number) as the speed command, and latches the count value of the counter 70 based on the latch signal from the counter 20.
【0006】励磁sin・cos発生回路30は図示し
ないメモリおよびD/A変換器を備えており、カウンタ
20の出力信号の周期に同期し、周期Tのsin波とc
os波を生成する。メモリ(図示せず)には、レゾルバ
80に出力する一次信号sinωt、cosωtを形成
するためのデータが予め記憶されている。具体的には、
sinωt、cosωtが交互に(時分割に)、かつカ
ウンタ20の1カウント周期T中に1周期分のsinω
t、cosωtのデータが読み出されるようにデータが
記憶されている。そしてメモリからは、カウンタ20の
出力をアドレス信号として記憶データが読み出される。
一方、D/A変換器(図示せず)は2チャンネルであ
り、メモリから出力されるsinωt、cosωtのデ
ータをデジタル/アナログ変換し、その変換信号を励磁
信号sinωt、cosωtとしてレゾルバ80に出力
する(図7(b))。The excitation sin / cos generation circuit 30 is provided with a memory and a D / A converter (not shown) and is synchronized with the cycle of the output signal of the counter 20 and has a sin wave of the cycle T and c.
Generate an os wave. Data for forming the primary signals sinωt and cosωt to be output to the resolver 80 is stored in advance in a memory (not shown). In particular,
sin ωt and cos ωt are alternated (in time division), and sin ω for one cycle is included in one count cycle T of the counter 20.
The data is stored so that the data of t and cosωt can be read. Then, the stored data is read from the memory using the output of the counter 20 as an address signal.
On the other hand, the D / A converter (not shown) has two channels, performs digital / analog conversion on the data of sin ωt and cos ωt output from the memory, and outputs the converted signal to the resolver 80 as excitation signals sin ωt and cos ωt. (FIG.7 (b)).
【0007】レゾルバ80は、回転体同軸上に取付けら
れており、sinωtとcosωtを入力すると、回転
体の回転位置(角)θを励磁信号sinωtに対する位
相角θとして出力する。すなわちレゾルバ80からは、
回転軸の回転に応じて先の式(1)に示したような信号
eが出力される(図7(d))。The resolver 80 is mounted coaxially with the rotating body, and when sin ωt and cos ωt are input, the resolver 80 outputs the rotational position (angle) θ of the rotating body as a phase angle θ with respect to the excitation signal sin ωt. That is, from the resolver 80,
The signal e as shown in the above equation (1) is output according to the rotation of the rotary shaft (FIG. 7 (d)).
【0008】ゼロクロス検出回路90は、レゾルバ80
の出力信号eの例えば、1方向のゼロクロス(例えば、
立ち上がりのゼロクロスつまり負極性から正極性へのゼ
ロクロス)を検出し、この検出信号LT1をラッチ40
に出力する(図7(e))。このゼロクロス検出信号L
T1はラッチ40のラッチタイミング信号となる。The zero-cross detection circuit 90 includes a resolver 80.
Of the output signal e of
The rising zero cross, that is, the zero cross from the negative polarity to the positive polarity) is detected, and this detection signal LT1 is latched by the latch 40.
(FIG. 7 (e)). This zero-cross detection signal L
T1 becomes a latch timing signal for the latch 40.
【0009】ラッチ40は、常にカウンタ20から出力
されるカウント値を入力し、ラッチタイミング信号LT
1が入力される度に、カウンタ20のカウント値をラッ
チする(図7(f))。従って、ラッチ40の出力は励
磁信号sinωtとレゾルバ80の出力との位相差θ、
すなわち2次巻線を取付けた回転軸の位置を表している
ことになる。この位相差θは、MPU50によって読み
込まれる。The latch 40 always receives the count value output from the counter 20, and receives the latch timing signal LT.
Each time 1 is input, the count value of the counter 20 is latched (FIG. 7 (f)). Therefore, the output of the latch 40 is the phase difference θ between the excitation signal sinωt and the output of the resolver 80,
That is, it indicates the position of the rotary shaft to which the secondary winding is attached. This phase difference θ is read by the MPU 50.
【0010】MPU50は、ラッチ40のラッチデータ
をカウンタ20からの割り込み要求(割り込み信号)の
周期に同期したタイミングで読み込むことで、上記ラッ
チデータを定期的にサンプリングするものである(図7
(c)参照)。この結果、MPU50には、図7(g)
に示すような回転軸の位置データがサンプリングされ
る。The MPU 50 reads the latch data of the latch 40 at a timing synchronized with the cycle of the interrupt request (interrupt signal) from the counter 20 to periodically sample the latch data (FIG. 7).
(See (c)). As a result, the MPU 50 is shown in FIG.
Positional data of the rotation axis as shown in (3) is sampled.
【0011】図8は、図7のタイムチャートを、MPU
50の割り込みタイミングとラッチ40のラッチタイミ
ングとを比較し易い様に、書き替えしたものである。FIG. 8 shows the MPU of the time chart of FIG.
This is rewritten so that the interrupt timing of 50 and the latch timing of the latch 40 can be easily compared.
【0012】次に、MPU50は、割り込み信号が入力
されると、図9に示すような制御系の処理を実行する。Next, when the interrupt signal is input, the MPU 50 executes the processing of the control system as shown in FIG.
【0013】(a)位置データθ110はラッチ40の
データを読み込んだもので、回転体の位置θに対応す
る。ここで、位置データθ110と前回読み込んだ位置
データθ´120との差Δθを求める。(A) The position data θ110 is obtained by reading the data of the latch 40 and corresponds to the position θ of the rotating body. Here, the difference Δθ between the position data θ110 and the previously read position data θ′120 is calculated.
【0014】(b)補正130は、上記(a)の処理で
求めた位置差Δθを速度(単位時間(カウンタ20の周
期T)当たりの位置差)に変換するための補正である。
即ちΔθは単位時間T当たり位置差でなく、時間(T+
Δθ)当たりの位置差であるので(図7(d)参照)、
単位時間T当たりの位置差つまり速度vを求めな必要が
ある。その速度vは、 v=T×Δθ/(T+Δθ) (単位はパルスとする) …(2) を演算することにより求めることができる。(B) The correction 130 is a correction for converting the position difference Δθ obtained in the process (a) into a speed (position difference per unit time (cycle T of the counter 20)).
That is, Δθ is not a position difference per unit time T, but time (T +
Δθ) per position difference (see FIG. 7D),
It is necessary to find the position difference per unit time T, that is, the speed v. The velocity v can be obtained by calculating v = T × Δθ / (T + Δθ) (unit is pulse) (2).
【0015】(c)指令速度140はラッチ60から読
み込んだデータである。このデータは、カウンタ70に
入力された速度指令としての周波数を単位時間Tの間、
パルス数をカウントしたデータであるので、指令速度V
に対応している。指令速度V及び速度vが得られると、
速度偏差Δvを求めることができる。すなわち、速度偏
差Δvは、 Δv=V−v …(3) を演算することにより求めることができる。(C) The command speed 140 is data read from the latch 60. This data shows the frequency input to the counter 70 as the speed command during the unit time T,
Since it is data that counts the number of pulses, the command speed V
It corresponds to. When the command speed V and the speed v are obtained,
The speed deviation Δv can be obtained. That is, the velocity deviation Δv can be obtained by calculating Δv = V−v (3).
【0016】(d)前回までの速度偏差の和150は前
回までの速度偏差Δvの総和ΣΔv´であるので、前回
までの速度偏差Δvの総和ΣΔv´に今回の速度偏差を
加算する。すなわち、 ΣΔv←ΣΔv´+Δv …(4) を演算する。この式(4)の演算は連続値系の積分
(I)操作に相当する。次に、上記式(4)を演算する
ことにより得られる速度偏差Δvの総和に積分ゲインT
i160を乗じたものと、速度偏差Δvとの和を求め
る。すなわち、 (Δv+Ti×ΣΔv) …(5) を演算する。最後に、上記式(5)を演算することによ
り得られた演算結果に比例ゲインKp170を乗じたも
のを制御量y180として出力する。(D) Since the sum 150 of the speed deviations up to the previous time is the total sum ΣΔv ′ of the speed deviations Δv up to the previous time, the current speed deviation is added to the total sum ΣΔv ′ of the speed deviations Δv up to the previous time. That is, ΣΔv ← ΣΔv ′ + Δv (4) is calculated. The calculation of the equation (4) corresponds to the integral (I) operation of the continuous value system. Next, the integral gain T is added to the sum of the speed deviations Δv obtained by calculating the above equation (4).
The sum of the product of i160 and the speed deviation Δv is calculated. That is, (Δv + Ti × ΣΔv) (5) is calculated. Finally, the control result y180 is obtained by multiplying the calculation result obtained by calculating the equation (5) by the proportional gain Kp170.
【0017】以上(a)〜(d)の操作をまとめると、
MPU50の処理は次の様になる。 y=Kp(Ti+1)[V−T(θ´−θ)]/(T+θ´−θ) +KpTiΣΔv´ …(6) 但し θ´←θ ΣΔv´←ΣΔv´+V−T(θ´−θ)/(T+θ´−θ) である。Summarizing the operations (a) to (d) above,
The processing of the MPU 50 is as follows. y = Kp (Ti + 1) [VT ([theta] '-[theta]]] / (T + [theta]-[theta]) + KpTi [Sigma] [Delta] v' (6) where [theta] '<-[theta] [Delta] v'<-[Delta] v '+ VT ([theta]'-[theta]) / (T + θ′−θ).
【0018】[0018]
【発明が解決しようとする課題】しかしながら、上記従
来の位相サーボシステムでは、次に示す様な問題点があ
った。 (1)速度入力までのムダ時間が大きく、またその時間
が不連続に変化する。 (2)正しい速度を算出することができない場合があ
る。 (3)不安定な位置データを読み込むことが有り得る。However, the conventional phase servo system described above has the following problems. (1) The waste time until speed input is long, and the time changes discontinuously. (2) There are cases where the correct speed cannot be calculated. (3) Unstable position data may be read.
【0019】次に、これらの問題点を具体例を挙げて順
次説明する。図10は位置データθをMPU50が割り
込みにて入力するタイミングの様子を示したものであ
り、同図において、記号“○”は割込みタイミングを、
その記号“○”内の数字は割り込み回数を、記号“θ”
はラッチされているデータをそれぞれ示している。Next, these problems will be sequentially described with reference to specific examples. FIG. 10 shows the timing at which the MPU 50 inputs the position data θ by an interrupt. In FIG. 10, the symbol “◯” indicates the interrupt timing,
The number in the symbol "○" indicates the number of interrupts, and the symbol "θ"
Indicates the latched data.
【0020】[上記問題点1について]割込み1(図1
0では、記号“○”内に数字1が記入されている時点を
示している。以下、同様とする。)では、時点t1 での
回転体の位置データθ1 を入力し、割込み2 では、時点
t2 での位置データθ2 を入力する。従って、割込み2
で算出する速度v2 は時点t1 から時点t2 までの時間
の回転体の平均速度であるが、今便宣上、時点t2 での
速度であるとすると、割込み2で速度を入力するまでに
(t2 ´−t2 )のムダ時間がある(図10においては
点線で示している期間)。同様に、位置データθが割込
みタイミングを横切った後の割込み5でのムダ時間は
(t4 ´−t4 )となり、割込み2の時のムダ時間と大
きく異なっている。[Problem 1] Interrupt 1 (see FIG. 1)
In 0, the time when the number 1 is written in the symbol “◯” is shown. The same applies hereinafter. ), The position data θ1 of the rotating body at time t1 is input, and the interrupt 2 inputs the position data θ2 at time t2. Therefore, interrupt 2
The speed v2 calculated in step 1 is the average speed of the rotating body during the time from time t1 to time t2. However, if it is the speed at time t2 in this announcement, the speed is input at interrupt 2 (t2 There is a waste time of'-t2) (the period shown by the dotted line in FIG. 10). Similarly, the dead time at interrupt 5 after the position data θ crosses the interrupt timing is (t4'-t4), which is significantly different from the waste time at interrupt 2.
【0021】図10に注目して、速度を入力するまでの
ムダ時間の変化をみると、ムダ時間は、時間が経過して
行くに従って次第に小さくなり、位置データθが割込み
タイミングを横切る直前で最小値(Min値)となる。更
に、その割込みタイミングを横切った後最大値(Max
値)となり、そこから再度次第に減少していく。なお、
回転方向が逆の場合(位置θが減少していく)には、ム
ダ時間は次第に増加した後、最大値から最小値になる。
このようなムダ時間とその不連続な変化は制御制を著し
く損なう。Looking at the change in the dead time until the speed is input, paying attention to FIG. 10, the dead time becomes gradually smaller as the time elapses, and becomes minimum immediately before the position data θ crosses the interrupt timing. It becomes a value (Min value). Furthermore, after crossing the interrupt timing, the maximum value (Max
Value), and then gradually decreases again. In addition,
When the rotation direction is opposite (position θ decreases), the dead time gradually increases and then becomes the maximum value to the minimum value.
Such waste time and its discontinuous change significantly impair the control system.
【0022】[上記問題点2について]図10中割込み
4について考えてみる。例えば割込み3が発生してから
割込み4が発生するまでの期間においては、ラッチ40
からの出力は更新されていないので、割込み4において
も、割込み3で入力した位データ置θ3 を再度入力して
しまうことになる。従って、位置差Δθは、Δθ=θ3
−θ3 =0となってしまい、正しい速度を算出すること
ができない。同様に、逆回転時には今回の割込みと前回
の割込みとの間に、ラッチ40からの出力つまりデータ
が2回更新されてしまうので、この場合も正しい速度を
算出することができない。[Problem 2] Consider the interrupt 4 in FIG. For example, in the period from the generation of the interrupt 3 to the generation of the interrupt 4, the latch 40
Since the output from is not updated, even in the interrupt 4, the data unit θ3 input in the interrupt 3 is input again. Therefore, the positional difference Δθ is Δθ = θ3
Since -θ3 = 0, the correct speed cannot be calculated. Similarly, during reverse rotation, the output from the latch 40, that is, the data is updated twice between the current interrupt and the previous interrupt, so that the correct speed cannot be calculated in this case as well.
【0023】[上記問題点3について]ラッチ40は、
データが書き換わるとき、必ず過渡的に出力が不安定に
なるときがあり、その時に、MPU50がラッチ40か
らのデータを読み込むことが有り得る。これは、ラッチ
タイミングと割込みタイミングとが一致した場合に起こ
り得る。[Problem 3] The latch 40 is
When data is rewritten, the output may always be transiently unstable, and at that time, the MPU 50 may read the data from the latch 40. This can happen if the latch timing and the interrupt timing match.
【0024】以上説明したように、従来の位相サーボシ
ステムにおいては、正確な回転速度を演算することがで
きなかった。As explained above, in the conventional phase servo system, it was not possible to accurately calculate the rotation speed.
【0025】この発明は、正確な検出速度を成し得る位
相サーボシステムを提供することを目的とする。An object of the present invention is to provide a phase servo system capable of achieving accurate detection speed.
【0026】[0026]
【課題を解決するための手段】上記目的を達成するた
め、この発明は、レゾルバの励磁信号とレゾルバの2次
巻線の出力との位相差を所定の周期でサンプリングし、
前回および今回のサンプリング値の差を求めることで2
次巻線の回転速度を演算し、この演算した回転速度と指
令速度との偏差に対してPI補償を行う位相サーボシス
テムにおいて、前記2次巻線の出力のゼロクロスに対応
するタイミングで、前記2次巻線の回転位置を示す位置
データおよび前記指令速度をサンプリングすることを特
徴としている。In order to achieve the above object, the present invention samples the phase difference between the excitation signal of the resolver and the output of the secondary winding of the resolver at a predetermined cycle,
2 by calculating the difference between the previous and current sampling values
In a phase servo system that calculates the rotational speed of the secondary winding and performs PI compensation for the deviation between the calculated rotational speed and the commanded speed, the phase servo system is operated at the timing corresponding to the zero cross of the output of the secondary winding. Position data indicating the rotational position of the next winding and the commanded speed are sampled.
【0027】[0027]
【作用】この発明の位相サーボシステムでは、レゾルバ
の2次巻線の出力のゼロクロスに対応するタイミング
で、その2次巻線の回転位置を示す位置データ、及び指
令速度に対応する所定のパルス数をサンプリングすると
共に、前回および今回の位置データのサンプリング値の
差を求めることで2次巻線の回転速度を演算し、更に、
この演算した回転速度とサンプリングした所定のパルス
数との偏差に対してPI補償を行う。In the phase servo system of the present invention, the position data indicating the rotational position of the secondary winding of the resolver and the predetermined number of pulses corresponding to the command speed are provided at the timing corresponding to the zero cross of the output of the secondary winding. Is calculated, the rotational speed of the secondary winding is calculated by calculating the difference between the sampling values of the previous and current position data, and
PI compensation is performed for the deviation between the calculated rotation speed and the sampled predetermined number of pulses.
【0028】[0028]
【実施例】以下、本発明の実施例を添付図面を参照して
説明する。Embodiments of the present invention will be described below with reference to the accompanying drawings.
【0029】図1は、本発明に係る位相サーボシステム
をブロック図で示したものである。このブロック図は、
基本的には図6に示した従来のブロック図と同様の構成
になっている。同図において図6に示した構成要素と同
様の機能を果たす部分には同一符号を付している。FIG. 1 is a block diagram showing a phase servo system according to the present invention. This block diagram is
Basically, it has the same configuration as the conventional block diagram shown in FIG. In the figure, parts that perform the same functions as the components shown in FIG. 6 are assigned the same reference numerals.
【0030】しかし、この実施例においては、従来では
カウンタ40の出力信号の周期に同期していたMPU5
0の割り込み及び速度指令のパルスカウント値のラッチ
についても、ラッチ40のラッチタイミングと同様に、
ゼロクロス検出回路90からのゼロクロス検出信号L1
に基づいて行うようにしている。However, in this embodiment, the MPU 5 which is conventionally synchronized with the cycle of the output signal of the counter 40 is used.
As for the latch of the interrupt of 0 and the pulse count value of the speed command, the same as the latch timing of the latch 40,
Zero cross detection signal L1 from the zero cross detection circuit 90
It is based on.
【0031】即ち、ゼロクロス検出回路90でレゾルバ
80の出力信号のゼロクロスを検出すると、このゼロク
ロス検出信号L1が、カウンタ70のカウンタ値(指令
速度としてのパルス数)をラッチするラッチ60、カウ
ンタ70のカウンタ値(発振パルス数)をラッチするラ
ッチ40、及びカウンタ70に入力されるので、ラッチ
60及びラッチ40はゼロクロス検出信号L1に基づい
て、それぞれのデータをラッチする。同時にMPU50
に割り込み信号が入力されるので、MPU50は、割り
込み信号としてのゼロクロス検出信号L1に基づいて速
度演算するためのプログラムを起動し、このプログラム
を実行する。なおMPU50は、割り込み信号に基づい
て、ラッチ40のラッチタイミングと一致しないよう
に、つまり不安定な位置データを読み込むことのないよ
うに、ラッチ40のラッチデータを読み込むように設定
されている。That is, when the zero-cross detection circuit 90 detects the zero-cross of the output signal of the resolver 80, the zero-cross detection signal L1 latches the counter value of the counter 70 (the number of pulses as the command speed) of the latch 60 and the counter 70. Since it is input to the latch 40 that latches the counter value (oscillation pulse number) and the counter 70, the latch 60 and the latch 40 latch each data based on the zero-cross detection signal L1. At the same time MPU50
Since an interrupt signal is input to the MPU 50, the MPU 50 activates a program for speed calculation based on the zero-cross detection signal L1 as an interrupt signal, and executes this program. The MPU 50 is set to read the latch data of the latch 40 based on the interrupt signal so as not to match the latch timing of the latch 40, that is, so as not to read unstable position data.
【0032】以上の操作を図示すると図2の様になる。
図2からも分かるように、レゾルバ80の出力信号の負
極性から正極性へのゼロクロスに対応するタイミング
で、MPU50の割り込み及びカウンタ20のカウント
値のラッチが行われている。図2には図示されていない
が、勿論、そのタイミングでカウンタ70のリセットも
行われている。The above operation is illustrated in FIG.
As can be seen from FIG. 2, the interrupt of the MPU 50 and the count value of the counter 20 are latched at the timing corresponding to the zero-cross from the negative polarity to the positive polarity of the output signal of the resolver 80. Although not shown in FIG. 2, of course, the counter 70 is also reset at that timing.
【0033】次に、割り込み信号が入力されたMPU5
0は、図3に示すような制御系の処理を実行する。Next, the MPU 5 to which the interrupt signal is input
0 executes the processing of the control system as shown in FIG.
【0034】従来と異なるところは、図3に示すような
制御系の処理が回転体の速度に応じて非同期的に実行さ
れるということである。言い換えれば、図3に示すよう
な制御系の処理を実行するためのプログラム自身が回転
体の速度に応じて非同期的に起動されるということであ
る。What is different from the prior art is that the processing of the control system as shown in FIG. 3 is executed asynchronously according to the speed of the rotating body. In other words, the program itself for executing the processing of the control system as shown in FIG. 3 is asynchronously started according to the speed of the rotating body.
【0035】(A)今回の位置データθ210と前回の
位置データθ´220との差より求められるΔθは時間
(T+Δθ)当りの位置差であり、従来と同じ意味を持
つ。従って、Δθを速度vに変換する補正230も従来
と同じである。(A) Δθ obtained from the difference between the current position data θ 210 and the previous position data θ ′ 220 is the position difference per time (T + Δθ) and has the same meaning as in the prior art. Therefore, the correction 230 for converting Δθ into the speed v is also the same as the conventional one.
【0036】(B)一方、速度指令ω240は時間(T
+Δθ)でカウントしたパルス数であるので、真の指令
速度ではない。補正250はそのパルス数を単位時間T
当りのパルス数に変換するためのものである。従って速
度指令Vは、 V=T×ω/(T+Δθ) …(7) を演算することにより求めることができる。(B) On the other hand, the speed command ω240 is the time (T
Since it is the number of pulses counted by + Δθ), it is not the true command speed. The correction 250 uses the number of pulses as the unit time T
It is for converting into the number of pulses per hit. Therefore, the speed command V can be obtained by calculating V = T × ω / (T + Δθ) (7)
【0037】(C)ここで積分(I)操作について考え
る。ここでは、図4に示すようなタイミングで割り込み
が発生する場合の積分操作について説明する。同図にお
いて、t0、t1、t2、t3は割り込みタイミングを、T1 、
T2 、T3 は時間(期間)をそれぞれ示している。連続
系では速度偏差をV(t)とすると、 ∫V(t)dt =(t0)∫(t1)・V(t) dt+(t1)∫(t2)・V(t)dt +(t2)∫(t3)・V(t) dt+… …(8) 但し、(A) ∫(B) ・V(t) dtはV(t) に対する(A) から
(B) まで積分することを意味する。で表すことができ
る。一方、この実施例の場合のように離散値系の場合で
は、 ΣΔv=Δv(T 1 )+Δv(T 2 )+Δv(T 3 )+… …(9) 但し、Δv(T 1 )は時間T1当りの速度偏差(パルス)
である。で表すことができる。このことより積分計算に
用いる速度偏差Δv2 は、割り込み周期に応じた速度偏
差すなわち Δv2 =Δω−Δθ …(10) を演算することにより得られる値を採用する。(C) Now consider the integration (I) operation. Here, an integration operation when an interrupt occurs at the timing shown in FIG. 4 will be described. In the figure, t0, t1, t2, and t3 are interrupt timings, and T1,
T2 and T3 indicate time (period), respectively. In the continuous system, if the velocity deviation is V (t), ∫V (t) dt = (t0) ∫ (t1) ・ V (t) dt + (t1) ∫ (t2) ・ V (t) dt + (t2) ∫ (t3) ・ V (t) dt +… (8) However, (A) ∫ (B) ・ V (t) dt is calculated from (A) for V (t)
It means to integrate to (B). Can be expressed as On the other hand, in the case of a discrete value system like the case of this embodiment, ΣΔv = Δv (T 1) + Δv (T 2) + Δv (T 3) + (9) where Δv (T 1) is the time T 1 Speed deviation per pulse (pulse)
Is. Can be expressed as Therefore, the speed deviation Δv2 used in the integral calculation is a value obtained by calculating the speed deviation corresponding to the interrupt period, that is, Δv2 = Δω−Δθ (10).
【0038】(D)比例計算で用いる速度偏差Δv1 は
先に述べた式(3)と同様のもの、即ち、 Δv1 =V−v …(11) を演算することにより得られる値を採用する。すなわ
ち、上記式(10)、(11)により速度偏差Δv1 、
Δv2 が得られることになるので、MPU50は、前回
までの速度偏差Δv2 の総和260と上記式(10)を
演算して得られる速度偏差Δv2 とを加算し、次に、そ
の加算結果に積分ゲインTi270を乗じたものと、上
記式(11)を演算して得られる速度偏差Δv1 との和
を演算し、更にその演算結果に比例ゲインKp280を
乗じたものを制御量y290として出力する。(D) The velocity deviation .DELTA.v1 used in the proportional calculation is the same as that of the above-mentioned equation (3), that is, the value obtained by calculating .DELTA.v1 = Vv (11). That is, according to the above equations (10) and (11), the speed deviation Δv1,
Since Δv2 is obtained, the MPU 50 adds the sum 260 of the speed deviations Δv2 up to the previous time and the speed deviation Δv2 obtained by calculating the above equation (10), and then adds the integral gain to the addition result. The sum of the product of Ti270 and the velocity deviation .DELTA.v1 obtained by calculating the equation (11) is calculated, and the product of the calculation result and the proportional gain Kp280 is output as the control amount y290.
【0039】上述した(A)〜(D)の操作をまとめる
と、MPU50の処理は次の様になる。 y=[Kp×T(ω−θ´+θ)]/(T+θ´−θ) +Kp×Ti(ΣΔv2 ´+ω−θ´+θ) …(12) 但し、θ´←θ ΣΔv2 ´←(ΣΔv2 ´+ω−θ´+θ) である。Summarizing the operations (A) to (D) described above, the process of the MPU 50 is as follows. y = [Kp × T (ω−θ ′ + θ)] / (T + θ′−θ) + Kp × Ti (ΣΔv2 ′ + ω−θ ′ + θ) (12) However, θ ′ ← θ ΣΔv2 ′ ← (ΣΔv2 ′ + ω) −θ ′ + θ).
【0040】以上説明した様に本実施例によれば、次の
様な利点がある。 (1)速度計算のための位置データの入力が、常に位置
データラッチ直後に行えるため、ムダ時間が小さく、し
かもそのムダ時間の値はほぼ一定になるので、回転速度
の制御性が向上する。 (2)あるサンプリング時から次のサンプリング時まで
に、位置データは必ず1回だけ更新されるので、常に正
確な速度を演算することができる。 (3)位置データが更新されるタイミングと、位置デー
タを読み出すタイミングの差が相対的に一定なので、デ
ータが不安定な時に読み出すといった可能性がなくな
る。As described above, this embodiment has the following advantages. (1) Since the position data for speed calculation can always be input immediately after the position data is latched, the dead time is small, and the value of the dead time is almost constant, so that the controllability of the rotation speed is improved. (2) Since the position data is always updated only once from one sampling time to the next sampling time, an accurate speed can always be calculated. (3) Since the difference between the timing at which the position data is updated and the timing at which the position data is read is relatively constant, there is no possibility of reading when the data is unstable.
【0041】[0041]
【発明の効果】以上説明したように本発明によれば、レ
ゾルバの2次巻線の出力のゼロクロスに対応するタイミ
ングで、その2次巻線の回転位置を示す位置データ及び
指令速度をサンプリングすると共に、前回および今回の
位置データのサンプリング値の差を求めることで2次巻
線の回転速度を演算し、更に、この演算した回転速度と
サンプリングした指令速度との偏差に対してPI補償を
行うようにしたので、最適な制御量を得ることができる
こととなり、正確な検出速度を成し得る位相サーボシス
テムを提供することができる。As described above, according to the present invention, the position data indicating the rotational position of the secondary winding and the command speed are sampled at the timing corresponding to the zero cross of the output of the secondary winding of the resolver. At the same time, the rotation speed of the secondary winding is calculated by obtaining the difference between the sampled values of the previous and current position data, and PI compensation is performed for the deviation between the calculated rotation speed and the sampled command speed. By doing so, it is possible to obtain an optimum controlled variable, and it is possible to provide a phase servo system capable of achieving an accurate detection speed.
【図1】本発明に係る位相サーボシステムの一実施例を
示すブロック図。FIG. 1 is a block diagram showing an embodiment of a phase servo system according to the present invention.
【図2】本実施例の位相サーボシステムの各部の作用を
示すタイムチャート。FIG. 2 is a time chart showing the operation of each part of the phase servo system of the present embodiment.
【図3】本実施例におけるマイクロプロセッサユニット
が処理する制御系を示す図。FIG. 3 is a diagram showing a control system processed by a microprocessor unit according to the present embodiment.
【図4】本実施例での積分操作を説明するための図。FIG. 4 is a diagram for explaining an integration operation in this embodiment.
【図5】レゾルバの概念構成を示す図。FIG. 5 is a diagram showing a conceptual configuration of a resolver.
【図6】従来の位相サーボシステムの構成を示すブロッ
ク図。FIG. 6 is a block diagram showing a configuration of a conventional phase servo system.
【図7】図6に示す位相サーボシステムの各部の作用を
示すタイムチャート。7 is a time chart showing the operation of each part of the phase servo system shown in FIG.
【図8】図7に示すタイムチャートを、従来における割
り込みタイミングとラッチタイミングとを比較し易い様
に書き替えたタイムチャート。FIG. 8 is a time chart obtained by rewriting the time chart shown in FIG. 7 so that it is easy to compare the interrupt timing and the latch timing in the related art.
【図9】従来の位相サーボシステムが処理する制御系を
示す図。FIG. 9 is a diagram showing a control system processed by a conventional phase servo system.
【図10】従来の位相サーボシステムの不具合を説明す
るための図。FIG. 10 is a diagram for explaining a defect of a conventional phase servo system.
10…発振器、20、70…カウンタ、30…励磁si
n・cos発生回路、40、60…ラッチ、50…マイ
クロプロセッサユニット、80…レゾルバ、90…ゼロ
クロス検出回路。10 ... Oscillator, 20, 70 ... Counter, 30 ... Excitation si
n · cos generation circuit, 40, 60 ... Latch, 50 ... Microprocessor unit, 80 ... Resolver, 90 ... Zero cross detection circuit.
Claims (1)
の出力との位相差を所定の周期でサンプリングし、前回
および今回のサンプリング値の差を求めることで2次巻
線の回転速度を演算し、この演算した回転速度と指令速
度との偏差に対してPI補償を行う位相サーボシステム
において、 前記2次巻線の出力のゼロクロスに対応するタイミング
で、前記2次巻線の回転位置を示す位置データ及び前記
指令速度をサンプリングすることを特徴とする位相サー
ボシステム。1. The rotational speed of the secondary winding is determined by sampling the phase difference between the excitation signal of the resolver and the output of the secondary winding of the resolver at a predetermined cycle and obtaining the difference between the previous and present sampled values. In a phase servo system that performs PI compensation for the deviation between the calculated rotational speed and the commanded speed, the rotational position of the secondary winding is determined at the timing corresponding to the zero cross of the output of the secondary winding. A phase servo system characterized by sampling the indicated position data and the commanded speed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4067471A JPH05276776A (en) | 1992-03-25 | 1992-03-25 | Phase servo system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4067471A JPH05276776A (en) | 1992-03-25 | 1992-03-25 | Phase servo system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05276776A true JPH05276776A (en) | 1993-10-22 |
Family
ID=13345911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4067471A Pending JPH05276776A (en) | 1992-03-25 | 1992-03-25 | Phase servo system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05276776A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008096858A1 (en) * | 2007-02-09 | 2008-08-14 | Toshiba Kikai Kabushiki Kaisha | Phase difference detector and rotational position detector |
JP2008289361A (en) * | 2008-09-03 | 2008-11-27 | Fujitsu Ten Ltd | Motor driving system |
-
1992
- 1992-03-25 JP JP4067471A patent/JPH05276776A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008096858A1 (en) * | 2007-02-09 | 2008-08-14 | Toshiba Kikai Kabushiki Kaisha | Phase difference detector and rotational position detector |
JP2008196888A (en) * | 2007-02-09 | 2008-08-28 | Toshiba Mach Co Ltd | Phase difference detection device and rotational position detection device |
KR100980168B1 (en) * | 2007-02-09 | 2010-09-03 | 도시바 기카이 가부시키가이샤 | Phase difference detector and rotational position detector |
US8019037B2 (en) | 2007-02-09 | 2011-09-13 | Toshiba Kikai Kabushiki Kaisha | Phase difference detection device and rotation position detection device |
JP2008289361A (en) * | 2008-09-03 | 2008-11-27 | Fujitsu Ten Ltd | Motor driving system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3368837B2 (en) | Resolver signal processor | |
US4795954A (en) | Resolver controlling method and apparatus | |
JP2013220006A (en) | Motor controller, motor control method and motor control program | |
JP3460017B2 (en) | R / D converter | |
JPH05276776A (en) | Phase servo system | |
JPH1198876A (en) | Position and speed detecting device | |
JPH0565827B2 (en) | ||
JP2000337924A (en) | R/d converter | |
JPH0835857A (en) | Method for detecting angle of rotation | |
EP0257100B1 (en) | Pulse distribution type position detector | |
KR101865325B1 (en) | Method for detecting rotor position of BLDC motor | |
JPS63179259A (en) | Speed detecting method using resolver | |
JP3439814B2 (en) | Digital PLL device | |
JPH05346434A (en) | Drive controller for resolver | |
JPH05157752A (en) | Controlling device of drive of resolver | |
JPS61157282A (en) | Motor controller | |
JPH0437386B2 (en) | ||
JP2551680B2 (en) | Position detection device | |
JPS5923196B2 (en) | Digital servo system | |
JPH05273221A (en) | Controlling apparatus for driving of resolver | |
JP2874797B2 (en) | Control device for vibration actuator | |
JPH04184120A (en) | Resolver driving control device | |
KR100255855B1 (en) | Detecting method and apparatus of precision position/ speed for the servo controller | |
JPS6156950B2 (en) | ||
KR0124337Y1 (en) | A digital synchro converter generating position commands for constant speed |