2.1 기구부 구조
본 논문에서는 ball and plate 시스템을 위한 기구부로 pitch, roll, vertical 움직임에 관하여 자유도를 가지는 3 자유도
Stewart platform을 채택한다. 그림 1은 본 논문에서 채택한
표 1. Arm을 기술하는 파라미터
Table 1. Parameters that describes the arm
Symbol
|
Parameter
|
$J_{b i}$
|
The $i$-th base joint($i=1,\: 2,\: 3$)
|
$J_{p i}$
|
The $i$-th plate joint($i=1,\: 2,\: 3$)
|
$J_{si}$
|
The $i$-th sub joint($i=1,\: 2,\: 3$)
|
$L_{bs}$
|
Base-sub link
|
$L_{ps}$
|
Plate-sub link
|
$L$
|
Virtual leg connecting $J_{b i}$ and $J_{p i}$
|
$R_{b}$
|
Radius of the base circle
|
$R_{p}$
|
Radius of the plate circle
|
$D_{s}$
|
The length of $L_{ps}$
|
$R_{m}$
|
The length of $L_{bs}$
|
$\Pi_{i}$
|
The plane with joints of the $i$-th arm($i=1,\: 2,\: 3$)
|
$h_{i}$
|
Height($z$-axis coordinate of $J_{p i}$, $i=1,\: 2,\: 3$)
|
$\alpha$
|
The angle between $L_{bs}$ and $L$ when $\gamma = 0$
|
$\beta$
|
The angle between $L_{bs}$ and $L$ when $\gamma\ne 0$
|
$\gamma$
|
The angle of rotation of the motor
|
platform의 개념도이며, 다음과 같은 역할을 하는 3개의 층으로 구성된다.
· Plate 층: Base 층의 모터에 의해 picth, roll, vertical에 대한 자유도를 가지고 동작한다. Ball의 위치를 측정하는
센서가 부착되어 있으며, ball and plate 시스템이 구현되는 층이다.
· Base 층: 3개의 모터를 부착하여 platform의 움직임을 생성한다.
· Control 층: 센서 데이터 수집과 모터 구동을 위한 인터페이스 보드가 장치된 층이다.
기구부에 부착되는 모터로는 정밀 제어가 용이하며 강한 힘을 출력할 수 있도록 감속기를 갖는 DC 모터를 사용한다. 그림 2는 base 층에 부착된 DC 모터의 구조를 보여준다. 고분해능의 자기식 엔코더와 자석 거치대를 장착하여 정밀한 회전각의 측정이 가능하고, 어댑터를
이용하여 엔코더와 모터를 결합할 수 있도록 제작한다(23). 또한 platform이 제한된 공간 내에서 넓은 동작범위를 가지도록 revolute joint를 사용하는 구조를 갖는 것이 특징이다. 그림 3(a)은 3차원 설계 SW로 설계한 전체 platform을 나타낸다. 그림 3(b)은 모터에 부착되어 plate를 구동하는 arm의 구조를 보여준다.
2.2 기구학
Ball and plate 시스템의 기구부 구조로 제안하는 3 자유도 Stewart platform을 동작시키기 위해서는 이에 대한 기구학에 대한
지식이 요구된다. 3 자유도 Stewart platform의 기구학(Kinematics)과 역기구학(Inverse kinematics) 문제에 대해
platform의 base 층과 plate 층에 삼각형 모양으로 배치된 joint를 연결하는 link의 길이와 plate 층의 pitch, roll,
vertical 움직임의 관계에 대하여 다룬 연구가 있다(24). 이때 link의 길이는 prismatic joint에 의해 결정되는데 본 논문에서 제안하는 기구부는 그림 1과 같이 prismatic joint가 아닌 revolute joint를 사용하므로 기구학에 대한 새로운 유도가 필요하다. 따라서 본 논문에서는 revolute
joint를 사용한 3 자유도 Stewart platform의 기구학을 유도한다.
먼저 수학적으로 정리하기 위해 arm을 기술하기 위한 파라미터를 표 1과 같이 정의한다. Platform은 그림 3(b)과 같이 3개의 joint($J_{b i}$, $J_{p i}$, $J_{si}$)와 2개의 link($L_{bs}$, $L_{ps}$)로 이루어진
arm을 사용하여 base 층과 plate 층을 연결하는 구조이다. $L$은 $J_{b i}$와 $J_{p i}$ 사이에 존재하는 virtual leg에
대응하며, 길이는 모터의 움직임에 의해 결정된다(24). 따라서 본 논문에서 제안하는 platform의 기구학을 base 층에 부착된 모터의 회전각과 base 층의 무게 중심을 origin으로 한 base
frame으로부터 plate 층의 무게 중심을 origin으로 한 plate frame까지의 수직 거리(height), plate frame의 pitch,
roll과의 상관관계로 나타내고자 한다.
그림. 4. (a) Base 평면에 정사영 된 joints, (b) $\gamma_{i}=\gamma$일 때 arm 개념도($i=1,\:2,\:3$)
Fig. 4. (a) Joints projected onto the base plane, (b) Concept diagram of the arm when
$\gamma_{i}=\gamma$ ($i=1,\:2,\:3$)
$J_{b i}$와 $J_{p i}$의 좌표를 정의하고자 한다. 식을 간단히 하기 위해 앞으로 삼각함수 수식은 $\sin\alpha =s_{\alpha}$,
$\cos\alpha =c_{\alpha}$, $\tan\alpha =t_{\alpha}$의 형태로 표현한다. $J_{b i}$와 $J_{p i}$의
좌표는 각각 base frame을 기준으로 다음과 같이 나타낼 수 있다.
$J_{p i}$를 $x-y$평면($z=0$)으로 정사영시키면 그림 4(a)와 같이 반지름이 다른 3개의 가상의 원 모양에 $120^{\circ}$간격으로 배치되며 정사영 된 $J_{p i}$의 좌표는 다음과 같다.
모터가 그림 4(b)처럼 $\gamma$만큼 회전했을 때 $\alpha$와 $\beta$는 다음과 같이 구한다.
이때 $R_{m}$, $D_{s}$는 platform 설계 시 정해지는 값이고, $l$은 모터가 회전함에 따른 virtual leg($L$)의 길이로
$J_{b i}$와 $J_{p i}$의 좌표를 통해 구할 수 있다. 여기서 $J_{p i}$의 좌표는 정사영 된 $J_{p i}$의 좌표에 대한 회전행렬($R$)과
병진 벡터($\xi$)를 통해 표현할 수 있으므로 $l$은 다음과 같이 정리할 수 있다.
$R$은 $SO(3)$행렬로, pitch-roll-yaw($\psi$, $\theta$, $\phi$) 또는 Rodrigues’ rotation formula로
표현된다. 이때 $n$와 $\delta$, $N$는 각각 회전축 상의 단위벡터, 회전각, skew-symmetric 행렬을 의미한다(8).
여기서 $r_{ij}$와 $\delta$, $n$은 다음의 관계를 가진다.
3 자유도 Stewart platform에서 $J_{p i}$는 각각 평면 $\Pi_{1}$, $\Pi_{2}$, $\Pi_{3}$ 상에 존재해야
하므로 $R$과 $\xi$는 임의로 선택할 수 없고 제약 조건(constraint equation)을 만족해야 하며 다음과 같이 정리된다(24). 여기서 $x_{G}$와 $y_{G}$, $z_{G}$는 base frame 기준으로 한 plate frame의 origin의 좌표이다. $z_{G}$는
사용자가 정하는 값으로, base frame으로부터 plate flame까지의 수직 거리(height)에 해당한다.
$s_{\delta}\ne 0$이라면 식 (6), (7)에 의해 $\phi$는 $\psi$와 $\theta$의 종속 변수임을 알 수 있다.
따라서 식 (5), (6)을 $\psi$와 $\theta$로 나타낼 수 있다.
제약 조건을 통해 $\psi =\theta =0$인 경우에만 $x_{G}=y_{G}=0$이 성립하고 나머지 경우에는 $0$이 아닌 값을 가질 수 있음을
알 수 있다. 즉 plate frame의 origin은 고정되어 있지 않고, plate가 회전함에 따라 다음과 같이 이동한다.
이로 인해 plate frame의 pitch, roll은 $R$에서 정의한 $\psi$, $\theta$와 다를 수 있으므로 plate frame의
pitch($\bar{\psi}$), roll($\bar{\theta}$)을 새롭게 정의해야 한다. Plate frame의 $z$축 벡터는 base
frame의 $z$축 벡터에 $R$을 곱하여 표현할 수 있다. 또한 plate frame의 $z$축 벡터는 plate에 수직이므로 다음과 같은 평면의
방정식으로 나타낼 수 있으며 $J_{p i}$는 이 평면 위에 있다.
식 (11), (12)을 통해 $\bar{\psi}$와 $\bar{\theta}$는 다음과 같이 유도된다.
이를 통해 $\psi$는 $\bar{\psi}$과 같지만, $\theta$는 $\bar{\theta}$와 $\psi$의 종속 변수임을 알 수 있다.
따라서 새롭게 정의된 $\bar{\psi}$와 $\bar{\theta}$을 사용하여 기구학을 유도해야 한다. 결론적으로 base 층의 모터의 회전각은
$J_{bi}$, $J_{p i}$와 관련 있으며 $J_{b i}$는 고정 파라미터이고 $J_{p i}$는 $R$과 $\xi$을 통해 알 수 있다.
이는 plate frame의 $z_{G}$와 $\bar{\psi}$, $\bar{\theta}$에 의해 결정된다.
그림. 5. 터치패널 다이어그램 (a) $x$, $y$축, (b) 터치가 있을 때 $z$축, (c) 터치가 없을 때 $z$축
Fig. 5. Concept diagram of the touch panel (a) the $x$, $y$ axes, (b) the $z$ axis
with touch, (c) the $z$axis without touch
그림. 6. 인터페이스 보드
Fig. 6. Interface board
그림. 7. 데이터 처리 개념도
Fig. 7. Concept diagram for data processing