이동 로봇 군집 제어를 위한 퍼지 보상 PID제어기

A Formation Control Scheme for Mobile Robots Using a Fuzzy Compensated PID Controller

  • cc icon
  • ABSTRACT

    본 논문에서는 이동 로봇의 군집 제어를 위해 퍼지 보상된 PID 제어 시스템을 제안한다 . 제어 시스템은 선도-추종 기법에 기반한 기구학 제어기와 이동 로봇의 동역학적 영향을 고려한 동역학 제어기로 구성되어 있다. 이동 로봇의 대형 유지를 위해 동역학 제어기는 PID제어기로 구성되었다. 하지만 PID 제어기는 비선형 또는 환경 변화에 취약점을 가진다. 이러한 문제를 보완하기 위해 퍼지 보상기를 추가하였다. 마지막으로 개선된 성능을 보이기 위해 컴퓨터 시뮬레이션을 통해 제안된 제어기를 평가하였다.


    In this paper, a fuzzy compensated PID control system is proposed for formation control of mobile robots. The control system consists of a kinematic controller based on the leader-follower approach and a dynamic controller to handle dynamics effects of mobile robots. To maintain the desired formation of mobile robots, the dynamic controller is equipped with a PID controller; however, the PID controller has poor performance in nonlinear and changing environments. In order to improve these problem, we applied the additional fuzzy compensator. Finally, the proposed control system has been evaluated through computer simulation to demonstrate the improved results.

  • KEYWORD

    군집 제어 , 다 개체 로봇 , 선도-추종 , 퍼지 보상기

  • Ⅰ. 서 론

    로봇 관련 기술의 급격한 발전에 따라 사람이 수행하기 힘들거나 꺼려지는 위험한 작업에 로봇들이 적용되고 있다. 대표적인 예로 위험에 노출된 환경을 정찰하는 무인 정찰기, 무인 자동차, 수중 로봇 등 다양하다. 이와 같이 사람을 대신하여 위험지역을 탐색하거나 군수 목적으로 활용되는 로봇들의 경우 주로 광범위한 지역을 탐색하거나 무거운 물건을 운송하는 작업이 주를 이룬다. 이러한 작업을 단일 개체의 로봇이 수행하기에는 적합하지 않을 뿐만 아니라 고비용을 들여 고성능의 로봇을 운용하여야 하는 비효율성이 있다. 이러한 문제를 해결하기 위해 다수의 로봇을 운용할 필요가 있었으며 그에 따른 제어 전략이 연구되었다[1]. 이전의 연구에서 다 개체의 로봇을 제어하기 위해서 장애물 회피 전략, 대형 유지를 위한 전략 등이 주로 연구되었으며, 이러한 군집 제어방식은 크게 세 가지로 행위기반 접근방법(Behavior-Based Approach)과 가상 구조 접근 방법(Virtual Structure Approach) 그리고 선도-추종자 접근방법(Leader-Follower Approach) 으로 분류할 수 있다[2].

    첫 번째로 행위기반 접근 방식은 임무에 따라 제어 전략을 수립하기 용이하나 이동 로봇의 수식적 구현과 전체 로봇의 안정성을 보장하기 어렵다[1,2]. 그리고 가상 구조 접근 방식은 안정적인 대형유지가 용이한 반면 개별 로봇의 특성에 맞는 분산제어가 어려운 단점이 있다[3]. 마지막으로 선도-추종 접근법은 선도 로봇이 고장 날 경우 군집 대형을 유지하기 어렵다는 단점이 있지만 구현이 용이하고 확장성이 우수하기 때문에 많이 사용되고 있다[4-6]. 선도-추종 로봇 접근법은 실시간으로 변화하는 선도 로봇의 위치를 추종 로봇이 일정거리 및 각도를 유지하며 계속해서 움직이며 대형을 유지하는 방법이다.

    대부분의 군집제어 연구에서는 이동 로봇의 동역학적 특성을 고려하지 않고 기구학만을 고려한 제어기 설계가 주를 이루고 있다. 하지만 실제 환경에 로봇의 동역학을 고려하지 않은 군집 제어기가 적용된다면 추종로봇은 정밀한 추종 성능을 유지하기가 어렵다. 이러한 로봇의 동역학을 포함시켜 군집 제어기를 설계하기 위해 신경회로망이 적용되기도 하였다[6]. 하지만 신경회로망이 적용된 제어 알고리즘은 실시간으로 처리하기에 매우 복잡한 문제점이 있었다.

    따라서 본 논문에서는 선도-추종자 접근법의 관점에서 이동 로봇의 군집 제어를 위한 퍼지 보상 PID 제어기를 제안한다. 이것은 두 단계의 계층적 제어 구조를 가지고 있다. 상위 단계에서는 추종 로봇의 선속도와 각 속도를 생성하기 위해 일반적인 기구학 제어기가 적용되었으며, 상위 단계의 제어기에서 생성된 속도들은 하위 단계 제어기의 제어 명령이 된다. 또한 하위 단계의 제어기에서는 로봇의 동역학에 의해 발생할 수 있는 영향을 고려하여 퍼지 및 PID 알고리즘을 기반으로 제어기를 설계하였으며 이는 보다 정밀한 제어성능을 보장할 수 있게 한다. PID 제어기는 구현하기 용이하며 적정한 제어성능을 보장하기 때문에 광범위하게 사용되고 있는 제어 알고리즘이며 상용적인 드라이버로 많이 구현되어 있다. 그러나 PID제어기는 비선형 시스템에 적용할 때 그 취약점을 나타내며 이를 해결하기 위한 보완책이 필요하다[9].

    그러므로 본 논문에서는 비선형 환경에서의 PID 제어기의 성능을 개선하기 위해 일반적으로 많이 사용되고 있는 상용 PID제어기에 퍼지 보상기를 소프트웨어적으로 구현하여 부착하는 방안을 제안한다. 마지막으로 제어기의 성능 검증을 위해 이동 로봇의 군집제어를 컴퓨터 시뮬레이션으로 구현하며 실험 결과를 비교하여 PID제어기 보다 본 논문에서 제안한 제어기의 성능이 우수함을 보인다.

    Ⅱ. 이동 로봇의 모델링

       2.1. 이동 로봇의 기구학

    본 연구에서는 그림 1과 같은 모형의 이동 로봇을 이용하여 군집 제어 문제를 다루며 이동 로봇의 미끄러짐 현상은 고려하지 않는다. 군집 제어기를 설계하기 위해서는 이동 로봇의 기구학 및 동역학에 대한 모델링이 선행되어야 한다. 먼저 이동 로봇의 기구학 관계를 수학적으로 나타낸다.

    이동로봇의 위치와 자세는 직교 좌표계(Cartesian Coordinate)에서 식(1)과 같이 나타낼 수 있다.

    image

    여기서 xcyc는 이동 로봇의 무게 중심을 나타낸 것이고 θ는 이동 로봇의 진행 방향에 대한 각도를 나타낸 것이다.

    그림 1에서 선도 로봇의 자세는 (xl,yl,θl)로 나타내고 추종 로봇의 자세는 (xf,yf,θf)로 표현하였다. 또한 이동 로봇의 자세와 속도 관계를 나타내는 기구학적 방정식은 식 (2)와 같이 나타낼 수 있다[11].

    image

    여기서 v는 이동 로봇의 속도를 나타내며 w는 이동로봇의 각속도를 나타낸다. 하지만 단순히 식(2)의 이동로봇의 기구학만을 고려하여 이동 로봇을 제어할 경우에 이동 로봇의 동역학 특성에 의해 안정적인 성능을 보장할 수 없다. 그러므로 안정적인 제어를 위해 이동로봇의 동역학적인 특성 또한 고려해야 한다.

       2.2. 이동 로봇의 동역학 모델

    이동 로봇의 동역학 모델은 다음 식(3)으로 나타낼 수 있다[6,7].

    image

    여기서 M(q)은 관성행렬, 는 원심력과 코리올리스 행렬, 는 표면 마찰력, G(q)는 중력, τd는 미지의 외란이다. 또한 B(q)는 입력에 대한 변환행렬, A(q)은 제약에 관련된 행렬, τ는 좌우 바퀴에 대한 입력 토크 벡터, 그리고 λ는 구속력 벡터를 나타낸다.

    본 논문에서는 로봇에 가해지는 외부의 힘은 없으며 로봇이 평평한 바닥에서만 이동하고 바퀴의 미끄러짐이 없는 상태인 경우를 가정하였다. 이때 식(3)은 식(4)와 같이 축약할 수 있다.

    image

    여기서 이동 로봇의 위치와 각도(xc,yc,θ)를 구하기 위해 식(5)와 같이 상태방정식을 유도한다.

    image

    식(5) 비선형 미분방정식을 풀어 변수들을 구해내고 이동 로봇의 기구학 방정식 식(2)를 이용하면 식(6)과 같이 이동 로봇의 속도[v w]T를 구할 수 있다.

    image

    그리고 이동 로봇의 속도[v w]T는 식(8)을 이용하여 로봇의 오른쪽, 왼쪽 바퀴의 각속도[wR wL]T로 변환할 수 있다.

    image
    image

    Ⅲ. 이동로봇의 군집제어

       3.1. 기구학 군집제어기

    본 장에서는 선도 로봇과 추종 로봇의 기구학적 관계를 고려하여 이동 로봇이 군집 대형을 유지할 수 있도록 기구학 제어기를 설계한다. 대형을 유지하기 위해 추종 로봇이 수행해야 할 역할은 선도 로봇의 궤적으로부터 구해지는 목표 위치로 이동하는 것이다. 본 논문에서 로봇은 2차원 평면에서만 이동한다고 가정하였으므로 그림 1과 같은 이동 로봇의 위치관계를 분석하면 식(9)와 같은 관계를 도출할 수 있다[4].

    image

    여기서 LlfΨlf는 이동 로봇 사이의 거리와 각도를 나타낸다.

    또한 uluf은 선도 로봇과 추종 로봇의 속도 제어 입력 값이다. 추종 로봇의 제어 입력(uf)을 계산하기 위해 input-output feedback linearization 기법[8]을 적용하면 식(10)과 같이 나타낼 수 있다.

    image

    위 수식에서 상수 k1,k2는 수렴 속도를 조절하는 기구학 제어 상수이다. 그리고 설계된 제어기의 안정성을 알아보기 위해 식(9)에 (10)을 대입하면 다음과 같은 폐루프 방정식을 얻을 수 있다.

    image

    여기서 가 시간과 무관하므로 식(11)을 시간에 대해 미분하면 다음과 같은 방정식으로 나타낼 수 있다.

    image

    만약 k1 > 0, k2 > 0 이면 오차 e 는 0으로 수렴하게 되므로 제어시스템은 안정하다 할 수 있다. 그리고 더욱 자세한 안정도 분석은 논문[4]를 통해 알 수 있다.

    그림 2는 선도 로봇과 추종 로봇의 기구학적 관계만을 고려한 기구학 제어기의 블록선도를 나타내었다. 하지만 이동 로봇의 기구학적 특성만을 고려한 제어기를 실제 적용할 경우 로봇의 동역학적 특성에 의해 제어성능을 보장하기 어렵다. 그러므로 이동 로봇의 동역학 제어기를 추가로 구성할 필요가 있다.

       3.2. 동역학 군집제어기

    본 절에서는 군집 제어기의 정밀한 제어 성능을 보장하기 위하여 추종 로봇의 동역학적 특성을 포함하는 제어기를 설계한다. 그림 3은 동역학 제어기가 포함된 전체 제어기의 블록선도이다. 이동 로봇의 자세를 제어하기 위해서는 이동 로봇 양 바퀴에 적절한 지령 값을 전달해야 한다. 그러므로 식(8)을 이용하여 기구학 제어기의 출력(Cr)을 이동 로봇의 양 바퀴의 각속도 값으로 변환하여 사용하며 여기서 양 바퀴의 각속도 [wR wL]T는 동역학 제어기의 지령 값이다.

    기본적인 동역학 제어기로는 구현하기 쉽고 널리 이용되고 있는 PID 제어기가 선택되었다. 하지만 PID 제어기는 선형 시스템에서는 좋은 성능을 보이지만 비선형 시스템에서는 정밀한 성능을 보장하기 어려우며 실제 실험 환경에서 최적의 PID 이득 값을 선정하는 것은 쉽지 않은 일이다. 이러한 문제점을 보완하기 위해 퍼지 보상기를 적용한 PID 제어기를 제안한다. 퍼지 보상기의 역할은 제어 오차(ec)를 매우 빠르고, 작게 감소 시켜 PID제어기의 입력 지령 값을 조절하는 것이다. 또한, 오차(ec)가 오차가 작은 범위에서는 PID 제어기의 수렴 특성을 유지하기 위해 퍼지 보상기의 출력을 작은 값으로 제한하도록 설계하였다.

    퍼지 보상기의 출력은 Mamdani의 max-min 방법의 추론 과정과 무게 중심법의 비퍼지화 방법을 사용하여 계산되었다[10,12].

    그림 3Cc는 퍼지 보상기의 출력이 더해져 새롭게 생성된 PID제어기 입력이다. 퍼지 추론 시스템에 의해서 퍼지 보상기의 출력(ΔC)은 결정되어지며 이때 사용된 입력과 출력의 소속도 함수와 퍼지 규칙은 그림 4와 같이 나타내었다. 그리고 PID제어기의 입력 지령은 식(13)과 같이 갱신된다.

    image

    식(13)을 이동 로봇 바퀴의 각속도에 관한 식으로 표현하기 위하여 식(8)의 관계를 이용하면 그림 5와 같이 양 바퀴의 각속도에 관한 표현으로 나타낼 수 있다. 또한 퍼지 보상기의 출력 ΔC는 PID제어기의 안정성을 보장하는 범위 내에서 보상기의 출력을 결정해야 한다.

    Ⅳ. 모의실험

    본 논문에서는 제안한 군집제어기의 성능 검증을 위해 모의 실험을 하였다. 제안된 제어 시스템의 성능을 비교하기 위해 PID제어기만을 적용한 제어기와 퍼지 보상기를 적용한 제어기를 각각 구성하여 평가를 하였다.

    모의 실험에 사용된 이동 로봇의 무게 m은 40[kg], 바퀴의 반지름 r은 0.05[m], 바퀴 사이의 거리 2R은 1[m], 로봇의 길이 d는 0.1[m]이다. 로봇의 초기 자세는 xl=0[m], yl=0[m], θl=1.57[rad] 이며 추종 로봇의 초기 자세는 xf=3.5[m], yf= - 0.1[m], θf=1.57[rad] 로 설정하였다.

    대형 유지를 위해 두 로봇이 유지해야 하는 거리는 1.5[m]이고 추종 각도는 2.36[rad]이다. PID 제어기의 이득 값은 반복된 실험을 통해 Kp=1.996, Ki=0.03, Kd=0.0426으로 선택하였다. 또한 퍼지 보상기의 소속도함수를 결정하기 위해 동역학 모델의 출력 C와 PID 제어기의 입력 ec를 분석하였다.

    설계된 제어기의 성능을 테스트하기 위해 선도 로봇이 직선과 곡선 궤적을 주행하는 경우를 설정하였다. 그림 6은 선도 로봇이 직선 궤적으로 주행할 경우에 나타나는 이동로봇의 궤적을 나타낸 것이다. 선도 로봇은 직선속도 vl=0.5[m/sec]을 유지하며 추종 로봇에는 각각 PID 제어기와 퍼지 보상기를 포함한 PID 제어기가 적용 되었다.

    그림 78은 선도 로봇과 추종 로봇의 상대거리와 각도 오차를 나타낸다. 제안된 제어기가 PID제어기 보다 목표 값에 빠르게 수렴하므로 성능이 개선되었다고 할 수 있다. 다음으로 그림 9에서는 선도 로봇이 원형궤적으로 주행할 경우에 나타나는 추종 로봇의 궤적을 보여준다. 선도 로봇에 사용된 직선 속도는 vl =0.5[m/sec]이고 회전 각속도는 wl =0.1[rad/sec]이다. 그림 1011은 상대거리와 각도 오차를 나타낸다. 그림 9와 같은 원형 궤적에서도 또한 제안된 퍼지 보상기가 우수한 성능을 보인다.

    Ⅴ. 결 론

    이 연구에서는 이동 로봇의 군집제어를 위해 퍼지 보상된 PID 제어기가 제안되었다. 제어 시스템은 선도 추종 로봇 접근법에 기반한 기구학 제어기와 이동 로봇의 동역학적인 효과를 다루기 위한 동역학 제어기로 구성되었다. 여기서 동역학 제어기는 PID 제어기와 비선형 환경에서 제어 성능을 개선시키기 위해 부착된 퍼지 보상기로 이루어져 있다. 컴퓨터 시뮬레이션은 선도 로봇이 직선 궤적과 원형 궤적을 주행할 경우를 선정하여 수행하였으며 실험 결과를 통하여 PID제어기 보다 퍼지 보상기를 적용한 제어기가 상대 거리와 각도에 빠르게 수렴함을 확인하였다.

  • 1. Balch Tucker, Arkin Ronald C. 1998 “Behavior-based formation control for multi robot teams,” [IEEE Trans. Robotics and Automation] Vol.14 P.926-939 google doi
  • 2. Lawton J.R.T., Beard R.W., Young B.J. 2003 “A decentralized approach to formation maneuvers,” [IEEE Trans. Robotics ans Automation] Vol.19 google
  • 3. Lewis M.A., Tan K.H. 1997 “High precision formation control of mobile robobts using virtual structures,” [Autonomous Robots] Vol.4 P.387-403 google doi
  • 4. Das A.K., Fierro R., Kumar V., Ostrowski J.P., Spletzer J., Taylor C.J. 2002 “A vision-based formation control framework,” [IEEE Trans. Robotics and Automation] Vol.18 P.813-825 google doi
  • 5. Chen J., Sun D., Yang J., Chen H. “Leader-follower formation control of mutiple non-holonomic mobile robots incorporating a receding-horizon scheme,” [The International Journal of Robotics Research] Vol.2009 google
  • 6. Dierks Travis, Jagannathan S. 2009 “Neural network control of mobile robot formations using RISE feedback,” [IEEE Trans. Systems, Man, And Cybernetics―Part B: Cybernetics] Vol.39 P.332-347 google doi
  • 7. Fierro R., Lewis F.L. 1998 “Control of a nonholonomic mobile robot using neural networks,” [IEEE Trans. Neural Networks] Vol.9 google doi
  • 8. Slotine J.-J. E., Li W. 1991 Applied Nonlinear Control google
  • 9. Choi Y.K., Lee M.J., Kim S.S. 2001 “Design and implementation of an adaptive neural network compensator for control systems,” [IEEE Trans. Industrial Electronics] Vol.48 google
  • 10. Shuai G., Yongyi H., Minglun F., Lixin L. Dec. 2004. “Design of a fuzzy pre-compensator PID tension controller for fabric based on DSP,” [International Conference on Control, Automation, Robotics and Vision] P.1895-1900 google
  • 11. Fierro R., Lewis F.L. Dec. 1995. “Control of a nonholonomic mobile robot: Backstepping kinematics into dynamics,” [Proceedings of the 34th Conference on Decision & Control] P.3805-3810 google
  • 12. Kecman Vojislav 2001 Learning and Soft Computing google
  • [그림 1.] 선도-추종 기반의 이동 로봇
    선도-추종 기반의 이동 로봇
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [] 
  • [그림 2.] 기구학 제어 시스템의 블록선도
    기구학 제어 시스템의 블록선도
  • [그림 3.] 퍼지 보상된 제어 시스템 블록선도
    퍼지 보상된 제어 시스템 블록선도
  • [] 
  • [그림 4.] 퍼지 소속 함수와 규칙
    퍼지 소속 함수와 규칙
  • [그림 5.] 퍼지 보상 PID제어기 구조
    퍼지 보상 PID제어기 구조
  • [그림 6.] 선도 로봇의 직선궤적에 대한 추종 로봇 궤적
    선도 로봇의 직선궤적에 대한 추종 로봇 궤적
  • [그림 7.] 직선 궤적에 대한 상대거리 추종오차
    직선 궤적에 대한 상대거리 추종오차
  • [그림 8.] 직선 궤적에 대한 각도 추종오차
    직선 궤적에 대한 각도 추종오차
  • [그림 9.] 선도 로봇의 원형 궤적에 대한 추종 로봇 궤적
    선도 로봇의 원형 궤적에 대한 추종 로봇 궤적
  • [그림 10.] 원형 궤적에 대한 상대거리 추종오차
    원형 궤적에 대한 상대거리 추종오차
  • [그림 11.] 원형 궤적에 대한 각도 추종오차
    원형 궤적에 대한 각도 추종오차