KR20010027751A - Position Controller With a Function of Compensation for Contour Error in Multi-axes System - Google Patents

Position Controller With a Function of Compensation for Contour Error in Multi-axes System Download PDF

Info

Publication number
KR20010027751A
KR20010027751A KR1019990039645A KR19990039645A KR20010027751A KR 20010027751 A KR20010027751 A KR 20010027751A KR 1019990039645 A KR1019990039645 A KR 1019990039645A KR 19990039645 A KR19990039645 A KR 19990039645A KR 20010027751 A KR20010027751 A KR 20010027751A
Authority
KR
South Korea
Prior art keywords
error
controller
contour error
position controller
axis
Prior art date
Application number
KR1019990039645A
Other languages
Korean (ko)
Other versions
KR100343565B1 (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 KR1019990039645A priority Critical patent/KR100343565B1/en
Publication of KR20010027751A publication Critical patent/KR20010027751A/en
Application granted granted Critical
Publication of KR100343565B1 publication Critical patent/KR100343565B1/en

Links

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/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
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • G05B11/42Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P. I., P. I. D.
    • 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia

Landscapes

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

Abstract

PURPOSE: A position controller with an outline error compensation function of a multi-axis system is provided to improve a processing capacity by proposing a new calculation method for obtaining an outline error and an observer. CONSTITUTION: A position controller with an outline error compensation function of a multi-axis system is to reduce an outline error and a tracking error in a multi-axis system moving along a track. The position controller provides a new method calculating an outline error and a method for improving an accuracy of a system. A processing degree on a processing surface approaches a target value The position controller is applicable to machinery such as a CNC machine and an XY table.

Description

다축 시스템의 윤곽 오차 보상 기능을 가지는 위치 제어기{Position Controller With a Function of Compensation for Contour Error in Multi-axes System}Position controller with a function of compensation for contour error in multi-axes system

본 발명은 산업 분야에서 대표적인 다축 시스템인 CNC 공작 기계와 XY 테이블에서의 위치 제어기에 관한 것이다.The present invention relates to a CNC machine tool and a position controller in an XY table, which are representative multi-axis systems in the industry.

현대 산업 분야에서 머시닝센터, 선반, 방전가공기, 드릴 등의 공작 기계와 반도체 제조 장비, 다두자수기, 모형가공기 등의 대부분의 산업용 기계에는 가공시 가공 대상 공작물 혹은 공구를 원하는 위치로 옮기기 위한 XY 테이블이 필요하다.XY tables for moving the workpiece or tool to the desired position during machining in most industrial machines such as machining centers, lathes, electric discharge machines, drills and semiconductor manufacturing equipment, multi-head embroidery machines, and model machines in modern industrial fields This is necessary.

이러한 XY 테이블의 제어기로서 두 가지 방식의 제어기들이 알려져 있다.As a controller of this XY table, two types of controllers are known.

첫 번째는 점에서 점으로(point to point) 움직이는 제어기이다. 이는 원하는 위치로 옮겨가는 과정에서 원하는 위치까지의 중간 궤적에는 상관없이 원하는 위치에 정확히 옮겨서 빠른 시간이내에 안정시키는 것을 목표로 하는 제어 방식이다. 이 방식에서는 원하는 목표 위치와의 오차에 따라 제어 입력이 결정되며 최단 시간 이내에 원하는 위치로 옮겨 그 위치에서 안정된 동작을 할 수 있도록 하여야 한다. 그러므로 이 방식에서는 각 축을 서로 독립적으로 제어하여 각 축의 원하는 목표 위치로 제어하는 방법을 일반적으로 사용한다.The first is a controller that moves from point to point. This is a control method aiming at stabilizing within a short time by accurately moving to the desired position regardless of the intermediate trajectory to the desired position in the process of moving to the desired position. In this method, the control input is determined according to the error from the desired target position, and it must be moved to the desired position within the shortest time for stable operation at that position. Therefore, this method generally uses a method of controlling each axis independently of each other to control the desired target position of each axis.

이에 반하여 공구를 이동하면서 가공하는 공작 기계의 경우에는 두 축의 움직임이 서로 연관되어 있어서 이를 독립적으로 제어할 수 없다. 이러한 경우에는 원하는 궤적을 정확히 따라가게 제어하는 추적 제어(Tracking control)가 필요하다. 추적 제어는 원하는 목표 궤적과의 오차를 가장 적게 유지하면서 빠르게 제어하는 것이 목표이다. 공작 기계에서 사용되는 XY 테이블을 제어하면서 발생하는 추적 오차는 공작 기계의 가공 정밀도를 결정하는 가장 중요한 요소가 된다.On the other hand, in the case of a machine tool that moves while moving a tool, the movements of the two axes are related to each other and cannot be controlled independently. In this case, tracking control is needed to precisely follow the desired trajectory. Tracking control aims to control quickly while maintaining the least error with the desired target trajectory. The tracking error that occurs while controlling the XY table used in the machine tool is the most important factor in determining the machining precision of the machine tool.

일반적으로 사용되는 이산형 추적 제어 방법을 살펴보면, 정해진 피드레이트(Feedrate)에 따라 다음 샘플 주기에서의 목표 위치를 정하고 목표 위치와 현재의 위치와의 차이를 추적 오차로 정의하며 이 추적 오차를 최소화하는 제어를 수행한다. 이러한 방식은 현 위치에서 목표 위치로 이동하는 과정은 점 대 점 방식과 같은 위치 제어 방식으로 추적 궤적과의 오차는 피드레이트의 크기와 샘플링 주기에 따라 달라진다. 즉 피드레이트가 크거나 샘플링 주기가 큰 경우에는 원하는 목표 궤적과 실제 공구 궤적이 차이가 커서 가공된 면이 울퉁불퉁한 결과를 볼 수 있다. 특히, 현재 공구 위치가 추적 궤적 상에 있지 않은 경우에는 제어 입력의 방향이 추적 궤적과 매우 다르게되어 적절한 제어가 되지 못한다.The commonly used discrete tracking control method is to determine the target position in the next sample period according to a given feedrate, define the difference between the target position and the current position as the tracking error, and minimize the tracking error. Perform control. In this method, the process of moving from the current position to the target position is a position control method such as the point-to-point method. The error from the tracking trajectory depends on the size of the feedrate and the sampling period. In other words, when the feedrate is large or the sampling period is large, the desired target trajectory and the actual tool trajectory are different so that the machined surface may be uneven. In particular, when the current tool position is not on the tracking trajectory, the direction of the control input is very different from the tracking trajectory, so that proper control cannot be achieved.

이를 보상하기 위한 방법으로 영위상오차추적제어(Zero Phase Error Tracking Control)와 상호결합제어(Cross Coupled Control)등이 있다. 영위상오차추적제어는 선형시스템에만 적용 가능할 뿐만 아니라, 시스템 모델의 계수들이 정확하지 않는 경우에 추적오차를 유발하게 된다는 문제점이 있다. 반면 Karen이 제안한 상호결합제어에서는 각 축의 속도를 이용하여 윤곽오차로 정의된 추척궤적과의 오차를 구하고, 기준속도 입력을 발생하기 위하여 추적오차도 동시에 피드백한다. 이 방법은 시스템의 모델이 필요하지 않은 장점이 있으나, 피드레이트가 빨라져서 추적오차가 커지면 인가되는 기준속도가 빨라져서 시스템이 크게 불안정하게 된다.To compensate for this, there are zero phase error tracking control and cross coupled control. The zero phase error tracking control is not only applicable to linear systems but also causes a tracking error when the coefficients of the system model are not accurate. On the other hand, Karen's proposed mutual coupling control uses the velocity of each axis to find the error from the tracking trace defined by the contour error, and feeds back the tracking error simultaneously to generate the reference speed input. This method has the advantage of not requiring a model of the system. However, the faster the feed rate, the greater the tracking error, the faster the reference speed applied and the more unstable the system becomes.

먼저, 윤곽 오차를 정의하고 종래 기술에 의한 이의 계산 방법을 설명한다.First, the contour error is defined and its calculation method according to the prior art is explained.

추적 제어의 제어기 구성을 보면 크게 위치제어기와 속도제어기로 나눌 수 있다. 위치 제어기의 기준 입력은 추적할 목표 궤적이 되며 이러한 목표 궤적과의 최소 오차를 윤곽 오차(Contour Error)라고 정의한다.Controller configuration of tracking control can be divided into position controller and speed controller. The reference input of the position controller is a target trajectory to be tracked, and the minimum error with the target trajectory is defined as a contour error.

도1은 추적 오차와 윤곽 오차를 나타낸 것이다.1 shows the tracking error and the contour error.

도1에서 보이는 바와 같이, 실선으로 보인 목표 궤적을 추적하면서 실제 공구의 위치가 Pd점에 있게 되고 현재의 위치가 P라 할 때 선분 PdP의 크기가 추적 오차이다.As shown in Fig. 1, when tracking the target trajectory shown by the solid line, the actual tool position is at the point P d and the size of the line segment P d P is the tracking error when the current position is P.

윤곽 오차는 추적하려는 목표 궤적과 공구나 대상물의 현위치 사이의 최소 오차로 Koren은 목표 위치와의 추적 오차를 이용하여 윤곽 오차를 구하는 방법을 제시하였다. 그러나 윤곽 오차는 추적하려는 궤적의 형태에 따라 달라지게 되며 궤적이 선형 함수가 아닌 경우에는 이의 정확한 값을 구하기가 어렵다. 이는 서보 제어기의 속도에 대한 정보를 제공하지 못한다는 커다란 문제점을 갖고 있다.The contour error is the minimum error between the target trajectory to be traced and the current position of the tool or the object. Koren proposed a method for calculating the contour error using the tracking error from the target position. However, the contour error depends on the shape of the trajectory to be traced, and it is difficult to obtain the exact value when the trajectory is not a linear function. This has a big problem that it does not provide information about the speed of the servo controller.

추적 오차는 기준 위치와 현재 위치의 직선 거리를 말하며, 다음의 수학식 1과 같이 계산된다.The tracking error refers to the linear distance between the reference position and the current position, and is calculated as in Equation 1 below.

상기 수학식 1에서,는 추적오차이며,는 각각 x, y축의 위치오차이다.In Equation 1, Is a tracking error , Are positional errors on the x and y axes, respectively.

추적 오차는 구동되는 서보시스템이 갖는 시간 지연 특성으로 인하여 발생하며 각 축의 위치제어기 이득을 증가시킴으로써 보상 가능하다. 이와 같은 추적 오차는 기준 궤적을 정확히 따라가는지의 정확한 지표가 될 수 없다.The tracking error is caused by the time delay characteristic of the driven servo system and can be compensated by increasing the position controller gain of each axis. This tracking error cannot be an accurate indicator of exactly following the reference trajectory.

윤곽 오차는 가공 정밀도를 결정하는 중요한 요소로서 기준 궤적과 현재 위치의 최단 거리로 나타낸다. 윤곽 오차는 축간의 동특성 및 제어 이득의 불일치, 부하 변화, 각 축의 외란 등에 기인하며 고속으로 비선형 곡선 궤적을 추적할 때 더 큰 윤곽 오차가 나타난다. 기준 궤적을 이탈하지 않고 정확하게 추적하려는 다축 서보시스템에서는 추적 오차보다 윤곽 오차의 감소가 매우 중요하며, 실시간으로 계산되어야 한다. 윤곽 오차는 다음의 수학식 2 및 수학식 3에 의하여 계산된다.Contour error is an important factor in determining the machining accuracy and is represented by the shortest distance between the reference trajectory and the current position. Contour errors are due to the inconsistency of the dynamics and control gains between the axes, load changes, disturbances on each axis, and larger contour errors appear when tracking nonlinear curve trajectories at high speed. In a multi-axis servo system that tracks accurately without departing from the reference trajectory, the reduction of the contour error is more important than the tracking error and should be calculated in real time. The contour error is calculated by the following equations (2) and (3).

상기 수학식 2와 수학식 3에서은 윤곽오차,는 기준위치에서의 접선과 X축이 이루는 각,는 각 축의 속도성분이다. 직선 궤적일 경우에는 θ는 항상 일정하며 상기 수학식 2와 수학식 3에 의하여 윤곽 오차가 정확하게 계산될 수 있다. 그러나, 대부분의 기준 궤적은 비선형 곡선이므로 이에 대한 윤곽 오차의 계산은 도1에서 보이는 바와 같이, 기준 위치에서의 접선에 근사화하여 구한다.In Equations 2 and 3 Silver configuration error, Is the angle between the tangent and the X axis at the reference position, Is the velocity component of each axis. In the case of the linear trajectory, θ is always constant and the contour error can be accurately calculated by Equations 2 and 3 above. However, since most reference trajectories are nonlinear curves, the contour error is calculated by approximating the tangent line at the reference position as shown in FIG.

만약 기준 궤적이 원형 경로라면 다음의 수학식 4에 의하여 정확한 윤곽 오차를 계산할 수 있다.If the reference trajectory is a circular path, an accurate contour error may be calculated by Equation 4 below.

여기서,는 현재위치,는 원의 중심이며,은 원의 반경이다. 또한 기준위치가라면 현재위치는 다음의 수학식 5와 수학식 6과 같이 나타낼 수 있다.here, Is your current location, Is the center of the circle, Is the radius of the circle. Also, the reference position In this case, the current position may be expressed as in Equations 5 and 6 below.

상기 수학식 5와 수학식 6을 상기 수학식 4에 대입하면 다음의 수학식 7과 같다.Substituting Equations 5 and 6 into Equation 4 results in Equation 7 below.

상기 수학식 7은 실시간으로 계산하기에는 계산량이 많으므로 간략화시키기 위하여 다음과 같이 테일러 급수로 확장하면 다음의 수학식 8과 같다.Since Equation 7 has a large amount of calculation to calculate in real time, the equation 7 is expanded to the Taylor series as follows to simplify the equation.

만약 윤곽 오차가 각 축의 위치 오차보다 매우 작고, 각 축의 위치 오차가 원의 반경 R보다 매우 작다면 고차항은 무시되어 상기 수학식 8은 다음의 수학식 9와 같이 간략화할 수 있다.If the contour error is much smaller than the position error of each axis and the position error of each axis is much smaller than the radius R of the circle, the higher order term is ignored and Equation 8 can be simplified as shown in Equation 9 below.

상기 수학식 9는 비선형 궤적의 윤곽 오차를 근사화된 원 궤적을 구하여 계산하는 방법으로 접선에 근사하는 것 보다 좀 더 정확한 윤곽 오차의 계산이 가능하다. 그러나 실시간으로 근사화된 원의 반경 등을 구해야 하기 때문에 많은 계산량을 필요로 하는 문제점을 가지고 있다.Equation (9) is a method of calculating the approximate circular trajectory by calculating the contour error of the nonlinear trajectory, which is more accurate than the approximation to the tangent. However, since the approximate radius of the circle must be obtained in real time, a large amount of computation is required.

종래의 제어기는 고속 제어 및 원호 등 비선형 경로를 가공할 경우에는 실시간으로 현재 위치에서 가장 가까운 경로의 위치를 알 수 없으므로 윤곽 오차를 계산하기가 어렵다. 또한 마찰력 부하의 외란, 모델링 오차 등에 따라 성능의 변화가 심하여 가공 정도가 떨어진다. 따라서 본 발명에서는 윤곽 오차를 구하는 새로운 방법과 관측자(OBSERVER)를 제안하고, 이를 이용한 위치 제어기를 개발하여 윤곽 오차를 감소시켜서 가공 성능을 향상시키고자 하는 것이다.When the conventional controller processes nonlinear paths such as high speed control and circular arcs, it is difficult to calculate the contour error since the position of the path closest to the current position is not known in real time. In addition, due to frictional load disturbance, modeling error, etc., the performance is severely changed, and the degree of machining is reduced. Therefore, the present invention proposes a new method and observer (OBSERVER) for calculating the contour error, and to improve the processing performance by reducing the contour error by developing a position controller using the same.

도1은 추적 오차와 윤곽 오차를 나타낸 것,1 shows the tracking error and the contour error,

도2는 본 발명에서 제안하는 새로운 윤곽 오차 계산법을 설명하는 도면,2 is a view for explaining a new contour error calculation method proposed in the present invention;

도3은 본 발명에 의한 관측자와 제어기를 포함하여 전제 제어시스템의 구성도.3 is a block diagram of a premise control system including an observer and a controller according to the present invention.

이하에서 첨부된 도면을 참조하면서 본 발명에 의한 다축 시스템의 윤곽 오차 보상 기능을 가지는 위치 제어기를 상세하게 설명한다.Hereinafter, a position controller having a contour error compensation function of a multi-axis system according to the present invention will be described in detail with reference to the accompanying drawings.

먼저, 본 발명에서 제안하는 새로운 윤곽 오차 계산 방법을 설명한다.First, the new contour error calculation method proposed by the present invention will be described.

본 발명에서는 피드레이트의 크기에 상관없이 추적 궤적과 현재 공구 위치와의 관계로부터 윤곽 오차를 구하는 과정을 제안하며 이는 목표 궤적이 선형적으로 변하는 경우에 실제 값과 유사한 값을 가진다. 그러나 목표 궤적이 곡선인 경우에는 궤적의 성격에 따라 보상하는 방안을 제안한다.The present invention proposes a process of calculating the contour error from the relationship between the tracking trajectory and the current tool position regardless of the feedrate size, which has a value similar to the actual value when the target trajectory changes linearly. However, if the target trajectory is curved, we propose a scheme to compensate according to the nature of the trajectory.

일반적으로 대부분의 다축 시스템의 추적 제어에서 추적하려는 궤적에 대한 데이터는 함수의 형태 또는 각 위치에 대한 이산 데이터 형태로 미리 알고 있다. 따라서 현재의 공구 위치를 알면 도2에 도시된 바와 같이, 추적 궤적과의 각 축의 오차를 구할 수 있다. 따라서, 본 발명에서는 임의의 궤적을 직선에 근사하여 윤곽 오차를 계산하는 새로운 방법을 제시한다.In general, in the tracking control of most multi-axis systems, the data about the trajectory to be tracked is known in advance in the form of a function or discrete data for each position. Therefore, knowing the current tool position, as shown in Figure 2, it is possible to obtain the error of each axis with the tracking trajectory. Thus, the present invention proposes a new method for calculating contour error by approximating any trajectory to a straight line.

도2는 본 발명에서 제안하는 새로운 윤곽 오차 계산법을 설명하는 도면이다.2 is a view for explaining a new contour error calculation method proposed in the present invention.

도2에서 보이는 바와 같이, 현재 위치 P에서 각 축의 방향으로 직선을 연장하여 궤적과 만나는 점이 있다고 가정하고 이 두 점을 A,B, 이 점과 현재 위치와의 거리를 각각 Δx, Δy라 한다. 두 삼각형 ABP와 PP*C는 닮은 꼴이므로 다음의 수학식 10과 같이 나타낼 수 있으며 삼각형 ABP에 대하여 다음의 수학식 11이 성립한다.As shown in Fig. 2, assuming that there are points that meet the trajectory by extending a straight line in the direction of each axis at the current position P, these two points are called A, B, and the distance between this point and the current position is Δx and Δy, respectively. Since the two triangles ABP and PP * C are similar, they can be expressed as Equation 10 below, and the following Equation 11 holds for the triangle ABP.

따라서 전체 윤곽 오차 및 각 축의 윤곽 오차 크기는 다음의 수학식 12 내지 수학식 14에 의하여 구할 수 있다.Therefore, the total contour error and the magnitude of the contour error of each axis can be obtained by the following equations (12) to (14).

상기 수학식 12 내지 수학식 14는 종래의 윤곽 오차 계산법과 마찬가지로 곡선 궤적을 직선 궤적에 근사화하여 얻을 수 있으며, 간단하게 구할 수 있다. 이와 같이 구해진 윤곽 오차를 이용하면 각 축이 서로 독립적으로 제어할 수 있다. 그러므로 각 축의 윤곽 오차를 이용하여 각 축의 제어기를 따로 구성하면 테이블 전체에 대한 제어기 구성이 가능하다.The equations (12) to (14) can be obtained by approximating a curve trajectory to a straight line trajectory as in the conventional contour error calculation method, and can be obtained simply. Using the contour error thus obtained, each axis can be controlled independently of each other. Therefore, if the controller of each axis is configured separately using the contour error of each axis, it is possible to configure the controller for the whole table.

앞에서 설명한 바와 같이, 윤곽 오차를 이용하는 경우 각 축의 제어기는 서로 독립적으로 제어할 수 있다. 서보 위치제어시스템에서 각 축의 제어기는 크게 위치제어기와 속도제어기의 두 부분으로 구성된다. 우선 시스템의 속도제어기는 전체시스템이 위치제어시스템이라는 구성으로 볼 때 주 피드백 루프가 아니라 부 루프로 제어시스템의 댐핑을 추가하는 역할을 하며 시스템의 과도 특성을 개선하기 위하여 반드시 필요한 부분이다. 이러한 댐핑의 추가를 위하여 비례제어기를 속도제어기로 구성한다.As described above, in the case of using the contour error, the controllers of the respective axes may be controlled independently of each other. In the servo position control system, each axis controller is composed of two parts, the position controller and the speed controller. First of all, the speed controller of the system adds damping of the control system to the sub-loop rather than the main feedback loop when the whole system is composed of the position control system. It is essential to improve the transient characteristics of the system. In order to add such damping, the proportional controller is configured as a speed controller.

그러나 대부분의 서보 시스템에서는 피드백 센서로 디지털 엔코더를 쓰고 있다. 디지털 엔코더는 이산 위치만을 제공해주는 센서로 이를 이용하여 속도를 계산하는 경우 현재의 속도가 아니라 평균 속도만을 얻을 수 있다. 특히 엔코더의 응답 특성(Resolution)은 현재의 구동 속도에 따라 다르지만 저속에서는 매우 큰 오차를 갖게 된다. 정밀한 제어기 구성을 위하여는 현재 속도에 대한 정확한 추정이 필요하다.However, most servo systems use digital encoders as feedback sensors. Digital encoder is a sensor that provides only discrete position. When calculating speed using this, you can get only average speed, not current speed. In particular, the encoder's response (Resolution) depends on the current drive speed, but at very low speeds there is a very large error. Accurate estimation of the current speed is required for precise controller configuration.

다음으로 위치제어기의 구성에 대하여 살펴보자. 위치제어기에 입력되는 신호는 윤곽 오차로 이를 빠른 시간내에 최소화하고 시스템의 외란이나 특성 변화에 무관하게 정상 상태에서는 영으로 갈 수 있어야 한다. 이를 위하여 적분기를 포함한 PI 제어 형태를 채용한다.Next, let's look at the configuration of the position controller. The signal input to the position controller should be minimized due to the contour error and be able to go to zero under normal conditions regardless of system disturbance or characteristic change. For this purpose, PI control type including integrator is adopted.

그런데 디지털 제어기에서 제어입력 계산을 위한 시간을 고려하면 제어입력이 계산되어 출력되는 시점은 입력시점보다 늦어지게 된다. 즉, 현재의 상태 변수를 이용하여 현재의 제어 입력을 바로 계산하지 못한다. 이러한 문제점을 고려하여 다음 샘플링 순간에서는 상태변수값 즉 한 스텝 앞선 상태변수(One step ahead states)를 추정하여 사용함으로써 이에 대한 보상이 가능하게 한다.However, considering the time for calculating the control input in the digital controller, the time point at which the control input is calculated and output is later than the input time point. That is, the current control input cannot be calculated immediately using the current state variable. In consideration of this problem, it is possible to compensate for this by estimating the state variable value, that is, one step ahead states, at the next sampling moment.

시스템의 출력인 위치 신호는 엔코더의 출력 신호로 이의 이산 성질에 따른 오차를 갖게된다. 이러한 오차가 측정 오차로 추정자의 잡음 신호에 입력된다. 디지털 제어기를 마이크로프로세서로 실현함으로써 제어입력에서 나타나는 Quantization error와 외부로부터의 영향으로 오는 그외의 잡음들은 입력 잡음으로 해석된다.The position signal, which is the output of the system, is the output signal of the encoder and has an error according to its discrete nature. This error is input to the estimator's noise signal as a measurement error. By implementing the digital controller as a microprocessor, the quantization error in the control input and other noises from external influences are interpreted as input noise.

다음으로 시스템 자체가 갖고 있는 파라미터의 변동, 비선형특성 그리고 외란 등을 묶어서 시스템의 외란으로 해석할 수 있다. 이와 같은 외란과 잡음을 감안하여 한축 서보시스템을 모델링하면 다음의 수학식 15와 같은 상태 방정식으로 쓸 수 있다.Next, it can be interpreted as the disturbance of the system by tying up fluctuations of parameters, nonlinear characteristics, and disturbance of the system itself. In consideration of such disturbance and noise, when modeling a single-axis servo system, it can be used as a state equation as shown in Equation 15 below.

여기서, A, B, F, C, x(k)는 다음과 같다.Where A, B, F, C, and x (k) are as follows.

상기 수학식에서 JM은 모터의 관성 모멘트, JL은 부하의 관성 모멘트, ωM은 모터의 속도, ωL은 부하의 속도, d는 외란, BM은 모터의 마찰 계수, Ksh는 정적 스프링 정수이다.In the above equation, J M is the moment of inertia of the motor, J L is the moment of inertia of the load, ω M is the speed of the motor, ω L is the speed of the load, d is disturbance, B M is the friction coefficient of the motor, and K sh is the static spring. Is an integer.

실제 XY 테이블 시스템에 잡음을 고려한 이산형 상태 방정식은 다음의 수학식 16과 같이 표현할 수 있다.Discrete state equations considering noise in an actual XY table system can be expressed as Equation 16 below.

상기 수학식 16에서 x(k)와 z(k), Φ, Γ1, Γ2, Γ3, Η는 다음과 같다.In Equation 16, x (k) and z (k), Φ, Γ 1 , Γ 2 , Γ 3 , Η are as follows.

이러한 시스템에 Kalman Filter의 알고리즘을 작용하여 최적 추정자를 설계한다. 이 때 Kalman 이득값은 정상 상태에서의 값으로 취하며 잡음에 대한 통계치는 응답 특성을 고려하여 적절한 값을 취한다. 이러한 Kalman Filter 알고리즘은 반복형 알고리즘으로 실현에 편리한 점이 있다. 그러면 Kalman Filter 잡은 신호의 통계적인 값들에 대하여 살펴보자.Kalman Filter's algorithm is applied to these systems to design the optimal estimator. At this time, the Kalman gain value is taken as the steady state value, and the noise statistics are appropriately taken in consideration of the response characteristics. The Kalman Filter algorithm is an iterative algorithm, which is convenient to realize. Let's take a look at the statistical values of the signal captured by the Kalman Filter.

먼저 출력에 부가되는 잡음은 엔코더의 비트수를 n이라고 할 때 위치 측정값이 ±360/2n만큼의 균일하게 분포된 오차를 갖게 된다. 여기에 엔코더의 펄스가 갖는 폭에서의 자체 오차가 감안되면 측정된 위치값은 ±360/2n+e만큼의 오차를 갖게 된다. 다음으로 제어 입력이 갖는 잡음은 한정된 비트 수를 갖는 점으로 인하여 입력 시호에 덧붙여지는 잡음이 있게 된다. 이러한 잡음들은 대개 시스템의 신호와는 독립적이고 정규 분포를 갖게된다. 이러한 점들을 감안하여 잡음에 대한 대략적인 통계 수치들을 구할 수 있다.First, the noise added to the output has a uniformly distributed error of ± 360/2 n when the number of bits of the encoder is n. If the self-error in the width of the encoder pulse is taken into account, the measured position value has an error of ± 360/2 n + e. Next, the noise of the control input has a finite number of bits, which adds noise to the input signal. These noises are usually independent of the system's signal and have a normal distribution. Given these points, we can obtain approximate statistics on noise.

다음으로 외란에 대한 추정을 할 수 있는 외란 추정자에 대하여 살펴보자. 추정하려는 외란에 대한 식으로 표현하면 다음의 수학식 17과 같다.Next, let's look at the disturbance estimator that can estimate the disturbance. If the expression for the disturbance to be estimated is expressed by the following equation (17).

위의 관계에서 외란들은 평균값이 영이므로 이 결과의 기대치를 취하면 다음의 수학식 18과 같다.In the above relationship, since the disturbances have a mean value of zero, the expected value of this result is expressed by Equation 18 below.

이상과 같이 구성된 관측자와 제어기를 포함하여 전제 제어시스템을 구성하면 도3과 같다.3, the entire control system including the observer and the controller configured as described above is configured.

앞에서 설명한 상태 변수와 외란을 추정할 수 있는 관측자를 이용하여 서보시스템의 제어기를 구성한다. 제어기는 위치제어기와 속도제어기 두 부분으로 나누어져있으며 위치제어기는 원하는 위치로의 제어를 하며 속도제어기는 전체시스템의 제어성능 개선에 설계 목표가 있다. 그러면 적분항을 포함한 제어 대상 시스템의 확장된 상태방정식을 구하고, 여기서 속도 제어기와 위치 제어기로 P와 PI를 구성하면 제어 입력은 다음의 수학식 19와 같다.The controller of the servo system is constructed by using the state variables described above and the observer who can estimate the disturbance. The controller is divided into two parts, the position controller and the speed controller, the position controller controls the desired position, and the speed controller aims to improve the control performance of the whole system. Then, the extended state equation of the control target system including the integral term is obtained. Here, if P and PI are configured by the speed controller and the position controller, the control input is as shown in Equation 19 below.

시스템의 기준 입력에 대한 출력의 전달 함수를 θL*라고 하면 θL과 θ*는 각각 다음의 수학식 20과 같다.If the transfer function of the output with respect to the reference input of the system is θ L / θ * , θ L and θ * are as shown in Equation 20 below.

상기한 수학식 20에서 보는 바와 같이, 전체 시스템을 안정화시키기 위해서는 두 제어기의 비례 이득을 적절히 조정해주면 된다.As shown in Equation 20, in order to stabilize the entire system, the proportional gains of the two controllers may be appropriately adjusted.

다음으로 외란 입력에 대한 출력의 전달 함수, R2(s)=θL/d는 다음의 수학식 21과 같다.Next, the transfer function of the output to the disturbance input, R 2 (s) = θ L / d is expressed by the following equation (21).

외란 입력에 대한 출력의 영향을 최소화하려면 외란 성분에 해당되는 주파수에 대하여 이득이 작도록 제어기의 이득값을 구해야 한다. 이는 영점의 적절한 선정에 따라 가능하다.To minimize the influence of the output on the disturbance input, the gain of the controller should be calculated so that the gain is small for the frequency corresponding to the disturbance component. This is possible by proper selection of the zero point.

이상과 같은 제어기의 설계 방법을 이용하여 XY 테이블 각 축의 제어기를 구성하고 구성된 제어기의 기준 입력은 추적하려는 목표 궤적으로부터 CCC(Cross Coupled Controller)를 이용하여 각 축의 윤곽 오차를 계산한다. 각 축의 윤곽 오차가 위치제어기의 오차 입력이 된다.A controller of each axis of the XY table is configured using the design method of the controller as described above, and the reference input of the configured controller calculates the contour error of each axis using a cross coupled controller (CCC) from a target trajectory to be tracked. The contour error of each axis is the error input of the position controller.

앞에서 설명한 바와 같이, 본 발명에 의한 제어기는 관측자, CCC, 그리고 서보제어기의 세 부분으로 구성된다. 이들의 하드웨어 구성에 대하여 살펴보면 다음과 같다.As described above, the controller according to the present invention is composed of three parts: an observer, a CCC, and a servo controller. Looking at the hardware configuration of them as follows.

대상 시스템에는 각 축의 출력 위치를 측정할 수 있는 선형 엔코더가 부착되어 있다. 선형 엔코더의 값을 4 체배 회로에 입력하여 엔코더의 응답 성능을 4배로 올렸다. 4체배 회로의 출력 펄스를 카운터(C1)에 입력하여 카운터 값으로 현재 위치에 대한 정보를 마이크로프로세서가 인지한다.The target system is equipped with a linear encoder that can measure the output position of each axis. The response of the encoder is quadrupled by inputting the value of the linear encoder into the multiplication circuit. The output pulse of the multiplication circuit is input to the counter C1, and the microprocessor recognizes information about the current position as the counter value.

다음으로 모터의 저속에서의 회전 속도에 대한 제어 범위를 넓히기 위하여 마이크로프로세서의 클럭 펄스를 적절히 분주하여 이를 새로운 카운터(C2)의 입력 펄스로 활용하며, 이 카운터는 엔코더의 펄스신호에 의하여 항상 이 값이 다른 메모리(M1)에 저장됨과 동시에 카운터는 영으로 리셋된다. 제어기는 이러한 두가지 카운터 값을 활용하여 보다 정확한 현재 위치를 계산한다. 이를 설명하면 다음과 같다.Next, in order to broaden the control range for the rotational speed at low speed of the motor, the clock pulse of the microprocessor is appropriately divided and used as the input pulse of the new counter (C2), which is always set by the pulse signal of the encoder. The counter is reset to zero at the same time as it is stored in this other memory M1. The controller uses these two counter values to calculate a more accurate current position. This is described as follows.

기계적인 시스템의 시정수가 PWM 주기에 비하여 매우 큰 경우, 몇 개의 샘플링동안에는 속도의 변화가 없다고 볼 수 있다. 그러므로 매 샘플링 주기마다 읽어들이는 엔코더 카운터(C1) 값의 변화량은 거의 일정하다고 볼 수 있다. 고속의 경우에는 C1 값의 차이가 비례적으로 크지가 않다. 그러나 저속의 경우에는 C1 값의 차이는 크지 않다 하더라도 이 차에 대한 비율은 매우 크게 된다. 따라서 이 경우 정확한 현재 위치 측정이 어렵다. 특히, 초 저속의 경우에는 샘플링 주기내에 새로운 엔코더 펄스가 하나도 없을 수가 있다. 이러한 오차에 의하여 나타나는 펄스 주기의 변동보다는 더 정밀하게 위치 측정을 할 수 없기 때문이다.If the time constant of the mechanical system is very large compared to the PWM period, there is no change in speed during some sampling. Therefore, it can be said that the amount of change of the encoder counter C1 value read out every sampling period is almost constant. At high speeds, the difference between C1 values is not proportionally large. At low speeds, however, even if the difference in C1 values is not large, the ratio for this difference is very large. Therefore, accurate current position measurement is difficult in this case. In particular, at very low speeds, there may be no new encoder pulses within the sampling period. This is because the position measurement cannot be performed more precisely than the variation of the pulse period caused by this error.

4 체배 회로를 사용한 경우 한 펄스 사이의 회전자 위치각은 다음의 수학식 22와 같다.In the case of using the multiplication circuit, the rotor position angle between pulses is expressed by Equation 22 below.

상기 수학식 22에서 MUL은 체배수이다.In Equation 22, MUL is a multiplication factor.

만일 4 체배 회로를 쓰면 MUL을 4로 두고, 체배 회로를 쓰지 않는 경우에는 MUL을 1로 두면 된다. 또한 하나의 펄스도 한 샘플링 주기 사이에 들어오지 않았다면 카운터 C1의 값은 변동이 없다. M1에는 직전의 엔코더 펄스 사이 카운터 수를 저장하고 있으므로 속도의 변화가 없다고 전제하면 상기한 관계식을 그대로 쓸 수 있다.If the multiplication circuit is used, the MUL is set to 4. If the multiplication circuit is not used, the MUL is set to 1. In addition, the counter C1 is unchanged if no pulse is entered between one sampling period. Since M1 stores the number of counters between the previous encoder pulses, the above relation can be used as long as there is no change in speed.

이상의 방법을 이용하여 측정한 위치각을 이용하여 관측자를 구성한다. 관측자에 입력되는 엔코더 신호 중 카운터(C1)의 아래 N개 비트가 회전 위치를 알려주는 역할을 한다. 그리고 이 카운터의 비트 수는 구동 가능한 최고 회전 속도와 샘플링 주기에 따라 결정된다. 즉 카운터의 비트수(NC1)는 다음의 수학식 23을 만족하여야 한다.The observer is constructed using the position angle measured using the above method. The lower N bits of the counter C1 among the encoder signals input to the observer inform the rotation position. The number of bits in this counter is determined by the highest possible rotational speed and sampling period. That is, the number of bits NC1 of the counter must satisfy the following expression (23).

그리고 메모리 M1의 비트수는 C2의 비트수와 동일하게 구성하여야 한다.The number of bits of the memory M1 should be configured equal to the number of bits of the C2.

구성된 관측자로부터 상태 변수의 한 스탭 앞선 추정치를 구하고 이를 이용하여 제어 입력을 계산한다.From the configured observer, one-step prior estimates of the state variables are obtained and used to calculate the control inputs.

본 발명은 궤적 운동을 하는 다축 형태의 시스템에 있어서 윤곽 오차 및 추적 오차를 크게 줄일 수 있는 위치제어기에 관한 것으로 시스템의 정밀도를 크게 개선하여 가공 표면의 가공 정도가 목표면과 동일할 수 있다. 본 발명은 다축 시스템에 관한 것으로서 CNC 공작 기계 뿐만 아니라, 기본 운동인 XY 테이블 등 이와 유사한 구조 및 동작 형태를 가지는 기계에 적용할 수 있다.The present invention relates to a position controller that can significantly reduce the contour error and tracking error in a multi-axis system having a trajectory motion, and can greatly improve the precision of the system so that the degree of processing of the machined surface can be the same as the target surface. The present invention relates to a multi-axis system, and can be applied not only to CNC machine tools but also to machines having similar structures and motion forms, such as XY tables, which are basic motions.

Claims (2)

다축 시스템의 윤곽 오차 보상 기능을 가지는 위치 제어기에 있어서,A position controller having a contour error compensation function of a multi-axis system, 현재 위치 P에서 각 축의 방향으로 직선을 연장하여 궤적과 만나는 점이 있다고 가정하고 이 두 점을 A,B, 이 점과 현재 위치와의 거리를 각각 Δx, Δy라 한다. 두 삼각형 ABP와 PP*C는 닮은 꼴이므로 다음의 수학식이 성립할 때,Assuming that there is a point that meets the trajectory by extending a straight line in the direction of each axis at the current position P, these two points are A, B, and the distance between the point and the current position is Δx and Δy, respectively. The two triangles ABP and PP * C are similar, so the following equation holds: 다음의 수학식에 의하여 전체 윤곽 오차 및 각 축의 윤곽 오차 크기를 구하는 것임을 특징으로 하는 다축 시스템의 윤곽 오차 보상 기능을 가지는 위치 제어기.A position controller having a contour error compensation function of a multi-axis system, characterized by obtaining the total contour error and the magnitude of the contour error of each axis by the following equation. 제1항에 있어서,The method of claim 1, 적분기를 포함한 PI 제어 형태로 위치 제어기를 구성하되, 디지털 제어기에서 제어 입력이 계산되어 출력되는 시점이 입력 시점보다 느린 문제를 해결하기 위하여, 다음 샘플링 순간에서의 상태 변수값 즉 한 스텝 앞선 상태 변수를 추정하여 사용하는 것임을 특징으로 하는 다축 시스템의 윤곽 오차 보상 기능을 가지는 위치 제어기.Configure the position controller in the form of PI control including integrator, but in order to solve the problem that the control input is calculated and output from the digital controller is slower than the input time, the state variable value at the next sampling moment, that is, the state variable one step ahead Position controller having a contour error compensation function of the multi-axis system, characterized in that to estimate and use.
KR1019990039645A 1999-09-15 1999-09-15 Position Controlling Method For Compensationg For Contour Error in Multi-axes System KR100343565B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990039645A KR100343565B1 (en) 1999-09-15 1999-09-15 Position Controlling Method For Compensationg For Contour Error in Multi-axes System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990039645A KR100343565B1 (en) 1999-09-15 1999-09-15 Position Controlling Method For Compensationg For Contour Error in Multi-axes System

Publications (2)

Publication Number Publication Date
KR20010027751A true KR20010027751A (en) 2001-04-06
KR100343565B1 KR100343565B1 (en) 2002-07-19

Family

ID=19611706

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990039645A KR100343565B1 (en) 1999-09-15 1999-09-15 Position Controlling Method For Compensationg For Contour Error in Multi-axes System

Country Status (1)

Country Link
KR (1) KR100343565B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170000583A (en) 2015-06-24 2017-01-03 한국항공우주산업 주식회사 Separate multi axis angle measuring equipment
CN114740800A (en) * 2022-03-09 2022-07-12 天津大学 Double-sliding-mode direct contour control method for parameter curve machining path

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106125674B (en) * 2016-08-03 2018-07-13 大连理工大学 A kind of high-precision real time profile error estimation
CN106125673B (en) * 2016-08-03 2018-06-15 大连理工大学 Based on the approximate profile errors real-time estimation method of space circular arc

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170000583A (en) 2015-06-24 2017-01-03 한국항공우주산업 주식회사 Separate multi axis angle measuring equipment
CN114740800A (en) * 2022-03-09 2022-07-12 天津大学 Double-sliding-mode direct contour control method for parameter curve machining path
CN114740800B (en) * 2022-03-09 2024-05-24 天津大学 Double-sliding-mode direct contour control method of parameter curve processing path

Also Published As

Publication number Publication date
KR100343565B1 (en) 2002-07-19

Similar Documents

Publication Publication Date Title
US6252368B1 (en) Numerically controlled system and backlash compensation device for use with the system
Cheng et al. Motion controller design for contour-following tasks based on real-time contour error estimation
KR101688360B1 (en) Servo control device
JP3129622B2 (en) Quadrant projection correction method in full closed loop system
US9715225B2 (en) Numerical controller for smoothing tool path in operation based on table format data
US4603487A (en) Method of compensating a profiling direction of a profiling machine
JPH0569275A (en) Numerical control device
JPH03260708A (en) Position error correcting method
JP2008210273A (en) Method of compensating friction, friction compensator, and motor control device
US5194790A (en) Control device for controlling a servo motor
US4890046A (en) Numerical control apparatus
Li et al. Contouring compensation control based on high accuracy contour error estimation for multi-axis motion systems
KR100450455B1 (en) Servo control method
KR100343565B1 (en) Position Controlling Method For Compensationg For Contour Error in Multi-axes System
CN108062071A (en) The real-time assay of parameter curve trace track profile errors
Lee et al. Real-time compensation of two-dimensional contour error in CNC machine tools
Guo et al. A rapid and accurate positioning method with linear deceleration in servo system
EP0487738A1 (en) System for correcting quantity of deformation of tool
Shi et al. A novel contouring error estimation for three-dimensional contouring control
KR100249354B1 (en) Method of contour error modeling for cross-coupled control of cnc machines
JPS61131007A (en) Numerical control for machine tool
JP2003157114A (en) Method and device for lost motion correction
Kim et al. Real-time tool path modification for machine tool contour error reduction
Medyk et al. CNC machine tool error compensation system implementation strategies and their constraints
JPH0623928B2 (en) Robot hand trajectory correction method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130531

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140530

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20150526

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20180629

Year of fee payment: 17

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 18