Nothing Special   »   [go: up one dir, main page]

KR101257793B1 - Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion - Google Patents

Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion Download PDF

Info

Publication number
KR101257793B1
KR101257793B1 KR1020100133966A KR20100133966A KR101257793B1 KR 101257793 B1 KR101257793 B1 KR 101257793B1 KR 1020100133966 A KR1020100133966 A KR 1020100133966A KR 20100133966 A KR20100133966 A KR 20100133966A KR 101257793 B1 KR101257793 B1 KR 101257793B1
Authority
KR
South Korea
Prior art keywords
error
information
synchronization
parallel robot
control
Prior art date
Application number
KR1020100133966A
Other languages
Korean (ko)
Other versions
KR20120072150A (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 KR1020100133966A priority Critical patent/KR101257793B1/en
Publication of KR20120072150A publication Critical patent/KR20120072150A/en
Application granted granted Critical
Publication of KR101257793B1 publication Critical patent/KR101257793B1/en

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법에 관한 것으로서, 더 상세하게는 병렬형 로봇의 각 관절부에 대한 추종 오차 및 동기화 오차를 이용하여 고속 병렬형 로봇을 효과적으로 제어하는고속 병렬형 로봇의 제어 방법에 대한 것이다.
본 발명에 의하면, 각 아암의 관절부가 기준 궤적을 나타내는 기준궤적과의 차이를 나타내는 추종오차 및 각 관절부간의 동기화를 움직임을 나타내는 동기화 오차를 반영하여 동기화 오차의 반영비율을 조정함으로써 정밀한 병렬형 로봇 제어가 가능하게 된다.
또한, 본 발명의 다른 효과로서는 독립적인 제어 방식을 이용하지 않고, 종속적인 제어 방식을 사용함으로써 병렬형 로봇 제어 시스템의 제어 정밀도를 구현하면서도 부하를 감소시키는 것이 가능하다는 점을 들 수 있다.
또한, 본 발명의 다른 효과로서는 피드포워드 제어 입력에 타 관절의 기준 궤적까지 반영하여 동기화오차를 감소시키는 것이 가능하다는 점을 들 수 있다.
The present invention relates to a control method of a high speed parallel robot based on a synchronization method of multiple axes, and more particularly to a high speed parallel robot that effectively controls a high speed parallel robot by using a tracking error and a synchronization error for each joint of the parallel robot. Control method of the robot.
According to the present invention, precise parallel robot control is performed by adjusting the reflection ratio of the synchronization error by reflecting a synchronization error indicating a movement between the joints of each arm and a reference error representing a reference trajectory and a synchronization between the joints. Becomes possible.
In addition, another effect of the present invention is that it is possible to reduce the load while implementing control accuracy of the parallel robot control system by using the dependent control method without using an independent control method.
In addition, another effect of the present invention is that it is possible to reduce the synchronization error by reflecting the reference trajectory of the other joint to the feedforward control input.

Description

복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법{Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion}Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion}

본 발명은 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법에 관한 것으로서, 더 상세하게는 병렬형 로봇의 각 관절부에 대한 추종 오차 및 동기화 오차를 이용하여 병렬형 로봇을 효과적으로 제어하는 고속 병렬형 로봇의 제어 방법에 대한 것이다.
The present invention relates to a control method of a high speed parallel robot based on a synchronization method of multiple axes, and more particularly, to a high speed parallel type which effectively controls a parallel robot by using a tracking error and a synchronization error for each joint of the parallel robot. To control the robot.

일반적으로 병렬형 로봇은 직렬형 로봇과 달리 복수개의 로봇팔이 하나의 말단 장치(end effector)에 묶여서 복수의 아암(arm)이 동시에 움직여서 말단 장치를 원하는 위치로 보내는 구조이다. 따라서, 직렬 로봇에 비해서 보다 무거운 물체를 보다 빠르게 핸들링할 수 있다는 장점이 있다.In general, a parallel robot has a structure in which a plurality of robot arms are tied to one end device unlike a serial robot so that a plurality of arms move simultaneously to send the end device to a desired position. Therefore, there is an advantage that a heavier object can be handled more quickly than a serial robot.

또한, 이러한 병렬형 로봇은 직렬형 로봇에 비하여 축 방향으로 견디는 힘이 크고, 정밀도가 높은 장점이 있다. In addition, such a parallel robot has an advantage in that the force to endure in the axial direction is greater and the accuracy is higher than that of the serial robot.

따라서, 병렬형 로봇은 복수개의 아암을 제어하여 복수축의 자유도를 구현하는 로봇으로서, 다양한 구조의 병렬형 로봇이 제작되고 있고 산업용 로봇에 많이 사용되고 있다.Accordingly, a parallel robot is a robot that controls a plurality of arms to implement a plurality of degrees of freedom, and parallel robots of various structures have been manufactured and are widely used in industrial robots.

그런데, 이러한 병렬형 로봇의 경우, 이 병렬형 로봇을 제어하기 위해서 제어 시스템이 구성된다. 그러나, 종래의 제어 시스템에 의할 경우, CPU(Central Processing Unit) 및 이 병렬형 로봇의 각 축을 독립적으로 제어하는 방식으로 다른 축의 추종 오차(tracking error)를 고려한 동기화에 따른 오차 보정이 반영되지 않아 정밀한 복수의 아암의 제어가 어렵다는 문제점이 있다. By the way, in the case of such a parallel robot, a control system is comprised in order to control this parallel robot. However, the conventional control system does not reflect error correction due to synchronization considering tracking errors of other axes by independently controlling each axis of the CPU and the parallel robot. There is a problem that precise control of a plurality of arms is difficult.

또한, 종래 방식에 의하면, 복수개의 아암을 실시간으로 모두 제어해야 하므로 3차원 공간상의 원하는 목표 위치로 정확하게 보내기 위해서는 많은 처리 과정이 요구되므로 제어 시스템에 많은 부하를 준다는 단점이 있다.
In addition, according to the conventional method, since a plurality of arms must be controlled in real time, a large amount of processing is required in order to accurately send to a desired target position in a three-dimensional space, which causes a large load on the control system.

본 발명은 병렬형 로봇의 제어 정밀도 향상을 위해서 제안된 것으로서, 병렬형 로봇의 각 축 간의 동기화에 따른 오차 보정을 반영하여 정밀한 복수의 아암의 제어가 가능한 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법을 제공하는데 그 목적이 있다. The present invention has been proposed to improve the control accuracy of a parallel robot, and a high speed parallel robot based on a multi-axis synchronization method capable of precise control of a plurality of arms by reflecting error correction according to synchronization between the axes of the parallel robot. The purpose is to provide a control method.

또한 피드포워드 제어 입력에 타 관절의 기준 궤적까지 반영하여 동기화오차를 감소시키는 것이 가능한 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법을 제공하는데 다른 목적이 있다.
In addition, another object of the present invention is to provide a control method of a high-speed parallel robot based on a synchronization method of a plurality of axes capable of reducing synchronization error by reflecting a reference trajectory of another joint to the feedforward control input.

본 발명은 위에서 제기된 과제를 달성하기 위해, 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법을 제공한다. 이 고속 병렬형 로봇의 제어 방법은, 사용자에 의해 병렬형 로봇의 동작을 제어함에 따라 각 관절부의 목표 궤적 정보가 입력되는 목표 궤적 정보 입력 단계; 인코더가 상기 각 관절부의 동작에 따른 상기 각 관절부의 현재 위치 정보를 모션 제어부에 피드백하는 피드백 단계; CPU(Central Processing Unit)가 상기 목표 궤적 정보와 현재 위치 정보를 비교하여 상기 각 관절부의 추종 오차를 계산하는 추종 오차(tracking error) 계산 단계; 상기 각 관절부의 추종 오차 중 i번째 관절부의 추종 오차, 상기 i번째 관절부의 이전 및 다음 관절부의 추종 오차를 이용하여 동기화 오차(synchronization error)를 계산하는 동기화 오차 계산 단계; PID(Proportional-Integral-Derivative) 제어기가 상기 추종 오차와 동기화 오차를 이용하여 전체 오차를 계산하여 피드백 제어 정보를 생성하는 피드백 제어 정보 계산 단계; 피드 포워드 제어기가 상기 각 관절부의 목표 궤적에 대한 합을 이용하고 상수 파라미터로 상기 각 관절부의 반영비율을 조정하여 피드 포워드 제어 정보를 생성하는 피드 포워드 제어 정보 계산 단계; 전체 제어 입력 정보 생성부가 상기 피드백 제어 정보 및 피드 포워드 제어 정보의 합을 이용하여 전체 제어 입력을 생성하는 전체 제어 입력 정보 계산 단계; 및 모션 제어부가 상기 전체 제어 입력 정보에 따라 모터 구동부를 구동시킴으로써 상기 각 관절부를 구동시키는 관절부 구동 단계를 포함한다. The present invention provides a control method of a high-speed parallel robot based on a synchronization method of a plurality of axes, in order to achieve the object raised above. The control method of the high speed parallel robot includes: a target trajectory information input step of inputting target trajectory information of each joint unit as a user controls the operation of the parallel robot; A feedback step of an encoder feeding back the current position information of each joint part to the motion controller according to the motion of each joint part; A tracking error calculating step of calculating, by a central processing unit, a tracking error of each joint part by comparing the target trajectory information with current position information; A synchronization error calculating step of calculating a synchronization error by using a tracking error of an i-th joint part and a tracking error of a previous and next joint part of the following joint part among the tracking errors of each joint part; A feedback control information calculation step of generating a feedback control information by a PID (Proportional-Integral-Derivative) controller calculating a total error using the tracking error and the synchronization error; A feed forward control information calculating step of generating, by a feed forward controller, feed forward control information by using a sum of the target trajectories of the respective joint portions and adjusting a reflection ratio of each joint portion with a constant parameter; A total control input information calculating step of generating, by the total control input information generating unit, a total control input using the sum of the feedback control information and the feed forward control information; And a joint unit driving step of driving each joint unit by driving a motor driving unit according to the overall control input information.

이때, 상기 각 관절부의 현재 위치 정보는 상기 각 관절부의 목표 궤적 정보를 추종하는 것을 특징으로 한다. In this case, the current position information of each joint part may follow the target trajectory information of each joint part.

여기서, 상기 추종 오차는 다음식,

Figure 112010085402666-pat00001
(여기서,
Figure 112010085402666-pat00002
는 i번째 관절부의 각의 목표 궤적을,
Figure 112010085402666-pat00003
는 i번째 관절부의 각을 나타낸다)으로 정의되는 것을 특징으로 한다. Here, the tracking error is the following equation,
Figure 112010085402666-pat00001
(here,
Figure 112010085402666-pat00002
Is the target trajectory of the angle of the i-th joint,
Figure 112010085402666-pat00003
Denotes an angle of the i-th joint portion).

여기서, 상기 동기화 오차는 다음식,

Figure 112010085402666-pat00004
으로 정의되는 것을 특징으로 한다. Here, the synchronization error is the following equation,
Figure 112010085402666-pat00004
Characterized in that defined.

여기서, 상기 전체 오차(coupled error)는 다음식,

Figure 112010085402666-pat00005
(여기서,
Figure 112010085402666-pat00006
는 추종오차이고,
Figure 112010085402666-pat00007
는 동기화 오차를 나타내며,
Figure 112010085402666-pat00008
는 동기화 오차의 반영비율을 조정하는 상수 파라미터를 나타낸다)으로 정의되는 것을 특징으로 한다. Here, the combined error (coupled error) is the following equation,
Figure 112010085402666-pat00005
(here,
Figure 112010085402666-pat00006
Is a tracking error,
Figure 112010085402666-pat00007
Represents a synchronization error,
Figure 112010085402666-pat00008
Denotes a constant parameter for adjusting the reflectance ratio of the synchronization error).

여기서, 상기 전체 제어입력은 다음식, Here, the total control input is the following equation,

Figure 112010085402666-pat00009
Figure 112010085402666-pat00009

(여기서, K p , K d , K i 제어 파라메터로서 각각 위치 오차 이득값, 속도 오차 이득값, 위치 오차의 적분 이득값을 나타내고,

Figure 112010085402666-pat00010
은 e의 미분치를 나타낸다)으로 정의되는 것을 특징으로 한다. Where K p , K d , and K i are As a control parameter, it shows position error gain value, speed error gain value, and integral gain value of position error, respectively.
Figure 112010085402666-pat00010
Is the derivative of e).

또한, 상기 관절부 구동 단계는, 필터부가 상기 전체 제어입력 정보로부터 노이즈를 제거하는 단계를 더 포함하는 것을 특징으로 한다.
The driving of the joint part may further include removing noise from the overall control input information by a filter unit.

본 발명에 의하면, 각 아암의 관절부가 기준궤적과의 차이를 나타내는 기준 궤적을 나타내는 추종오차 뿐만 아니라 및 각 관절부간의 움직임을 동기화를 나타내는 동기화 오차를 반영하여 동기화 오차의 반영비율을 조정함으로써 정밀한 병렬형 로봇 제어가 가능하게 된다. 즉 제어의 정확도를 향상시킬 수 있는 효과가 있다.According to the present invention, precise parallelism is achieved by adjusting the reflection ratio of the synchronization error by reflecting not only the tracking error indicating the reference trajectory indicating the difference between the joint portions of each arm and the synchronization error indicating the synchronization of the movement between the joint portions. Robot control is possible. That is, there is an effect that can improve the accuracy of the control.

또한, 본 발명의 다른 효과로서는 피드포워드 제어 입력에 타 관절의 기준 궤적까지 반영하여 동기화오차를 감소시키는 것이 가능하다는 점을 들 수 있다. In addition, another effect of the present invention is that it is possible to reduce the synchronization error by reflecting the reference trajectory of the other joint to the feedforward control input.

또한, 본 발명의 또 다른 효과로서는 독립적인 제어 방식을 이용하지 않고, 종속적인 제어 방식을 사용함으로써 병렬형 로봇 제어 시스템의 제어 정밀도를 구현하면서도 부하를 감소시키는 것이 가능하다는 점을 들 수 있다.
In addition, another effect of the present invention is that it is possible to reduce the load while implementing control accuracy of the parallel robot control system by using the dependent control method without using the independent control method.

도 1은 일반적인 병렬형 로봇 제어 시스템의 구성도를 보여주는 회로 블럭도이다.
도 2는 본 발명의 일실시예에 따라 모션 제어부(150)와 병렬형 로봇(190) 간의 피드백 구성을 보여주는 도면이다.
도 3은 본 발명의 일실시예에 따른 병렬형 로봇 제어 블럭도이다.
도 4는 본 발명의 일실시예에 따른 병렬형 로봇을 제어하는 과정을 보여주는 흐름도이다.
1 is a circuit block diagram showing the configuration of a general parallel robot control system.
2 is a diagram illustrating a feedback configuration between the motion control unit 150 and the parallel robot 190 according to an embodiment of the present invention.
3 is a parallel robot control block diagram according to an embodiment of the present invention.
4 is a flowchart illustrating a process of controlling a parallel robot according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야한다. As the inventive concept allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

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

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

본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "having" are intended to indicate that there is a feature, number, process, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present disclosure does not exclude the possibility of the presence or the addition of numbers, processes, operations, components, components, or a combination thereof.

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

이하 첨부된 도면을 참조하여 본 발명의 일실시예에 따른 병렬형 로봇 제어 시스템 및 방법을 상세히 설명하기로 한다.Hereinafter, a parallel robot control system and method according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 병렬형 로봇 제어 장치의 구성도를 보여주는 회로 블럭도이다. 도 1을 참조하면, 이 병렬형 로봇 제어 장치는, 대상 물체(10)에 대한 영상 정보를 촬영하는 영상 촬영부(160), 이 촬영 영상을 영상 정보로 처리하는 영상 정보 처리부(130), 이 영상 정보로부터 대상 물체(10)에 대한 현재 대상 물체 정보를 획득하고, 현재 대상 물체 정보와 획득된 병렬형 로봇(190)의 현재 병렬형 로봇 정보를 비교하여 추종 오차 및 동기화 오차를 계산하여 병렬형 로봇(190)을 이동시키는 전체 제어 입력 정보를 생성하는 CPU(Central Processing Unit)(110), 및 이 생성된 전체 제어 입력 정보에 따라 병렬형 로봇(190)을 이동시키는 모션 제어부(150)를 포함한다. 1 is a circuit block diagram showing the configuration of a parallel robot control apparatus according to an embodiment of the present invention. Referring to FIG. 1, the parallel robot control apparatus includes an image capturing unit 160 for capturing image information of a target object 10, an image information processor 130 for processing the captured image as image information, and Acquire the current target object information on the target object 10 from the image information, compare the current target object information with the obtained current parallel robot information of the parallel robot 190, calculate the tracking error and the synchronization error, and then calculate the parallel type. A central processing unit (CPU) 110 for generating overall control input information for moving the robot 190, and a motion controller 150 for moving the parallel robot 190 according to the generated total control input information. do.

이중 CPU(110), 영상 정보 처리부(130) 및 모션 제어부(150)는 중앙 제어부(100) 블럭을 구성한다. 중앙 제어부(100)는 컴퓨터로 구성된 컴퓨터 시스템과 MEI(Motion Engineering, Inc.) 모션 보드를 포함한다. 이 컴퓨터 시스템은 Windows 계열, 유닉스(UNIX) 계열, 리눅스(Linux)의 OS(operating system)를 기반으로 구성되어 있고 CPU(110)와 모션 제어부(150)는 병렬형 로봇(190)의 아암의 제어에 있어서 실시간성을 확보하기 위해서 RTX(Real Time Extension) 기반으로 연산을 수행한 후 MEI 모션 보드로 모션 제어 명령을 하달한다. 이들 구성요소를 설명하면 다음과 같다.The dual CPU 110, the image information processor 130, and the motion controller 150 constitute a central controller 100 block. The central control unit 100 includes a computer system composed of a computer and a Motion Engineering, Inc. (MEI) motion board. This computer system is based on the Windows, UNIX, and Linux operating systems (OS), and the CPU 110 and the motion controller 150 control the arms of the parallel robot 190. In order to secure the real-time, the operation is performed based on the Real Time Extension (RTX) and then the motion control command is given to the MEI motion board. These components will be described as follows.

CPU(110)는 사용자의 입력 정보를 처리하게 되는데, 즉 사용자가 대상 물체(10)를 다른 장소로 이동시키는 경우 병렬형 로봇(190)에 명령하게 되는데, 이를 처리하게 된다. 물론, 이를 위해 사용자 입력 처리부(110)는 사용자에게 GUI(Graphic User Interface)를 제공한다. The CPU 110 processes the user's input information, that is, when the user moves the target object 10 to another place, the CPU 110 commands the parallel robot 190. Of course, for this purpose, the user input processing unit 110 provides a user with a graphical user interface (GUI).

또한, 추종 오차와 동기화 오차를 계산하고, 이 추종 오차 및 동기화 오차를 이용하여 전체 오차를 계산하고, 이 전체 오차를 이용하여 병렬형 로봇(190)의 위치를 변경시키는 전체 제어 입력 정보를 생성한다. 물론, CPU(110)에는 대상 물체(10)의 위치 및 형상에 대한 영상 정보가 요구된다. 이를 위해, 영상 정보 처리부(130)와 영상 촬영부(160)가 구비된다. In addition, the tracking error and the synchronization error is calculated, the total error is calculated using the tracking error and the synchronization error, and the total control input information for changing the position of the parallel robot 190 is generated using the overall error. . Of course, the CPU 110 requires image information on the position and shape of the target object 10. To this end, the image information processor 130 and the image capturing unit 160 are provided.

영상 촬영부(160)는 대상 물체(10)를 촬영하여 이 촬영 정보를 영상 정보 처리부(130)에 전송하는 기능을 한다. The image capturing unit 160 photographs the target object 10 and transmits the photographing information to the image information processing unit 130.

영상 정보 처리부(130)는 영상 촬영부(160)로부터 촬영된 촬영 정보를 받아 처리하여 영상 정보를 생성하게 된다. 즉, 부연하면 대상 물체(10)에 대한 현재 대상 물체 정보를 생성한다. 이 현재 대상 물체 정보는 대상 물체(10)의 위치 좌표, 각도, 형상 정보를 포함한다.The image information processor 130 generates image information by receiving and processing photographing information captured by the image capturing unit 160. In other words, the current object information about the object 10 is generated. The current object information includes position coordinates, angles, and shape information of the object 10.

대상 물체(10)의 형상, 위치, 각도 등이 파악되어야 병렬형 로봇(190)의 각 관절부(193a 내지 193n)의 변위를 계산하는 것이 가능하기 때문이다. This is because it is possible to calculate the displacement of each joint 193a to 193n of the parallel robot 190 only when the shape, position, angle, and the like of the object 10 are known.

영상 정보 처리부(130)와 CPU(110)간의 통신은 이더넷(Ethernet), CAN(Controller Area Network), RS232 등의 다양한 통신 프로토콜 및 DIO(Digital Input-Output) 방식이 이용된다. The communication between the image information processor 130 and the CPU 110 uses various communication protocols such as Ethernet, a controller area network (CAN), RS232, and a digital input-output (DIO) scheme.

물론, 도 1에서는 영상 촬영부(160)와 영상 정보 처리부(130)를 별도로 도시하였으나, 본 발명의 명확한 이해를 위한 것으로 이에 한정되지는 않으며 영상 촬영부(160)와 영상 정보 처리부(130)를 이미지 처리가 가능한 일체형 카메라로 대체하는 것도 가능하다. Of course, in FIG. 1, the image capturing unit 160 and the image information processing unit 130 are separately illustrated. However, the image capturing unit 160 and the image information processing unit 130 are not limited thereto. It is also possible to substitute an integrated camera capable of image processing.

또한, CPU(110)는 GUI(미도시)에 의해 입력된 목표값(xd,yd,zd)을 역기구학(inverse kinematics)으로 풀어서 각 관절부(193a 내지 193n)의 목표값으로 변환한다. 즉, 관절부(193a 내지 193n)의 개수가 전부 n개라고 가정하면, i 번째 관절부의 각은

Figure 112010085402666-pat00011
(여기서, i=1,2,…,n)으로 표현되고, i번째 관절부의 각의 목표 궤적(즉, 기준 궤적(reference trajectory)으로 일컬어짐)은
Figure 112010085402666-pat00012
으로 표현된다. In addition, the CPU 110 solves the target values x d , y d , and z d input by the GUI (not shown) by inverse kinematics, and converts the target values x d , y d , and z d into target values of the respective joint portions 193a to 193n. . That is, assuming that the total number of joint parts 193a to 193n is n, the angle of the i-th joint part is
Figure 112010085402666-pat00011
(Where i = 1, 2, ..., n), and the target trajectory of the angle of the i-th joint (ie, referred to as a reference trajectory) is
Figure 112010085402666-pat00012
.

따라서, 대상 물체(10)의 현재 대상 물체 정보와 병렬형 로봇(190)에 대한 현재 병렬형 로봇 정보의 위치 정보를 미리 획득하여 표현하는 것이 가능하게 된다. 물론, 이 현재 병렬형 로봇의 위치 정보에는 병렬형 로봇(190)의 고유 식별 ID(IDentification number) 등을 포함하는 것도 가능하다. Therefore, it is possible to acquire and express the current target object information of the target object 10 and the position information of the current parallel robot information with respect to the parallel robot 190 in advance. Of course, the current position information of the parallel robot may include a unique identification ID of the parallel robot 190 and the like.

모션 제어부(150)는 병렬형 로봇(190)의 모션 제어를 위해 모터 구동부(170a 내지 170n)의 구동을 제어하는 기능을 수행한다. The motion controller 150 performs a function of controlling the driving of the motor drivers 170a to 170n to control the motion of the parallel robot 190.

병렬형 로봇(190)의 모션 제어를 안정적으로 수행하기 위해 모션 제어부(150)와 병렬형 로봇(190) 간의 제어 프로토콜은 노이즈에 강인한 특성을 보이는 SynqNet 프로토콜이 사용된다. 따라서, 모션 제어부(150)는 SynqNet 기반의 MEI(otion Engineering, Inc.) 모션 제어 장치가 사용될 수 있다. In order to stably perform the motion control of the parallel robot 190, the control protocol between the motion controller 150 and the parallel robot 190 uses a SynqNet protocol that exhibits robustness to noise. Therefore, the motion controller 150 may use SynqNet-based motion engineering, Inc. (MEI) motion control apparatus.

병렬형 로봇(190)에는 모션 제어부(150)와 연결된 모터 구동부(170a 내지 170n), 이 모터 구동부(170a 내지 170n)에 의해 구동되는 축 모터(191a 내지 191n) 및 이 축 모터(191a 내지 191n)에 의해 기계적 메커니즘으로 동작되는 관절부(193a 내지 193n) 등이 구성된다. The parallel robot 190 includes a motor driver 170a to 170n connected to the motion control unit 150, shaft motors 191a to 191n driven by the motor driver 170a to 170n, and the shaft motors 191a to 191n. Joint portions 193a to 193n and the like which are operated by a mechanical mechanism.

부연하면, 제 1 모터 구동부(170a)와 제 1 축 모터(191a)와 제 1 관절부(193a)가 연결되고, 제 2 모터 구동부(107b)와 제 2 축 모터(191b)와 제 2 관절부(193b)가 연결되는 방식이다. 또한, 축 모터(191a 내지 191n)의 각각에는 해당 인코더(195a 내지 195n)가 일체로 구성되어, 축 모터(191a 내지 191n)의 회전량을 디지털 신호로 변환하여 모션 제어부(150)에 피드백하게 된다. 따라서, 각 관절부(191a 내지 191n)의 위치 정보(즉, 이동량)에 대한 계산이 가능하게 된다.In other words, the first motor driver 170a, the first shaft motor 191a, and the first joint part 193a are connected to each other, and the second motor driver 107b, the second shaft motor 191b, and the second joint part 193b are connected to each other. ) Is connected. In addition, the encoders 195a to 195n are integrally formed in each of the shaft motors 191a to 191n, and the rotational amounts of the shaft motors 191a to 191n are converted into digital signals and fed back to the motion controller 150. . Therefore, calculation of the positional information (that is, the movement amount) of each of the joint parts 191a to 191n can be performed.

이외에도, 중앙 제어부도(100)에는 데이터, 프로그램, 소프트웨어 등을 저장하는 메모리부(미도시), 표시부(미도시), 입력부(미도시) 등이 구비된다. In addition, the central control unit 100 includes a memory unit (not shown), a display unit (not shown), an input unit (not shown), and the like, which store data, programs, and software.

메모리부는 CPU(110) 내에 구비되는 메모리일 수 있고, 별도의 메모리가 될 수 있다. 따라서 하드 디스크 드라이브, 플래시 메모리, EEPROM(Electrically erasable programmable read-only memory), SRAM(Static RAM), FRAM (Ferro-electric RAM), PRAM (Phase-change RAM), MRAM(Magnetic RAM) 등과 같은 비휘발성 메모리 및/또는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory) 등과 같은 휘발성 메모리가 사용될 수 있다. The memory unit may be a memory provided in the CPU 110 or may be a separate memory. Therefore, nonvolatile devices such as hard disk drives, flash memory, electrically erasable programmable read-only memory (EEPROM), static RAM (SRAM), ferro-electric RAM (FRAM), phase-change RAM (PRAM), magnetic RAM (MRAM), and so on. Memory and / or volatile memory such as random access memory (RAM), dynamic random access memory (DRAM), or the like may be used.

표시부는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diode), CRT(Crystal Ray Tube) 등이 사용될 수 있다. 따라서, 이러한 표시부를 통하여 사용자에게 GUI 화면을 제공하는 것이 가능하다. 따라서, 사용자는 이 표시부를 이용하여 병렬형 로봇(도 1의 190)을 조정하는 것이 가능하다. The display unit may be a liquid crystal display (LCD), an organic light emitting diode (OLED), a crystal ray tube (CRT), or the like. Therefore, it is possible to provide a GUI screen to a user through such a display part. Therefore, the user can adjust the parallel robot (190 in FIG. 1) using this display portion.

입력부는 사용자가 병렬형 로봇(도 1의 190)을 조작하기 위해 사용하는 입력 수단으로서, 마우스, 키보드, 음성 입력 등이 가능하다. 물론 음성 입력의 경우에는 사용자의 음성을 인식할 수 있는 프로그램이 설치된다. 이러한 음성 인식 프로그램은 널리 알려져 있으므로 이에 대한 설명은 생략하기로 한다. The input unit is an input means used by the user to operate the parallel robot (190 in FIG. 1), and may be a mouse, a keyboard, a voice input, or the like. Of course, in the case of voice input, a program for recognizing a user's voice is installed. Since the voice recognition program is widely known, a description thereof will be omitted.

도 2는 본 발명의 일실시예에 따라 모션 제어부(150)와 병렬형 로봇(190) 간의 피드백 구성을 보여주는 도면이다. 도 3을 참조하면, 모션 제어부(150)는 모터 구동부(도 1의 170a 내지 170n)를 통하여 관절부(도 1의 193a 내지 193n)를 이동시키게 된다. 2 is a diagram illustrating a feedback configuration between the motion control unit 150 and the parallel robot 190 according to an embodiment of the present invention. Referring to FIG. 3, the motion controller 150 moves the joints 193a to 193n of FIG. 1 through the motor driving units 170a to 170n of FIG. 1.

관절부(193a 내지 193n)가 이동한 후에는 정확하게 병렬형 로봇(190)이 대상 물체(10)의 위치에 있는지를 확인하게 되는데, 이때 위에서 기술한 병렬형 로봇(190)의 위치 정보 등이 모션 제어부(150)로 피드백된다. 물론, 이 피드백 정보는 CPU(도 1의 110)에 전송될 수 있다. After the joints 193a to 193n move, it is confirmed whether the parallel robot 190 is exactly at the position of the target object 10. At this time, the position information of the parallel robot 190 described above is a motion controller. Feedback to 150. Of course, this feedback information may be transmitted to the CPU (110 of FIG. 1).

도 3은 본 발명의 일실시예에 따른 병렬형 로봇 제어 블럭도이다. 도 3을 참조하면, 병렬형 로봇 제어 블럭도에는 추종 오차 및 동기화 오차를 계산하는 오차 계산부(200), 계산된 추종 오차와 동기화 오차를 이용하여 전체 오차를 계산하는 전체 오차 생성부(210), 전체 오차를 이용하여 피드백 제어 정보를 생성하는 PID(Proportional-Integral-Derivative) 제어기(220), 목표 궤적의 합을 이용하여 상수 파라미터(αi)로 반영하여 반영비율을 조정함으로써 피드 포워드 제어 정보를 생성하는 피드 포워드 제어기(270), 피드백 제어 정보와 피드 포워드 제어 정보를 합하여 전체 제어 입력 정보를 생성하는 전체 제어 입력 정보 생성부(230), 이 전체 제어 입력 정보로부터 노이즈를 제거하는 필터부(240), 노이즈가 제거된 전체 제어 입력 정보에 의해 동작되는 병렬형 로봇(190), 및 병렬형 로봇(190)의 관절부(도 1의 193a 내지 193n)에 의한 각도의 위치 정보를 처리하여 피드백하는 인코더(195) 등으로 구성된다.3 is a parallel robot control block diagram according to an embodiment of the present invention. Referring to FIG. 3, the parallel robot control block diagram includes an error calculator 200 that calculates a tracking error and a synchronization error, and an overall error generator 210 that calculates an overall error using the calculated tracking error and a synchronization error. PID (Proportional-Integral-Derivative) controller 220 for generating feedback control information using the overall error, by using the sum of the target trajectory reflected by the constant parameter (αi) to adjust the reflection rate by adjusting the feed forward control information A feed forward controller 270 to generate, a total control input information generation unit 230 for generating total control input information by combining the feedback control information and the feed forward control information, and a filter unit 240 for removing noise from the total control input information. ), The parallel robot 190 operated by the total control input information from which the noise is removed, and the angles of the joints (193a to 193n in FIG. 1) of the parallel robot 190. It is composed of an encoder 195, such as feedback to process the location information.

도 3을 참조하면, 병렬형 로봇(190)이 동작하는 경우, 축 모터(191a 내지 191n)의 회전량에 의해 관절부(193a 내지 193n)의 각 위치 정보가 계산되는데, 이는 병렬형 로봇(190)의 현 위치 정보가 된다. 이 현 위치 정보는 인코더(195)에 의해 피드백 라인(300)을 통하여 오차 계산부(200)로 전송된다. 즉, 이는 q1,q2,q3로 표현된다. 부연하면, 관절부(도 1의 193a 내지 193n)의 각 정보값(203)이 된다. Referring to FIG. 3, when the parallel robot 190 operates, the respective position information of the joints 193a to 193n is calculated by the amount of rotation of the shaft motors 191a to 191n, which is a parallel robot 190. This is the current location information of. The current position information is transmitted to the error calculator 200 through the feedback line 300 by the encoder 195. That is, it is represented by q 1 , q 2 , q 3 . In other words, the information values 203 of the joint portions (193a to 193n in FIG. 1) are obtained.

물론, 오차 계산부(200)에는 관절부(193a 내지 193n)의 각에 대한 목표 궤적값(201)도 입력된다. 이때, 목표 궤적값(201)은

Figure 112010085402666-pat00013
으로 표현된다. Of course, a target trajectory value 201 for the angles of the joints 193a to 193n is also input to the error calculator 200. At this time, the target trajectory value 201 is
Figure 112010085402666-pat00013
.

위 목표 궤적값(201)과 각 정보값(203)을 이용하여 추종 오차를 계산하면 다음과 같다.The tracking error is calculated using the target trajectory value 201 and each information value 203 as follows.

Figure 112010085402666-pat00014
Figure 112010085402666-pat00014

이 수학식 1을 n개의 관절부를 갖는 병렬형 로봇에 적용되도록 식을 일반화하면, 다음식과 같이 표현된다. Generalizing the equation 1 to be applied to a parallel robot having n joints, the equation 1 is expressed as follows.

Figure 112010085402666-pat00015
Figure 112010085402666-pat00015

여기서,

Figure 112010085402666-pat00016
는 i번째 관절부의 각의 목표 궤적을,
Figure 112010085402666-pat00017
는 i번째 관절부의 각을 나타낸다.
here,
Figure 112010085402666-pat00016
Is the target trajectory of the angle of the i-th joint,
Figure 112010085402666-pat00017
Represents the angle of the i-th joint part.

위 추종 오차를 이용하여 동기화 오차를 계산하면 다음과 같다. The synchronization error is calculated using the following tracking error as follows.

Figure 112010085402666-pat00018
Figure 112010085402666-pat00018

부연하면, 1번째 제 1 관절부(도 1의 193a)의 동기화 오차(ε1)는 1번째 추종 오차와 2번째, 3번째 추종 오차의 차이값으로 정의되고, 2번째 제 2 관절부(도 1의 193b)의 동기화 오차(ε2)는 2번째 추종 오차와 1번째 추종 오차, 2번째 추종 오차와 3번째 추종 오차의 합으로 정의된다. In other words, the synchronization error ε 1 of the first joint 193a of FIG. 1 is defined as a difference value between the first tracking error and the second and third tracking errors, and the second second joint part (of FIG. 1). The synchronization error ε 2 of 193b) is defined as the sum of the second tracking error and the first tracking error, the second tracking error, and the third tracking error.

이 수학식 1을 n개의 관절부를 갖는 병렬형 로봇에 적용되도록 식을 일반화하면, 다음식과 같이 표현된다. Generalizing the equation 1 to be applied to a parallel robot having n joints, the equation 1 is expressed as follows.

Figure 112010085402666-pat00019
Figure 112010085402666-pat00019

부연하면, i번째 추종 오차와 이전(i-1)번째 추종 오차 및 다음(i+1) 번째의 추종 오차값의 차이가 된다. In other words, there is a difference between the i th tracking error, the previous (i-1) th tracking error and the next (i + 1) th tracking error value.

전체 오차 생성부(210)는 위 수학식 1 및 수학식 2에 의해 생성된 추종 오차와 동기화 오차를 이용하여 전체 오차를 계산하며, 계산 방식은 다음과 같다. The total error generation unit 210 calculates the total error using the tracking error and the synchronization error generated by Equation 1 and Equation 2, and the calculation method is as follows.

Figure 112010085402666-pat00020
Figure 112010085402666-pat00020

여기서,

Figure 112010085402666-pat00021
는 추종 오차이고,
Figure 112010085402666-pat00022
는 동기화 오차를 나타내며,
Figure 112010085402666-pat00023
는 동기화 오차의 반영비율을 조정하는 상수 파라미터를 나타낸다.here,
Figure 112010085402666-pat00021
Is the tracking error,
Figure 112010085402666-pat00022
Represents a synchronization error,
Figure 112010085402666-pat00023
Denotes a constant parameter that adjusts the reflectance ratio of the synchronization error.

PID 제어기(220)는 널리 알려진 대로, 위치 오차, 속도 오차, 및 위치 오차의 적분값을 계산하기 위한 것으로, 본 발명에서는 오차가 추종 오차(

Figure 112010085402666-pat00024
) 및 동기화 오차(
Figure 112010085402666-pat00025
)를 반영한 전체 오차가 된다. 따라서, PID 제어기(220)에 의해 피드백 제어 정보(
Figure 112010085402666-pat00026
)가 생성된다.PID controller 220 is to calculate the position error, velocity error, and the integral value of the position error, as is well known, in the present invention, the error is a tracking error (
Figure 112010085402666-pat00024
) And sync error (
Figure 112010085402666-pat00025
) Is the total error reflected. Therefore, the feedback control information (the PID controller 220)
Figure 112010085402666-pat00026
) Is generated.

피드 포워드 제어기(270)는 각 관절부(도 1의 193a 내지 193n)에 대한 목표 궤적의 합으로 구성되는데, 이때 상수 파라미터인 αi로 반영비율을 조정한다. 이 상수 파라미터(αi)는 실험치에 의해서 미리 계산되어 중앙 제어부(도 1의 100)에 구비된 메모리에 저장될 수 있다. 따라서, 이 피드 포워드 제어기(270)에 의해 반영비율을 조정함으로써 피드 포워드 제어 정보(

Figure 112010085402666-pat00027
)가 생성된다. The feed forward controller 270 is composed of a sum of target trajectories for each joint part (193a to 193n in FIG. 1), and the reflectance ratio is adjusted using a constant parameter α i . The constant parameter α i may be calculated in advance by an experimental value and stored in a memory included in the central controller 100 of FIG. 1. Therefore, the feed forward control information (by adjusting the reflecting ratio by the feed forward controller 270) (
Figure 112010085402666-pat00027
) Is generated.

전체 제어 입력 정보 생성부(230)는 PID 제어기(220)에 의해 생성된 피드백 제어 정보(

Figure 112010085402666-pat00028
) 및 피드 포워드 제어기(270)에 의해 생성된 피드 포워드 제어 정보(
Figure 112010085402666-pat00029
)을 합하여 전체 제어 입력 정보를 생성한다. 이러한 전체 제어 입력 정보를 표현하면 다음식과 같다. The overall control input information generator 230 may include feedback control information generated by the PID controller 220 (
Figure 112010085402666-pat00028
) And feed forward control information generated by the feed forward controller 270 (
Figure 112010085402666-pat00029
) To generate full control input information. The overall control input information is expressed as follows.

Figure 112010085402666-pat00030
Figure 112010085402666-pat00030

여기서, Kp,Ki,Kd는 제어 파라메터로서 이득값 혹은 게인(gain)값을 나타낸다. Here, K p , K i , K d represent gain or gain values as control parameters.

이들 이득값은 수학적 혹은 실험적/경험적 방법을 통해 계산하는 과정인 튜닝(tuning)에 의해 산출된다. 이러한 튜닝에는 여러 가지 방법들이 있는데, 그중 가장 널리 알려진 것으로는 지글러-니콜스(Ziegler-Nichols), 계전기(relay) 동조법 등을 들 수 있다. These gain values are calculated by tuning, which is the process of calculating them by mathematical or experimental / empirical methods. There are several ways to tune this, the most widely known being Ziegler-Nichols and relay tuning.

필터부(240)는 전체 제어 입력 정보 생성부(230)에 의해 생성된 전체 제어 입력 정보가 병렬형 로봇(190)에 입력되는 경우 노이즈가 있을 수 있으므로 이러한 노이즈를 제거하는 기능을 수행한다.
The filter unit 240 may remove noise when the entire control input information generated by the entire control input information generator 230 is input to the parallel robot 190.

도 4는 본 발명의 일실시예에 따른 병렬형 로봇을 제어하는 과정을 보여주는 흐름도이다. 도 4를 참조하면, 사용자에 의해 병렬형 로봇(도 1의 190)의 동작을 제어함에 따라 각 관절부(193a 내지 193n)의 목표 궤적 정보가 입력된다(단계 S400). 부연하면, 사용자가 중앙 제어부(도 1의 100)에 연결된 입력부(미도시)를 이용하여 병렬형 로봇(190)이 대상 물체((도 1의 10)를 파지하도록 하는 경우 목표 궤적 정보가 생성된다. 4 is a flowchart illustrating a process of controlling a parallel robot according to an embodiment of the present invention. Referring to FIG. 4, as the user controls the operation of the parallel robot (190 of FIG. 1), target trajectory information of each joint part 193a to 193n is input (step S400). In other words, the target trajectory information is generated when the user causes the parallel robot 190 to grip the target object (10 of FIG. 1) by using an input unit (not shown) connected to the central control unit (100 of FIG. 1). .

이와 함께, 인코더(도 1의 195)가 각 관절부(193a 내지 193n)의 동작에 따른 각 관절부(193a 내지 193n)의 현재 위치 정보를 모션 제어부(도 1의 150)에 피드백한다(단계 S420). 물론, 이러한 피드백 과정은 목표 궤적 정보가 입력되기 전에 이루어질 수도 있고, 목표 궤적 정보가 입력된 후 이루어질 수도 있다. At the same time, the encoder 195 of FIG. 1 feeds back current position information of each joint 193a to 193n according to the operation of each joint 193a to 193n to the motion control unit 150 of FIG. 1 (step S420). Of course, this feedback process may be performed before the target trajectory information is input or may be performed after the target trajectory information is input.

목표 궤적 정보와 피드백이 이루어진 경우, CPU(Central Processing Unit)(110)가 목표 궤적 정보와 현재 위치 정보를 비교하여 각 관절부(193a 내지 193n)의 추종 오차(ei)를 계산한다(단계 S430). When the target trajectory information and the feedback are made, the central processing unit (CPU) 110 compares the target trajectory information with the current position information and calculates a tracking error e i of each joint 193a to 193n (step S430). .

추종 오차가 계산되면, 각 관절부(193a 내지 193n)의 추종 오차 중 i번째 관절부의 추종 오차, i번째 관절부의 이전(i-1) 및 다음(i+1) 관절부의 추종 오차를 이용하여 동기화 오차(εi)를 계산한다(단계 S440).When the tracking error is calculated, the synchronization error is obtained using the following error of the i-th joint part, the following (i-1) and following (i + 1) joint parts of the following errors of the respective joint parts 193a to 193n. (ε i ) is calculated (step S440).

추종 오차(ei)와 동기화 오차(εi)가 계산되면, PID(Proportional-Integral-Derivative) 제어기(도 3의 220)가 이 추종 오차(ei)와 동기화 오차(εi)를 이용하여 전체 오차(ecoupled)를 계산하여 피드백 제어 정보(

Figure 112010085402666-pat00031
)를 생성한다(단계 S450).When the tracking error e i and the synchronization error ε i are calculated, a Proportional-Integral-Derivative (PID) controller 220 of FIG. 3 uses this tracking error e i and the synchronization error ε i . By calculating the overall error (e coupled ), the feedback control information (
Figure 112010085402666-pat00031
) Is generated (step S450).

이와 함께, 피드 포워드 제어기(도 3의 270)가 각 관절부(193a 내지 193n)의 목표 궤적에 대한 합을 이용하고 상수 파라미터(αi)로 각 관절부(193a 내지 193n)의 반영비율을 조정하여 피드 포워드 제어 정보(

Figure 112010085402666-pat00032
)를 생성한다(단계 S460).In addition, the feed forward controller 270 of FIG. 3 uses the sum of the target trajectories of the joints 193a to 193n and adjusts the reflectance ratio of each joint 193a to 193n with a constant parameter α i to feed the feed. Forward control information (
Figure 112010085402666-pat00032
) Is generated (step S460).

전체 제어 입력 정보 생성부(230)는 피드백 제어 정보(

Figure 112010085402666-pat00033
) 및 피드 포워드 제어 정보(
Figure 112010085402666-pat00034
)를 이용하여 전체 제어 입력 정보를 계산한다(단계 S470). The overall control input information generator 230 may include feedback control information (
Figure 112010085402666-pat00033
) And feedforward control information (
Figure 112010085402666-pat00034
) To calculate the total control input information (step S470).

모션 제어부(도 1의 150)가 위 전체 제어 입력 정보에 따라 모터 구동부를 구동시킴으로써 각 관절부(도 1의 193a 내지 193n)를 구동시키게 된다(단계 S480, 단계 S490).
The motion control unit 150 of FIG. 1 drives each of the joints 193a to 193n of FIG. 1 by driving the motor driving unit according to the entire control input information (steps S480 and S490).

10: 대상 물체
100: 중앙 제어부 110: CPU(Central Processing Unit)
130: 영상 정보 처리부 150: 모션 제어부
160: 영상 촬영부 170a 내지 170n: 모터 구동부
190: 병렬형 로봇
191a 내지 191n: 구동 모터
193a 내지 193n: 관절부
195a 내지 195n: 인코더
200: 오차 계산부 201: 목표 궤적값
203: 관절부의 각값 210: 전체 오차 생성부
220: PID 제어기 230: 전체 제어 입력 정보 생성부
240: 필터부 270: 피드 포워드 제어기
300: 피드백 라인
10: object
100: central control unit 110: CPU (Central Processing Unit)
130: image information processing unit 150: motion control unit
160: image capturing unit 170a to 170n: motor driving unit
190: parallel robot
191a to 191n: drive motor
193a to 193n: joint portion
195a to 195n: encoder
200: error calculation unit 201: target trajectory value
203: angle value of the joint part 210: total error generating unit
220: PID controller 230: full control input information generation unit
240: filter unit 270: feed forward controller
300: feedback line

Claims (7)

사용자에 의해 병렬형 로봇의 동작을 제어함에 따라 각 관절부의 목표 궤적 정보가 입력되는 목표 궤적 정보 입력 단계;
인코더가 상기 각 관절부의 동작에 따른 상기 각 관절부의 현재 위치 정보를 모션 제어부에 피드백하는 피드백 단계;
CPU(Central Processing Unit)가 상기 목표 궤적 정보와 현재 위치 정보를 비교하여 상기 각 관절부의 추종 오차를 계산하는 추종 오차 계산 단계;
상기 각 관절부의 추종 오차 중 i번째 관절부의 추종 오차, 상기 i번째 관절부의 이전 및 다음 관절부의 추종 오차를 이용하여 동기화 오차를 계산하는 동기화 오차 계산 단계;
PID(Proportional-Integral-Derivative) 제어기가 상기 추종 오차와 동기화 오차를 이용하여 전체 오차를 계산하여 피드백 제어 정보를 생성하는 피드백 제어 정보 계산 단계;
피드 포워드 제어기가 상기 각 관절부의 목표 궤적에 대한 합을 이용하고 상수 파라미터로 상기 각 관절부의 반영비율을 조정하여 피드 포워드 제어 정보를 생성하는 피드 포워드 제어 정보 계산 단계;
전체 제어 입력 정보 생성부가 상기 피드백 제어 정보 및 피드 포워드 제어 정보의 합을 이용하여 전체 제어 입력을 생성하는 전체 제어 입력 정보 계산 단계; 및
모션 제어부가 상기 전체 제어 입력 정보에 따라 모터 구동부를 구동시킴으로써 상기 각 관절부를 구동시키는 관절부 구동 단계
를 포함하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
A target trajectory information input step of inputting target trajectory information of each joint unit as the user controls the operation of the parallel robot;
A feedback step of an encoder feeding back the current position information of each joint part to the motion controller according to the motion of each joint part;
A tracking error calculating step of calculating, by a central processing unit, a tracking error of each joint part by comparing the target trajectory information with current position information;
A synchronization error calculating step of calculating a synchronization error using a tracking error of an i-th joint part and a tracking error of a previous and next joint part of the i-joint part among the tracking errors of each joint part;
A feedback control information calculation step of generating a feedback control information by a PID (Proportional-Integral-Derivative) controller calculating a total error using the tracking error and the synchronization error;
A feed forward control information calculating step of generating, by a feed forward controller, feed forward control information by using a sum of the target trajectories of the respective joint portions and adjusting a reflection ratio of each joint portion with a constant parameter;
A total control input information calculating step of generating, by the total control input information generating unit, a total control input using the sum of the feedback control information and the feed forward control information; And
Joint unit driving step of driving each joint part by driving a motor drive unit according to the overall control input information by the motion control unit
Control method of a high speed parallel robot based on a synchronization method of a plurality of axes comprising a.
제 1 항에 있어서,
상기 각 관절부의 현재 위치 정보는 상기 각 관절부의 목표 궤적 정보를 추종하는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
The method of claim 1,
The current position information of each joint part follows the target trajectory information of each joint part.
제 1 항 또는 제 2 항에 있어서,
상기 추종 오차(
Figure 112012073107184-pat00049
)는
Figure 112012073107184-pat00050

(여기서,
Figure 112012073107184-pat00051
는 추종 오차,
Figure 112012073107184-pat00052
는 i번째 관절부의 각의 목 표 궤적, 및
Figure 112012073107184-pat00053
는 i번째 관절부의 각)
로 정의되는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
3. The method according to claim 1 or 2,
The following error (
Figure 112012073107184-pat00049
)
Figure 112012073107184-pat00050

(here,
Figure 112012073107184-pat00051
Is a tracking error,
Figure 112012073107184-pat00052
Is the target trajectory of the angle of the i-th joint, and
Figure 112012073107184-pat00053
Is the angle of the i-th joint)
A control method of a high speed parallel robot based on a synchronization method of a plurality of axes, characterized in that defined as.
제 1 항에 있어서,
상기 동기화 오차(
Figure 112012073107184-pat00054
)는
Figure 112012073107184-pat00055

(여기서,
Figure 112012073107184-pat00056
는 동기화 오차,
Figure 112012073107184-pat00057
는 추종 오차)
로 정의되는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
The method of claim 1,
The synchronization error (
Figure 112012073107184-pat00054
)
Figure 112012073107184-pat00055

(here,
Figure 112012073107184-pat00056
Is a synchronization error,
Figure 112012073107184-pat00057
Is a tracking error)
A control method of a high speed parallel robot based on a synchronization method of a plurality of axes, characterized in that defined as.
제 1 항에 있어서,
상기 전체 오차(
Figure 112012073107184-pat00058
)는
Figure 112012073107184-pat00059

(여기서,
Figure 112012073107184-pat00060
는 전체 오차,
Figure 112012073107184-pat00061
는 추종오차,
Figure 112012073107184-pat00062
는 동기화 오차 및
Figure 112012073107184-pat00063
는 동기화 오차의 반영비율 을 조정하는 상수 파라미터)
로 정의되는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
The method of claim 1,
The overall error (
Figure 112012073107184-pat00058
)
Figure 112012073107184-pat00059

(here,
Figure 112012073107184-pat00060
Is the overall error,
Figure 112012073107184-pat00061
Is a tracking error,
Figure 112012073107184-pat00062
Is the synchronization error and
Figure 112012073107184-pat00063
Is a constant parameter that adjusts the reflection rate of the synchronization error.
A control method of a high speed parallel robot based on a synchronization method of a plurality of axes, characterized in that defined as.
제 1 항에 있어서,
상기 전체 제어입력(
Figure 112012073107184-pat00064
)은
Figure 112012073107184-pat00065

(여기서,
Figure 112012073107184-pat00066
는 전체 제어입력,
Figure 112012073107184-pat00067
은 피드백 제어 정보 (
Figure 112012073107184-pat00068
)
Figure 112012073107184-pat00069
은 피드 포워드 제어 정보 (
Figure 112012073107184-pat00070
),
K p, Kd, Ki는 제어 파라메터로서 각각 위치 오차 이득값, 속도 오차 이득값, 위치 오차의 적분 이득값,
Figure 112012073107184-pat00071
은 e의 미분치,
Figure 112012073107184-pat00072
는 전체 오차,
Figure 112012073107184-pat00073
는 상수 파라미터 및
Figure 112012073107184-pat00074
는 n번째 관절부의 각의 목표 궤적)
로 정의되는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
The method of claim 1,
The entire control input (
Figure 112012073107184-pat00064
)silver
Figure 112012073107184-pat00065

(here,
Figure 112012073107184-pat00066
Is the total control input,
Figure 112012073107184-pat00067
Feedback control information (
Figure 112012073107184-pat00068
)
Figure 112012073107184-pat00069
Feed forward control information (
Figure 112012073107184-pat00070
),
K p , K d and K i are control parameters, respectively, position error gain value, speed error gain value, position error integral gain value,
Figure 112012073107184-pat00071
Is the derivative of e,
Figure 112012073107184-pat00072
Is the overall error,
Figure 112012073107184-pat00073
Is a constant parameter and
Figure 112012073107184-pat00074
Is the target trajectory of the angle of the nth joint part)
A control method of a high speed parallel robot based on a synchronization method of a plurality of axes, characterized in that defined as.
제 1 항 또는 제 2 항에 있어서,
상기 관절부 구동 단계는, 필터부가 상기 전체 제어 입력 정보로부터 노이즈를 제거하는 단계를 더 포함하는 것을 특징으로 하는 복수 축의 동기화 방식에 기반한 고속 병렬형 로봇의 제어 방법.
3. The method according to claim 1 or 2,
The driving of the joint part may further include removing a noise from the overall control input information by a filter unit.
KR1020100133966A 2010-12-23 2010-12-23 Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion KR101257793B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100133966A KR101257793B1 (en) 2010-12-23 2010-12-23 Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100133966A KR101257793B1 (en) 2010-12-23 2010-12-23 Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion

Publications (2)

Publication Number Publication Date
KR20120072150A KR20120072150A (en) 2012-07-03
KR101257793B1 true KR101257793B1 (en) 2013-04-24

Family

ID=46706944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100133966A KR101257793B1 (en) 2010-12-23 2010-12-23 Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion

Country Status (1)

Country Link
KR (1) KR101257793B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112847373B (en) * 2021-01-12 2022-07-26 成都卡诺普机器人技术股份有限公司 Robot track synchronous control method and computer readable storage medium
CN115097724B (en) * 2021-12-17 2022-12-20 沈阳新松机器人自动化股份有限公司 Cross coupling control method for robot synchronous control

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11277469A (en) 1998-03-27 1999-10-12 Toyoda Mach Works Ltd Method and device for controlling parallel link mechanism
JP2008543578A (en) 2005-06-08 2008-12-04 ブルックス オートメーション インコーポレイテッド Extensible motion control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11277469A (en) 1998-03-27 1999-10-12 Toyoda Mach Works Ltd Method and device for controlling parallel link mechanism
JP2008543578A (en) 2005-06-08 2008-12-04 ブルックス オートメーション インコーポレイテッド Extensible motion control system

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
3. Lu Ren et al. ‘Performance Improvement of Tracking Control for a Planar Parallel Robust Using Synchronized Control’. IEEE International Conference on intelligent Robots and Systems. Oct. 2006
3. Lu Ren et al. 'Performance Improvement of Tracking Control for a Planar Parallel Robust Using Synchronized Control'. IEEE International Conference on intelligent Robots and Systems. Oct. 2006 *
Dongya Zhao et al. ‘Fully Adaptive Feedforward Feedback Synchronized Tracking Control for Stewart Platform Systems’. International Journal of Control Automation and System. Oct. 2008, vol 6, no. 5
Dongya Zhao et al. 'Fully Adaptive Feedforward Feedback Synchronized Tracking Control for Stewart Platform Systems'. International Journal of Control Automation and System. Oct. 2008, vol 6, no. 5 *

Also Published As

Publication number Publication date
KR20120072150A (en) 2012-07-03

Similar Documents

Publication Publication Date Title
WO2019116891A1 (en) Robot system and robot control method
JP5211944B2 (en) Robot apparatus control method and robot apparatus
JP6717768B2 (en) Robot for learning control considering operation in production line and control method thereof
US20060195228A1 (en) Robot locus control method and apparatus and program of robot locus control method
Cherubini et al. Multimodal control for human-robot cooperation
JP7386652B2 (en) Method and apparatus for robot control
CN110612181A (en) Method for controlling an industrial robot during robot guidance through programming and industrial robot
CN111687838B (en) Online compensation method, system and storage medium for track following error of manipulator
JP2004001122A (en) Picking device
CN111553239A (en) Robot joint visual servo control method, terminal device and storage medium
US20210349444A1 (en) Accelerating robotic planning for operating on deformable objects
KR101257793B1 (en) Method for controlling a very high speed parallel robot using a synchronization of multi-axis motion
US20140316568A1 (en) Device and method for controlling weaving motion in real time
CN110891741A (en) Control of a robot cell
CN112894827B (en) Method, system and device for controlling motion of mechanical arm and readable storage medium
KR101330048B1 (en) Apparatus and Method for controlling a parallel robot
KR20130122899A (en) Robot control device and control method
CN106774178B (en) Automatic control system and method and mechanical equipment
US20170028548A1 (en) Robot control device and robot control method
CN111699079B (en) Coordination system, operation device and method
JP6476635B2 (en) Robot control apparatus and control method
US20180178383A1 (en) Moving Along A Predetermined Path With A Robot
JP2015003348A (en) Robot control system, control device, robot, control method for robot control system and robot control method
KR101328101B1 (en) Robot contol device, and the contol method
KR101411503B1 (en) Robot control apparatus and method thereof

Legal Events

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

Payment date: 20160308

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170308

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200309

Year of fee payment: 8