JP2002116058A - Encoder data conversion circuit - Google Patents

Encoder data conversion circuit

Info

Publication number
JP2002116058A
JP2002116058A JP2000310698A JP2000310698A JP2002116058A JP 2002116058 A JP2002116058 A JP 2002116058A JP 2000310698 A JP2000310698 A JP 2000310698A JP 2000310698 A JP2000310698 A JP 2000310698A JP 2002116058 A JP2002116058 A JP 2002116058A
Authority
JP
Japan
Prior art keywords
data
position data
cycle
encoder
difference
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
Application number
JP2000310698A
Other languages
Japanese (ja)
Inventor
Kenji Hara
憲二 原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2000310698A priority Critical patent/JP2002116058A/en
Publication of JP2002116058A publication Critical patent/JP2002116058A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an encoder data conversion circuit capable of performing calculation by taking in detection position data at any time in the side of a high order controller for receiving the detection position data from a serial encoder to perform control. SOLUTION: A difference between current cyclic position data and position data before one cycle is taken with a subtractor 107, the data of the increment of differential data are converted into a pulse train by an adder 12 and a register 123, counting is performed by a counter 131 on the basis of the symbol of the differential data and the converted pulse train, the contents of the counter 131 are time-serially superposed on the current cyclic position data by the adder 141, and the position data are generated at an arbitrary time to linearly time- serially interpolate a part between the current cycles from the position data of the current cycle and before one cycle.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、エンコーダから一
定周期で送られてくる位置データを受け取って任意時間
の位置データに変換するエンコーダデータ変換回路に係
り、特に、シリアルエンコーダからの検出位置データを
受け取って制御を行う上位コントローラ側で何時でも検
出位置データを取り込んで演算を行うことができるよう
にしたエンコーダデータ変換回路に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an encoder data conversion circuit for receiving position data sent from an encoder at a constant period and converting the data into position data at an arbitrary time. The present invention relates to an encoder data conversion circuit in which a higher-level controller that receives and controls can always take in detection position data and perform an operation.

【0002】[0002]

【従来の技術】FAシステムやFAロボットのサーボモ
ータの位置・速度制御等において、位置検出手段として
使用されるシリアルエンコーダは、検出した位置データ
を一定周期で送出するので、該検出位置データを受け取
って制御を行う上位のコントローラ側では、シリアルエ
ンコーダの伝送周期にコントローラ内の演算周期を合わ
せる必要があった。
2. Description of the Related Art A serial encoder used as a position detecting means in a FA system or a position / speed control of a servomotor of a FA robot sends out detected position data at a constant period. On the upper controller side, which performs the control in this way, it is necessary to match the operation cycle in the controller with the transmission cycle of the serial encoder.

【0003】[0003]

【発明が解決しようとする課題】このように、上位コン
トローラ側で、シリアルエンコーダの伝送周期にコント
ローラ内の演算周期を合わせる必要があるということ
は、コントローラの自由度が制限されることを意味し、
また、コントローラの演算周期をシリアルエンコーダの
伝送周期に同期させるための回路も必要となってくるこ
とから、システム規模やコストにも影響を及ぼす要因と
もなっていた。さらに、コントローラの制御の精度を向
上させるためには、伝送周期の短いシリアルエンコーダ
を用意する必要があり、このこともシステムコスト増大
の要因となっていた。本発明は、上記従来の事情に鑑み
てなされたものであって、エンコーダから一定周期で送
られてくる位置データを受け取って任意時間の位置デー
タに変換するエンコーダデータ変換回路ににおいて、シ
リアルエンコーダからの検出位置データを受け取って制
御を行う上位コントローラ側で、コントローラ内の演算
周期をシリアルエンコーダの伝送周期に合わせる必要が
無く、何時でも検出位置データを取り込んで演算を行う
ことができ、コントローラの自由度を向上させ得るエン
コーダデータ変換回路を提供することを目的としてい
る。
As described above, it is necessary for the host controller to match the operation cycle in the controller with the transmission cycle of the serial encoder, which means that the degree of freedom of the controller is limited. ,
In addition, a circuit for synchronizing the operation cycle of the controller with the transmission cycle of the serial encoder is required, which has been a factor that affects the system scale and cost. Further, in order to improve the control accuracy of the controller, it is necessary to prepare a serial encoder having a short transmission cycle, which also causes an increase in system cost. The present invention has been made in view of the above-described conventional circumstances, and an encoder data conversion circuit that receives position data sent from an encoder at a constant cycle and converts the data into position data at an arbitrary time. There is no need to adjust the operation cycle in the controller to the transmission cycle of the serial encoder on the higher-level controller that receives and controls the detection position data of the controller. It is an object of the present invention to provide an encoder data conversion circuit capable of improving the degree.

【0004】[0004]

【課題を解決するための手段】上記課題を解決するため
に、本発明の請求項1に係るエンコーダデータ変換回路
は、エンコーダから一定周期で送られてくる位置データ
を受け取って任意時間の位置データに変換するエンコー
ダデータ変換回路において、現周期の位置データと1周
期前の位置データとの差分をとる差分手段と、前記差分
手段により得られた差分データに基づき、該差分データ
の増加分のデータをパルス列に変換するパルス出力手段
と、前記差分データの符号および前記パルス出力手段の
パルス列に基づき計数を行う計数手段と、現周期の位置
データに前記計数手段の計数内容を時系列的に重畳させ
る重畳手段とを具備するものである。また、請求項2に
係るエンコーダデータ変換回路は、エンコーダから一定
周期で送られてくる位置データを受け取って任意時間の
位置データに変換するエンコーダデータ変換回路におい
て、現周期の位置データ、1周期前の位置データおよび
2周期前の位置データに基づき、現周期の位置データに
対する1周期後の位置データの増分データを予測する増
分予測手段と、前記増分予測手段により得られた増分デ
ータに基づき、該増分データの増加分のデータをパルス
列に変換するパルス出力手段と、前記増分データの符号
および前記パルス出力手段のパルス列に基づき計数を行
う計数手段と、現周期の位置データに前記計数手段の計
数内容を時系列的に重畳させる重畳手段とを具備するも
のである。また、請求項3に係るエンコーダデータ変換
回路は、エンコーダから一定周期で送られてくる位置デ
ータを受け取って任意時間の位置データに変換するエン
コーダデータ変換回路において、前記位置データの受け
取り周期に同期して計数するタイマと、現周期の位置デ
ータと1周期前の位置データとの差分をとる差分手段
と、前記差分手段により得られた差分データおよび前記
タイマの計数内容に基づき、現周期の位置データに対す
る増分データを時系列的に算出する増分演算手段と、現
周期の位置データに前記増分演算手段の算出結果を時系
列的に重畳させる重畳手段とを具備するものである。さ
らに、請求項4に係るエンコーダデータ変換回路は、請
求項1、2または3に記載のエンコーダデータ変換回路
において、現周期における前記重畳手段の最終的な結果
が1周期後の位置データと同一であることとしたもので
ある。
According to a first aspect of the present invention, there is provided an encoder data conversion circuit which receives position data sent from an encoder at a constant period, and receives position data at an arbitrary time. An encoder data conversion circuit for converting the difference data between the position data of the current cycle and the position data of one cycle before; and a data for increasing the difference data based on the difference data obtained by the difference means. To a pulse train, a counting unit for counting based on the sign of the difference data and the pulse train of the pulse output unit, and superimposing the counting content of the counting unit on the current cycle position data in time series. And superimposing means. An encoder data conversion circuit according to a second aspect of the present invention is an encoder data conversion circuit for receiving position data sent from an encoder at a fixed period and converting the data into position data at an arbitrary time. Based on the position data of the current cycle and the position data of the previous cycle, based on the position data of the current cycle and the position data of the current cycle, based on the increment data obtained by the increment prediction means, Pulse output means for converting the increment data of the increment data into a pulse train; counting means for counting based on the sign of the incremental data and the pulse train of the pulse output means; And a superimposing means for superimposing in a time series. An encoder data conversion circuit according to a third aspect of the present invention is an encoder data conversion circuit for receiving position data sent from an encoder at a constant cycle and converting the data into position data for an arbitrary time. A timer that counts the current period, a difference unit that calculates a difference between the position data of the current period and the position data of the previous period, and a position data of the current period based on the difference data obtained by the difference unit and the count content of the timer. And a superimposing means for superimposing the calculation result of the incremental computing means on the position data of the current cycle in a time series manner. Further, in the encoder data conversion circuit according to claim 4, in the encoder data conversion circuit according to claim 1, 2, or 3, the final result of the superimposing means in the current cycle is the same as the position data after one cycle. That is what it was.

【0005】本発明の請求項1および4に係るエンコー
ダデータ変換回路では、エンコーダから一定周期で送ら
れてくる位置データを受け取ると、差分手段により現周
期の位置データと1周期前の位置データとの差分をと
り、差分手段によって得られた差分データに基づき、パ
ルス出力手段により該差分データの増加分のデータをパ
ルス列に変換し、差分データの符号およびパルス出力手
段のパルス列に基づき計数手段により計数を行い、重畳
手段により現周期の位置データに計数手段の計数内容を
時系列的に重畳させて、任意時間の位置データを生成す
るようにしている。ここで、現周期における重畳手段の
最終的な結果が1周期後の位置データと同一となるのが
望ましい。このように、現周期の位置データと1周期前
の位置データとの差分を、現周期の位置データから1周
期後の位置データへの増分データと仮定し、現周期の位
置データに計数手段の計数内容を時系列的に重畳させ
て、これを任意時間の位置データとすることにより、現
周期の間を現周期および1周期前の位置データから時系
列的に直線補間するので、シリアルエンコーダからの検
出位置データを受け取って制御を行う上位コントローラ
側において、コントローラ内の演算周期をシリアルエン
コーダの伝送周期に合わせる必要が無くなり、シリアル
エンコーダの伝送周期を上げることなく、見掛け上最新
の検出位置データを何時でも取り込んで演算を行うこと
が可能となり、結果としてコントローラの自由度を向上
させることが可能となる。また、請求項2および4に係
るエンコーダデータ変換回路では、エンコーダから一定
周期で送られてくる位置データを受け取ると、増分予測
手段により現周期の位置データ、1周期前の位置データ
および2周期前の位置データに基づき、現周期の位置デ
ータに対する1周期後の位置データの増分データを予測
し、増分予測手段により得られた増分データに基づき、
パルス出力手段により該増分データの増加分のデータを
パルス列に変換し、増分データの符号およびパルス出力
手段のパルス列に基づき計数手段により計数を行い、重
畳手段により現周期の位置データに計数手段の計数内容
を時系列的に重畳させて、任意時間の位置データを生成
するようにしている。ここで、現周期における重畳手段
の最終的な結果が1周期後の位置データと同一となるの
が望ましい。このように、現周期の位置データ、1周期
前の位置データおよび2周期前の位置データに基づき、
現周期の位置データに対する1周期後の位置データの増
分データを予測し、現周期の位置データに計数手段の計
数内容を時系列的に重畳させて、これを任意時間の位置
データとすることにより、現周期の間を現周期、1周期
前および2周期前の位置データから時系列的に2次補間
(スパイラル補間)するので、シリアルエンコーダから
の検出位置データを受け取って制御を行う上位コントロ
ーラ側において、コントローラ内の演算周期をシリアル
エンコーダの伝送周期に合わせる必要が無くなり、シリ
アルエンコーダの伝送周期を上げることなく、見掛け上
最新の検出位置データを何時でも取り込んで演算を行う
ことが可能となり、結果としてコントローラの自由度を
向上させることが可能となる。さらに、請求項3および
4に係るエンコーダデータ変換回路では、エンコーダか
ら一定周期で送られてくる位置データを受け取ると、差
分手段により現周期の位置データと1周期前の位置デー
タとの差分をとり、差分手段により得られた差分データ
および位置データの受け取り周期に同期したタイマの計
数内容に基づき、増分演算手段により現周期の位置デー
タに対する増分データを時系列的に算出し、重畳手段に
より現周期の位置データに増分演算手段の算出結果を時
系列的に重畳させて、任意時間の位置データを生成する
ようにしている。ここで、現周期における重畳手段の最
終的な結果が1周期後の位置データと同一となるのが望
ましい。このように、現周期の位置データと1周期前の
位置データとの差分に、現時刻(タイマの計数内容)の
伝送周期に対する比を掛け合わせて現時刻における増分
データを算出し、これを時系列的に現周期の位置データ
に重畳させて任意時間の位置データとし、現周期の間を
現周期および1周期前の位置データから時系列的に直線
補間するので、シリアルエンコーダからの検出位置デー
タを受け取って制御を行う上位コントローラ側におい
て、コントローラ内の演算周期をシリアルエンコーダの
伝送周期に合わせる必要が無くなり、シリアルエンコー
ダの伝送周期を上げることなく、見掛け上最新の検出位
置データを何時でも取り込んで演算を行うことが可能と
なり、結果としてコントローラの自由度を向上させるこ
とが可能となる。
In the encoder data conversion circuit according to the first and fourth aspects of the present invention, when the position data sent from the encoder at a constant cycle is received, the difference data means the position data of the current cycle and the position data of the previous cycle are compared with each other. , And based on the difference data obtained by the difference means, the pulse output means converts the increased data of the difference data into a pulse train, and counts by the counting means based on the sign of the difference data and the pulse train of the pulse output means. Then, the counting content of the counting means is superimposed on the position data of the current cycle in time series by the superimposing means to generate position data for an arbitrary time. Here, it is desirable that the final result of the superimposing means in the current cycle be the same as the position data after one cycle. In this manner, the difference between the position data of the current cycle and the position data of one cycle before is assumed to be the incremental data from the position data of the current cycle to the position data of one cycle after, and the position data of the current cycle is added to the position data of the current cycle. The content of the count is superimposed in time series, and this is used as position data at an arbitrary time, so that linear interpolation is performed in time series from the current cycle and the position data of one cycle before in the current cycle. The upper controller, which receives and controls the detected position data, does not need to adjust the operation cycle in the controller to the transmission cycle of the serial encoder, and the apparently latest detected position data can be used without increasing the transmission cycle of the serial encoder. The calculation can be performed at any time, and as a result, the degree of freedom of the controller can be improved. Further, in the encoder data conversion circuit according to the second and fourth aspects, when the position data sent from the encoder at a constant cycle is received, the position data of the current cycle, the position data of one cycle before and the position data of two cycles before are received by the increment prediction means. Based on the position data of the current cycle, predicts the incremental data of the position data one cycle after the position data of the current cycle, and based on the incremental data obtained by the incremental predicting means,
The increment data of the increment data is converted into a pulse train by the pulse output means, and counting is performed by the counting means on the basis of the sign of the incremental data and the pulse train of the pulse output means. The content is superimposed in a time series to generate position data at an arbitrary time. Here, it is desirable that the final result of the superimposing means in the current cycle be the same as the position data after one cycle. Thus, based on the position data of the current cycle, the position data of one cycle before and the position data of two cycles before,
By predicting the incremental data of the position data one cycle after the current period position data, superimposing the count contents of the counting means on the current period position data in time series, and using this as the position data at an arbitrary time. The secondary controller performs time-sequential secondary interpolation (spiral interpolation) from the position data of the current period, the previous period, and the previous period during the current period. It is no longer necessary to adjust the operation cycle in the controller to the transmission cycle of the serial encoder, and it is possible to take the apparently latest detected position data at any time and perform the operation without increasing the transmission cycle of the serial encoder. As a result, the degree of freedom of the controller can be improved. Further, in the encoder data conversion circuit according to the third and fourth aspects, upon receiving the position data sent from the encoder at a constant cycle, the difference means calculates the difference between the position data of the current cycle and the position data of one cycle before. On the basis of the count value of the timer synchronized with the receiving cycle of the difference data and the position data obtained by the difference means, the incremental data for the current cycle position data is calculated in a time series by the incremental calculating means, and the current cycle is calculated by the superimposing means. The position data of an arbitrary time is generated by superimposing the calculation result of the increment operation means on the position data in time series. Here, it is desirable that the final result of the superimposing means in the current cycle be the same as the position data after one cycle. In this manner, the difference between the position data of the current cycle and the position data of one cycle before is multiplied by the ratio of the current time (contents counted by the timer) to the transmission cycle to calculate the incremental data at the current time. The position data of an arbitrary time is superimposed on the position data of the current cycle in a sequence, and the position data of the arbitrary period is interpolated in time series from the position data of the current cycle and the position of the previous cycle during the current cycle. It is no longer necessary to adjust the operation cycle in the controller to the transmission cycle of the serial encoder on the higher-level controller side that receives and controls the data, and the apparently latest detection position data can be fetched at any time without increasing the transmission cycle of the serial encoder. Calculation can be performed, and as a result, the degree of freedom of the controller can be improved.

【0006】[0006]

【発明の実施の形態】以下、本発明のエンコーダデータ
変換回路の実施の形態について、〔第1の実施形態〕、
〔第2の実施形態〕、〔第3の実施形態〕の順に図面を
参照して詳細に説明する。なお、以下の実施の形態で説
明するエンコーダデータ変換回路は、FAシステムやF
Aロボットのサーボモータの位置・速度制御等を行う上
位のコントローラ側に備えられるもので、位置検出手段
として使用されるシリアルエンコーダから一定周期で送
られてくる位置データを受け取って任意時間の位置デー
タに変換して、コントローラにおける演算に供するもの
である。 〔第1の実施形態〕図1は本発明の第1の実施形態に係
るエンコーダデータ変換回路の構成図である。同図にお
いて、本実施形態のエンコーダデータ変換回路は、nビ
ットのシフトレジスタ101、nビットの第1バッファ
103、nビットの第2バッファ105、減算器10
7、加算器121、nビットのレジスタ123、nビッ
トのカウンタ131および加算器141を備えて構成さ
れている。ここで、nはシリアルエンコーダの分解能お
よびコントローラにおける演算等に応じて設定される整
数値である。nビットのシフトレジスタ101は、シリ
アルエンコーダから一定周期で送られて来る位置デー
タ、即ちシリアルデータSDTを順次取り込み、パラレ
ルデータとして出力する。また、nビットの第1バッフ
ァ103、nビットの第2バッファ105および減算器
107は差分手段に該当し、現周期の位置データと1周
期前の位置データとの差分をとる。すなわち、第1バッ
ファ103および第2バッファ105は、それぞれD型
フリップフロップをn個並列に並べたレジスタであり、
サンプリング信号SAMPで入力データをラッチするの
で、第1バッファ103には現周期の位置データが、第
2バッファ105には1周期前の位置データがそれぞれ
保持されることになり、減算器107でこれら第1バッ
ファ103および第2バッファ105の出力データの差
をとることにより、現周期の位置データと1周期前の位
置データとの差分が得られる。ここで、サンプリング信
号SAMPはシリアルデータSDTの送信周期に同期し
た信号であり、第1バッファ103および第2バッファ
105の内容はシリアルデータSDTの送信周期毎に更
新されることになる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of an encoder data conversion circuit according to the present invention will be described with reference to [first embodiment].
The second embodiment and the third embodiment will be described in detail with reference to the drawings. Note that the encoder data conversion circuit described in the following embodiment is an
It is provided on the host controller that controls the position and speed of the servomotor of the robot A, and receives position data sent from the serial encoder used as position detection means at regular intervals, and receives position data for an arbitrary time. To be provided to the calculation in the controller. [First Embodiment] FIG. 1 is a configuration diagram of an encoder data conversion circuit according to a first embodiment of the present invention. In the figure, an encoder data conversion circuit according to the present embodiment includes an n-bit shift register 101, an n-bit first buffer 103, an n-bit second buffer 105, and a subtractor 10
7, an adder 121, an n-bit register 123, an n-bit counter 131, and an adder 141. Here, n is an integer value set according to the resolution of the serial encoder, the calculation in the controller, and the like. The n-bit shift register 101 sequentially takes in the position data sent from the serial encoder at a constant period, that is, serial data SDT, and outputs it as parallel data. The n-bit first buffer 103, the n-bit second buffer 105, and the subtracter 107 correspond to a difference unit, and take the difference between the position data of the current cycle and the position data of one cycle before. That is, each of the first buffer 103 and the second buffer 105 is a register in which n D-type flip-flops are arranged in parallel.
Since the input data is latched by the sampling signal SAMP, the first buffer 103 holds the position data of the current cycle, and the second buffer 105 holds the position data of the previous cycle. By taking the difference between the output data of the first buffer 103 and the output data of the second buffer 105, the difference between the position data of the current cycle and the position data of the previous cycle can be obtained. Here, the sampling signal SAMP is a signal synchronized with the transmission cycle of the serial data SDT, and the contents of the first buffer 103 and the second buffer 105 are updated every transmission cycle of the serial data SDT.

【0007】次に、加算器121およびnビットのレジ
スタ123はパルス出力手段に該当し、減算器107の
出力である差分データに基づき、該差分データの増加分
のデータをパルス列に変換するものである。つまり、パ
ルス出力手段は、差分データについて、クロックCPに
基づき加算動作を繰り返し行って、該加算動作により生
じるオーバーフローOVFを出力するnビット半積分器
(DDA:Digital Differencial Analizer)を用いた
構成であり、例えば10ビットの半積分器では、102
4のパルスを計数して演算が一周することになり(これ
はレジスタ123の内容が0になることを意味する)、
差分データの値と同数のパルスを持つオーバーフロー信
号OVFが発生することになる。次に、nビットカウン
タ131は計数手段に該当し、差分データの符号SGN
およびパルス出力手段(加算器121)から出力される
パルス列(オーバーフローOVF)に基づき計数を行う
ものである。先ず、図示しないパルス弁別部において、
差分データの符号(正または負)並びに加算器121か
ら出力されるオーバーフローOVFに基づき、クロック
CPに同期した回転方向毎のパルス列を生成する。つま
り、差分データの最上位ビットが符号ビットSGNであ
るので、符号ビットSGNが“0”の時は、オーバーフ
ロー信号OVFを正回転方向パルス列に反映させ、符号
ビットSGNが“1”の時は、オーバーフロー信号OV
Fを負回転方向パルス列に反映させる。そして次に、ア
ップダウンカウンタ(131)において、パルス弁別部
で得られた回転方向毎のパルス列に応じてアップ/ダウ
ンの計数を行う。つまり、正回転方向パルス列によって
アップカウントを、負回転方向パルス列によってダウン
カウントを行なう。なお、カウンタ131はサンプリン
グ信号SAMPでクリアされている。さらに、加算器1
41は重畳手段に該当し、現周期の位置データである第
1バッファ103の出力にカウンタ131の計数内容を
加算して、時系列的な重畳データDATAを得る。
Next, the adder 121 and the n-bit register 123 correspond to pulse output means, and convert the data of the increment of the differential data into a pulse train based on the differential data output from the subtracter 107. is there. That is, the pulse output means uses an n-bit half-integrator (DDA: Digital Differencial Analyzer) that repeatedly performs an addition operation on the difference data based on the clock CP and outputs an overflow OVF generated by the addition operation. For example, in a 10-bit semi-integrator, 102
The operation goes around by counting the pulses of 4 (this means that the content of the register 123 becomes 0),
An overflow signal OVF having the same number of pulses as the value of the difference data is generated. Next, the n-bit counter 131 corresponds to the counting means, and the sign SGN of the difference data is used.
And counting based on a pulse train (overflow OVF) output from the pulse output means (adder 121). First, in a pulse discriminator (not shown),
Based on the sign (positive or negative) of the difference data and the overflow OVF output from the adder 121, a pulse train for each rotation direction synchronized with the clock CP is generated. That is, since the most significant bit of the differential data is the sign bit SGN, when the sign bit SGN is “0”, the overflow signal OVF is reflected in the forward rotation direction pulse train, and when the sign bit SGN is “1”, Overflow signal OV
F is reflected in the negative rotation direction pulse train. Then, the up / down counter (131) counts up / down according to the pulse train for each rotation direction obtained by the pulse discriminating unit. That is, up-counting is performed by a positive rotation direction pulse train, and down-counting is performed by a negative rotation direction pulse train. Note that the counter 131 is cleared by the sampling signal SAMP. Further, adder 1
Reference numeral 41 corresponds to a superimposing unit, and obtains time-series superimposed data DATA by adding the count content of the counter 131 to the output of the first buffer 103, which is position data of the current cycle.

【0008】本実施形態のエンコーダデータ変換回路で
は、シリアルエンコーダから位置データが一定周期で送
られてくるので、サンプリング信号SAMPの周期毎に
位置データを受け取り、図2に示すように、位置データ
が時間経過と共に増加しているときには、時間に対して
階段状の位置データが入力されることになる。つまり、
時刻T0に位置データSDT0,時刻T1に位置データ
SDT1,時刻T2に位置データSDT2,…である。
現周期を時刻T1から時刻T2の間の時間帯であるとす
ると、第1バッファ103には現周期の位置データSD
T1が、第2バッファ105には1周期前の位置データ
SDT0がそれぞれ保持されており、減算器107から
はこれらの差分データΔSD1が出力されることにな
る。この時、加算器121およびレジスタ123では、
差分データΔSD1についてクロックCPに基づき加算
動作を繰り返し行って、差分データΔSD1と同数のパ
ルスを持つオーバーフロー信号OVFを発生し、また、
カウンタ131により該パルス列(オーバーフローOV
F)の計数を行うので、カウンタ131からは図2中の
斜線部分の位置データに相当する値が時系列に出力され
ることになる。さらに、加算器141において、第1バ
ッファ103の出力(現周期の位置データSDT1)に
カウンタ131の計数値を加算することにより、時系列
的に重畳データDATAを得る。つまり、図2の現周期
(時刻T1から時刻T2の間の時間帯)において、任意
の時刻の位置データとして時系列的に直線補間した位置
データを得ることになる。なお、カウンタ131の加算
周期、即ち加算器121およびレジスタ123によって
発生する出力パルスの周期は、1周期前の位置データS
DR0と現周期の位置データSDT1との差(差分デー
タΔSD1)が大きい時に短くなるので、クロックCP
のクロック周期を案分すればよい。また、カウンタ13
1はサンプリング信号SAMPでクリアされているの
で、補間による誤差が次の周期に伝搬することが無く、
現周期の重畳データDATAと次の周期における現周期
の位置データSDT2とを同一視することができる。
In the encoder data conversion circuit of the present embodiment, position data is sent from the serial encoder at a fixed period, so that the position data is received every period of the sampling signal SAMP, and as shown in FIG. When it increases with time, stepwise position data is input with respect to time. That is,
Position data SDT0 at time T0, position data SDT1 at time T1, position data SDT2 at time T2.
Assuming that the current cycle is a time zone between time T1 and time T2, the first buffer 103 stores the position data SD of the current cycle in the first buffer 103.
T1 holds the position data SDT0 of the previous cycle in the second buffer 105, and the subtracter 107 outputs these difference data ΔSD1. At this time, in the adder 121 and the register 123,
The addition operation is repeatedly performed on the difference data ΔSD1 based on the clock CP to generate an overflow signal OVF having the same number of pulses as the difference data ΔSD1.
The counter 131 detects the pulse train (overflow OV).
Since the counting of F) is performed, the value corresponding to the position data of the hatched portion in FIG. 2 is output from the counter 131 in time series. Further, the adder 141 adds the count value of the counter 131 to the output of the first buffer 103 (the position data SDT1 in the current cycle) to obtain superimposed data DATA in a time series. In other words, in the current cycle (time period between time T1 and time T2) in FIG. 2, position data obtained by time-series linear interpolation as position data at an arbitrary time is obtained. Note that the addition cycle of the counter 131, that is, the cycle of the output pulse generated by the adder 121 and the register 123 is the position data S
When the difference between the DR0 and the position data SDT1 of the current cycle (difference data ΔSD1) is large, it becomes shorter, so that the clock CP
Of the clock cycle of the above. Also, the counter 13
Since 1 is cleared by the sampling signal SAMP, an error due to interpolation does not propagate in the next cycle.
The superimposition data DATA of the current cycle and the position data SDT2 of the current cycle in the next cycle can be identified.

【0009】以上説明したように、本実施形態のエンコ
ーダデータ変換回路では、現周期の位置データSDT1
と1周期前の位置データSDT0との差分(ΔSD1)
を、現周期の位置データSDT1から1周期後の位置デ
ータSDT2への増分データ(SDT2)と仮定し、現
周期の位置データSDT1に計数手段(カウンタ13
1)の計数内容を時系列的に重畳させて、これを任意時
間の位置データとすることにより、現周期の間を現周期
および1周期前の位置データから時系列的に直線補間す
るので、シリアルエンコーダからの検出位置データを受
け取って制御を行う上位コントローラ側において、コン
トローラ内の演算周期をシリアルエンコーダの伝送周期
に合わせる必要が無くなり、シリアルエンコーダの伝送
周期を上げることなく、見掛け上最新の検出位置データ
を何時でも取り込んで演算を行うことが可能となり、結
果としてコントローラの自由度を向上させることができ
る。なお、シリアルエンコーダの伝送周期は、通常、数
十[μ秒]であるので、サーボ系の機械時定数から考え
れば、直線補間を用いる本実施形態のエンコーダデータ
変換回路によって十分な精度を得ることが可能である。
また、本実施形態では、パルス出力手段として加算器1
21およびnビットのレジスタ123によるnビットの
半積分器(DDA)の構成を用いたが、これに限定され
ることなく、nビットのバイナリーレートマルチプライ
アー(BRM)を用いても良い。
As described above, in the encoder data conversion circuit of the present embodiment, the position data SDT1
(ΔSD1) between the position data SDT0 and the position data SDT0 one cycle before
Is assumed to be incremental data (SDT2) from the current cycle position data SDT1 to the position data SDT2 one cycle later, and a counting means (counter 13) is added to the current cycle position data SDT1.
By superimposing the count contents of 1) in time series and using this as position data at an arbitrary time, linear interpolation is performed in time series between the current cycle and the position data of the current cycle and one cycle before, so that The host controller, which receives and controls the detection position data from the serial encoder, does not need to adjust the operation cycle in the controller to the transmission cycle of the serial encoder, and the apparent latest detection without increasing the transmission cycle of the serial encoder The position data can be fetched at any time to perform the calculation, and as a result, the degree of freedom of the controller can be improved. Since the transmission cycle of the serial encoder is usually several tens of microseconds, sufficient accuracy can be obtained by the encoder data conversion circuit of the present embodiment using linear interpolation, considering the mechanical time constant of the servo system. Is possible.
In the present embodiment, the adder 1 is used as the pulse output means.
Although the configuration of the n-bit half-integrator (DDA) using the 21-bit and the n-bit register 123 is used, the invention is not limited to this, and an n-bit binary rate multiplier (BRM) may be used.

【0010】〔第2の実施形態〕次に、図3は本発明の
第2の実施形態に係るエンコーダデータ変換回路の構成
図である。同図において、本実施形態のエンコーダデー
タ変換回路は、nビットのシフトレジスタ301、nビ
ットの第1バッファ303、nビットの第2バッファ3
05、nビットの第3バッファ307、第1減算器31
1、第2減算器309、第1定数倍器315、第2定数
倍器313、加算器317、加算器321、nビットの
レジスタ323、nビットのカウンタ331および加算
器341を備えて構成されている。ここで、nは第1の
実施形態におけるものと同様である。nビットのシフト
レジスタ301は、第1の実施形態と同様に、シリアル
エンコーダから一定周期で送られて来る位置データ、即
ちシリアルデータSDTを順次取り込み、パラレルデー
タとして出力する。また、nビットの第1バッファ30
3、nビットの第2バッファ305、nビットの第3バ
ッファ307、第1減算器311、第2減算器309、
第1定数倍器315、第2定数倍器313および加算器
317は増分予測手段に該当し、現周期の位置データ、
1周期前の位置データおよび2周期前の位置データに基
づき、現周期の位置データに対する1周期後の位置デー
タの増分データを予測する。すなわち、第1バッファ3
03、第2バッファ305および第3バッファ307
は、それぞれD型フリップフロップをn個並列に並べた
レジスタであり、サンプリング信号SAMPで入力デー
タをラッチするので、第1バッファ303には現周期の
位置データが、第2バッファ305には1周期前の位置
データが、第3バッファ307には2周期前の位置デー
タがそれぞれ保持されることになる。また、第1減算器
311で第1バッファ303および第2バッファ305
の出力データの差をとって、第1定数倍器315で該差
分をK1倍し、第2減算器309で第2バッファ305
および第3バッファ307の出力データの差をとって、
第2定数倍器313で該差分をK2倍する。さらに、加
算器317では、両者を加算して1周期後の位置データ
の増分データを得る。ここで、サンプリング信号SAM
PはシリアルデータSDTの送信周期に同期した信号で
あり、第1バッファ303、第2バッファ305および
第3バッファ307の内容はシリアルデータSDTの送
信周期毎に更新されることになる。
[Second Embodiment] FIG. 3 is a block diagram of an encoder data conversion circuit according to a second embodiment of the present invention. In the figure, an encoder data conversion circuit according to the present embodiment includes an n-bit shift register 301, an n-bit first buffer 303, and an n-bit second buffer 3.
05, n-bit third buffer 307, first subtractor 31
1, a second subtractor 309, a first constant multiplier 315, a second constant multiplier 313, an adder 317, an adder 321, an n-bit register 323, an n-bit counter 331, and an adder 341. ing. Here, n is the same as in the first embodiment. As in the first embodiment, the n-bit shift register 301 sequentially takes in position data, that is, serial data SDT sent from the serial encoder at a constant period, and outputs it as parallel data. Also, the n-bit first buffer 30
3, an n-bit second buffer 305, an n-bit third buffer 307, a first subtractor 311, a second subtractor 309,
The first constant multiplier 315, the second constant multiplier 313, and the adder 317 correspond to incremental prediction means, and include position data of the current cycle,
Based on the position data of one cycle before and the position data of two cycles before, the incremental data of the position data of one cycle after the current cycle position data is predicted. That is, the first buffer 3
03, second buffer 305 and third buffer 307
Are registers in which n D-type flip-flops are arranged in parallel, and input data is latched by the sampling signal SAMP. Therefore, the first buffer 303 stores position data of the current cycle, and the second buffer 305 stores one cycle of position data. The previous position data is stored in the third buffer 307, and the position data two cycles before is stored in the third buffer 307. Further, the first buffer 303 and the second buffer 305 are
, The difference is multiplied by K1 in the first constant multiplier 315, and the second buffer 305 is calculated in the second subtractor 309.
And the difference between the output data of the third buffer 307 and
The difference is multiplied by K2 in a second constant multiplier 313. Further, the adder 317 adds the two to obtain the incremental data of the position data after one cycle. Here, the sampling signal SAM
P is a signal synchronized with the transmission cycle of the serial data SDT, and the contents of the first buffer 303, the second buffer 305, and the third buffer 307 are updated every transmission cycle of the serial data SDT.

【0011】次に、加算器321およびnビットのレジ
スタ323はパルス出力手段に該当し、加算器317の
出力である増分データに基づき、該増分データの増加分
のデータをパルス列に変換するものである。つまり、パ
ルス出力手段は、増分データについて、クロックCPに
基づき加算動作を繰り返し行って、該加算動作により生
じるオーバーフローOVFを出力するnビット半積分器
(DDA)を用いた構成であり、増分データの値と同数
のパルスを持つオーバーフロー信号OVFが発生するこ
とになる。次に、nビットカウンタ331は計数手段に
該当し、増分データの符号SGNおよびパルス出力手段
(加算器321)から出力されるパルス列(オーバーフ
ローOVF)に基づき計数を行うものである。先ず、図
示しないパルス弁別部において、増分データの符号(正
または負)並びに加算器321から出力されるオーバー
フローOVFに基づき、クロックCPに同期した回転方
向毎のパルス列を生成する。つまり、増分データの最上
位ビットが符号ビットSGNであるので、符号ビットS
GNが“0”の時は、オーバーフロー信号OVFを正回
転方向パルス列に反映させ、符号ビットSGNが“1”
の時は、オーバーフロー信号OVFを負回転方向パルス
列に反映させる。そして次に、アップダウンカウンタ
(331)において、パルス弁別部で得られた回転方向
毎のパルス列に応じてアップ/ダウンの計数を行う。つ
まり、正回転方向パルス列によってアップカウントを、
負回転方向パルス列によってダウンカウントを行なう。
なお、カウンタ331はサンプリング信号SAMPでク
リアされている。さらに、加算器341は重畳手段に該
当し、現周期の位置データである第1バッファ303の
出力にカウンタ331の計数内容を加算して、時系列的
な重畳データDATAを得る。
Next, the adder 321 and the n-bit register 323 correspond to pulse output means, and convert the increment data of the increment data into a pulse train based on the increment data output from the adder 317. is there. That is, the pulse output means uses an n-bit half-integrator (DDA) that repeatedly performs an addition operation on the incremental data based on the clock CP and outputs an overflow OVF generated by the addition operation. An overflow signal OVF having the same number of pulses as the value will be generated. Next, the n-bit counter 331 corresponds to the counting means, and counts based on the sign SGN of the incremental data and the pulse train (overflow OVF) output from the pulse output means (adder 321). First, a pulse discriminator (not shown) generates a pulse train for each rotation direction synchronized with the clock CP based on the sign (positive or negative) of the incremental data and the overflow OVF output from the adder 321. That is, since the most significant bit of the incremental data is the sign bit SGN, the sign bit SGN
When GN is “0”, the overflow signal OVF is reflected in the pulse train in the forward rotation direction, and the sign bit SGN is set to “1”.
, The overflow signal OVF is reflected in the pulse train in the negative rotation direction. Then, the up / down counter (331) counts up / down according to the pulse train for each rotation direction obtained by the pulse discriminating unit. In other words, the up-count by the forward rotation direction pulse train,
The down count is performed by the pulse train in the negative rotation direction.
Note that the counter 331 has been cleared by the sampling signal SAMP. Further, the adder 341 corresponds to the superimposing means, and adds the count content of the counter 331 to the output of the first buffer 303, which is the position data of the current cycle, to obtain time-series superimposed data DATA.

【0012】本実施形態のエンコーダデータ変換回路に
おいても、図4に示すように、時間に対して階段状の位
置データ、即ち、時刻T0に位置データSDT0,時刻
T1に位置データSDT1,時刻T2に位置データSD
T2,…が入力されている。現周期を時刻T2から時刻
T3の間の時間帯であるとすると、第1バッファ303
には現周期の位置データSDT2が、第2バッファ30
5には1周期前の位置データSDT1が、第3バッファ
307には2周期前の位置データSDT0がそれぞれ保
持されており、第1減算器311から現周期の位置デー
タSDT2と1周期前の位置データSDT1の差分デー
タΔSD2が出力されて、第1定数倍器315で該差分
データΔSD2がK1倍され、また、第2減算器309
から1周期前の位置データSDT1と2周期前の位置デ
ータSDT0の差分データΔSD1が出力されて、第2
定数倍器313で該差分データΔSD1がK2倍され、
さらに、加算器317では、これらK1×ΔSD2とK
2×ΔSD1が加算される。つまり、増分データΔD
は、次式により算出されている。 ΔD=K1×(SDT2−SDT1)+K2×(SDT1−SDT0) =K1×ΔSD2+K2×ΔSD1 ここで、定数K1,K2は使用する2次補間公式により
定まる。この時、加算器321およびレジスタ323で
は、増分データΔDについてクロックCPに基づき加算
動作を繰り返し行って、増分データΔDと同数のパルス
を持つオーバーフロー信号OVFを発生し、また、カウ
ンタ331により該パルス列(オーバーフローOVF)
の計数を行うので、カウンタ331からは図4中の斜線
部分の位置データに相当する値が時系列に出力されるこ
とになる。さらに、加算器341において、第1バッフ
ァ303の出力(現周期の位置データSDT2)にカウ
ンタ331の計数値を加算することにより、時系列的に
重畳データDATAを得る。つまり、図4の現周期(時
刻T2から時刻T3の間の時間帯)において、任意の時
刻の位置データとして時系列的に直線補間した位置デー
タを得ることになる。なお、カウンタ331の加算周
期、即ち加算器321およびレジスタ323によって発
生する出力パルスの周期は、増分データΔDが大きい時
に短くなるので、クロックCPのクロック周期を案分す
ればよい。また、カウンタ331はサンプリング信号S
AMPでクリアされているので、補間による誤差が次の
周期に伝搬することが無く、現周期の重畳データDAT
Aと次の周期における現周期の位置データSDT3とを
同一視することができる。
Also in the encoder data conversion circuit of this embodiment, as shown in FIG. 4, the position data is stepwise with respect to time, that is, the position data SDT0 at time T0, the position data SDT1 at time T1, and the position data SDT1 at time T2. Position data SD
T2,... Are input. Assuming that the current cycle is a time zone between time T2 and time T3, the first buffer 303
Contains the position data SDT2 of the current cycle in the second buffer 30.
5, the third buffer 307 holds the position data SDT0 of the current cycle, and the third buffer 307 holds the position data SDT0 of the current cycle. The difference data ΔSD2 of the data SDT1 is output, the difference data ΔSD2 is multiplied by K1 in the first constant multiplier 315, and the second subtractor 309
, The difference data ΔSD1 between the position data SDT1 one cycle before and the position data SDT0 two cycles before is output,
The difference data ΔSD1 is multiplied by K2 in the constant multiplier 313,
Further, in the adder 317, these K1 × ΔSD2 and K1
2 × ΔSD1 is added. That is, the incremental data ΔD
Is calculated by the following equation. ΔD = K1 × (SDT2-SDT1) + K2 × (SDT1-SDT0) = K1 × ΔSD2 + K2 × ΔSD1 Here, the constants K1 and K2 are determined by the secondary interpolation formula used. At this time, the adder 321 and the register 323 repeatedly perform an addition operation on the increment data ΔD based on the clock CP to generate an overflow signal OVF having the same number of pulses as the increment data ΔD. Overflow OVF)
Therefore, the value corresponding to the position data of the hatched portion in FIG. 4 is output from the counter 331 in time series. Further, the adder 341 adds the count value of the counter 331 to the output of the first buffer 303 (the position data SDT2 of the current cycle) to obtain superimposed data DATA in a time series. That is, in the current period (time zone between time T2 and time T3) in FIG. 4, position data obtained by linearly interpolating time-series as position data at an arbitrary time is obtained. Note that the addition period of the counter 331, that is, the period of the output pulse generated by the adder 321 and the register 323 becomes shorter when the increment data ΔD is large, and therefore, the clock period of the clock CP may be divided. The counter 331 outputs the sampling signal S
Since the signal is cleared by the AMP, an error due to interpolation does not propagate to the next cycle, and the superimposition data DAT of the current cycle is not transmitted.
A can be identified with the current cycle position data SDT3 in the next cycle.

【0013】以上説明したように、本実施形態のエンコ
ーダデータ変換回路では、現周期の位置データSDT
2、1周期前の位置データSDT1および2周期前の位
置データSDT0に基づき、現周期の位置データSDT
2に対する1周期後の位置データの増分データ(ΔSD
3)を予測し、現周期の位置データSDT2に計数手段
(カウンタ331)の計数内容を時系列的に重畳させ
て、これを任意時間の位置データとすることにより、現
周期の間を現周期、1周期前および2周期前の位置デー
タから時系列的に2次補間(スパイラル補間)するの
で、シリアルエンコーダからの検出位置データを受け取
って制御を行う上位コントローラ側において、コントロ
ーラ内の演算周期をシリアルエンコーダの伝送周期に合
わせる必要が無くなり、シリアルエンコーダの伝送周期
を上げることなく、見掛け上最新の検出位置データを何
時でも取り込んで演算を行うことが可能となり、結果と
してコントローラの自由度を向上させ得るエンコーダデ
ータ変換回路を提供することができる。なお、第1の実
施形態で述べたように、直線補間によって十分な精度を
得ることができるが、より高い精度が望まれる場合に
は、本実施形態のような2次補間を用いたエンコーダデ
ータ変換回路の構成を使用すればよい。また、本実施形
態では、パルス出力手段として加算器321およびnビ
ットのレジスタ323によるnビットの半積分器(DD
A)の構成を用いたが、これに限定されることなく、n
ビットのバイナリーレートマルチプライアー(BRM)
を用いても良い。
As described above, in the encoder data conversion circuit of the present embodiment, the position data SDT of the current cycle is
2, based on the position data SDT1 one cycle before and the position data SDT0 two cycles before,
2 increment data (ΔSD) of the position data after one cycle
3) is predicted, and the count content of the counting means (counter 331) is superimposed in a time series on the position data SDT2 of the current cycle, and this is used as position data of an arbitrary time. Since the position data of one cycle before and two cycles before are subjected to secondary interpolation (spiral interpolation) in a time series, the upper controller which receives and controls the detected position data from the serial encoder determines the operation cycle in the controller. It is no longer necessary to match the transmission cycle of the serial encoder, and it is possible to take the apparently latest detection position data at any time and perform calculations without increasing the transmission cycle of the serial encoder, thereby improving the flexibility of the controller. The obtained encoder data conversion circuit can be provided. As described in the first embodiment, sufficient accuracy can be obtained by linear interpolation. However, if higher accuracy is desired, the encoder data using the secondary interpolation as in the present embodiment is used. What is necessary is just to use the structure of a conversion circuit. In this embodiment, an n-bit semi-integrator (DD) composed of an adder 321 and an n-bit register 323 as pulse output means is used.
Although the configuration of A) was used, the present invention is not limited thereto.
Bit binary rate multiplier (BRM)
May be used.

【0014】〔第3の実施形態〕図5は本発明の第3の
実施形態に係るエンコーダデータ変換回路の構成図であ
る。同図において、本実施形態のエンコーダデータ変換
回路は、nビットのシフトレジスタ501、nビットの
第1バッファ503、nビットの第2バッファ505、
減算器507、増分演算器521、タイマカウンタ53
1および加算器541を備えて構成されている。ここ
で、nはシリアルエンコーダの分解能およびコントロー
ラにおける演算等に応じて設定される整数値である。n
ビットのシフトレジスタ501は、第1の実施形態と同
様に、シリアルエンコーダから一定周期で送られて来る
位置データ、即ちシリアルデータSDTを順次取り込
み、パラレルデータとして出力する。また、nビットの
第1バッファ503、nビットの第2バッファ505お
よび減算器507は差分手段に該当し、現周期の位置デ
ータと1周期前の位置データとの差分をとる。すなわ
ち、第1バッファ503および第2バッファ505はサ
ンプリング信号SAMPで入力データをラッチするの
で、第1バッファ503には現周期の位置データが、第
2バッファ505には1周期前の位置データがそれぞれ
保持されることになり、減算器507でこれら第1バッ
ファ503および第2バッファ505の出力データの差
をとることにより、現周期の位置データと1周期前の位
置データとの差分が得られる。ここで、サンプリング信
号SAMPはシリアルデータSDTの送信周期に同期し
た信号であり、第1バッファ503および第2バッファ
505の内容はシリアルデータSDTの送信周期毎に更
新されることになる。次に、タイマカウンタ531は、
シリアルデータSDTの送信周期に同期してクロックC
Pを計数するものであり、サンプリング信号SAMPで
クリアされている。また、増分演算器521は、減算器
507の出力である差分データおよびタイマカウンタ5
31の計数値に基づき、現周期の位置データに対する増
分データを時系列に算出するものである。つまり、増分
演算器521では、次式の演算を行って増分データを算
出する。 増分データ=差分データ×タイマカウンタの計数値/送
信周期 さらに、加算器541は重畳手段に該当し、現周期の位
置データである第1バッファ503の出力に増分演算器
521で算出した増分データを加算して、時系列的な重
畳データDATAを得る。
[Third Embodiment] FIG. 5 is a configuration diagram of an encoder data conversion circuit according to a third embodiment of the present invention. In the figure, the encoder data conversion circuit of the present embodiment includes an n-bit shift register 501, an n-bit first buffer 503, an n-bit second buffer 505,
Subtractor 507, increment calculator 521, timer counter 53
1 and an adder 541. Here, n is an integer value set according to the resolution of the serial encoder, the calculation in the controller, and the like. n
As in the first embodiment, the bit shift register 501 sequentially fetches position data, that is, serial data SDT sent from the serial encoder at a constant period, and outputs it as parallel data. The n-bit first buffer 503, the n-bit second buffer 505, and the subtracter 507 correspond to a difference means, and take the difference between the current cycle position data and the previous cycle position data. That is, since the first buffer 503 and the second buffer 505 latch the input data with the sampling signal SAMP, the position data of the current cycle is stored in the first buffer 503, and the position data of the previous cycle is stored in the second buffer 505, respectively. The difference between the output data of the first buffer 503 and the output data of the second buffer 505 is obtained by the subtracter 507, whereby the difference between the position data of the current cycle and the position data of the previous cycle is obtained. Here, the sampling signal SAMP is a signal synchronized with the transmission cycle of the serial data SDT, and the contents of the first buffer 503 and the second buffer 505 are updated every transmission cycle of the serial data SDT. Next, the timer counter 531
The clock C is synchronized with the transmission cycle of the serial data SDT.
It counts P and is cleared by the sampling signal SAMP. Further, the increment calculator 521 is configured to output the difference data output from the subtractor 507 and the timer counter 5.
Based on the count value of 31, the incremental data with respect to the position data of the current cycle is calculated in time series. That is, the increment calculator 521 calculates the following data by calculating the following equation. Increment data = difference data × count value of timer counter / transmission cycle Further, the adder 541 corresponds to the superimposing means, and adds the increment data calculated by the increment calculator 521 to the output of the first buffer 503 which is the position data of the current cycle. The addition results in time-series superimposed data DATA.

【0015】本実施形態のエンコーダデータ変換回路で
は、第1の実施形態と同様に図2を参照して、現周期を
時刻T1から時刻T2の間の時間帯であるとすると、第
1バッファ503には現周期の位置データSDT1が、
第2バッファ505には1周期前の位置データSDT0
がそれぞれ保持されており、減算器507からはこれら
の差分データΔSD1が出力されることになる。一方、
タイマカウンタ531では、現周期におけるクロックC
Pのパルス数を計数して現時刻を刻んでいるので、増分
演算器521において、差分データΔSD1に現時刻
(タイマカウンタ531の計数値)の伝送周期に対する
比を掛け合わせることにより、現時刻における増分デー
タを算出することができる。したがって、加算器541
において、第1バッファ503の出力(現周期の位置デ
ータSDT1)に増分演算器521によって算出された
増分データを加算することにより、時系列的に重畳デー
タDATAを得る。つまり、図2の現周期(時刻T1か
ら時刻T2の間の時間帯)において、任意の時刻の位置
データとして時系列的に直線補間した位置データを得る
ことになる。
In the encoder data conversion circuit of the present embodiment, as in the first embodiment, referring to FIG. 2, if the current cycle is a time zone between time T1 and time T2, the first buffer 503 Contains position data SDT1 of the current cycle,
In the second buffer 505, the position data SDT0 one cycle before is stored.
Are held, and the difference data ΔSD1 is output from the subtractor 507. on the other hand,
In the timer counter 531, the clock C
Since the current time is counted by counting the number of pulses of P, the increment calculator 521 multiplies the difference data ΔSD1 by the ratio of the current time (the count value of the timer counter 531) to the transmission cycle, thereby obtaining the current time. Incremental data can be calculated. Therefore, the adder 541
In, by adding the increment data calculated by the increment calculator 521 to the output of the first buffer 503 (position data SDT1 of the current cycle), superimposed data DATA is obtained in a time series. In other words, in the current cycle (time period between time T1 and time T2) in FIG. 2, position data obtained by time-series linear interpolation as position data at an arbitrary time is obtained.

【0016】以上説明したように、本実施形態のエンコ
ーダデータ変換回路では、現周期の位置データSDT1
と1周期前の位置データSDT0との差分データΔSD
1に、現時刻(タイマカウンタ531の計数値)の伝送
周期に対する比を掛け合わせることにより、現時刻にお
ける増分データを算出し、これを時系列的に現周期の位
置データSDT1に重畳させて任意時間の位置データと
し、現周期の間を現周期および1周期前の位置データか
ら時系列的に直線補間するので、シリアルエンコーダか
らの検出位置データを受け取って制御を行う上位コント
ローラ側において、コントローラ内の演算周期をシリア
ルエンコーダの伝送周期に合わせる必要が無くなり、シ
リアルエンコーダの伝送周期を上げることなく、見掛け
上最新の検出位置データを何時でも取り込んで演算を行
うことが可能となり、結果としてコントローラの自由度
を向上させ得るエンコーダデータ変換回路を提供するこ
とができる。
As described above, in the encoder data conversion circuit of the present embodiment, the current period position data SDT1
Data ΔSD between the position data SDT0 and the position data SDT0 one cycle before
1 is multiplied by the ratio of the current time (the count value of the timer counter 531) to the transmission cycle to calculate the incremental data at the current time. Time position data is used, and linear interpolation is performed in time series between the current cycle and the position data of the current cycle and the previous cycle during the current cycle. There is no need to match the operation cycle of the serial encoder with the transmission cycle of the serial encoder, and it is possible to take in the apparently latest detected position data at any time and perform the operation without increasing the transmission cycle of the serial encoder. An encoder data conversion circuit capable of improving the degree can be provided.

【0017】[0017]

【発明の効果】以上説明したように、本発明のエンコー
ダデータ変換回路によれば、現周期の位置データと1周
期前の位置データとの差分を、現周期の位置データから
1周期後の位置データへの増分データと仮定し、現周期
の位置データに計数手段の計数内容を時系列的に重畳さ
せて、これを任意時間の位置データとすることにより、
現周期の間を現周期および1周期前の位置データから時
系列的に直線補間するので、シリアルエンコーダからの
検出位置データを受け取って制御を行う上位コントロー
ラ側において、コントローラ内の演算周期をシリアルエ
ンコーダの伝送周期に合わせる必要が無くなり、シリア
ルエンコーダの伝送周期を上げることなく、見掛け上最
新の検出位置データを何時でも取り込んで演算を行うこ
とが可能となり、結果としてコントローラの自由度を向
上させ得るエンコーダデータ変換回路を提供することが
できる。また、本発明のエンコーダデータ変換回路によ
れば、現周期の位置データ、1周期前の位置データおよ
び2周期前の位置データに基づき、現周期の位置データ
に対する1周期後の位置データの増分データを予測し、
現周期の位置データに計数手段の計数内容を時系列的に
重畳させて、これを任意時間の位置データとすることに
より、現周期の間を現周期、1周期前および2周期前の
位置データから時系列的に2次補間(スパイラル補間)
するので、シリアルエンコーダからの検出位置データを
受け取って制御を行う上位コントローラ側において、コ
ントローラ内の演算周期をシリアルエンコーダの伝送周
期に合わせる必要が無くなり、シリアルエンコーダの伝
送周期を上げることなく、見掛け上最新の検出位置デー
タを何時でも取り込んで演算を行うことが可能となり、
結果としてコントローラの自由度を向上させ得るエンコ
ーダデータ変換回路を提供することができる。さらに、
本発明のエンコーダデータ変換回路によれば、現周期の
位置データと1周期前の位置データとの差分に、現時刻
(タイマの計数内容)の伝送周期に対する比を掛け合わ
せて現時刻における増分データを算出し、これを時系列
的に現周期の位置データに重畳させて任意時間の位置デ
ータとし、現周期の間を現周期および1周期前の位置デ
ータから時系列的に直線補間するので、シリアルエンコ
ーダからの検出位置データを受け取って制御を行う上位
コントローラ側において、コントローラ内の演算周期を
シリアルエンコーダの伝送周期に合わせる必要が無くな
り、シリアルエンコーダの伝送周期を上げることなく、
見掛け上最新の検出位置データを何時でも取り込んで演
算を行うことが可能となり、結果としてコントローラの
自由度を向上させ得るエンコーダデータ変換回路を提供
することができる。
As described above, according to the encoder data conversion circuit of the present invention, the difference between the position data of the current cycle and the position data of one cycle before is determined by the position of the position data one cycle after the current cycle. By assuming incremental data to the data, the count content of the counting means is superimposed in time series on the position data of the current cycle, and this is used as position data at an arbitrary time,
Since the current cycle and the position data of one cycle before are linearly interpolated in time series during the current cycle, the operation cycle in the controller is determined by the serial encoder on the higher-level controller that receives and controls the detected position data from the serial encoder. It is no longer necessary to adjust to the transmission cycle of the encoder, and it is possible to take in the apparently latest detected position data at any time and perform calculations without increasing the transmission cycle of the serial encoder, and as a result, an encoder that can improve the degree of freedom of the controller A data conversion circuit can be provided. Further, according to the encoder data conversion circuit of the present invention, based on the position data of the current cycle, the position data of one cycle before and the position data of two cycles before, the incremental data of the position data of one cycle after with respect to the position data of the current cycle Predict
The count data of the counting means is superimposed on the position data of the current cycle in a time-series manner, and this is used as position data of an arbitrary time. Time-series secondary interpolation (spiral interpolation)
Therefore, it is not necessary for the host controller that receives and controls the detected position data from the serial encoder to adjust the operation cycle in the controller to the transmission cycle of the serial encoder. The latest detection position data can be taken at any time to perform calculations,
As a result, an encoder data conversion circuit capable of improving the degree of freedom of the controller can be provided. further,
According to the encoder data conversion circuit of the present invention, the difference between the position data of the current cycle and the position data of one cycle before is multiplied by the ratio of the current time (contents counted by the timer) to the transmission cycle to obtain the incremental data at the current time. Is calculated, and this is superimposed on the position data of the current cycle in a time series to obtain position data at an arbitrary time, and linear interpolation is performed in a time series between the current cycle and the position data of one cycle before the current cycle. The upper controller that receives and controls the detection position data from the serial encoder does not need to adjust the operation cycle in the controller to the transmission cycle of the serial encoder, without increasing the transmission cycle of the serial encoder.
It is possible to fetch the apparently latest detected position data at any time to perform the calculation, and as a result, it is possible to provide an encoder data conversion circuit capable of improving the degree of freedom of the controller.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施形態に係るエンコーダデー
タ変換回路の構成図である。
FIG. 1 is a configuration diagram of an encoder data conversion circuit according to a first embodiment of the present invention.

【図2】第1、第3の実施形態のエンコーダデータ変換
回路における直線補正を説明する説明図である。
FIG. 2 is an explanatory diagram illustrating linear correction in an encoder data conversion circuit according to the first and third embodiments.

【図3】本発明の第2の実施形態に係るエンコーダデー
タ変換回路の構成図である。
FIG. 3 is a configuration diagram of an encoder data conversion circuit according to a second embodiment of the present invention.

【図4】第3の実施形態のエンコーダデータ変換回路に
おける2次補正を説明する説明図である。
FIG. 4 is an explanatory diagram illustrating secondary correction in an encoder data conversion circuit according to a third embodiment.

【図5】本発明の第3の実施形態に係るエンコーダデー
タ変換回路の構成図である。
FIG. 5 is a configuration diagram of an encoder data conversion circuit according to a third embodiment of the present invention.

【符号の説明】[Explanation of symbols]

101,301,501 nビットのシフトレジスタ 103,303,503 nビットの第1バッファ 105,305,505 nビットの第2バッファ 107,507 減算器 307 nビットの第3バッファ 309 第2減算器 311 第1減算器 313 第2定数倍器 315 第1定数倍器 317 加算器 121,321 加算器 521 増分演算器 123,323 nビットのレジスタ 131,331 nビットのカウンタ 531 タイマカウンタ 141,341,541 加算器 SDT シリアルデータ SAMP サンプリング信号 CP クロック DATA 重畳データ 101, 301, 501 n-bit shift register 103, 303, 503 n-bit first buffer 105, 305, 505 n-bit second buffer 107, 507 subtractor 307 n-bit third buffer 309 second subtracter 311 1st subtracter 313 2nd constant multiplier 315 1st constant multiplier 317 Adder 121,321 Adder 521 Increment calculator 123,323 n-bit register 131,331 n-bit counter 531 timer counter 141,341,541 Adder SDT Serial data SAMP Sampling signal CP clock DATA Superimposed data

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 エンコーダから一定周期で送られてくる
位置データを受け取って任意時間の位置データに変換す
るエンコーダデータ変換回路において、 現周期の位置データと1周期前の位置データとの差分を
とる差分手段と、 前記差分手段により得られた差分データに基づき、該差
分データの増加分のデータをパルス列に変換するパルス
出力手段と、 前記差分データの符号および前記パルス出力手段のパル
ス列に基づき計数を行う計数手段と、 現周期の位置データに前記計数手段の計数内容を時系列
的に重畳させる重畳手段と、を有することを特徴とする
エンコーダデータ変換回路。
An encoder data conversion circuit for receiving position data sent from an encoder at a constant period and converting the data into position data at an arbitrary time, wherein a difference between the current period position data and the position data one period before is obtained. A difference unit; a pulse output unit configured to convert an increase in the difference data into a pulse train based on the difference data obtained by the difference unit; and a count based on a sign of the difference data and a pulse train of the pulse output unit. An encoder data conversion circuit, comprising: a counting unit that performs counting; and a superimposing unit that superimposes the count content of the counting unit on the position data of the current cycle in a time-series manner.
【請求項2】 エンコーダから一定周期で送られてくる
位置データを受け取って任意時間の位置データに変換す
るエンコーダデータ変換回路において、 現周期の位置データ、1周期前の位置データおよび2周
期前の位置データに基づき、現周期の位置データに対す
る1周期後の位置データの増分データを予測する増分予
測手段と、 前記増分予測手段により得られた増分データに基づき、
該増分データの増加分のデータをパルス列に変換するパ
ルス出力手段と、 前記増分データの符号および前記パルス出力手段のパル
ス列に基づき計数を行う計数手段と、 現周期の位置データに前記計数手段の計数内容を時系列
的に重畳させる重畳手段と、を有することを特徴とする
エンコーダデータ変換回路。
2. An encoder data conversion circuit for receiving position data sent from an encoder at a constant period and converting the data into position data at an arbitrary time, comprising: a position data of a current period, a position data of one period before, and a position data of two periods before. On the basis of the position data, incremental prediction means for predicting the incremental data of the position data one cycle after the current cycle position data, based on the incremental data obtained by the incremental predicting means,
Pulse output means for converting the increment data of the increment data into a pulse train; counting means for counting based on the sign of the incremental data and the pulse train of the pulse output means; counting of the count means to the current period position data An encoder data conversion circuit, comprising: superimposing means for superimposing contents in time series.
【請求項3】 エンコーダから一定周期で送られてくる
位置データを受け取って任意時間の位置データに変換す
るエンコーダデータ変換回路において、 前記位置データの受け取り周期に同期して計数するタイ
マと、 現周期の位置データと1周期前の位置データとの差分を
とる差分手段と、 前記差分手段により得られた差分データおよび前記タイ
マの計数内容に基づき、現周期の位置データに対する増
分データを時系列的に算出する増分演算手段と、 現周期の位置データに前記増分演算手段の算出結果を時
系列的に重畳させる重畳手段と、を有することを特徴と
するエンコーダデータ変換回路。
3. An encoder data conversion circuit for receiving position data sent from an encoder at a constant cycle and converting the data into position data for an arbitrary time, a timer for counting in synchronization with a cycle of receiving the position data, A difference means for calculating a difference between the position data of the current cycle and the position data of one cycle before; and, based on the difference data obtained by the difference means and the count content of the timer, incrementally increasing the position data of the current cycle in time series. An encoder data conversion circuit comprising: an increment calculating means for calculating; and a superimposing means for superimposing a calculation result of the increment calculating means on the position data of the current cycle in a time-series manner.
【請求項4】 現周期における前記重畳手段の最終的な
結果が1周期後の位置データと同一であることを特徴と
する請求項1、2または3に記載のエンコーダデータ変
換回路。
4. The encoder data conversion circuit according to claim 1, wherein the final result of said superimposing means in the current cycle is the same as the position data after one cycle.
JP2000310698A 2000-10-11 2000-10-11 Encoder data conversion circuit Pending JP2002116058A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000310698A JP2002116058A (en) 2000-10-11 2000-10-11 Encoder data conversion circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000310698A JP2002116058A (en) 2000-10-11 2000-10-11 Encoder data conversion circuit

Publications (1)

Publication Number Publication Date
JP2002116058A true JP2002116058A (en) 2002-04-19

Family

ID=18790609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000310698A Pending JP2002116058A (en) 2000-10-11 2000-10-11 Encoder data conversion circuit

Country Status (1)

Country Link
JP (1) JP2002116058A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005091270A (en) * 2003-09-19 2005-04-07 Matsushita Electric Ind Co Ltd Encoder communication abnormality detection device
JP2010164501A (en) * 2009-01-19 2010-07-29 Canon Inc Signal processing apparatus and measurement device
JP2010277163A (en) * 2009-05-26 2010-12-09 Fuji Electric Systems Co Ltd Servo system
JP2013029529A (en) * 2012-11-08 2013-02-07 Canon Inc Signal processing device and measuring device
CN103196360A (en) * 2012-01-10 2013-07-10 罗伯特·博世有限公司 Sensor device
JP2015206747A (en) * 2014-04-23 2015-11-19 株式会社ニコン Encoder device, driving device, stage device, and robot device
JP2018021845A (en) * 2016-08-04 2018-02-08 ファナック株式会社 Signal processor of encoder, encoder, signal processing method, and program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63229320A (en) * 1987-03-18 1988-09-26 Toshiba Corp Rotation detector
JPH01223310A (en) * 1988-03-03 1989-09-06 S G:Kk Position detector
JPH05196454A (en) * 1992-01-22 1993-08-06 Sanyo Denki Co Ltd Detecting device for absolute position
JPH08261794A (en) * 1995-03-24 1996-10-11 Mitsubishi Electric Corp Encoder apparatus and servo motor control apparatus
JPH09265504A (en) * 1996-03-27 1997-10-07 Tamagawa Seiki Co Ltd Resolver/digital signal output method
JPH09273942A (en) * 1996-02-05 1997-10-21 Aisin Seiki Co Ltd Method for interpolating sensor output

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63229320A (en) * 1987-03-18 1988-09-26 Toshiba Corp Rotation detector
JPH01223310A (en) * 1988-03-03 1989-09-06 S G:Kk Position detector
JPH05196454A (en) * 1992-01-22 1993-08-06 Sanyo Denki Co Ltd Detecting device for absolute position
JPH08261794A (en) * 1995-03-24 1996-10-11 Mitsubishi Electric Corp Encoder apparatus and servo motor control apparatus
JPH09273942A (en) * 1996-02-05 1997-10-21 Aisin Seiki Co Ltd Method for interpolating sensor output
JPH09265504A (en) * 1996-03-27 1997-10-07 Tamagawa Seiki Co Ltd Resolver/digital signal output method

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005091270A (en) * 2003-09-19 2005-04-07 Matsushita Electric Ind Co Ltd Encoder communication abnormality detection device
JP2010164501A (en) * 2009-01-19 2010-07-29 Canon Inc Signal processing apparatus and measurement device
JP2010277163A (en) * 2009-05-26 2010-12-09 Fuji Electric Systems Co Ltd Servo system
CN103196360A (en) * 2012-01-10 2013-07-10 罗伯特·博世有限公司 Sensor device
JP2013142699A (en) * 2012-01-10 2013-07-22 Robert Bosch Gmbh Sensor device
JP2013029529A (en) * 2012-11-08 2013-02-07 Canon Inc Signal processing device and measuring device
JP2015206747A (en) * 2014-04-23 2015-11-19 株式会社ニコン Encoder device, driving device, stage device, and robot device
JP2018021845A (en) * 2016-08-04 2018-02-08 ファナック株式会社 Signal processor of encoder, encoder, signal processing method, and program

Similar Documents

Publication Publication Date Title
JP3367260B2 (en) Encoder device and servo motor control device
JP3015747B2 (en) Encoder interpolation circuit
JP4953714B2 (en) Encoder output interpolation method and interpolation circuit
CN108959183B (en) Forward interpolation method for angle sensor and rotary encoder
US7352305B2 (en) Method and circuit for interpolating encoder output
JP4682968B2 (en) Encoder position information interpolation circuit
JP2002116058A (en) Encoder data conversion circuit
JPH0682573A (en) Time interval detecting circuit
US4095158A (en) Position-controlling system
JP3596942B2 (en) Speed detector
JP6589107B2 (en) Modulated wave resolver device
JPH11241927A (en) Position detecting device
JPS61110005A (en) Method and apparatus for detecting position
JP4227352B2 (en) Coincidence detection apparatus and method
JPH1078314A (en) Detecting device for displacement
JPH1062203A (en) Position detector
JP2008076382A (en) Serial encoder data conversion circuit, and servo drive system
JP3248209B2 (en) Position detection method
JP2002311040A (en) Speed detector
JP2000032789A (en) Pulse counter
JPH02119592A (en) Motor speed controller
JPH0674787A (en) Absolute position detector
JP2770889B2 (en) Rotation angle detection method
JPH1144555A (en) Data conversion circuit
JP2007333669A (en) Encoder signal processing circuit and motor control system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050419

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071003