• 검색 결과가 없습니다.

Design of S-Shaped Path and Velocity Profile of Moving Stage Using Three Point Locations

N/A
N/A
Protected

Academic year: 2021

Share "Design of S-Shaped Path and Velocity Profile of Moving Stage Using Three Point Locations"

Copied!
10
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

대한기계학회논문집 A권, 제35권 제1호, pp. 67~76, 2011 67

<학술논문> DOI:10.3795/KSME-A.2011.35.1.067 ISSN 1226-4873

3 점을 이용한 이동 무대의 S 곡선 경로 설계§

정광오* · 오세규**· 김동환***†

* NID 융합기술대학원 나노 IT 융합프로그램, ** 서울산업대학교 나노생산기술연구소,

*** 서울산업대학교 기계설계자동화공학부

Design of S-Shaped Path and Velocity Profile of Moving Stage Using Three Point Locations

Kwang oh Jung*, Se Kyu Oh** and Dong Hwan Kim***†

* Graduate School of NID Fusion Technology, ** Nano Manufacturing Device, Seoul Nat’l Univ. of Technology

*** School of Mechanical Design &Automation Engineering, Seoul Nat’l Univ. of Technology

(Received June 15, 2010 ; Revised November 16, 2010 ; Accepted November 22, 2010)

- 기호설명 - Jerk : 가가속도 [m/s3]

dab : a 점과 b 점 사이의 거리 [mm]

r : 생성된 원의 반지름 [mm]

θbea : 삼각형bea의 내각 [deg]

c

d : a 점과 b 점 사이의 절반 [mm]

lab : 부채꼴bea의 호의길이 [mm]

lleft : 왼쪽 바퀴의 주행거리 [mm]

right

l : 오른쪽 바퀴의 주행거리 [mm]

dleft : 이동무대 중심과 좌측 휠 사이 거리 [mm]

right

d : 이동무대 중심과 우측 휠 사이 거리 [mm]

inite

θ : 이동무대의 초기 방위각 [deg]

, , ,

, 2 3 4 5

1 Ls Ls Ls Ls

s

L D D D D

D

: 구간별 왼쪽 바퀴의 이동거리[mm]

T , T , T , T

, 2 3 4 5

1 Ls Ls Ls Ls

s

TL

: 구간별 이동 시간 [sec]

TC : 보정 시간 [sec]

V , V , V , V

, 2 3 4 5

1 Ls Ls Ls Ls

s

VL

: 구간별 최대 속도 [sec/mm]

dL : 왼쪽 바퀴의 이동거리 [mm]

dR : 오른쪽 바퀴의 이동거리 [mm]

di : 이동무대 중심의 이동거리 [mm]

do : 양쪽 바퀴 사이의 거리 [mm]

ri : 방위각의 변화량 [mm]

ra : 누적된 방위각 [deg]

θc : 보정된 방위각 [deg]

Key Words : Design Curved Path(곡선경로 설계), Velocity Profile(속도 프로파일), Mobile Robot(모바일 로봇), Moving Stage(이동 무대) , Path Planning(경로 생성)

초록: 이동 무대의 곡선 주행에 있어서 정확한 곡선경로와 양쪽 바퀴의 속도프로파일이 필요하다.본 논문에서 이동을 할 3 점의 위치 정보를 이용하여 곡선경로 생성하는 방법을 제안 한다. 설계된 곡선경로와 속도 프로파일을 이용하여 이동무대의 궤적을 시뮬레이션 하였고 이에 따라 결과와 3 점의 위치 정보와 비교하여 곡선 경로와 바퀴 속도 프로파일을 보정하는 방법을 제안하였다. 이동무대 하드웨어를 구현 후 곡선 주행 실험을 하였고 설계된 곡선경로와 이동무대의 실제궤적을 비교 분석 하였다.

Abstract: An exact curved path has to be fixed and velocity profile for travelling on the curved path is required by a moving stage. In this study, we decide the curved path on the basis of the information on three point locations. The path of the moving stage is traced by simulating the designed curve path and the velocity profile, and the results are compared with the given three points to determine how closely the moving stage follows the given path. Further, we propose a method to calibrate a curved path and velocity profile. The proposed moving paths were evaluated by performing experiments. Finally, the designed curved path and the actual path were compared.

§ 이 논문은 2010 년도 대한기계학회 동역학 및 제어부문 춘계 학술대회 (2010. 6. 3.-4., 광주과기원) 발표논문임.

† Corresponding Author, [email protected]

© 2011 The Korean Society of Mechanical Engineers

(2)

Xe : 곡선 경로의 마지막 X 좌표 점 Ye : 곡선 경로의 마지막 Y 좌표 점 Xs2 : SECTION2 의 마지막 X 좌표 점 Ys2 : SECTION2 의 마지막 Y 좌표 점 Xc : 보정된 X 좌표 점

Yc : 보정된 Y 좌표 점

1. 서 론

공연의 배경이 되는 무대의 다변화에 따른 다양한 연출은 관람자의 몰입도를 향상시키기 위해 중요한 요소가 아닐 수 없다. 공연 기술의 발전에 따라 보 다 수준 높은 공연과 다양하고 신속한 무대전환 및 연출에 대한 수요 충족과 공간의 한계성을 벗어날 수 있는 시스템이 절실해지고 있다. 또한 관객의 집 중도를 위하여 이동무대의 직진 주행뿐 만 아니라 곡선주행까지도 필요하게 된 실정이다. 종전 까지는 최적 이동 경로설계 또는 장애물을 회피를 위한 경 로설계 등에 대하여 많은 연구가 되어 왔지만(1) 선 주행을 하기 위하여 곡선경로를 생성하고 그에 따른 속도 프로파일을 설계하는 연구는 많이 수행 되지 않은 실정(2)이다. 본 논문에서의 제안 사항으로 는 곡선주행을 하기 위하여 3 점의 데이터를 이용하 여 곡선 경로를 생성하며 곡선경로에 따라 양쪽의 주행 모터의 속도프로 파일을 설계하며 시뮬레이션 을 통하여 결과를 확인하며 차륜구동 이동무대를 통 하여 실험을 하였고 결과를 확인 하였다. 곡선 경로 생성함에 있어 사용하는 유저가 사용하기 편리 하기 뿐 만 아니라 연산 량과 통신 량을 최대한 줄일 수 있으며(3) 이동 무대가 주행을 할 시에 벡터를 계산 할 수 있는 방법을 선택하였다. 곡선의 경로를 생성 할 경우 B spline 이라든지 그 외 다른 방법(4)으로 곡 선 경로를 설계하였을 경우 매 순간 순간의 로봇의 벡터를 계산(10~12)하기 어렵다. 따라서 3 점만을 이용 하여 단순히 원의 정보만을 이용하여 곡선 경로를 생성하는 알고리즘(5,6)을 제안한다. 두 원을 이용하여 곡선 경로를 생성하기 때문에 원의 반지름과 중심각 도를 알면 로봇이 이동을 하며 각각의 시점마다 이 동 무대의 벡터를 알 수 있기 때문에 이동 무대가 곡선 경로를 따라서 주행(7)을 할 수 있게 된다. 본 논문에서는 차륜 구동형 이동 무대를 이용하여 연구 하였다. 이동 무대가 곡선 주행을 하기 위해서는 곡 선 경로뿐만 아니라 두 바퀴의 속도 프로파일을 생 성 하여야 한다. 이때 고려해야 할 요소들로는 주행 모터의 속도, 최대가속도, 저크(Jerk)를 고려 하게 되 며 가장 중요시 되는 사항으로는 동일한 시점에 설

계된 곡선경로를 정확히 이동(8,9)해야 한다는 것이다.

2. 곡선 경로 설계

이동 무대가 곡선 주행을 하기 위한 곡선경로를 설계한다. 곡선경로에서는 이동무대의 이동거리와 매 시점마다의 이동무대의 벡터를 알 수 있어야 한다. 따라서 3 점을 이용하여 원을 생성하고 원을 이용하여 곡선경로를 생성하는 연구를 하였다.

Fig. 1 은 곡선경로 생성에 대한 순서도 이다 2.1 곡선 경로 생성

곡선 경로를 생성하기 위하여 3 점의 좌표 입력

Fig. 1 Flowchart of designing a curved path

Fig. 2 Three input points

(3)

3 점을 이용한 이동 무대의 S 곡선 경로 설계 69 을 받는다.

최초 사용자에게 곡선 주행에 필요한 3 점을 입력 받게 되며 Fig. 2 의 a 점은 출발 지점이 되고 b 점은 중심점이 되며 c 점은 이동무대의 도착점이다.

Fig. 3 은 입력 받은 두 좌표를 이용하여 새로운 두 원을 생성하며 생성된 두 원의 교점을 찾는 과정이다.

2

2 ( )

)

(X b X a Yb Y a

dab = + (1) point b and point a between distance

ab : d

식 (1) 에 의해서 a점과 b점의 사이의 거리인 dab 를 구한다. 다음으로 새로 생성할 원의 반지름인 r 의 값을 구하여야 하는데 r 의 값은 설정할 수 있는 r값 중에서 최소값으로 설정된다.

dab r

2 (2) 이때 r은 식 (2)와 같은 경계 값을 가지게 되는데 만약 이 경계 값을 벗어나게 된다면 두 점을 이용한 원의 교점 찾기를 할 수가 없다. 추후 r 값은 보정작업을 통하여 재설정이 되어지기 때문에 초기값을 dab 값의 절반으로 설정한다. r 의 값이 설정되면 a 점과 b 점을 이용하여 새로운 원을 생성한다.

2 2 2

2 2 2

) (

) (

) (

) (

r b Y y b X x

r a Y y a X x

=

+

=

+

(3)

created is circle a of Radius : r

Fig. 3 Intersection between the two circles

식 (3)와 같이 설정된 반지름 r 에 의하여 a 점과 b 점을 중심점이며 반지름이 r인 두 원을 그리게 된다. 두 원이 그려지게 되면 두원의 교점인 d , e 인 좌표를 얻을 수 있다. 새로 생성된 두 교점 중 이동무대가 이동하고자 하는 방향의 좌표를 선택을 하게 된다. 만약 e 점의 방향으로 설정을 하게 된다면 점 e 를 원의 중심으로 잡고 반지름이 r인 원을 생성하게 된다.

Fig. 4 와 같이 생성된 원은 a 점에서부터 b점까 지 이동무대의 이동경로가 포함된 원이 된다. 이 동무대의 곡선경로를 구하기 위해서는 a 점 과 b 점 사이의 부채꼴 호의 길이를 구해야 한다. 호의 길이를 구하기 위해서는 aeb 알아야 구할 수가 있다. 구하는 방법으로는 aeb이 원에 내접인 특 성을 이용하여 구한다. 선분ab의 중간 점과 원의 중심인 e점을 연결한 선은 선분 ab와 직각을 이 루는 특성을 이용하게 된다.

Fig. 5 는 전 단계에서 생성되어진 원을 이용하 여 부채꼴의 호의 길이와 내각을 구하는 방법이다.

Fig. 4 New circle by using the intersection

Fig. 5 Creation first sector

(4)

2 180

ab bea

r

l π

θ

=

=

Arc :

Point : :

ab c bea

l d

bea θ

식 (4)에 따라서 a 점에서 경로가 생성 값의 변화에 가 변화 됨을 곡선경로를 사이에서의 Fig. 6 도착점까지의

d d l l l l

right left right left right left

Distance :

Distance :

The :

The :

2

2

π π

=

=

Fig. 6 The radius of the curve path: (a) r=d/2,

(a) Fig. 7 Curved path

Curved path of two wheels 360

cos(

2 ( 180

bda r dc

×θ

×

the of length Arc

point and a Point

bea

의하여 θbea 점에서 b 점으로 생성 된 것이다.

변화에 따라서 최초 됨을 확인 할

생성한 방법과 곡선경로를

과 같이 시작점에서부터 도착점까지의 s곡선의

between between d

r d r

right left

Distance Distance

right whee The

driving left wheel The

) 360 (

) 360 (

π θ π θ

× +

× +

(a) (b) he radius of the curve path: (a) r=d/2,

(a)

Curved path: (a) Curved path of stage center,(b) Curved path of two wheels

) )1

sector the

length the half b point

bea

lab 값을 점으로 이동하는

. 이때 식 (2) 최초 출발 각도와

할 수 있다.

방법과 동일하게 생성하게 된다 시작점에서부터

주행거리를

and center between

and center between

distance driving l right whee

distance driving 360 360

θ

(a) (b) he radius of the curve path: (a) r=d/2,

: (a) Curved path of stage center,(b) Curved path of two wheels

(4)

length

구할 수 있다 이동하는 실제 곡선

(2)에서 선택된 각도와 이동 거리가

. a 점과 b 점의 동일하게 b 점과

된다.

중간 점을 지나 알 수 있다

wheel and

wheel left and

right distance distance

(a) (b) he radius of the curve path: (a) r=d/2, (b) r=d

(b)

: (a) Curved path of stage center,(b) (4)

있다.

곡선 선택된 r

거리가 점의 c 지나

.

(5)

(b) r=d

: (a) Curved path of stage center,(b)

Fig.

이고 것이다

이동 주행하는 주행을 방위각을

주행을 방향으로 시작하게 곡선경로를 하면서

Fig. 7 의 좌측의 이고 우측의 이미지는 것이다.

이동 무대가 0 주행하는 것이 아니라 주행을 시작해야 방위각을 구한다

tan(

inite =a θ

The :

inite θ

식 (6) 에 의하여 있게 된다.

주행을 할 시에 방향으로 초기 시작하게 된다.

곡선경로를 설계하는 하면서 재설정을

Fig. 8

Fig.

좌측의 이미지는 이동무대 이미지는 양쪽

0o의 방위각인 아니라 Fig. 8 시작해야 한다. 따라서

구한다.

2) tan( 2

x

y

vector initial The

의하여 이동무대의 . 구해진 방위각에 시에 12 시 방향을

방위각만큼 . 초기값은 설계하는 과정 재설정을 하게 된다

8 Vector of the moving stage

Fig. 9 Meshed curve path 이동무대 중심의 바퀴 이동경로를 방위각인 상태에서

Fig. 8 과 같이 회전을 따라서 이동무

moving

of vector

이동무대의 최초 벡터를 방위각에 따라

방향을 0o 방위각만큼 회전을 한

60o 로 설정을 과정 중 보정작업을 된다.

Vector of the moving stage

shed curve path

중심의 이동경로 이동경로를 나타낸

곡선 경로를 회전을 한 후에 이동무대의 최초

(6) cart

moving

벡터를 구할 이동무대가 로 하여 시계 한 후 주행을 설정을 하지만 보정작업을 실시

Vector of the moving stage

이동경로 나타낸

경로를 후에 최초

구할 이동무대가 시계 주행을 하지만 실시

(5)

3 점을 이용한 이동 무대의 S 곡선 경로 설계 71 Table 1 Section of velocity

Section Velocity Section1 Acceleration Section2 Uniform Section3 Acceleration &

Deceleration Section4 Uniform Section5 Deceleration

3. 속도 프로파일 설계

3.1 속도 프로파일 생성

Fig. 9 와 같이 곡선 경로를 크게 5 구간을 나누고 다시 각 구간당 50 등분을 하여 총 250 등분으로 속도 프로파일을 설계 하였다.

Table 1 는 각 구간별 속도에 대한 내용이다. 각 구간은 다음과 같은 속도로 설정을 한 후 각 구간에 대한 최대속도를 결정하게 된다. 식 (7)은 Section1 의 시간과 최대 속도 이다.

) 0.5 (T

/ D V

5 T

L_s1 L_s1 L_s1 L_s1

×

=

= (7)

식 (7)에 의하여 최대속도가 결정된다. Section1 의 가속시간만 설정을 하면 각 구간의 이동해 야할 거리 값을 알기 때문에 최대속도를 구 할 수 있다. Section1 의 가속시간은 주행 모터의 성능과 이동해야 할 거리에 의하여 결정 된다. 본 논문에서는 가속시간을 5 초로 설정 하였다.

L_s2 L_s2

L_s1 L_s1

L_s2 L_s2

V V

T V

/ D T

=

+

= (8)

Table 1 에서 알 수 있듯이 Section1 의 최대속도와 Section2 의 최대속도가 같다는 점을 이용하여 Section2 의 이동 시간을 식 (8)에 의하여 구한다.

0.5) T

( / ) T V - (D V

T T T

L_s3 L_s3

L_s2 L_s3 L_s3

L_s2 c L_s3

×

×

= +

= (9)

식 (9)로 Section3 의 시간과 속도를 구한다. 이 구간에서는 이동방향이 바뀌는 지점이 발생 한다.

Fig. 10 Velocity profiles of two wheels

Fig. 11 Jerk profiles of two wheels

그 결과 이동무대의 방위각과 양쪽 바퀴의 이동거리의 변위량이 갑자기 커지게 된다. 따라서 속도 프로파일의 등분을 더욱 조밀하게 나누어 설계를 하여야 한다. 본 논문에서는 오른쪽 바퀴속도를 재설정을 한다. 오른쪽바퀴의 Section3 를 4 등분으로 더욱 조밀하게 등분을 하여 속도를 재설정한다. 이 구간 에서 왼쪽 바퀴의 경우 한번의 가속으로 이뤄져 있지만 동일 시점에 오른쪽 바퀴는 두 번의 가감속구간 한번의 등속구간 마지막으로 한번의 가속구간으로 재설정을 한다.

V

V

T V / D T

L_s3 L_s4

L_s3 L_s3 L_s4 L_s4

=

+

= (10)

L_s4 L_s5

L_s4 L_s4

L_s5 L_s5

V V

T ) 0.5 V

( / D T

=

+

×

=

Section4 와 Section5 는 식 (10)에 의하여 구한다.

오른쪽 바퀴의 구간별 속도와 시간도 동일하게 구할 수 있다.

Fig. 10 은 곡선주행을 하기 위한 두 바퀴의 속도 프로파일이다. 하지만 오른쪽 바퀴의 결과에서 Section3 의 구간에서의 속도가 갑자기 감속을 하게 되며 모터의 저크의 양이 커지게 된다.

Fig. 11 은 양쪽 바퀴의 저크 프로 파일이다.

저크의 양이 커지게 되면 모터의 수명이 줄어 들며 이동무대가 주행을 할 경우 바퀴와 바닥 면

(6)

Fig. 12 Calibrated velocity profile and jerk profile 사이의 미끄러짐의 정도가 증가한다. 따라서 속도 프로파일을 변경하여 저크의 양을 최소화 시킬 필요가 있다.

3.2 속도 프로파일 수정

Fig. 11 와 같이 저크의 크기가 커짐이 예상 되 어질 경우 저크의 양을 최소화 시켜야 한다. 본 논문에서는 최대 속도를 줄이고 이동 시간을 늘림 으로써 저크의 크기를 최소화 시킬 수 있었다.

Fig. 12 은 수정된 양쪽 바퀴의 속도와 저크 프 로파일 이다. 양쪽 바퀴의 속도 프로파일의 경우 전체 시간은 길어 지는 반면에 가속도와 저크의 크기가 줄어 들었다. 저크의 양을 더욱 최소화 시 키기 위한 방법으로는 이동 무대가 곡선 주행을 하는 구동 시간을 더욱 늘려 저크의 양을 최소화 하는 방법이 있지만 구동시간은 공연의 연출에 따 라 고려 되어야 한다.

4. 시뮬레이션 및 경로 보정

4.1 시뮬레이션 및 곡선경로 보정

설계된 곡선 경로를 검증하기 위하여 시뮬레이 션을 수행 하였다. 양쪽 바퀴의 속도정보를 이용 하여 이동무대의 곡선 경로를 시뮬레이션 하였다.

Fig. 13 Moving stage kinematics

Fig. 14 Simulated curved path

Fig. 13 는 이동 무대의 기구 학을 도시화 하고 있다.이동 무대의 위치를 표현하기 위해 벡터로

각 원소는 T

i i

i Y r

X P=( , , )

r 를 나타낸다.

) sin(

) cos(

2 ) sin(

2

a i i

a i i

o R L i

L R i

r d Y

r d X

d d a d

r

d d d

×

=

×

=

×

= −

= +

(11)

umulate) center(acc the

of nt displaceme rotational

of amount The :

center the of nt displaceme rotational

of amount The :

l right whee and

left wheel between Distance :

center the of nt displaceme of

amount The :

left wheel the

of nt displaceme of

amount The :

left wheel the

of nt displaceme of

amount The :

a i o i R L

r r d d d d

식 (11)로 구한 Xi,Yi를 누적하여 그래프로 표현 을 하면 다음과 같은 곡선 경로가 생성 된다.

Fig. 14 같은 곡선경로가 나오게 된다. 그러나 설정된 (2000,3000) 좌표에서 도착을 하지 못하고 (1286,3191) 지점에서 도착하는 결과가 나오게 된 다. 따라서 정확한 지점에서 도달 하기 위해서는 보정작업을 실시한다.

(7)

도착지점을

이 Section3, Section4, Section5 킨다. 이때

세 구간의 모든 선경로가 끊어 무대가 주행을 지점에서의 로 정확하게 변경시키기 을 시켜 출발을 으로는 Fig.

표와 끊어진 Fig. 16 은

c o

θ θ

=

=

: Y

: X Y X : Y

: X

: : Inital :

c c s2 s2 e

e c o i

θ θ θ

Fig.15 Calibration curve path:

(b) Estimated theta

도착지점을 보정하기 위해서는 Section3, Section4, Section5

이동 되는 값은 모든 좌표를 끊어 지는 부분이 주행을 하며 방향을

헤딩각도를 정확하게 이동 할 수

위해서는 최초 출발을 하면 된다

15 의 (b)의 그래프와 끊어진 두 개의 좌표를

θ

c를 구하는

i o

e c e

X - X

Y - atan(Y

θ θ +

=

=

X Converted :

X Converted :

coordinate Y

last The :

coordinate X

last The :

coordinate Y

last The :

coordinate X

last The : C

ta Offset the

theta Inital

theta alibration

(a) Calibration curve path:

stimated theta

Fig. 16 Calibration theta 3 점을 위해서는 Fig. 1 Section3, Section4, Section5 의 좌표

값은 도착지점의 평행이동 시킨다 부분이 생기는데

방향을 바꾸는 변경시켜 설정된 수 있도록 만든다 최초 출발시의

된다. 헤딩각도를 그래프와 같이 좌표를 이용 하여 구하는 과정이다

e e c

c

- X

- atan(Y - X ) Y

coordinate X

coordinate X

in coordinate

in coordinate coordinate coordinate

theta

Calibration curve path: (a) Converted coordinates stimated theta

Calibration theta

점을 이용한 이동

Fig. 15 의 (b)와 좌표 점들을 이동시 도착지점의 오차 값만큼

시킨다. 중간에 생기는데 그 지점이 이동

지점이 된다.

설정된 도착지점으 만든다. 헤딩각도를 헤딩각도를 변경 헤딩각도를 구하는 방법

같이 도착지점의 하여 구할 수 있다 과정이다.

e e ) X -

Y -

section2 in

section2 in

(b)

(a) Converted coordinates

Calibration theta

이동 무대의 S

와 같 이동시 값만큼 중간에 곡

이동 . 이 도착지점으 헤딩각도를

변경 방법 도착지점의 좌

있다.

(9)

(a) Converted coordinates

θ

정하게

이다 하고 도를

Fig.

S 곡선 경로

식 (9)에 의하여

θ

c를 이용하여

정하게 된다. 이동무대의 원하는 도착지점으로

x b a

y b sl y

=

=

=

=

=

θc

식 (10)은

θ

c

이다. 점 d 하고 그 방정식과 도를 맞추기 위한

Fig. 17 The first step in creating curved path

Fig. 18 Calibrated velocity profiles for two wheels 설계

의하여

θ

c가 구해진다

이용하여 Fig. 17 에 이동무대의 초기 도착지점으로 이동을

a Y b

x x sl

x sl y

x x

y y

x x x

y y

+

+

×

×

×

tan(

tan(

tan(

c 1 1

1 2

1 2

1 2

1 2

θ

c를 이용하여

e를 이용하여 방정식과

θ

c를 이용하여

위한 x ,y

The first step in creating curved path

Calibrated velocity profiles for two wheels 구해진다.

에서 정하는 초기 방위각을 이동을 할 수가

sl X X

Y b

b

a a

a

×

+

+

) ) tan(

)

c

θc

이용하여 r를 재설정 이용하여 직선의 방정식을

이용하여 원하는 값을 구한다

The first step in creating curved path

Calibrated velocity profiles for two wheels 73

r 을 재설 방위각을 보정 하

수가 있다.

a

(10)

재설정 하는 식 방정식을 구 원하는 초기 각 구한다. 마지막으

The first step in creating curved path

Calibrated velocity profiles for two wheels 73

재설

(10)

마지막으

(8)

로 점 a(Xa r을 보정 을 한번 더

Fig. 18 은 저크의 양이 400mm/s 를

Fig. 19 에서 (2000,3000)인 있음을 확인할

에러 값은 향으로 1.99mm Y 지막 포인터인 Y 방향으로 생 요인으로는 반올림을 함으로써 수행하면서

무대의 곡선경로를 가 발생하였다 욱 낮은 소수점 로파일을 더욱 다면 오차가

Fig. 20 An error in Calibrated curve path: (a) Second point (b) Third point

) , a

a Y 와 점 ( 보정 한 후에

더 해주면 정확한 은 보정을 끝낸 양이 감소 되었으며

를 벗어나지 서 선택 된 3 인 점을 약간의 확인할 수 있다.

값은 두 번째 포인터인 1.99mm Y 방향으로 포인터인 (2000,3000) 방향으로 32.9mm 의

요인으로는 연산을 함으로써 발생한

속도 프로파일을 곡선경로를 시뮬레이션 발생하였다. 오차를

소수점 자리에서 더욱 조밀하게 오차가 줄어들 것이다

Fig.19 Calibrated curved path

(a)

An error in Calibrated curve path: (a) Second point (b) Third point

(x,y) 사이의 곡선 경로를 정확한 곡선경로가 끝낸 후의 속도 되었으며 이동무대의 벗어나지 않음을 확인할

3 개의 좌표인 약간의 오차를 가지고

포인터인 (800,800) 방향으로 1.99mm (2000,3000)에서 X 방향으로

오차가 발생하였다 하며 소수점 발생한 오차와 프로파일을 250

시뮬레이션 했기 오차를 더욱 줄이기 자리에서 반올림을

조밀하게 등분을 시뮬레이션을 것이다.

Calibrated curved path

(a)

An error in Calibrated curve path: (a) Second point (b) Third point

사이의 거리를 구하 경로를 생성하는 연산 곡선경로가 생성된다

속도 프로파일이다 이동무대의 최대속도

확인할 수 있다 좌표인 (0, 0), (800,800),

가지고 이동하고

(800,800)에서 X 1.99mm 의 오차와

방향으로 16.6mm 발생하였다. 오차발 소수점 넷째 자리에서 오차와 시뮬레이션을 250 등분 하여 이동 했기 때문에 오차 줄이기 위해서는 반올림을 하거나 속도프

시뮬레이션을

Calibrated curved path

(a) (b)

An error in Calibrated curve path: (a) Second 구하 연산 생성된다.

프로파일이다.

최대속도 있다.

(0, 0), (800,800), 이동하고

X 방 오차와 마 16.6mm,

오차발 자리에서 시뮬레이션을 이동 오차 위해서는 더 속도프 시뮬레이션을 한

An error in Calibrated curve path: (a) Second

5 실제 력한 레이션과 용하여 하여

Fig.

험을 Fig.

대의 실질적인 중심부에

Fig.

형을 다. (a)

5.1 이동무대 실제 이동 무대 력한 후 테스트를

이션과 동일한 용하여 이동무대에 하여 이동 결과를

Fig. 21 과 같이 험을 실시하였다

Fig. 22 는 통신을 대의 현재 좌표를 실질적인 이동 중심부에 펜을

Fig. 23 과 같이 형을 만들어 X

. (a)는 전체의

Fig. 22 User interface and coordinate display

5. 실

이동무대 하드웨어의 무대 하드웨어에 테스트를 실시하였다

동일한 경로를 주행 이동무대에 부착 되어

결과를 확인하였다 같이 실제 이동 실시하였다.

통신을 이용하여 좌표를 확인할

결과를 확인하기 부착하여 주행 같이 4 개의 줄자를 X 방향과 Y 방향의 전체의 주행 거리이고

Fig. 21 Moving stage

User interface and coordinate display

실 험

하드웨어의 실제 테스트 하드웨어에 속도 프로파일을

실시하였다. 이동 경로는 주행 하였다.

되어 있는 엔코더를 확인하였다.

이동 무대를 이용하여 이용하여 컴퓨터에서

수 있도록 확인하기 위하여

주행 실험을 하였다 줄자를 이용하여 방향의 거리를 거리이고 (b) 최종

Moving stage

User interface and coordinate display 테스트 프로파일을 입

경로는 시뮬 . 통신을 이 엔코더를 이용

이용하여 실 컴퓨터에서 이동무 구현하였고 위하여 이동무대

하였다.

이용하여 직사각 거리를 측정하였 최종 도착 지

User interface and coordinate display 시뮬 이용

이동무 구현하였고

이동무대

직사각 측정하였

(9)

3 점을 이용한 이동 무대의 S 곡선 경로 설계 75 Table2 The measured result

Target Measured results

Error %

1 (2000,3000) (2130,3180) (130,180) (6.5 ,6) 2 (3000,2000) (3140,2150) (140,150) (4.6 ,7.5) 3 (3000,3000) (3080,3200) (80,200) (2.6, 6.6)

(a)

(b)

Fig. 23 The measured result: (a) Full (b) End point

점이다. 최종 도착 지점은 (2140,3200)으로써 X 방 향으로 140mm, Y 방향으로 200mm 의 거리 오차가 발생하였다.

Table 2 는 목표지점을 변경하며 테스트한 결과 이다. 오차 요인으로는 테스트 장소의 바닥 면과 바퀴의 미끄러짐이 발생하여 오차가 발생 하였다.

6. 결 론

본 논문에서는 3 점을 이용하여 곡선 경로를 설 계 하고 속도 프로파일을 만드는 방법을 제안 하 였고 시뮬레이션과 실제 테스트를 하여 그 유용성 을 확인하였다. 현재 까지는 최적 이동 경로설계 또는 장애물을 회피하는 경로설계 등에 대하여 많 은 연구가 되어 왔지만 활용범위가 넓어 짐에 따

라 곡선주행이 필요하게 되었고 신회성 있는 위치 좌표를 설계하며 추정해 내는 기법이 필요하게 되 었다. 본 논문에서는 차륜구동 이동 무대를 이용 하여 3 점을 이용하여 곡선주행을 할 수 있는 방 식을 제시하였다. 곡선경로와 속도 프로파일을 설 계 하여 이동무대가 이동 가능한 경로와 속도를 제시 하였다. 설계된 속도 프로파일을 이용하여 시뮬레이션 하였고 곡선 경로에 대한 오차를 줄 일수 있었다. 실제 이동무대에서 테스트 했을 경 우 시뮬레이션 보다 150mm 정도 더 큰 오차가 발생한 이유는 바닥이 완전이 평편하지 못했고 바 닥 면이 미끄러워서 바퀴와 바닥 면 사이의 슬립 이 오차의 요인이 되었고 거리를 측정할 시에 약 간의 측정 오차가 발생 했다. 바퀴에 종속적이 센 서와 더불어 가속도 센서 혹은 자이로 센서를 이 용하여 보정을 실시한다면 오차가 줄어 들것으로 기대된다. 본 연구 결과는 이동로봇 곡선 경로 생 성에 관한 해를 제공할 수 있기 때문에 로봇이 보 다 넓고 다양한 환경에서 활용 되는데 유용할 것 이라고 판단 된다.

참고문헌

(1) Ahmad, A. M. and Mohamed M. B., 1993, "Robot Navition Using the Vector Potential Approach,” IEEE, p. 805.

(2) Latombe, J. C., 1991, “Robot Motion Planning,”

Kluwer Academic Publishers.

(3) Charles, E. T., 1984, "Path Relaxation: Path Planning for a Mobile Robot,” OCEANS'84, pp. 35~40.

(4) Stentz, A., 1993, “Optimal and Efficient Path Planning for Unknown and Dynamic Environments,”

Carnegie Mellon Robotics Institute Technical Report CMU-RI-TR-93-20.

(5) Han, S. S., Choi, B. S. and Lee, J. M., 2008, “A Precise Curved Motion Planning for a Differential Driving Mobile Robot,” Mechatronics, Vol. 18, pp.

1~9.

(6) Wei, S. and Zefran, M., 2005 “Smooth Path Planning nd Control for Mobile Robots,” IEEE Proc. on Networking, Sensing and Control, pp. 894~899.

(7) Lumelsky, V. J., Mukhopadhyay, S. and Sun, K., 1990, “Dynamic Path Planning in Sensor-Based Terrain Acquisition,” IEEE Transactions on Robotics and Automation, Vol. 6, No. 4, August.

(8) Lozano-Perez, T., 1983, “Spatial Planning: A Configuration Space Approach,” IEEE Transactions on Computers, Vol. C-32, No. 2, February.

(9) Zelinsky, A., 1992, “A Mobile Robot Exploration Algorithm,” IEEE Transactions on Robotics and

(10)

Automation, Vol. 8, No. 6, December.

(10) Ihn, N. G., 1996, “A Global Collision Free Path Planning Using Parametric Parabola Through Geometry Mapping of Obstacles in Robot Work Space,” KSME International Journal, Vol. 10, No. 4, pp. 443~449.

(11) Bui, T. H., Chung, T. L. and Kim, S. B., 2003,

“Adaptive Tracking Control of Two-Wheeled Welding

Mobile Robot with Smooth Curved Welding Path,”

KSME International Journal, Vol. 17, No. 11, pp.

1682~1692.

(12) Ihn, N. G., 2004, “Path Space Approach for Planning 2D Shortest Path Based on Elliptic Workspace Geometry Mapping,” KSME International Journal, Vol. 18, No. 1, pp. 92~105.

수치

Fig. 2 Three input points
Fig. 3 Intersection between the two circles
Fig. 6 The radius of the curve path: (a) r=d/2,
Fig. 10 Velocity profiles of two wheels
+5

참조

관련 문서

웹 표준을 지원하는 플랫폼에서 큰 수정없이 실행 가능함 패키징을 통해 다양한 기기를 위한 앱을 작성할 수 있음 네이티브 앱과

If a path is possible (i.e. , has positive probability), we want the hedge to work along that path. The actual value of the probability is irrelevant. There are no

1 John Owen, Justification by Faith Alone, in The Works of John Owen, ed. John Bolt, trans. Scott Clark, &#34;Do This and Live: Christ's Active Obedience as the

 false path : instruct the synthesis to ignore a particular path for timing optimization.  multicycle path: inform the synthesis tool regarding the number of clock cycles

As long as our deforming path (a continuous deformation of the path of an integral, keeping the end fixed) always contains only points at which f (z) is analytic, the

 Ex.3 Exactness and Independence of Path.. 10.2 Path Independence of Line Integrals..  Ex.3 Exactness and Independence of Path.. 10.2 Path Independence

~ In steady flow, Lagrangian path lines are the same as the Eulerian streamlines, and both are the same as the streak lines, because the streamlines are then fixed in space

~ In steady flow, Lagrangian path lines are the same as the Eulerian streamlines, and both are the same as the streak lines, because the streamlines are then fixed in space