KR20050022757A - 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System - Google Patents

공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System Download PDF

Info

Publication number
KR20050022757A
KR20050022757A KR1020030060457A KR20030060457A KR20050022757A KR 20050022757 A KR20050022757 A KR 20050022757A KR 1020030060457 A KR1020030060457 A KR 1020030060457A KR 20030060457 A KR20030060457 A KR 20030060457A KR 20050022757 A KR20050022757 A KR 20050022757A
Authority
KR
South Korea
Prior art keywords
triangle
motion
weaving
articulated robot
high speed
Prior art date
Application number
KR1020030060457A
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 KR1020030060457A priority Critical patent/KR20050022757A/ko
Publication of KR20050022757A publication Critical patent/KR20050022757A/ko

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/003Programme-controlled manipulators having parallel kinematics
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms

Landscapes

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

Abstract

공작기계를 포함하는 자동화라인에서 로봇의 역할 중에 공작물의 위치이동이나 積載時 그 균일성을 유지하기 위해서 유연한 동작이 요구된다. 또한, 용접작업의 균일성을 유지하게 하기 위해 정확한 동작이 요구되며 이렇게 구축된 시스템은 CNC 머시닝센터, Part Positioner, Welding Unit 등과의 Interface가 용이하도록 하여야 한다. 로봇의 Weaving Motion(위빙동작)은 유연한 로봇 동작의 대표적인 예로써 숙련된 사람이 용접할 때와 같은 사항에 맞는 동작 궤적을 생성해야 한다. 현재 DR6 로봇의 경우에 Weaving Motion이 구현되어 있지만, 끝부분에서의 직선이동 현상과, 연속된 직선 Weaving 시 교점에서 순간적인 정지(stop)가 일어남으로 말미암아 작업의 지연 및 고객의 신뢰도 저하를 가져오는 원인이 되고 있다. 본 연구에서는 로봇시스템의 고속 ·유연한 Weaving Motion의 구현을 목표로 다음과 같이 크게 두 개의 주제에 대하여 연구를 수행한다.
· 6축 수직다관절 로봇의 특이점 부근에서의 유연한 관절 운동 전략구현
· 새로운 Weaving Motion 알고리즘 제안

Description

공작기계 자동화를 위한 특이점부근 유연한 관절운동 및 Weaving Motion을 가진 6 자유도 수직다관절 로봇을 포함하는 고속 Autoloading System{High Speed Autoloading System including a 6-DOF Articulated Robot with Flexible Weaving Motion and Joint Motion in the Vicinity of Singularities for Automation of Machine Tools}
공작기계를 포함하는 자동화라인에서 로봇의 역할 중에 공작물의 위치이동이나 積載時 그 균일성을 유지하기 위해서 유연한 동작이 요구된다. 또한, 용접작업의 균일성을 유지하게 하기 위해 정확한 동작이 요구되며 이렇게 구축된 시스템은 CNC 머시닝센터, Part Positioner, Welding Unit 등과의 Interface가 용이하도록 하여야 한다. 로봇의 Weaving Motion(위빙동작)은 유연한 로봇 동작의 대표적인 예로써 숙련된 사람이 용접할 때와 같은 사항에 맞는 동작 궤적을 생성해야 한다. 현재 DR6 로봇의 경우에 Weaving Motion이 구현되어 있지만, 끝부분에서의 직선이동 현상과, 연속된 직선 Weaving 시 교점에서 순간적인 정지(stop)가 일어남으로 말미암아 작업의 지연 및 고객의 신뢰도 저하를 가져오는 원인이 되고 있다.
현재 DR6 로봇의 경우에 Weaving Motion이 구현되어 있지만, 끝부분에서의 직선이동 현상과, 연속된 직선 Weaving 시 교점에서 순간적인 정지(stop)가 일어남으로 말미암아 작업의 지연 및 고객의 신뢰도 저하를 가져오는 원인이 되고 있다. 본 연구에서는 로봇시스템의 고속 ·유연한 Weaving Motion의 구현을 목표로 다음과 같이 크게 두 개의 주제에 대하여 연구를 수행한다.
·6축 수직다관절 로봇의 특이점 부근에서의 유연한 관절 운동 전략 구현
· 새로운 Weaving Motion 알고리즘 제안
1. 6축 수직다관절 로봇의 특이점 부근에서의 유연한 관절 운동 전략 구현
1.1 특이점 회피 알고리즘 구축 및 구현
특이점이란 6축의 수직다관절 로봇의 경우 링크기구학적으로 피할 수 없는 부분이다. 하지만, 피할 수 없다할지라도 소프트웨어 상으로 이것을 회피하여 실제 사용자들로 하여금 로봇의 신뢰성을 높여주어야 제품으로서의 가치가 높아진다.
특이점회피 알고리즘은 두 가지로 제시하였다. 첫째로, 기존 로봇의 프로그램에서의 특이성을 나타내는 부분을 조건문을 사용하여 R축과 B축이 동시에 0° 가 되는 부분에 들어가게 되면 IF 조건문을 이용하여 특이성을 인지토록 하고, 여기의 조건문 내에서 1차적으로 특이성을 회피하고자 하였다.
둘째로는 새로운 특이점 회피의 알고리즘을 창안하였다. 내용으로는 로봇의 테스트 결과 대부분의 특이성이 4축 모터의 과부하(급가속)에 있다는 점을 감안하여 조건문에서 4축을 특이성 인지시에 0° 로 고정을 하여 나머지 축으로 역기구학적 해석에 의한 경로를 구현하였다.
그 결과, 수직이동시의 티칭과 로봇의 운용시 특이점을 지나가게 되었고, 기존 프로그램상의 오동작-즉, 서보다운-을 일으키지 않음을 확인하였다. 앞으로 이 프로그램상의 수정, 보완이 시급히 필요하지만, 첫 번째 성과로서의 특이점 회피임에는 의심의 여지가 없다. 특이점 회피에 대한 연구결과에 있어서 두 번째 내용으로는 새로운 특이점 회피의 알고리즘으로서 어느 형태의 특이성이라도 회피하기 위해서 새로운 특이성회피의 알고리즘을 창안하였다.
시뮬레이션 검증을 토대로 실제 산업용 6축 수직다관절 로봇의 제어에 있어서 그 직선보간속도는 1500mm/sec로써 속도제한을 가하게 되면 (b)와 같은 결과가 나타난다. 결과적으로는 특이성을 회피할 수 있었고, 각축의 최대회전각속도 또한 넘지 않아 특이점을 회피하여 제어됨을 알 수 있다. 전체적인 제어시간은 어느 정도 늘어남을 알 수 있었다.
1.2 유연한 원호보간 기능에 대한 연구
공간상에 n개의 점 데이터가 순서대로 존재할 때, 시점과 종점을 지나면서 주어진 점 데이터들에 가장 근사한 원을 찾는 것이다. 다른 여러 가지 방법들이 고안되어 있지만, 아래에 소개되는 방법은 최소자승법을 이용하여 주어진 점 데이터들에 가장 근접시켰다. 여기서는 두 가지 알고리즘을 제안한다. 첫째, 최소자승법으로 구한 구와 점 데이터들을 지나는 구의 Normal Vector를 이용한 알고리즘이다. 이것은 반드시 원이 되지는 않지만, 주어진 점 데이터들을 잘 반영하는 특성이 있다. 둘째, 최소자승법으로 구한 구와 시점, 종점, 구의중심(구하려는 원의 중심과 일치)의 세 점을 이용한 평면의 방정식을 이용한 알고리즘이다. 즉, 구를 구의 중심을 지나는 평면으로 잘랐을 때 나타나는 원이 구하고자 하는 원이 되는 것이다. 두 번째 알고리즘으로 시뮬레이션 한 결과이다.[(2.5,6.5,4.5),(2.7,6.3,4.7),(2.9,6,1,4,8), (3,5,9,5), (3.2,5.8,5.1)의 5개 점 데이터가 주어질 때]
2. 새로운 weaving motion 알고리즘 제안 및 시뮬레이션
2.1 Bezier 곡선을 이용한 직선 weaving motion 알고리즘
※ Given (or Input data):
* V 1 , V n , Ref 의 세점
* n : weaving 횟수 (구간 갯수)
* d : 진폭 결정 상수
* q : Smooth 결정 상수 (단, 0 < q <(D/2n))
(1) 시점 V 1 과 종점 V n 을 연결하는 Vector 라 하면
와 같이 된다.
의 Unit Vector 는 다음과 같다.
을 n등분 했을 때, V 1 , V 2 , V 3 ..., V n+1 의 좌표값들은 다음과 같다.
을 n등분한 각 성분들의 중점 M i 는 다음과 같다.
(2)에 수직이면서 Ref(참조점)를 지나는 Normal Vector 은 다음과 같다.
① 먼저 의 교점 H(x H , yH, z H )를 구한다.
V 1 V n+1 을 잇는 직선의 방정식 ;
V 1 (x 1 , y 1 , z 1 ) , V n+1 (x n+l , y n+l , z n+1 )의 방향벡터
점 Ref에서 (4)식과 같은 직선에 내린 수선의 발이 H의 좌표가 된다. H는 직선 위의 점이므로 다음과 같이 놓을 수 있다.
로 놓을 수 있다. (단, t는 실수이다.)
이것과 직선의 방향벡터 는 수직이므로
이 된다.
(6)식에서 구한 t값을 (5)식에 대입하면 H좌표를 구할 수 있다.
Ref = (x R , y R , z R ),H = (x H , y H , z H )를 이용하면
③ Normal Vector 의 Unit Vector 를 구한다.
(3) P 1 , P 2 ,..., P 2n-1 , P 2n ;
P 1 V 1 (x 1 , y 1 , z 1 )과 M 1 (x M1 , y M1 , z M1 )을 m : q로 내분하는 점
P 2 M 1 (x M1 , y M1 , z M1 )과 V 2 (x 2 , y 2 , z 2 )를 q : m 으로 내분하는 점
P 3 ,P 4 는 복잡한 계산을 피하는 방법을 생각해보자.
일반화시키면,
i) i = 홀수 (i/2 =! 0 )
단, (i , s) = (1 , 0), (3 , 1), (5 , 2), …, (2n-1 , n-1),
ii) i = 짝수 (i/2 == 0 )
단, (i , s) = (2 , 0), (4 , 1), (6 , 2), …, (2n-1 , n-1),
(4) k 1 ,k 2 ,… k 2n-1 ,k 2n ;
① i) 식 (8), (9), (10)에서
P 1 (x P1 , y P1 , z P1 ),P 2 (x P2 , y P2 , z P2 )와 를 이용하자.
이므로, k 1 (x k1 , y k1 , z k1 )이라면
ii) 같은 방법으로 k 2 (x k2 , y k2 , z k2 )를 구하면
② i) k 3 , k 4 P 3 (x P3 , y P3 , z P3 )P 4 (x P4 , y P4 , z P4 )와 를 이용하자
이므로, k 3 (x k3 , y k3 , z k3 )라면,
ii) 같은 방법으로 k 4 (x k4 , y k4 , z k4 )를 구하면
③ 일반화 시키면,
i) (i/4) 일때 나머지가 1인 경우
단, (i, s) = (1, 0), (5, 1), (9, 2), …, (4n-3, n-1)
ⅱ) (i/4) 일때 나머지가 2인 경우
단, (i, s) = (2, 0), (6, 1), (10, 2), …, (4n-2, n-1)
ⅲ) (i/4) 일때 나머지가 3인 경우
단, (i, s) = (3, 0), (7, 1), (11, 2), …, (4n-1, n-1)
ⅳ) (i/4) 일때 나머지가 0인 경우
단, (i, s) = (4, 0), (8, 1), (12, 2), …, (4n, n-1)
(5) V 1 , V 2 , V 3 ,…V n k 1 , k 2 , k 3 , …, k 2n-1 , k 2n 의 좌표값을 모두 구했다.
이점들은 모두 Bezier Curve에서의 조정점들이 된다.
시점(5,10,23), 종점(35,43,59), 참조점(23,37,48), Weaving 횟수 n=24, 진폭 1 , bezier 조정점 상수 q=0,2 일 때 [임의로 설정한 경우]
연속된 직선 weaving motion에서도 새로운 알고리즘을 적용하였다.
2.2 Bezier 곡선을 이용한 triangle weaving motion 알고리즘
* known : 1) a 1 , b 1 , c 1 d 의 네 점
2) step : Weaving 한 구간의 거리
3) c : b점에서 k점들까지 떨어진 거리
(꼭지점 부근의 Smooth 정도를 결정하는 상수)
(1) 시점 c 1 과 종점 d를 이용해서 Unit vector 를 구해낸다.
와 같이 된다.
의 Unit Vector 는 다음과 같다.
(2) Weaving 횟수 즉, n을 정수화 시킨다.
이라면,
① i≤n < i+0.5
로 다시 계산되어진다.
② i+0.5 ≤n < i+1
로 다시 계산되어진다.
(3) a1, a2, a3, …,an 을 구한다.
(4) b1, b2, b3,…bn 을 구한다.
(5) c1, c2, c3 , … , cn 을 구한다.
(6) k11, k12, k13,…k1n 을 구한다.
(7) k21, k22, k23,…k2n 을 구한다.
(8) (a1, a2, a3, …,an), (k11, k12 , k13,…k1n), (k21, k22, k23,…k2n ),
(c1, c2, c3 , …, cn)의 좌표값들을 이용하여 Bezier Spline을 구현한다.
(9) step과 step 사이는 (c1, c2, c3 , …, c(n-1)), (a1 , a2, a3, …,an),을 이용하여 직선 연결한다. 즉, 첫 번째 step과 두 번재 step의 연결은 vector를 이용하여 직선 연결한다.
인 경우
[임의로 설정한 경우]
3 기존 알고리즘과 제안한 알고리즘의 비교
3.1 Catmull-Rom 곡선을 이용한 기존 weaving motion 알고리즘
* Known : 1) a 1, b 1, c 1 d 의 네 점
2) step : Weaving 한 구간의 거리
3) c : Catmull-Rom 곡선의 Smooth 정도를 결정하는 상수
(1) 시점 c 1과 종점 d를 이용해서 Unit vector 를 구해낸다.
와 같이 된다.
의 Unit Vector 는 다음과 같다.
(2) Weaving 횟수 즉, n을 정수화 시킨다.
이라면,
① i≤n < i+0.5
로 다시 계산되어진다.
② i+0.5 ≤ n < i+1
로 다시 계산되어진다.
여기서도 직선 Weaving의 경우와 마찬가지로 계산에 의해 나온 n의 소수부의 값이 0.5(Weaving 후 남은 부분의 길이 즉, 0.5*step) 보다 작으면 n 번 Weaving 하고, 그렇지 않은 경우 n+1 번 Weaving 한다. 여기서, n이 바뀜에 따라 step 길이도 변하는데, 이 step 길이의 변화를 최소화하기 위해서 소수부의 크기에 따라 Weaving 횟수를 다르게 하였다.
(3) a1, a2, a3, …,an+1 을 구한다.
(4) b1, b2, b3,…bn 을 구한다.
(5) c1, c2, c3 , …, cn 을 구한다.
(6) ( a1, a2, a3, …,an+1), (b1, b2, b3,…bn), (c0, c1, c2, c3 , …, c n)의 좌표값들을 이용하여 Catmull-Rom곡선을 구현한다.
a 1 = (1,0,0) , b 1 = (1,0,0) ,c 1 = (0,0.5,0) ,d = (0,0,10), step=1.5 , C=0 인 경우
a 1 = (1,0,0) ,b 1 = (1,0,0) ,c 1 = (0,0.5,0) ,d = (0,0,8), step=1.5 , c=0.3 인 경우
a 1= (1,0,0) ,b 1= (1,0,0) ,c 1= (0,0.5,0) ,d = (0,0,8), step=1 , c=0.8 인 경우
a 1= (1,0,0) ,b 1= (1,0,0) ,c 1= (0,0.5,0) ,d = (0,0,10), step=1.5 , c=1 인 경우
3.2 알고리즘 비교
Bezier Spline의 경우 주어진 삼각형 변을 따라 가다 삼각형 꼭지점에서만 부드러운 곡선을 그리고 다시 삼각형 변을 따라 가면서 Triangle Weaving을 수행한다. 반면, Catmull-Rom 곡선은 smooth 상수가 0인 경우(삼각형을 그대로 따라감)를 제외하고는 모두 삼각형 변을 넘어간다. 중요한 것은 실제 용접시 Catmull-Rom 곡선처럼 삼각형 변을 over 해서 용접을 해서는 안 된다는 것이다. 따라서 기존의 Catmull-Rom 곡선을 이용한 Triangle Weaving 알고리즘은 실제 사용하기에는 문제점이 있다. 또한, Bezier Spline을 이용한 알고리즘의 경우 다음 step으로 넘어가기 위해 직선이동 하도록 되어 있다.(직선 이동함으로써 계산량을 현저히 줄임.)
6축 수직다관절 로봇의 특이점 부근에서의 유연한 관절 운동 전략 구현.
-로봇의 기구 ·동력학적 특성을 고려한 특이점 회피 알고리즘 구축 및 구현.
: 특이점 회피 알고리즘 적용 및 구현.
- 유연한 원호보간 기능에 대한 연구.
: 원호보간 알고리즘 제안 및 시뮬레이션.
새로운 Weaving Motion 알고리즘 제안으로 현재 Weaving Motion의 개선.
- 직선 Weaving 알고리즘 제안 및 Simulation.
- 연속된 직선 Weaving 알고리즘 제안 및 Simulation.
- Bezier Spline을 이용한 Triangle Weaving 알고리즘 제안 및 Simulation.
- 기존의 Catmull-Rom 곡선을 이용한 Triangle Weaving 알고리즘 개선.

Claims (1)

  1. 로봇시스템의 고속 ·유연한 Weaving Motion의 구현을 특징으로 하는 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및 Weaving Motion을 가진 6 자유도 수직다관절 로봇을 포함하는 고속 Autoloading System
KR1020030060457A 2003-08-27 2003-08-27 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System KR20050022757A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030060457A KR20050022757A (ko) 2003-08-27 2003-08-27 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030060457A KR20050022757A (ko) 2003-08-27 2003-08-27 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System

Publications (1)

Publication Number Publication Date
KR20050022757A true KR20050022757A (ko) 2005-03-08

Family

ID=37230571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030060457A KR20050022757A (ko) 2003-08-27 2003-08-27 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System

Country Status (1)

Country Link
KR (1) KR20050022757A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102079122B1 (ko) 2019-10-31 2020-02-19 주식회사 뉴로메카 로봇을 위한 동역학 시뮬레이션 기반 제어 프레임 워크
KR102156655B1 (ko) 2020-02-11 2020-09-16 주식회사 뉴로메카 로봇을 위한 동역학 시뮬레이션 기반 제어 프레임 워크

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102079122B1 (ko) 2019-10-31 2020-02-19 주식회사 뉴로메카 로봇을 위한 동역학 시뮬레이션 기반 제어 프레임 워크
KR102156655B1 (ko) 2020-02-11 2020-09-16 주식회사 뉴로메카 로봇을 위한 동역학 시뮬레이션 기반 제어 프레임 워크

Similar Documents

Publication Publication Date Title
CN105500354B (zh) 一种工业机器人应用的过渡轨迹规划方法
US4698777A (en) Industrial robot circular arc control method for controlling the angle of a tool
CN111791236B (zh) 一种工业机器人笛卡尔空间轨迹过渡方法
CN106826829A (zh) 一种可控误差的工业机器人光顺运动轨迹生成方法
Dubowsky et al. Optimal dynamic trajectories for robotic manipulators
Xiao et al. Smooth and near time‐optimal trajectory planning of industrial robots for online applications
Lee et al. A robust trajectory tracking control of a polishing robot system based on CAM data
Horsch et al. Cartesian spline interpolation for industrial robots
Liu et al. Weld seam fitting and welding torch trajectory planning based on NURBS in intersecting curve welding
Niola et al. Robot trajectory planning by points and tangents
He et al. High-speed high-accuracy spatial curve tracking using motion primitives in industrial robots
CN110515346A (zh) 一种工业机器人铣削复杂曲面无过切刀具路径插补方法
KR20050022757A (ko) 공작기계 자동화를 위한 특이점부근 유연한 관절운동 및Weaving Motion을 가진 6 자유도 수직다관절 로봇을포함하는 고속 Autoloading System
Min et al. A C2 continuous trajectory planning method for 6-DOF rotational robot manipulators
Dai Collision-free motion of an articulated kinematic chain in a dynamic environment
Muller-Karger et al. Hyperbolic trajectories for pick-and-place operations to elude obstacles
Bulej et al. Study of the workspace of hybrid mechanism Trivariant
CN115179306A (zh) 一种复杂木模工业机器人铣削及控制方法
Kim et al. A path generation method for sculptured surface manufacture
JP7070114B2 (ja) ロボット制御装置及びロボット制御方法
Yang et al. Automatic generation of piecewise constant speed motion with smooth transition for multi-axis machines
Liu et al. Robot continuous trajectory planning based on Frenet-Serret formulas
JPH11198073A (ja) 産業用ロボットの姿勢生成方法
Tyapin et al. Long arm manipulator path interpolation using 4th order b-splines
Chuang et al. A novel contour error compensator for 3‐PRPS platform

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination