KR101052518B1 - Articulated Robot Control Method and Control System - Google Patents

Articulated Robot Control Method and Control System Download PDF

Info

Publication number
KR101052518B1
KR101052518B1 KR1020090066466A KR20090066466A KR101052518B1 KR 101052518 B1 KR101052518 B1 KR 101052518B1 KR 1020090066466 A KR1020090066466 A KR 1020090066466A KR 20090066466 A KR20090066466 A KR 20090066466A KR 101052518 B1 KR101052518 B1 KR 101052518B1
Authority
KR
South Korea
Prior art keywords
robot
data
encoder
posture
calibration
Prior art date
Application number
KR1020090066466A
Other languages
Korean (ko)
Other versions
KR20110008907A (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 KR1020090066466A priority Critical patent/KR101052518B1/en
Publication of KR20110008907A publication Critical patent/KR20110008907A/en
Application granted granted Critical
Publication of KR101052518B1 publication Critical patent/KR101052518B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • B25J18/06Arms flexible
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/041Cylindrical coordinate type
    • B25J9/042Cylindrical coordinate type comprising an articulated arm
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

다관절 로봇 제어방법 및 제어 시스템이 개시된다. 사용자가 의도하는 기준 자세를 바탕으로 다관절 로봇을 제어하는 방법으로서, 미리 설정된 상기 로봇의 캘리브레이션 자세에 대한 제1 엔코더 데이터를 취득하는 단계; 상기 기준 자세에 대한 상기 캘리브레이션 자세의 상대적인 오프셋 데이터를 취득하는 단계; 상기 로봇의 현재 자세에 대한 제2 엔코더 데이터를 취득하는 단계; 및 상기 제1 엔코더 데이터와, 상기 제2 엔코더 데이터 및 상기 오프셋 데이터를 이용하여, 상기 기준 자세에 대한 상기 현재 자세의 상대적인 위치 데이터를 취득하는 단계를 포함하는 다관절 로봇 제어방법은, 절대치 엔코더 데이터의 1회 사용으로 위치 제어를 가능케 할 수 있다.An articulated robot control method and control system are disclosed. CLAIMS What is claimed is: 1. A method of controlling a articulated robot based on a reference posture intended by a user, comprising: acquiring first encoder data about a preset calibration posture of the robot; Acquiring offset data of the calibration attitude relative to the reference attitude; Acquiring second encoder data about a current posture of the robot; And acquiring relative position data of the current pose with respect to the reference pose using the first encoder data, the second encoder data, and the offset data. Position control can be enabled by single use of.

다관절, 로봇, 캘리브레이션, 제어 Articulated, Robotic, Calibration, Control

Description

다관절 로봇 제어방법 및 제어 시스템{Controlling Method and System for Multi-Joint Robot}Multi-joint robot control method and control system {Controlling Method and System for Multi-Joint Robot}

본 발명은 다관절 로봇 제어방법 및 제어 시스템에 관한 것이다.The present invention relates to a multi-joint robot control method and control system.

일반적으로 산업용 로봇은 구동원에 의해 구동된 관절 및 암부의 위치 정보를 검출하는 위치검출기로서 절대위치검출기(absolute encorder)의 채택이 보편화되어 가고 있는 실정이다. 이러한 절대위치검출기가 장착된 로봇은 조립생산 직후 및 사용중 작업자의 필요에 따라 로봇의 기준이 되는 자세를 교정하여야 하고, 조립된 상태의 각각의 암 파라메터를 실제의 값으로 보정(calibration)하는 기구학적 보정을 해주어야만 정밀한 작업을 수행할 수 있다.Background Art In general, industrial robots have become increasingly popular as absolute position detectors (absolute encorders) as position detectors for detecting position information of joints and arm portions driven by driving sources. The robot equipped with such an absolute position detector should correct the posture which is the reference of the robot immediately after assembly production and according to the needs of the operator during use, and the kinematics of calibrating each arm parameter of the assembled state to actual values. Only a calibration is required to perform precise work.

그러나 종래의 기준 자세 및 위치 교정 방법에서는 미리 정해진 위치와 자세로 로봇의 암들을 움직이면서 그 위치와 자세에 상응하는 미리 계산된 관절 변수를 이용하여 위치검출기의 재조정을 수행하는 것이므로 그 과정에서 많은 시행 착오와 노력 및 작업시간을 요구하게 되는 등 매우 비능률적으로 되며, 로봇의 정밀도를 저하시키는 결과를 초래하게 되는 문제점이 있었다.However, in the conventional reference posture and position calibration method, since the robot arm is moved to a predetermined position and posture, the position detector is re-adjusted using a pre-calculated joint variable corresponding to the position and posture. And it is very inefficient, such as requiring effort and work time, there was a problem that results in a decrease in the accuracy of the robot.

본 발명은 절대치 엔코더 데이터의 1회 사용으로 위치 제어를 가능케 할 수 있는 다관절 로봇 제어방법 및 제어 시스템을 제공하는 것이다.The present invention is to provide a multi-joint robot control method and control system capable of position control by one-time use of absolute encoder data.

본 발명의 일 측면에 따르면, 사용자가 의도하는 기준 자세를 바탕으로 다관절 로봇을 제어하는 방법으로서, 미리 설정된 상기 로봇의 캘리브레이션 자세에 대한 제1 엔코더 데이터를 취득하는 단계; 상기 기준 자세에 대한 상기 캘리브레이션 자세의 상대적인 오프셋 데이터를 취득하는 단계; 상기 로봇의 현재 자세에 대한 제2 엔코더 데이터를 취득하는 단계; 및 상기 제1 엔코더 데이터와, 상기 제2 엔코더 데이터 및 상기 오프셋 데이터를 이용하여, 상기 기준 자세에 대한 상기 현재 자세의 상대적인 위치 데이터를 취득하는 단계를 포함하는 다관절 로봇 제어방법이 제공된다.According to an aspect of the present invention, a method of controlling a multi-joint robot based on a reference posture intended by a user, the method comprising: obtaining first encoder data about a preset calibration posture of the robot; Acquiring offset data of the calibration attitude relative to the reference attitude; Acquiring second encoder data about a current posture of the robot; And acquiring relative position data of the current posture with respect to the reference posture using the first encoder data, the second encoder data, and the offset data.

상기 제1 엔코더 데이터를 취득하는 단계는, 직교좌표계에 따른 상기 로봇의 캘리브레이션 좌표 데이터에 상응하여, 상기 로봇의 각 관절들을 거동하는 단계를 포함하고, 상기 오프셋 데이터를 취득하는 단계는, 직교좌표계에 따른 상기 로봇의 기준 좌표 데이터에 상응하여, 캘리브레이션 자세의 상기 로봇의 각 관절들을 거동 하는 단계를 포함할 수 있다.The acquiring of the first encoder data may include actuating respective joints of the robot in correspondence to calibration coordinate data of the robot according to a Cartesian coordinate system, and acquiring the offset data may include: According to the reference coordinate data of the robot according to the above, it may include the step of operating the respective joints of the robot in the calibration posture.

한편, 상기 로봇이 목표 자세를 갖도록, 상기 로봇에 목표 자세 데이터를 제공하는 단계를 더 포함하며, 상기 목표 자세 데이터는 증분 엔코더 데이터일 수 있다.Meanwhile, the method may further include providing target pose data to the robot so that the robot has a target pose, and the target pose data may be incremental encoder data.

본 발명의 다른 측면에 따르면, 사용자가 의도하는 기준 자세를 바탕으로 다관절 로봇을 제어하는 로봇 제어 시스템으로서, 각각 엔코더를 구비하는 복수의 관절을 구비하는 로봇; 상기 각각의 엔코더들로부터 데이터를 제공 받아 상기 로봇의 거동을 제어하는 제어부를 포함하며, 상기 제어부는, 미리 설정된 상기 로봇의 캘리브레이션 자세에 대한 제1 엔코더 데이터와, 상기 기준 자세에 대한 상기 캘리브레이션 자세의 상대적인 오프셋 데이터, 및 상기 로봇의 현재 자세에 대한 제2 엔코더 데이터를 이용하여 상기 기준 자세에 대한 상기 현재 자세의 상대적인 위치 데이터를 취득하는 것을 특징으로 하는 로봇 제어 시스템을 제공할 수 있다.According to another aspect of the present invention, a robot control system for controlling the articulated robot based on a reference posture intended by a user, the robot having a plurality of joints each having an encoder; And a controller configured to control the behavior of the robot by receiving data from the respective encoders, wherein the controller includes first encoder data of a preset calibration posture of the robot and a calibration posture of the reference posture. The robot control system may be configured to acquire relative position data of the current pose with respect to the reference pose using the relative offset data and the second encoder data about the current pose of the robot.

상기 제어부는, 직교좌표계에 따른 상기 로봇의 캘리브레이션 좌표 데이터에 상응하여, 상기 로봇의 각 관절들을 거동하여 상기 제1 엔코더 데이터를 취득하고, 직교좌표계에 따른 상기 로봇의 기준 좌표 데이터에 상응하여, 캘리브레이션 자세의 상기 로봇의 각 관절들을 거동하여 상기 오프셋 데이터를 취득할 수 있다.The controller acquires the first encoder data by operating the joints of the robot according to the coordinate coordinate data of the robot according to the Cartesian coordinate system, and corresponds to the reference coordinate data of the robot according to the Cartesian coordinate system. The offset data may be obtained by operating each joint of the robot in a posture.

또한, 상기 제어부는, 상기 로봇이 목표 자세를 갖도록 상기 로봇에 목표 자세 데이터를 제공할 수 있으며, 상기 목표 자세 데이터는 증분 엔코더 데이터일 수 있다.The controller may provide target pose data to the robot such that the robot has a target pose, and the target pose data may be incremental encoder data.

한편, 상기 제어부는, 릴레이(Relay)를 이용하여 상기 각각의 엔코더들로부 터 순차적으로 데이터를 제공받을 수 있다.Meanwhile, the controller may sequentially receive data from each of the encoders using a relay.

본 발명의 실시예들에 따르면, 다중 엔코더 통신 채널과 1개 제어기 통신 채널을 효율적으로 사용할 수 있으며, 절대치 엔코더 데이터의 1회 사용으로 위치 제어를 가능케 할 수 있다. 또한, 절대치 엔코더를 사용하더라도 위치 제어 시에는 증분 엔코더 데이터를 사용하여 제어를 수행할 수 있다.According to embodiments of the present invention, multiple encoder communication channels and one controller communication channel can be efficiently used, and position control can be enabled by one use of absolute encoder data. In addition, even when the absolute encoder is used, the control may be performed using incremental encoder data during position control.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all transformations, equivalents, and substitutes included in the spirit and scope of the present invention. In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

이하, 본 발명에 따른 다관절 로봇 제어방법 및 제어 시스템의 바람직한 실시예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the articulated robot control method and control system according to the present invention will be described in detail with reference to the accompanying drawings, and in the following description with reference to the accompanying drawings, the same or corresponding components are provided with the same reference numerals. And duplicate description thereof will be omitted.

도 1은 본 발명의 일 실시예에 따른 다관절 로봇(100) 제어방법을 나타내는 순서도이다. 본 실시예에 따르면, 먼저 미리 설정된 로봇(100)의 캘리브레이션 자세에 대한 제1 엔코더 데이터(DE1)를 취득한다(S10). 로봇(100)의 캘리브레이션 자세, 보다 구체적으로 각 관절(J1, J2, J3, J4, J5, J6) 및 각 암(111, 112, 113, 114, 115, 116)의 캘리브레이션 자세(도 2b 참조)는 해당 로봇(100)을 제작하여 판매하는 판매자에 의해 미리 결정되어 있을 수 있으며, 이에 대한 위치 데이터 역시 직각좌표계 등에 따른 좌표값으로 미리 주어져 있을 수 있다. 도 2b에 캘리브레이션 자세의 일 예가 도시되어 있으나, 설계 상의 필요 등에 따라 다양하게 변경될 수 있음은 물론이다.1 is a flowchart illustrating a method for controlling the articulated robot 100 according to an embodiment of the present invention. According to the present embodiment, first, the first encoder data D E1 for the preset calibration attitude of the robot 100 is acquired (S10). Calibration posture of the robot 100, more specifically, the calibration of each joint J 1 , J 2 , J 3 , J 4 , J 5 , J 6 and each arm 111, 112, 113, 114, 115, 116 The posture (see FIG. 2B) may be predetermined by a seller who manufactures and sells the robot 100, and the position data thereof may also be previously given as a coordinate value according to a rectangular coordinate system. An example of a calibration posture is illustrated in FIG. 2B, but may be variously changed according to design needs.

따라서, 로봇(100)을 최초 구입하여 로봇(100)이 초기 자세(도 2a 참조)에 놓인 경우, 계측기 등과 같은 수단을 이용하여 로봇(100)이 캘리브레이션 자세(도 2b 참조)에 놓이도록 거동시키고, 이 동안 각 관절에서 발생하는 회전량(또는 각도값)을 제1 엔코더 데이터로(DE1)서 취득/저장한다. 각 관절(J1, J2, J3, J4, J5, J6)은 모터(미도시)에 의해 회동될 수 있으며, 이 경우 제1 엔코더 데이터(DE1)는 각 모터에 결합된 엔코더(미도시)에 의해 감지되어 취득될 수 있다. 이상에서 설명한 각 과정은 추후 설명할 다관절 로봇 제어시스템의 제어부(도 4의 300)와 같은 수단에 의해 수행될 수 있다.Therefore, when the robot 100 is initially purchased and the robot 100 is placed in the initial position (see FIG. 2A), the robot 100 is moved to the calibration position (see FIG. 2B) by using a means such as a measuring instrument. During this time, the rotation amount (or angle value) generated at each joint is acquired / stored as the first encoder data D E1 . Each joint J 1 , J 2 , J 3 , J 4 , J 5 , J 6 may be rotated by a motor (not shown), in which case the first encoder data D E1 is coupled to each motor. It can be detected and acquired by an encoder (not shown). Each process described above may be performed by means such as a control unit 300 of FIG. 4 of the articulated robot control system.

한편, 전술한 바와 같이 캘리브레이션 자세(도 2b 참조)는 해당 로봇(100)을 제작하여 판매하는 판매자에 의해 미리 결정되어 있을 수 있으므로, 특별한 사정이 없는 한, 제1 엔코더 데이터(DE1)는 캘리브레이션 자세 자체에서 결정될 수 있으며, 1회 취득되어 저장되면 추후 별도의 취득 과정 없이 저장된 값을 다시 사용할 수 있다. 따라서, 이전에 캘리브레이션 자세에 대한 제1 엔코더 데이터(DE1)가 취득되어 저장된 상태라면, 전술한 바와 같은 과정은 생략될 수도 있다.On the other hand, as described above, since the calibration posture (see FIG. 2B) may be predetermined by a seller who manufactures and sells the robot 100, the first encoder data D E1 may be calibrated unless there is a special situation. It can be determined from the posture itself, and once acquired and stored, the stored value can be used again without a separate acquisition process later. Therefore, if the first encoder data D E1 for the calibration attitude has been previously acquired and stored, the above-described process may be omitted.

다음으로, 기준 자세에 대한 캘리브레이션 자세의 상대적인 오프셋 데이터(DO)를 취득한다(S20). 여기서 기준 자세(도 2c 참조)란 로봇(100)의 사용자가 로봇(100)을 제어하기 위해 임의로 기준으로 설정한 자세를 의미하는 것으로서, 이는 사용자마다 다르게 설정될 수 있다. 또한 오프셋 데이터(DO)는 상기 기준 자세에 대한 캘리브레이션 자세의 상대적인 차이를 의미한다. 이러한 기준 자세(도 2c 참조)에 대한 위치 데이터 역시 직각좌표계 등에 따른 좌표값으로 미리 주어져 있을 수 있다.Next, the offset data D O of the calibration attitude with respect to the reference attitude is acquired (S20). Here, the reference posture (see FIG. 2C) refers to a posture arbitrarily set by the user of the robot 100 to control the robot 100, and may be set differently for each user. In addition, the offset data D O denotes a relative difference of the calibration posture with respect to the reference posture. The position data of the reference attitude (see FIG. 2C) may also be previously given as a coordinate value according to the rectangular coordinate system.

오프셋 데이터(DO)를 취득하기 위하여, 캘리브레이션 자세(도 2b 참조)에 놓인 로봇(100)을 계측기 등과 같은 수단을 이용하여 기준 자세(도 2c 참조)에 놓이도록 거동시키고, 이 동안 각 관절(J1, J2, J3, J4, J5, J6)에서 발생하는 회전량(또는 각도값)을 오프셋 데이터(DO)로서 취득/저장한다. 각 관절은 모터(미도시)에 의해 회동될 수 있으며, 이 경우 오프셋 데이터(DO)는 각 모터에 결합된 엔코더(미도시)에 의해 감지되어 취득될 수 있다. 이상에서 설명한 각 과정은 추후 설명할 다관절 로봇 제어시스템의 제어부(도 4의 300)와 같은 수단에 의해 수행될 수 있다. 당연히 기준 자세와 캘리브레이션 자세가 동일하다면 오프셋 데이터는 0이 된다.In order to obtain the offset data D O , the robot 100 placed in the calibration posture (see FIG. 2B) is moved to the reference posture (see FIG. 2C) by means of a measuring instrument or the like, during which each joint ( The amount of rotation (or angle value) generated by J 1 , J 2 , J 3 , J 4 , J 5 , J 6 ) is acquired / stored as offset data D O. Each joint may be rotated by a motor (not shown). In this case, the offset data D O may be detected and acquired by an encoder (not shown) coupled to each motor. Each process described above may be performed by means such as a control unit 300 of FIG. 4 of the articulated robot control system. Naturally, if the reference attitude and the calibration attitude are the same, the offset data is zero.

한편, 전술한 바와 같이 캘리브레이션 자세(도 2b 참조) 및 기준 자세(도 2c 참조)는 판매자 및 사용자에 의해 미리 결정되어 있을 수 있으므로, 특별한 사정이 없는 한, 오프셋 데이터(DO)는 캘리브레이션 자세 자체에서 결정될 수 있으며, 1회 취득되어 저장되면 추후 별도의 취득 과정 없이 저장된 값을 다시 사용할 수 있다. 따라서, 이전에 오프셋 데이터가 취득되어 저장된 상태라면, 전술한 바와 같은 과정은 생략될 수도 있다.Meanwhile, as described above, since the calibration posture (see FIG. 2B) and the reference posture (see FIG. 2C) may be predetermined by the seller and the user, the offset data D O is the calibration posture itself unless there is a special situation. Once acquired and stored, the stored value can be used again without additional acquisition process. Therefore, if the offset data has been previously acquired and stored, the above-described process may be omitted.

다음으로, 로봇(100)의 현재 자세에 대한 제2 엔코더 데이터(DE2)를 취득한다(S30). 여기서 로봇의 현재 자세(도 3a 참조)란 로봇(100)에 대한 제어프로그램이 구동되는 시점에서의 로봇(100)의 자세를 의미한다. 이러한 제2 엔코더 데이터(DE2) 역시 각 관절(J1, J2, J3, J4, J5, J6)을 구동하는 모터에 결합된 엔코더(미도시)에 의해 감지되어 취득될 수 있다.Next, the second encoder data D E2 for the current posture of the robot 100 is acquired (S30). Here, the current posture of the robot (see FIG. 3A) refers to the posture of the robot 100 at the time when the control program for the robot 100 is driven. The second encoder data D E2 may also be detected and acquired by an encoder (not shown) coupled to a motor that drives each joint J 1 , J 2 , J 3 , J 4 , J 5 , J 6 . have.

그리고 나서, 기준 자세(도 2c 참조)에 대한 현재 자세(도 3a 참조)의 상대적인 위치 데이터(DC)를 취득한다(S40). 이를 위해, 전술한 제1 엔코더 데이터(DE1)와 제2 엔코더 데이터(DE2) 및 오프셋 데이터(DO)를 이용할 수 있다. 즉, 기준 자세에 대한 현재 자세의 상대적인 위치 데이터(DC)는 아래의 수학식을 통해 취득될 수 있다.Then, the positional data D C of the current pose (see FIG. 3A) relative to the reference pose (see FIG. 2C) is obtained (S40). To this end, the first encoder data D E1 , the second encoder data D E2 , and the offset data D O may be used. That is, the relative position data from the current position to the reference position (C D) may be obtained through the equation below.

DC = (DE2 - DE1) * (deg. mm / pulse)+ DO D C = (D E2 -D E1 ) * (deg.mm / pulse) + D O

여기서,here,

DE2 는 로봇의 현재 자세에 대한 해당 관절의 제2 엔코더 데이터이고,D E2 is the second encoder data of the corresponding joint with respect to the robot's current pose,

DE1 는 로봇의 캘리브레이션 자세에 대한 해당 관절의 제1 엔코더 데이터이며,D E1 is the first encoder data of the corresponding joint for the robot's calibration position,

DO 는 기준 자세에 대한 캘리브레이션 자세의 해당 관절의 오프셋 데이터이다.D O is offset data of the corresponding joint of the calibration posture with respect to the reference posture.

최초에 로봇(100)을 구입하여 거동시켜 제1 엔코더 데이터(DE1)와 오프셋 데이터(DO)를 취득한 경우에는, 기준 자세가 현재 자세가 되며, 그 이후의 경우라면 작업을 위한 목표 자세 이전의 자세가 현재 자세가 된다. When the robot 100 is initially purchased and moved to acquire the first encoder data D E1 and the offset data D O , the reference pose becomes the current pose. 'S posture becomes the current posture.

이상의 방법을 이용하여 기준 자세에 대한 현재 자세의 상대적인 위치 데이터(DC)를 취득한 다음에는, 로봇(100)에 목표 자세 데이터를 제공하여 목표 자세(도 3b 참조)를 갖도록 한다(S50). 목표 자세는 로봇(100)을 이용한 작업을 위해 사용자가 의도하는 로봇(100)의 자세를 의미한다.After acquiring the position data D C of the current pose relative to the reference pose using the above method, the target pose data is provided to the robot 100 to have the target pose (see FIG. 3B) (S50). The target posture refers to the posture of the robot 100 intended by the user for the work using the robot 100.

이 때, 로봇(100)에 제공되는 목표 자세 데이터는 증분 엔코더 데이터일 수 있다. 전술한 과정을 통해 로봇(100)의 위치를 기준 자세를 바탕으로 초기화 하였기 때문에 이후 로봇(100)의 위치를 제어함에 있어서는, 증분 엔코더 데이터만으로도 로봇(100)을 충분히 제어할 수 있게 되는 것이다. 이와 같이 로봇(100)에 증분 엔코더 데이터를 제공하는 것은, 추후 설명할 다관절 로봇 제어시스템의 제어부(도 4의 300)와 같은 수단에 의해 수행될 수 있다.In this case, the target attitude data provided to the robot 100 may be incremental encoder data. Since the position of the robot 100 is initialized based on the reference posture through the above-described process, in controlling the position of the robot 100 thereafter, the robot 100 can be sufficiently controlled with only incremental encoder data. As such, providing incremental encoder data to the robot 100 may be performed by means such as a control unit 300 of the articulated robot control system, which will be described later.

이상에서는 본 발명의 일 실시예에 따른 다관절 로봇(100) 제어방법에 대해 설명하였으며, 이하에서는 본 발명의 다른 실시예에 따른 다관절 로봇 제어시스템에 대해 설명하도록 한다.In the above described the method for controlling the articulated robot 100 according to an embodiment of the present invention, hereinafter will be described for the articulated robot control system according to another embodiment of the present invention.

도 4는 본 발명의 다른 실시예에 따른 다관절 로봇 제어시스템을 나타내는 도면이며, 도 4를 참조하면, 다관절 로봇(100), 암(Arm, 111, 112, 113, 114, 115, 116), 관절(Joint, J1, J2, J3, J4, J5, J6), 로봇(100) 베이스(120), 릴레이(Relay, 200), 제어부(300), CPU(310), 메모리(320)가 도시되어 있다.4 is a view illustrating a multi-joint robot control system according to another embodiment of the present invention. Referring to FIG. 4, the multi-joint robot 100 and an arm Arm 111, 112, 113, 114, 115, and 116 are illustrated. Joint, J 1 , J 2 , J 3 , J 4 , J 5 , J 6 , robot 100, base 120, relay 200, controller 300, CPU 310, Memory 320 is shown.

일반적으로 작업을 위한 로봇(100)은 임의의 상황이나 자세에서 작업을 시작하더라도 항상 자신의 위치를 인지하고 있어야 하며, 시스템 구성 상의 편의성을 위해서 절대치 엔코더(Absolute Encoder)를 주로 사용하여 제어된다. 절대치 엔코더는 485통신 등과 같은 수단을 통해 위치 값을 출력하게 된다.In general, the robot 100 for work should always be aware of its position even when starting work in any situation or posture, and is controlled using an absolute encoder (Absolute Encoder) mainly for the convenience of system configuration. The absolute encoder outputs the position value through a means such as 485 communication.

본 실시예에 따른 다관절 로봇 제어시스템은, 각각 엔코더를 구비하는 복수의 관절을 구비하는 로봇(100)과, 각각의 엔코더들로부터 데이터를 제공받아 로봇(100)의 거동을 제어하는 제어부를 포함한다. 이 때 제어부는, 미리 설정된 로봇(100)의 캘리브레이션 자세에 대한 제1 엔코더 데이터와, 기준 자세에 대한 캘리브레이션 자세의 상대적인 오프셋 데이터, 및 로봇(100)의 현재 자세에 대한 제2 엔코더 데이터를 이용하여, 기준 자세에 대한 현재 자세의 상대적인 위치 데이터를 취득한다.The articulated robot control system according to the present embodiment includes a robot 100 having a plurality of joints each having an encoder, and a controller for controlling the behavior of the robot 100 by receiving data from the respective encoders. do. In this case, the controller uses first encoder data about the calibration attitude of the robot 100 preset, relative offset data of the calibration attitude with respect to the reference attitude, and second encoder data about the current attitude of the robot 100. In addition, the position data of the current pose relative to the reference pose is acquired.

제1 엔코더 데이터(DE1)와, 기준 자세에 대한 캘리브레이션 자세의 오프셋 데이터(DO), 및 로봇(100)의 현재 자세에 대한 제2 엔코더 데이터(DE2) 각각을 취득하는 방법은 전술한 다관절 로봇 제어방법에서 설명한 바와 동일/유사하므로 이에 대한 구체적인 설명은 생략하도록 한다. 다관절 로봇(100)과의 데이터 송수신 및 처리를 위해 제어부(300)에는 CPU(310)가 마련된다.The method of acquiring the first encoder data D E1 , the offset data D O of the calibration attitude with respect to the reference attitude, and the second encoder data D E2 with respect to the current attitude of the robot 100 are described above. Since the same / similar to that described in the articulated robot control method, a detailed description thereof will be omitted. The CPU 310 is provided in the control unit 300 for data transmission and reception with the articulated robot 100.

한편, 제1 엔코더 데이터(DE1)와 오프셋 데이터(DO)는 전술한 바와 같이, 캘리브레이션 자세에 의해 결정되며 특별한 사정이 없는 한 1회 취득되어 저장되면 추후 별도의 취득 과정 없이 저장된 값을 다시 사용할 수 있으므로, 제어부(300)에는 이들을 저장하기 위한 메모리(320)가 마련된다.On the other hand, as described above, the first encoder data D E1 and the offset data D O are determined by the calibration attitude, and once acquired and stored unless there is a special situation, the stored values are stored again without additional acquisition process. Since it can be used, the control unit 300 is provided with a memory 320 for storing them.

한편, 본 실시예에 따르면, 1 : n (제어부 통신채널 : 절대치 엔코더)의 MUX 방식을 이용하여 다중 채널의 엔코더 통신 데이터를 1개의 제어부 채널을 통해 수신하게 된다. 이를 위해 n개의 엔코더 채널(CH1, CH2, CH3, CH4, CH5, CH6)을 순차적으로 제어기 통신 채널로 연결해주는 릴레이(Relay, 200)를 구동시켜 줄 수 있다.On the other hand, according to the present embodiment, by using the MUX method of 1: n (control unit communication channel: absolute encoder), the multi-channel encoder communication data is received through one control channel. To this end, a relay 200 that connects n encoder channels CH 1 , CH 2 , CH 3 , CH 4 , CH 5 , and CH 6 sequentially to a controller communication channel can be driven.

보다 구체적으로 설명하면, 시스템을 구성하고 있는 로봇(100) 각각의 관절(J1, J2, J3, J4, J5, J6)에 번호를 할당한 후, 엔코더 데이터 통신을 하고자 하는 관절에 해당하는 Relay-On 신호를 출력하여, 해당 엔코더 데이터 통신 채널을 제어 부(300)의 통신 채널과 연결한다. 엔코더 데이터 수집이 완료되면 해당 Relay-Off 신호를 출력하고 다음 엔코더 채널 Relay-On 신호를 출력하여 절대치 엔코더 데이터를 수신한다. 순차적으로 수신된 엔코더 데이터는 일정 변수에 그 값을 저장한다. 이 후, 수신된 엔코더 데이터(제2 엔코더 데이터, DE2)와 캘리브레이션 자세에 대한 데이터(제1 엔코더 데이터, DE1) 및 오프셋 데이터(DO)를 이용하여 현재 로봇(100) 각 관절(J1, J2, J3, J4, J5, J6)의 위치와 로봇 자세를 계산하게 된다. 로봇의 각 관절의 위치가 계산되면 6자유도 자세는 자동으로 계산될 수 있다. More specifically, after assigning a number to each joint (J 1 , J 2 , J 3 , J 4 , J 5 , J 6 ) of each robot 100 constituting the system, to perform encoder data communication Outputs a relay-on signal corresponding to the joint, and connects the encoder data communication channel with the communication channel of the control unit 300. When the encoder data collection is completed, the relevant relay-off signal is output and the next encoder channel relay-on signal is output to receive absolute encoder data. Encoder data received sequentially stores its value in a constant variable. Subsequently, each joint J of the current robot 100 using the received encoder data (second encoder data, D E2 ), data about a calibration posture (first encoder data, D E1 ), and offset data (D O ). 1 , J 2 , J 3 , J 4 , J 5 , J 6 ) and the robot posture are calculated. When the position of each joint of the robot is calculated, the six degree of freedom posture can be calculated automatically.

이 후, 로봇(100)에 대한 목표 자세 데이터가 제공되면, 제어부(300)는 로봇(100)이 목표 자세(도 3b 참조)를 갖도록 신호를 전송하여 해당 목표 자세가 구현되도록 할 수 있다. 이 때, 로봇(100)에 제공되는 목표 자세 데이터는 증분 엔코더 데이터일 수 있다. 이미 로봇(100)의 위치를 기준 자세(도 2c 참조)를 바탕으로 초기화 하였기 때문에 이후 로봇(100)의 위치를 제어함에 있어서는, 증분 엔코더 데이터만으로도 로봇(100)을 충분히 제어할 수 있게 되는 것이다.Thereafter, when the target posture data for the robot 100 is provided, the controller 300 may transmit a signal such that the robot 100 has the target posture (see FIG. 3B) so that the target posture is implemented. In this case, the target attitude data provided to the robot 100 may be incremental encoder data. Since the position of the robot 100 has already been initialized based on the reference attitude (see FIG. 2C), the robot 100 can be sufficiently controlled with only incremental encoder data in controlling the position of the robot 100 thereafter.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention as defined in the appended claims. It will be understood that the invention may be varied and varied without departing from the scope of the invention.

전술한 실시예 외의 많은 실시예들이 본 발명의 특허청구범위 내에 존재한 다.Many embodiments other than the above-described embodiments are within the scope of the claims of the present invention.

도 1은 본 발명의 일 실시예에 따른 다관절 로봇 제어방법을 나타내는 순서도.1 is a flowchart illustrating a method for controlling a jointed-arm robot according to an embodiment of the present invention.

도 2a 내지 도 2c는 본 발명의 일 실시예에 따른 다관절 로봇 제어방법에서, 캘리브레이션 자세에 대한 제1 엔코더 데이터와, 오프셋 데이터를 취득하는 과정을 나타내는 도면.2A to 2C are diagrams illustrating a process of acquiring first encoder data and offset data for a calibration posture in a multi-joint robot control method according to an embodiment of the present invention.

도 3a 및 도 3b는 본 발명의 일 실시예에 따른 다관절 로봇 제어방법에서, 현재 자세로부터 목표 자세로의 변동 과정을 나타내는 도면.3A and 3B are views illustrating a process of changing from a current posture to a target posture in a multi-joint robot control method according to an embodiment of the present invention.

도 4는 본 발명의 다른 실시예에 따른 다관절 로봇 제어시스템을 나타내는 도면.4 is a view showing the articulated robot control system according to another embodiment of the present invention.

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

100: 다관절 로봇100: articulated robot

111, 112, 113, 114, 115, 116 : 암(Arm)111, 112, 113, 114, 115, 116: Arm

J1, J2, J3, J4, J5, J6 : 관절(Joint)J 1 , J 2 , J 3 , J 4 , J 5 , J 6 : Joint

120: 로봇 베이스120: robot base

200: 릴레이(Relay)200: relay

300: 제어부300: control unit

310: CPU310: CPU

320: 메모리320: memory

Claims (7)

사용자가 의도하는 기준 자세를 바탕으로 다관절 로봇을 제어하는 방법으로서,As a method of controlling the articulated robot based on a reference posture intended by a user, 미리 설정된 상기 로봇의 캘리브레이션 자세에 대한 제1 엔코더 데이터를 취득하는 단계;Acquiring first encoder data about a preset calibration attitude of the robot; 상기 기준 자세에 대한 상기 캘리브레이션 자세의 상대적인 오프셋 데이터를 취득하는 단계;Acquiring offset data of the calibration attitude relative to the reference attitude; 상기 로봇의 현재 자세에 대한 제2 엔코더 데이터를 취득하는 단계; 및Acquiring second encoder data about a current posture of the robot; And 상기 제1 엔코더 데이터와, 상기 제2 엔코더 데이터 및 상기 오프셋 데이터를 이용하여, 상기 기준 자세에 대한 상기 현재 자세의 상대적인 위치 데이터를 취득하는 단계를 포함하는 다관절 로봇 제어방법.And acquiring position data of the current pose relative to the reference pose using the first encoder data, the second encoder data, and the offset data. 제1항에 있어서,The method of claim 1, 상기 제1 엔코더 데이터를 취득하는 단계는, 직교좌표계에 따른 상기 로봇의 캘리브레이션 좌표 데이터에 상응하여, 상기 로봇의 각 관절들을 거동하는 단계를 포함하고,The acquiring of the first encoder data may include actuating respective joints of the robot, corresponding to calibration coordinate data of the robot according to a rectangular coordinate system. 상기 오프셋 데이터를 취득하는 단계는, 직교좌표계에 따른 상기 로봇의 기준 좌표 데이터에 상응하여, 캘리브레이션 자세의 상기 로봇의 각 관절들을 거동하 는 단계를 포함하는 것을 특징으로 하는 다관절 로봇 제어방법.The acquiring the offset data may include operating each joint of the robot in a calibration position corresponding to the reference coordinate data of the robot according to a Cartesian coordinate system. 제1항 또는 제2항에 있어서,The method according to claim 1 or 2, 상기 로봇이 목표 자세를 갖도록, 상기 로봇에 목표 자세 데이터를 제공하는 단계를 더 포함하며,Providing target position data to the robot such that the robot has a target position; 상기 목표 자세 데이터는 증분 엔코더 데이터인 것을 특징으로 하는 다관절 로봇 제어방법.And the target pose data is incremental encoder data. 사용자가 의도하는 기준 자세를 바탕으로 다관절 로봇을 제어하는 로봇 제어 시스템으로서,A robot control system that controls a multi-joint robot based on a reference posture intended by a user, 각각 엔코더를 구비하는 복수의 관절을 구비하는 로봇;A robot having a plurality of joints each having an encoder; 상기 각각의 엔코더들로부터 데이터를 제공받아 상기 로봇의 거동을 제어하는 제어부를 포함하며,A control unit for receiving data from each of the encoders and controlling the behavior of the robot; 상기 제어부는,The control unit, 미리 설정된 상기 로봇의 캘리브레이션 자세에 대한 제1 엔코더 데이터와,First encoder data about a preset calibration attitude of the robot; 상기 기준 자세에 대한 상기 캘리브레이션 자세의 상대적인 오프셋 데이터, 및Offset data relative to the calibration attitude with respect to the reference pose, and 상기 로봇의 현재 자세에 대한 제2 엔코더 데이터를 이용하여, 상기 기준 자 세에 대한 상기 현재 자세의 상대적인 위치 데이터를 취득하는 것을 특징으로 하는 로봇 제어 시스템.And position data of the relative position of the current position with respect to the reference position using the second encoder data of the current position of the robot. 제4항에 있어서,5. The method of claim 4, 상기 제어부는,The control unit, 직교좌표계에 따른 상기 로봇의 캘리브레이션 좌표 데이터에 상응하여, 상기 로봇의 각 관절들을 거동하여 상기 제1 엔코더 데이터를 취득하고,Corresponding to the calibration coordinate data of the robot according to the Cartesian coordinate system, the respective joints of the robot are operated to acquire the first encoder data, 직교좌표계에 따른 상기 로봇의 기준 좌표 데이터에 상응하여, 캘리브레이션 자세의 상기 로봇의 각 관절들을 거동하여 상기 오프셋 데이터를 취득하는 것을 특징으로 하는 로봇 제어 시스템.And corresponding offset data of the robot according to a Cartesian coordinate system, the robot control system acquiring the offset data by operating each joint of the robot in a calibration posture. 제4항 또는 제5항에 있어서,The method according to claim 4 or 5, 상기 제어부는,The control unit, 상기 로봇이 목표 자세를 갖도록, 상기 로봇에 목표 자세 데이터를 제공하되,To provide the target attitude data to the robot, so that the robot has a target posture, 상기 목표 자세 데이터는 증분 엔코더 데이터인 것을 특징으로 하는 로봇 제어 시스템.And the target attitude data is incremental encoder data. 제4항 또는 제5항에 있어서,The method according to claim 4 or 5, 상기 제어부는,The control unit, 릴레이(Relay)를 이용하여 상기 각각의 엔코더들로부터 순차적으로 데이터를 제공받는 것을 특징으로 하는 로봇 제어 시스템.Robot control system, characterized in that receiving data sequentially from each of the encoder using a relay (Relay).
KR1020090066466A 2009-07-21 2009-07-21 Articulated Robot Control Method and Control System KR101052518B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090066466A KR101052518B1 (en) 2009-07-21 2009-07-21 Articulated Robot Control Method and Control System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090066466A KR101052518B1 (en) 2009-07-21 2009-07-21 Articulated Robot Control Method and Control System

Publications (2)

Publication Number Publication Date
KR20110008907A KR20110008907A (en) 2011-01-27
KR101052518B1 true KR101052518B1 (en) 2011-07-29

Family

ID=43614847

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090066466A KR101052518B1 (en) 2009-07-21 2009-07-21 Articulated Robot Control Method and Control System

Country Status (1)

Country Link
KR (1) KR101052518B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101271617B1 (en) 2011-11-04 2013-06-17 삼성중공업 주식회사 Method of controlling robot

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102008057B1 (en) * 2017-06-08 2019-08-06 주식회사 에프에스티 Method for manufacturing pellicle
CN110340880A (en) * 2018-04-02 2019-10-18 新世代机器人暨人工智慧股份有限公司 Posable robot and its attitude adjusting method
CN114012719B (en) * 2021-10-22 2024-04-16 上海发那科机器人有限公司 Zero calibration method and system for six-axis robot

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980050618A (en) * 1996-12-21 1998-09-15 이종수 Standard position and position correcting device and method of industrial robot
KR19990021328A (en) * 1997-08-30 1999-03-25 윤종용 Calibration method and device using sensors
KR19990041206A (en) * 1997-11-21 1999-06-15 이종수 Reference position correction method and apparatus for industrial robot

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980050618A (en) * 1996-12-21 1998-09-15 이종수 Standard position and position correcting device and method of industrial robot
KR19990021328A (en) * 1997-08-30 1999-03-25 윤종용 Calibration method and device using sensors
KR19990041206A (en) * 1997-11-21 1999-06-15 이종수 Reference position correction method and apparatus for industrial robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101271617B1 (en) 2011-11-04 2013-06-17 삼성중공업 주식회사 Method of controlling robot

Also Published As

Publication number Publication date
KR20110008907A (en) 2011-01-27

Similar Documents

Publication Publication Date Title
US10695910B2 (en) Automatic calibration method for robot system
EP2381325B1 (en) Method for robot offline programming
KR102039077B1 (en) Remote control robot system and its operation method
US20150045949A1 (en) Robot control apparatus and method for controlling robot
US7817847B2 (en) Robot system with vision sensor
JP6572262B2 (en) Teaching position correcting device and teaching position correcting method
JP5670416B2 (en) Robot system display device
WO2018147411A1 (en) Robot system and control method therefor
US20150025683A1 (en) Robot system and calibration method of the robot system
KR101052518B1 (en) Articulated Robot Control Method and Control System
US20140343727A1 (en) Robot positioning
JP2005149299A (en) Teaching position correction apparatus
US11273554B2 (en) Method and device for evaluating calibration precision
CN111002304B (en) Device for acquiring position and location of end effector of manipulator
CN112873204B (en) Robot calibration method, device, equipment and computer readable storage medium
WO2014206787A1 (en) Method for robot calibration
CN109531604B (en) Robot control device for performing calibration, measurement system, and calibration method
EP1671759B1 (en) Robot controller and robot control method
JP2006297559A (en) Calibration system and robot&#39;s calibration method
KR102269776B1 (en) Calibration Method of Robot for Interventional treatment
CN109311163A (en) Correct the method and its relevant device of the motion control commands of robot
Cheng The method of recovering robot TCP positions in industrial robot application programs
WO2022009765A1 (en) Robot control device
KR101765052B1 (en) Operating apparatus having flexible movement and control method thereof
CN112959337B (en) Method for cutting invisible tooth appliance based on six-axis industrial robot

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: 20140701

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150710

Year of fee payment: 5