1. 서 론
최근 세계적으로 해양 에너지 자원에 관한 관심이 증가하고 있다(Shin et al., 2013). 이는 해양로봇 개발 연구로 이어져 다양한 로봇 개발이 활발하게 이루어지도록 한다(Lee et al., 2015). 해양 로봇은 크게 ROV(Remotely operated vehicle), AUV(Autonomous underwater vehicle)로 분류할 수 있다. ROV는 파워 케이블과 신호 케이블이 로봇에 연결되어 있어 구동하기 편리하지만, 케이블 길이에 따른 제약이 생긴다. AUV는 자율 무인 잠수정으로 배터리와 제어기가 로봇 내부에 있어 이동 반경 제약이 없다. AUV는 항주형 AUV와 호버링 AUV로 나뉜다(Kwon et al., 2012). 항주형 AUV는 광활한 지역의 해저를 탐사하고 호버링 AUV는 특정 위치에 자세 유지하면서 정지하여 정밀 조사와 작업을 수행한다(Jun et al., 2009; Jeong et al., 2013; Lee et al., 2015a; Lee et al., 2015b).
본 논문은 4개의 기구부와 5개의 추진기로 구성된 호버링 AUV(Hovering autonomous underwater vehicle, HAUV)를 개발하고, 6자유도 제어를 위한 PID(Proportional integral derivative) 제어기를 설계한 내용을 다룬다(Bae et al., 2014). 4개의 기구부는 배터리부, 메인 제어부, 모터 제어부, 통신부로 구성된다. 5개의 추진기는 주 추진기 2개, 수직 추진기 2개, 수평 추진기 1개로 구성되는데, 이 중 2개의 주 추진기는 서보모터 2개를 사용하여 추진 방향을 각각 변경할 수 있다. 기존의 논문이 수학적 모델과 PID 제어기를 사용한 시뮬레이션에 그친 반면, 본 논문에서는 회전하는 주 추진기를 포함한 5개의 추진기와 2개의 서보 모터를 사용한 HAUV의 수조 실험을 통하여 제안된 제어기의 성능을 확인하였다.
본 논문에서는 구현된 HAUV의 구성을 2장에서 소개하며, 3장에서는 6자유도 PID 제어기의 구성, 4장에서는 수평, 수직 운동 실험 결과를 통해 HAUV의 자세 제어를 검증하고 결론으로 글을 맺는다.
2. HAUV의 구성
본 논문에서 구현한 HAUV는 6자유도 운동체로서 Fig. 1과 같이 구성된다. HAUV는 길이 1370mm. 폭 350mm, 높이 570mm, 중량 56.5kgf이다.
Fig. 1Structure of HAUV
HAUV는 Fig. 1과 같이 5개의 추진기와 4개의 기구부로 구성된다. 추진기는 주 추진기, 수직 추진기, 수평 추진기로 구분한다. 기구부는 메인 제어부와 모터 제어부 RTU(Rotating thruster unit), 통신부, 배터리부로 구분한다. 메인 제어부는 HAUV를 제어하는 Main PC, 전원 제어부, 항법 제어부로 구성된다. RTU는 5개의 추진기와 중앙에 위치한 주 추진기의 회전을 위한 2개의 서보 모터를 제어한다. 통신부는 사용자와 HAUV간의 무선 통신을 위한 무선 액세스 포인트를 제어한다. 배터리부는 모터부 배터리와 전장용 배터리와 DC/DC 컨버터로 구성된다.
Fig. 2는 HAUV의 전장 블록 다이어그램이다. 사용자는 HMI(Human machine interface)가 탑재되어 있는 외부의 Host PC를 사용하여 무선 통신을 통해 HAUV 내의 Main PC와 통신한다.
Fig. 2Block diagram of HAUV
HAUV에 사용된 센서들은 GPS(Global positioning system), IMU(Inertial measurement unit), DVL(Doppler velocity logger), 깊이 센서, 누수 센서 등이다. 이 센서들은 각각의 통신 주기가 다르므로, 이들 센서 데이터를 모아 한꺼번에 항법 제어부에 전달되도록 설계하였다. 항법 제어부는 융합한 HAUV의 자세, 시스템 상태 등의 데이터를 Main PC에 전송한다.
Main PC는 사용자의 자세 명령에 따라 현재 HAUV의 자세, 상태 센서 데이터와 비교하여 PID 제어기를 통해 6자유도의 힘과 모멘트를 구한다. 여기서 구한 힘과 모멘트는 모터 제어부에 인가되어 각 추진기의 방향과 속도를 제어한다.
Fig. 3은 HAUV의 6자유도 좌표계 시스템을 나타내며, 여기에 로봇 고정 좌표계와 지구 고정 좌표계에서 사용하는 기호들을 표시하였다.
Fig. 3Coordinate of HAUV
로봇 고정 좌표계를 사용한 각 방향의 힘과 모멘트는 X, Y, Z, K, M, N 이다. X는 x축 운동인 전진, 후진 운동이며 Y는 y축 운동인 좌, 우 운동, Z는 z축 운동인 상승, 하강 운동, K는 Roll(ϕ) 운동, M은 Pitch(θ) 운동, N은 Yaw(𝜓) 운동에 관여하는 힘과 모멘트이다.
3. HAUV의 6자유도 PID 제어기 설계
3.1 X, Z, K 제어기
주 추진기와 서보모터는 X, Z, K 제어기 결과값을 통해 HAUV의 x, z, ϕ를 제어한다. Fig. 4는 PID 제어기를 사용하여 구현한 블록 다이어그램이며 식 (1)은 제어기의 수식이다.
Fig. 4X, Z, K Controller
본 논문에서 기호는 다음과 같이 기술된다. T 는 샘플링타임을 나타낸다. 아래첨자 prop은 각 방향의 추진력, 아래첨자 err은 각 방향의 오차, 아래첨자 d는 각 방향의 목표값을 각각 나타낸다. P, I, D 는 PID 제어기의 이득값으로 아래첨자는 각각의 방향을 나타낸다.
계산된 힘과 모멘트는 식 (2)를 통하여 주 추진기의 출력과 서보모터의 각도로 변환된다. TLeft, TRight, α 은 각각 왼쪽 주추진기 추력, 오른쪽 주 추진기 추력, 주 추진기의 각도를 나타낸다. 여기에서 d는 주 추진기와 HAUV의 중심 거리로 0.35m이다. 추진기의 출력은 제어기 결과값에 따라 0~100%로 표시된다.
Fig. 5는 각 추진기의 위치와 출력 방향을 보여준다.
Fig. 5Value of thruster and motor
3.2 Y, N 제어기
수평 추진기는 Y, N 제어기 결과값을 통해 HAUV의 y, 𝜓를 제어한다. Fig. 6은 PID 제어기를 사용하여 구현한 블록 다이어그램이며, 식 (3)은 제어기의 수식이다.
Fig. 6Y, N Controller
수평 추진기의 출력은 식 (4)와 같이 구한다. TFront, TRear 은 전 수평 추진기의 추력, 후 수평 추진기의 추력을 나타낸다. l은 수평 추진기 사이의 거리를 반으로 나눈 값으로서 0.5m이다.
3.3 M 제어기
수직 추진기는 M 제어기 결과값을 통해 HAUV의 θ를 제어한다. Fig. 7은 PID 제어기를 사용하여 구현한 블록 다이어그램이며 식 (5)는 제어기의 수식이다.
Fig. 7M Controller
수직 추진기가 제어기 결과에 따라 식 (6)와 같이 동작한다. Tback은 HAUV 후방에 위치한 수직 추진기의 추력을 나타낸다.
4. HAUV의 수중 실험
4.1 수직 운동 실험
HAUV의 실험은 부경대학교 동백리 캠퍼스의 50m×20m×10m의 해양실험수조에서 진행하였다. 수직 운동 실험은 Z, M 제어기를 사용하여 HAUV의 깊이와 Pitch를 제어하고 이를 통해 제어기의 성능을 확인하였다.
Fig. 8은 깊이 제어 실험 결과이다. 목표 깊이 zd는 0초부터 72초까지 1.5m이고, 72초부터 122초까지 0m으로 설정하였다. Z 제어기는 목표 깊이와 HAUV의 현재 깊이의 오차값에 따라 주 추진기의 추진력을 결정한다. 오른쪽 주 추진기와 왼쪽 주 추진기의 프로펠러 방향이 서로 반대이므로 추진기의 출력은 반대이다. 또한 Z의 결과를 이등분하고 100 이하로 제한하여 추진기에 인가한다. 주 추진기가 잠수하기 위해서는 추진력이 위를 향하여 출력해야 한다. 그러므로 Fig. 8과 같이 추진기의 각도는 90°가 된다.
Fig. 8Result of a vertical movement (1)
이때의 실험 사진을 Fig. 9에 나타내었다. 주 추진기가 90°로 위를 향해 추진력을 출력하여 HAUV의 깊이를 제어하는 것을 확인할 수 있다.
Fig. 9Image of a vertical depth movement
Fig. 10은 Pitch 제어의 실험 결과이다. θd는 0°로 설정한다. M 제어기는 HAUV 후미에 위치한 수직 추진기의 추진력을 결정한다. 수직 추진기가 HAUV의 Pitch를 항상 0°로 유지시키는 것을 확인할 수 있다.
Fig. 10Result of a vertical movement (2)
이때의 실험 사진을 Fig. 11에 나타내었다. HAUV의 Pitch가 0°가 아닐 때, 수직 추진기가 출력하여 HAUV가 항상 0°를 유지할 수 있도록 하고 있다.
Fig. 11Image of a vertical pitch movement
4.2 수평 운동 실험
수평 운동 실험은 yaw 제어로 구성된다. Fig. 12는 yaw 제어 실험 결과로 𝜓d는 −42°, 40°, −60°, 30°로 변화시켰다. N 제어기는 HAUV 전후에 위치한 두 개의 수평 추진기의 출력을 결정한다. Tfront와 Trear의 프로펠러 방향이 서로 반대이므로 추진기의 출력은 반대이다. 제어기의 출력은 100으로 제한된다.
Fig. 12Result of a horizontal movement
이때의 실험 사진을 Fig. 13에 나타내었다. HAUV가 시계방향으로 회전하기 위해 Tfront가 왼쪽으로 추진력을 출력하고 Trear가 오른쪽으로 추진력을 출력하여, HAUV가 반시계방향으로 회전하고 있는 상태이다.
Fig. 13Image of a horizontal psi movement
Fig. 14는 Host PC가 HAUV를 제어할 수 있도록 만든 HMI 프로그램이다. 화면 좌측은 HAUV의 목표 자세를 설정할 수 있고, 화면 중간은 제어기의 에러값을 그래프로 출력하고, 화면의 우측은 HAUV의 자세와 상태를 표시한다.
Fig. 14Screenshot of HMI on host PC
Fig. 15는 수중 카메라가 수중의 부표를 촬영하여 HAUV와 연결된 부유형 WiFi(Wireless Fidelity) 안테나를 통하여 실시간으로 Host PC에 전송한 영상을 보여준다.
Fig. 15Image of underwater camera
5. 결 론
본 논문에서는 6자유도의 HAUV와 제어에 대하여 다루었다. HAUV는 PID 제어기를 사용하여 자세를 제어한다. 먼저, 수직 운동 실험을 위하여 HAUV 좌우에 위치한 회전하는 두 개의 주 추진기와 HAUV 후방에 위치한 한 개의 수직 추진기를 사용하여 HAUV의 깊이와 pitch를 제어하였다. 그 후, 수평 운동 실험을 위하여 HAUV 전후에 위치한 두 개의 수평 추진기를 사용하여 HAUV의 yaw를 제어하는 것으로 제안된 제어기의 동작을 확인하였다.
추후에는 DVL을 사용한 항법 시스템을 추가하여 HAUV의 위치를 확인하고, 이를 통해 경유점 추적 실험을 할 계획이다.
References
- Bae, S.B., Shin, D.H., Joo, M.G., 2014. A Depth Control of Hovering AUV Using PD Controller. Journal of KIIT, 12(6), 1-7.
- Jeong, S.K., Choi, H.S., Seo, J.M., Huy, T.N., Kim, J.Y., 2013. Design and Control of 6 D.O.F(Degrees of Freedom) Hovering AUV. Journal of Institute of Control, Robotics and Systems, 19(9), 797-804. https://doi.org/10.5302/J.ICROS.2013.13.9025
- Jun, B.H., Lee, P.M., Kim, Y.K., 2009. Trends in the CruisingType AUVs Technologies. Journal of the Korean Society for Precision Engineering, 26(5), 14-22.
- Kwon, S.T., Shin, D.H., Joo, M.G., 2012. Way-Point Tracking of AUV using Sliding Mode Controller. Journal of Korea Institute of Information Technology, 10(10), 17-22.
- Lee, J.W., Park, J.W, Suh, J.H., Choi, Y.H., 2015a. Redundant Architectural Design of Hydraulic Control System for Reliability Improvement of Underwater Construction Robot. Journal of Ocean Engineering and Technology, 29(5), 380-385. https://doi.org/10.5574/KSOE.2015.29.5.380
- Lee, P.H., Park, S.K., Kwon, S.T., Park, S.W., Jung, H.S., Park, M.S., Lee, P.M., 2015b. Dynamic Modeling of Autonomous Underwater Vehicle for Underwater Surveillance and Parameter Tuning with Experiments. Journal of Ocean Engineering and Technology, 29(6), 488-498. https://doi.org/10.5574/KSOE.2015.29.6.488
- Shin, D.H., Bae, S.B., Baek, W.K., Joo, M.G., 2013. Way-Point Tracking of AUV using Fuzzy PD Controller. Journal of Korea Institute of Information Technology, 11(5), 1-7.