[go: up one dir, main page]

KR0161002B1 - Circular interpolation method of robot - Google Patents

Circular interpolation method of robot Download PDF

Info

Publication number
KR0161002B1
KR0161002B1 KR1019920018346A KR920018346A KR0161002B1 KR 0161002 B1 KR0161002 B1 KR 0161002B1 KR 1019920018346 A KR1019920018346 A KR 1019920018346A KR 920018346 A KR920018346 A KR 920018346A KR 0161002 B1 KR0161002 B1 KR 0161002B1
Authority
KR
South Korea
Prior art keywords
arc
calculation step
deceleration
acceleration
circular
Prior art date
Application number
KR1019920018346A
Other languages
Korean (ko)
Other versions
KR940008821A (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 KR1019920018346A priority Critical patent/KR0161002B1/en
Publication of KR940008821A publication Critical patent/KR940008821A/en
Application granted granted Critical
Publication of KR0161002B1 publication Critical patent/KR0161002B1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

본 발명은 원호상의 시작점과 중간점 및 종점위치를 판독한 후 원호보간 실행시 미소원호 각도를 △θ라하고 원호보간 실행중 원호의 각도를 θ라 할 때 △θ가 (θ-Σ△θ(i))보다 큰가를 판단하여 가감속 여부를 인식하는 판단스텝과, 상기 판단스텝에서 가감속이 없는 경우 매샘플링시간마다 원호상의 좌표를 구하는 제1 좌표 계산스텝과, 상기 판단스텝에서 가감속이 있는 경우 매 샘플링 시간마다 원호상의 X,Y좌표를 Cosθ와 Sinθ로 계산하는 제2 좌표계산스텝과, 상기 제2 계산 스텝에서 원호상의 좌표를 구한 후 각축을 지수함수 가감속을 행하여 가감속이 있는 경우 원호상의 좌표를 구하는 제3좌표 계산스텝과, 상기 제3 좌표계산 스텝에서 원호상의 좌표를 구할 때 발생하는 에러를 보상하는 에러보상스텝과, 상기 스텝에서 에러가 보상된 원호상의 좌표를 매샘플링 시간마다 임의의 시점에서의 원호보간을 위해 각축의 목표 위치를 구하는 목표위치 계산스텝과, 상기 목표위치 계산스텝을 통해 판독한 각축의 현재위치값을 구한 후 X,Y축의 위치 편차를 구하는 위치 편차계산 스텝과, 상기 위치편차 계산 스텝에서 삽출된 위치편차에 대해서 비례적분 미분 피드퍼워드(Feedforward)제어를 행하여 서보모터를 제어하는 제어스텝으로 구성되어 직각좌표의 X-Y평면에서 로보트의 손끝이 원호를 따라 움직이며 원호의 속도 분포가 지수함수 형태가 되어 원의 시작과 끝에서도 진동이 발생하지 않고 부드러운 동작이 가능하며, 이산시간상태 방정식에 의해 지수함수 가감속을 행하기 때문에 샘플링 시간을 줄일 수 있어 원호의 정도가 향상되는 장점이 있다.According to the present invention, when the starting point, the intermediate point and the end point position of the circular arc are read, when the circular interpolation is executed, the angle of the small arc is Δθ and when the angle of the circular arc is θ during the circular interpolation, Δθ is (θ-ΣΔθ ( i) a judgment step for recognizing whether or not acceleration / deceleration is greater than the first step; a first coordinate calculation step for obtaining coordinates of an arc at every sampling time if there is no acceleration / deceleration in the determination step; and an acceleration / deceleration at the determination step. The second coordinate calculation step of calculating the X and Y coordinates of the circular arc in Cosθ and Sinθ at each sampling time, and the acceleration and deceleration of each axis after the coordinates of the circular arc are obtained in the second calculation step. A third coordinate calculation step for obtaining coordinates, an error compensation step for compensating for an error occurring when obtaining coordinates on an arc in the third coordinate calculation step, and a left circular arc on which the error is compensated for in the step. The target position calculation step of obtaining the target position of each axis for circular interpolation at any point of time at each sampling time, and the current position value of each axis read through the target position calculation step are obtained, and then the position deviation of the X and Y axes is calculated. It consists of a control step for controlling the servo motor by performing proportional integral derivative feedforward control on the position deviation calculation step to be obtained and the position deviation inserted in the position deviation calculation step. It moves along this arc and the velocity distribution of the arc becomes exponential function, so smooth movement is possible without vibration at the beginning and the end of the circle, and the sampling time is increased because the exponential function is accelerated and decelerated by the discrete time state equation. Since it can be reduced, the degree of arc is improved.

Description

로보트의 원호보간방법Circular interpolation method of robot

제1도는 X-Y 평면에서 원호보간시 X,Y축의 속도 Vx, Vy를 나타낸 그래프.1 is a graph showing the speeds Vx and Vy of the X and Y axes during circular interpolation in the X-Y plane.

제2도는 X-Y 평면에서 원호보간시 원의 속도를 지수함수적으로 가감속한 경우 매 샘플링 시간마다 이동해야 할 원호를 나타낸 개념도.FIG. 2 is a conceptual diagram showing an arc to be moved at every sampling time when the velocity of the circle is exponentially accelerated and decelerated in the X-Y plane.

제3도는 X-Y 평면에서 가감속이 없는 경우 매 샘플링 시간마다 이동해야 할 원호의 길이를 나타낸 개념도.3 is a conceptual diagram showing the length of an arc to be moved every sampling time in the absence of acceleration and deceleration in the X-Y plane.

제4도는 본 발명에 의한 로보트의 원호보간 방법을 실현하기 위한 위치제어 시스템의 개요도.4 is a schematic diagram of a position control system for realizing a robot circular interpolation method according to the present invention;

제5도는 본 발명에서 가감속이 없는 경우 매 샘플링시간마다 원호를 계산하기 위한 개념도.5 is a conceptual diagram for calculating an arc every sampling time when there is no acceleration and deceleration in the present invention.

제6도는 본 발명에 의한 로보트 원호보간 방법의 데이터 흐름도.6 is a data flow diagram of the robot circular interpolation method according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 마이크로프로세서 2 : 디지탈/아날로그변환기1: Microprocessor 2: Digital / Analog Converter

3 : 서보제어부 4 : 서보모터3: Servo controller 4: Servo motor

5 : 타코제너레이터 6 : 엔코더5: taco generator 6: encoder

7 : 업/다운카운터 8 : 타이머7: Up / Down Counter 8: Timer

본 발명은 로보트의 원호보간 방법에 관한 것으로서, 특히 2개 이상의 아암을 가진 다관절형 로보트에 있어서 아암의 손끝(End-Effictor)을 현재 위치에서 목표위치까지 원호이송을 위한 방법에 관한 것이다.The present invention relates to a circular interpolation method of a robot, and more particularly, to a method for circular arc transfer from the current position to the target position of the arm tip (End-Effictor) in the articulated robot having two or more arms.

일반적으로 로보트가 원호를 따라 보간할 때 X-Y 평면에서의 원에 따른 X, Y축의 속도분포(Vx, Vy)는 제1도에 도시된 바와 같이,In general, when the robot interpolates along an arc, the velocity distributions Vx and Vy along the circle in the X-Y plane are shown in FIG.

로 표시된다. 여기서 A는 원호 보간시 각축의 최대 속도를 나타낸다.Is displayed. Where A represents the maximum velocity of each axis during circular interpolation.

제1도에 도시된 그래프를 통해 알 수 있듯이 원호의 시작점에서 Y축은 Sin함수 형태로 속도가 변하기 때문에 진동이 발생하지 않으나 X축의 속도는 Cosine 함수 형태로 변하기 때문에 속도가 영(ZERO)에서 최고속도 A까지 급격히 변하여 진동이 발생되고, 마찬가지로 원호의 임의의 점에서(0∼360도 사이의 임의의 점) 정지시 상기 식(1)에서 X, Y축의 속도가 영(ZERO)이 되어야 함으로 진동이 발생되기 때문에 고속원호 보간시 진동량이 크고 원의 왜곡도 심하게 발생하는 문제점이 있었다.As can be seen from the graph shown in FIG. 1, since the Y-axis changes speed in the form of Sin function at the starting point of the circular arc, no vibration occurs, but the velocity of the X-axis changes in the form of Cosine function, so the speed is the maximum velocity at zero. The vibration suddenly changes to A, and vibration occurs. Similarly, the vibration of the X and Y axes should be zero (ZERO) in Equation (1) when stopping at any point of the arc (any point between 0 and 360 degrees). Because of the high speed circular interpolation, the amount of vibration is large and the distortion of the circle is also severely generated.

따라서 본 발명은 상기와 같은 제반 결점을 해결하기 위해 원호 이송시 속도분포를 지수함수 가감속 형태로 행함으로써 고속의 원호보간시 원호의 시작과 끝에서 발생하는 진동을 방지하고, 고속의 원호보간이 가능함과 동시에 속도 분포를 지수함수 가감속 형태로할 때 이산시간 상태 방정식에 의해 실현함으로써 샘플링 시간을 단축할 수 있어 고정도의 원호보간을 가능하게 하는 로보트의 원호보간 방법을 제공하는데 그 목적이 있다.Therefore, the present invention prevents the vibration occurring at the beginning and the end of the circular arc during high speed circular interpolation by performing the speed distribution in the form of exponential function during acceleration of circular arc in order to solve the above-mentioned drawbacks. In addition, it is possible to provide a robotic circular interpolation method that enables high-precision circular interpolation by reducing the sampling time by realizing the speed distribution in the form of exponential acceleration / deceleration.

상기 목적을 달성하기 위하여 본 발명에 따른 하는 로보트 원호보간 방법은 원호상의 시작점과 중간점 및 종점위치를 판독한 후 원호보간 실행시 미소원호 각도를 △θ라하고 원호보간 실행중 원호의 각도를 θ라 할 때 △θ가 (θ-Σ△θ(i))보다 큰가를 판단하여 가감속 여부를 인식하는 판단스텝과, 상기 판단스텝에서 가감속이 없는 경우 매샘플링시간마다 원호상의 좌표를 구하는 제1 좌표 계산스텝과, 상기 판단스텝에서 가감속이 있는 경우 매 샘플링 시간마다 원호상의 X,Y좌표를 Cosθ와 Sinθ로 계산하는 제2 좌표계산스텝과, 상기 제2계산 스텝에서 원호상의 좌표를 구한 후 각축을 지수함수 가감속을 행하여 가감속이 있는 경우 원호상의 좌표를 구하는 제3좌표 계산스텝과, 상기 제3 좌표계산스텝에서 원호상의 좌표를 구할 때 발생하은 에러를 보상하는 에러보상스텝과, 상기스텝에서 에러가 보상된 원호상의 좌표를 매샘플링 시간마다 임의의 시점에서의 원호보간을 위해 각축의 목표 위치를 구하는 목표위치 계산스텝과, 상기 목표위치 계산스텝을 통해 판독한 각축의 현재위치값을 구한 후 X,Y축의 위치 펀차를 구하는 위치 편차계산 스텝과, 상기 위치편차 계산 스텝에서 산출된 위치편차에 대해서 비례적분 미분제어 및 피이드퍼워드(Feedforward) 제어를 행하여 서보모터의 속도를 제어하는 제어스텝으로 이루어진 것을 특징으로 한다.In order to achieve the above object, the robot circular interpolation method according to the present invention reads the starting point, the intermediate point, and the end point position of the circular arc and the angle of the circular arc during circular interpolation is Δθ and the angle of circular arc during circular interpolation is θ. In this case, a judgment step of judging whether or not Δθ is greater than (θ-ΣΔθ (i)) to recognize acceleration or deceleration, and the first step of obtaining arc coordinates for each sampling time when there is no acceleration / deceleration in the determination step. A coordinate calculation step, a second coordinate calculation step of calculating X and Y coordinates on the arc with Cosθ and Sinθ every sampling time when there is acceleration / deceleration in the determination step, and after obtaining the coordinates on the arc in the second calculation step, The third coordinate calculation step of obtaining the coordinates on the arc when the acceleration / deceleration is performed by using the exponential function acceleration and deceleration is compensated for, and the error occurred when obtaining the coordinates on the arc in the third coordinate calculation step. Is an error compensation step, a target position calculation step of obtaining a target position of each axis for circular interpolation at any point in time at every time, and the coordinates of the circular arc whose error is compensated for, and reading through the target position calculation step. After calculating the current position value of each axis, the position deviation calculation step of calculating the position punctuation of the X and Y axes, and the proportional integral derivative control and the feedforward control are performed on the position deviation calculated in the position deviation calculation step. Characterized in that the control step for controlling the speed of the motor.

이하, 본 발명의 일실시예를 도면을 참조하여 상세히 설명한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

제1도는 X-Y 평면에서 원호보간시 X,Y축의 속도 분포를 도시한 것으로서 원의 시작점과 임의의 끝점에서 진동 발생 관계를 설명한 것이고, 제2도는 직각좌표상에서 원호보간시 속도분포를 지수함수 가감속한 경우 매 샘플링 시간마다 X-Y 평면에서 움직여야 할 증분양을 나타낸 것이며, 제3도는 가감속이 없는 경우의 원호 보간시 매 샘플링 시간마다 X-Y 평면에서 움직여야 할 증분양을 나타낸 것이다. 제4도는 본 발명에서 사용되는 위치제어 시스템을 나타낸 것으로, (1)은 속도 명령을 출력하는 마이크로프로세서이고, (2)는 상기 마이크로프로세서에서 출력된 디지탈값의 속도명령을 아날로그값으로 변환하는 디지탈/아날로그 변환기이다. 그리고 (3)은 모터(4)에 흐르는 전류(Ix)와 모터의 속도에 비례하여 발생되는 전압(Vox)을 타코제네레이터(5)의 출력을 귀환하여 모터에 흐르는 전류와 속도제어를 위한 서보제어부이며, (6)은 모터의 회전에 따라 펄스를 발생하는 엔코더이고, (7)은 업/다운 카운터로서 모터의 회전 방향에 따라 엔코더(6)에서 발생하는 펄스를 증감하는 카운터로서 마이크로 프로세서(1)에 모터의 현재 위치를 제공하며, (8)은 일정한 주기마다 상기 마이크로 프로세서(1)에 인터럽트를 걸어주기 위한 타이머로써, 상기 각 구성 장치는 한 축에 대해서만 설명한 것이다.1 is a diagram illustrating the velocity distribution of the X and Y axes during circular interpolation in the XY plane, and illustrates the relationship between the occurrence of vibrations at the starting point and an arbitrary end point of the circle, and FIG. 2 is an exponential acceleration / deceleration of the velocity distribution during circular interpolation on a rectangular coordinate. In this case, the incremental amount to be moved in the XY plane at every sampling time is shown, and FIG. 3 shows the incremental amount to be moved in the XY plane at every sampling time during circular interpolation without acceleration and deceleration. 4 is a position control system used in the present invention, (1) is a microprocessor for outputting a speed command, and (2) a digital command for converting a speed command of a digital value output from the microprocessor to an analog value. / Analog converter. And (3), the servo control unit for controlling current and speed flowing through the motor by returning the output of the taco generator 5 to the current Ix flowing in the motor 4 and the voltage Vox generated in proportion to the speed of the motor. (6) is an encoder for generating a pulse in accordance with the rotation of the motor, (7) is an up / down counter as a counter for increasing or decreasing the pulse generated in the encoder (6) in accordance with the rotation direction of the motor microprocessor (1). (8) is a timer for interrupting the microprocessor 1 at regular intervals, and each of the components is described only for one axis.

다음은 제4도에 도시된 바와 같이 위치제어 시스템을 가진 로보트의 원호 보간 방법을 제6도에 도시된 데이터 흐름도에 따라 상세히 기술한다.Next, a circular interpolation method of a robot having a position control system as shown in FIG. 4 will be described in detail according to the data flow diagram shown in FIG.

제6도에 도시된 데이터 흐름도는 ½원을 보간하는 방법을 설명한 것으로서, 원호 보간을 하기 위해서는 스텝 S1과 같이 원호상의 시작점(A), 중간점(B), 종점(C)위치를 판독하고 원호 보간 방향을 읽어 들인다. 현재 위치 A(X1, Y1)에서 가감속이 없는 경우에 이동해야 할 원호상의 점을 아래와 같이 구한다.The data flow diagram shown in FIG. 6 describes a method of interpolating a ½ circle. To perform circular interpolation, as shown in step S1, the positions of the starting point (A), the middle point (B) and the end point (C) on the arc are read and the circular arc is read. Read the interpolation direction. Find the point on the arc to be moved when there is no acceleration / deceleration at the current position A (X1, Y1) as follows.

따라서 원호상의 2번째 점은 아래와 같이 구해진다.Therefore, the second point on the arc is obtained as follows.

따라서 (2)식을 이용하여 (3)식을 다시 쓰면 (4)식과 같이 된다.Therefore, if you rewrite equation (3) using equation (2), you will get something like equation (4).

여기서 Cos△θ Sin△θ는 일정(Constant)하기 때문에 일정한 값을 가지므로Since CosΔθ SinΔθ is constant, it has a constant value.

로 놓고 (4)식을 일반적으로 쓰면 아래와 같이 된다.In general, the equation (4) is written as follows.

여기서 K는 샘플링 시간마다 증가된다.Where K is increased for each sampling time.

여기서 x(0)=X1, Y(0)=Y1이고, X(0)는 원호의 시작점의 X좌표 X1이고 Y(0)는 원호의 시작점의 Y좌표 Y1이다.Where x (0) = X1, Y (0) = Y1, X (0) is X coordinate X1 of the starting point of the arc and Y (0) is Y coordinate Y1 of the starting point of the arc.

상기 식에 따라 원호보간을 실행중 원호의 각도를 θ라하고, 미소원호 각도를 △θ라 할 때, (θ-Σ△θ(i))△θ을 만족하는지 스텝S2에서 판단한다. 상기 스텝S2에서는 (θ-Σ△θ(i))△θ이면 스텝S3에서는 상기 식의 X(K+1)과 (K+1)를 Cosθ, Sinθ로 변환하고, 그리고 (θ-Σ△θ(i))△θ일 때, 즉 가감속이 없는 경우 스텝S4에서는 상기한 식(6)식에 의해 원호상의 점(중간목표위치)를 구할 수 있고 X-Y 평면에서 제3도와 같은 형태가 된다. 따라서 (6)식에 의해 가감속이 없는 경우의 원호상에서의 X,Y축의 위치 중분양을 구한 후 스텝S5에서는 아래식에 의해 각축의 원호상의 좌표값을 구하면 X-Y평면상에서의 원의 속도 분포가 제2도에 도시된 바와 같이 지수함수 가감속 형태가 된다.According to the above formula, it is determined in step S2 that (θ-ΣΔθ (i)) Δθ is satisfied when the angle of the circular arc is θ while the circular arc angle is Δθ. In step S2, if (θ-ΣΔθ (i)) Δθ, then in step S3, X (K + 1) and (K + 1) of the above formula are converted into Cosθ and Sinθ, and (θ-ΣΔθ (i)) Δθ, i.e., when there is no acceleration / deceleration, in step S4, the point (intermediate target position) on the arc can be obtained by the above expression (6), and has the form shown in FIG. 3 in the XY plane. Therefore, after calculating the position distribution of the X and Y axes on the arc in the absence of acceleration and deceleration according to the equation (6), in step S5, when the coordinate values on the arc of each axis are calculated by the following equation, the velocity distribution of the circle on the XY plane is zero. As shown in FIG. 2, the exponential acceleration and deceleration forms.

여기서 A는 정수이며, A가 크면 지수함수의 시정수가 크게 되어 가감속 시간이 길어지고 A가 작으면 지수함수의 시정수가 작아져서 가감속 시간이 짧아진다. 따라서 서보모터에 부탁된 기구부하에 따라 최적이 되도록 스텝S6에서는 상기 식(7)(8)을 계산시 나눗셈 때문에 생기는 에러를 보상하여야 정확한 원호 보간이 이루어지며 아래와 같은 방법으로 보상한다.Here, A is an integer. If A is large, the time constant of the exponential function becomes large, and the acceleration / deceleration time becomes long. If A is small, the time constant of the exponential function becomes small and the acceleration / deceleration time becomes short. Therefore, in step S6, in order to be optimal according to the mechanical load requested to the servomotor, an accurate circular interpolation is made only by compensating for an error caused by division in calculating Equations (7) and (8).

즉, [X(K+1) - Fox(K)]/A을 실행했을 때 몫을 Q1(K), 나머지를 R2(K)라 하면 K+1번째에는 X(K+1) 대신 X(K+1) + R1(K)로 대치하여 식7을 계산한다. 마찬가지 방법으로 Y축에 대해서도 [Y(K+1) - Foy(K)]/A을 실행했을 때 몫을 Q2(K), 나머지를 R2(K)라 하면 K+1번째에는 Y(K+1)대신 Y(K+1) + R2(K)로 대치하여 식8을 계산한다.That is, when [X (K + 1)-Fox (K)] / A is executed, the quotient is Q1 (K) and the remainder is R2 (K). Calculate Eq. 7 by replacing K + 1) + R1 (K). In the same way, when [Y (K + 1)-Foy (K)] / A is executed for the Y axis, the quotient is Q2 (K) and the remainder is R2 (K). 1) Calculate Equation 8 by replacing Y (K + 1) + R2 (K) instead.

매 샘플링 시간마다 임의 시점에서의 원호 보간을 위해 스텝S7에서 각축의 목표 위치를 아래식에 의해 구한다.In order to perform circular interpolation at any point in time at each sampling time, the target position of each axis is obtained by the following equation.

따라서 임의의 K시점에서 각축마다 업/다운 카운터에서 읽은 각축의 현재 위치값을 Cx(K), Cy(K)라하면 스텝S8에서는 임의의 K시점에서 X,Y축의 위치 편차 Pεx(K), Pεy(K)는 아래와 같이 계산하여 구한다.Therefore, if the current position value of each axis read by the up / down counter for each axis at any time K is Cx (K), Cy (K), in step S8, the position deviation Pεx (K), Pεy (K) is calculated as below.

따라서 스텝S9에서는 각축의 위치편차에 대해 비례, 적분, 미분 피드퍼워드(Feedforward)제어를 행하며 아래와 같이 계산한다.Therefore, in step S9, proportional, integral, and differential feedforward control is performed on the positional deviation of each axis, and is calculated as follows.

여기서 T는 샘플링 시간을 나타내고 Dx(K), Dy(K)는 X,Y축의 디지탈/아날로그 변환기로 입력되는 값이고, Kpx,Kpy는 각축의 비례(p)게인이며, Kix, Kiy는 각축의 적분(Ⅰ)게인이다. 또한 Kdx, Kdy는 각축의 미분(D) 게인이며 Kfx, Kfy는 각축의 피드퍼워드(Feedforward)(F)게인이다. 각축의 비례적분(PID), 피드퍼워드(Feedforward) 게인은 서보모터에 부착된 기구부하의 운동상태가 최적이 되도록 한 후 나아가서 스텝S10에서 최종목표위치 인가를 판별하여 최종위치가 아니면 상기 스텝S2로 복귀되고, 최종위치이면 원호보간 수행을 종료한다.Where T is the sampling time, Dx (K) and Dy (K) are the values input to the digital / analog converter on the X and Y axes, Kpx and Kpy are the proportional gains of each axis, and Kix and Kiy are the Integral (I) gain. In addition, Kdx and Kdy are derivative gains of each axis, and Kfx and Kfy are Feedforward gains of each axis. The proportional integral (PID) and the feedforward gain of each axis are made to optimize the motion state of the mechanical load attached to the servomotor. Furthermore, in step S10, it is determined whether the final target position is applied. If it is the last position, the circular interpolation is completed.

상술한 본 발명에 의하면 직각좌표의 X-Y평면에서 로보트의 손끝이 원호를 따라 움직이며 원호의 속도 분포가 지수함수 형태가 되어 원의 시작과 끝에서도 진동이 발생하지 않고 부드러운 동작이 가능하며, 이산시간상태 방정식에 의해 지수함수 가감속을 행하기 때문에 샘플링 시간을 줄일 수 있어 원호의 정도가 향상되는 장점이 있다.According to the present invention described above, the fingertips of the robot move along the arc in the XY plane of the rectangular coordinates, and the velocity distribution of the arc becomes an exponential function, so that smooth operation is possible without vibration at the beginning and the end of the circle. Since the exponential function acceleration and deceleration is performed by the state equation, the sampling time can be reduced, and the degree of arc is improved.

Claims (1)

원호상의 시작점과 중간점 및 종점위치를 판독한 후 원호보간 실행시 미소원호 각도를 △θ라하고 원호보간 실행중 원호의 각도를 θ라 할 때 △θ가 (θ-Σ△θ(i))보다 큰가를 판단하여 가감속 여부를 인식하는 판단스텝과, 상기 판단스텝에서 가감속이 없는 경우 매 샘플링시간마다 원호상의 좌표를 구하는 제1 좌표 계산스텝과, 상기 판단스텝에서 가감속이 있는 경우 매 샘플링 시간마다 원호상의 X,Y좌표를 Cosθ와 Sinθ로 계산하는 제2 좌표계산스텝과, 상기 제2계산 스텝에서 원호상의 좌표를 구한 후 각축을 지수함수 가감속을 행하여 가감속이 있는 경우 원호상의 좌표를 구하느 제3좌표 계산스텝과, 상기 제3 좌표계산 스텝에서 원호상의 좌표를 구할 때 발생하는 에러를 보상하는 에러보상스텝과, 상기 에러보상스텝에서 에러가 보상된 원호상의 좌표를 매샘플링 시간마다 임의의 시점에서의 원호보간을 위해 각축의 목표 위치를 구하는 목표위치 계산스텝과, 상기 목표위치 계산스텝을 통해 판독한 각축의 현재위치값을 구한 후 X,Y축의 위치 편차를 구하는 위치 편차계산 스텝과, 상기 위치편차 계산 스텝에서 산출된 위치편차에 대해서 비례적분미분제어 및 피드퍼워드(Feedforward)제어를 행하여 서보모터의 속도를 제어하는 제어스텝으로 이루어진 것을 특징으로 하는 로보트의 원호보간방법.After reading the starting point, the intermediate point, and the end point of the circular arc, when the circular interpolation is executed, the angle of the circular arc is Δθ and the angle of the circular arc is θ during the circular interpolation, where θθ is (θ-ΣΔθ (i)). A judging step of judging whether the acceleration or deceleration is greater by determining whether it is larger, a first coordinate calculation step of obtaining coordinates on the arc every sampling time when there is no acceleration / deceleration in the judgment step, and every sampling time when acceleration / deceleration is present in the determination step. The second coordinate calculation step of calculating the X and Y coordinates of the arc every time by Cosθ and Sinθ, and the coordinates of the arc in each of the second calculation step are calculated by exponential acceleration and deceleration of each axis. An error compensation step for compensating for an error occurring when obtaining coordinates on the arc in the third coordinate calculation step, the third coordinate calculation step, and coordinates on the arc in which the error is compensated for in the error compensation step. The target position calculation step of obtaining the target position of each axis for circular interpolation at any point of time at each sampling time, and the current position value of each axis read through the target position calculation step are obtained, and then the position deviation of the X and Y axes is calculated. A control step of controlling the speed of the servo motor by performing a proportional integral derivative control and a feedforward control on the position deviation calculation step to be obtained and the position deviation calculated in the position deviation calculation step. Circular interpolation method.
KR1019920018346A 1992-10-07 1992-10-07 Circular interpolation method of robot KR0161002B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019920018346A KR0161002B1 (en) 1992-10-07 1992-10-07 Circular interpolation method of robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019920018346A KR0161002B1 (en) 1992-10-07 1992-10-07 Circular interpolation method of robot

Publications (2)

Publication Number Publication Date
KR940008821A KR940008821A (en) 1994-05-16
KR0161002B1 true KR0161002B1 (en) 1998-12-15

Family

ID=19340709

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920018346A KR0161002B1 (en) 1992-10-07 1992-10-07 Circular interpolation method of robot

Country Status (1)

Country Link
KR (1) KR0161002B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100573462B1 (en) * 1998-12-31 2007-11-12 주식회사 로보테크 Method for controlling movement of an industrial robot

Also Published As

Publication number Publication date
KR940008821A (en) 1994-05-16

Similar Documents

Publication Publication Date Title
US4727303A (en) Positional control method and system utilizing same
KR930007775B1 (en) Linear interpolating method of robot
US4617502A (en) Method and apparatus for controlling a robot hand along a predetermined path
US5373221A (en) Method and system for estimating robot tool center point speed
KR910006499B1 (en) Numerical controller
JP6211240B1 (en) Numerical controller
JPH0371206A (en) Device for correcting machine error of nc machine tool
KR0161002B1 (en) Circular interpolation method of robot
KR0160999B1 (en) Circular interpolation method of robot
US5276777A (en) Locus correcting method for industrial robots
KR970002259B1 (en) Servo motor control method
KR0154433B1 (en) Method for circular error compensation of robot
KR0161010B1 (en) Moving path correction method according to tool diameter
KR930007776B1 (en) Linear interpolating method of robot
KR0160699B1 (en) Circular interpolation method of robot
JPH0719180B2 (en) Feed axis position control method
KR940001204B1 (en) Linear interpolation method of robot
JP2628846B2 (en) Industrial robot control method and apparatus
KR940002207B1 (en) Linear compensating method of robot
KR0168072B1 (en) Moving route compensating method based on diameter of machine tool
JP2005284843A (en) Position command creation method
JPS60220408A (en) Joint type robot controller
JPH06182682A (en) Speed control method for robot
JP3355101B2 (en) Control device
EP0371142A1 (en) Method of correcting loci of an industrial robot

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19921007

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19951110

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 19921007

Comment text: Patent Application

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 19980629

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 19980821

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 19980728

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20010727

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20020726

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20030730

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20040729

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20050727

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20050727

Start annual number: 8

End annual number: 8

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20070710