KR101455086B1 - High speed trigonometric calculating method using trigonometric function table - Google Patents

High speed trigonometric calculating method using trigonometric function table Download PDF

Info

Publication number
KR101455086B1
KR101455086B1 KR1020120015706A KR20120015706A KR101455086B1 KR 101455086 B1 KR101455086 B1 KR 101455086B1 KR 1020120015706 A KR1020120015706 A KR 1020120015706A KR 20120015706 A KR20120015706 A KR 20120015706A KR 101455086 B1 KR101455086 B1 KR 101455086B1
Authority
KR
South Korea
Prior art keywords
rotation angle
value
trigonometric
trigonometric function
function
Prior art date
Application number
KR1020120015706A
Other languages
Korean (ko)
Other versions
KR20130094453A (en
Inventor
이혁기
하형준
Original Assignee
삼성탈레스 주식회사
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 삼성탈레스 주식회사 filed Critical 삼성탈레스 주식회사
Priority to KR1020120015706A priority Critical patent/KR101455086B1/en
Publication of KR20130094453A publication Critical patent/KR20130094453A/en
Application granted granted Critical
Publication of KR101455086B1 publication Critical patent/KR101455086B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/548Trigonometric functions; Co-ordinate transformations

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Transmission And Conversion Of Sensor Element Output (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Optical Transform (AREA)

Abstract

광학 장비의 회전 각도를 측정하여 펄스 형태로 출력하는 단계와, 상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 삼각함수 테이블로부터 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계와, 상기 변환된 직교 좌표계 값을 출력하는 단계를 구성한다. 상기와 같은 FPGA를 이용하는 고속 삼각함수 연산 장치에 의하면, 종래의 디지털 신호 프로세서 대신 FPGA(field programmable gate array)를 이용하여 회전각의 삼각함수 연산 처리를 고속화하는 효과가 있다. 또한, 사인 함수와 코사인 함수의 1/4 주기 값만이 미리 저장된 삼각함수 테이블에서 값을 독출하여 삼각함수 연산을 수행함으로써, 연산 처리를 간략화하고 처리 속도를 높일 수 있다.Measuring a rotation angle of the optical equipment and outputting the measured rotation angle in a pulse form; reading out a sine function value and a cosine function value corresponding to the output rotation angle from the trigonometric function table to obtain a polar coordinate value of the rotation angle as a rectangular coordinate system value And outputting the converted Cartesian coordinate system value. According to the high-speed trigonometric function processor using the above-described FPGA, the trigonometric function operation of the rotation angle is speeded up by using a field programmable gate array (FPGA) instead of the conventional digital signal processor. Also, by reading the values from the trigonometric function table in which only the 1/4 cycle values of the sine function and the cosine function are stored and performing the trigonometric function operation, the arithmetic processing can be simplified and the processing speed can be increased.

Description

삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법{HIGH SPEED TRIGONOMETRIC CALCULATING METHOD USING TRIGONOMETRIC FUNCTION TABLE}HIGH SPEED TRIGONOMETRIC CALCULATING METHOD USING TRIGONOMETRIC FUNCTION TABLE < RTI ID = 0.0 >

본 발명은 삼각함수 연산 방법에 관한 것으로서, 좀 더 구체적으로는 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법에 관한 것이다.The present invention relates to a trigonometric function calculation method, and more particularly, to a fast trigonometric function calculation method using a trigonometric function table.

일부 광학 장비는 회전축을 따라 회전하면서 적의 표적을 탐색한다. 광학 장비는 회전각을 측정하고, 측정된 회전각을 극 좌표계 값으로부터 직각 좌표계 값으로 변환하여 표적의 위치 및 속도를 인식한다. 이때, 광학 장비는 고속으로 회전하면서 실시간으로 좌표 변환을 수행하므로, 많은 연산량을 고속으로 수행해야 한다.Some optical equipment rotates along the axis of rotation and searches for enemy targets. The optical instrument measures the rotation angle and converts the measured rotation angle from the polar coordinate value to the rectangular coordinate value to recognize the position and velocity of the target. At this time, the optical equipment performs coordinate conversion in real time while rotating at a high speed, so a large amount of computation must be performed at high speed.

종래에는 회전각 연산 처리에 주로 디지털 신호 프로세서(digital signal processor)가 이용되며, 부동 소수점 연산에 있어서 특히 강력한 성능을 발휘하고 있다. 그런데, 고속 연산 처리에는 한계가 있다는 문제점이 있다. 광학 장비의 회전 속도가 빠르면 빠를수록 회전각 연산 처리에 부하가 많이 걸려서 표적을 신속 정확하게 탐지할 수 없다.Conventionally, a digital signal processor is mainly used for the rotation angle calculation processing, and particularly strong performance is exhibited in the floating point calculation. However, there is a problem that there is a limit to high-speed computation processing. The faster the rotational speed of the optical equipment, the more load is required for the rotational angle calculation processing and the target can not be detected quickly and accurately.

이하, 도 1을 참조하여 종래 기술의 문제점을 설명한다.Hereinafter, problems of the prior art will be described with reference to Fig.

도 1은 극 좌표계 및 직각 좌표계의 변환 관계를 나타내는 개념도이다.Fig. 1 is a conceptual diagram showing a conversion relationship between a polar coordinate system and a rectangular coordinate system.

도 1을 참조하면, 극 좌표계 값과 직각 좌표계 값 간의 관계를 알 수 있다. 여기서, r은 회전각 반지름이며, θ는 회전각이다. , r과 θ를 알면, 직각 좌표계의 x값은 rcosθ이고, y값은 rsinθ이다.Referring to FIG. 1, a relationship between a polar coordinate value and a rectangular coordinate value can be known. Where r is the radius of rotation and θ is the rotation angle. Knowing r and θ, the x value of the Cartesian coordinate system is rcosθ and the y value is rsinθ.

이처럼, 미리 알고 있는 r값과 실시간 측정되는 θ값을 이용하여 삼각함수 연산을 고속으로 처리하기 위해서는 종래보다 향상된 하드웨어 성능과 좀 더 간략화된 연산 알고리즘이 요구된다고 할 수 있다.As described above, in order to process the trigonometric function at a high speed by using the previously known r value and the measured θ value in real time, improved hardware performance and a simpler calculation algorithm are required.

본 발명의 목적은 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법을 제공하는 데 있다.An object of the present invention is to provide a fast trigonometric function calculation method using a trigonometric function table.

상술한 본 발명의 다른 목적에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법은, 광학 장비의 회전 각도를 측정하여 펄스 형태로 출력하는 단계와, 상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 삼각함수 테이블로부터 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계와, 상기 변환된 직교 좌표계 값을 출력하는 단계를 포함하도록 구성될 수 있다. 이때, 상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계는, 상기 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수에 해당하는 사인 함수값과 코사인 함수값을 독출하도록 구성될 수 있다. 그리고 상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 삼각함수 테이블로부터 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계는, 상기 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수 외에 나머지 3/4 개수에 해당하는 사인 함수값과 코사인 함수값을 하기 수학식에 따라 산출하고, [수학식]

Figure 112012012434135-pat00001
이다.According to another aspect of the present invention, there is provided a high-speed trigonometric function calculation method using a trigonometric function table, comprising the steps of: measuring a rotation angle of an optical equipment and outputting the rotation angle in a pulse form; Reading out the function value from the trigonometric function table, converting the polar coordinate value of the rotation angle into the rectangular coordinate system value, and outputting the converted rectangular coordinate system value. The step of reading the sine function value and the cosine function value corresponding to the output rotation angle and converting the polar coordinate value of the rotation angle into the rectangular coordinate system value may further include the steps of: / 4 number of sine function values and cosine function values. The step of reading the sine function value and the cosine function value corresponding to the output rotation angle from the trigonometric function table and converting the polar coordinate value of the rotation angle into the rectangular coordinate system value comprises: The sine function value and the cosine function value corresponding to the remaining 3/4 number are calculated according to the following equation,
Figure 112012012434135-pat00001
to be.

상기와 같은 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법에 의하면, 종래의 디지털 신호 프로세서 대신 FPGA(field programmable gate array)를 이용하여 회전각의 삼각함수 연산 처리를 고속화하는 효과가 있다. 또한, 사인 함수와 코사인 함수의 1/4 주기 값만이 미리 저장된 삼각함수 테이블에서 값을 독출하여 삼각함수 연산을 수행함으로써, 연산 처리를 간략화하고 처리 속도를 높일 수 있다.According to the fast trigonometric function calculation method using the trigonometric function table as described above, the trigonometric function operation of the rotation angle can be speeded up by using a field programmable gate array (FPGA) instead of the conventional digital signal processor. Also, by reading the values from the trigonometric function table in which only the 1/4 cycle values of the sine function and the cosine function are stored and performing the trigonometric function operation, the arithmetic processing can be simplified and the processing speed can be increased.

도 1은 극 좌표계 및 직각 좌표계의 변환 관계를 나타내는 개념도이다.
도 2는 본 발명의 일 실시예에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법의 흐름도이다.
도 3은 본 발명의 회전 각도 측정에 따른 펄스 출력을 나타내는 그래프이다.
도 4는 본 발명의 일 실시예에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법의 흐름도이다.
Fig. 1 is a conceptual diagram showing a conversion relationship between a polar coordinate system and a rectangular coordinate system.
2 is a flowchart of a fast trigonometric function calculation method using a trigonometric function table according to an embodiment of the present invention.
3 is a graph showing the pulse output according to the rotation angle measurement of the present invention.
4 is a flowchart of a fast trigonometric function calculation method using a trigonometric function table according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 발명을 실시하기 위한 구체적인 내용에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail to the concrete inventive concept. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 장치의 블록 구성도이다.2 is a block diagram of a fast Trigonometric function unit using a trigonometric function table according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 장치(100)(이하, '고속 삼각함수 연산 장치'라 함)는 회전 센서 모듈(110), 메모리 모듈(120), FPGA 연산 모듈(130) 및 출력 모듈(140)을 포함하도록 구성될 수 있다.Referring to FIG. 2, a high-speed trigonometric function unit 100 (hereinafter, referred to as a 'high-speed trigonometric function unit') using a trigonometric function table according to an embodiment of the present invention includes a rotation sensor module 110, An FPGA computing module 130, and an output module 140. [0033]

고속 삼각함수 연산 장치(100)는 종래와 달리 FPGA(field programmable gate array) 연산 모듈(120)을 이용하여 회전각의 삼각함수를 연산하도록 하여 연산 처리의 속도를 높인다. 고속 삼각함수 연산 장치 (100)는 사인 함수의 코사인 함수의 주기성을 이용하여 연산 알고리즘을 간략화한다. 구체적으로는, 메모리 모듈(120)에 사인 함수 및 코사인 함수의 1/4 주기 값만이 미리 저장되도록 하고, 저장된 값을 독출하여 삼각함수 연산을 수행함으로써, 연산 처리를 간략화하고 처리 속도를 높일 수 있다. 이하, 구체적인 구성에 대하여 설명한다.The high-speed trigonometric function unit 100 uses a field programmable gate array (FPGA) operation module 120 to calculate a trigonometric function of the rotation angle, thereby increasing the speed of operation processing. The high-speed trigonometric function calculator 100 simplifies the calculation algorithm using the periodicity of the cosine function of the sine function. Specifically, only the 1/4 period value of the sine function and the cosine function is stored in advance in the memory module 120, and the stored value is read out to perform the trigonometric function operation, thereby simplifying the arithmetic processing and increasing the processing speed . Hereinafter, a specific configuration will be described.

회전 센서 모듈(110)은 광학 장비의 회전 각도를 측정하여 출력하도록 구성될 수 있다. 회전 센서 모듈(110)은 회전 각도를 측정하여 고속으로 출력 가능해야 한다. 적어도 50 Hz의 회전 속도에서 회전 각도를 측정하여 출력 가능하도록 구성될 수 있다.The rotation sensor module 110 may be configured to measure and output the rotation angle of the optical equipment. The rotation sensor module 110 must be capable of outputting a high speed by measuring the rotation angle. And can be configured to output and measure the rotation angle at a rotation speed of at least 50 Hz.

메모리 모듈(120)은 FPGA 연산 모듈(130)이 회전 각도를 변환할 수 있도록 하기 위해, 회전 센서 모듈(110)에서 측정된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 미리 저장하도록 구성될 수 있다. 1/4 주기 값을 저장하는 것은 사인 함수와 코사인 함수가 주기성을 갖는 함수로서, 1/4 주기만으로도 사인 함수와 코사인 함수의 모든 값을 주기성을 이용한 연산이 가능하기 때문이다.The memory module 120 is configured to previously store a sine function value and a cosine function value corresponding to the rotation angle measured by the rotation sensor module 110 so that the FPGA operation module 130 can convert the rotation angle . The reason why the 1/4 cycle value is stored is that the sine function and the cosine function have a periodicity, and all the values of the sine function and the cosine function can be calculated using the periodicity in only 1/4 cycle.

이에, 메모리 모듈(120)은 회전 센서 모듈(110)에서 1 회전에 의해 출력되는 펄스 수의 1/4 개수에 해당하는 사인 함수값과 코사인 함수값을 미리 저장하도록 구성될 수 있다. 다시 말하면, 회전 센서 모듈(110)은 회전 각도의 분해능(resolution)에 따른 소정 개수의 펄스를 출력하여 측정된 회전각을 나타내는데, 메모리 모듈(120)은 이러한 펄스 역시 1/4 개수의 사인 함수값과 코사인 함수값만 미리 저장해두면 된다. 이는 메모리 모듈(120)이 사인 함수값과 코사인 함수값의 1/4 주기 값만 저장하는 것을 의미한다.Accordingly, the memory module 120 may be configured to previously store the sine function value and the cosine function value corresponding to 1/4 of the number of pulses output by the rotation sensor module 110 in one rotation. In other words, the rotation sensor module 110 outputs a predetermined number of pulses in accordance with the resolution of the rotation angle to indicate the measured rotation angle. The memory module 120 also determines that the pulse is also a 1/4 sine function value And cosine function values. This means that the memory module 120 stores only the sine function value and the 1/4 cycle value of the cosine function value.

분해능에 대하여 좀 더 설명하면, 50 Hz의 회전 속도를 갖는 광학 장비에 대하여 0.036도의 분해능을 갖도록 하려면, 회전 센서 모듈(110)이 1회전에 대하여 10000 개의 펄스를 출력하도록 설정하면 된다. 이에, 회전 각도는 펄스 수에 0.036도를 곱하면 알 수 있다.More specifically, in order to have a resolution of 0.036 degrees for an optical device having a rotation speed of 50 Hz, the rotation sensor module 110 may be set to output 10,000 pulses per rotation. Thus, the rotation angle can be found by multiplying the number of pulses by 0.036 degrees.

FPGA 연산 모듈(130)은 회전 센서 모듈(110)에서 출력된 회전 각도를 극 좌표계 값에서 직교 좌표계 값으로 변환하도록 구성될 수 있다. FPGA 연산 모듈(120)은 디지털 신호 프로세서가 아닌 FPGA를 이용함으로써, 실시간 연산 속도를 높일 수 있다. FPGA 연산 모듈(120)은 회전 각도 θ와 광학 장비의 회전 반지름 r을 이용하여 직교 좌표계 값으로 변환한다. 이때, x값은 rcosθ이고, y값은 rsinθ가 된다.The FPGA calculation module 130 may be configured to convert the rotation angle output from the rotation sensor module 110 from a polar coordinate value to a rectangular coordinate value. The FPGA operation module 120 can increase the real-time operation speed by using the FPGA instead of the digital signal processor. The FPGA operation module 120 converts the rotation angle &thetas; and the rotation radius r of the optical equipment into a rectangular coordinate system value. At this time, x value is rcos? And y value is rsin?.

한편, FPGA 연산 모듈(130)은 메모리 모듈(120)에 미리 저장된 1/4 주기의 사인 함수값과 코사인 함수을 이용하여 연산을 간략화할 수 있다. 즉, FPGA 연산 모듈(130)은 메모리 모듈(120)에 미리 저장된 1/4 개수에 해당하는 사인 함수값과 코사인 함수값을 수학식 1에 대입하여 나머지 3/4 개수에 해당하는 사인 함수값과 코사인 함수값을 산출하도록 구성될 수 있다.Meanwhile, the FPGA operation module 130 can simplify the operation by using the sine function value and the cosine function of 1/4 cycle stored in advance in the memory module 120. [ That is, the FPGA operation module 130 substitutes the sine function value and the cosine function value corresponding to 1/4 of the number stored in advance in the memory module 120 into Equation 1, and outputs the sine function value corresponding to the remaining 3/4 May be configured to calculate a cosine function value.

Figure 112012012434135-pat00002
Figure 112012012434135-pat00002

여기서, r은 광학 장비의 회전 반지름이고, θ는 회전각이다.Where r is the radius of rotation of the optical equipment and [theta] is the angle of rotation.

출력 모듈(140)은 FPGA 연산 모듈(120)에서 변환된 직교 좌표계 값을 출력하도록 구성될 수 있다.The output module 140 may be configured to output the transformed Cartesian coordinate system value from the FPGA operation module 120.

도 3은 본 발명의 회전 각도 측정에 따른 펄스 출력을 나타내는 그래프이다.3 is a graph showing the pulse output according to the rotation angle measurement of the present invention.

도 3을 참조하면, 회전 센서 모듈(110)에서 출력하는 펄스를 예시하고 있다. 이때, 회전 속도가 빨라지면 소정 시간 당 출력되는 엔코더 출력 신호 펄스 수도 증가하도록 구성됨을 알 수 있다.Referring to FIG. 3, a pulse output from the rotation sensor module 110 is illustrated. At this time, it is understood that the number of encoder output signal pulses output per predetermined time increases as the rotation speed increases.

도 4는 본 발명의 일 실시예에 따른 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법의 흐름도이다.4 is a flowchart of a fast trigonometric function calculation method using a trigonometric function table according to an embodiment of the present invention.

도 4를 참조하면, 회전 센서 모듈(110)이 광학 장비의 회전 각도를 측정하여 펄스 형태로 출력한다(S110).Referring to FIG. 4, the rotation sensor module 110 measures the rotation angle of the optical equipment and outputs the rotation angle in a pulse form (S110).

다음으로, FPGA 연산 모듈(130)이 회전 센서 모듈(110)에서 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 메모리 모듈(120)의 삼각함수 테이블로부터 독출하여 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환한다(S120). 여기서, FPGA 연산 모듈(130)은 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수에 해당하는 사인 함수값과 코사인 함수값을 독출하도록 구성될 수 있다. 그리고 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수 외에 나머지 3/4 개수에 해당하는 사인 함수값과 코사인 함수값을 수학식 2에 따라 산출하도록 구성된다.Next, the FPGA calculation module 130 reads the sine function value and the cosine function value corresponding to the rotation angle output from the rotation sensor module 110 from the trigonometric function table of the memory module 120, Into a rectangular coordinate system value (S120). Here, the FPGA operation module 130 may be configured to read sine function values and cosine function values corresponding to 1/4 of the number of pulses outputted by one rotation of the optical equipment. Then, the sine function value and the cosine function value corresponding to the number of the remaining 1/3 of the number of pulses outputted by one rotation of the optical equipment are calculated in accordance with Equation (2).

Figure 112012012434135-pat00003
Figure 112012012434135-pat00003

여기서, r은 광학 장비의 회전 반지름이고, θ는 회전각이다.Where r is the radius of rotation of the optical equipment and [theta] is the angle of rotation.

다음으로, 출력 모듈(140)이 FPGA 연산 모듈(130)에서 변환된 직교 좌표계 값을 출력한다(S130).Next, the output module 140 outputs the orthogonal coordinate system value converted by the FPGA operation module 130 (S130).

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention as defined in the following claims There will be.

Claims (3)

광학 장비의 회전 각도를 측정하여 펄스 형태로 출력하는 단계;
상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 삼각함수 테이블로부터 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계;
상기 변환된 직교 좌표계 값을 출력하는 단계를 포함하고,
상기 출력된 회전 각도에 해당하는 사인 함수값과 코사인 함수값을 독출하여 상기 회전 각도의 극 좌표계 값을 직교 좌표계 값으로 변환하는 단계는,
상기 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수에 해당하는 사인 함수값과 코사인 함수값을 독출하고, 상기 광학 장비가 1 회전하여 출력되는 펄스 수의 1/4 개수 외에 나머지 3/4 개수에 해당하는 사인 함수값과 코사인 함수값을 하기 수학식에 따라 산출하고,
[수학식]
Figure 112014048587595-pat00004
인 것을 특징으로 하는 삼각함수 테이블을 이용하는 고속 삼각함수 연산 방법.
Measuring the rotation angle of the optical equipment and outputting the measured rotation angle in a pulse form;
Reading a sine function value and a cosine function value corresponding to the output rotation angle from the trigonometric function table and converting the polar coordinate value of the rotation angle into a rectangular coordinate system value;
And outputting the converted Cartesian coordinate system value,
The step of reading the sine function value and the cosine function value corresponding to the output rotation angle and converting the polar coordinate value of the rotation angle into the rectangular coordinate system value,
Wherein the optical equipment reads a sine function value and a cosine function value corresponding to 1/4 of the number of pulses outputted by one rotation of the optical equipment, A sine function value and a cosine function value corresponding to four numbers are calculated according to the following equation,
[Mathematical Expression]
Figure 112014048587595-pat00004
Wherein the step of calculating the fast trigonometric function using the trigonometric function table is performed.
삭제delete 삭제delete
KR1020120015706A 2012-02-16 2012-02-16 High speed trigonometric calculating method using trigonometric function table KR101455086B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120015706A KR101455086B1 (en) 2012-02-16 2012-02-16 High speed trigonometric calculating method using trigonometric function table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120015706A KR101455086B1 (en) 2012-02-16 2012-02-16 High speed trigonometric calculating method using trigonometric function table

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR20120015679A Division KR101509499B1 (en) 2012-02-16 2012-02-16 High speed trigonometric calculating apparatus using field programmable gate array

Publications (2)

Publication Number Publication Date
KR20130094453A KR20130094453A (en) 2013-08-26
KR101455086B1 true KR101455086B1 (en) 2014-10-28

Family

ID=49218221

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120015706A KR101455086B1 (en) 2012-02-16 2012-02-16 High speed trigonometric calculating method using trigonometric function table

Country Status (1)

Country Link
KR (1) KR101455086B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990085924A (en) * 1998-05-22 1999-12-15 윤종용 Trigonometric function generator and method
KR20020059029A (en) * 2000-12-30 2002-07-12 박태진 Apparatus for measuring absolute angle and method thereof
KR20050102751A (en) * 2004-04-21 2005-10-27 와우테크 주식회사 System for measuring coordinates using light
KR20050103715A (en) * 2004-04-27 2005-11-01 와우테크 주식회사 System for measuring coordinates using light

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990085924A (en) * 1998-05-22 1999-12-15 윤종용 Trigonometric function generator and method
KR20020059029A (en) * 2000-12-30 2002-07-12 박태진 Apparatus for measuring absolute angle and method thereof
KR20050102751A (en) * 2004-04-21 2005-10-27 와우테크 주식회사 System for measuring coordinates using light
KR20050103715A (en) * 2004-04-27 2005-11-01 와우테크 주식회사 System for measuring coordinates using light

Also Published As

Publication number Publication date
KR20130094453A (en) 2013-08-26

Similar Documents

Publication Publication Date Title
CN109959400B (en) Method and device for calculating absolute encoder parameters and terminal equipment
CN110111384B (en) Calibration method, device and system of TOF (time of flight) depth module
US9692341B2 (en) Apparatus for detecting speed of motor
JP2017517746A (en) Measurement method of vibration displacement using state variation principle
CN102879032A (en) Dynamic angle measurement accuracy measuring device
CN106645780B (en) DSP-based rotating speed detection method and system
US20180188282A1 (en) Method and device for measuring speed of permanent magnet synchronous motor
US9140581B2 (en) Position detector
US10371548B2 (en) Absolute angle determination
CN102944258A (en) Detection method for subdivision errors of optoelectronic signals of high-precision encoder
CN102706310A (en) Cantilever crane angle detecting method, device and pump truck with device
KR101455086B1 (en) High speed trigonometric calculating method using trigonometric function table
KR101509499B1 (en) High speed trigonometric calculating apparatus using field programmable gate array
CN111630772B (en) Servo system mechanical parameter identification method, servo control system and storage device
CN116399374B (en) MEMS gyroscope sensor compensation method, device, terminal and storage medium
CN110133316B (en) Precise speed measurement system and method for photoelectric encoder
CN108759644B (en) Moving distance detection method and device and storage medium
CN108427345B (en) Load equipment control method, device and system based on square wave pulse signal
EP3211380B1 (en) Rotation detection device
RU2602674C1 (en) Device for calculating functions
RU154196U1 (en) ANGULAR SPEED SENSOR ON THE BASIS OF MICROMECHANICAL GYROSCOPES
RU68684U1 (en) NAVIGATION INSTRUMENT
CN103733026B (en) For analyzing the method and speed sensor unit of the output signal of processing speed sensor unit
CN113533769B (en) Motor speed measuring method and device, computer equipment and storage medium
US11221241B2 (en) Measurement processing device, measurement processing method, and program

Legal Events

Date Code Title Description
A107 Divisional application of patent
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: 20170928

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181001

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191001

Year of fee payment: 6