KR100218106B1 - A collision prevention method of a dual-arm robot - Google Patents

A collision prevention method of a dual-arm robot Download PDF

Info

Publication number
KR100218106B1
KR100218106B1 KR1019970031418A KR19970031418A KR100218106B1 KR 100218106 B1 KR100218106 B1 KR 100218106B1 KR 1019970031418 A KR1019970031418 A KR 1019970031418A KR 19970031418 A KR19970031418 A KR 19970031418A KR 100218106 B1 KR100218106 B1 KR 100218106B1
Authority
KR
South Korea
Prior art keywords
arm
link
robot
trajectory
collision
Prior art date
Application number
KR1019970031418A
Other languages
Korean (ko)
Other versions
KR19990009131A (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 KR1019970031418A priority Critical patent/KR100218106B1/en
Publication of KR19990009131A publication Critical patent/KR19990009131A/en
Application granted granted Critical
Publication of KR100218106B1 publication Critical patent/KR100218106B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39082Collision, real time collision avoidance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40339Avoid collision

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

본 발명은 듀얼-암 로봇 시스템에 관한 것으로서, 특히 서로 다른 작업을 하는 두 암의 충돌을 검사하는 기능을 두어 암의 충돌이 발생하는지 판단하고, 충돌이 가능한 상태인 경우에는 암에 대한 상세한 모델링을 실시하여 충돌을 검출하는 단계를 수행함으로써, 로봇 암의 충돌 계산에 소요되는 시간을 단축시킨 듀얼-암 로봇의 충돌 방지 방법에 관한 것이다.The present invention relates to a dual-arm robot system, in particular, having a function of checking the collision of the two arms to perform different tasks to determine whether the collision of the arm occurs, and when the collision is possible, detailed modeling of the arm The present invention relates to a collision avoidance method of a dual-arm robot which reduces the time required for collision calculation of a robot arm by performing a step of detecting a collision.

Description

듀얼-암 로봇의 충돌 방지 제어 방법Anti-collision control method of dual-arm robot

본 발명은 듀얼-암(Dual Arm) 로봇시스템에 관한 것으로서, 특히 두 대의 로봇이 하나의 베이스 위에 고정되어 있는 듀얼-암 로봇시스템을 제어하는 데 있어서, 두 로봇이 서로 충돌을 하지 않고 작업을 할 수 있도록 로봇 암의 충돌을 빠르게 검출하는 방법을 구현한 듀얼-암 로봇의 충돌 방지 제어 방법에 관한 것이다.The present invention relates to a dual-arm robot system, and in particular, to control a dual-arm robot system in which two robots are fixed on one base, the two robots can work without colliding with each other. The present invention relates to an anti-collision control method of a dual-arm robot that implements a method of quickly detecting a collision of a robot arm.

도 1 은 일반적인 듀얼-암 로봇시스템을 나타낸 도면으로서, 듀얼-암 로봇(10)과 시스템제어부(20)를 포함한다.1 is a diagram illustrating a general dual-arm robot system, which includes a dual-arm robot 10 and a system controller 20.

한편, 상기 듀얼-암 로봇(10)은, 각각 독립적인 작업을 수행하는 두 대의 로봇을 지지하는 지지부재(11)와, 상기 지지부재(11)에 설치되고 소정의 제어신호에 따라 각각 특정 작업을 수행하는 제 1 및 제 2 암(13,15)(17,19)으로 구성되어 있다. 또한, 상기 제 1 및 제 2 암(13,15)(17,19)은 각각 지지부재(11)에 연결되어 소정의 궤적을 따라 작동하는 제 1 링크(13)(17)와, 상기 제 1 링크(13)(17)에 연결되어 작동되고 소정의 프로그램에 따라 특정의 작업을 수행하는 제 2 링크(15)(19)로 구성되어 있다.On the other hand, the dual-arm robot 10, the support member 11 for supporting two robots that each perform independent work, and the specific work is installed in the support member 11, respectively, according to a predetermined control signal It consists of first and second arms 13, 15 (17, 19). In addition, the first and second arms 13, 15, 17, 19 are connected to the support member 11, respectively, to operate the first link 13 and 17 along a predetermined trajectory, and the first It is composed of second links 15 and 19 which are connected to the links 13 and 17 and which are operated and perform specific tasks according to a predetermined program.

또한, 시스템제어부(20)는 소정의 프로그램을 설정하고, 설정된 프로그램에 따라 듀얼-암 로봇의 제 1 및 제 2 암(13,15)(17,19)의 작동을 각각 독립적으로 제어하도록 구성되어 있고, 제 1 및 제 2 암의 이동궤적이 저장된 공유메모리를 통하여 제 1 및 제 2 암의 링크가 상호 충돌하지 않도록 제어한다.In addition, the system controller 20 is configured to set a predetermined program and independently control the operation of the first and second arms 13, 15, 17, 19 of the dual-arm robot according to the set program. The first and second arms control the link of the first and second arms so that they do not collide with each other through the shared memory storing the movement trajectories of the first and second arms.

상기와 같이 구성된 종래의 듀얼-암 로봇의 시스템제어부(20)는 지지부재(11)에 설치된 제 1 및 제 2 암(13,15)(17,19)을 독립적으로 제어하게 되는 데. 단위시간마다 각각의 암(13,15)(17,19)이 이동해야 할 궤적(Trajectory)을 생성한다.The system control unit 20 of the conventional dual-arm robot configured as described above is to independently control the first and second arms (13, 15) (17, 19) installed in the support member (11). Each unit 13 generates a trajectory for moving the arms 13 and 15 and 17 and 19.

이렇게 생성된 궤적에 대하여 각 암에 대한 직사각형 모델링을 한 후, 모델링된 정보가 다른 암의 직사각형 모델링 간에 중첩이 발생하지 않으면, 새 궤적에 대한 모델링 정보를 공유메모리에 저장한 후 로봇의 각 암을 구동하게 된다.After modeling each arm for the trajectories generated in this way, if the modeling information does not overlap between the rectangular modeling of other arms, save the modeling information for the new trajectory in shared memory and then load each arm of the robot. To drive.

한편, 상기 모델링에 중첩이 발생하면, 새로 생성된 궤적을 무시하는 단계를 거쳐서 로봇을 감속 정지하게 된다.On the other hand, when the overlap occurs in the modeling, the robot is decelerated and stopped through the step of ignoring the newly generated trajectory.

이어서, 새로운 궤적을 생성하는 단계를 반복하여 새 궤적을 생성하게 되며, 이 궤적이 다른 암과 충돌이 일어나는지를 검사하는 것을 반복하여 로봇의 암이 충돌 상태에서 해제되면, 새로운 궤적을 따라 이동하게 된다.Subsequently, a new trajectory is generated by repeating the step of generating a new trajectory, and the trajectory is repeated to check whether the trajectory collides with another arm, and when the arm of the robot is released from the collision state, the trajectory is moved along the new trajectory. .

상기 새로운 궤적이 목표위치인 경우 궤적 생성을 종료하게 된다.If the new trajectory is the target position, the trajectory generation ends.

따라서, 상기와 같이 종래기술은 로봇 암의 충돌을 검출하기 위한 암의 모델링단계에서 각 암의 모델링을 직사각형 형태로 하고 있고, 충돌검출단계에서 직사각형 모델링 결과를 모두 비교하여 충돌 및 모델링 계산을 하므로, 충돌 계산 시간이 많이 소요되는 문제점이 있었다.Therefore, as described above, in the modeling step of the arm for detecting a collision of the robot arm, the modeling of each arm has a rectangular shape, and in the collision detection step, the collision and modeling calculations are performed by comparing all the rectangular modeling results. There was a problem that it takes a long time to calculate a collision.

본 발명의 목적은 상기와 같은 종래기술의 문제점을 해결하기 위하여, 서로 다른 작업을 하는 두 암의 충돌을 검사하는 기능을 두어 암의 충돌이 발생하는지 판단하고, 충돌이 가능한 상태인 경우에는 암에 대한 상세한 모델링을 실시하여 충돌을 검출하는 단계를 수행함으로써, 각 암의 궤적상에서 링크의 충돌계산시간을 단축시킨 듀얼-암 로봇의 충돌 방지 방법을 제공하는 데 있다.In order to solve the problems of the prior art as described above, an object of the present invention is to determine whether a collision of arms occurs by checking a collision between two arms that perform different tasks, and if the collision is possible, The present invention provides a collision avoidance method of a dual-arm robot that reduces collision calculation time of a link on a trajectory of each arm by performing detailed modeling.

상기 목적을 달성하기 위한 듀얼-암 로봇의 충돌 방지 방법은, 단위시간 후 이동될 각 암의 궤적을 생성하여 계산하고, 두 로봇 링크의 위치를 직각좌표계 상에서 구하는 단계와; 상기 좌표상에서 구한 각 암의 궤적 데이터는 링크의 중첩이 발생할 수 있는 위치 데이터인가를 판단하는 제 1 판단단계와; 상기 판단단계에서 각 링크가 중첩될 수 있는 데이터이면, 소정 링크의 끝과 다른 암의 링크와 충돌하는 위치데이터인가를 판단하는 제 2 판단단계와; 상기 판단단계에서 각 링크가 충돌하는 데이터가 아니면, 소정 암의 링크가 서로 중첩되어 교차되는 위치데이터인가를 판단하는 제 3 판단단계와; 상기 제 2 및 제 3 판단단계에서 각 암의 링크가 충돌 또는 교차되는 데이터이면, 새 궤적을 무시하고 로봇을 감속정지시키는 단계와; 상기 제 2 및 제 3 판단단계에서 각 암의 링크가 충돌 및 교차되는 데이터가 아니면, 소정의 궤적 프로그램에 따라 각 암의 링크를 구동시키는 단계; 및 상기 단계를 수행한 후, 각 암의 링크가 목표위치에 도달하였는가를 판단하는 단계를 수행하는 것을 특징으로 한다.The anti-collision method of the dual-arm robot for achieving the above object comprises the steps of generating and calculating the trajectory of each arm to be moved after a unit time, and obtaining the positions of the two robot links on the Cartesian coordinate system; A first judging step of judging whether the trajectory data of each arm obtained on the coordinates is position data where link overlap may occur; A second judging step of judging whether or not each link is overlapping data in the judging step, whether the position data collides with a link of another arm and the end of the predetermined link; A third judging step of judging whether the links of a predetermined arm overlap with each other if the links are not colliding data in the judging step; If the link of each arm collides or crosses data in the second and third determination steps, ignoring the new trajectory and decelerating and stopping the robot; Driving the link of each arm according to a predetermined trajectory program if the link of each arm is not collided or crossed in the second and third determination steps; And after performing the above steps, determining whether the link of each arm has reached the target position.

도 1 은 일반적인 듀얼-암 로봇시스템을 나타낸 도면이다.1 is a view showing a general dual-arm robot system.

도 2 은 본 발명에 의한 듀얼-암 로봇의 충돌 방지 제어 과정을 나타낸 플로우챠트이다.2 is a flowchart illustrating a collision avoidance control process of a dual-arm robot according to the present invention.

도 3 내지 도 6 은 상기 도 2 에 의한 각 암의 충돌 여부를 검출 및 판단하는 방법을 설명하기 위한 도면이다.3 to 6 are diagrams for explaining a method of detecting and determining whether or not each arm according to the above 2 collision.

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

10 : XY 로봇. 11 : 지지부재.10: XY robot. 11: support member.

13 : 제 1 암의 제 1 링크. 15 : 제 1 암의 제 2 링크.13: The first link of the first arm. 15: second link of the first arm.

17 : 제 2 암의 제 1 링크. 19 : 제 2 암의 제 2 링크.17: First link of the second arm. 19: Second link of the second arm.

20 : 시스템제어부.20: system control unit.

이하, 첨부한 도면을 참조하여 본 발명을 보다 상세하게 설명하고자 한다.Hereinafter, with reference to the accompanying drawings will be described in more detail the present invention.

도 2 은 본 발명에 의한 듀얼-암 로봇의 충돌방지 제어 과정을 나타낸 플로우챠트로서, 상기 도 1을 참조하여 본 발명을 보다 상세하게 기술하면 다음과 같다.FIG. 2 is a flowchart illustrating an anti-collision control process of a dual-arm robot according to the present invention. Referring to FIG. 1, the present invention will be described in more detail as follows.

먼저, 시스템제어부(20)는 단위시간마다 이동할 로봇의 궤적을 생성하여 계산하고, 제 1 암(13,15)과 제 2 암(17,19)에 대한 각 링크의 위치를 직각좌표계 상에서 구하는 단계를 수행한다(S1).First, the system controller 20 generates and calculates a trajectory of the robot to be moved every unit time, and obtains a position of each link with respect to the first arms 13 and 15 and the second arms 17 and 19 on the rectangular coordinate system. Perform (S1).

상기 직각좌표계 상에서 구한 각 암(13,15)(17,19)의 궤적 데이터는 링크의 중첩이 발생할 수 있는 위치 데이터인가를 판단하는 제 1 판단단계를 수행한다(S2).The trajectory data of each of the arms 13, 15, 17, and 19 obtained on the rectangular coordinate system performs a first determination step of determining whether the link data may be position data at which link overlap may occur (S2).

상기 제 1 판단단계에서 각 암(13,15)(17,19)의 링크가 중첩될 수 있는 데이터이면 소정 링크의 끝과 다른 암의 링크와 충돌하는 위치데이터인가를 판단하는 제 2 판단단계를 수행하고(S3), 상기 판단단계(S3)에서 각 링크가 충돌하는 데이터가 아니면 각 암의 링크가 서로 중첩되어 교차되는 위치데이터인가를 판단하는 제 3 판단단계를 단계를 수행한다(S4).In the first determination step, if the links of the arms 13, 15, 17 and 19 are overlapping data, a second determination step of determining whether the end data of the arm and the position data collides with the link of the other arm is performed. In operation S3, if the link is not collided with each link in the determination step S3, a third determination step of determining whether the link of each arm overlaps with each other is performed (step S4).

상기 제 2 및 제 3 판단단계(S3, S4)에서 각 암(13,15)(17,19)의 링크가 충돌 또는 교차되는 데이터이면, 새 궤적을 무시하고 로봇을 감속정지시킴으로써 링크의 충돌을 방지하고(S31,S32), 각 암의 궤적을 생성하는 단계(S1)부터 재수행한다.If the links of the arms 13, 15, 17, 19 are collided or crossed in the second and third determination steps S3 and S4, the collision of the link is prevented by ignoring the new trajectory and decelerating and stopping the robot. It prevents (S31, S32), and repeats from step S1 which produces | generates the trajectory of each arm.

상기 제 2 및 제 3 판단단계(S3, S4)에서 각 암(13,15)(17,19)의 링크가 충돌 및 교차되는 데이터가 아니면, 소정의 궤적 프로그램에 따라 각 암의 링크를 구동시키는 단계를 수행한다(S5).If the links of the arms 13, 15, 17, 19 are not collided or crossed in the second and third determination steps S3 and S4, the link of each arm is driven according to a predetermined trajectory program. Perform the step (S5).

상기 단계(S5)를 수행한 후, 각 암의 링크가 사용자가 원하는 기준점 즉, 프로그램한 정확한 목표위치에 도달하였는가를 판단하는 단계를 수행하고, 각 링크가 정확한 목표위치에 도달하였으면 종료한다(S6).After the step S5 is performed, a step of determining whether the link of each arm reaches a desired reference point, that is, the correct target position programmed by the user, is performed, and when each link reaches the correct target position, the process ends (S6). ).

한편, 상기 제 1 판단단계(S2)에서 각 링크가 중첩되지 않는 데이터이면, 각 링크의 궤적 데이터를 시스템제어부의 공유메모리에 저장하고, 상기 프로그램에 따라 각 암의 링크를 구동시키는 단계(S5)부터 수행한다(S21).On the other hand, if the data in each link does not overlap in the first determination step (S2), storing the trajectory data of each link in the shared memory of the system controller, and driving the link of each arm in accordance with the program (S5) From (S21).

즉, 상기와 같은 방법으로 듀얼-암 로봇의 각 링크(13,15)(17,19)의 충돌을 검출하고 판단하고, 상기 제 1 판단단계(S2)에서 충돌이 발생하지 않는다면, 더 이상의 링크 충돌을 검출하지 않으므로 충돌검출에 대한 계산 시간을 줄일 수 있게 된다.In other words, if the collision of each link 13, 15, 17, 19 of the dual-arm robot is detected and determined in the same manner as above, and if the collision does not occur in the first determination step S2, no further links are detected. Since collision is not detected, the computation time for collision detection can be reduced.

도 3 내지 도 6 은 상기 도 2 에 의한 각 암의 충돌 여부를 검출 및 판단하는 방법을 설명하기 위한 도면으로서, 상기 도 1 및 도 2를 참조하여 살펴보면 다음과 같다.3 to 6 are diagrams for explaining a method of detecting and determining whether or not each arm of FIG. 2 is collided with reference to FIGS. 1 and 2.

먼저, 도 3 은 본 발명에 의한 듀얼-암 로봇의 암을 XY좌표계에 도시한 도면으로서, 제 1 및 제 2 암(13,15)(17,19)의 제 1 링크(13)(17)와 제 2 링크(15)(19)를 각각 나타낸 것이다.First, Figure 3 is a view showing the arm of a dual-arm robot according to the present invention in the XY coordinate system, the first link (13) (17) of the first and second arms (13, 15) (17, 19) And second links 15 and 19, respectively.

상기 제 1 및 제 2 암(13,15)(17,19)이 X-Y 평면상에 있을 때 각 링크의 양끝 조인트의 표시는 (Xmin,Xmax) (Ymin,Ymax)로 표시될 수 있다.When the first and second arms 13, 15, 17, 19 are on the X-Y plane, the indication of the joints at both ends of each link may be expressed as (Xmin, Xmax) (Ymin, Ymax).

도 4 는 상기 도 2의 제 1 판단단계(S2)의 방법을 설명하기 위한 도면으로서, 제 1 암(13,15)의 2링크(15) 및 제 2 암(17,19)의 2링크(19)의 영역이 XY좌표상에 표시되고 각각의 위치를 X11, X12, X21, Y11, Y12, Y21, 및 X22, Y22라고 할 때 다음 식 1의 조건인 경우에는 제 1 단계 충돌이 일어난다고 판단을 한다.FIG. 4 is a view for explaining the method of the first determination step S2 of FIG. 2, wherein two links 15 of the first arms 13 and 15 and two links of the second arms 17 and 19 ( When the area of 19) is displayed on the XY coordinates and each position is X11, X12, X21, Y11, Y12, Y21, and X22, Y22, it is determined that the first-stage collision occurs under the condition of the following Equation 1. Do it.

식 1Equation 1

(X21≥X12)∩(X22≥X11)∩(Y21≥Y12)∩(Y22≥Y11)(X21≥X12) ∩ (X22≥X11) ∩ (Y21≥Y12) ∩ (Y22≥Y11)

(단, Xx : X축의 임의의 좌표값, Yy : Y축의 임의의 좌표값)(However, Xx: arbitrary coordinate value of X axis, Yy: arbitrary coordinate value of Y axis)

즉, 시스템제어부(20)는 각 암의 링크(15)(19)의 끝이 이루는 영역을 식 1과 같이 비교하여 각 암의 충돌이 발생하는지를 판단한다.That is, the system controller 20 compares the area formed by the ends of the links 15 and 19 of each arm as shown in Equation 1 to determine whether the collision of each arm occurs.

다음으로, 도 5 는 상기 도 2의 제 2 판단단계(S3)의 방법을 설명하기 위한 도면으로서, 한 링크(15)가 다른 링크(19)에 근접하게 된 경우 두 링크의 충돌이 발생하는지를 판단하기 위한 것이다.Next, FIG. 5 is a view for explaining the method of the second determination step S3 of FIG. 2, and it is determined whether a collision between two links occurs when one link 15 approaches the other link 19. It is to.

이때, 두 링크(15)(19)의 두께의 1/2을 각각 R1, R2라고 하는 경우 충돌의 조건은 다음 식 2와 같이 표현되어 진다.At this time, when half of the thickness of the two links (15) and (19) is referred to as R1 and R2, respectively, the condition of the collision is expressed by the following expression (2).

식 2Equation 2

d = R1 + R2d = R1 + R2

(단, d : 제 1 암의 두께 중심과 제 2 암의 두께 중심 간의 수직거리, R1 : 제 1 암의 링크 두께의 절반두께, R2 : 제 2 암의 링크 두께의 절반두께를 의미.)(Where d is the vertical distance between the thickness center of the first arm and the thickness center of the second arm, R1: half thickness of the link thickness of the first arm, and R2: half thickness of the link thickness of the second arm.)

d = Δx·sinθ = Δy·cosθd = Δxsinθ = Δycosθ

(단, Δx : 제 2 암의 링크 중심과 제 1 암으로 링크 중심과의 X축거리, Δy : 제 2 암의 링크 중심과 제 1 암으로 링크 중심과의 Y축거리, θ : 제 1 암의 두께 중심선과 Δy 선과 만나는 사이각.)Where Δx is the X axis distance between the link center of the second arm and the link center with the first arm, Δy is the Y axis distance between the link center of the second arm and the link center with the first arm, and θ is the first arm. The angle between the center of thickness and the line Δy.

즉, 제 1 판단단계에서 각 암이 충돌할 수 있는 경우에는 식 2와 같이 2단계 충돌검사를 수행한다.That is, when each arm can collide in the first determination step, a two-step collision test is performed as shown in Equation 2.

마지막으로, 도 6 은 상기 도 2의 제 3 판단단계(S4)의 방법을 설명하기 위한 도면으로서, 상기 식 1 및 식 2와 같이 충돌검사를 수행한 후, 각 암의 링크(15)(19)가 충돌되지 않는다고 판단될 경우 다시 각 링크가 중첩되지 않는지를 판단하는 방법을 수행한다.Finally, FIG. 6 is a view for explaining the method of the third determination step S4 of FIG. 2, and after performing collision inspection as in Equation 1 and Equation 2, links 15 and 19 of each arm If it is determined that there is no collision), a method of determining whether or not each link overlaps again is performed.

제 3 단계 충돌검사는 두 개의 링크(15)(19)가 서로 교차되는가를 판단하는 단계로서 두 개의 링크의 양끝(Joint)을 X-Y 좌표의 원점 0에 대한 벡터로 표시하게 되면 a, b와 같이 표시할 수 있다. 이때, 다음 식3과 같은 판단 조건이 만족하는 경우 두 개의 링크가 교차되게 된다.The third step collision check is to determine whether two links 15 and 19 intersect with each other. If both ends of the two links are expressed as vectors of origin 0 of XY coordinates, as shown in a and b, I can display it. At this time, when the determination condition as shown in Equation 3 is satisfied, the two links cross.

식 3Expression 3

sign(e12·e11 × e12·e22) ≠ sign(e12·e21 × e12·e22)sign (e12, e11 x e12, e22) ≠ sign (e12, e21 x e12, e22)

(단, sign(x) : x≥0 이면 1, x<0 이면 -1을 표시함.)(Sign (x): 1 if x≥0, -1 if x <0.)

따라서, 상술한 바와 같이 듀얼-암 로봇 시스템의 제어에 있어서, 두 개의 암이 서로 독립적인 작업을 하면서 서로 충돌이 발생하는지를 판단하기 위한 과정을 3단계의 충돌검출 알고리즘을 통하여 각 암의 충돌 여부를 보다 빠르게 판단 및 계산할 수 있는 효과가 있다.Therefore, in the control of the dual-arm robot system as described above, a process for determining whether two arms collide with each other while working independently of each other through a three-step collision detection algorithm to determine whether each arm has collided or not. There is an effect that can be judged and calculated faster.

Claims (5)

단위시간 후 이동될 각 암의 궤적을 생성하여 계산하고, 두 로봇 링크의 위치를 직각좌표계 상에서 구하는 단계와; 상기 좌표상에서 구한 각 암의 궤적 데이터는 링크의 중첩이 발생할 수 있는 위치 데이터인가를 판단하는 제 1 판단단계와; 상기 판단단계에서 각 링크가 중첩될 수 있는 데이터이면, 소정 링크의 끝과 다른 암의 링크와 충돌하는 위치데이터인가를 판단하는 제 2 판단단계와; 상기 판단단계에서 각 링크가 충돌하는 데이터가 아니면, 소정 암의 링크가 서로 중첩되어 교차되는 위치데이터인가를 판단하는 제 3 판단단계와; 상기 제 2 및 제 3 판단단계에서 각 암의 링크가 충돌 또는 교차되는 데이터이면, 새 궤적을 무시하고 로봇을 감속정지시키는 단계와; 상기 제 2 및 제 3 판단단계에서 각 암의 링크가 충돌 및 교차되는 데이터가 아니면, 소정의 궤적 프로그램에 따라 각 암의 링크를 구동시키는 단계; 및 상기 단계를 수행한 후, 각 암의 링크가 목표위치에 도달하였는가를 판단하는 단계를 수행하는 것을 특징으로 하는 듀얼-암 로봇의 충돌 방지 제어 방법.Generating and calculating a trajectory of each arm to be moved after the unit time, and obtaining the positions of the two robot links on the rectangular coordinate system; A first judging step of judging whether the trajectory data of each arm obtained on the coordinates is position data where link overlap may occur; A second judging step of judging whether or not each link is overlapping data in the judging step, whether the position data collides with a link of another arm and the end of the predetermined link; A third judging step of judging whether the links of a predetermined arm overlap with each other if the links are not colliding data in the judging step; If the link of each arm collides or crosses data in the second and third determination steps, ignoring the new trajectory and decelerating and stopping the robot; Driving the link of each arm according to a predetermined trajectory program if the link of each arm is not collided or crossed in the second and third determination steps; And determining whether a link of each arm reaches a target position after performing the above steps. 제 1 항에 있어서, 상기 제 1 판단단계에서, 각 링크가 중첩되지 않는 데이터이면, 각 링크의 궤적 데이터를 시스템제어부의 공유메모리에 저장하고, 상기 프로그램에 따라 각 암의 링크를 구동시키는 단계부터 수행하는 것을 특징으로 하는 듀얼-암 로봇의 충돌 방지 제어 방법.The method of claim 1, wherein in the first determination step, if each link is non-overlapping data, storing the trajectory data of each link in a shared memory of the system controller, and driving the link of each arm according to the program. The anti-collision control method of the dual-arm robot, characterized in that performing. 제 1 항에 있어서, 상기 제 1 판단단계는, 직각좌표계 상에서 각 링크의 끝이 이루는 영역을 아래 수식과 같이 비교하는 방법을 사용하여 각 링크의 충돌 여부를 판단하는 것을 특징으로 하는 듀얼-암 로봇의 충돌 방지 제어 방법.The dual-arm robot according to claim 1, wherein the first determination step determines whether each link collides by using a method of comparing an area formed at the end of each link in the rectangular coordinate system as shown in the following equation. Anti-collision control method. expression (X21≥X12)∩(X22≥X11)∩(Y21≥Y12)∩(Y22≥Y11)(X21≥X12) ∩ (X22≥X11) ∩ (Y21≥Y12) ∩ (Y22≥Y11) (단, Xx : X축의 임의의 좌표값, Yy : Y축의 임의의 좌표값)(However, Xx: arbitrary coordinate value of X axis, Yy: arbitrary coordinate value of Y axis) 제 1 항에 있어서, 상기 제 2 판단단계는, 아래 수식과 같은 방법을 사용하여 각 링크의 충돌 여부를 판단하는 것을 특징으로 하는 듀얼-암 로봇의 충돌 방지 제어 방법.The method of claim 1, wherein the second determination step determines whether each link is collided using a method such as the following equation. expression d = R1 + R2d = R1 + R2 (단, d : 제 1 암의 두께 중심과 제 2 암의 두께 중심 간의 수직거리, R1 : 제 1 암의 링크 두께의 절반두께, R2 : 제 2 암의 링크 두께의 절반두께를 의미.)(Where d is the vertical distance between the thickness center of the first arm and the thickness center of the second arm, R1: half thickness of the link thickness of the first arm, and R2: half thickness of the link thickness of the second arm.) d = Δx·sinθ = Δy·cosθd = Δxsinθ = Δycosθ (단, Δx : 제 2 암의 링크 중심과 제 1 암으로 링크 중심과의 X축거리, Δy : 제 2 암의 링크 중심과 제 1 암으로 링크 중심과의 Y축거리, θ : 제 1 암의 두께 중심선과 Δy 선과 만나는 사이각.)Where Δx is the X axis distance between the link center of the second arm and the link center with the first arm, Δy is the Y axis distance between the link center of the second arm and the link center with the first arm, and θ is the first arm. The angle between the center of thickness and the line Δy. 제 1 항에 있어서, 상기 제 2 판단단계는, 아래 수식과 같은 방법을 사용하여 각 링크의 중첩 여부를 판단하는 것을 특징으로 하는 듀얼-암 로봇의 충돌 방지 제어 방법.The method of claim 1, wherein the second determination step comprises determining whether or not each link is overlapped using a method such as the following equation. expression sign(e12·e11 × e12·e22) ≠ sign(e12·e21 × e12·e22)sign (e12, e11 x e12, e22) ≠ sign (e12, e21 x e12, e22) (단, sign(x) : x≥0 이면 1, x<0 이면 -1을 표시함.)(Sign (x): 1 if x≥0, -1 if x <0.)
KR1019970031418A 1997-07-08 1997-07-08 A collision prevention method of a dual-arm robot KR100218106B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970031418A KR100218106B1 (en) 1997-07-08 1997-07-08 A collision prevention method of a dual-arm robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970031418A KR100218106B1 (en) 1997-07-08 1997-07-08 A collision prevention method of a dual-arm robot

Publications (2)

Publication Number Publication Date
KR19990009131A KR19990009131A (en) 1999-02-05
KR100218106B1 true KR100218106B1 (en) 1999-09-01

Family

ID=19513647

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970031418A KR100218106B1 (en) 1997-07-08 1997-07-08 A collision prevention method of a dual-arm robot

Country Status (1)

Country Link
KR (1) KR100218106B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226326A (en) * 2013-03-11 2013-07-31 上海电力学院 Frequency domain analysis method for ship autopilot system
WO2015120008A1 (en) * 2014-02-05 2015-08-13 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
CN106406304A (en) * 2015-07-27 2017-02-15 西门子工业软件有限公司 Anti-collision management of overlapping robotic movements

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226326A (en) * 2013-03-11 2013-07-31 上海电力学院 Frequency domain analysis method for ship autopilot system
WO2015120008A1 (en) * 2014-02-05 2015-08-13 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
KR20160117513A (en) * 2014-02-05 2016-10-10 인튜어티브 서지컬 오퍼레이션즈 인코포레이티드 System and method for dynamic virtual collision objects
US9993222B2 (en) 2014-02-05 2018-06-12 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
US10849591B2 (en) 2014-02-05 2020-12-01 Intuitive Surgical Operations, Inc. System and method for dynamic virtual collision objects
KR102379623B1 (en) 2014-02-05 2022-03-29 인튜어티브 서지컬 오퍼레이션즈 인코포레이티드 System and method for dynamic virtual collision objects
CN106406304A (en) * 2015-07-27 2017-02-15 西门子工业软件有限公司 Anti-collision management of overlapping robotic movements

Also Published As

Publication number Publication date
KR19990009131A (en) 1999-02-05

Similar Documents

Publication Publication Date Title
US8812159B2 (en) Robot system
US20080234864A1 (en) Robots with Collision Avoidance Functionality
KR20110015765A (en) Path planning apparatus of robot and method thereof
JP2011093014A (en) Control device of hand-eye bin picking robot
KR102177711B1 (en) Collision detection sensor and robot comprising the same
KR100218106B1 (en) A collision prevention method of a dual-arm robot
JPH0976065A (en) Welding robot
KR19980083281A (en) Initial welding position detection method of robot
JP2023084115A (en) Point-set interference check
Hamner et al. Mobile robotic dynamic tracking for assembly tasks
Abegg et al. Force-and vision-based detection of contact state transitions
JP2007071556A (en) System for automatically measuring vehicle body
JP3937080B2 (en) Robot interference determination method and control apparatus
JP2000039911A (en) Robot controller
Tang et al. Dual manipulator system of the field hot-line working robot in 110-kV substations
EP3919240A1 (en) Work coordinate generation device
KR100213713B1 (en) Dual robot system and its controlling method
CN113954073B (en) Track analysis method and device for movable part of robot and robot equipment
JPH08161024A (en) Robot for welding
CN116494254B (en) Industrial robot position correction method and industrial robot
CN116901088B (en) Multi-mechanical arm cross operation anti-collision distance monitoring and control system
CN116718495B (en) Anti-fatigue detection method for bending-resistant flexible circuit board
JP2001188604A (en) Method and device for determining arrangement position of work
KR100244757B1 (en) Off-line program method and the jig
JP2000079582A (en) Controlling method for articulated robot arm

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

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee