다수의 추진기를 지닌 ROV의 추력배분을 통한 정지 상태에서의 선수각 및 수심 제어 구현

Implementation of Heading Angle and Depth Keeping Control of ROV with Multiple Thrusters by Thrust Allocation

  • ABSTRACT

    This study deals with the heading angle and depth keeping control technique for an ROV with multiple horizontal and vertical thrusters by thrust allocation. The light work class ROV URI-L, which is under development at KRISO, is a redundant actuating system with multiple thrusters that are larger than the ROV's degree of freedom. In the redundant actuating system, there are several solutions for a specific ROV motion to be performed. Therefore, a thrust allocation algorithm that considers the entire propulsion system should be regarded as important. First, this paper describes the propulsion system of the ROV and introduces the thrust allocation method of each motion controller. In addition, the performance of the controller is examined using a heading angle and depth keeping control test in a stationary state.


  • KEYWORD

    경작업용 ROV , 추력배분 , 추진기 배치 행렬 , 과구동기 시스템 , 추진 시스템

  • 1. 서 론

    선박해양플랜트연구소와 레드원테크놀로지(주)는 수중건설작업을 지원하기위한 경작업용 ROV(Remotely operated vehicle), URI-L을 개발 중이다. 여기서 경작업은 수중 건설작업에서 요구되는 다양한 소규모 작업(경량물체 이동, 소형 작업툴을 이용한 작업, 수중지형정보 제공 등)을 의미하며, 경작업용 ROV는원활한 수중작업을 위해 특정 자세 유지 및 다양한 동작 수행 능력이 요구된다. 이를 위해, URI-L은 움직일 수 있는 자유도보다 추진기 수가 많은 과구동기 시스템(Redundant actuating system)으로 개발되었다. 이러한 과구동기 시스템의 경우 특정 운동을 수행하기 위한 다양한 해법이 존재하므로, 추진 시스템(Propulsion system) 전체를 고려한 추력배분(Thrust allocation) 알고리즘이 중요하게 다루어져야 한다.

    과구동기 시스템은 다음과 같은 특징을 가지고 있다(Johansen and Fossen, 2013).

    (1) 내고장성(Fault tolerance)과 추력배분을 위한 여분(Redundancy)의 작동기를 보유하고 있다.

    (2) 단일 작동기로 수행되는 운동을 여러 작동기의 작은 제어 입력으로 동일하게 수행 가능하므로, 단일 작동기의 부하를 줄일 수 있다.

    (3) 과구동기 시스템은 다수의 작동기를 가지지만, 추력을 배분하는 상위 제어기에서 전체 시스템의 자유도 수와 동일한 힘과 모멘트 τ로 표현 가능하다. 이 경우 상위 제어기는 τ의 제약조건을 고려해야 한다.

    (4) 원하는 운동을 수행하기 위한 개별 운동에 대한 별도의 하위 제어기가 존재 한다. 특정 작동기는 여러 하위 제어기에 관여할 수 있으므로 중복되어 사용될 수 있다. 이 경우 특정 작동기에 과도한 부하가 발생할 가능성이 있다.

    (5) 최적 제어의 틀에서 가중치 행렬을 적절히 선택한 추력배분을 통해 제어 성능의 손실 없이 요구하는 운동 제어가 가능하다(Harkegard and Glad, 2005).

    과구동기 시스템의 제어력을 할당하기 위한 추력배분은 항공(Oppenheimer and Doman, 2007) 및 우주(Henrik, 2005) 그리고 선박(Berge and Fossen, 1997; Fossen and Johansen, 2006; Ji and Kim, 2012) 및 수중로봇(Garus, 2004; Whitcomb and Yoerger, 1999) 분야뿐만 아니라, 자동차, 보행로봇, 멀티로봇(Pedrami et al., 2009)과 같은 다른 여러 분야로 확대되고 있는 추세이다. 또한 특정 작동기에 문제 발생시 나머지 작동기에 제어력을 재할당하는 추력 재배분 기법에 대해 많은 연구가 이루어지고 있다(Shen et al., 2017).

    본 논문에서는 10개의 추진기를 가지는 경작업용 ROV의 6자 유도 운동을 구현하기 위한 방법에 대해 다루고자 한다. 2장에서 다수의 수직⋅수평 추진기를 가지는 경작업용 ROV와 그 추진 시스템에 대해서 설명한다. 3장에서는 과구동기 시스템인 ROV의 운동을 제어하기 위해 설계된 제어기에 대해 소개한다. 이상적인 상태의 ROV를 대상으로 추진기 배치 행렬을 이용한 상위 추력배분 제어기와 ROV의 개별 운동을 제어하기 위한 하위 운동 제어기에 대해 설명하고 전체 제어기 구성을 제시한다. 4장에서는 이상적인 상태를 가정하고 설계된 제어기에 대한 성능을 확인하기 위해 ROV가 정지한 상태에서 선수각 및 수심제어를 동시에 수행한 실험 결과를 고찰한다.

    2. 다수의 수직?수평 추진기를 지닌 ROV

    경작업용 ROV는 수중 건설에 필요한 다양한 경작업, 모니터링, 시공전후 해저면 정밀 매핑, 각종 유지보수 등의 작업이 가능하도록 개발 중인 수중로봇으로 그 외형은 Fig. 1과 같다. 본 연구의 ROV는 수중의 경작업을 위한 로봇 팔(Manipulator)을 전방에 2개 장착하였으며 각종 항법 센서와 주변 환경을 인지하기 위한 어라운드 뷰 카메라와 장애물 탐지 소나, 전방 주사 이미징 소나와 멀티빔 이미징 소나를 탑재하고 있다. ROV의 자세한 사양은 Table 1과 같다. 천해역에서 주기적으로 발생하는 대부분의 조류는 2knots(1.03m/s) 정도이므로 최대전진속도는 2.5knots(1.29m/s)로 설계되었다.

    ROV의 운동 성능을 확보하기 위해 6자유도보다 많은 수의 추진기를 이용해 설계된 유영속도로 움직이고, 정지된 자세를 유지할 수 있도록 제작되었다. 이를 위한 ROV의 추진 시스템(Propulsion system)은 Fig. 2와 같이 4개의 수직(Vertical) 추진기와 6개의 수평(Horizontal) 추진기로 구성되어 있다. 수직 및 수평 추진기는 Tecnadyne의 전기모터 추진기로 자세한 사양은 Table 2와 같다. 정지된 상태에서 로봇 팔을 이용하여 작업할 경우 ROV의 자세에 영향을 줄 수 있기 때문에, 수직 운동에 필요한 추력을 용량이 작은 4대의 추진기로 분산 확보하여 종경사각과 횡경사각에 대한 가제어성을 확보하였다. ROV가 수평 운동을 하기 위해서는 4대의 추진기만으로도 가능하지만, 최대 전진속도를 달성하기 위해 전진방향 추력을 증가시키는 수평 추진기 2대가 후미에 배치되었다. 그리고 모든 추진기는 프로펠러 회전에 대해 반작용으로 발생되는 모멘트를 상쇄시키기 위해 인접한 추진기의 프로펠러 날의 각도(Blade angle)가 서로 상반되도록 설계되었다(Lee et al., 2017).

    Fig. 3은 본 연구에서 다루고 있는 ROV의 좌표계를 도시한 결과이며, 수직 추진기와 수평 추진기는 각각 Fig. 4Fig. 5와 같이 배치되어 있다. 여기서 수직 추진기에 경사각을 준 이유는 ROV 선체와 추진기의 간섭을 최소화하기 위함이다. 본 연구에서는 ROV의 수직 추진기와 수평 추진기는 각각 수직 운동과 수평 운동에만 영향을 준다고 가정하였다. 여기서, 수직 운동은 Heave, Roll, Pitch 방향의 운동을 의미하고, 수평 운동은 Surge, Sway, Yaw 방향의 운동을 의미한다. 또한, 수평 추진기인 9, 10번 추진기는 전진 방향 속도에만 관여한다고 가정하였다. 즉, Surge 운동 방향의 부스터 개념으로 운용되어진다.

    추진기의 특성을 확인하기 위해 추진기의 PWM(Pulse width modulation) 입력에 대한 RPM(Revolution per minute) 출력 실험을 수행하였다(Yoon et al., 2017). 실제 추진기 출력은 초단위의 회전속도계(Tachometer)로 측정되므로 식 (1)을 통해 RPM으로 변환된다.

    image

    여기서, GvGh는 수직 및 수평 추진기의 1회전 당 측정되는 회전속도계의 값을 의미하며, 각각 6과 20.1의 상수 값을 가진다.

    Fig. 6은 9, 10번 추진기의 입출력 실험 결과를 나타내고 있으며, 이를 통해 PWM 입력에 대한 RPM 출력이 선형이고 정/역방향에서 동일함을 확인할 수 있다. 그러나 RPM 출력의 선형성과 별도로 추진기 프로펠러의 방향에 따라 추진기의 추력이 달라지므로, 프로펠러 정/역방향에 대한 추력 그래프를 적용하여 이를 보정할 필요가 있다. Fig. 7은 경작업용 ROV의 수평 추진기인 Model 2020의 RPM 입력에 대한 Thrust 출력 그래프이다. 동일한 RPM에서 역방향 추력은 정방향 추력의 70% 정도로 관측되므로, 동일한 추력을 발생시키기 위한 보상이 필요하다.

    3. 추력배분 및 제어

    경작업용 ROV는 작동기가 움직일 수 있는 자유도보다 많은 과구동기 시스템으로, 이러한 경우 추진기를 개별적으로 제어하기 보다는 통합하여 관리하는 것이 유리하다. 추력배분은 이러한 추진기 통합관리 방법 중에 하나이다(Craven et al., 1998). 본 연구에서는 추력배분을 위한 이상적인 ROV의 상태를 다음과 같이 가정하고 제어기를 설계하였다.

    (1) ROV 선체와 추진기는 독립되어 있으며, 상호 간의 간섭은 없다.

    (2) 수직 운동과 수평 운동은 독립적인 운동이다.

    (3) 수직 운동 및 수평 운동은 각각 수직 추진기와 수평 추진기에 의존적이다.

    (4) ROV의 운동은 추진기의 추력 한계 내에서 구현 가능하다.

    (5) ROV의 형상은 좌우 대칭이다.

    ROV의 수직 운동 τv와 수평 운동 τh는 수직 및 수평 추진기의 추력 벡터 fvfh 을 이용하여 식 (2)와 같이 표현할 수 있다(Garus, 2004).

    image

    여기서, fv = [f1f2f4]T, fh = [f5f6f8]T이며, TvTh는 각각 수직 및 수평 추진기 배치 행렬(Thruster configuration matrix)을 의미하고 식 (3)과 같이 계산된다.

    image

    여기서, 아래 첨자인 x, y, z는 각각 XY 평면, YZ 평면, ZX 평면을 의미한다. dxi는 XY 평면에서 무게중심(COG)으로부터 i번째 추진기까지의 거리이고, αxi는 XY 평면에서 X축에 대한 i번째 추진기의 추진방향의 각도이며, βxi는 XY 평면에서 추진기의 추진방향에 대한 무게중심과 추진기를 이은 선분의 각도로 식 (4)과 같이 계산된다.

    image

    여기서, γxi는 XY 평면에서 X축에 대한 무게중심과 추진기를 이은 선분의 각도이다. αxi, βxi, γxi의 기하학적 관계는 Fig. 8과 같이 표현된다.

    계획된 수직 및 수평 운동을 개별 추진기의 추력으로 변환하기 위해서는, 식 (3)의 추진기 배치 행렬 TvTh을 이용하여 식 (2)의 추력 벡터 fvfh을 계산해야한다. ROV의 계획된 수직 및 수평 운동이 τvτh 일 때, 추력의 한계를 가지는 추진기의 추력배분 문제는 다음과 같이 표현된다(Fossen and Johansen, 2006).

    image

    이때, HvHh 는 가중행렬로 Positive definite matrix이다.

    가중행렬을 Hv = Hh = I라고 가정하면, 식 (6)을 이용하여 계산된 fvfh는 식 (5)의 최적해가 된다.

    image

    여기서, +는 의사역행렬을 의미하고, 식 (6)은 ROV의 운동을 구현하기 위해 추진기의 추력을 배분하는 상위 제어기 역할을 수행한다.

    이러한 최적화 방법은 fvfh가 추진기의 추력 범위 내에 존재할 때에만 유효하며, 한계를 벗어나는 경우 최적해에 근접하기 위한 재배분 기법이 필요하다. 본 연구에서는 추력 범위 내에서 운동 구현이 가능하다고 가정하고, 의사역행렬을 이용하여 및 을 구하였다.

    ROV 추진기의 기하학적 배치(Fig. 4Fig. 5)를 이용하여 추진기 배치 행렬의 의사역행렬을 구한 결과는 다음과 같다.

    image

    과구동기 시스템인 경작업용 ROV의 운동을 제어하기 위해 추력을 배분하는 상위 제어기와 원하는 운동을 수행하기 위한 하위 제어기를 구현하였으며, 제어 블록선도는 Fig. 9와 같이 표현된다. 식 (6)의 상위 제어기에서 계산된 추진기의 추력 벡터에 의해 ROV는 운동하게 되고 그 결과가 각종 센서의 의해 계측된다. ROV의 개별 운동을 담당하는 하위 제어기는 제어목표치와 현재 데이터를 비교하여 목표치를 달성하기 위해 요구되는 ROV의 운동을 계산한다. 본 연구에서는 ROV의 선수각 및 수심을 제어하기 위한 하위 제어기를 대표적인 피드백 제어방법인 PD(Proportional-derivative) 제어기를 적용하여 설계하였다. 이때, 제어이득(Gain)은 시행 착오법(Trial and error method)을 통해 선정하였으며, 선수각 및 수심을 측정하기 위한 센서의 사양은 Table 3과 같다. 제어 블록선도에서 상위 제어기의 입력 τvτh는 하위의 PD 제어기 입력과 외부의 조이스틱 입력의 합으로 생성되도록 설계되었다. 이는 ROV의 선수각과 수심은 PD 제어기를 통해 자동으로 유지하면서, ROV의 Roll, Pitch 및 Surge, Sway 방향의 운동을 운용자가 조이스틱을 통해 조작 할 수 있다는 것을 의미한다. 이 경우 특정 작동기는 중복되어 사용되어 과도한 부하가 발생할 가능성이 있지만, 본 연구에서는 추진기의 추력 한계 내에서 ROV가 운동한다고 가정한다.

    4. 성능시험 결과

    경작업용 RO의 추력배분 상위 제어기와 선수각 및 수심 제어를 위한 하위 제어기의 성능을 확인하기 위해, Fig. 10과 같이 포항의 수중로봇복합실증센터(UTEC)에서 수조시험을 수행하였다. 성능시험은 이상적인 상태의 ROV를 대상으로 설계된 제어기의 실제 성능을 분석하기 위해, 정지 상태에서 단일 수직운동과 단일 수평운동을 다음의 2가지 방법으로 수행하였다.

    (1) 수심 목표치 고정 상태에서 선수각 목표치 변경(Fig, 11)

    (2) 선수각 목표치 고정 상태에서 수심 목표치 변경(Fig. 12)

    Fig. 11은 목표 수심이 2.5m로 고정 된 상태에서 목표 선수각을 변경한 결과이다. 선수각의 목표치는 110°와 270°로 반복적으로 설정되었으며, 약 15초 이후에 5°이내로 목표치에 수렴하였음을 확인할 수 있다. 이때, 수심은 ±0.2m 정도의 오차로 제어되고 있음을 관측할 수 있다. 참고로 1200초 부근에서 선수각의 목표치가 일시적으로 27°로 설정되어 ROV가 실제로 반응하였다. 제어입력의 경우 역방향의 최대 추력을 기준으로 정방향의 추력을 제한하였기 때문에 정역방향의 PWM 값이 다르게 나오고 있다. 수심의 변화 없이 선수각만 변경했기 때문에, 속도 그래프에서 큰 폭으로 변하는 Y축 속도와 거의 변동이 없는 Z축 속도를 관측할 수 있다. 이 시험의 특이점은 우측 방향으로 선회시에는 230°부근에서 일시적인 언더슈트가 관측되지만 좌측 방향으로 선회시에는 관측되지 않는다는 점으로, Pitch 데이터에서도 우측방향 선회와 좌측방향 선회시의 특징이 다르다는 것을 확인 할 수 있다. 이는 전방에 장착된 로봇팔에 영향을 받은 것으로 예상되며, 추후 이러한 ROV의 특징을 추력배분시에 고려하고자 한다. 제어시 언더슈트가 발생하는 이유는 반복적인 선수각의 변화는 ROV의 작업에 방해가 되므로 이를 억제하는 방향으로 제어이득을 설정하였기 때문이다.

    Fig. 12는 목표 선수각을 270°로 고정 한 상태에서 목표 수심을 변경한 결과이다. 이때, 수심의 목표치는 2.5m와 3.5m로 반복적으로 설정되었다. 제어결과로부터 상승 및 하강시의 제어 특성이 매우 다르다는 것을 확인 할 수 있으며, 하강시에 비해 상승시의 제어 성능(정착시간, 오버슈트, 오차 등)이 더 양호함을 관측 할 수 있다. 상승 및 하강시 특성이 다른 원인은 프로펠러 정/역방향에 의한 추력 차이로 예상되며, 수심 제어시 정상상태 오차는 I 제어기를 적용하여 개선할 수 있을 것으로 기대된다. 반복적으로 수심이 변경되는 동안, 선수각은 상대적으로 매우 작은 제어입력만으로 ±3°이내에서 제어되고 있음을 관측할 수 있다. 선수각의 변화 없이 수심만 변경했기 때문에, 속도 그래프에서 큰 폭으로 변하는 Z축 속도와 거의 변동이 없는 X, Y축 속도를 관측할 수 있다.

    5. 결 론

    본 논문은 과구동기 시스템인 경작업용 ROV의 운동을 제어하기 위해 추력을 배분하는 상위 제어기와 선수각 및 수심 제어를 위한 하위 제어기를 구현하고, 이를 적용한 성능시험 결과를 제시하였다.

    경작업용 ROV는 수중에서 정지된 자세로 작업하기도 하고 탐사를 위해 일정한 자세를 유지하면서 이동하기도 한다. 이러한 작업을 수행하기 위해서는 ROV의 자세가 우선적으로 제어되어야 한다. 이를 위해, 경작업용 ROV의 추진 시스템에 대해 설명하고 추진기의 특성 분석을 위한 입출력 실험을 수행하였다. 경작업용 ROV는 작동기가 움직일 수 있는 자유도보다 많은 과구동기 시스템이므로, 이를 통합 관리하기 위해 추력배분기법을 적용한 상위 제어기로 원하는 운동을 개별 추진기의 추력으로 배분하였다. 또한, ROV의 선수각 및 수심을 제어하기 위한 하위 제어기에 PD 제어기를 적용하여 수조에서 2가지 방법으로 실험을 수행하였다. 실험결과로부터 정지 상태에서 선수각 및 수심이 각각 ±5°, ±0.2m 정도의 오차를 가지며 제어되지만, 운동 방향에 따른 특성이 다름을 확인 할 수 있었다.

    향후에는 ROV의 조종성 향상을 위하여 종경사각 제어, 경로제어, 속도제어, 외란 중 위치유지 기능 등을 개발할 예정이다. 또한 과구동기 시스템의 장점을 활용하기 위하여 추력 재배분 및 내고장성에 대한 연구를 수행할 계획이다. 이는 특정 추진기가 추력 한계를 벗어나거나 고장 등의 문제 발생 상황에서 다른 추진기의 여유(Redundancy) 추력을 이용하는 것으로, ROV 운용에 있어 응급 상황에서 필수적인 요소이다.

  • 1. Berge S., Fossen T.I. 1997 Robust Control Allocation of Overactuated Ship: Experiments with a Model Ship [IFAC Proceedings Volumes] Vol.30 P.193-198 google
  • 2. Craven P.J., Sutton R., Burns R.S. 1998 Control Strategies for Unmanned Underwater Vehicles [The Journal of Navigation] Vol.51 P.79-105 google doi
  • 3. Fossen T.I., Johansen T.A. 2006 A Survey of Control Allocation Methods for Ships and Underwater Vehicles [14th Mediterranean Conference on Control and Automation] google
  • 4. Garus J. 2004 Optimization of Thrust Allocation in the Propulsion System of an Underwater Vehicle [International Journal of Applied Mathematics and Computer Science] Vol.14 P.461-467 google
  • 5. Harkegard O., Glad T. 2005 Resolving Actuator Redundancy-optimal Control vs. Control Allocation [Automatica] Vol.41 P.137-144 google
  • 6. Henrik J. 2005 Optimal Thruster Actuation in High Precision Attitude and Orbit Control Systems, Master google
  • 7. Ji S.W., Kim Y.B. 2012 Control Allocation and Controller Design for Marine Vessel based onH∞ Control Approach [Journal of Ocean Engineering and Technology] Vol.26 P.20-25 google
  • 8. Johansen T.A., Fossen T.I. 2013 Control Allocation - A Survey [Automatica] Vol.49 P.1087-1103 google doi
  • 9. Lee C.M., Kim K.H., Yoon S.M., Kim S.M., Byun S.H., Moon Y.S. 2017 A Fundamental Test of The Underwater Construction Light Work Class ROV [Proceedings of Fall Conference of the Korean Society of Ocean Engineers 2017] P.231-235 google
  • 10. Oppenheimer M.W., Doman D.B. 2007 A Method for Including Control Effector Interaction in The Control Allocation Problems [AIAA Guidance, Navigation and Control Conference and Exhibit] google
  • 11. Pedrami R., Wijenddra S., Baxter J., Gordon B.W. 2009 A Control Allocation Approach for Energetic Swarm Control [American Control Conference] P.5079-5084 google
  • 12. Shen Q., Wang D., Zhu S., Poh E.K. 2017 Robust Control Allocation for Spacecraft Attitude Tracking Under Actuator Faults [IEEE Transactions on Control Systems Technology] Vol.25 P.1068-1075 google doi
  • 13. Whitcomb L.L., Yoerger D.R. 1999 Preliminary Experiments in Model-based Thruster Control for Underwater Vehicle Positioning [IEEE Journal of Oceanic Engineering] Vol.24 P.495-506 google doi
  • 14. Yoon S.M., Lee C.M., Kim K.H., Kim S.M., Byun S.H., Moon Y.S. 2017 Motion Control of a Light-work-class ROV for Underwater Working: Heading and Depth Control [Proceedings of Fall Conference of the Korean Society of Ocean Engineers 2017] P.244-247 google
  • [Fig. 1] Appearance of light work class ROV
    Appearance of light work class ROV
  • [Table 1] Specifications of light-work-class ROV
    Specifications of light-work-class ROV
  • [Fig. 2] Configuration of propulsion system for LWC ROV
    Configuration of propulsion system for LWC ROV
  • [Table 2] Specifications of vertical & horizontal thrusters
    Specifications of vertical & horizontal thrusters
  • [Fig. 3] Coordinate system of 6DOF ROV
    Coordinate system of 6DOF ROV
  • [Fig. 4] Geometry of vertical thrusters
    Geometry of vertical thrusters
  • [Fig. 5] Geometry of horizontal thrusters
    Geometry of horizontal thrusters
  • [] 
  • [Fig. 6] PWM vs. Tachometer graph of 9 & 10 thrusters
    PWM vs. Tachometer graph of 9 & 10 thrusters
  • [Fig. 7] RPM vs. Thrust graph of horizontal thruster
    RPM vs. Thrust graph of horizontal thruster
  • [] 
  • [] 
  • [] 
  • [Fig. 8] Definition of βxi in XY plane
    Definition of βxi in XY plane
  • [] 
  • [] 
  • [] 
  • [Fig. 9] Block diagram for heading and depth control
    Block diagram for heading and depth control
  • [Table 3] Specifications of heading and depth sensors
    Specifications of heading and depth sensors
  • [Fig. 10] Test scene in basin of UTEC
    Test scene in basin of UTEC
  • [Fig. 11] Experiment data with changed reference heading and fixed reference depth
    Experiment data with changed reference heading and fixed reference depth
  • [Fig. 12] Experiment data with fixed reference heading and changed reference depth
    Experiment data with fixed reference heading and changed reference depth