• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (Dept. of Electrical Engineering and Computer Science, DGIST, Korea, E-mail : kalstn007@naver.com)



Omni-directional mobile robot, Mobile manipulator, Redundant system, Obstacle avoidance

1. 서 론

최근에 로봇의 적용 범위가 폭발적으로 확대되고 있다. 다양한 형태의 산업용 로봇 및 협동 로봇 등이 기존 산업 현장에서 뿐만 아니라 카페, 음식점 등에서도 활용되고 있다. 또한 고정된 형태의 로봇이 아닌 이동형 로봇의 활용도 점차 확대되어 가고 있다. 자율 주행자동차와 같이 이동 자체에 목적이 있는 경우를 제외하면 이동 로봇의 궁극적인 목적은 원하는 장소로 이동하는 것에 더하여 특정한 작업을 수행하는 것이다. 이와 같이 이동과 작업을 동시에 수행할 수 있도록 하기 위하여 이동로봇에 매니퓰레이터가 부착된 형태의 모바일 매니퓰레이터(Mobile manipulator)에 대한 연구가 매우 활발히 진행되어 왔다. 이동로봇의 매니퓰레이터에 약품을 분사할 수 있는 스프레이를 달아 소독 및 방역 작업을 수행(1)하거나, 산업현장에서 다양한 종류의 부품을 공급하거나(2), 고층 건물 환경에서 엘리베이터를 통한 층간 이동을 할 수 있도록 엘리베이터 버튼을 조작할 수 있는 모바일 매니퓰레이터를 제안한 연구도 있다(3). 모바일 매니퓰레이터를 효율적으로 적용하기 위한 연구들도 다수 진행되었는데 Benzi 등은 물건 옮기기와 같이 사람과의 물리적인 접촉이 일어나는 협동 작업을 수행할 수 있는 제어 구조를 제안하였고(4), Xu 등은 그리퍼가 달린 두 대의 모바일 매니퓰레이터가 하나의 물체를 잡고 이동하는 작업을 수행할 수 있도록 강화학습(reinforcement learning)에 기반한 협조제어 방법을 제안하였다(5).

한편 이동로봇은 바퀴로 구동되는 전통적인 이동로봇과 로봇의 자세를 바꾸지 않은 채로 좌우를 포함한 모든 방향으로 이동할 수 있는 전방향 이동로봇으로 나눌 수 있다. 전방향 이동로봇은 메카넘휠 또는 직교휠 등의 특수 휠을 사용하여 바퀴의 회전방향이 아닌 다른 방향으로 병진운동이 가능하기 때문에 전통적인 이동로봇에 비해 궤적 계획과 로봇 제어가 매우 간결해 진다는 장점이 있다. 전방향 이동로봇에 매니퓰레이터를 부착한 형태인 전방향 모바일 매니퓰레이터에 대한 연구도 활발히 진행되어 왔다. Ding 등은 메카넘휠을 사용한 전방향 이동로봇과 노인이 잡을 수 있는 로봇 팔로 구성되어 노인의 보행을 보조하는 형태를 제안하였고(6), Kim 등은 전방향 모바일 매니퓰레이터를 여유자유도 직렬 체인 매니퓰레이터로 모델링하고 비선형 모델 예측 제어를 기반으로 하여 전신(Whole-body) 모션 플래닝 방법을 제안하였고(7), Wang은 불확실성과 외란이 있는 경우에 RBF(radial basis function)네트워크에 기반한 적응 강건제어(adaptive robust control) 방법을 제안하였다(8). Zhang 등은 전방향 모바일 매니퓰레이터의 역기구학을 푸는 방법을 제안하였는데, 다중 목적함수를 갖는 최적화 문제를 발견적(heuristic) 알고리즘을 사용하여 푸는 방법을 제안하였다(9). 메카넘휠을 비롯한 특수바퀴를 사용한 연구들은 궤적계획보다는 실제 동작 시에 오차를 줄이기 위한 방법에 집중되었다. Suarez등은 전방향 이동로봇에 두 개의 팔과 손가락을 장착한 전방향 이동로봇에서 라이다, 레이저 거리센서, 카메라 등을 사용하여 로봇의 위치를 추정하는 방법을 제안하였다(10). 메카넘휠을 사용한 전방향 모바일 매니퓰레이터에서 로봇의 위치 오차를 줄이기 위한 방법으로 Qians등은 영상센서와 네 개의 메카넘휠에 부착된 엔코더 데이터를 확장칼만필터를 사용하였고(11), Malayjerdi등은 자기동조 Fuzzy PID제어를 사용하였다(12).

위의 기존연구에서 살펴본 바와 같이 전방향 모바일 매니퓰레이터는 높은 여유자유도로 인해 역기구학의 해가 무수히 많아 해를 결정하는 것이 어려운 과제이다. 본 논문에서는 네 개의 메카넘 휠을 장착한 이동 로봇 플랫폼을 두 개의 직동관절과 한 개의 회전관절을 가진 매니퓰레이터로 모델링한 후 전방향 모바일 매니퓰레이터의 역기구학 해를 구하는 문제를 하나의 여유자유도 매니퓰레이터 문제로 변환하여 해결하는 방법을 제안한다.

2. 전방향 모바일 매니퓰레이터

2.1 전방향 이동 로봇 플랫폼

전방향 이동로봇을 구현하는 다양한 방법이 제안되었으며(13,14) 그 중 메카넘휠(Mecanum wheel)을 장착한 형태가 다수를 차지하고 있다. 메카넘휠은 그림 1의 (a)에 나타내어져 있는데 바퀴의 주위에 보조 바퀴들이 부착된 형태를 갖는다. 그림 1의 (b)는 개별적으로 구동되는 네 개의 메카넘휠을 장착한 이동 로봇을 나타내는데 네 바퀴의 회전 속도 및 회전 방향의 합에 의해 로봇 몸체의 이동 속도와 방향이 결정된다. 특히 로봇 몸체의 회전이 없이도 평면상의 모든 방향으로 이동이 가능한 전방향성을 갖는다.

그림 1 메카넘휠과 전방향 이동 로봇

Fig. 1 Mecanum wheel and Omni-directional Mobile robot

../../Resources/kiee/KIEE.2023.72.8.952/fig1.png

전방향 이동 로봇의 기구학 해석을 위해 그림 2와 같이 좌표계를 설정한다.

그림 2 전방향 이동 로봇 좌표계

Fig. 2 Coordinates system of the omni-directional mobile robot

../../Resources/kiee/KIEE.2023.72.8.952/fig2.png

그림 2 에서 $\Sigma_0$ 는 로봇의 회전 중심 좌표계, $\Sigma_{i \omega}(\mathrm{i}=1,2,3,4)$ 는 각 메카넘훨 중심의 좌표계를 나타낸다. 메카넘훨 각각의 선 속도 $V_{i W}$ 와 바닥에 닿는 서브롤러의 접선속도 $V_{i r}$ 를 정의하 면 각 바퀴의 속도 $V_{i X}$ 는 식 (1)과 같이 나타낼 수 있고, 이는 로봇 중심의 속도인 $v_x, v_y$ 와 로봇 중심의 각속도인 $w_z$ 그리 고 메카넘 휠과 차체 중심과의 거리 $l_a, l_b$ 를 이용하여 식 (2) 와 같이 나타낼 수도 있다(15,16). 그림 2에서 네 개의 바퀴는 바닥면에 닿은 상태를 나타내며 보조바퀴들은 주바퀴 둘레에 그림의 빗금 부분에서와 같이 $45^{\circ}$ 각도로 배치되어 있다.

(1)
$\begin{array}{ll}V_{1 X}=V_{1 W}+\frac{V_{1 r}}{\sqrt{2}}, V_{1 Y}=\frac{V_{1 r}}{\sqrt{2}} \\ V_{2 X}=V_{2 W}+\frac{V_{2 r}}{\sqrt{2}}, V_{2 Y}=-\frac{V_{2 r}}{\sqrt{2}} \\ V_{3 X}=V_{3 W}+\frac{V_{3 r}}{\sqrt{2}}, V_{3 Y}=\frac{V_{3 r}}{\sqrt{2}} \\ V_{4 X}=V_{4 W}+\frac{V_{4 r}}{\sqrt{2}}, V_{4 Y}=-\frac{V_{4 r}}{\sqrt{2}} \end{array}$

(2)
$\begin{array} V_{1 X}=v_x-l_b \omega_z & , V_{1 Y}=v_y+l_a \omega_z \\ V_{2 X}=v_x+l_b \omega_z & , V_{2 Y}=v_y+l_a \omega_z \\ V_{3 X}=v_x+l_b \omega_z & , V_{3 Y}=v_y-l_a \omega_z \\ V_{4 X}=v_x-l_b \omega_z & , V_{4 Y}=v_y-l_a \omega_z\end{array}$

한편 메카넘휠의 선속도 $V_{i W}$ 와 메카넘휠의 각속도 $\omega_{i W}$ 는 $\omega_{i W}=V_{i W} / R_W$ 인 관계가 있으므로 식(1),(2)로부터 식 (3)과 같이 메카넘 휠의 각속도를 구할 수 있다. 식 (3)은 원하는 전 방향 이동로봇의 선속도와 각속도가 주어졌을 때 이를 구현할 수 있는 네 개의 메카넘훨의 각속도를 나타낸다. 식 (4)는 역 으로 각 메카넘훨의 각속도가 주어졌을 때 구현되는 전방향 이동로봇의 선속도와 각속도를 나타낸다.

(3)
$$\begin{aligned} & {\left[\begin{array}{l} \omega_{1 W} \\ \omega_{2 W} \\ \omega_{3 W} \\ \omega_{4 W} \end{array}\right]=\frac{1}{R_W}\left[\begin{array}{rrr} 1 & -1 & -\left(l_a+l_b\right) \\ 1 & 1 & \left(l_a+l_b\right) \\ 1 & -1 & \left(l_a+l_b\right) \\ 1 & 1 & -\left(l_a+l_b\right) \end{array}\right]\left[\begin{array}{c} v_x \\ v_y \\ w_z \end{array}\right]} \\ \end{aligned}$$

(4)
$$\begin{aligned} & {\left[\begin{array}{l} v_x \\ v_y \\ \omega_z \end{array}\right]=\frac{R_W}{4}\left[\begin{array}{cccc} 1 & 1 & 1 & 1 \\ -1 & 1 & -1 & 1 \\ \frac{-1}{l_a+l_b} & \frac{1}{l_a+l_b}& \frac{1}{l_a+l_b} &\frac{-1}{l_a+l_b} \end{array}\right]\left[\begin{array}{c} \omega_{1 W} \\ \omega_{2 W} \\ \omega_{3 W} \\ \omega_{4 W} \end{array}\right]} \end{aligned}$$

2.2 전방향 모바일 매니퓰레이터 해석

본 논문에서 해석을 위해 사용할 전방향 모바일 매니퓰레이터는 2.1절의 이동로봇 플랫폼에 매니퓰레이터가 장착된 형태로 그림 3에 그 구조를 나타내었다. 장착된 매니퓰레이터는 임의의 형태를 가져도 관계없으나 해석의 편리함을 위해 평면형의 두 개의 회전 관절을 갖고 있는 것으로 가정한다.

그림 3 전방향 모바일 매니퓰레이터

Fig. 3 Omni-directional mobile manipulator

../../Resources/kiee/KIEE.2023.72.8.952/fig3.png

이동로봇에 장착된 매니퓰레이터는 두 개의 회전축이 모두 지면에 수직이므로 평면상에서 회전운동을 하는 2축 평면 매니퓰레이터로 해석할 수 있다. 또한 이동로봇은 전 방향으로 움직일 수 있으며 제자리 회전이 가능하므로 직동 관절 두 개와 회전 관절 한 개를 가진 매니퓰레이터로 해석할 수 있다. 따라서 전방향 모바일 매니퓰레이터를 그림 4에 나타낸 바와 같이 두 개의 직동 관절과 세 개의 회전 관절을 갖는 5 자유도 매니퓰레이터로 변환하여 해석할 수 있다.

그림 4 5 자유도 매니퓰레이터 모델

Fig. 4 5 DOF manipulator model

../../Resources/kiee/KIEE.2023.72.8.952/fig4.png

그림 5에 전방향 모바일 매니풀레이터의 기구학 해석을 위 한 좌표계 설정을 나타내었다. 그림에서 $d_1, d_2$ 는 첫 번째와 두 번째 직동관절이고 $\theta_3, \theta_4, \theta_5$ 는 이후의 회전관절들이다.

그림 5 전방향 모바일 매니퓰레이터 좌표계

Fig. 5 Coordinates of the omni-directional mobile manipulator

../../Resources/kiee/KIEE.2023.72.8.952/fig5.png

전방향 모바일 매니퓰레이터의 엔드 이펙터의 위치 $x, y$ 와 방향 $\alpha$ 를 나타내는 순기구학 식은 식 (5)와 같다. 여기에서 $c_i \equiv \cos \left(\theta_i\right)$, $s_i \equiv \sin \left(\theta_i\right), c_{i j} \equiv \cos \left(\theta_i+\theta_j\right), s_{i j} \equiv \sin \left(\theta_i+\theta_j\right)$ 등 이다.

(1)
$$\begin{aligned} & x=d_1+l_3 c_3+l_4 c_{34}+l_5 c_{345} \\ & y=d_2+l_3 s_3+l_4 s_{34}+l_5 s_{345} \\ & \alpha=\theta_3+\theta_4+\theta_5 \end{aligned}$$

식 (6)과 같이 변수들을 정의하면 전방향 모바일 매니퓰레이 터의 자코비안을 식(7),(8)과 같이 구할 수 있다.

(6)
$$\begin{aligned} & X(t)=\left[\begin{array}{c} x(t) \\ y(t) \\ \alpha(t) \end{array}\right], \Theta(t)=\left[\begin{array}{l} d_1(t) \\ d_2(t) \\ \theta_3(t) \\ \theta_4(t) \\ \theta_5(t) \end{array}\right], \dot{X}(t)=\left[\begin{array}{c} \dot{x}(t) \\ \dot{y}(t) \\ \dot{\alpha}(t) \end{array}\right], \dot{\Theta}(t)=\left[\begin{array}{c} \dot{d}_1(t) \\ \dot{d}_2(t) \\ \dot{\theta}_3(t) \\ \dot{\theta}_4(t) \\ \dot{\theta}_5(t) \end{array}\right] \\ \end{aligned}$$

(7)
$$\begin{aligned} & \dot{X}(t)=J \cdot \dot{\Theta}(t), \quad J=\left[\begin{array}{lllll} J_{11} & J_{12} & J_{13} & J_{14} & J_{15} \\ J_{21} & J_{22} & J_{23} & J_{24} & J_{25} \\ J_{31} & J_{32} & J_{33} & J_{34} & J_{35} \end{array}\right] \\ &\end{aligned}$$

여기에서 $J_{i j}$ 는 식 (8)과 같다.

(8)
$$\begin{aligned} & J_{13}=-l_3 s_3-l_4 s_{34}-l_5 s_{345} \\ & J_{14}=-l_4 s_{34}-l_5 s_{345} \\ & J_{15}=-l_5 s_{345} \\ & J_{23}=l_3 c_3+l_4 c_{34}+l_5 c_{345} \\ & J_{24}=l_4 c_{34}+l_5 c_{345} \\ & J_{25}=l_5 c_{345} \end{aligned}$$

식 (4)로 주어지는 전방향 이동 로봇의 속도와 식 (6)으로 표시된 평면 5 자유도 매니퓰레이터의 처음 세 개의 속도 성분 사이에는 다음과 같은 관계가 있다.

(9)
$$\left[\begin{array}{l} \dot{d}_1(t) \\ \dot{d}_2(t) \\ \dot{\theta}_3(t) \end{array}\right]=\left[\begin{array}{ccc} c_3 & -s_3 & 0 \\ s_3 & c_3 & 0 \\ 0 & 0 & 1\end{array}\right]\left[\begin{array}{c} v_x \\ v_y \\ w_z\end{array}\right]$$

2.3 여유자유도 문제와 충돌 회피

2.2절에서와 같이 전방향 모바일 매니퓰레이터를 직동 관절 두 개와 회전 관절 세 개, 총 5 자유도를 갖는 평면 매니퓰레이터로 해석할 수 있다. 평면상에서의 작업에는 3 자유도가 필요하므로 제안된 로봇은 여유자유도가 2인 여유자유도 매니퓰레이터로 해석할 수 있다. 여유자유도 매니퓰레이터에서는 역기구학해가 무한개이므로 이 무수한 해 중에서 특정한 해를 결정하는 것이 중요한 문제가 된다. 또한 여유자유도 매니퓰레이터에서는 주 작업 외에 여유자유도를 사용하여 부가적인 부 작업을 수행하도록 할 수 있다.

본 논문에서는 전방향 모바일 매니퓰레이터를 하나의 여유자유도 매니퓰레이터 문제로 변환하여 매니퓰레이터의 엔드 이펙터가 주어진 궤적을 추종하도록 하는 주작업을 수행함과 동시에 부작업으로 매니퓰레이터와 주변 장애물과의 충돌을 회피하도록 하는 문제를 다룬다.

엔드 이펙터 궤적을 추종하는 주 작업에 대한 해를 구하기 위해서 속도 차원에서 의사역행렬을 구하는 방법을 사용한다. 또한 필요에 따라 특정 관절 변수의 움직임의 중요도를 다른 변수들과 달리 할 수 있도록 가중치를 주고 의사역행렬을 구하는 방법을 사용한다. 이는 식 (10)과 같은 최적해 문제를 푸는 것과 같고 이에 대한 해는 식 (11)과 같이 구할 수 있다. 이 해는 주어진 엔드 이펙터 속도 궤적 $\dot{X}(t)$ 을 만족하는 최 소 놈(norm) 해이다.

(10)
$$\begin{aligned} & \min \frac{1}{2} \dot{\Theta}^T W \dot{\Theta} \\ & \text { subject to } \dot{X}=J \cdot \dot{\Theta} \\ & \text { 여기에서 } W=\operatorname{diag}\left(w_1 \cdots w_5\right) \end{aligned}$$

(11)
$$\dot{\Theta}=J_W^{+} \dot{X}, \quad\left(J_W^{+}=W^{-1} J^T\left(J W^{-1} J^T\right)^{-1}\right)$$

전방향 모바일 매니퓰레이터에게 주어지는 부 작업으로는 충돌회피를 고려한다. 충돌회피 작업은 충돌을 피하기 위한 목적함수를 도입하고 이 목적함수를 최적화하는 해를 식 (12)와 같이 구한다. 충돌 회피를 구현하는 식 (12)는 모델링된 여유자유도 매니퓰레이터의 셀프모션(Self motion) 항이 포함되어있다. 즉, 충돌회피를 위해서 최적화해야 할 목적함수와 임의의 상수 로 이루어진 항이 영공간 투영(Null space projection) 연산자에 곱해진 형태이다. 영공간 투영 연산자는 여유자유도 매니퓰레이터가 추종해야할 궤적을 나타내는 $\dot{X}(t)$ 에는 영 향을 주지 않으면서 관절 속도 $\dot{\Theta}(t)$ 에는 변화를 주어 충돌을 피할 수 있는 해를 구할 수 있게 한다.

(12)
$$\dot{\Theta}=J_W^{+} \dot{X}+\left(I-J_W^{+} J\right)\left(k \frac{\partial P}{\partial \theta}\right)$$

전방향 모바일 매니퓰레이터의 일반적인 동작은 작업 대상물 근처로 이동하여 매니퓰레이터를 사용하여 특정한 작업을 수행하는 것이다. 따라서 작업 중 이동로봇에 장착된 매니퓰레이터와 장애물과의 충돌 회피를 고려하여 목적함수를 선정한다. 그림 6에 충돌회피를 위한 목적함수 P를 구하기 위한 변수와 좌표계를 나타내었다.

그림 6 전방향 모바일 매니퓰레이터와 장애물

Fig. 6 Omni-directional mobile manipulator and an obstacle

../../Resources/kiee/KIEE.2023.72.8.952/fig6.png

그림 6에 나타낸 바와 같이 목적함수 $P$ 는 매니퓰레이터의 4 번 링크와 장애물과의 거리를 나타내는 함수로 정의한다. 4번 링크를 이루는 점 $\left(x_3, y_3\right)$ 과 점 $\left(x_4, y_4\right)$ 은 순 기구학을 통해 식 (13)과 같이 구할 수 있다. 이 두 점을 이용하여 4번 링크를 평면상의 직선의 방정식으로 표현하면 식 (14)와 같이 나타낼 수 있다. 장애물의 중심점이 점 $(a, b)$ 에 위치해 있고, 안전거 리를 포함하여 이 장애물과의 충돌이 발생하지 않는 영역을 반지름이 $r$ 인 원의 외부로 가정하면 이 장애물은 식 (15)와 같이 표현할 수 있다. 이 때, 4 번 링크와 장애물과의 거리는 식 (16)과 같이 표시될 수 있으며 이 식은 장애물 회피를 위해 최대화를 해야 할 목적함수가 된다.

(13)
$\begin{aligned}& \left(x_3, y_3\right)=\left(d_1+l_3 c_3, d_2+l_3 s_3\right) \\& \left(x_4, y_4\right)=\left(d_1+l_3 c_3+l_4 c_{34}, d_2+l_3 s_3+l_4 s_{34}\right)\end{aligned}$

(14)
$\begin{aligned}m x-y-m x_3+y_3=0 \\\text{여기에서, } m=\frac{y_4-y_3}{x_4-x_3} \end{aligned}$

(15)
$\begin{aligned}& (x-a)^2+(x-b)^2=r^2 \end{aligned}$

(16)
$\begin{aligned}& P=\left(\frac{\left|m a-b-m x_3+y_3\right|}{\sqrt{m^2+(-1)^2}}-r\right)^2\end{aligned}$

3. 시뮬레이션

3.1 시뮬레이션 방법

시뮬레이션에서는 2.3절에서와 같이 가중치를 준 의사역행렬을 사용하여 해를 구하고 식 (16)과 같이 주어지는 목적함수 P의 적용 여부에 따른 전방향 모바일 매니퓰레이터의 궤적을 비교한다. 파라미터를 변경하며 두 가지 시뮬레이션을 수행하였고 사용된 파라미터는 표 1에 상술하였다. 전방향 모바일 매니퓰레이터의 궤적은 Matlab을 통해 계산하였고, Simulink를 사용하여 시각화하였다.

표 1 시뮬레이션에 사용한 파라미터들

Table 1 Parameters used in simulations

시뮬레이션 1

시뮬레이션 2

$\Theta(0)$

${\left[00090^{\circ} 0\right]^T}$

$X(0)$

(0.9m,0.4m,90°)

$X\left(t_f\right)$

(0.8m, 0.9m, 120°)

(1.5m, -0.2m, 60°)

$t_f$

3(sec)

(a,b)

(0.7m, 0.3m)

(1m, -0.4m)

r

0.05m

W

diag(1,1,0.5,0.5,0.5)

$l_n$

${l_3=0.4 \mathrm{~m}, l_4=0.5 \mathrm{~m}, l_5=0.4 \mathrm{~m}}$

$k$

1.3

2.5

시뮬레이션의 엔드 이펙터 궤적 계획은 관절 공간에서 구한다. 궤적은 일반적인 3차 다항식 형태로 설정하였다. 한편 제안한 방법에서는 관절 속도 공간에서 전방향 모바일 매니퓰레이터의 해를 구하므로 이를 기반으로 관절 위치인 ()를 구해야 하는데 이는 식 (17)과 같은 일반적인 룽게-쿠타 방법(Runge-Kutta Method)을 사용하여 구하였다.

(17)
$$\begin{aligned} & \Theta_{i+1}=\Theta_i+\frac{1}{6}\left(k_1+2 k_2+2 k_3+k_4\right) h \\ & k_1=f\left(t_i, y_i\right) \\ & k_2=f\left(t_i+\frac{1}{2} h, y_i+\frac{1}{2} k_1 h\right) \\ & k_3=f\left(t_i+\frac{1}{2} h, y_i+\frac{1}{2} k_2 h\right) \\ & k_4=f\left(t_i+h, y_i+k_3 h\right) \end{aligned}$$

Matlab의 연산 흐름은 그림 7과 같다. 초기 파라미터를 바 탕으로 의사역행렬 $J_W^{+}$와 목적함수 $P$ 로부터 $\dot{\Theta}(t)$ 을 구한 뒤, 룽게-쿠타 방법을 통해 $\Theta(t)$ 를 도출하게 된다. $\Theta(t)$ 의 $t$ 간격 은 10ms 로 $t_f$ 인 3s까지 300 번 반복을 통하여 전체 궤적을 구하였다.

그림 7 시뮬레이션 블록도

Fig. 7 Block diagram for the simulation

../../Resources/kiee/KIEE.2023.72.8.952/fig7.png

Matlab에서 계산된 궤적은 Simulink에서 시각화하였다. Simulink에서의 연산 과정은 그림 8에 블록도로 나타내었다. 즉, ${\Theta}(t)$ 블록에서 계산된 궤적을 입력받고 Obstacle 블록에서 초기 위치를 받아들인다. Robot Body 블록에서는 입력 값을 바탕으로 $t=$ 0~3초 사이의 로봇의 자세와 궤적을 시각화한다.

그림 8 시뮬링크 블록도

Fig. 8 Simulink Block diagram

../../Resources/kiee/KIEE.2023.72.8.952/fig8.png

3.2 시뮬레이션 결과

첫 번째 시뮬레이션은 그림 9에 나타낸 바와 같이 매니퓰레이터의 바깥쪽에 장애물이 있는 경우이다. 전방향 모바일 매니퓰레이터의 초기 위치에서 보았을 때 장애물은 우측 하단에 위치하고 있다. 시뮬레이션에서 사용한 파라미터들은 표 1에 나타낸 바와 같다. 주 작업은 그림에서 직선 화살표로 표시된 바와 같이 좌측 상단에서 우측 하단으로 이동하는 직선 궤적을 추종하는 것이다. 그림 9의 왼쪽 그림은 부작업인 충돌 회피를 고려하지 않고 주 작업만을 고려하여 식 (11)에 의해 해를 구한 경우이다. 이 경우에는 4번 링크가 장애물과 충돌하는 것을 확인할 수 있다. 그림 9의 오른쪽 그림은 장애물과의 충돌을 피하기 위하여 목적함수 P를 적용한 경우로서 식 (12)에 의해 해를 구한다. 그림에서와 같이 주작업인 엔드 이펙터의 직선 궤적을 추종하면서 이동로봇 몸체 전체를 기동하면서 부작업인 장애물과의 충돌도 피하는 것을 확인할 수 있다.

그림 10은 각 관절 변수의 값들의 변화를 그래프로 표시한 것이다. 목적함수 P를 적용하지 않은 경우 식 (11)에 의해 구한 해는 최소 놈 해이므로 관절 변수의 값들의 변화가 매우 적은 것을 확인할 수 있다. 충돌 회피를 하는 목적함수 P를 적용했을 때는 전방향 모바일 매니퓰레이터가 장애물 회피 기동을 하면서 관절 변수들의 값의 변화가 커지는 것을 확인할 수 있다.

두 번째 시뮬레이션은 그림 11에 나타낸 바와 같이 전방향 모바일 매니퓰레이터의 초기 위치에서 보았을 때 장애물이 로봇의 좌측 상단에 위치하고 있는 경우이다. 주 작업은 그림에서 직선 화살표로 표시된 바와 같이 우측 하단에서 좌측 상단으로 이동하는 직선 궤적을 추종하는 것이다. 그림 11의 왼쪽 그림은 부작업인 충돌 회피를 고려하지 않은 경우로서 매니퓰레이터의 4번 링크가 장애물과 충돌하는 것을 확인할 수 있다. 그림 11의 오른쪽 그림은 장애물과의 충돌을 피하기 위하여 목적함수 P를 적용한 경우로서 엔드 이펙터가 주어진 궤적을 충실히 추종하면서 매니퓰레이터의 4번 링크가 장애물과의 충돌도 피하는 것을 확인할 수 있다. 그림 12는 각 관절 변수의 값들의 변화를 그래프로 표시한 것으로 충돌 회피를 위한 목적함수 P를 적용했을 때 전방향 모바일 매니퓰레이터가 이동로봇 플랫폼과 매니퓰레이터 모두를 크게 움직이면서 관절변수들의 값이 크게 변화하는 것을 볼 수 있다.

그림 9 시뮬레이션 1 에서의 전방향 모바일 매니퓰레이터의 궤적

Fig. 9 Trajectory of the omni-directional mobile manipulator in simulation 1

../../Resources/kiee/KIEE.2023.72.8.952/fig9.png

그림 10 시뮬레이션 1 에서의 관절 변수들의 값

Fig. 10 Joint values for the simulation 1

../../Resources/kiee/KIEE.2023.72.8.952/fig10.png

그림 11 시뮬레이션 2 에서의 전방향 모바일 매니퓰레이터의 궤적

Fig. 11 Trajectory of the omni-directional mobile manipulator in simulation 2

../../Resources/kiee/KIEE.2023.72.8.952/fig11.png

그림 12 시뮬레이션 2 에서의 관절 변수들의 값

Fig. 12 Joint values for the simulation 2

../../Resources/kiee/KIEE.2023.72.8.952/fig12.png

4. 결 론

본 논문에서는 전방향 이동로봇 플랫폼과 이에 장착된 매니퓰레이터로 이루어진 전방향 모바일 매니퓰레이터에 대해서 관절 속도 수준에서 역기구학 해를 구하는 방법을 제안하였다. 전방향 모바일 매니퓰레이터에서는 일반적으로 역기구학 해가 무한개 존재하므로 해를 구하는 것이 쉽지 않다. 본 논문에서는 전방향 이동 로봇 플랫폼이 평면상에서 모든 방향으로 직선 이동을 할 수 있고 회전 이동도 할 수 있다는 점에 착안하여 전방향 이동로봇 플랫폼을 두 개의 직동 관절과 한 개의 회전 관절로 이루어진 매니퓰레이터로 모델링하는 방법을 제안하였다. 이와 같이 함으로써 전방향 이동로봇 플랫폼과 이에 장착된 실제 매니퓰레이터 전체를 하나의 여유자유도 매니퓰레이터로 변환하여 해석할 수 있게 된다. 변환된 여유자유도 매니퓰레이터는 여유자유도를 이용하여 엔드 이펙터의 궤적을 추종하는 주 작업 이외에 다른 부 작업도 수행할 수 있다. 본 논문에서는 매니퓰레이터의 특정 링크와 장애물과의 거리를 최대화하는 최적화 문제를 풀어서 관절 속도 수준에서 역기구학 해를 구하는 방법을 제안하였으며 시뮬레이션을 통해 제안한 방법의 유용성을 검증하였다. 추후 작업에서는 실제 로봇이 본 논문에서 제안한 궤적 계획을 이용하여 생성된 궤적을 추종하도록 제어하는 것이 필요하다. 모바일 로봇의 특성상 바퀴의 미끄러짐이나 바닥면의 비평탄 문제, 바퀴의 진동 등 여러 가지 요인에 의하여 주어진 궤적을 쉽게 추종하기 어려우며 따라서 모바일 매니퓰레이터 내부 센서외에도 비젼, 라이다 등 다양한 외부 센서를 이용하여 모바일 매니퓰레이터의 위치 오차를 줄이는 방법에 대한 고안이 필요할 것이다.

Acknowledgements

이 연구는 금오공과대학교 대학 학술연구비로 지원되었음(2021년도)

References

1 
S. H. Jung, D. G. Kim, S. B. Choi, D. I. Lee, J. W. Kang, B. M. Kwak, E. G. Tark, H. H. Yoon, J. S. Kim, J. H. Park, H. S. Kim, 2001, Development of the Permissible Current- Carrying Capability Calculation Program of Transmission Power Cables Installed in Ducts, in Proc. of KIEE Conference, pp. 340-342Google Search
2 
S. Thakar, R. K. Malhan, P. M. Bhatt, S. K. Gupta, 2022, Area-Coverage Planning for Spray-based Surface Disinfection with a Mobile Manipulator, Robotics and Autonomous Systems, Vol. 147(2022), No. 103920, pp. 1-24DOI
3 
Mads Hvilshoj, Simon Bogh, Oluf Skov Nielsen and Loe Madsen, 2012, Multiple part feeding – real-world application for mobile manipulators, Assembly Automation, Vol. 32, No. 1, pp. 62-71DOI
4 
Min-Woo Kang, Tae-Hyeon Kim, Hyun-Uk Shu, 2022, Implementation of HRI System for Mobile Manipulator bo be Operated in the Elevator, Journal of Institute of Control, Robotics and Systems, Vol. 28, No. 8, pp. 714-723DOI
5 
F. Benzi, C. Mancus, C. Secchi, 2022, Whole-Body Control of a Mobile Manipulator for Passive Collaborative Transportation, IFAC PapersOnLine 55-38, pp. 106-112DOI
6 
Pengjie Xu, Y. Chi, Y. Shen, W. Zhu, Y. Zhang, B. Wang, Q. Tang, 2023, Reinforcement learning compensated coordination control of multiple mobile manipulaotrs for tight cooperation, Engineering Applications of Artificial Intelligence, Vol. 123, No. 106281, pp. 1-11DOI
7 
Liang Ding, 2022, Intelligent assistance for older adults via an admittance-controlled wheeled mobile manipulator with task-dependent end-effectors, Mechatronics, Vol. 85, No. 102821, pp. 1-14DOI
8 
Sunhong Kim, 2022, NMPC-based Obstacle Avoidance and Whole-body Motion Planning for Mobile Manipulator, Journal of Korea Robotics Society, Vol. 17, No. 3, pp. 259-364DOI
9 
Yaonan Wnag, Xiru Wu, 2012, Neural networks-based adaptive robust control of crawler-type mobile manipulators using sliding mode approach, Industial Robot: An International Journal, Vol. 38, No. 3, pp. 260-270DOI
10 
Zhang, 2023, An inverse kinematics framework of mobile manipulator based on unique domain constraint, Mechanism and Machin Theory, Vol. 183, No. 105273, pp. 1-22DOI
11 
Raul Suarez, 2018, Development of a Dexterous Dual-Arm Onmidirectional Mobile Manipulator, IFAC PapersOnLine 51-22, pp. 126-131DOI
12 
Jun Qian, Bin Zi, Daoming Wang, Yangang Ma, Dan Zhang, 2017, The Design and Development of an Omni-Directional Mobile Robot Oriented to an Intelligent Manufacturing System, Sensors, Vol. 16DOI
13 
Ehsan Malayjerdi, Hadi Kalani, Mohsen Malayjerdi, 2018, Self-Tuning Fuzzy PID Control of a Four-Mecanum Wheel Omni-directional Mobile Platform, 26th Iranian Conference on Electrical Engineering (ICEE2018), pp. 816-820DOI
14 
J. Kim, H. S. Kim, Y. H. Kim, S. Y. Jung, 2013, Design of a stair cleaning robot using mecanum wheels, Proc. of ICROS Annual Conference 2013, pp. 441-442Google Search
15 
G. Mourioux, C. Novales, G. Poisson, P. Vieyres, May, 2006, Omni-directional robot with spherical orthogonal wheels: concepts and analyses, 2006 IEEE International Conf. on Robotics and Automation, pp. 3374-3379DOI
16 
Pakpoom Viboonchaicheep, Akira Shimada, 2003, Position Rectification Control for Mecanum Wheeled Omni-directional Vehicles, IECON’03, pp. 854-859DOI
17 
Kyung Su Yoon, Myung Sub Lee, Young Whee Sung, 2018, A Study on an Omni-directional Mobile Robot for Moving a Double-parked Car, The Transactions of the Korean Institute of Electrical Engineers, Vol. vol 67, No. 3, pp. 440-447Google Search

저자소개

김민수(Kim Minsu)
../../Resources/kiee/KIEE.2023.72.8.952/au1.png

1996년 7월 13일생.

2015년 3월~2021년 6월 금오공과대학교 전자공학부 졸업.

2021년 9월~2023년 9월 대구경북과학기술원 전기전자컴퓨터공학과 석사 졸업 예정.

주관심분야 : 지능 로봇, 모션 플래닝.

성영휘(Young Whee Sung)
../../Resources/kiee/KIEE.2023.72.8.952/au2.png

1962년 5월 20일생.

1988년 고려대학교 전자공학과 졸업.

1996년 KAIST 전기및전자공학과 졸업(공박).

1996년~1998년 LG산전 선임연구원.

1998~현재 국립 금오공과대학교 전자공학부 교수

주관심분야 : 지능로봇, 지능형 이동체