DOI QR코드

DOI QR Code

Design and Implementation of Periodic Disturbance Compensators for Track Following Servo Systems

트랙 추종 서보 시스템에 대한 주기적 외란 보상기의 이득 설정과 구현

  • Jeong, Jun (Department of Automation System, Dongyang Mirae University)
  • Received : 2013.12.17
  • Accepted : 2014.01.28
  • Published : 2014.02.20

Abstract

Periodic disturbance compensators are widely used in track following servo systems. They are commonly designed and implemented by adaptive feedforward compensators or internal model based compensators. In track following servo systems, the gains of the compensators should be determined considering the change of the sensitivity transfer function and the implementation methods should be selected considering the system environment. This paper proposes a guide for determining gains of the periodic disturbance compensators. Various simulation and experimental results are presented to see the effect of gains. In addition, this paper introduces the various types of implementation methods and compares their merits and demerits.

Keywords

1. 서 론

주기적 외란을 보상하기 위한 방법으로 적응 앞섬 보상(AFC, adaptive feedforward cancellation)을 이용한 보상기와 내부 모델 원리(IMP, internal model principle)를 이용한 선형 보상기가 잘 알려져 있다. 또한 이 두 보상기는 계산 과정만 다른 같은 보상기라는 사실도 잘 알려져 있다(1).

회전체를 포함한 제어 시스템에서 주기적인 외란은 반복 제어(2)에 의해서도 보상이 가능하나 안정성 및 실효성 때문에 트랙 추종 서보에서는 특정 주파수의 외란만을 보상하는 AFC나 IMP가 더욱 효과적으로 사용된다(3~5). 특히, 하드 디스크 드라이브의 트랙 추종 서보 시스템에서 원형이 아닌 트랙 형상은 디스크 회전 주파수의 여러 고조파에서 지배적인 외란으로 작용하기 때문에 주기적 외란 보상기는 이들 주파수에 대해 여러 개가 병렬로 사용된다(3).

이 논문에서는 주기적 외란 보상기의 효과적인 이득 설정과 구현 방법을 다룬다. 첫째, 이득이 트랙 추종 성능에 미치는 영향을 고찰함으로써 게인 설정 방향을 제시한다. 즉, 이득이 감도전달함수의 변화에 주는 영향을 시뮬레이션으로 검토하고 다수의 주기적 외란 보상기를 적용한 다양한 트랙 추종서보 실험을 통해 이득 설정 방향을 보여준다. 둘째, 주기적 외란 보상기의 다양한 구현 방법과 이에 따른 장단점을 비교 분석한다. 즉, 보상기를 구현하는 마이크로컨트롤러에서의 연산시간, 보상기의 일시적 피드백 중지에 따른 문제점, 고정소수점 연산에 의한 문제점 등을 고찰한다.

 

2. 주기적 외란 보상기의 이득 설정

2.1 주기적 외란 보상기 IMP와 AFC

트랙 추종 서보에서 주기적 외란을 제거하기 위한 주기적 외란 보상기(PDC, periodic disturbance compensator)로 내부 모델 원리(IMP)를 이용한 선형 시불변 보상 방법과 적응 앞섬 보상(AFC) 방법이 주로 사용된다. 이 두 보상기를 수식으로 표현하면 IMP는 식 (1)과 같으며 AFC는 식 (2)와 같다.

주기가 2π/ω 초인 외란을 보상하기 위한 제어입력은 정상상태에서 식 (3)과 같은 정현파 형태가 되어야 한다. 식 (1)의 상태방정식 표현인 식 (11)을 이 식과 비교해보면 IMP에 의한 주기적 외란 보상기는 결국 정현파인 cos(ωTk) 와 sin(ωTk)를 상태변수로 추정(estimation)하고 상수에 해당하는Aucos(ϕ)와 Au sin(ϕ)를 이득으로 하는 보상 방식이다. 반면, 식 (3)을 식 (2)와 비교해보면 AFC는 정현파 부분인 cos(ωTk) 와 sin(ωTk) 는 그대로 둔 채 여기에 곱해지는 상수 Aucos(ϕ) 와 Ausin(ϕ) 를 적응법칙(adaptation law)에 의해 계산하는 방식이다. 비록이 두 보상기의 제어입력 계산은 접근 방법에 의해 다르지만 결과적으로 동일한 결과 즉, 동일한 전달함수를 갖는다(1). 따라서 일반적으로 해석은 선형보상기 형태인 식 (1)을 사용하고 구현은 사용자의 선택에 의해 결정한다.

2.2 이득 설정에 따른 영향

주기적 외란 보상기 IMP와 AFC는 이득 𝑔 와 ϕ가 같으면 동일한 전달함수를 갖기 때문에 이 논문에서는 이득 설정에 따른 특성 변화 고찰에 IMP를 사용하였다. 또한 주기적 외란 보상기는 제어 시스템에서 기본 제어기와 병렬 또는 직렬로 연결되어 사용될 수 있지만 Fig. 1에서와 같이 직렬로 연결한 방법을 이용하였다.

주기적 외란 보상기의 전달함수 식 (1)에서 이득으로 𝑔와 ϕ 두 개가 존재한다. 이 중 이득 𝑔는 루프 이득에 해당하므로 이득이 크면 클수록 보상 속도가 빠를 것으로 예측할 수 있다. 한편, 이득 ϕ는 위상에 해당하므로 제어 시스템에서 외란의 위치에 따라 정해지게 된다. Fig. 1의 경우처럼 외란이 출력 단에 작용하는 경우에는 이득 ϕ를 식 (4)로 정할 수 있으며 이 이득은 보상 속도보다는 안정성과 관련이 있음을 쉽게 유추할 수 있다.

Fig. 1Control block diagram containing a periodic disturbance compensator

Fig. 1에서 주기적 외란 dp가 출력 y에 미치는 영향은 감도전달함수로 결정되기 때문에 주기적 외란 보상기의 유무에 따른 감도전달함수의 상대적 변화를 식 (5)를 통해 계산하여 주기적 외란 보상기에 의한 성능 변화 파악에 사용할 수 있다.

Fig. 2와 Fig. 3은 주기적 외란 보상기의 이득이 감도전달함수에 미치는 영향을 식 (5)를 통해 살펴본 결과이다. 2차 플랜트에 270 Hz의 주기적 외란을 보상하는 경우를 예로 하였다. Fig. 2는 ϕ를 식 (4)로 결정한 상태에서 𝑔를 변화한 것으로 𝑔가 커질수록 저감되는 주파수 영역의 폭이 넓어지고 깊어지지만 양 옆 대역에서 증폭되는 크기와 영역도 함께 커지는 것을 볼 수 있다. 이는 선형제어시스템에서 감도전달함수의 크기를 적분한 값은 일정하다는 보드(Bode)의 적분 정리와도 일맥상통하다. 따라서 𝑔 가 커질수록 주기적 외란의 보상 속도와 해당 주파수 근방에서의 보상 성능은 크게 향상될 것으로 기대할 수 있지만 주변 주파수 근방에서의 성능은 악화됨을 알 수 있다. 그리고 보상 주파수에서 감도전달함수의 크기는 0이기 때문에 보상 주파수가 정확하다면 정상 상태에서 이 주파수에 대한 보상 성능은 𝑔 값에 따라 큰 차이가 없을 것으로 예상할 수 있다. 한편, Fig. 3은 𝑔를 0.004로 고정한 상태에서 ϕ를 변화 시켰을 때의 감도전달함수 변화이다. ϕ는 저감되는 주파수 영역의 폭에는 영향을 주지 않지만 좌우 주변 주파수 대역에 상반된 영향을 준다. 일반적으로 외란이 전 주파수에 고루 분포되어 있는 경우에는 감도전달함수에서 증폭되는 부분의 피크가 작을수록 트랙 추종 오차가 작아지므로 ϕ에 의해 증폭되는 좌우 영역을 비슷하게 설정하는 것이 좋다고 볼 수 있다.

Fig. 2The effect of gain 𝑔 on the sensitivity transfer function

Fig. 3The effect of gain ϕ on the sensitivity transfer function

두 결과를 종합해보면 주기적 외란 보상기를 추가해서 트랙추종의 성능을 최대한 높이기 위해서는 주기적 외란에 대한 보상속도를 만족하는 한도에서 이득 𝑔는 가급적 작게 설정해야 하며 이득 ϕ는 안정성에 영향이 없는 한도 내에서 주변 주파수 영역의 외란을 고려해서 설정해야 한다.

2.3 실험결과 및 고찰

주기적 외란 보상기의 효과와 특성을 실험적으로 검증하기 위해 하드 디스크 드라이브(HDD)의 트랙 추종 서보 시스템을 이용하였다. 실험에 사용된 HDD의 트랙밀도는 195,000 TPI(track per inch)로 트랙 폭은 약 130 μm이다. 디스크 회전 속도는 5,400 RPM(round per minute)으로 디스크 회전 기본 주파수는 90Hz이다. 서보섹터의 수는 160개로 제어 시스템의 샘플링 주파수는 디스크 회전 주파수와 섹터 수의 곱인 14.4kHz로 결정되고, 이에 해당 하는 샘플링 시간은 69.4μ초이다.

Fig. 4는 주기적 외란 보상기를 HDD에 적용한 실험 결과이다. 총 30 회전분의 트랙 추종 오차를 섹터 번호에 대해 중첩해서 도시한 결과이다. HDD 에서 트랙의 형상은 완전한 원형이 아니기 때문에 트랙 추종 서보 시스템에서 주기적 외란으로 작용한다. 이 때 외란 주파수는 디스크 회전 주파수의 고조파가 된다. Fig.4의 (a) 결과는 주기적 외란 보상기를 사용하지 않았을 때의 실험결과로 트랙 오차가 매우 심한 것을 알 수 있다. 이 경우에 대한 주파수 분석 결과가 Fig. 5로 90 Hz의 배수 주파수에서 오차성분이 매우 큰 것을 알 수 있다. Fig. 4의 (b)에서 (f)는 주기적 외란 보상기를 디스크 회전 주파수의 배수인 90 Hz(1x), 180 Hz(2x), 270 Hz(3x), 360 Hz(4x), 450 Hz(5x)에 대해 한 개씩 추가했을 때의 실험결과이다. 결과로 알 수 있듯이 트랙 추종 서보에서 트랙 형상에 의한 주기적인 오차는 주기적 외란 보상기의 개수를 추가할수록 줄어듦을 볼 수 있다.

Fig. 4Time domain track following servo results

Fig. 5FFT of track following errors without periodic disturbance compensator

Fig. 6은 주기적 외란 보상기의 이득을 적절하게 설정한 경우와 과도하게 설정한 경우에 대해 감도전달함수의 변화인 식 (5)를 수치적으로 계산한 결과이다. 적절한 이득을 정하기 위해 이득 ϕ는 식 (4)로 부터 결정했고, 이득 𝑔는 실험에 의해 보상 속도와 고정소수점 연산 문제가 없는 한도 내에서 작게 하였다. 결정된 이득 𝑔 는 90 Hz부터 2.91e-3, 0.73e-3, 0.75e-3, 0.79e-3, 0.78e-3, 0.75e-3, 0.70e-3이고, 이에 대한 이득 ϕ는 45, 7.4, -21, -44, -61, -75, -88도이다. 반면, 과도한 이득은 적절한 이득 𝑔 를 세배한 경우이다. 결과처럼 이득이 적절한 경우는 감도전달함수의 변화가 최대 3 dB 이하였으나 이득을 크게 한 경우는 최대 10 dB 이상이었다.

Fig. 6Variation of the sensitivity transfer function due to the seven periodic disturbance compensators

Fig. 7은 트랙 추종 실험 결과로 (a)는 주기적 외란 보상기가 없을 때의 트랙 추종 오차이며, (b)와 (c)는 Fig. 6의 적절한 이득과 과도한 이득을 적용했을 때의 트랙 추종 오차 결과이다.

Fig. 7Time domain track following servo results

Fig. 8은 Fig. 7의 (b)와 (c)에 대한 주파수 분석 결과이다. 이 결과에서 160 Hz 부근이 크게 증폭된 결과로 90 Hz에 대한 보상기의 ϕ 이득이 최적값이 아님을 알 수 있다. 역으로 90 Hz에서의 모델식이 실험과 차이가 있음을 짐작할 수 있다. 한편, Fig. 8에서 0~700 Hz 대역의 트랙 오차만을 계산한 결과는 적절한 이득의 경우는 2.6%였지만 과도한 이득의 경우는 3.2 %였다. 오차가 커진 이유는 주기적 외란 을 크게 보상할수록 주변의 비주기적 외란의 영향이 더욱 커진다는 앞 절의 내용으로 설명이 된다.

Fig. 8FFT of track following errors with seven periodic disturbance compensators

 

3. 주기적 외란 보상기의 구현

3.1 구현을 위한 보상기의 다양한 표현

주기적 외란 보상기를 실제 시스템에서 마이크로 컨트롤러 펌웨어(firmware)로 구현하는 방법에는 다양한 방법이 존재한다. AFC인 식 (2)를 그대로 구현에 사용할 수도 있고 IMP인 식 (1)을 차분방정식으로 변환한 다음의 식 (6)도 구현에 사용할 수 있다.

이 외에도 주기적 외란 보상기에 다양한 상태방 정식을 적용하여 구현에 사용할 수 있다. 상태변수 x를 y 로 놓고 식 (1)을 제어가능 표준형 상태방정식으로 표현하면 식 (7)과 같이 표현된다.

(7)에서 상태변수 xk는 주기적 외란이므로 다 음과 같이 정현파의 형태로 가정할 수 있다.

상태변수를 식 (9)와 같이 정의하면 xk와 rk는 식(10)의 관계식을 갖는다. 이 식을 식 (7)의 상태방정식에 적용하여 새로운 상태변수 r1과 r2에 대해 정리하면 주기적 외란 보상기는 식 (11)로 표현된다.

마찬가지로 상태변수를 식 (12)로 정의하면 식(13)의 관계식에 의해 주기적 외란 보상기는 식 (14)의 상태방정식(3)이 된다.

3.2 구현 방식에 따른 장단점

주기적 외란 보상기는 특정 주파수 하나에 대해 적용하기보다는 여러 주파수에 대해 적용하는 경우가 많다. 앞 장의 실험 예에서와 같이 HDD의 트랙추종 서보 시스템에서 주기적 외란 보상기는 원형이 아닌 트랙에 의해 발생하는 외란을 보상하기 위해 디스크 회전속도의 여러 고조파에 적용해 사용한다. 또한 원인이 트랙 형상이 아닌 경우에도 외란이 크고 일정한 주파수 성분을 갖고 있으면 외란 보상기를 사용하기도 한다. 즉, 트랙 추종 서보 시스템에서 주기적 외란 보상기는 다수가 함께 사용되는 것이 일반적이다.

주기적 외란 보상기를 구현할 때 표현식이 다른 식 (2), 식 (6), 식 (7), 식 (11), 식 (14) 중 어느 것을 사용하나 전달함수가 동일해 수학적 결과는 동일하겠지만 사용하는 식에 따라 실제 구현에서는 여러 차이가 발생한다.

우선, 구현 식에 따라 실행 시간의 차이가 발생한다. Table 1에 10개의 주기적 외란 보상기를 C 언어로 구현했을 때의 실행 시간을 측정해서 MC(machine cycle) 단위로 표시하였다. 부동소수점 연산에는 단정밀도를 사용했으며 고정소수점 연산에는 32비트 정수형을 사용했다. 또한, 사인(sine), 코사인(cosine) 계산에는 테이블을 이용하였다. 측정에 사용한 마이크로컨트롤러는 FPU(floating point unit)가 내장된 STMicroelectronics 사의 ARM Cortex STM32F407이며, 컴파일러는 IAR Systems사의 Embedded Workbench이다. 식 (7)의 방법이 FPU의 사용 유무나 고정소수점, 부동소수점 연산에 상관없이 가장 빠른 결과를 나타내었다. 반면, 식 (2)는 FPU를 사용한 부동소수점 연산에서 가장 느렸으며, 식 (14)는 FPU 없는 부동소수점 연산과 고정소수점 연산에서 가장 느린 결과를 보였다.

응용 예에 따라서 샘플시간마다 실행되는 ISR(interrupt service routine) 시작부터 최종 제어입력 계산까지의 시간이 중요한 경우도 있다. 이 때 필요한 최소 연산 횟수는 Table 1의 마지막 열에 열거하였다. 이 시간이 더욱 중요한 경우에는, 주기적 외란의 주파수가 기본 제어기의 대역폭에 비해 작은 경우에 한해, 식 (1)을 한 샘플 시간 지연시킨 식 (15)로 각각의 표현식을 수정하여 다음 샘플을 위한 주기적 외란 보상기의 제어 입력을 미리 계산할 수도 있다.

Table 1Comparisons of implementation methods

주기적 외란 보상기가 여러 주파수에 대해 다수 사용될 경우에는 주어진 샘플링 시간 내에 연산이 불가능할 수도 있다. 또한 주기적 외란 보상기는 단독으로 사용되지 못하고 기본 제어기와 함께 사용되기 때문에 전체 연산 시간은 주기적 외란 보상기의 연산 시간만큼 길어지게 된다. 연산 시간이 길어 질수록 트랙 추종 시스템의 위상 여유는 줄어들고 이로 인해 트랙 추종 성능은 나빠지게 되므로 연산시간이 문제가 되는 경우에는 앞서 비교한 결과를 반드시 고려해서 보상기 구현 방식을 선택해야 한다.

트랙 추종 서보만 하는 경우에는 주기적 외란 보상기를 항상 사용해도 되지만 추종 트랙을 변경하는 탐색 서보 중에는 트랙 추종 서보에 비해 오차가 크게 발생하므로 주기적 외란 보상기의 피드백을 일시적으로 중단해야 할 필요가 있다. 이 때 식 (2)의 방법은 식 (3)의 상수 부분을 추정하는 방식이라 정상상태 후 일정 시간 동안 피드백을 하지 않아도, 즉, y를 0으로 해도, 주기적 외란의 크기나 위상이 변하지 않는 한 보상이 완벽하게 된다. 따라서 피드백을 일정시간 중지했다가 재시작하는 경우에도 정상상태를 유지하게 된다. 하지만 나머지 방법은 정현파를 추정하는 방식이기 때문에 y를 0으로 하는 샘플 시간이 증가할수록 유한한 자릿수에 의한 절단 오차가 누적되어 점점 정상상태에서 벗어나게 된다. 다만, 식 (11)과 식 (14)의 방법은 n번의 샘플 시간 동안 피드백을 하지 않은 경우에 사인 테이블로부터 식 (16)을 계산해 절단 오차의 누적을 방지할 수 있다.

식 (7)과 식 (11)의 경우에는 제어 입력이 결과적 으로 이득 𝑔와 상태변수의 곱에 의해 결정되는 경우이기 때문에 주기적 외란의 크기가 일정하다면 이득 𝑔값이 클수록 상태변수의 최댓값은 작아지고, 𝑔값이 작아질수록 상태변수의 최댓값은 커진다. 따라 서 고정소수점 연산에서 너무 작은 𝑔값을 큰 주기적 외란에 대해 사용하면 상태변수의 계산에 오버플로(overflow)가 발생할 수 있다는 단점이 있다.

한편, 식 (11)이나 식 (14)는 외란과 제어 입력에 대해 사인, 코사인 성분을 추정할 수는 있지만 효용성은 없는 것 같다.

 

4. 결 론

트랙 추종 서보 시스템에서 주기적 외란 보상기의 이득은 감도전달함수의 변화와 이에 따른 외란 보상의 변화를 고려해서 설정해야 한다. 결과적으로, 주기적 외란 보상기는 주기가 정확하다면 보상이 완벽하므로 보상 속도와 구현 측면에서 문제가 되지않는 한 이득 𝑔는 되도록 작게 설정해야 하고, 이득ϕ는 주변 주파수의 외란을 고려해서 설정해야 한다.

주기적 외란 보상기를 실제 시스템에 구현하는 방법은 매우 다양하지만 구현 방법에 따라 장단점이 있기 때문에 적용하는 시스템의 환경과 특성에 맞게 구현 방법을 선택해야 한다. 예를 들어, 제어 가능 표준형은 실행시간 면에서 가장 우수하지만 일시적 피드백 중단 후 재시작 특성이 좋지 못하고 오버플로에 주의해야 한다. 반면, AFC는 일시적 피드백 중단 후 재시작 특성은 우수하나 실행시간이 길고 정현파 테이블을 갖춰야 한다는 단점이 있다.

 

Nomenclature

CB: 기본 제어기 전달함수CP: 주기적 외란 보상기 전달함수P: 플랜트 전달함수S , SB: 감도전달함수T: 샘플링 시간a, b: 추정 변수g, ϕ: 보상기 이득up: 보상기 제어입력ω: 주기적 외란의 주파수x, r: 상태 변수y: 플랜트 출력

References

  1. Bodson, M., Sacks, A. and Khosla, P., 1994, Harmonic Generation in Adaptive Feedforward Cancellation Schemes, IEEE Transactions on Automatic Control, Vol. 39, No. 9, pp. 1939-1944. https://doi.org/10.1109/9.317130
  2. Shin, H. C., Park, S. W., Park, T. W, Yang, H. S. and Park, Y. P., 2004, Compensation of the Repeatable Run Out Using Repetitive Controller in HDD, Transactions of the Korean Society for Noise and Vibration Engineering, Vol. 14, No. 2, pp. 136-143. https://doi.org/10.5050/KSNVN.2004.14.2.136
  3. Boo, C. H., Kang, C. I and Kim, H. C., 2004, Fast Compensator of Periodic Disturbance in Disk Drives, Journal of Control, Automation, and Systems Engineering, Vol. 10, No. 2, pp.153-163. https://doi.org/10.5302/J.ICROS.2004.10.2.153
  4. Jeong, J., Kim, J. G., Park, N. C., Yang, H. S. and Park, Y. P., 2007, Disk Vibration and Eccentricity Compensation of Near Field Recoding Systems Base on the Internal Model Principle, Transactions of the Korean Society for Noise and Vibration Engineering, Vol. 17, No. 6, pp. 539-546. https://doi.org/10.5050/KSNVN.2007.17.6.539
  5. Park, C. H., Son, Y. S., Ham, S. Y., Kim, B. I. and Yun, D. W., Precise Speed Control of Direct Drive PMSM for the Cogging Torque Measurement System, Journal of the Korean Society for Precision Engineering, Vol. 26, No. 5, pp.79-86