KR100575124B1 - Linear Encoder for Detecting Long Span - Google Patents
Linear Encoder for Detecting Long Span Download PDFInfo
- Publication number
- KR100575124B1 KR100575124B1 KR1020040046630A KR20040046630A KR100575124B1 KR 100575124 B1 KR100575124 B1 KR 100575124B1 KR 1020040046630 A KR1020040046630 A KR 1020040046630A KR 20040046630 A KR20040046630 A KR 20040046630A KR 100575124 B1 KR100575124 B1 KR 100575124B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- segment
- linear encoder
- section
- linear
- Prior art date
Links
- 230000003287 optical effect Effects 0.000 claims abstract description 26
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 9
- 238000012546 transfer Methods 0.000 abstract description 8
- 239000004065 semiconductor Substances 0.000 abstract description 2
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 230000007423 decrease Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/12—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
- G01D5/244—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
- G01D5/249—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains using pulse code
- G01D5/2497—Absolute encoders
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/26—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light
- G01D5/32—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light
- G01D5/34—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells
- G01D5/36—Forming the light into pulses
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P25/00—Arrangements or methods for the control of AC motors characterised by the kind of AC motor or by structural details
- H02P25/02—Arrangements or methods for the control of AC motors characterised by the kind of AC motor or by structural details characterised by the kind of motor
- H02P25/06—Linear motors
- H02P25/064—Linear motors of the synchronous type
- H02P25/066—Linear motors of the synchronous type of the stepping type
Abstract
본 발명은 물류장치나 반도체 제조설비의 스토커 시스템처럼 선형으로 긴 거리를 이동하는 선형 이송시스템에 사용되는 이송장치의 절대위치를 검출하기 위한 선형엔코더에 관한 것으로, 더욱 상세하게는 이송장치의 절대위치를 찾기 위해 원점으로 이동하는 등의 시간이 걸리는 절차에 의하지 않고 빠르게 절대위치를 검출할 수 있는 선형 엔코더에 관한 것이다. The present invention relates to a linear encoder for detecting the absolute position of the transfer device used in the linear transfer system moving a long distance in a linear manner, such as a stocker system of a logistics device or a semiconductor manufacturing equipment, more specifically, the absolute position of the transfer device The present invention relates to a linear encoder that can quickly detect an absolute position without using a time-consuming procedure such as moving to an origin to find an.
또한, 선형 전동기를 구동원으로 하는 시스템의 경우 선형 전동기의 속도 및 위치제어를 위해서 전동기의 고정자와 이동자의 상대위치 검출이 필요하게 되는데 상대위치 검출의 정밀도가 떨어질 경우 전체적인 제어 특성의 악화를 초래한다. 이에 따라, 본 발명은 절대위치검출과 함께 상대위치를 검출하며, 그 정밀도도 종전보다 우수한 선형 엔코더에 관한 것이다. In addition, in the case of a system using the linear motor as a driving source, it is necessary to detect the relative position of the stator and the mover of the motor for speed and position control of the linear motor. However, when the precision of the relative position detection is deteriorated, the overall control characteristics are deteriorated. Accordingly, the present invention relates to a linear encoder which detects a relative position together with absolute position detection, and whose precision is also better than before.
선형엔코더, 스텝코드, 부호코드, 정밀위치코드, 광학센서, 논리소자, 신호처리프로세서Linear Encoder, Step Code, Code Code, Precision Position Code, Optical Sensor, Logic Device, Signal Processing Processor
Description
도1은 기존 방식에 따라 절대위치 검출하는 것을 나타내는 도면1 is a diagram showing the absolute position detection according to the existing scheme;
도2는 레이저검출기를 이용하여 절대위치를 검출하는 것을 나타내는 도면2 illustrates detecting an absolute position using a laser detector.
도3은 본 발명에 따른 신호처리를 위한 하드웨어 구성도3 is a hardware configuration diagram for signal processing according to the present invention;
도4는 본 발명에 따른 엔코더트랙 도면.4 is an encoder track diagram in accordance with the present invention.
도5는 광학센서에 의하여 엔코더의 스케일을 읽는 모습을 나타내는 도면5 is a view showing a state of reading the scale of the encoder by the optical sensor
도6은 광학센서에 의하여 인식된 정밀인식코드의 출력신호를 나타내는 파형도.6 is a waveform diagram showing an output signal of a precision recognition code recognized by an optical sensor;
도7은 도6에서 얻어진 신호파형의 각 구간별 상태를 나타내는 개략도FIG. 7 is a schematic diagram showing a state of each section of the signal waveform obtained in FIG.
도8은 본 발명에 따른 세그먼트코드의 조합 표시도8 is a combination display of segment codes according to the present invention.
도9는 각 광학 센서의 출력 신호를 나타내는 파형도Fig. 9 is a waveform diagram showing an output signal of each optical sensor
도10은 위치검출을 위한 소프트웨어 흐름도10 is a software flow chart for position detection
도11은 위치검출을 위한 인트럽트 루틴의 흐름도11 is a flowchart of an interrupt routine for position detection.
도12는 부호화를 위한 표12 is a table for encoding
도13는 선형전동기를 이용한 물류시스템의 구성도13 is a block diagram of a logistics system using a linear motor
도14은 스케일에 실제적으로 표시되는 모습을 나타내는 실시 예시도.Fig. 14 is an exemplary diagram showing how the scale is actually displayed.
<도면의 주요부분에대한 부호의 설명><Description of the symbols for the main parts of the drawings>
1: 선형엔코더2: 가이드레일1: linear encoder 2: guide rail
3: 바퀴4: 선형전동기의 고정자3: wheel 4: stator of linear motor
5: 이송장치의 프레임6: 선형전동기의 이동자5: frame of feeder 6: mover of linear motor
10: 리미트도그11: 근접센서10: limit dog 11: proximity sensor
12: 이동대차13: 레이져 위치검출기의 타겟12: moving cart 13: target of laser position detector
14: 레이져 위치검출기20: 스케일14: laser position detector 20: scale
30, 32, 34, 36, 38, 40: 광학실드30, 32, 34, 36, 38, 40: optical shield
31: 스텝코드33: 세그먼트코드31: step code 33: segment code
35: 부호코드37: 정밀위치코드 A35: code 37: precision position code A
39: 정밀위치코드 B45: 광학센서39: Precision Position Code B45: Optical Sensor
50: 신호처리부51: 필터50: signal processor 51: filter
52: 논리소자55: 신호처리프로세서52: logic element 55: signal processing processor
본 발명은 이송장치의 위치를 빠르게 검출할 수 있는 선형 엔코더에 관한 것으로써, 더욱 상세하게는 선형으로 긴 거리를 이동하는 선형 이송시스템에 사용되는 이송장치의 절대위치 및 상대위치를 동시에 계측할 수 있는 선형 엔코더에 관한 것이다. The present invention relates to a linear encoder that can quickly detect the position of the transfer device, and more particularly, it is possible to simultaneously measure the absolute position and relative position of the transfer device used in the linear transfer system moving a long distance linearly. To a linear encoder.
선형엔코더에 관한 종래의 기술은 다음과 같이 2가지로 나누어진다. The conventional technology regarding the linear encoder is divided into two as follows.
우선 가장 일반적인 방법으로는 제2도에 나타난 바와 같이 절대위치를 검출하는 리미트 도그(10)를 지상에 고정하여 설치하고 이동대차(12)에는 근접 센서(11)를 설치한다.First, as shown in FIG. 2, the
상기 근접센서(11)가 리미트 도그(10)의 위치로 복귀하면, 상기 복귀되었다는 신호가 근접센서(11)에 의해 검출되고, 이때의 위치값을 리세트하여 이 위치를 절대원점으로 한다. 이상에서 파악된 절대원점을 중심으로 하여 이동대차가 소정의 거리만큼 떨어지게 되면, 그 절대원점으로부터 떨어진 거리를 계산하여, 이동대차(12)의 절대위치를 계산한다.When the
그러나, 상기 발명의 경우 다음과 같은 문제점이 있다.However, the present invention has the following problems.
첫째, 전원장치의 고장이나 정전, 전원차단이 발생하여, 재운전이 이루어지는 경우에도 원점복귀를 통하여 다시 원점을 설정해야 하는 문제점이 있다.First, there is a problem in that the home position must be set again through the home position return even when a power failure occurs, a power failure, or a power interruption occurs.
둘째, 상기의 원인에 의하여 상당히 멀리 떨어진 이동대차가 다시 원점으로 복귀하는 경우 과도한 시간이 걸리는 문제점이 있다.Second, there is a problem in that excessive time is taken when the moving cart is far away due to the above cause.
셋째, 절대위치를 검출하기 위한 엔코더는 이진코드를 사용하는데, 상기 이진코드는 인식할 수 있는 위치의 수가 적어 먼거리의 위치를 인식하려면 비트 수가 많은 절대엔코더를 사용해야 하는 문제점이 있다.Third, an encoder for detecting an absolute position uses a binary code, which has a problem in that an absolute encoder having a large number of bits must be used to recognize a long distance because the number of positions that can be recognized is small.
또 다른 종래 기술은, 레이저 위치 검출기(14) 등 절대위치를 직접 검출하는 센서를 선형 엔코더와 함께 혹은 단독으로 사용하는 방법이 있다. 레이저 위치 검출기(14)는 고정된 타겟(반사판)(13)에 레이저를 조사하여 반사되는 시간을 거리로 환산하는 방식으로서 항상 타겟(13)까지의 절대위치를 검출해주게 된다. 즉, 타켓(13)의 위치를 원점으로 하여 레이저 위치검출기(14)와의 떨어진 거리를 계산하여, 이동대차(12)의 절대위치를 검출한다.Another conventional technique is to use a sensor that directly detects the absolute position such as the
그러나, 상기 발명의 경우 위치검출의 응답성에 제한이 따를뿐 아니라, 일반적으로 레이져검출장치는 장거리 검출용이기 때문에 가까운 거리의 경우 위치 정밀도가 떨어지는 문제점이 있다.However, in the case of the present invention, not only the responsiveness of position detection is limited, but also because the laser detection apparatus is generally used for long-range detection, there is a problem in that the position accuracy is poor at a close distance.
또한, 전동기의 이동자와 고정자 간의 상대위치를 알기 위해서 수리적인 보정절차나 별도의 리미트 스위치가 필요한 문제점이 있다.In addition, there is a problem that a hydraulic correction procedure or a separate limit switch is required to know the relative position between the motor and the stator of the motor.
본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 다음과 같다.The present invention has been made to solve the above problems, the object of the present invention is as follows.
첫째, 정전이나 전원이 오프된 후에도 재가동을 위하여 원점복귀등이 없이 현재위치에서 최소 단위구간 이동하여도 절대위치를 검출해 낼 수 있는 것을 목적으로 한다. First, the objective is to be able to detect the absolute position even after the power failure or the power is turned off even if the minimum unit is moved from the current position without origin return.
둘째, 장거리를 이동하여도 광학센서의 수를 늘리지 않고 정확한 위치판별이 가능하도록 하는 것을 목적으로 한다.Secondly, the objective of the present invention is to enable accurate position discrimination without increasing the number of optical sensors even when moving over a long distance.
셋째, 장거리뿐만 아니라 단거리의 경우에도 광학센서를 늘리지 않고 종전보다 더욱 정확한 위치판별이 가능하게 한다.Third, in the case of long distance as well as short distance, it is possible to determine the position more accurately than before without increasing the optical sensor.
넷째, 고정자와 이동자간의 상대위치를 구하기 위하여 별도의 장치가 필요하지 않고 절대위치를 얻는 과정 안에서 상대위치를 얻을 수 있도록 하는 것을 목적으로 한다.
Fourthly, to obtain the relative position between the stator and the mover, a separate device is not necessary and the relative position can be obtained in the process of obtaining the absolute position.
상기한 목적을 달성하기 위하여 , 스케일을 일정한 구간으로 구분하는 스텝코드와 상기 구분된 각 구간 내에 서로 다른 폭을 가진 세그먼트를 표시하는 세그먼트코드와 상기 세그먼트의 부호를 결정하는 부호코드 와 상기 세그먼트코드 및 상기 부호코드의 폭을 측정하는 정밀 위치코드를 가진 스케일과; In order to achieve the above object, a step code for dividing a scale into a predetermined section, a segment code for indicating a segment having a different width in each of the divided sections, a code code for determining a sign of the segment and the segment code and A scale having a precision position code for measuring the width of the code code;
상기 스케일에 표시된 각각의 코드를 펄스로 변환하는 광학센서와;An optical sensor for converting each code displayed on the scale into pulses;
상기 각 구간별 펄스를 분석하여 정확한 위치를 검출해내는 신호처리부를 포함한다.It includes a signal processor for detecting the correct position by analyzing the pulse for each section.
이하, 첨부도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 발명인 선형엔코더는 도3에 나타난 바와 같이, 엔코더 트랙으로 구성된 스케일(20)과 상기 스케일(20)에 표시된 코드부를 인식하고 펄스로 변환하는 광학센서(45)와 상기 광학센서에 의해 발생되는 펄스를 처리하는 신호처리부(50)의 구성된다.The linear encoder of the present invention, as shown in Figure 3, the
상기 신호처리부(50)는 필터(51), 논리소자(52) 및 신호처리 프로세서(55)로 구성된다. The
상기 필터(51)는 각 트랙마다 설치된 5개의 광학센서(50)에서 발생된 출력에서 노이즈를 제거하고 이를 프로그램 가능한 논리소자(52)에 입력하게 된다. 상기 논리소자(52)에서는 필터(51)에서 입력되는 각각의 펄스열을 이용하여 신호처리 프로세서(55)에서 필요한 데이터(53) 및 인트럽트 신호(54)를 발생하게 된다. The
또한, 상기 신호처리 프로세서(55)는 논리소자(52)로부터 입력되는 자료를 바탕으로 각 구간별 코드를 인식하게 된다.In addition, the
제4도는 본 발명인 엔코더의 스케일(20)로서 5개의 유효 코드부분(31, 33, 35, 37, 39)과 5개의 광학실드(30, 32, 34, 36, 38)로 구성된다. 4 is a
여기서 , 상기 각각의 유효 코드부분(31, 33, 35, 37, 39)은 광학센서(45)가 코드를 인식할 수 있도록 슬릿이 나있거나 혹은 막혀있도록 가공되며, 이를 도면상에 표시하면 빗금 친 부분은 막힌 부분이 되고 흰색부분은 슬릿이 된다. Here, each of the
도5는 스케일(20)의 코드를 인식하는 광학센서(45)를 나타내는 도면으로 상기 유효코드를 인식하는 광학센서(45)는 스케일(20)을 사이에 두고 광원(46)과 수 광소자(47)가 서로 마주보고 있으며, 상기 광원(46)에서 나온 빛은 수광소자(47)로 쏘아지게 된다. 이때, 상기 수광소자(47)에 광원(46)에서 나온 빛이 감지되는지 여부에 따라 논리 0 혹은 1이 인식되게 된다. 5 is a view showing an
본 발명에서 상기 유효코드부분은 크게 스텝코드(31), 세그먼트코드(33), 부호코드(35) 및 정밀위치코드(37),(39)로 구성된다. 또한, 상기 5개의 광학실드(30, 32, 34, 36, 38)는 상기 유효코드부분의 사이에 위치하여 광학센서(45)가 상기 유효코드를 정확하게 인식하도록 한다.In the present invention, the valid code portion is largely composed of a
스텝 코드(31)는 일정 구간(41), 여기서는 40[mm] 구간을 표시하는 코드로서 번갈아가며 0, 1이 된다. 이 코드는 절대 위치를 판정하는 단위 구간이 되며 이 구간 마다 특정 코드가 부여되게 된다. The
세그먼트코드(33)는 스텝 코드(31) 내에서 서로 다른 너비로 구분한 코드로서 각각 구간 내의 코드를 구분하기 위해서 사용되며 배치 순서에 관계없이 0과 1이 교대로 새겨진다. 제5도에 나타난 세그먼트는 3개로 구성되며 각각 A, B, C로 표시되어 있다. 이 코드의 조합, 즉 배열 순서에 따라 특정의 코드가 부여되게 된다. 즉, 세그먼트의 개수는 필요에 따라 변화시킬 수 있으며, 그에 따라 상기 세그먼트의 표시는 A,B,C,D,… 로 확장될 수 있다.The
부호 코드(35)는 세그먼트 코드(33)와 1:1로 대응되는 코드로서 각 세그먼트의 부호, 즉 +, -를 결정해주는 코드이다. 제4도에서 빗금 친 부분은 -, 아닌 부분은 +로 인식하게 된다. 이 부호부분은 후술하는 바와 같이 절대위치 코드의 사용 영역을 확장하는 용도로 사용하게 된다. The
정밀 위치코드 A(37), B(39)는 각 구간 내에서 정밀한 위치를 측정하기 위한 눈금으로서 본 발명에서는 1[mm] 단위로 0과 1이 새겨져 있다. 상기 정밀위치코드 A(37)와 B(39)는 위상적으로 90도 이동되게 새겨져 있다. 따라서, 광학센서(45)에서 발생하는 펄스열을 체배할 수 있으며, 이때 실제의 위치 측정 정밀도는 0.25[mm]가 된다. The precision position codes A (37) and B (39) are scales for measuring the precise position in each section, and 0 and 1 are engraved in the unit of 1 [mm] in the present invention. The precision position codes A 37 and
상기 정밀위치코드에 관하여 보다 상세하게 설명하면 다음과 같다.The precision location code will be described in more detail below.
도6 은 정밀 위치코드의 광학센서에서 인식되는 출력신호를 나타내는 파형도를 나타낸 것이며, 도7은 도6에서 나타난 신호의 상태변화를 설명하는 개략도이다.FIG. 6 is a waveform diagram showing an output signal recognized by an optical sensor of a precision position code, and FIG. 7 is a schematic diagram illustrating a state change of the signal shown in FIG.
도6에서 정밀위치코드 A(37)은 주기적인 간격으로 상승(A=1또는 B=1)과 하강(A=0 또는 B=0)이 번갈아 가며 나타나고, 정밀위치코드B(39)는 상기 A(37)과 90도 만큼 위상차이가 나는 것을 알 수 있다. In Fig. 6, the precision position code A (37) is displayed alternately ascending (A = 1 or B = 1) and falling (A = 0 or B = 0) at periodic intervals, and the precision position code B (39) is described above. It can be seen that the phase difference is 90 degrees with A (37).
도7에서는 상기 도6에 나타난 신호의 각 구간별 상태를 정의하고 있는데, S0는 A=0, B=0 이고, S1는 A=1, B=0 이고 S2는 A=1, B=1 이며, S3는 A=0, B=1이다. In FIG. 7, the state of each section of the signal shown in FIG. 6 is defined, S0 is A = 0, B = 0, S1 is A = 1, B = 0, and S2 is A = 1, B = 1. , S3 is A = 0, B = 1.
상기 상태도를 보면 S0 -> S1 -> S2 -> S3로 입력된 A,B가 변화하면 카운터 값이 증가되며, S3->S2->S1->S0로 변화하면 카운터값이 감소되는 것이다. 여기서 각각의 상태는 바로 옆의 상태만으로 이동해야 한다. 즉 S0에서 곧장 S2로의 이동은 허용되지 않는다.In the state diagram, when A and B inputted as S0-> S1-> S2-> S3 change, the counter value increases, and when S3-> S2-> S1-> S0 changes, the counter value decreases. Here each state must move to the next state only. That is, the movement from S0 directly to S2 is not allowed.
이상 도면 6 및 7에서 살펴본 바와 같이 1주기가 1mm인 경우 1/4의 주기(0.25mm)로 정밀위치코드의 신호가 변화하는 것을 알 수 있고, 일정한 순서로 변화함에 따라 카운터가 증가 또는 감소해 가는 것을 알 수 있다.As shown in FIGS. 6 and 7, when one cycle is 1 mm, the signal of the precision position code is changed by a quarter cycle (0.25 mm), and the counter increases or decreases as the constant sequence is changed. I can see it goes.
또한, 이러한 위상 이동은 이동 방향을 결정하는 데도 사용되게 된다. 즉, 각 펄스의 상승 에지(A=1 또는 B=1)를 검출하여 어느 쪽이 먼저 입력되는가에 의해 정방향 혹은 역방향을 판별하게 되며 이는 제3도의 논리소자(52)에서 하드웨어적인 논리에 의해 구현된다.This phase shift will also be used to determine the direction of travel. That is, by detecting the rising edge (A = 1 or B = 1) of each pulse to determine the forward or reverse direction by which one is input first, this is implemented by hardware logic in the
제8도에 3개의 세그먼트(101, 102, 103)로 구성된 구간(100)에서 구분 가능한 배열의 조합을 보여주고 있다. 각 세그먼트는 서로 다른 너비를 가지고 있으며 여기에서는 A, B, C로 표시되어 있다. 이 3개의 세그먼트는 배열 순서에 따라 제8도에 나타난 것처럼 6개의 조합이 가능하게 되며 여기에 추가하여 도4에 나타난 부호코드(35)를 각 세그먼트에 1:1로 대응하게 배치한다.FIG. 8 shows a combination of distinguishable arrangements in a
이상과 같이 대응하는 각 부호를 0 혹은 1로 설정하고 해당 부호가 0이면 소문자 a, b, c로 설정하고, 해당부호가 1이면 대문자 A, B, C로 할당할 수 있다.As described above, each corresponding code may be set to 0 or 1, and if the corresponding code is 0, it may be set to lowercase letters a, b, and c. If the corresponding code is 1, it may be assigned to uppercase letters A, B, and C.
이상과 같이 할당된 세그먼트와 부호는 아래와 같은 조합이 가능하게 된다. The segment and code allocated as described above can be combined as follows.
(A, B, C) (A, C, B) (B, A, C) (B, C, A) (C, A, B) (C, B, A) (A, B, C) (A, C, B) (B, A, C) (B, C, A) (C, A, B) (C, B, A)
(a, B, C) (a, C, B) (B, a, C) (B, C, a) (C, a, B) (C, B, a) (a, B, C) (a, C, B) (B, a, C) (B, C, a) (C, a, B) (C, B, a)
(A, b, C) (A, C, b) (b, A, C) (b, C, A) (C, A, b) (C, b, A) (A, b, C) (A, C, b) (b, A, C) (b, C, A) (C, A, b) (C, b, A)
(A, B, c) (A, c, B) (B, A, c) (B, c, A) (c, A, B) (c, B, A) (A, B, c) (A, c, B) (B, A, c) (B, c, A) (c, A, B) (c, B, A)
(a, b, C) (a, C, b) (b, a, C) (b, C, a) (C, a, b) (C, b, a) (a, b, C) (a, C, b) (b, a, C) (b, C, a) (C, a, b) (C, b, a)
(A, b, c) (A, c, b) (b, A, c) (b, c, A) (c, A, b) (c, b, A) (A, b, c) (A, c, b) (b, A, c) (b, c, A) (c, A, b) (c, b, A)
(a, B, c) (a, c, B) (B, a, c) (B, c, a) (c, a, B) (c, B, a) (a, B, c) (a, c, B) (B, a, c) (B, c, a) (c, a, B) (c, B, a)
(a, b, c) (a, c, b) (b, a, c) (b, c, a) (c, a, b) (c, b, a) (a, b, c) (a, c, b) (b, a, c) (b, c, a) (c, a, b) (c, b, a)
위에서 알 수 있듯이 3개의 세그먼트와 1개의 부호 코드로 48 가지의 코드를 생성할 수 있음을 보여준다. 위의 조합에서 첫 번째 조합은 각 세그먼트가 전부 + 부호로만 조합된 경우이고 아래로 각각 1개, 2개씩이 -부호의 조합이며 마지막은 전체가 -부호로만 된 조합의 구성이다. 일반적으로 이진 코드로 4개의 비트를 사용할 경우 가지 경우의 표시가 가능하나 본 코드는 3개 코드와 1개의 부호 코드의 조합으로 가지 경우를 표시할 수 있음을 보여주고 있다. As you can see, 48 segments can be generated with 3 segments and 1 sign code. In the above combination, the first combination is a case where all segments are combined only with a + sign, one and two down are -sign combinations, and the last is a combination of only -signs. Typically, four bits in binary code It can be displayed in one case, but this code is a combination of 3 codes and 1 sign code. It can be shown that there are cases.
제9도는 5개의 광학센서(45)가 출력하는 펄스열을 시간축으로 도시한 것으로 서 구간코드(60), 세그먼트 코드(61), 부호 코드(62), 정밀 위치코드 A(63), B(64)로 이루어져 있다. FIG. 9 shows the pulse train output by the five
구간코드(60)는 구간이 바뀔 때 마다 0과 1이 교대로 발생되어 각각의 구간을 구분할 수 있게 해준다. 또한 세그먼트코드(61)는 부호 코드(62)와 조합하여 구간 내의 각 세그먼트를 구분할 수 있게 해준다.The
도면에 나타나듯이 상기 세그먼트코드(61)은 상기 부호코드가 0인 경우 소문자로 표시되며, 상기 부호코드가 1인 경우 대문자로 표시된다. 이를 통하여 동일한 파형의 세그먼트라고 하더라도 상기 부호코드가 0 또는 1인지 여부에 따라 서로 다르게 인식됨을 알 수 있다.As shown in the figure, the
제10도는 광학센서로부터의 펄스 입력을 처리하는 신호처리 프로세서(55)의 소프트웨어 흐름도가 도시되어 있다. 10 shows a software flow diagram of a
일정한 시간 간격으로 실행되는 이 소프트웨어는 시작하면(70) 먼저 T0, T1, T2, T3, T4 5개의 상태신호를 논리소자(51)로부터 읽어 들인다(71). 여기서 T0는 논리소자에서 생성한 방향 판별신호이고 T1은 구간 펄스(60), T2는 세그먼트 펄스(61), T3는 부호 펄스(62), T4는 정밀위치펄스 A(63), B(64)의 조합으로 체배한 펄스이다. 이 흐름도는 제9도와 같이 5개의 세그먼트(A, B, C, D, E)를 가진 경우에 대한 것이다. 다음에 T1의 상태를 검사해서(72) T1이 1이면 (81)쪽으로, 아니면 (73)쪽으로 실행이 된다. T1이 0인 동안(73) 즉, 한 구간 동안 아래의 프로그램을 실행하게 된다. This software, which is executed at regular time intervals, starts (70) and first reads the five status signals T0, T1, T2, T3, and T4 from the logic element 51 (71). Where T0 is the direction determination signal generated by the logic element, T1 is the
한 구간 안에는 5개의 세그먼트가 있으므로 T2는 5번의 상승 혹은 하강 에지를 만들게 되고 이때마다 인트럽트를 발생시켜 2개의 카운터를 이용하여 T2 즉, 세그먼트 펄스의 폭과 T3 즉, 부호펄스의 폭을 T4의 펄스 수로 카운트하면 아래와 같은 5개의 카운트 조합이 발생된다. Since there are five segments in one section, T2 creates five rising or falling edges, and each time an interrupt is generated and two counters are used to determine the width of T2, that is, the width of the segment pulse and the width of the sign pulse, that is, the width of T4. Counting by the number of pulses generates the following five count combinations.
(n1, s1), (n2, s2), (n3, s3), (n4, s4), (n5, s5)(n1, s1), (n2, s2), (n3, s3), (n4, s4), (n5, s5)
즉, 각 세그먼트에 해당하는 펄스 수(n1 - n5)와 부호(s1-s5)가 결정되게 된다(74). That is, the number of pulses n1-n5 and the sign s1-s5 corresponding to each segment are determined (74).
다음에는 각 조합에 대해서 제10도에서 나타난 바와 같이 세그먼트지수(ni)와 부호지수(si)를 이용해서 코드를 찾게 된다(75). 여기에서 방향 입력 T0의 상태를 판별하여(76) 정방향이면 (78), 역방향이면 (77) 방향으로 프로그램이 수행되게 되는데 이는 생성된 코드가 좌측에서 혹은 우측에서 먼저 시작한 것인가를 판정하기 위해서 이다. Next, for each combination, as shown in FIG. 10, the code is found using the segment index ni and the code index si (75). Here, the state of the direction input T0 is determined (76) and the program is executed in the forward direction (78) and in the reverse direction (77) in order to determine whether the generated code starts from the left side or the right side first.
해당 방향에 따라서 (77), (78)과 같이 연산하면 5자리의 코드를 생성할 수가 있다. 이 코드는 각 절대위치 마다 부여된 고유의 코드로서 표나 적절한 연산을 통해서 절대위치 구간을 확인하게 된다(79). 상기 절대위치구간은 이동되는 위치를 미리 일정한 단위로 구분하고, 상기 구분된 각각의 위치마다 고유의 코드번호를 부여한다. 예를 들면, A지점의 코드는 91234, B지점의 코드는 43212, C지점의 코드는 42331 과 같이 일정한 고유의 코드번호를 초기에 부여하는 것이다.According to the direction, it is possible to generate a 5-digit code by performing the calculation as (77) and (78). This code is a unique code assigned to each absolute position to check the absolute position section through a table or an appropriate operation (79). The absolute position section divides a moving position in a predetermined unit in advance and assigns a unique code number to each of the divided positions. For example, the code at the point A is 91234, the code at the point B is 43212, and the code at the point C is 42331.
따라서, 절대 구간의 확인은 한 구간만 인식하여 현재 위치가 어디인지를 파악하게 되면, 다음 구간부터는 이미 인식한 절대위치 구간에서 단위 구간 간격만큼 이동방향에 따라 더하거나 빼는 연산만으로 절대위치의 확인이 가능하다(80).Therefore, if the absolute section is recognized only by one section to determine where the current position is, from the next section, the absolute position can be confirmed by only adding or subtracting according to the moving direction by the unit section interval from the already recognized absolute position section. (80).
예를 들면, 만일 초기에 A지점의 코드가 91234, B지점의 코드는 43212, C지점의 코드는 42331 으로 절대위치가 설정되었고, 정전등으로 인하여 절대위치를 다시 파악해야 하는 경우에, 현재 위치에서 한 구간을 이동하여 위치코드가 91234 로 판단되면, 현재 절대위치는 A지점이 되고, 그 이후는 이미 설정된 바와 같이 이동하는 것이다. 따라서, 절대위치를 알기위하여 다시 원점으로 돌아오는 불필요한 작업이 필요하지 않게 된 것이다.For example, if the initial position is set to 91234, the branch B is 43212, and the branch C is 42331, and the absolute position needs to be reconstructed due to a power outage, the current position If the position code is determined to be 91234 by moving a section in, the current absolute position becomes the point A, and after that, it moves as already set. Therefore, it is no longer necessary to return to the origin to know the absolute position.
또한, 이 구간 내에서의 상대거리는 단순히 T4 펄스를 카운트하는 것만으로 알 수가 있다. The relative distance in this section can be known simply by counting T4 pulses.
제11도는 제10도의 프로그램의 흐름과는 별도로 인트럽트에 의해 처리되는 소프트웨어 흐름도이다. 한 구간 내에는 5개의 세그먼트가 존재하므로 T2 펄스의 각 에지 사이의 간격을 T4 펄스를 이용해서 측정하고 또 그 해당 세그먼트의 부호도 읽어 5개의 (세그먼트 펄스 수, 부호) 조합을 생성하게 된다. FIG. 11 is a software flow chart which is processed by interrupt separately from the flow of the program of FIG. Since there are five segments in one section, the interval between each edge of the T2 pulse is measured using the T4 pulse, and the sign of the corresponding segment is also read to generate five (segment pulse number, sign) combinations.
제12도는 (세그먼트 펄스 수, 부호) 조합으로부터 구간 지표(ti)를 생성하는 표이다. 이 표에 따라서 (세그먼트 펄스 수, 부호) 조합은 구간별로 하나의 5자리의 코드로 인식되게 되고 이 코드는 절대 위치와 1:1로 매칭되어 있다. 12 is a table for generating interval indicator ti from the combination (number of segment pulses, sign). According to this table, the (segment pulse number, sign) combination is recognized as one 5-digit code for each section, and this code is 1: 1 matched with the absolute position.
여기서 세그먼트 펄스 수는 다음과 같이 결정되었다. 구간의 간격을 40[mm]로 하고 T4 펄스 즉, 정밀 위치펄스 A, B의 간격을 1[mm]로 하면 이를 체배한 펄스의 반주기는 0.25[mm]가 되고 전체적인 정밀도는 0.25[mm]가 된다. 따라서 40/0.25 = 160[펄스]가 되며 각 세그먼트를 서로 다른 폭으로 할당하면 16+24+32+40+48 = 160이 된다. 이는 기호로 A, B, C, D, E에 해당되며 폭으로는 4(0.25×16)mm, 6(0.25×24)mm, 8(0.25×32)mm, 10(0.25×40)mm, 12(0.25×48)mm에 해당된다. 따라서 T2 에지 간의 펄스의 카운트만으로 쉽게 코드를 구분해 낼 수 있다. Here, the number of segment pulses was determined as follows. If the interval is 40 [mm] and the T4 pulse, that is, the precision position pulses A and B, is 1 [mm], the half cycle of the multiplied pulse becomes 0.25 [mm] and the overall precision is 0.25 [mm]. do. Thus, 40 / 0.25 = 160 [pulse], and assigning each segment a different width results in 16 + 24 + 32 + 40 + 48 = 160. These are symbols A, B, C, D, and E. The widths are 4 (0.25 × 16) mm, 6 (0.25 × 24) mm, 8 (0.25 × 32) mm, 10 (0.25 × 40) mm, It corresponds to 12 (0.25 x 48) mm. Therefore, the code can be easily identified by counting the pulses between the T2 edges.
이상에서 살펴본 본 발명에 따른 선형엔코더는 선형전동기에 사용될 수 있으며 구체적으로 설명하면 다음과 같다.The linear encoder according to the present invention as described above can be used in a linear motor and will be described in detail as follows.
먼저 제 13도에 도시된 선형전동기를 이용한 이송시스템은 고정자(4)와 이동자(6)로 구성된 선형전동기를 구동원으로 한다. 선형전동기의 고정자(4)는 일정한 간격으로 이동방향으로 요철홈이 파져있으며 이동자(6)는 영구자석 사이에 자성체를 끼워 일정간격을 유지하게 한 다음에 주위를 권선이 감고 있는 구조이다. First, the transfer system using the linear motor shown in FIG. 13 uses a linear motor composed of a
이때, 고정자(4)를 프레임(1) 위에 고정하고 양단으로 가이드레일(2)을 설치한 후에 이 위에 바퀴(3)와 일체화된 이송장치의 프레임(5)d,f 전동기와 고정하여 물체를 이동하게 된다. 또한, 상기 위치를 검출하기 위해서는 일반적으로 선형 엔코더(7)를 프레임(5)과 고정하여 사용하게 된다.At this time, the
이때, 선형전동기의 피치와 센서의 구간을 동일하게 하여 센서를 제작하면 절대위치와 상대위치를 동시에 알 수 있어 전동기의 전류 및 추력제어가 보다 용이해지고 이동자(6)의 절대위치를 항상 알 수 있기 때문에 불필요한 원점복귀 동작을 피할 수 있고 오차의 누적이 없으므로 작업의 정확성을 향상하게 된다. At this time, if the sensor is manufactured with the same pitch of the linear motor and the sensor section, the absolute position and the relative position can be known at the same time, making it easier to control the current and thrust of the motor, and always know the absolute position of the
제14도는 상기 선형엔코더의 스케일(20)을 나타낸 것으로써 인쇄나 레이저 가공을 통해서 원하는 길이만큼 제작할 수 있다. 14 shows the
상기한 바와 같이 이루어진 본 발명에 따른 선형엔코더에 대한 효과는 다음과 같다.Effects on the linear encoder according to the present invention made as described above are as follows.
첫째, 정전이나 전원오프가 일어난 후에 재가동이 되는 경우, 원점복귀같은 절대위치의 확인절차가 없이 최소 단위 구간의 이동만으로 절대위치를 알 수 있어 원점복귀에 드는 시간을 절약할 수 있다.First, in case of restarting after a power failure or power off, the absolute position can be known only by the movement of the minimum unit section without the procedure of confirming the absolute position such as zero point return, thereby saving time for the zero point return.
둘째, 상술한 바와 같이 잦은 원점복귀가 필요치 않아 다른 이동대차와 충돌할 염려가 적다. Second, as mentioned above, frequent homing is not necessary, so there is little possibility of colliding with other mobile trucks.
셋째, 검출거리가 달라진다고 하더라도 적은 비트수로 긴 거리를 인식할 수 있으므로, 광학센서가 추가로 필요치 않아 경제적이다.Third, even if the detection distance is different, since the long distance can be recognized with a small number of bits, it is economical because no additional optical sensor is required.
넷째, 광학센서를 이용한 비접촉식이므로 반도체 공정라인 등과 같은 청정지 역에서 먼지를 발생시키지 않는다.Fourth, since it is a non-contact type using an optical sensor, it does not generate dust in a clean area such as a semiconductor processing line.
다섯째, 선형전동기의 피치와 동일하게 센서의 구간을 결정하여 구현할 경우 전동기의 고정자와 이동자의 상대위치에 따른 전류제어, 추력제어가 보다 용이해지며 오차가 누적되지 않아 오랜 시간 운전해도 성능이 약화되지 않는다.Fifth, if the sensor section is determined and implemented in the same way as the pitch of the linear motor, the current control and the thrust control according to the relative positions of the stator and the mover of the motor become easier and the error does not accumulate. Do not.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040046630A KR100575124B1 (en) | 2004-06-22 | 2004-06-22 | Linear Encoder for Detecting Long Span |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040046630A KR100575124B1 (en) | 2004-06-22 | 2004-06-22 | Linear Encoder for Detecting Long Span |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050121486A KR20050121486A (en) | 2005-12-27 |
KR100575124B1 true KR100575124B1 (en) | 2006-05-02 |
Family
ID=37293631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040046630A KR100575124B1 (en) | 2004-06-22 | 2004-06-22 | Linear Encoder for Detecting Long Span |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100575124B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100914484B1 (en) * | 2007-11-15 | 2009-08-28 | 주식회사 신성에프에이 | System of Controlling Position of Linear Electric Motor and Method of Controlling the Same |
KR102230224B1 (en) * | 2018-12-06 | 2021-03-19 | 주식회사 져스텍 | Method and apparatus for non-cyclic position sensing using De Bruijn sequence and device ID |
KR102230223B1 (en) * | 2018-12-06 | 2021-03-19 | 주식회사 져스텍 | Method and apparatus for non-cyclic position sensing using De Bruijn sequence |
KR102388381B1 (en) * | 2020-06-18 | 2022-04-20 | 주식회사 져스텍 | Method and apparatus for linear position detection using De Bruijn sequence as scale ID |
-
2004
- 2004-06-22 KR KR1020040046630A patent/KR100575124B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20050121486A (en) | 2005-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7571552B2 (en) | Scale reading apparatus | |
US7461464B2 (en) | Position measuring arrangement | |
US10845219B2 (en) | Linear encoder for a linear position measurement device having a stationary part and a moving part | |
EP0042178B1 (en) | Absolute encoder | |
US20040216320A1 (en) | Elevator installation with a measuring system for determining absolute car position | |
JP6022220B2 (en) | Linear position measurement system | |
JP5079644B2 (en) | Position measuring device | |
JP6535184B2 (en) | Encoder | |
EP2937671B1 (en) | Absolute encoder | |
US10209104B2 (en) | Absolute encoder, processing method, program, driving apparatus, and industrial machine | |
US6031224A (en) | Position measuring system | |
CN106029474B (en) | The method of the angle reference position of power steering system is determined according to the rising edge of exponential signal and failing edge | |
US7679226B2 (en) | Synchronous linear motor with non-contacting scanning of the toothed structure of the secondary part | |
KR100575124B1 (en) | Linear Encoder for Detecting Long Span | |
EP1957943A1 (en) | Scale and readhead apparatus and method | |
KR101050164B1 (en) | Linear motor and control method | |
US9803998B1 (en) | Absolute position sensor with fine resolution | |
US8069580B2 (en) | Measuring device for determining a position and/or a speed | |
CN110968122A (en) | Position acquisition method of linear transmission system and linear transmission system | |
US7359826B2 (en) | Method and device for detection of oscillations by a position measuring system | |
JP2012083280A (en) | Absolute position detector for mobile body | |
JP2009271076A6 (en) | Measuring device for detecting position and / or velocity | |
JP2007127560A (en) | Position-detecting device, scale, and method of resetting origin of the position-detecting device | |
JP2012149891A (en) | Linear sensor | |
CN218673685U (en) | Induction type absolute value encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20110324 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |