KR100249354B1 - Method of contour error modeling for cross-coupled control of cnc machines - Google Patents

Method of contour error modeling for cross-coupled control of cnc machines Download PDF

Info

Publication number
KR100249354B1
KR100249354B1 KR1019970077165A KR19970077165A KR100249354B1 KR 100249354 B1 KR100249354 B1 KR 100249354B1 KR 1019970077165 A KR1019970077165 A KR 1019970077165A KR 19970077165 A KR19970077165 A KR 19970077165A KR 100249354 B1 KR100249354 B1 KR 100249354B1
Authority
KR
South Korea
Prior art keywords
distance
equation
trajectory
reference trajectory
point
Prior art date
Application number
KR1019970077165A
Other languages
Korean (ko)
Other versions
KR19990057121A (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 KR1019970077165A priority Critical patent/KR100249354B1/en
Publication of KR19990057121A publication Critical patent/KR19990057121A/en
Application granted granted Critical
Publication of KR100249354B1 publication Critical patent/KR100249354B1/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/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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4145Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using same processor to execute programmable controller and numerical controller function [CNC] and PC controlled NC [PCNC]
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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/33Director till display
    • G05B2219/33099Computer numerical control [CNC]; Software control [SWC]

Landscapes

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

Abstract

본 발명에 의한 윤곽 오차 모델링 방법은 컴퓨터 수치 제어 장치에서 보간기가 주어진 곡선을 보간하여 매 샘플링 시간마다 기준 궤적 위의 노트 포인트(knot point)를 생성하며 이 노트 포인트들 사이는 직선으로 간주된다는 점을 이용하고, 적당한 크기의 원도우를 정의해서 기준 궤적의 과거 값을 메모리에 저장하고, 이와 실제 궤적의 현재 위치와의 거리를 구하여, 기준 궤적의 과거 데이터들 중에서 거리가 가장 짧은 두 점을 찾아서, 실제 궤적의 현재 위치와 상기 두 점 사이의 임의의 점과의 가장 가까운 거리로서 윤곽 오차를 계산한다. 본 발명에서는 가변 윈도우를 사용하므로, 기준 궤적 위의 많은 점들과 거리를 계산함에 의하여 계산 시간이 많이 소요될 우려없이 윤곽 오차의 실시간 계산이 가능하게 하므로 CNC 시스템의 상호 결합 제어 및 윤곽 제어 성능의 실시간 모니터링에 효과적으로 이용될 수 있다.The contour error modeling method according to the present invention generates a knot point on a reference trajectory at every sampling time by interpolating a given curve in a computer numerical control device, and it is regarded as a straight line between the knot points. A window of the reference trajectory is defined by storing a window with a moderate size, and the distance between the current position of the reference trajectory and the current position of the actual trajectory is found. The contour error is calculated as the closest distance between the current position of the trajectory and any point between the two points. In the present invention, since the variable window is used, real time calculation of the contour error can be performed in real time without worrying about the calculation time by calculating many points and distances on the reference trajectory, thereby real-time monitoring of the mutual coupling control and the contour control performance of the CNC system. Can be used effectively.

Description

컴퓨터 수치 제어 장치의 2차원 평면상의 실시간 윤곽 오차 모델링 방법Real-Time Contour Error Modeling Method in 2D Plane of Computer Numerical Control Unit

본 발명은 컴퓨터 수치 제어(Computer Numerical Control, 이하에서 'CNC'라 함) 시스템의 상호 결합 제어(Cross Coupled Control)를 위한 윤곽 오차 모델링 방법에 관한 것이다.The present invention relates to a contour error modeling method for cross coupled control of a Computer Numerical Control (CNC) system.

CNC 공작 기계를 이용한 공작물의 가공 정밀도는 가공품의 품질과 직결되므로 보다 고정밀의 가공을 위한 노력이 계속되고 있다. 기존의 다축 CNC 공작 기계의 경우, 각 축은 완전히 분리된 형태로 각각 독립적으로 제어되었다. 그러나, 이러한 분리된 형태의 제어 방법으로는 제어기 설계 과정에서 축 상호간에 미치는 영향에 대한 정확한 고려가 없다면 좋은 제어 성능을 기대할 수 없으며, 서로 다른 드라이버 동특성, 외부의 외란, 시스템 파라미터의 변화, 시스템의 비선형성 등에 의하여 필연적으로 윤곽 오차가 발생하게 된다.Machining precision of a workpiece using a CNC machine tool is directly related to the quality of the workpiece, and efforts for higher precision machining continue. In conventional multi-axis CNC machine tools, each axis was controlled independently of each other in a completely separate form. However, with this separate control method, it is impossible to expect good control performance without accurate consideration of the influences between the axes in the controller design process, and different driver dynamics, external disturbances, changes in system parameters, system Inevitably, contour errors occur due to nonlinearity.

이러한 문제를 해결하기 위하여, 종래에는 각 축의 추적 제어기와는 별도로 윤곽 오차를 고려하기 위한 상호 결합 제어기를 부가하는 방법이 제시되었고, 그 이후 CNC 공작 기계의 제어 분야에서 각 축의 추적 오차와는 별도로 직접적으로 윤곽 오차를 줄이거나 제거시키는 방법으로서 여러 개의 축을 동시에 고려하여 제어하는 문제에 대한 관심이 높아지고 있다. 이러한 상호 결합 제어기는 윤곽 오차를 매 샘플링 주기마다 계산하고, 그 오차에 따라 각 축에 보정 입력을 부가하는 형태로써 각 축의 추적 제어기에 병렬로 부가되어 사용된다.In order to solve this problem, conventionally, a method of adding a mutual coupling controller to consider contour errors separately from the tracking controller of each axis has been proposed, and since then, in the field of control of CNC machine tools, it is possible to directly As a method of reducing or eliminating contour errors, interest in controlling a plurality of axes simultaneously is increasing. The mutual coupling controller calculates the contour error every sampling period and adds a correction input to each axis according to the error, and is used in parallel to the tracking controller of each axis.

그러나, 이러한 종래 기술에 의한 윤곽 오차는 직선 경로의 경우는 쉽게 계산이 가능하나, 원호, 인볼루트(involute) 등 비선형 경로를 가공하는 경우 각 축의 기준 궤적의 위치와 실제 궤적의 위치의 차이인 추적 오차는 실제 위치와 기준 궤적의 위치에 대한 정보로써 정확하게 알 수 있다. 그러나 윤곽 오차는 실제 궤적의 현재 위치와 가장 가까운 기준 궤적 위의 위치(Pc *)간의 거리로써 정의하므로, Pc *를 알아야만 정확한 윤곽 오차를 계산할 수 있다.However, the contour error according to the prior art can be easily calculated in the case of a linear path, but when processing a nonlinear path such as an arc and an involute, the tracking is the difference between the position of the reference trajectory and the actual trajectory of each axis. The error can be known accurately by information about the actual position and the position of the reference trajectory. However, since the contour error is defined as the distance between the current position of the actual trajectory and the position P c * closest to the reference trajectory, it is necessary to know P c * to calculate the exact contour error.

그러나, 실시간으로 Pc *를 알 수 없으므로 윤곽 오차를 정확하게 계산하기가 어렵고, 윤곽 오차 모델이 실제 오차를 얼마나 정확하게 근사화 하는가가 상호 결합 제어의 성능과 직결되므로, 윤곽 오차를 정확하게 구하는 것이 중요하다.However, since P c * is not known in real time, it is difficult to accurately calculate the contour error, and it is important to accurately calculate the contour error because how accurately the contour error model approximates the actual error is directly related to the performance of the mutual coupling control.

윤곽 오차를 구하는 방법으로 종래에 알려진 것들로는 추적 오차와 기준 궤적의 순간 기울기를 이용하는 방식, 기준 궤적을 원으로 근사화하는 방식, 또는 기준 궤적과 실제 궤적의 속도를 이용하여 윤곽 오차를 구하는 방식이 있다.Conventionally known methods for calculating the contour error include using a tracking error and the instantaneous slope of the reference trajectory, approximating the reference trajectory with a circle, or using the speed of the reference trajectory and the actual trajectory. have.

그러나, 이러한 종래 기술들은 이용 가능한 과거의 기준 궤적에 대한 정보를 전혀 사용하지 않고, 현재 순간의 기준 궤적과 실제 궤적에 대한 정보만을 사용함으로써 실제 윤곽 오차와는 다소 거리가 있는 근사적인 윤곽 오차를 찾고자 한 것들이다.However, these prior arts do not use any information about the past reference trajectories that are available, but use only the information about the reference trajectory and the actual trajectory at the present moment to find an approximate contour error that is somewhat far from the actual contour error. One thing.

본 발명은 상기한 바와 같은 종래 기술의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 CNC 시스템과 같은 2차원 평면상의 이송 운동을 하는 동력학 시스템에서 상호 결합 제어를 위하여 실시간으로 윤곽 오차를 계산하는 것이 가능하도록 하는 윤곽 오차 모델링 방법을 제안하는데 있다.The present invention is to solve the problems of the prior art as described above, an object of the present invention is to calculate the contour error in real time for the mutual coupling control in the dynamic system of the two-dimensional plane feed movement, such as CNC system It is to propose a contour error modeling method that makes it possible.

도1은 CNC 시스템의 X-Y 테이블의 컨투어링 특성을 나타내는 도면,1 shows the contouring characteristics of the X-Y table of a CNC system;

도2는 본 발명에 의한 윤곽 오차 모델링 방법을 설명하는 도면,2 is a view for explaining a contour error modeling method according to the present invention;

도3은 본 발명에 의한 방법에서 P1 *와 P2 *를 찾는 흐름도,3 is a flowchart for finding P 1 * and P 2 * in the method according to the present invention;

도4는 도3에 의하여 구한 두 점 P1 *와 P2 *와 윤곽 오차와의 관계를 나타내는 도면.4 is a diagram showing a relationship between two points P 1 * and P 2 * obtained from FIG. 3 and a contour error;

상기한 바와 같은 목적을 달성하기 위하여, 본 발명에 의한 컴퓨터 수치 제어 시스템의 상호 결합 제어를 위한 윤곽 오차 모델링 방법은, 주어진 곡선을 보간하여 매 샘플링 시간마다 생성된 노트 포인트(knot point)에 의하여 정의되는 기준 궤적에 대하여 가변 원도우를 정의해서 기준 궤적의 과거 값을 메모리에 저장하는 단계; 기준 궤적의 과거 값과 실제 궤적의 현재 위치와의 거리를 구하여 기준 궤적의 과거 데이터중에서 거리가 가장 짧은 두 점인 P1 *와 P2 *(P1 *와 P2 *는 기준 궤적 상의 연속되는 노트 포인트로서 P1 *가 P2 *보다 앞선 점임)을 찾는 단계; 및 실제 궤적의 현재 위치와 상기 두 점 사이를 잇는 직선과 가장 가까운 거리로서 윤곽 오차를 계산하는 단계를 포함하는 것임을 특징으로 한다.In order to achieve the above object, the contour error modeling method for the mutual coupling control of the computer numerical control system according to the present invention is defined by knot points generated at every sampling time by interpolating a given curve. Defining a variable window for the reference trajectory to be stored and storing a past value of the reference trajectory in a memory; Find the distance between the past value of the reference trajectory and the current position of the actual trajectory, and P 1 * and P 2 * (P 1 * and P 2 * are two consecutive notes on the reference trajectory, which are the shortest points in the past trajectory of the reference trajectory. Finding as a point P 1 * is a point ahead of P 2 * ; And calculating a contour error as the closest distance to the current position of the actual trajectory and the straight line connecting the two points.

상기한 본 발명에 의한 윤곽 오차 모델링 방법에서, 상기 가변 윈도우의 시작은 이전 샘플링 시간에서의 P1 *이고, 가변 윈도우의 끝은 상기 가변 윈도우의 시작 점으로부터 출발하여 기준 궤적상의 노트 포인트와 현재 위치까지의 거리를 구하여 그 거리가 줄어들다가 증가하는 기준 궤적 상의 노트 포인트인 것임을 특징으로 한다.In the contour error modeling method according to the present invention, the start of the variable window is P 1 * at the previous sampling time, and the end of the variable window starts from the start point of the variable window and the note point and the current position on the reference trajectory. It is characterized in that it is a note point on the reference trajectory which increases and decreases the distance to the distance.

이하에서, 첨부된 도면을 참조하면서 본 발명에 의한 윤곽 오차 모델링 방법을 상세하게 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the contour error modeling method according to the present invention.

CNC 공작 기계를 이용한 가공 작업은 2차원 또는 3차원 공간상의 연속된 궤적을 따라서 테이블 또는 공구를 이동시킴으로써 이루어지며, 실제 테이블 또는 공구의 이동 경로가 원하는 궤적을 얼마나 정확하게 추종되도록 제어하는냐 하는 것이 공작물의 가공 정밀도를 결정하게 된다.Machining work with CNC machine tools is accomplished by moving a table or tool along a continuous trajectory in two- or three-dimensional space, and how exactly the movement path of the actual table or tool controls the desired trajectory is followed by Machining precision is determined.

도1은 X-Y 테이블의 컨투어링 특성을 나타내는 도면이다.1 is a diagram illustrating contouring characteristics of an X-Y table.

도1에서 점선 화살표는 추적 오차를 나타내고, 실선 화살표는 윤곽 오차를 나타낸다. 추적 오차는 각 축의 기준 궤적의 현재 위치와 실제 궤적의 현재 위치의 차이로 정의되는 반면, 윤곽 오차는 기준 궤적과 현재 실제 위치와의 최단 거리로 정의된다. 따라서 추적 오차를 감소시킨다고 해서 반드시 윤곽 오차를 감소시킬 수 있는 것은 아니다. 또한, CNC 시스템의 경우 윤곽 오차가 가공 정밀도를 결정하는 중요한 특성 파라미터이다.In FIG. 1, the dotted line arrow indicates tracking error, and the solid line arrow indicates contour error. The tracking error is defined as the difference between the current position of the reference trajectory of each axis and the current position of the actual trajectory, while the contour error is defined as the shortest distance between the reference trajectory and the current actual position. Therefore, reducing the tracking error does not necessarily reduce the contour error. Also, for CNC systems, contour error is an important characteristic parameter that determines machining accuracy.

도2는 본 발명에 의한 윤곽 오차 모델링 방법을 설명하는 도면이다.2 is a view for explaining a contour error modeling method according to the present invention.

CNC 공작 기계에서 임의의 곡선을 가공할 때 보간기는 도2에 도시된 바와 같이 주어진 곡선을 보간하여 매 샘플링 시간마다 기준 궤적 위의 노트 포인트를 생성하고, 이 점들 사이는 직선으로 간주된다. 따라서, 각 보간 주기 사이는 선형으로 근사화할 수 있다.When machining any curve in a CNC machine tool, the interpolator interpolates a given curve to generate note points on the reference trajectory at every sampling time, as shown in FIG. 2, between which points are considered straight lines. Therefore, it is possible to approximate linearly between each interpolation period.

도2의 경우를 예를 들어서 설명하면, CNC 공작 기계의 X-Y 테이블은 시간 지연 양이 존재하므로 항상 기준 궤적의 현재 위치인 P*(t)에서 시간 지연 양만큼 지연된 위치인 P(t)가 실제 위치가 된다. 따라서 실제 궤적의 현재 위치인 P(t)에서 기준 궤적의 과거의 점들과의 거리가 가장 짧은 두 점이 존재하게 된다. 이 두 점을 각각 P1 *와 P2 *로 놓으면, 윤곽 오차 εc P(t)와 두 점 사이의 임의의 점인 Pc *(t)와 가장 가까운 거리로서 정의할 수 있다.Referring to the case of Fig. 2 by way of example, since the X-Y table of the CNC machine tool has a time delay amount, P is always the current position of the reference trajectory.*(t) is the position delayed by the amount of time delay P (t) is the actual position. Therefore, two points having the shortest distance from the past points of the reference trajectory exist at P (t) which is the current position of the actual trajectory. P these two points respectivelyOne *And P2 *When set to, contour error εcIs P (t) and any point between two points Pc *It can be defined as the closest distance to (t).

기준 궤적 위에서 현재 위치와 가장 가까운 두 점을 찾기 위하여 기준 궤적 위의 많은 점들과 거리를 계산하게 되면 계산 시간이 많이 소요될 우려가 있으므로, 가변 윈도우를 이용하는 방법을 사용한다. 즉, 적당한 크기의 원도우를 정의해서 기준 궤적의 과거 값을 메모리에 저장하고, 실제 궤적의 현재 위치와의 거리를 구하면, 기준 궤적의 과거 데이터들 중에서 거리가 가장 짧은 두 점을 찾을 수 있다. 다음 순간의 실제 위치를 P(t+1)이라 하면, 이 순간의 윈도우의 시작은 도2에 도시된 바와 같이 P1 *이고, 이 점에서부터 현재 위치까지의 거리를 구해보면, 거리는 계속 줄어들다가 다시 증가하게 된다. 따라서 원도우의 끝은 거리가 다시 증가하는 점이 된다.In order to find the two points closest to the current position on the reference trajectory, calculating a lot of points and distances on the reference trajectory may require a lot of calculation time. In other words, by defining a window of a suitable size and storing the past value of the reference trajectory in the memory and obtaining a distance from the current position of the actual trajectory, two points having the shortest distance can be found among the past data of the reference trajectory. If the actual position of the next moment is called P (t + 1), the start of the window at this moment is P 1 * as shown in Fig. 2, and the distance from this point to the current position decreases. Will increase again. Therefore, the end of the window is to increase the distance again.

이와 같이, 원도우를 반복적으로 새로이 정의함으로써 계산 양을 최소화하고 실행 시간을 줄일 수 있다. 실제 위치와 가장 가까운 두 점 P1 *와 P2 *를 찾는 방법은 도3에 도시된 흐름도와 같다.In this way, it is possible to minimize the amount of calculation and reduce the execution time by repeatedly defining the window. The method of finding the two points P 1 * and P 2 * closest to the actual position is shown in the flowchart shown in FIG. 3.

- 제0 단계: 초기화 단계 -Step 0: Initialization Step

이 방법에서 실제 궤적의 현재 위치인 P(t)와 기준 궤적 위의 점들과의 거리(d)를 계산하고, 이 거리의 변화(Δd)를 보고 가장 가까운 두 점 P1 *와 P2 *를 찾아내는데, 가공 시작 시간인 t=0과 그 다음 시간인 t=T일 때는 비교할 대상이 없기 때문에 거리의 변화 Δd를 구할 수 없으므로 초기에 P1 *와 P2 *는 다음의 수학식 1과 같이 설정한다.In this method, the distance (d) between the current position of the actual trajectory P (t) and the points on the reference trajectory (d) is calculated, and the closest two points P 1 * and P 2 * When t = 0, which is the start time of machining, and t = T, which is the next time, there is no comparison, so the change of distance Δd cannot be obtained. So, P 1 * and P 2 * are initially expressed as Equation 1 below. Set it.

Figure 1019970077165_B1_M0001
Figure 1019970077165_B1_M0001

상기 수학식 1에서 T는 샘플링 시간이다. 그리고 k=1을 메모리에 저장한다. 여기서 k는 P1 *가 메모리에 저장되어 있는 위치를 가르킨다.In Equation 1, T is a sampling time. And store k = 1 in memory. Where k is the location where P 1 * is stored in memory.

-제1 단계-First step

현재 순간 t에서 기준 궤적의 위치 P*(t)를 메모리에 저장한 다음 t-1시간에서의 k를 읽어들이고, k=k+1한 다음, 다음의 수학식 2와 같이 실제 위치와의 거리 d를 구한다.Store the position P * (t) of the reference trajectory in memory at current moment t, then read k at time t-1, k = k + 1, and then distance to the actual position as shown in Equation 2 below. Find d.

d(k)=∥P*(k)-P(t)∥d (k) = ∥P * (k) -P (t) ∥

-제2 단계-Second step

다음의 수학식 3과 같이 k를 감소시켜서 거리를 구하고 거리의 변화 Δd를 계산한다.As shown in Equation 3 below, the distance is reduced by calculating k to calculate the distance Δd.

Figure 1019970077165_B1_M0002
Figure 1019970077165_B1_M0002

-제3 단계-Third step

거리의 변화 Δd가 '0'보다 크거나 같으면 상기 제2단계로 가고, 그렇지 않으면 다음 제4 단계로 간다.If the change Δd of the distance is greater than or equal to '0', go to the second step, otherwise go to the next fourth step.

-제4 단계-Fourth Step

거리의 변화 Δd가 '0'보다 작으면 실제 위치와 가장 가까운 점은 P*(k+1)이 되고, 그 다음으로 가까운 점을 찾으면 된다. d(k)<d(k+2)이면 다음의 제5 단계로 가고, 그렇지 않으면 다음의 제6 단계로 간다.If the change Δd of the distance is smaller than '0', the point closest to the actual position becomes P * (k + 1), and the next closest point is found. If d (k) < d (k + 2), go to the next fifth step; otherwise, go to the next sixth step.

-제5 단계-5th step

다음의 수학식 4와 같이, P1 *와 P2 *에 가장 가까운 두 점을 대입하고, P1 *가 메모리에 저장되어 있는 위치 k를 저장하고 끝낸다.As shown in Equation 4 below, the two points closest to P 1 * and P 2 * are substituted, and the position k where P 1 * is stored in the memory is finished.

Figure 1019970077165_B1_M0003
Figure 1019970077165_B1_M0003

-제6 단계-Sixth step

다음의 수학식 5와 같이, P1 *와 P2 *에 가장 가까운 두 점을 대입하고, P1 *가 메모리에 저장되어 있는 위치 k를 저장하고 끝낸다.As shown in Equation 5 below, the two points closest to P 1 * and P 2 * are substituted, and the position k where P 1 * is stored in the memory is finished.

Figure 1019970077165_B1_M0004
Figure 1019970077165_B1_M0004

상기한 방법은 기준 궤적의 과거 값을 저장하고 이 값들과 현재 위치간의 거리를 구한 다음 거리의 변화를 보고 거리의 변화가 존재하면, 그 때의 k값을 저장하고, 현재 위치와 가장 가까운 두 점인 P1 *와 P2 *을 찾아내는 것이다.The above method saves the past values of the reference trajectories, calculates the distance between these values and the current position, then looks at the change in distance and, if there is a change in distance, saves the value of k at that time, which is the two points closest to the current position. To find P 1 * and P 2 * .

따라서 천이 상태에서는 매 순간마다 윈도우의 크기가 변화하지만, 시스템이 정상 상태로 들어섬에 따라서 윈도우의 크기는 고정된다.Thus, in the transition state, the size of the window changes every moment, but as the system enters the normal state, the size of the window is fixed.

이러한 방법으로 찾은 두 점 사이를 도4로 나타낼 수 있으며, 도4에 도시된 바와 같이, P1 *의 좌표가 (x1,y1)이고, P2 *의 좌표가 (x2,y2)라고 할 때, 도4에서의 θ는 매 보간 주기마다 계산하여야 할 값으로서 다음의 수학식 6과 같이 나타낼 수 있다.The two points found in this way can be shown in FIG. 4, and as shown in FIG. 4, the coordinate of P 1 * is (x 1 , y 1 ) and the coordinate of P 2 * is (x 2 , y 2). Θ in FIG. 4 is a value to be calculated for each interpolation period, and can be expressed by Equation 6 below.

Figure 1019970077165_B1_M0005
Figure 1019970077165_B1_M0005

도4는 상기에서 구한 두 점 P1 *와 P2 *와 윤곽 오차와의 관계를 나타내는 도면으로서, 도4a는 x2≥x1인 경우이고, 도4b는 x2<x1인 경우이다. 도4에서 ex'은 P(t)와 P2 *의 X축의 오차이고, ey'은 Y축의 오차이다. 그러므로 기하학적인 모양에 의하여 현재 순간의 윤곽 오차 εc는 다음의 수학식 7과 같이 나타낼 수 있다.FIG. 4 is a diagram showing the relationship between the two points P 1 * and P 2 * obtained as described above and the contour error. FIG. 4A is a case where x 2 ≧ x 1 , and FIG. 4B is a case where x 2 <x 1 . In Figure 4 e x 'is the error of the X-axis of P (t) and P 2 * , e y ' is the error of the Y-axis. Therefore, the contour error ε c of the current moment due to the geometric shape can be expressed by Equation 7 below.

Figure 1019970077165_B1_M0006
Figure 1019970077165_B1_M0006

상기한 바와 같은 방법은, 실제 위치와 가장 가까운 기준 궤적의 위치인 P1 *와 P2 *만 알면 윤곽 오차를 계산할 수 있으므로 임의의 기준 궤적에 대하여 적용될 수 있다.The above-described method can be applied to any reference trajectory since only the position P 1 * and P 2 *, which are the positions of the reference trajectories closest to the actual position, can calculate the contour error.

이상에서 설명한 바와 같이, 본 발명에 의한 윤곽 오차 모델링 방법은 CNC 시스템에서 보간기가 주어진 곡선을 보간하여 매 샘플링 시간마다 기준 궤적 위의 노트 포인트를 생성하며 이 노트 포인트들 사이는 직선으로 간주된다는 점을 이용하고, 적당한 크기의 원도우를 정의해서 기준 궤적의 과거 값을 메모리에 저장하고, 이와 실제 궤적의 현재 위치와의 거리를 구하여, 기준 궤적의 과거 데이터들 중에서 거리가 가장 짧은 두 점을 찾아서, 실제 궤적의 현재 위치와 상기 두 점 사이의 임의의 점과의 가장 가까운 거리로서 윤곽 오차를 계산한다. 본 발명에서는 가변 윈도우를 사용하므로, 기준 궤적 위의 많은 점들과 거리를 계산함에 의하여 계산 시간이 많이 소요될 우려없이 윤곽 오차의 실시간 계산이 가능하게 하므로 CNC 시스템의 상호 결합 제어 및 윤곽 제어 성능의 실시간 모니터링에 효과적으로 이용될 수 있다.As described above, the contour error modeling method according to the present invention generates a note point on a reference trajectory at every sampling time by interpolating a given curve in the CNC system, and it is regarded as a straight line between the note points. A window of the reference trajectory is defined by storing a window with a moderate size, and the distance between the current position of the reference trajectory and the current position of the actual trajectory is found. The contour error is calculated as the closest distance between the current position of the trajectory and any point between the two points. In the present invention, since the variable window is used, real time calculation of the contour error can be performed in real time without worrying about the calculation time by calculating many points and distances on the reference trajectory, thereby real-time monitoring of the mutual coupling control and the contour control performance of the CNC system. Can be used effectively.

Claims (3)

컴퓨터 수치 제어 시스템의 상호 결합 제어를 위한 윤곽 오차 모델링 방법에 있어서, 주어진 곡선을 보간하여 매 샘플링 시간마다 생성된 노트 포인트에 의하여 정의되는 기준 궤적에 대하여A contour error modeling method for mutual coupling control of a computer numerical control system, comprising: a reference trajectory defined by a note point generated at every sampling time by interpolating a given curve 가변 원도우를 정의해서 기준 궤적의 과거 값을 메모리에 저장하는 단계;Defining a variable window to store a past value of a reference trajectory in a memory; 기준 궤적의 과거 값과 실제 궤적의 현재 위치와의 거리를 구하여 기준 궤적의 과거 데이터중에서 거리가 가장 짧은 두 점인 P1 *와 P2 *(P1 *와 P2 *는 기준 궤적 상의 연속되는 노트 포인트로서 P1 *가 P2 *보다 앞선 점임)을 찾는 단계; 및Find the distance between the past value of the reference trajectory and the current position of the actual trajectory, and P 1 * and P 2 * (P 1 * and P 2 * are two consecutive notes on the reference trajectory, which are the shortest points in the past trajectory of the reference trajectory. Finding as a point P 1 * is a point ahead of P 2 * ; And 실제 궤적의 현재 위치와 상기 두 점 사이의 임의의 점과 가장 가까운 거리로서 윤곽 오차를 계산하는 단계를 포함하는 것임을 특징으로 하는 윤곽 오차 모델링 방법.And calculating the contour error as the closest distance to the current position of the actual trajectory and any point between the two points. 제1항에 있어서, 상기 가변 윈도우의 시작은 이전 샘플링 시간에서의 P1 *이고, 가변 윈도우의 끝은 상기 가변 윈도우의 시작 점으로부터 출발하여 기준 궤적상의 노트 포인트와 현재 위치까지의 거리를 구하여 그 거리가 줄어들다가 증가하는 기준 궤적 상의 노트 포인트인 것임을 특징으로 하는 윤곽 오차 모델링 방법.The method of claim 1, wherein the start of the variable window is P 1 * at a previous sampling time, and the end of the variable window is obtained by determining a distance from a start point of the variable window to a current point and a note point on a reference trajectory. Contour error modeling method characterized in that the point is a note point on the reference trajectory increases with decreasing distance. 제2항에 있어서, 상기 P1*과 P2*를 구하는 단계는 다음과 같은 방법에 의하여 수행되는 것임을 특징으로 하는 윤곽 오차 모델링 방법;3. The method of claim 2, wherein the calculating of P1 * and P2 * is performed by the following method; - 제0 단계: 초기화 단계 -Step 0: Initialization Step 이 방법에서 실제 궤적의 현재 위치인 P(t)와 기준 궤적 위의 점들과의 거리(d)를 계산하고, 이 거리의 변화(Δd)를 보고 가장 가까운 두 점 P1 *와 P2 *를 찾아내는데, 가공 시작 시간인 t=0과 그 다음 시간인 t=T일 때는 비교할 대상이 없기 때문에 거리의 변화 Δd를 구할 수 없으므로 초기에 P1 *와 P2 *는 다음의 수학식 1과 같이 설정한다.In this method, the distance (d) between the current position of the actual trajectory P (t) and the points on the reference trajectory (d) is calculated, and the closest two points P 1 * and P 2 * When t = 0, which is the start time of machining, and t = T, which is the next time, there is no comparison, so the change of distance Δd cannot be obtained. So, P 1 * and P 2 * are initially expressed as Equation 1 below. Set it. 수학식 1Equation 1
Figure 1019970077165_B1_M0007
Figure 1019970077165_B1_M0007
상기 수학식 1에서 T는 샘플링 시간이다. 그리고 k=1을 메모리에 저장한다. 여기서 k는 P1 *가 메모리에 저장되어 있는 위치를 가르킨다.In Equation 1, T is a sampling time. And store k = 1 in memory. Where k is the location where P 1 * is stored in memory. -제1 단계-First step 현재 순간 t에서 기준 궤적의 위치 P*(t)를 메모리에 저장한 다음 t-1시간에서의 k를 읽어들이고, k=k+1한 다음, 다음의 수학식 2와 같이 실제 위치와의 거리 d를 구한다.Store the position P * (t) of the reference trajectory in memory at current moment t, then read k at time t-1, k = k + 1, and then distance to the actual position as shown in Equation 2 below. Find d. 수학식 2Equation 2 d(k)=∥P*(k)-P(t)∥d (k) = ∥P * (k) -P (t) ∥ -제2 단계-Second step 다음의 수학식 3과 같이 k를 감소시켜서 거리를 구하고 거리의 변화 Δd를 계산한다.As shown in Equation 3 below, the distance is reduced by calculating k to calculate the distance Δd. 수학식 3Equation 3
Figure 1019970077165_B1_M0008
Figure 1019970077165_B1_M0008
-제3 단계-Third step 거리의 변화 Δd가 '0'보다 크거나 같으면 상기 제2단계로 가고, 그렇지 않으면 다음 제4 단계로 간다.If the change Δd of the distance is greater than or equal to '0', go to the second step, otherwise go to the next fourth step. -제4 단계-Fourth Step 거리의 변화 Δd가 '0'보다 작으면 실제 위치와 가장 가까운 점은 P*(k+1)이 되고, 그 다음으로 가까운 점을 찾으면 된다. d(k)<d(k+2)이면 다음의 제5 단계로 가고, 그렇지 않으면 다음의 제6 단계로 간다.If the change Δd of the distance is smaller than '0', the point closest to the actual position becomes P * (k + 1), and the next closest point is found. If d (k) &lt; d (k + 2), go to the next fifth step; otherwise, go to the next sixth step. -제5 단계-5th step 다음의 수학식 4와 같이, P1 *와 P2 *에 가장 가까운 두 점을 대입하고, P1 *가 메모리에 저장되어 있는 위치 k를 저장하고 끝낸다.As shown in Equation 4 below, the two points closest to P 1 * and P 2 * are substituted, and the position k where P 1 * is stored in the memory is finished. 수학식 4Equation 4
Figure 1019970077165_B1_M0009
Figure 1019970077165_B1_M0009
-제6 단계-Sixth step 다음의 수학식 5와 같이, P1 *와 P2 *에 가장 가까운 두 점을 대입하고, P1 *가 메모리에 저장되어 있는 위치 k를 저장하고 끝낸다.As shown in Equation 5 below, the two points closest to P 1 * and P 2 * are substituted, and the position k where P 1 * is stored in the memory is finished. 수학식 5Equation 5
Figure 1019970077165_B1_M0010
Figure 1019970077165_B1_M0010
KR1019970077165A 1997-12-29 1997-12-29 Method of contour error modeling for cross-coupled control of cnc machines KR100249354B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970077165A KR100249354B1 (en) 1997-12-29 1997-12-29 Method of contour error modeling for cross-coupled control of cnc machines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970077165A KR100249354B1 (en) 1997-12-29 1997-12-29 Method of contour error modeling for cross-coupled control of cnc machines

Publications (2)

Publication Number Publication Date
KR19990057121A KR19990057121A (en) 1999-07-15
KR100249354B1 true KR100249354B1 (en) 2000-03-15

Family

ID=19529498

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970077165A KR100249354B1 (en) 1997-12-29 1997-12-29 Method of contour error modeling for cross-coupled control of cnc machines

Country Status (1)

Country Link
KR (1) KR100249354B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527351A (en) * 2015-09-10 2017-03-22 沈阳高精数控智能技术股份有限公司 Small-line real-time interpolation method for dynamically determining length of transition curve

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1562138B1 (en) * 2004-02-06 2009-08-19 Dassault Systèmes A process for drafting a curve in a computer-aided design system
CN110730001B (en) * 2019-08-27 2024-03-29 浙江海洋大学 Track compression method for ship berthing
CN118707894A (en) * 2024-08-29 2024-09-27 成都飞机工业(集团)有限责任公司 Method, device, medium and equipment for acquiring contour error of machining plane of numerical control machine tool

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106527351A (en) * 2015-09-10 2017-03-22 沈阳高精数控智能技术股份有限公司 Small-line real-time interpolation method for dynamically determining length of transition curve
CN106527351B (en) * 2015-09-10 2019-01-22 沈阳高精数控智能技术股份有限公司 A kind of small line segment Real-time Interpolation that easement curve length is dynamically determined

Also Published As

Publication number Publication date
KR19990057121A (en) 1999-07-15

Similar Documents

Publication Publication Date Title
Liu et al. Adaptive interpolation scheme for NURBS curves with the integration of machining dynamics
Erkorkmaz et al. High speed CNC system design. Part I: jerk limited trajectory generation and quintic spline interpolation
Pateloup et al. Bspline approximation of circle arc and straight line for pocket machining
KR920005255B1 (en) Numerical controller method for high dynamic process
US5892345A (en) Motion control for quality in jet cutting
Lin Real-time surface interpolator for 3-D parametric surface machining on 3-axis machine tools
JP5800888B2 (en) Numerical control device with smoothing function for operation by table format data
US4683543A (en) Time-based interpolation control of a robot
KR100249354B1 (en) Method of contour error modeling for cross-coupled control of cnc machines
US4381608A (en) Method for interpolating between cartesian and rotary coordinates in machines
Li et al. Accurate interpolation and contouring control algorithm based on FIR filters for the corner transition
US4521721A (en) Numerical control method
JP2790643B2 (en) Numerical control unit
WO2022138843A1 (en) Numerical control device
US4922431A (en) Method and apparatus of tool control in arbitrary plane operations
JPH0354610A (en) Involute interpolation error correcting system
EP0451795A2 (en) Numerical control unit with compensation for offset error
JPS63205709A (en) Pulse distributing method
KR100343565B1 (en) Position Controlling Method For Compensationg For Contour Error in Multi-axes System
JP2003223208A (en) Numerical control system
JP3520142B2 (en) Quadrant projection correction parameter determination device
JP2521449B2 (en) Trajectory control device
JP3164512B2 (en) Numerical control unit
Medyk et al. CNC machine tool error compensation system implementation strategies and their constraints
Li et al. The research of dual NURBS curves interpolation algorithm for high-speed five-axis machining

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee