KR101743795B1 - Curve interpolation method in positioning control system - Google Patents

Curve interpolation method in positioning control system Download PDF

Info

Publication number
KR101743795B1
KR101743795B1 KR1020130083250A KR20130083250A KR101743795B1 KR 101743795 B1 KR101743795 B1 KR 101743795B1 KR 1020130083250 A KR1020130083250 A KR 1020130083250A KR 20130083250 A KR20130083250 A KR 20130083250A KR 101743795 B1 KR101743795 B1 KR 101743795B1
Authority
KR
South Korea
Prior art keywords
sample
parameter
curve
determining
radius
Prior art date
Application number
KR1020130083250A
Other languages
Korean (ko)
Other versions
KR20150009149A (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 KR1020130083250A priority Critical patent/KR101743795B1/en
Publication of KR20150009149A publication Critical patent/KR20150009149A/en
Application granted granted Critical
Publication of KR101743795B1 publication Critical patent/KR101743795B1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34141B-spline, NURBS non uniform rational b-spline

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)

Abstract

위치제어 시스템에서 곡선보간 방법이 개시된다. 본 발명의 곡선보간 방법은, 곡선상 현재 샘플과 이전 샘플의 매개변수 증가량 만큼 더 증가시킨 매개변수를 이용해 제1임시 샘플을 선정하고, 상기 현재 샘플, 이전 샘플 및 제1임시 샘플을 지나는 원의 반지름을 구하여, 상기 원의 반지름을 이용하여 최대 허용오차를 만족하는 이동량을 구하고, 상기 이동량을 만족하는 매개변수를 결정하고, 상기 매개변수에 따라 다음 샘플의 위치를 결정한다.A method of curve interpolation in a position control system is disclosed. The curve interpolation method of the present invention comprises the steps of: selecting a first temporal sample using a parameter that is further increased by a parameter increment of a cur- rent current sample and a previous sample; and determining a second temporal sample of the circle passing through the current sample, Determining a radius of the circle, determining a radius of curvature that satisfies the maximum tolerance using the radius of the circle, determining a parameter that satisfies the radius, and determining the position of the next sample according to the parameter.

Description

위치제어 시스템에서 곡선보간 방법{CURVE INTERPOLATION METHOD IN POSITIONING CONTROL SYSTEM}[0001] CURVE INTERPOLATION METHOD IN POSITIONING CONTROL SYSTEM [0002]

본 발명은 곡선보간에 관한 것으로서, 보다 상세하게는 프로그램가능 로직 제어기(Programmable Logic Controller; PLC)의 위치결정모듈 등 위치제어 시스템에서 사용되는 곡선보간 방법에 관한 것이다.
The present invention relates to curve interpolation, and more particularly, to a curve interpolation method used in a position control system such as a positioning module of a programmable logic controller (PLC).

PLC의 위치결정모듈은 위치결정 좌표와 필요한 설정값을 이용해 모터 드라이버에 이동량과 이동속도를 전달한다. 특히, 운동방향이 직교하는 두개의 모터를 사용한 2차원 위치결정을 통해 이동체의 평면운동을 가능하게 한다. The positioning module of the PLC transmits the movement amount and the moving speed to the motor driver by using the positioning coordinates and necessary setting values. Particularly, it enables the plane motion of the moving body through two-dimensional positioning using two motors having orthogonal motion directions.

이러한 2차원 위치결정에서는 '보간'을 이용하는데, 이때, 보간이란 이동방향이 다른 두 개 이상의 모터를 이용하여 2차원 이상의 공간을 각 모터가 이동하도록 이동거리와 이동속도를 제어하는 것을 말한다.In this two-dimensional positioning, 'interpolation' is used. In this case, interpolation means controlling the moving distance and the moving speed so that each motor moves in two or more dimensions using two or more motors having different moving directions.

2차원 보간에는 임의의 직선을 따라 이동하는 직선보간과, 원호를 따라 이동하는 원호보간이 있다. 직선이나 원호가 아닌 임의의 곡선을 따라 위치결정을 하기 위해서는 전체 경로를 직선이나 원호의 집합으로 정의하고 그 정보에 따라 동작하도록 한다. 그러나 이 방식은 많은 데이터가 요구되므로, 메모리가 제한된 PLC 구조에서는 구현에 한계가 있다.
Two-dimensional interpolation includes linear interpolation moving along an arbitrary straight line and circular interpolation moving along an arc. In order to position along a certain curved line other than a straight line or an arc, the entire path is defined as a set of straight lines or arcs, and it is operated according to the information. However, since this method requires a lot of data, implementation is limited in a PLC structure having a limited memory.

도 1은 일반적인 PLC 위치결정모듈에서 보간장치의 구성을 설명하기 위한 구성도이다. 도면에 도시된 바와 같이, 일반적인 PLC 위치결정모듈의 보간장치는, PLC 위치결정모듈(1)에서 Y축 운전지령을 드라이버(2a)에 전송하고, X축 운전지령을 드라이버(2b)에 전송하면, 각 드라이버(2a, 2b)는 Y축 모터(3a) 및 X축 모터(3b)를 운전지령에 따라 제어하여, 위치결정 대상(도시되지 않음)의 위치를 결정하는 것이다. 1 is a block diagram illustrating a configuration of an interpolator in a general PLC positioning module. As shown in the figure, the interpolation device of the general PLC positioning module transmits the Y-axis operation command to the driver 2a in the PLC positioning module 1 and transmits the X-axis operation command to the driver 2b , And the drivers 2a and 2b control the Y-axis motor 3a and the X-axis motor 3b in accordance with an operation command to determine the position of a positioning object (not shown).

도 2는 도 1의 보간장치가 수행하는 보간의 종류를 설명하기 위한 예시도이다. 위에서 설명한 바와 같이, 도 1의 보간장치가 수행하는 보간은, 직선보간(A), 원호보간(B) 및 곡선보간(C)을 포함한다. FIG. 2 is an exemplary diagram for explaining the kind of interpolation performed by the interpolator of FIG. 1. FIG. As described above, the interpolation performed by the interpolator of Fig. 1 includes linear interpolation A, circular interpolation B, and curve interpolation C.

직선이나 원호는 몇가지 보간정보(속도, 위치, 원호 기준점 삽입위치 등)를 이용한 계산값을 각 축의 운전지령 정보로 사용하여 간단하게 보간할 수 있다. 그러나, 임의의 곡선을 보간하기 위해서는, 속도 프로파일에 맞게 임의의 곡선을 작은 직선의 집합으로 정의하고, 정의한 직선데이터는 PLC 메모리(도시되지 않음)에 저장하고, 메모리에 저장한 데이터를 이용해 보간할 축에 대해 운전지령을 출력한다. 도 3은 종래의 곡선보간방식을 설명하기 위한 예시도이다. A straight line or an arc can be interpolated simply by using a calculation value using some interpolation information (speed, position, circular reference point insertion position, etc.) as operation command information of each axis. However, in order to interpolate an arbitrary curve, an arbitrary curve is defined as a set of small straight lines corresponding to the velocity profile, and the defined linear data is stored in the PLC memory (not shown) and interpolated using the data stored in the memory Outputs the run command to the axis. 3 is an exemplary diagram for explaining a conventional curve interpolation method.

그러나, 이와 같은 방식은 곡선을 정의하는 무수히 많은 직선을 저장하기 위한 메모리가 필요한 문제점이 있으며, 오차를 줄이기 위해 세밀한 곡선으로 분할할 수록 데이터량이 많아지므로 정밀한 보간에는 제약이 많아지는 문제점이 있다.
However, such a method has a problem that a memory for storing a large number of straight lines defining a curve is required. In order to reduce the error, there is a problem in that there is an increase in the amount of data as the detailed curve is divided.

따라서, 임의의 곡선을 NURBS(Non-uniform rational B-spline) 곡선으로 정의하고, NURBS 곡선 파라미터 정보에 따라 곡선 보간을 수행하는 방식이 제안되었다. NURBS 곡선은 이러한 PLC의 제한된 메모리에서 전체경로의 저장 없이 곡선보간을 가능하게 하는 것으로서, n개의 조절점과 각 조절점에 대응하는 n개의 가중치 및 매개변수와 곡선의 관계를 조절할 수 있는 매듭벡터를 이용하여, 샘플링마다 파라미터 연산으로 다음 샘플링에서 이동할 위치를 구하는 방식이다. 도 4는 NURBS 곡선을 설명하기 위한 예시도로서, 6개의 조정점과 그에 대응하는 가중치로 정의한 것이다. Therefore, a method has been proposed in which an arbitrary curve is defined as a non-uniform rational B-spline (NURBS) curve and curve interpolation is performed according to the NURBS curve parameter information. The NURBS curve enables curved interpolation in the limited memory of these PLCs, without storing the entire path, with n control points, n weights corresponding to each control point, and a knot vector that can control the relationship between the parameters and curves And a position to be moved in the next sampling is obtained by a parameter operation for each sampling. 4 is an exemplary diagram for explaining a NURBS curve, which is defined by six adjustment points and corresponding weight values.

NURBS 곡선은 매개변수의 변화에 따라 곡선을 형성하는데, 매개변수의 변화량과 곡선의 이동량이 일정하지 않아 이를 제어할 필요가 있다. 즉, 곡선상의 원하는 이동량을 만족하는 매개변수를 찾을 필요가 있다. The NURBS curve forms a curve according to the change of the parameter. It is necessary to control the change of the parameter and the movement amount of the curve because it is not constant. That is, it is necessary to find a parameter satisfying the desired movement amount on the curve.

또한, 일정한 속도로 이동하면 곡선의 곡률(곡선의 휘어진 정도)에 따라 오차가 발생하게 되므로, 이러한 오차를 제한하는 방식이 개시되어 있다. 종래에는, NURBS 곡선의 1차 미분과 2차 미분을 이용하여 곡률을 계산하고, 계산된 곡률을 이용해 최대 허용오차를 제한하였다. In addition, when moving at a constant speed, an error occurs depending on the curvature of the curve (degree of curvature of the curve), and thus a method of limiting such an error is disclosed. In the past, curvature was calculated using the first order differential and the second order differential of the NURBS curve, and the maximum allowable error was limited using the calculated curvature.

그러나, 이러한 방식은 NURBS 곡선의 1차 미분과 2차 미분을 구하기 위해 NURBS 곡선 샘플을 여러 번 구해야 하므로, 연산량이 많아지는 문제점이 있다. 또한, 곡선이 복잡해짐에 따라 조정점이 증가하여, 수식의 연산량이 동시에 늘어나게 되므로, 시스템이 불안정해지는 문제점이 있다.
However, this method has a problem in that the NURBS curve samples need to be obtained several times in order to obtain the first derivative and the second derivative of the NURBS curve, which increases the computational complexity. Further, as the curve becomes complicated, the adjustment points increase and the calculation amount of the expression increases at the same time, so that the system becomes unstable.

본 발명이 해결하고자 하는 기술적 과제는, 도형의 기하학적 성질과 근사화한 삼각함수 계산을 이용하여 연산량을 줄이고, 최대 허용오차를 효율적으로 제한하는 위치제어 시스템에서 곡선보간 방법을 제공하는 것이다. An object of the present invention is to provide a curve interpolation method in a position control system that reduces computation volume and efficiently limits a maximum tolerance by using a trigonometric function approximation to a geometric property of a graphic object.

본 발명이 해결하고자 하는 다른 기술적 과제는, 곡선의 복잡도에 따라 조정점이 증가하여도 시스템의 안정성을 확보하는 위치제어 시스템에서 곡선보간 방법을 제공하는 것이다.
Another object of the present invention is to provide a curve interpolation method in a position control system that ensures stability of the system even when the adjustment point increases according to the complexity of the curve.

상기와 같은 기술적 과제를 해결하기 위해, 본 발명의 곡선보간 방법은, 곡선상 현재 샘플과 이전 샘플의 매개변수 증가량 만큼 더 증가시킨 매개변수를 이용해 제1임시 샘플을 선정하는 단계; 상기 현재 샘플, 이전 샘플 및 제1임시 샘플을 지나는 원의 반지름을 구하는 단계; 상기 원의 반지름을 이용하여 최대 허용오차를 만족하는 이동량을 구하는 단계; 상기 이동량을 만족하는 매개변수를 결정하는 단계; 및 상기 매개변수에 따라 다음 샘플의 위치를 결정하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a curve interpolation method comprising: selecting a first temporary sample using a parameter that is further increased by a parameter increase amount of a current sample on a curve and a previous sample; Obtaining a radius of a circle passing through the current sample, the previous sample, and the first temporary sample; Obtaining a movement amount satisfying a maximum allowable error by using the radius of the circle; Determining a parameter that satisfies the movement amount; And determining the position of the next sample according to the parameter.

본 발명의 일실시예에서, 상기 원의 반지름을 구하는 단계는, 상기 현재 샘플과 이전 샘플을 잇는 제1선분, 상기 현재 샘플과 상기 제1임시 샘플을 잇는 제2선분 및 상기 이전 샘플과 상기 제1임시 샘플을 잇는 제3선분을 구하는 단계; 상기 현재 샘플로부터 상기 제3선분까지의 직교거리를 구하는 단계; 상기 제3선분의 길이와 상기 직교거리로부터 상기 제2선분과 상기 제3선분의 사이각을 구하는 단계; 및 상기 사이각과 상기 제1선분의 길이를 이용하여 상기 원의 반지름을 결정하는 단계를 포함할 수 있다.In one embodiment of the present invention, the step of obtaining the radius of the circle includes a first segment connecting the current sample and the previous sample, a second segment connecting the current sample and the first temporary sample, Obtaining a third line segment connecting one temporary sample; Obtaining an orthogonal distance from the current sample to the third line segment; Obtaining an angle between the second line segment and the third line segment from the length of the third line segment and the orthogonal distance; And determining the radius of the circle using the angle and the length of the first line segment.

본 발명의 일실시예에서, 상기 사이각을 구하는 단계는, 상기 직교거리를 상기 제3선분의 길이로 나눈 값의 arctan를 근사화한 값일 수 있다.In one embodiment of the present invention, the step of obtaining the angle may be a value obtained by approximating arctan of a value obtained by dividing the orthogonal distance by the length of the third line segment.

본 발명의 일실시예에서, 상기 arctan를 근사화한 값은, 다음의 수학식에서 … 이하의 항을 무시하고 연산하여 구할 수 있다. In one embodiment of the present invention, a value obtained by approximating the arctan is expressed by the following equation: Can be calculated by ignoring the following terms.

Figure 112013063763249-pat00001
Figure 112013063763249-pat00001

단, x는 상기 직교거리를 상기 제3선분의 길이로 나눈 값이다. Here, x is a value obtained by dividing the orthogonal distance by the length of the third line segment.

본 발명의 일실시예에서, 상기 이동량은, 다음의 수학식에 의해 결정될 수 있다. In one embodiment of the present invention, the amount of movement can be determined by the following equation.

Figure 112013063763249-pat00002
Figure 112013063763249-pat00002

단, M은 이동량, R은 원의 반지름, δmax는 최대 허용오차이다. Where M is the amount of movement, R is the radius of the circle, and δ max is the maximum permissible error.

본 발명의 일실시예에서, 상기 매개변수는, 다음의 수학식에 의해 결정될 수 있다. In one embodiment of the present invention, the parameter can be determined by the following equation.

Figure 112013063763249-pat00003
Figure 112013063763249-pat00003

단, un +1은 다음 샘플의 매개변수이고, un은 현재 샘플의 매개변수, M은 이동량, P(n)은 현재 샘플의 위치, P(n-1)은 이전 샘플의 위치이다. Where u n +1 is the parameter of the next sample, u n is the parameter of the current sample, M is the displacement, P (n) is the position of the current sample, and P (n-1) is the position of the previous sample.

본 발명의 일실시예에서, 매듭벡터의 최소값을 매개변수로 결정하여 제1샘플의 위치를 결정하는 단계를 더 포함할 수 있다.In one embodiment of the present invention, determining the position of the first sample by determining the minimum value of the knot vector as a parameter may further comprise determining the position of the first sample.

본 발명의 일실시예에서, 상기 제1샘플을 참조로, 제2 및 제3임시 샘플을 선정하고, 이를 이용하여 제2샘플의 위치를 결정하는 단계를 더 포함할 수 있다. In an embodiment of the present invention, referring to the first sample, the second and third temporal samples may be selected and used to determine the position of the second sample.

본 발명의 일실시예에서, 상기 제2샘플의 위치를 결정하는 단계는, 상기 제1샘플, 상기 제2 및 제3임시 샘플을 지나는 원의 반지름을 구하는 단계; 상기 원의 반지름을 이용하여 최대 허용오차를 만족하는 이동량을 구하는 단계; 상기 이동량을 만족하는 매개변수를 결정하는 단계; 및 상기 매개변수에 따라 상기 제2샘플의 위치를 결정하는 단계를 포함할 수 있다.
In one embodiment of the present invention, the step of determining the position of the second sample comprises the steps of: obtaining a radius of a circle passing through the first sample, the second and third temporary samples; Obtaining a movement amount satisfying a maximum allowable error by using the radius of the circle; Determining a parameter that satisfies the movement amount; And determining a position of the second sample according to the parameter.

상기와 같은 본 발명은, NURBS 곡선의 1차 미분과 2차 미분을 이용한 기존의 이동량 계산을 근사화하고 도형의 기하학적 원리를 이용하여 연산량을 줄이도록 하는 효과가 있다.The present invention as described above has an effect of approximating the existing movement amount calculation using the first order differential and the second order differential of the NURBS curve and reducing the calculation amount using the geometric principle of the figure.

따라서, 본 발명은 연산량이 줄어들게 되어 샘플링 주기를 짧게 할 수 있고, 짧은 샘플링 주기로 곡선보간을 수행할 수 있으므로, PLC의 위치결정모듈에서 더욱 정밀한 곡선보간 제어를 가능하게 하는 효과가 있다.
Therefore, according to the present invention, the calculation amount can be reduced, the sampling period can be shortened, and the curve interpolation can be performed at a short sampling period. Therefore, more precise curve interpolation control can be performed in the PLC positioning module.

도 1은 일반적인 PLC 위치결정모듈에서 보간장치의 구성을 설명하기 위한 구성도이다.
도 2는 도 1의 보간장치가 수행하는 보간의 종류를 설명하기 위한 예시도이다.
도 3은 종래의 곡선보간방식을 설명하기 위한 예시도이다.
도 4는 NURBS 곡선을 설명하기 위한 예시도이다.
도 5는 본 발명의 일실시예에 따른 곡선보간 장치의 구성도이다.
도 6a는 종래 NURBS 곡선의 일예시도이다.
도 6b는 도 6a의 샘플당 오차를 나타내는 일예시도이다.
도 7은 도 5의 오차제한부가 매개변수를 구하는 방식을 설명하기 위한 일예시도이다.
도 8a은 도 5의 오차제한부에 의해 보간된 NURBS 곡선의 일예시도이다.
도 8b는 도 8a의 샘플당 오차를 나타내는 일예시도이다.
도 9는 본 발명의 일실시예에 따른 곡선보간 방법을 설명하기 위한 흐름도이다.
1 is a block diagram illustrating a configuration of an interpolator in a general PLC positioning module.
FIG. 2 is an exemplary diagram for explaining the kind of interpolation performed by the interpolator of FIG. 1. FIG.
3 is an exemplary diagram for explaining a conventional curve interpolation method.
4 is an exemplary diagram for explaining a NURBS curve.
5 is a block diagram of a curve interpolator according to an embodiment of the present invention.
6A is an example of a conventional NURBS curve.
FIG. 6B is an example showing an error per sample of FIG. 6A.
FIG. 7 is an exemplary view for explaining a method of obtaining an error restricting part parameter of FIG. 5;
FIG. 8A is an example of a NURBS curve interpolated by the error limiting unit of FIG. 5; FIG.
Fig. 8B is an example showing an error per sample of Fig. 8A.
9 is a flowchart for explaining a curve interpolation method 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. 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.

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

본 발명은 도 1과 같은 PLC 위치결정모듈(1)에 제공되는 것이다. PLC 위치결정모듈(1)에서 본 발명의 곡선보간 장치 이외의 일반적인 구성에 대해서는, 이미 널리 알려진 바와 같으므로, 그 상세한 설명은 생략하기로 한다.The present invention is provided in the PLC positioning module 1 as shown in Fig. The general configuration of the PLC positioning module 1 other than the curved interpolating device of the present invention is the same as that already well known, and thus a detailed description thereof will be omitted.

도 5는 본 발명의 일실시예에 따른 곡선보간 장치의 구성도이다.5 is a block diagram of a curve interpolator according to an embodiment of the present invention.

도면에 도시된 바와 같이, 본 발명의 일실시예의 곡선보간 장치는, 제1샘플 생성부(10) 및 NURBS 곡선 생성부(20)를 포함한다.As shown in the figure, the curve interpolator of one embodiment of the present invention includes a first sample generator 10 and a NURBS curve generator 20.

본 발명의 곡선보간 장치는, 임의의 곡선을 NURBS 곡선 P(u)로 정의하기 위해, n개의 조정점과 이에 1:1 대응하는 n개의 가중치(w), 곡선의 차수(k) 및 곡선의 이동량을 조절할 수 있는 (2k+n-2)개의 매듭벡터(knut vector, r)를 사용한다. P(u)=[x(u), y(u)]이며, x와 y는 각각 좌표평면의 x축과 y축을 나타낸다. NURBS 곡선 P(u)는 다음 수학식 1과 같이 정의된다.The curved interpolation apparatus of the present invention is characterized in that, in order to define an arbitrary curve as a NURBS curve P (u), n adjustment points and n weight values (w) corresponding thereto by 1: 1, (2k + n-2) knot vectors (r) that can control the amount of movement. P (u) = [x (u), y (u)], where x and y represent the x and y axes of the coordinate plane, respectively. The NURBS curve P (u) is defined by the following equation (1).

Figure 112013063763249-pat00004
Figure 112013063763249-pat00004

C는 조정점의 위치로서

Figure 112013063763249-pat00005
으로 정의되며, u는 곡선을 형성하는 매개변수이다. 매개변수 u의 범위는 매듭백터 r의 최소값부터 최대값까지이며, u가 r의 최소값인 경우 조정점의 시작점이 되고, u가 r의 최대값인 경우 조정점의 종료점이 된다. 또한, N은 NURBS 곡선의 기저함수로서, 다음 수학식 2과 같이 정의된다.C is the position of the adjustment point
Figure 112013063763249-pat00005
And u is a parameter forming a curve. The range of the parameter u is from the minimum value to the maximum value of the knot vector r, which is the starting point of the adjustment point if u is the minimum value of r and the end point of the adjustment point if u is the maximum value of r. Also, N is a basis function of the NURBS curve and is defined by the following equation (2).

Figure 112013063763249-pat00006
Figure 112013063763249-pat00006

Figure 112013063763249-pat00007
Figure 112013063763249-pat00007

즉, 기저함수는 곡선의 차수 k만큼 반복하여 계산한다. That is, the basis function is repeatedly calculated by the degree k of the curve.

도 6a는 종래 NURBS 곡선의 일예시도로서, 조정점이 C={(0, 0), (7500, 5000), (11000, 13000), (17000, 11000), (15000, 0), (23000, 3000), (25000, 15000)인 경우에, 가중치 w={1, 1, 1, 1, 1, 1, 1}이고, 매듭벡터가 r=(0, 0, 0, 1, 2, 3, 4, 5, 6, 6, 6}인 경우를 나타낸 것이다.6A is an example of a conventional NURBS curve in which an adjustment point C = {(0, 0), (7500, 5000), (11000, 13000), (17000, 11000) 1, 1, 1, 1, 1}, and the knot vector is r = (0, 0, 0, 1, 2, 3, 4, 5, 6, 6, 6}.

도면에 도시된 바와 같이 NURBS 곡선은 조정점의 시작점과 종료점을 지나며, 나머지 조정점에 대해서는 근접했다가 다음의 조정점으로 이동한다. 가중치는 각 조정점을 잡아당기는 정도를 나타내며, 도 6a에서는 매개변수 u을 매듭벡터의 최소값과 최대값을 등분할한 경우로, 이때 이동량이 일정하지 않음을 알 수 있다. As shown in the drawing, the NURBS curve passes through the start point and the end point of the adjustment point and approaches the remaining adjustment points and then moves to the next adjustment point. 6A shows a case in which the parameter u is equally divided into the minimum value and the maximum value of the knot vector, and the movement amount is not constant at this time.

곡선보간은 여러 개의 작은 직선의 집합으로 재정의되는데, 곡선을 직선으로 표현하면 직선의 길이에 따라 오차가 발생한다. 도 6b는 도 6a의 샘플당 오차를 나타내는 일예시도이다. 도면에 도시된 바와 같이, 매개변수를 균일하게 증가시키는 경우에는 이동량을 제어할 수 없어 곡률이 큰 구간에서 오차가 커진다.
Curve interpolation is redefined as a set of several small straight lines. When a curve is expressed as a straight line, an error occurs depending on the length of the straight line. FIG. 6B is an example showing an error per sample of FIG. 6A. As shown in the figure, when the parameters are uniformly increased, the amount of movement can not be controlled and the error increases in a section with a large curvature.

즉, 곡선의 모든 부분을 같은 간격으로 나누어 보간하면 곡률이 큰 구간에서 오차가 크다. 곡률을 구해 곡률에 따른 이동량을 구하는 방식은 개시되어 있으나, 곡률을 구하기 위해 NURBS 곡선을 2차 미분하여야 하므로, 최소 3번의 NURBS 곡선 수식을 연산하여야 하는 문제점은 이미 설명한 바와 같다. In other words, if all the parts of the curve are divided by the same interval and interpolated, the error is large in a section with a large curvature. Although the method of obtaining the curvature and the movement amount according to the curvature has been disclosed, the NURBS curve must be second-differentiated in order to obtain the curvature. Thus, the problem of calculating at least three NURBS curve expressions has already been described.

따라서, NURBS 곡선을 이용하여 곡선보간을 하기 위해서는 원하는 오차를 만족하는 이동량을 구할 수 있어야 한다. 이에 따라, 본 발명의 곡선보간 장치는, 제1샘플 생성부(10)가 NURBS 곡선의 첫번째 샘플을 생성하고, NURBS 곡선 생성부(20)가 이전 두 샘플과 같은 간격을 유지하는 임시 샘플을 1개 선정하여, 세 포인트를 지나는 원의 반지름을 구하고, 그 반지름을 이용하여 원하는 오차를 만족하는 이동량을 구하는 방식을 제안한다. 단, 두번째 샘플에 대해서는, 임시 샘플을 두 개 선정하고, 세 포인트를 지나는 원의 반지름을 구하고, 그 반지름을 이용하여 원하는 오차를 만족하는 이동량을 구하는 방식을 사용한다. Therefore, in order to perform the curve interpolation using the NURBS curve, the movement amount satisfying the desired error must be obtained. Accordingly, the curve interpolating apparatus of the present invention is configured such that the first sample generator 10 generates the first sample of the NURBS curve, and the NURBS curve generator 20 multiplies the temporary samples maintaining the same interval as the previous two samples by 1 We propose a method to find the radius of a circle passing through three points, and to find the amount of movement satisfying the desired error using the radius. However, for the second sample, two temporary samples are selected, the radius of the circle passing through the three points is obtained, and the amount of movement satisfying the desired error is obtained by using the radius.

즉, 본 발명의 곡선보간 장치는, NURBS 곡선의 곡률이 큰 구간에서는 이동량을 줄여 오차를 줄이고, 상대적으로 곡률이 작은 구간에서는 이동량을 늘려, NURBS 곡선을 보간한다. 다만, 설명의 편의상 제1샘플 생성부(10)와 NURBS 곡선 생성부(20)를 별개의 구성요소로 하여 설명하였으나, 동일한 구성요소에 의해 수행될 수도 있음은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 자명하다 할 것이다.
That is, in the curved interpolation apparatus of the present invention, the error is reduced by reducing the amount of movement in the section where the curvature of the NURBS curve is large, and the amount of movement is increased in the section with a relatively small curvature, thereby interpolating the NURBS curve. It is to be noted that, although the first sample generating unit 10 and the NURBS curve generating unit 20 have been described as separate components for convenience of explanation, they may be performed by the same constituent elements. It will be obvious to those who have knowledge of.

이하에서는, 본 발명의 곡선보간 장치의 동작을 순차적으로 설명하기로 한다. Hereinafter, the operation of the curve interpolating apparatus of the present invention will be described in order.

1. 곡선상의 현재 샘플의 위치(P(n))와 이전 샘플의 위치(P(n-1))를 백업한다.1. Back up the position of the current sample on the curve (P (n)) and the position of the previous sample (P (n-1)).

2. P(n)과 P(n-1)의 매개변수 증가량과 동일한 매개변수 증가량을 가지는, 즉 P(n)과 P(n-1)의 매개변수의 차이와 같은 매개변수의 증가량을 가지는 P(tmp)를 구하여, P(n), P(n-1) 및 P(tmp)를 지나는 원을 가정한다.2. An increase in the number of parameters, such as the difference between the parameters of P (n) and P (n-1) P (tmp) is calculated, and a circle passing through P (n), P (n-1), and P (tmp) is assumed.

도 7은 도 5의 오차제한부가 매개변수를 구하는 방식을 설명하기 위한 일예시도로서, 현재 포인트 P(n)과 이전 샘플링 포인트 P(n-1)을 이용하여 허용오차를 만족하는 위치를 계산하기 위한 매개변수를 구하는 방식을 나타낸 것이다.FIG. 7 is an exemplary diagram for explaining a method for obtaining the error-restricting part parameter in FIG. 5, and calculates a position satisfying the tolerance using the current point P (n) and the previous sampling point P (n-1) And a method for obtaining parameters to be used.

3. P(n)과 P(n-1)을 잇는 선분 L1을 구하고, 같은 방법으로 L2와 d를 정의한다. 3. Find the line L 1 between P (n) and P (n-1) and define L 2 and d in the same way.

4. L1와 d를 이용하여 선분 P(n-1)P(tmp)와의 직교거리인 h를 구한다.4. Using L 1 and d, find the orthogonal distance h to the line segment P (n-1) P (tmp).

5.

Figure 112013063763249-pat00008
의 관계를 이용하여 사이각 θ를 구한다. 일반적으로 arctan는 다음과 같은 테일러 급수전개에 의한 근사식을 이용하여 결정된다.5.
Figure 112013063763249-pat00008
The inter-angle? Is obtained. In general, arctan is determined using an approximate expression by Taylor series expansion as follows.

Figure 112013063763249-pat00009
Figure 112013063763249-pat00009

그러나, 위의 방식은 연산과정이 복잡하므로, 일정값으로 수렴하기 위해 많은 연산이 필요하므로, 본 발명의 NURBS 곡선 생성부(20)는 근사값을 사용한다. However, since the above calculation method is complex, a large number of calculations are required to converge to a constant value. Therefore, the NURBS curve generator 20 of the present invention uses an approximate value.

6. 다음 수학식의 연분수 형태를 이용하여

Figure 112013063763249-pat00010
를 근사화한다. 6. Using the formula of the number of years in the following equation
Figure 112013063763249-pat00010
.

Figure 112013063763249-pat00011
Figure 112013063763249-pat00011

위 수학식 4에서, … 이하의 항을 무시하고 연산하면, 실제 arctan와 근사한 값을 얻을 수 있다. In the above equation (4), ... By ignoring the following terms, you can get an approximation to the actual arctan.

7. 수학식 3과 수학식 4의 근사는, 사이각이 60° 이상인 경우 오차를 가지고 발산하지만, 본 발명에서는 사이각의 최대값을 45도로 제한함으로써 이러한 오차가 발생하지 않는 범위만 사용하도록 할 수 있다.7. The approximation of the equations (3) and (4) differs with an error when the angle of incidence is 60 degrees or more, but in the present invention, the maximum value of the angle of incidence is limited to 45 degrees, .

8. L1을 밑변으로 하고, 원의 중심을 꼭지점으로 하는 이등변 삼각형의 꼭지각은 θ의 두배(2θ)이다. 8. The vertex angle of an isosceles triangle with L1 as the base and the center of the circle as the apex angle is twice (2θ) of θ.

9. P(n-1)과 P(n)을 지나는 원호를

Figure 112013063763249-pat00012
이라고 가정하면, 원의 반지름 R은 다음과 같이 구할 수 있다.9. The arc passing through P (n-1) and P (n)
Figure 112013063763249-pat00012
, The radius R of the circle can be obtained as follows.

Figure 112013063763249-pat00013
Figure 112013063763249-pat00013

10. 원의 반지름 R을 이용하여, 최대 허용오차 δmax를 만족하는 이동량(M)을 구하는 식은 다음과 같다.10. Using the radius R of the circle, find the displacement (M) that satisfies the maximum tolerance δ max .

Figure 112013063763249-pat00014
Figure 112013063763249-pat00014

11. 이후, NURBS 곡선 생성부(20)는 원하는 이동량을 만족하는 매개변수를 다음 식과 같이 구할 수 있다.11. Then, the NURBS curve generation unit 20 can obtain a parameter satisfying the desired movement amount as shown in the following equation.

Figure 112013063763249-pat00015
Figure 112013063763249-pat00015

도 8a는 본 발명의 곡선보간 장치에 의해 생성된 NURBS 곡선의 일예시도이며, 도 8b는 도 8a의 샘플당 오차를 나타내는 일예시도로서, 최대 허용오차가 3인 경우를 예를 들어 나타낸 것이다. 8A is an example of a NURBS curve generated by the curve interpolator of the present invention, FIG. 8B is an example of an error per sample of FIG. 8A, and shows a case where the maximum tolerance is 3 .

도면에 도시된 바와 같이, 본 발명의 곡선보간 장치는 곡률이 큰 구간에서는 이동량을 줄여, 오차를 도 6a(종래의 NURBS 곡선의 오차)에 비해 현저히 줄였음을 알 수 있다.
As shown in the figure, the curved interpolator according to the present invention reduces the amount of movement in a section having a large curvature, and the error is remarkably reduced compared to that of FIG. 6A (error of the conventional NURBS curve).

도 9는 본 발명의 일실시예에 따른 곡선보간 방법을 설명하기 위한 흐름도로서, 도 5의 제1샘플 생성부(10) 및 NURBS 곡선 생성부(20)에 의해 구현되는 것이다. FIG. 9 is a flowchart for explaining a curve interpolation method according to an embodiment of the present invention, which is implemented by the first sample generator 10 and the NURBS curve generator 20 of FIG.

도면에 도시된 바와 같이, 본 발명의 곡선보간 방법은, NURBS 곡선의 첫번째 샘플인 경우(S1), 매개변수 u를 매듭벡터의 최소값으로 결정하고(S2), 결정된 매개변수 u로 수학식 1을 이용하여 첫번째 위치인 P(u)를 결정한다(S3).As shown in the figure, the curve interpolating method of the present invention is a method of determining a minimum value of a knot vector (S2), determining a parameter u as a minimum value of a knot vector (S1) if the first sample of the NURBS curve To determine P (u) which is the first position (S3).

또한, S1의 확인 결과, NURBS 곡선의 첫번째 샘플이 아닌 경우에는, NURBS 곡선의 두번째 샘플인지 확인한다(S4). S4의 확인결과, 두번째 샘플인 경우에는, S3에서 결정된 첫번째 샘플을 참조로, 임시 샘플을 두개 선정하고(S5), 첫번째 샘플과, 임시로 선정한 두개의 샘플을 이용하여 최대 허용오차를 만족하는 매개변수 u를 결정한다(S6). 매개변수 u의 결정은, 위에서 설명한 방식으로 수행된다. 즉, 첫번째 샘플과 임시로 선정한 두개의 샘플의 세 포인트를 지나는 원의 반지름을 구하고, 그 반지름을 이용하여 원하는 오차를 만족하는 이동량을 구하여, 이 이동량을 만족하는 매개변수를 구하는 것이다. 이와 같이 결정된 매개변수 u를 이용하여, 수학식 1에 의해 두번째 곡선상의 위치 P(u)를 결정할 수 있다(S7).If it is determined that S1 is not the first sample of the NURBS curve, it is confirmed that the sample is the second sample of the NURBS curve (S4). As a result of the check in S4, in the case of the second sample, referring to the first sample determined in S3, two temporary samples are selected (S5), and the first sample and the two samples temporarily selected Variable u is determined (S6). The determination of the parameter u is performed in the manner described above. That is, the radius of the circle passing through three points of the first sample and the temporarily selected two samples is obtained, and the amount of movement satisfying the desired error is obtained using the radius to obtain a parameter satisfying the movement amount. Using the thus determined parameter u, the position P (u) on the second curve can be determined by Equation (1) (S7).

S4의 확인결과, 두번째 샘플이 아닌 경우에는(즉, 첫번째 샘플도, 두번째 샘플도 아닌 경우임), 현재 샘플과 이전 샘플을 참조로, 매개변수 증가량과 같은 값을 증가시킨 매개변수를 이용하여, 현재 샘플과 이전 샘플의 거리차와 같은 거리를 가지는 임시 샘플을 선정한다(S8). 이후, 현재 샘플과 이전 샘플 및 임시 샘플을 이용하여 오차를 만족하는 매개변수 u를 결정한다(S9). 즉, 현재 샘플과 이전 샘플 및 임시 샘플의 세 포인트를 지나는 원의 반지름을 구하고, 그 반지름을 이용하여 원하는 오차를 만족하는 이동량을 구하여, 이 이동량을 만족하는 매개변수를 구하는 것이다. 이는 이미 위에서 설명한 바와 같다. As a result of the check in step S4, if it is not the second sample (i.e., the first sample is neither the second sample nor the second sample), a parameter that increases the value of the parameter increase by referring to the current sample and the previous sample, A temporary sample having a distance equal to the difference between the current sample and the previous sample is selected (S8). Then, the parameter u satisfying the error is determined using the current sample, the previous sample, and the temporary sample (S9). That is, the radius of a circle passing through the three points of the current sample, the previous sample, and the temporary sample is found, and the amount of movement satisfying the desired error is obtained by using the radius to obtain a parameter satisfying the movement amount. This is already described above.

이와 같이 결정된 매개변수 u를 이용하여, 수학식 1에 의해 다음 샘플인 P(u)를 결정할 수 있다(S10).Using the thus determined parameter u, the next sample P (u) can be determined by Equation (1) (S10).

이와 같은 동작을 매개변수 u가 매듭벡터의 최대값보다 커질 때까지 반복하고(S11), u가 매듭벡터의 최대값보다 커지는 경우의 매개변수 u를 결정하면(S12), 이 점이 조정점의 종료점이 된다(S13).This operation is repeated until the parameter u becomes larger than the maximum value of the knot vector (S11). If the parameter u when u is larger than the maximum value of the knot vector is determined (S12) (S13).

이와 같이 NURBS 곡선을 구할 수 있다. Thus, a NURBS curve can be obtained.

본 발명은 샘플링마다 최대 허용오차를 만족하는 이동량을 계산하고, 그에 따른 매개변수를 구해 다음 샘플링에서 이동할 NURBS 곡선 포인트의 좌표를 구하는 것이다. 본 발명은 NURBS 곡선의 1차 미분과 2차 미분을 이용한 기존의 이동량 계산을 근사화하고 도형의 기하학적 원리를 이용하여 연산량을 줄일 수 있다.The present invention calculates the amount of movement satisfying the maximum tolerance for each sampling, and obtains a parameter corresponding thereto to obtain the coordinates of the NURBS curve point to be moved in the next sampling. The present invention can approximate the existing movement amount calculation using the first order differential and the second order differential of the NURBS curve and reduce the calculation amount by using the geometric principle of the figure.

즉, 종래에는 이동량을 구하기 위하여 NURBS 곡선의 임시 포인트를 2개 구하는 방식이었으나, 본 발명에 의하면 NURBS 곡선의 임시 포인트를 1개 구하는 것에 의해 보간이 가능하므로, 종래 방식에 비해 절반 정도의 연산으로 이동량을 계산할 수 있다.According to the present invention, interpolation can be performed by obtaining one temporary point of the NURBS curve. Therefore, according to the present invention, since the interpolation is possible by using one-half of the NURBS curve, Can be calculated.

따라서, 본 발명은 연산량이 줄어들게 되어 샘플링 주기를 짧게 할 수 있고, 짧은 샘플링 주기로 곡선보간을 수행할 수 있으므로, PLC의 위치결정모듈에서 더욱 정밀한 곡선보간 제어를 가능하게 한다.Therefore, according to the present invention, the calculation amount can be reduced, the sampling period can be shortened, and the curve interpolation can be performed with a short sampling period, thereby enabling more precise curve interpolation control in the PLC positioning module.

이상에서 본 발명에 따른 실시예들이 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention as defined by the appended claims. Accordingly, the true scope of the present invention should be determined by the following claims.

1: PLC 위치결정모듈 2: 드라이버
3: 모터
1: PLC positioning module 2: Driver
3: Motor

Claims (9)

곡선상 현재 샘플과 이전 샘플의 매개변수 증가량 만큼 더 증가시킨 매개변수를 이용해 제1임시 샘플을 선정하는 단계
상기 현재 샘플, 이전 샘플 및 제1임시 샘플을 지나는 원의 반지름을 구하는 단계;
상기 원의 반지름을 이용하여 최대 허용오차를 만족하는 이동량을 구하는 단계;
상기 이동량을 만족하는 매개변수를 결정하는 단계; 및
상기 매개변수에 따라 다음 샘플의 위치를 결정하는 단계를 포함하는 곡선보간 방법.
Selecting a first temporary sample using a parameter that is further increased by a parameter increment of the current sample on the curve and the previous sample
Obtaining a radius of a circle passing through the current sample, the previous sample, and the first temporary sample;
Obtaining a movement amount satisfying a maximum allowable error by using the radius of the circle;
Determining a parameter that satisfies the movement amount; And
And determining a position of a next sample according to the parameter.
제1항에 있어서, 상기 원의 반지름을 구하는 단계는,
상기 현재 샘플과 이전 샘플을 잇는 제1선분, 상기 현재 샘플과 상기 제1임시 샘플을 잇는 제2선분 및 상기 이전 샘플과 상기 제1임시 샘플을 잇는 제3선분을 구하는 단계;
상기 현재 샘플로부터 상기 제3선분까지의 직교거리를 구하는 단계;
상기 제3선분의 길이와 상기 직교거리로부터 상기 제2선분과 상기 제3선분의 사이각을 구하는 단계; 및
상기 사이각과 상기 제1선분의 길이를 이용하여 상기 원의 반지름을 결정하는 단계를 포함하는 곡선보간 방법.
2. The method of claim 1, wherein the step of obtaining the radius of the circle comprises:
Obtaining a first line segment connecting the current sample and a previous sample, a second line segment connecting the current sample and the first temporary sample, and a third line segment connecting the previous sample and the first temporary sample;
Obtaining an orthogonal distance from the current sample to the third line segment;
Obtaining an angle between the second line segment and the third line segment from the length of the third line segment and the orthogonal distance; And
And determining the radius of the circle using the interval and the length of the first line segment.
제2항에 있어서, 상기 사이각을 구하는 단계는,
상기 직교거리를 상기 제3선분의 길이로 나눈 값의 arctan를 근사화한 값인 곡선보간 방법.
3. The method according to claim 2,
And the arctan of the value obtained by dividing the orthogonal distance by the length of the third line segment is approximated.
제3항에 있어서, 상기 arctan를 근사화한 값은, 다음의 수학식에서 … 이하의 항을 무시하고 연산하여 구하는 곡선보간 방법.
Figure 112013063763249-pat00016

(단, x는 상기 직교거리를 상기 제3선분의 길이로 나눈 값임)
4. The method according to claim 3, wherein the value obtained by approximating the arctan is expressed by the following equation: A method of interpolating curved lines obtained by calculating by ignoring the following terms.
Figure 112013063763249-pat00016

(Where x is a value obtained by dividing the orthogonal distance by the length of the third segment)
제1항에 있어서, 상기 이동량은, 다음의 수학식에 의해 결정되는 곡선보간 방법.
Figure 112013063763249-pat00017

(단, M은 이동량, R은 원의 반지름, δmax는 최대 허용오차임)
2. The method according to claim 1, wherein the amount of movement is determined by the following equation.
Figure 112013063763249-pat00017

(Where M is the movement amount, R is the radius of the circle, and? Max is the maximum permissible error)
제1항에 있어서, 상기 매개변수는, 다음의 수학식에 의해 결정되는 곡선보간 방법.
Figure 112017040418627-pat00018

(단, un+1은 다음 샘플의 매개변수이고, un은 현재 샘플의 매개변수, un-1은 이전 샘플의 매개변수, M은 이동량, P(n)은 현재 샘플의 위치, P(n-1)은 이전 샘플의 위치임)
2. The method of claim 1, wherein the parameter is determined by the following equation.
Figure 112017040418627-pat00018

Where u n + 1 is the parameter of the next sample, u n is the parameter of the current sample, u n-1 is the parameter of the previous sample, M is the travel, P (n) (n-1) is the position of the previous sample)
제1항에 있어서,
입력된 현재 샘플이 곡선의 첫번째 샘플일 때, 상기 첫번째 샘플의 매개변수를 매듭벡터의 최소값으로 결정하고, 상기 결정된 매개변수를 이용하여 제1샘플의 위치를 결정하는 단계를, 상기 제 1 임시 샘플을 선정하는 단계 전에 수행하도록 포함하고,
상기 단계에서 결정된 제 1 샘플의 위치는 곡선의 시작점인 것을 특징으로 하는 곡선보간 방법.
The method according to claim 1,
Determining a parameter of the first sample as a minimum value of the knot vector when the input current sample is the first sample of the curve and determining the position of the first sample using the determined parameter, To be performed prior to the step of selecting,
Wherein the position of the first sample determined in the step is a starting point of a curve.
제7항에 있어서,
상기 제1샘플을 참조로, 제2 및 제3임시 샘플을 선정하고, 이를 이용하여 제2샘플의 위치를 결정하는 단계를 더 포함하는 곡선보간 방법.
8. The method of claim 7,
Selecting a second and a third temporal sample with reference to the first sample, and using the selected second and third temporal samples to determine a position of the second sample.
제8항에 있어서, 상기 제2샘플의 위치를 결정하는 단계는,
상기 제1샘플, 상기 제2 및 제3임시 샘플을 지나는 원의 반지름을 구하는 단계;
상기 원의 반지름을 이용하여 최대 허용오차를 만족하는 이동량을 구하는 단계;
상기 이동량을 만족하는 매개변수를 결정하는 단계; 및
상기 매개변수에 따라 상기 제2샘플의 위치를 결정하는 단계를 포함하는 곡선보간 방법.
9. The method of claim 8, wherein determining the position of the second sample comprises:
Obtaining a radius of a circle passing through the first sample, the second and third temporary samples;
Obtaining a movement amount satisfying a maximum allowable error by using the radius of the circle;
Determining a parameter that satisfies the movement amount; And
And determining the position of the second sample according to the parameter.
KR1020130083250A 2013-07-16 2013-07-16 Curve interpolation method in positioning control system KR101743795B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130083250A KR101743795B1 (en) 2013-07-16 2013-07-16 Curve interpolation method in positioning control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130083250A KR101743795B1 (en) 2013-07-16 2013-07-16 Curve interpolation method in positioning control system

Publications (2)

Publication Number Publication Date
KR20150009149A KR20150009149A (en) 2015-01-26
KR101743795B1 true KR101743795B1 (en) 2017-06-05

Family

ID=52572450

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130083250A KR101743795B1 (en) 2013-07-16 2013-07-16 Curve interpolation method in positioning control system

Country Status (1)

Country Link
KR (1) KR101743795B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105785921B (en) * 2016-03-25 2018-06-22 华南理工大学 A kind of speed planning method during industrial robot nurbs curve interpolation
CN109799785B (en) * 2017-11-17 2021-01-26 深圳市腾盛精密装备股份有限公司 Spline curve positioning method and storage medium
CN109416529B (en) * 2017-12-19 2021-12-07 深圳配天智能技术研究院有限公司 Numerical control system, device with storage function and NURBS curve interpolation method
CN116551457B (en) * 2023-07-11 2023-10-27 济南邦德激光股份有限公司 Method and equipment for connecting and processing straight line segment and circular arc segment through spline curve

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100284668B1 (en) 1997-03-13 2001-03-15 추후제출 Numerical control unit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100284668B1 (en) 1997-03-13 2001-03-15 추후제출 Numerical control unit

Also Published As

Publication number Publication date
KR20150009149A (en) 2015-01-26

Similar Documents

Publication Publication Date Title
CN105353725B (en) Auxiliary magnet configuration space circular interpolation method is crossed for industrial robot
JP5326015B2 (en) Numerical control device with machining curve creation function
Dong et al. Smooth feedrate planning for continuous short line tool path with contour error constraint
US8774965B2 (en) Method and device for controlling a manipulator
CN109648560B (en) Space trajectory transition method and system of industrial robot and robot
KR101743795B1 (en) Curve interpolation method in positioning control system
Feng et al. Design of a real-time adaptive NURBS interpolator with axis acceleration limit
JP5653972B2 (en) Numerical control device with multi-curve insertion section
CN108568817A (en) A kind of Delta robot trajectories connection control method based on Bezier
CN107844058B (en) Motion curve discrete dynamic planning method
Bahr et al. A real-time scheme of cubic parametric curve interpolations for CNC systems
JP2009053926A (en) Route-planning device and route-planning method
Tsai et al. Development of integrated acceleration/deceleration look-ahead interpolation technique for multi-blocks NURBS curves
Han et al. A local smoothing interpolation method for short line segments to realize continuous motion of tool axis acceleration
CN109739179B (en) Interpolation control method and device, computer equipment and readable storage medium
Giannelli et al. Path planning with obstacle avoidance by G1 PH quintic splines
CN104155916A (en) High-precision quick space arc interpolating method
Otsuki et al. A method for the evaluation and magnified representation of two-dimensional contouring error
Baek et al. Precision NURBS interpolator based on recursive characteristics of NURBS
Jahanpour et al. Real-time PH curve CNC interpolators for high speed cornering
CN109732219A (en) A kind of rounded corner method and system of laser cutting
CN117359090A (en) Processing track corner fairing method, device, processing equipment and readable storage medium
JP4146549B2 (en) Trajectory control method and recording medium having recorded trajectory control method
Wang et al. Universal real-time NURBS interpolator on a PC-based controller
Omirou et al. A CNC machine tool interpolator for surfaces of cross-sectional design

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