In this paper, a practical controller for a group of USVs is proposed in order to avoid matrix inversion problems in computation. Using nonlinear mapping, a formation composed of nonholonomic agents can be stabilized even when the formation is stationary. Since there is no matrix inversion in computing the control law, the computation complexity can be resolved. A controller for stabilizing the formation errors in the presence of model uncertainty is considered using the Lyapunov redesign method. The asymptotic stability of the formation errors is shown. It is also shown that the proposed controller can be applied to guide a formation to a different shape without modification.
하나의 개체로 이루어진 무인 시스템이 가지는 물리적 한계를 극복하기 위하여 여러 대의 개체를 이용하는 시도가 오래전부터 이루어져왔다. 적용되는 공간에 따라 육상에서는 무인자동차(Unmanned ground vehicles, UGV), 공중에서는 무인비행기(Unmanned aerial vehicles, UAV), 그리고 최근에는 수상의 무인 수상정(Unmanned surface vehicles, USV) 및 무인 잠수정 (Unmanned underwater vehicles, UUV)등의 형태로 진행되어 왔다. 이중 USV 및 UUV 분야는 다른 분야에 비해 상대적으로 발전이 뒤처졌으나, 미 해군이 2007년 공식적으로 마스터플랜을 발간한 이후로는 활발한 연구가 이루어져왔다(US Navy, 2007). 특히 USV는 해수면 아래에 전개된 UUV 및 해수면 위쪽의 UAV등과 같은 다른 다중 무인시스템들과 협업하여 통신망 또는 감시를 위한 네트워크를 구성할 수 있어 많은 관심을 받고 있다. 이는 수면을 중심으로 상부의 대기권 내에 위치하는 시스템과 하부에 있는 수중 시스템이 서로 직접적인 통신을 하는 것이 어렵기 때문이다. 따라서 USV 시스템은 이러한 두 시스템 간에 접점으로서의 역할을 수행할 수 있으며 무인잠수정의 위치 추정에 이용할 수도 있다(Lim et al., 2005).
여러 대의 개체로 이루어진 시스템이 협업을 통하여 주어진 미션을 수행하기 위해서는 대형을 형성하여야 한다. 해양에서 이러한 대형의 형성 및 유지라는 주제는 오래 전부터 중요하게 다루어 졌다. 과거에는 여러 대의 전함들이 해 전을 치르는 동안 각각의 전함들의 움직임이 전술적 측면에서 제어가 이루어 졌고, 현대에도 상선들이 호위함들의 보호를 받으며 이동한다 던지, 대형 해양구조물을 해당 해역에 설치하기 위한 작업선들 간의 협업 등에도 군집에 대한 대형의 형성과 위치 제어라는 측면에서 바라볼 수 있다. 또한 여러 대의 수상정 또는 잠수정으로 이루어진 시스템의 경우 해양조사나 항만 방어 또는 해저면의 Subsea 시스템에 대한 검사 분야로의 응용이 시도되고 있다(Makrinos, 2004; Xiang et al., 2010). 이러한 해양시스템에서의 군집 제어에 대한 활용 예가 증가하면서 자율형 시스템의 대형 제어에 대한 알고리즘 연구도 점차 확대되고 있다 (Arrichiello et al., 2006, Breivik et al., 2008).
여러 대의 자율형 개체가 모여 하나의 대형을 생성하는 데 있어 가장 중요한 문제가 각각의 개체로 하여금 목표로 하는 대형을 형성할 수 있는 위치로 이동하도록 유도하고, 대형을 유지하도록 제어할 수 있는 규칙을 수립하는 것이다. 이러한 유도 및 제어에 관한 규칙을 수립하기 위해서는 각 개체에 대한 기준 위치가 주어져야 한다. 우선, 각 개체에 대해 기준 위치를 미리 설정하여 운용하는 방법을 고려할 수 있으나, 전체 시스템에 주어진 미션이 변하는 경우 대형의 움직임과 모양도 함께 변하기 때문에, 실시간 운영이 필요한 경우에는 적합하지 않다. 이에 따라 변화하는 미션에 대응하기 위해 실시간으로 기준 위치를 설정하는 방법으로 크게 Leader-follower(LF) 방법이나 Virtual structure(VS)를 이용하는 방법 등이 있다. LF 방법은 대형을 구성하는 전체 개체들 중 하나 또는 여러 개의 개체를 Leader로 설정하여 나머지 개체들을 지칭하는 Follower들의 위치를 Leader와의 상대적인 기하학적 관계를 이용하는 것이며, 대형 형성에 관한 부분에서 널리 사용되고 있다(Desai et al., 2001; Das et al. 2002). 하지만, 전체 대형의 움직임과 안정성이 Leader의 물리적 특성에 크게 의존한다는 단점이 있다. 이에 반해, Virtual structure를 이용하는 방법은 기준점을 모든 개체의 평균을 사용하여 설정하거나, 대형에서 가상의 중심 또는 Virtual structure의 중심에 고정하는 것이다(Lewis and Tan, 1997; Balch and Arkin 1998, Sadowska el al., 2011). VS 방법의 장점으로는 대형 내에서 모든 개체가 하나의 단일 개체로 취급되기 때문에 대형을 관리하는 것이 비교적 쉽다는 것이다. 하지만 전체 대형 내에서 각각의 개체가 가지는 물리적 제약이 명확하게 표시되기 어렵다는 단점이 있다. 따라서 Virtual structure를 통해 가상 기준을 사용하는 방법은 각각의 개체에 대한 제어 범위를 만족시키는 것이 매우 어려우며, 개체를 추가하거나 제거해야할 필요가 있을 때 대형 규모에 대한 확장성에도 문제가 발생할 수 있다.
기준 위치가 설정된 이후에는 이 위치로 개체들을 이동시키기 위한 유도 및 제어 법칙이 적용되어야 한다. 이는 목표 위치와 실제 위치와의 차이를 오차로 설정하여 이를 제거하기 위한 노력으로 정의할 수 있다. 전체 시스템에 대한 모델링을 수립하고 제어기를 구성할 때, 역행렬의 연산이 있을 수 있으며 행렬식이 0에 가까워질 때 문제가 발생할 수 있다. 이러한 문제를 해소하기 위하여 좌표계를 변경하여 행렬의 특성을 조절하는 방법을 도입할 수 있으며 좌표계 변경에 따른 비선형성이 강해진 시스템에 대해 비선형 제어 기법의 도입이 필요하다. 특히 모델링 오차가 많이 발생할 수 있는 해양시스템의 특성을 반영하기 위하여 불확실한 항이 존재하는 시스템에 대해 안정성을 담보할 수 있어야 하는데, 이러한 용도로 Lyapunov redesign법이 적용될 수 있다(Khalil, 2002).
본 논문에서는 유니사이클로 모델링되는 USV 또는 UUV들이 대형을 형성할 때, Leader-follower 방법과 Virtual structure를 이용하는 방법을 결합하여 VS내에서 기하학적 관계를 이용하여 대형을 생성 하고 기준 위치를 유지하는 방법을 제시하였다. 시스템 모델링을 바탕으로 제어 법칙을 수립할 때, 역행렬 을 연산하면서 발생할 수 있는 문제점을 해결하고, 불확실성을 포함하고 있는 비선형시스템에 대하여 대형 형성에 필요한 강인한 안정성을 갖는 제어기를 설계하기 위하여 Lyapunov redesign법을 적용하였다. 설계된 제어기가 초기 위치에서 목표로 하는 대형으로 이동하는 대형 생성뿐만 아니라, 원하는 대형의 형태가 바뀌어 새로운 대형으로의 유도가 필요할 때에도 오차를 효과적으로 제거할 수 있도록 구성하였으며, 주어진 시스템이 전역적으로 또한 안정적으로 목표 대형으로 유도 되는 것을 시뮬레이션으로 확인하였다.
여러 개의 개체가 목표로 하는 하나의 대형을 형성하는 데 있어 각 개체들의 이상적인 위치와 실제 위치의 차를 오차로 정의할 수 있다. 이상적인 위치는 대형 내에서 각 개체간의 상호관계로 표현되는데,
여기서
하지만 개체들의 연결이 순차적으로 이루어지기 때문에
이러한 대형 제약 조건들에 대한 표현법은 위에서 언급한 조건들을 만족시킬 수 있으며, 이 조건들을 이용하여 오차에 대한 정의를 도출할 수 있다. 대형을 정의하는 제약조건에서의 오차는 식 (3)와 같이 를 r
즉, 각 개체가 위치해야 할 이상적인 위치를 가상 리더들과의 거리 및 각도 정보를 이용하여 정의하는 것이다. 이에 따라 오차값은 각 개체들이 가상리더 중 하나와의 거리 및 가상 리더들과 이루는 각도가 이상적인 거리 및 각도의 값가 차이가 나는 정도를 나타내게 된다.
R3 공간상에서 개체들에 대해 대형 생성 시 발생하는 오차를 안정화시키기 위한 제어기를 설계하기 위하여 우선 기구학적 모델을 다음과 같이 표현하도록 한다.
따라서 오차에 대한 동역학 식은 아래와 같이 표현되며,
다음과 같이 정리하여 표현할 수 있다.
여기서
이고, 이다.
식 (6)에서
Lyapunov 함수는 의 형태로 표현될 수 있다.
여기서 이고 P
안정도를 판별하기 위한 Lyapunov 함수의 미분은 로 나타난다. 을 만족시키는 P
따라서, 대형 생성 시 발생하는 오차에 대해 시스템이 지수적으로 그리고 전역적으로 안정화 될 수 있다(Khalil, 2002). 위 결과를 바탕으로 하여 대형을 구성하는 데 필요한 제어기 u
앞서 설명한 제어기의 경우
극좌표계에서의 유니사이클 모델은 그리고
Lyapunov 함수
이 제어기를 식 (6)에 나타난 제어기에 적용하기 위하여 속도를 시간에 대해 미분하면 다음과 같다.
따라서 |
3.2 Lyapunov redesign법을 이용한 제어기 설계
각각의 개체에 대해 동역학적인 해석을 수행할 때 시스템 모델링에 불확실한 요소들이 있다면 공칭 플랜트를 위해 설계된 제어기는 대형의 안정성을 담보할 수 없다.
일반적으로
와 같이 나타난다. 여기서 시스템에 대한 불확실성을 나타내는
식 (18)의 우변 항에서 식(19)의 가정을 적용하여 다음의 부등 식을 유도할 수 있다.
Δ
식 (18)에 나타난 부등식의 우변항은 다음과 같이 정리된다.
따라서 이 성립한다. 따라서
앞에서 제시된 제어기는 모든 개체들이 각각의 개체들 간에 정의된 거리를 유지하는 문제 즉 이상적 위치와 실제 위치의 오차를 최소화 하는 데 초점이 맞춰져 있고, 원하는 대형의 유도에 대해서는 명확히 제시하지 못하는 단점이 있다. 여러 개의 개체들을 공통으로 주어진 미션을 수행하도록 운영하기 위해서는 생성된 대형을 유도하기 위한 법칙이 필요하다. 앞서 설계된 제어기를 사용하여 강체 대형을 생성시키기 위해 가상의 리더들을 도입하였다. 이러한 가상의 개체들은 대형을 유도하는 법칙으로 확장하는 데도 사용될 수 있다. 강체 대형은
각각의 개체와 마찬가지로
가상 개체의 위치는 다른 개체와 중복되지 않는 한
속도에 관한 식은 식 (22)를 시간에 대해 미분하여 구하며, 다음과 같이 나타난다.
설계된 제어기의 실효성을 검증하기 위하여 6개의 개체로 이루어진 시스템에 대해 삼각형 모양의 대형을 형성하여 이동하는 시뮬레이션을 수행하였다. 총 80초 동안 목표 지점까지 강체 대형을 유지하면서 기동하는 것으로 가정하였다. 관성좌표계를 중심으로 전체 대형의 회전이 없는 경우와 있는 경우 2가지로 구분하여 진행하였다. 우선 Fig. 3는
Fig. 4는
경우에 따라서는 대형의 모양이 변할 수도 있다. 즉 여러 대의 개체들이 모여 초기 대형을 형성하였다가 주어진 미션이 변경된 새로운 형태의 대형이 요구될 수도 있기 때문이다. 예를 들면 대형의 경로에 장애물이 존재하거나, 좁은 수로를 통과하는 경우 등이다. 이러한 요구에 대처하기 위하여 대형의 모양이 변하는 것을 대형 재생성이라고 한다. 앞서 설명한 바와 같이, 대형의 모양은
[Table 1] Initial conditions for USVs
Initial conditions for USVs
6개의 개체와 가상 리더 2개로 이루어진 시스템에 대해 위치, 방향 및 초기 속도에 대해 각각 다른 상황을 설정한 후 결과는 Fig. 5와 Fig. 6에 나타내었다.
6개의 개체들이 먼저 6각형의 초기 대형을 구성하게 되고, 20초 경과 뒤 좁은 수로를 통과한다는 가정 하에 직선의 형태로 전환되도록 하였다. 수로를 빠져나온 개체들에 대하여 기동 시작 후 50초 되는 시점에 삼각형의 대형으로 변환되도록 하였다. 대형을 형성하는 6개의 개체들 중 첫 번째와 두 번째 개체에 대한 위치 오차 변화 추이를 Fig. 7에 나타내었다. 나머지 개체들에 대한 위치 오차 변화도 비슷하게 나타나므로 그림에는 생략하였다. 예상할 수 있듯이, 초기 대형 형성 시점, 20초 경과 시점, 그리고 50초 경과 시점에서 대형의 모양이 변화함에 따라 자연스럽게 대형 오차가 크게 발생하는 것을 볼 수 있다. 그림에 나타난 바와 같이 대형의 형태를 유지하는 데 사용된 제어기를 형태의 변화 없이 대형을 유도하는 데도 성공적으로 적용된다는 것을 알 수 있다. 이는 본 논문에서 제안된 제어기가 오차를 전역적으로 감소시킬 수 있으며, 이에 따라 대형을 유지하기 위한 제어 뿐만 아니라, 목표 대형으로의 유도에도 그대로 사용가능하다는 것을 의미한다.
본 논문에서는 무인 수상정 또는 무인 잠수정들이 대형을 형성하도록 하기위해 각 개체들에 대한 제어기를 설계하는 문제를 다루었다. 우선, 일반적인 시스템에서 제어 입력 값을 계산하기 위하여 역행렬을 계산할 때 발생할 수 있는 문제점을 해결하기 위하여 비선형좌표 변환을 수행하고, 개체 동역학에서 불확실한 항들에 대한 강인한 안정성을 확보하기 위하여 Lyapunov 재설계 방법을 적용하여 제어기를 설계하였다. 또한 Leader-follower법과 Virtual structure법을 혼합한 유도 기술을 제시하여 목표 대형이 요구되는 선속도와 각속도를 가지고 운동할 수 있도록 하였다. 마지막으로, 시뮬레이션을 통하여 대형이 강체의 형태로 경로를 따라가는 것 뿐 아니라, 대형의 모양이 변하여 유도가 필요한 경우에도 기존 대형 유지에 사용되는 제어기를 적용하여 원하는 결과를 얻을 수 있다는 것을 보였다.
제안된 제어기가 실제 해양환경에서 사용되기 위해서는 유체동역학적인 힘을 추가로 고려하여야 한다. 이는 환경하중에 의한 뿐만 아니라 대형의 형성, 유지 및 변환을 수행하기 위한 시스템의 모델링에 나타나는 여러 개체간의 관계에서 형성되는 연성 효과를 추가하는 것을 의미한다. 제안된 제어기의 활용성을 높이기 위하여, 관성항을 포함하는 동역학 모델을 수립하고 연성효과를 분석하는 작업이 추가로 진행될 것이다.