KR20120005082A - 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템 - Google Patents

로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템 Download PDF

Info

Publication number
KR20120005082A
KR20120005082A KR1020100065647A KR20100065647A KR20120005082A KR 20120005082 A KR20120005082 A KR 20120005082A KR 1020100065647 A KR1020100065647 A KR 1020100065647A KR 20100065647 A KR20100065647 A KR 20100065647A KR 20120005082 A KR20120005082 A KR 20120005082A
Authority
KR
South Korea
Prior art keywords
robot
motion
continuous motion
plan
continuous
Prior art date
Application number
KR1020100065647A
Other languages
English (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 KR1020100065647A priority Critical patent/KR20120005082A/ko
Publication of KR20120005082A publication Critical patent/KR20120005082A/ko

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/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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/33Director till display
    • G05B2219/33116Configuration of motion control
    • 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/40506Self motion topology knowledge, configuration mapping
    • 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/40512Real time path planning, trajectory generation
    • 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/40519Motion, trajectory planning

Abstract

본 발명은 로봇의 연속모션을 블랜딩하는 방법에 관한 것으로서, 특히 가속, 등속 및 감속 과정을 거치는 로봇의 선행모션과, 그 선행모션 다음에 연속적으로 진행되며 가속, 등속 및 감속 과정을 거치는 로봇의 후행모션으로 이루어지는 로봇의 연속모션을 블랜딩하는 방법으로서, 로봇이 선행모션과 후행모션 사이에서 정지하지 않고 연속모션을 수행할 수 있도록, 선행모션의 감속 과정과 후행모션의 가속 과정 일부가 겹치게 블랜딩하는 것을 특징으로 한다. 본 발명에 따르면, 3축에 제한되었던 연속모션이 다관절 로봇의 연속모션으로 확장할 수 있는 이점이 있다. 이와 더불어, 다관절 로봇의 연속모션의 구현으로 다관절 로봇의 신속한 핸들링이 가능하고 소음이나 진동을 감소시킬 수 있을 뿐만 아니라 작업시간을 단축할 수 있는 이점이 있다.

Description

로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템{Continuous motion blending method of robot and robot control system for realizing the method}
본 발명은 로봇 연속모션에 관한 것으로서, 특히 로봇의 연속모션을 블랜딩하는 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템에 관한 것이다.
현재 로봇의 이동 방식은 크게 PTP(Point To Point) 모션과 연속궤적(Continuous Path) 모션으로 나눌 수 있다. PTP 모션은 시작점과 끝점의 위치만 지정하여 주고 중간 경로에 대해서 무시하는 모션을 의미하고, 연속모션은 시작점에서 끝점까지 연결하는 궤적을 생성하여 직선이나 원을 그리면서 움직이도록 하는 모션을 의미한다. 초기의 산업용 로봇은 대량 생산라인에서 단순 반복 작업을 주로 하였기 때문에 PTP 모션으로 충분하였다. 그러나 현재의 산업용 로봇은 단순 반복 작업뿐만 아니라 복잡한 작업을 빠르고 신속하게 핸들링 가능한 모션을 필요로 한다.
이에 대응하기 위해서는 모션 사이의 부드러운 연결인 연속모션 블랜딩 방법이 필수적으로 구현되어야 한다. 연속모션의 구현으로 로봇의 신속한 핸들링이 가능하고 소음/진동 감소 및 작업시간 단축의 효과도 볼 수가 있다.
그리고, 종래에는 x, y, z축의 위치 연속모션 블랜딩 방법이 개발되었는데, 로봇의 모션의 연결에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우에 수식으로 개발되었다.
이후에는, 6자유도 수직 다관절 로봇을 예로 들어 로봇의 모션에 대한 전반적인 내용을 설명하고 이를 토대로 연속모션에 대해 설명하기로 한다. 6자유도 수직 다관절 로봇은 도 1에 도시한 바와 같이, 로봇의 각 관절(Joint)에 총 6개의 모터가 설치되어 있으며, 각 관절마다 모터에 각도(θ)를 주어 로봇을 움직일 수 있는데, 6축 수직 다관절 로봇이라고도 부른다.
<용어 정의>
- 로봇의 모션(Motion) : 로봇의 동작을 의미하며 크게 관절(Joint), 직선(Linear), 원호(Circle) 동작이 존재한다.
- 로봇의 이동 방식 : PTP(Point To Point) 모션, 연속(CP, Continuous Path)모션으로 나누어진다. PTP 모션은 시작점과 끝점의 위치만 지정하여 주고 중간 경로에 대해서 무시하는 모션이고, 연속모션은 시작점에서 끝점까지 연결하는 궤적을 생성하여 직선이나 원을 그리면서 움직이도록 하는 모션을 의미한다. 연속모션은 CP모션이라고도 쓰인다.
- 위치 연속모션 블랜딩 : 한 개의 모션이 시작되고 끝날 때에 다음 모션의 궤적과 연결되는 궤적이 x, y, z 축 3차원의 위치로 생성된다.
- 자세 연속모션 블랜딩 : 한 개의 모션이 시작되고 끝날 때에 다음 모션의 궤적과 연결되는 궤적이 Roll, Pitch, Yaw의 자세로 생성한다.
- Roll: 로봇 베이스 좌표계의 x방향을 기준으로 정의된 기울기
- Pitch: 로봇 베이스 좌표계의 y방향을 기준으로 정의된 기울기
- Yaw: 로봇 베이스 좌표계의 z방향을 기준으로 정의된 기울기
1. 로봇 모션(Robot Motion)
1.1 관절 모션(Joint Motion)
도 2는 관절 모션을 보여주는 사시도로서, 로봇의 각 관절이 서로 독립적으로 움직이는 모션으로 각 관절에 시작 각도(θs) 값이 주어지고 끝 각도(θe)가 주어지면 로봇의 각 축이 독립적으로 움직인다. 각 관절이 독립적으로 주어진 각도에 의하여 움직이므로 로봇의 끝단은 직선을 보장하지 않는다.
1.2 직선(Linear) 모션
도 3은 직선 모션을 보여주는 사시도로서, 로봇의 각 관절이 서로 동시에 움직이는 모션으로 로봇 모션의 시작 위치(x, y, z), 자세(roll, pitch, yaw) 값이 주어지고 로봇 모션의 끝 위치(x, y, z), 자세(roll, pitch, yaw)가 주어지면 로봇의 각 축이 동시에 직선으로 움직인다. 로봇의 끝단이 직선을 유지하며 움직이기 위하여 주어진 x, y, z, roll, pitch, yaw를 가지고 각도(θ)를 계산하여 로봇의 관절을 움직인다.
1.3 원호(Circle) 모션
도 4는 원호 모션을 보여주는 사시도로서, 로봇의 각 관절이 서로 동시에 움직이는 모션으로 로봇 모션의 시작 위치(x, y, z), 자세(roll, pitch, yaw) 값이 주어지고 로봇 모션의 끝 위치(x, y, z), 자세(roll, pitch, yaw)가 주어지면 로봇의 각 축이 동시에 원을 그리며 움직인다. 로봇의 끝단이 원호를 유지하며 움직이기 위하여 주어진 x, y, z, roll, pitch, yaw를 가지고 각도(θ)를 계산하여 로봇의 관절을 움직인다.
2. 로봇의 끝단의 위치(x, y, z)와 자세(roll, pitch, yaw)
도 5는 로봇의 끝단의 x좌표 이동을 보여주는 사시도, 도 6은 로봇의 끝단의 y좌표 이동을 보여주는 사시도, 도 7은 로봇의 끝단의 z좌표 이동을 보여주는 사시도, 도 8은 로봇의 끝단의 roll 이동을 보여주는 사시도, 도 9는 로봇의 끝단의 pitch 이동을 보여주는 사시도, 도 10은 로봇의 끝단의 yaw 이동을 보여주는 사시도이다.
로봇의 끝단의 위치 x, y, z란 로봇의 Base 좌표계를 3차원상에 (0, 0, 0)이라고 하였을 때 로봇의 끝단의 위치를 x, y, z표시한 것을 의미한다. 그리고, 로봇의 끝단의 자세 roll, pitch, yaw란 로봇의 Base 좌표계를 기준으로 회전함을 의미한다. Roll은 로봇의 Base 좌표계의 x축을 중심으로 회전한 정도를 의미하고, Pitch는 y축을 중심으로 회전한 정도를 의미하고, Yaw는 z축을 중심으로 회전한 정도를 의미한다.
3. 로봇의 이동방법
3.1 단일 모션
단일 모션이란 단일 모션 로봇의 하나의 모션이 하나의 궤도를 생성하면서 이동함을 의미한다. 예를 들어 상술한 로봇의 모션 종류가 작업파일로 아래와 같이 작성되었다고 가정하자.
...
MOVJ... ← PTP 관절 모션
MOVL... ← CP 직선 모션
MOVC... ← CP 원호 모션
...
여기에서 MOVJ는 특히 시작점과 끝점의 위치만 지정하여 주고 중간 경로에 대해서 무시하는 모션으로서 각 관절별로 움직이는 PTP(Point To Point)모션이고, MOVL과 MOVC는 시작점에서 끝점까지 직선이나 원을 그리면서 움직이도록 하는 모션으로서 CP(Continuous Path)모션이다.
작업파일을 실행하면 로봇은 도 11에 도시한 바와 같이, 작업파일의 순서대로 로봇이 이동한다. 이때 단일 모션으로 동작하면 로봇은 모션 마다 궤적(Path)을 생성하여 관절동작, 직선동작, 원호동작을 한다. 로봇의 이동은 각 모션의 속도 측면에서 보면 가속→등속→감속을 하여 움직인다. 구체적으로 말하면 관절동작에서 가속하여 등속으로 이동한 후 정지한다. 이후 다음 직선동작에서 가속하여 등속으로 이동한 후 정지한다. 마지막으로 원호동작에서 가속하여 등속으로 이동한 후 정지한다. 즉, 각각의 모션마다 궤적을 생성하여 가속 출발하고 정지하는 형태를 보인다.
이는 로봇이 작업해야 할 작업파일에 명령어가 많은 경우 전체 작업 실행시간(Work Time)이 많이 소요되는 현상을 보이며 로봇이 많이 가속, 감속 할 때 로봇의 수명이 줄어드는 단점이 있다.
3.2 연속모션 블랜딩(Continuous Motion Blending)
연속모션은 로봇의 여러 모션이 하나의 궤도를 생성하면서 이동함을 의미한다. 상기 단일 모션의 예와 다르게 각 로봇의 모션마다 정지하는 것이 아니고 모든 모션이 하나의 궤적을 생성하여 정지하는 동작 없이 부드럽게 이동하는 것이다. 모든 모션이 하나의 궤적을 생성하며 정지하는 동작 없이 부드럽게 이동하기 위해서는 각 모션의 연결부분에서 부드러운 궤적이 생성되어야 한다. 즉, 연속모션의 방법은 각 로봇의 모션이 연결되는 부분의 궤적의 생성이다. 모션이 연결되는 부분의 궤적의 생성을 연속모션 블랜딩이라 한다.
도 12에 도시한 바와 같이 연속모션 블랜딩 구간(빨간색)을 확대하여 살펴보면, 연속모션 블랜딩이 생성되는 구간은 도 13에 도시한 바와 같이 경유점을 지나지 않는 새로운 궤적이 생성되는 것이다.
3.3 종래의 연속모션 블랜딩 방법
연속모션 블랜딩 방법이란 모션이 연결되는 부분의 궤적을 생성하는 수학적 수식을 의미한다. 일반적인 PTP 모션의 속도 프로파일은 도 14에 도시한 바와 같이 이 진행한다. 각 로봇의 모션은 도 14에 도시한 바와 같이, 가속-등속-감속을 거치면서 모션이 끝나면 속도가 완전이 0으로 떨어진 다음에 다음 모션이 진행된다. 다음 모션 역시 가속-등속-감속의 속도를 보이면서 모션이 끝나면 속도가 완전이 0으로 떨어진다.
그런데, 종래의 위치 연속모션 블랜딩 방법은 x, y, z 축으로 움직이는 3축 SCARA 로봇의 연속모션만 적용이 가능하다. 따라서, 3축 이상의 다관절 로봇으로 확장하는 연속모션 블랜딩 방법은 불가능하다. 다관절 로봇의 경우 위치 연속모션 뿐만 아니라 자세 연속모션 블랜딩 방법이 개발되어야 연속모션이 가능하기 때문이다.
이에 따라, 다관절 로봇의 연속모션 블랜딩 방법의 개발을 위해서는 위치 뿐만 아니라 자세 연속모션 블랜딩 방법이 필요하다. 구체적으로 직선-직선, 원호-원호의 경우에 자세 연속모션 블랜딩 방법이 필요하다. 또한 연속모션 블랜딩 방법을 적용하기 위한 로봇 제어 시스템 구조가 필요하다.
이에 본 발명은 상기와 같은 필요성에 부응하기 위한 것으로서, 로봇 위치 연속모션 블랜딩 방법을 확장한 자세 연속모션 블랜딩 방법 및 그 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템을 제공하는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여 본 발명에 따른 로봇 연속모션 블랜딩 방법은, 가속, 등속 및 감속 과정을 거치는 로봇의 선행모션과, 그 선행모션 다음에 연속적으로 진행되며 가속, 등속 및 감속 과정을 거치는 로봇의 후행모션으로 이루어지는 로봇의 연속모션을 블랜딩하는 방법으로서, 로봇이 선행모션과 후행모션 사이에서 정지하지 않고 연속모션을 수행할 수 있도록, 선행모션의 감속 과정과 후행모션의 가속 과정 일부가 겹치게 블랜딩하는 것을 특징으로 한다.
한편, 상기와 같은 목적을 달성하기 위하여 로봇 연속모션 블랜딩 방법을 구현을 위한 로봇 제어 시스템은, 상기 기재된 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템으로서, 로봇의 제어의 전체적인 관리 역할을 수행하며 전체적인 시퀀스 흐름을 제어하는 로봇 매니저와; 로봇의 모션에 관련된 정보를 계산하는 작업 실행기와; 작업 실행기에서 생성된 정보의 지령을 받아 실시간으로 로봇을 제어하는 서보 제어기와; 사용자로부터 로봇의 작동에 관한 시퀀스를 입력받는 티칭 팬던트를 포함하여 이루어진 것을 특징으로 한다.
여기에서, 상기 작업 실행기는 사용자로부터 입력되는 로봇 명령어를 로봇이 실행 가능한 정보들을 플랜으로 계산하는 플랜 제너레이터를 구비하고 있고, 상기 플랜 제너레이터는, 로봇 매너저로부터 모션 명령어를 제공받아, 로봇 모션에 필요한 정보들을 계산하여 플랜을 생성하고, 생성된 플랜을 플랜 버퍼에 저장하고, 현재 생성된 플랜이 연속모션이면 로봇 매니저로부터 모션 명령어를 다시 제공받아 플랜을 생성하여 플랜 버퍼에 저장하고, 연속모션이 아니면 플랜 생성을 종료할 수 있다.
또한, 상기 작업 실행기는 일정 단위 시간마다 로봇이 이동할 각 관절의 각도를 계산하는 궤적 제너레이터를 구비하고 있고, 상기 궤적 제너레이터는, 플랜 버퍼에서 하나의 플랜을 제공받아 일정 단위 시간마다 궤적을 계산하되, 현재 실행하는 구간이 연속모션 구간이면 연속모션 블랜딩을 계산하고, 연속모션 구간이 아니면 다음 모션 구간을 계산할 수 있다.
또한, 상기 연속모션 블랜딩의 계산은, 연결되는 로봇의 모션의 관계에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우로 구분하여 연속궤적을 계산할 수 있다.
본 발명에 따르면, 3축에 제한되었던 연속모션이 다관절 로봇의 연속모션으로 확장할 수 있는 이점이 있다. 이와 더불어, 다관절 로봇의 연속모션의 구현으로 다관절 로봇의 신속한 핸들링이 가능하고 소음이나 진동을 감소시킬 수 있을 뿐만 아니라 작업시간을 단축할 수 있는 이점이 있다.
도 1은 6자유도 수직 다관절 로봇을 보여주는 사시도.
도 2는 관절 모션을 보여주는 사시도.
도 3은 직선 모션을 보여주는 사시도.
도 4는 원호 모션을 보여주는 사시도.
도 5는 로봇의 끝단의 x좌표 이동을 보여주는 사시도.
도 6은 로봇의 끝단의 y좌표 이동을 보여주는 사시도.
도 7은 로봇의 끝단의 z좌표 이동을 보여주는 사시도.
도 8은 로봇의 끝단의 roll 이동을 보여주는 사시도.
도 9는 로봇의 끝단의 pitch 이동을 보여주는 사시도.
도 10은 로봇의 끝단의 yaw 이동을 보여주는 사시도.
도 11은 단일 모션을 보여주는 사시도.
도 12,13은 연속 모션을 보여주는 사시도.
도 14는 종래의 연속모션 블랜딩 방법을 보여주는 속도 프로파일.
도 15는 본 발명에 따른 로봇 연속모션 블랜딩 방법을 보여주는 속도 프로파일.
도 16,17은 본 발명에 따른 로봇 연속모션 블랜딩 방법을 설명하기 위한 도면.
도 18은 본 발명에 따른 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템의 개념도.
도 19는 도 18의 플랜 제너레이터 함수의 흐름도.
도 20은 도 18의 궤적 제너레이터 함수의 흐름도.
도 21은 도 18의 작업 실행기의 연속궤적 구간 계산 흐름도.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
본 발명에 따른 로봇 연속모션 블랜딩 방법은 종래의 위치 연속모션 블랜딩 방법에서 직선-직선, 원호-원호의 경우에서 확장한 자세 연속모션 블랜딩 방법이다. 즉, 도 15에 도시한 바와 같이, 가속, 등속 및 감속 과정을 거치는 로봇의 선행모션과, 그 선행모션 다음에 연속적으로 진행되며 가속, 등속 및 감속 과정을 거치는 로봇의 후행모션으로 이루어지는 로봇의 연속모션에서, 속도 프로파일을 겹치게 하여 로봇이 각 모션 사이에서 정지하지 않고 곧바로 다음 모션을 수행하게 하는 방법이다.
부연하자면, 로봇이 선행모션과 후행모션 사이에서 정지하지 않고 연속모션을 수행할 수 있도록 하기 위해서는 선행모션이 끝날 때 속도가 0으로 떨어지지 않아야 하기 때문에 선행모션의 감속 과정과 후행모션의 가속 과정 일부가 겹치게 블랜딩하는 것이다. 이와 같이, 연속모션 블랜딩 구간에 속도를 겹치게 되면 속도가 0으로 떨어지지 않는 궤적이 생성되게 된다.
이후, 본 발명에 따른 로봇 연속모션 블랜딩 방법에 대하여 좀 더 구체적으로 설명하기로 한다.
본 발명에 따른 로봇 연속모션 블랜딩 방법은 연결되는 로봇의 모션의 관계에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우에 해당된 수식이 정의된다.
종래의 로봇 연속모션 블랜딩 방법 중 테일러의 방법은 이종 모션간의 블랜딩에 적용할 수 없다. 그리고 종래의 연속모션 블랜딩 방법은 로봇의 모션의 연결에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우에 수식으로 개발되어 있다. 그러나, 이 방법은 x, y, z축의 위치 연속모션 블랜딩 방법만 정의되어 있어, 3축 SCARA 로봇의 연속모션에만 적용 가능하다. 이를 다관절 로봇에 확장하기 위해서는 자세 연속모션 블랜딩 방법의 개발이 필요하다. 다관절 로봇의 연속모션을 위해서는 위치뿐만 아니라 자세 연속모션 블랜딩 방법이 필요하기 때문이다.
따라서, 본 발명에서는 종래의 방법을 보완하여 다관절 로봇의 자세 제어에도 적용할 수 있도록 한 것이다. 구체적으로, 직선-직선, 원호-원호의 경우에 자세 연속모션 블랜딩 방법을 발명한 것이다.
도 16,17은 본 발명에 따른 로봇 연속모션 블랜딩 방법을 설명하기 위한 도면이다.
예를 들어 관절모션-관절모션의 연속모션 블랜딩 방법을 설명하면 다음과 같다. PTP 관절모션과 다음 관절 모션을 블랜딩하기 위한 방법이다. 첫번째 관절 모션은 로봇의 각 관절이 Js에서 Jv로 움직이게 하는 것이다. 두번째 관절 모션은 Jv에서 Je로 가는 모션이다. 블랜딩을 하지 않으면 로봇의 Js에서 Jv의 자세로 움직인 후 일단 정지하였다가 Jv에서 Je의 자세로 움직이게 된다.
그런데, 도 16에서 보여주는 관절모션-관절모션에서 Js에서 Je로 가는 동안 Jv의 자세에서 정지하지 않고 이동하게 할 수 있다. 여기에서 u1(t)와 u2(t) 함수는 블랜딩을 하기 위해 도입되는 함수로서 u1(t)는 Js에서 Jv로 이동하는 연속함수이고, u2(t)는 Jv에서 Je로 이동하는 연속함수이다.
도 18은 본 발명에 따른 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템의 개념도, 도 19는 도 18의 플랜 제너레이터 함수의 흐름도, 도 20은 도 18의 궤적 제너레이터 함수의 흐름도, 도 21은 도 18의 작업 실행기의 연속궤적 구간 계산 흐름도이다.
도 18 내지 20을 참조하여, 본 발명에 따른 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템에 대하여 설명한다.
도 18에 도시한 바와 같이, 본 발명에 따른 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템(100)은, 로봇 매니저(110:Robot Manager), 작업 실행기(120:Task Executer), 서보 제어기(130: Servo Controller) 및 티칭 팬던트(140:Teaching Pendant)를 포함하여 이루어진다.
상기 로봇 매니저(110)는 로봇의 제어의 전체적인 관리 역할을 수행하며 전체적인 시퀀스의 흐름을 제어한다. 세부적으로 설명하면, 티칭 펜던트(140)로부터 작성된 작업파일을 실행하면 그 실행정보를 로봇 매니저(110)에 넘겨준다. 로봇 매니저(110)는 실행정보를 명령어 해석기(Language Interpreter)를 통하여 작업 실행기(120)가 실행할 수 있는 정보로 가공한다. 명령어 해석기(Language Interpreter)가 실행정보를 가공하면 모션실행시작을 이벤트를 통하여 작업 실행기(120)에 알려준다. 그 후 로봇 매니저(110)는 작업 실행기(120) 및 서보 제어기(130)와 정보를 공유하며 모니터링 데이터를 관리한다. 이렇게 관리된 모니터링 데이터는 티칭 펜던트(140)를 통하여 표시되어 작업자에게 정보를 제공한다.
상기 작업 실행기(120)는 로봇의 모션에 관련된 정보를 계산한다. 세부적으로 설명하면, 작업 실행기(120)의 내부의 이벤트 제어(Event Control) 부분에서 로봇 매니저(110)로부터 오는 이벤트를 감지한다. 로봇 매니저(110)로부터 모션 실행 시작을 알리는 이벤트가 감지되면 플랜 제너레이터(Plan Generator)를 통하여 로봇의 모션에 대한 정보를 세부적으로 계산한다. 계산된 정보를 바탕으로 궤적 제너레이터(Trajectory Generator)를 통하여 단위 시간(Sampling Time)마다 로봇이 움직이는 위치를 계산한다. 계산된 단위 시간마다 움직이는 위치 정보를 서보제어 위치지령을 통하여 서보 제어기(130)에 넘겨준다.
상기 서보 제어기(130)는 작업 실행기(120)에서 생성된 정보의 지령을 받아 실시간으로 로봇을 제어한다. 세부적으로 설명하면, 작업 실행기(120)를 통하여 넘겨 받은 단위 시간당 위치정보를 모션 제어(Motion Control)을 통하여 더욱 세분하게 나눠 모션보드에 넘겨준다. 이때 용접 전류, 전압 같은 지령과 같은 IO 관련 정보들을 입출력 제어(I/O Control)을 통하여 동시에 실시간으로 제어한다.
상기 티칭 팬던트(140)는 사용자로 하여금 로봇의 작동에 관한 시퀀스를 입력 받는다. 세부적으로 설명하면, 로봇의 이동 및 용접 등과 같은 응용 애플리케이션을 실행하기 위하여 작업파일 및 필요한 정보들을 세팅한다. 사용자로부터 쉽고 빠르게 정보를 입력/수정 가능하게 하기 위하여 GUI 인터페이스 및 키입력으로 구성되어 있다. 로봇의 작동에 관한 순서에 맞춰 작업파일이 작성되어 관리/저장된다.
연속모션 블랜딩 방법을 적용하기 위해서는 작업 실행기(120)의 새로운 구조가 필요하다. 즉, 작업 실행기(120)에 플랜 제너레이터(Plan Generator) 함수와 궤적 제너레이터(Trajectory Generator) 함수의 새로운 구조가 필요하다.
플랜 제너레이터 함수는 입력된 로봇 명령어를 로봇이 실행 가능한 정보들을 플랜으로 계산하는 함수이다. 도 19에 도시한 바와 같이, 플랜 제너레이터 함수는 우선 로봇 매니저(110)로부터 모션 명령어를 제공받는다. 로봇 모션에 필요한 정보들을 계산하여 플랜을 생성한다. 생성된 플랜을 플랜 버퍼에 저장한다. 그리고, 현재 생성된 플랜이 연속모션이면 다시 로봇 매니저(110)로부터 모션 명령어를 제공받아 플랜 생성을 반복하여 생성된 플랜을 플랜 버퍼에 저장한다. 마지막으로, 현재 생성된 플랜이 연속모션이 아니면, 플랜 생성을 종료한다.
궤적 제너레이터 함수는 일정 단위 시간마다 로봇이 이동할 각 관절의 각도를 계산하는 함수이다. 도 20에 도시한 바와 같이, 궤적 제너레이터 함수는 우선 플랜 버퍼에서 하나의 플랜을 제공받아 일정 단위 시간마다 궤적을 계산한다. 그리고, 현재 실행하는 구간이 연속모션 구간이면 연속모션 블랜딩을 계산하고, 연속모션 구간이 아니면 다음 모션 구간을 계산한다.
그리고, 연속모션 블랜딩의 방법은 연결되는 로봇의 모션의 관계에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우에 해당되는 알고리즘이 존재한다. 즉, 도 21에 도시한 바와 같이, 현재 모션과 다음 모션의 연결관계에 따라서 분류되어 각각의 경우에 맞는 연속모션 블랜딩 방법이 적용되어 궤적을 생성한다.
한편, 본 발명에 따른 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템을 한정된 실시예에 따라 설명하였지만, 본 발명의 범위는 특정 실시예에 한정되는 것은 아니며, 본 발명과 관련하여 통상의 지식을 가진자에게 자명한 범위내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.
따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100 : 로봇 제어 시스템 110 : 로봇 매니저
120 : 작업 실행기 130 : 서보 제어기
140 : 티칭 팬던트

Claims (5)

  1. 가속, 등속 및 감속 과정을 거치는 로봇의 선행모션과, 그 선행모션 다음에 연속적으로 진행되며 가속, 등속 및 감속 과정을 거치는 로봇의 후행모션으로 이루어지는 로봇의 연속모션을 블랜딩하는 방법으로서,
    로봇이 선행모션과 후행모션 사이에서 정지하지 않고 연속모션을 수행할 수 있도록, 선행모션의 감속 과정과 후행모션의 가속 과정 일부가 겹치게 블랜딩하는 것을 특징으로 하는 로봇 연속모션 블랜딩 방법.
  2. 청구항 1에 기재된 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템(100)으로서,
    로봇의 제어의 전체적인 관리 역할을 수행하며 전체적인 시퀀스 흐름을 제어하는 로봇 매니저(110)와;
    로봇의 모션에 관련된 정보를 계산하는 작업 실행기(120)와;
    작업 실행기(120)에서 생성된 정보의 지령을 받아 실시간으로 로봇을 제어하는 서보 제어기(130)와;
    사용자로부터 로봇의 작동에 관한 시퀀스를 입력받는 티칭 팬던트(140)를 포함하여 이루어진 것을 특징으로 하는 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템.
  3. 청구항 2에 있어서,
    상기 작업 실행기(120)는 사용자로부터 입력되는 로봇 명령어를 로봇이 실행 가능한 정보들을 플랜으로 계산하는 플랜 제너레이터를 구비하고 있고,
    상기 플랜 제너레이터는,
    로봇 매너저(110)로부터 모션 명령어를 제공받아, 로봇 모션에 필요한 정보들을 계산하여 플랜을 생성하고, 생성된 플랜을 플랜 버퍼에 저장하고, 현재 생성된 플랜이 연속모션이면 로봇 매니저(110)로부터 모션 명령어를 다시 제공받아 플랜을 생성하여 플랜 버퍼에 저장하고, 연속모션이 아니면 플랜 생성을 종료하는 것을 특징으로 하는 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템.
  4. 청구항 3에 있어서,
    상기 작업 실행기(120)는 일정 단위 시간마다 로봇이 이동할 각 관절의 각도를 계산하는 궤적 제너레이터를 구비하고 있고,
    상기 궤적 제너레이터는,
    플랜 버퍼에서 하나의 플랜을 제공받아 일정 단위 시간마다 궤적을 계산하되, 현재 실행하는 구간이 연속모션 구간이면 연속모션 블랜딩을 계산하고, 연속모션 구간이 아니면 다음 모션 구간을 계산하는 것을 특징으로 하는 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템.
  5. 청구항 4에 있어서,
    상기 연속모션 블랜딩의 계산은,
    연결되는 로봇의 모션의 관계에 따라 관절-관절, 관절-직선, 관절-원호, 직선-관절, 직선-직선, 직선-원호, 원호-관절, 원호-직선, 원호-원호의 경우로 구분하여 연속궤적을 계산하는 것을 특징으로 하는 로봇 연속모션 블랜딩 방법을 구현하기 위한 로봇 제어 시스템.
KR1020100065647A 2010-07-08 2010-07-08 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템 KR20120005082A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100065647A KR20120005082A (ko) 2010-07-08 2010-07-08 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100065647A KR20120005082A (ko) 2010-07-08 2010-07-08 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템

Publications (1)

Publication Number Publication Date
KR20120005082A true KR20120005082A (ko) 2012-01-16

Family

ID=45611325

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100065647A KR20120005082A (ko) 2010-07-08 2010-07-08 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템

Country Status (1)

Country Link
KR (1) KR20120005082A (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104023922A (zh) * 2011-11-02 2014-09-03 三星重工业株式会社 用于实时控制编排动作的装置和方法
CN108262747A (zh) * 2018-01-16 2018-07-10 广州视源电子科技股份有限公司 运动轨迹规划方法、装置、机器人及存储介质
CN109108965A (zh) * 2018-07-27 2019-01-01 武汉精锋微控科技有限公司 一种应用于机械手臂的笛卡尔空间运动预测方法
WO2021137486A1 (ko) * 2019-12-31 2021-07-08 주식회사 한화 로봇의 제어 장치, 방법 및 컴퓨터 프로그램
CN113568414A (zh) * 2021-09-09 2021-10-29 苏州艾利特机器人有限公司 一种机器人的运动控制方法、装置、机器人及存储介质
KR20230024002A (ko) * 2021-08-11 2023-02-20 한국생산기술연구원 로봇의 모션 경로 블렌딩 방법 및 그 장치

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104023922A (zh) * 2011-11-02 2014-09-03 三星重工业株式会社 用于实时控制编排动作的装置和方法
US9302390B2 (en) 2011-11-02 2016-04-05 Samsung Heavy Ind. Co., Ltd. Device and method for controlling weaving motion in real time
CN108262747A (zh) * 2018-01-16 2018-07-10 广州视源电子科技股份有限公司 运动轨迹规划方法、装置、机器人及存储介质
CN108262747B (zh) * 2018-01-16 2021-07-13 广州视源电子科技股份有限公司 运动轨迹规划方法、装置、机器人及存储介质
CN109108965A (zh) * 2018-07-27 2019-01-01 武汉精锋微控科技有限公司 一种应用于机械手臂的笛卡尔空间运动预测方法
WO2021137486A1 (ko) * 2019-12-31 2021-07-08 주식회사 한화 로봇의 제어 장치, 방법 및 컴퓨터 프로그램
KR20230024002A (ko) * 2021-08-11 2023-02-20 한국생산기술연구원 로봇의 모션 경로 블렌딩 방법 및 그 장치
CN113568414A (zh) * 2021-09-09 2021-10-29 苏州艾利特机器人有限公司 一种机器人的运动控制方法、装置、机器人及存储介质

Similar Documents

Publication Publication Date Title
EP3566822B1 (en) Robot joint space point-to-point movement trajectory planning method
Kröger Opening the door to new sensor-based robot applications—The Reflexxes Motion Libraries
JP6238628B2 (ja) ロボット装置、ロボット制御方法、ロボット制御プログラム及びロボット装置を用いた部品の製造方法
KR20120005082A (ko) 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템
KR20150044812A (ko) 티칭 시스템 및 티칭 방법
US9120223B2 (en) Method of controlling seven-axis articulated robot, control program, and robot control device
Bolmsjö et al. Robotic arc welding–trends and developments for higher autonomy
CN109623825B (zh) 一种移动轨迹规划方法、装置、设备和存储介质
CN108582071A (zh) 一种工业机器人编程轨迹诊断及速度优化的方法
US11865725B2 (en) Computer-assisted ascertainment of a movement of an apparatus
KR20180114837A (ko) 로봇의 이동 속도 제어 장치 및 방법
JP2018037038A (ja) コントローラ、作業制御装置、多軸動作制御装置、及び駆動制御装置
Dai et al. Robot assembly skills based on compliant motion
JP2015174184A (ja) 制御装置
Fresnillo et al. Extending the motion planning framework—moveit with advanced manipulation functions for industrial applications
JP2006059037A (ja) 溶接ロボット制御装置
Weidauer et al. A hierarchical extension of manipulation primitives and its integration into a robot control architecture
KR101205363B1 (ko) 6자유도 제어기를 이용한 4자유도 로봇 제어방법 및 제어장치
JP2016221653A (ja) ロボット制御装置およびロボットシステム
Ostanin et al. Interactive Industrial Robot Programming based on Mixed Reality and Full Hand Tracking
CN111699079B (zh) 协调系统、操作设备和方法
Zhao et al. Online via-points trajectory generation for reactive manipulations
Weber et al. User-Defined Transition between Path Segments in Terms of Tolerances in Speed and Position Deviation
JP3668821B2 (ja) ロボットコントローラおよびロボット制御方法
Matour et al. Intuitive Robot Path Planning through Augmented Reality

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application