고정밀 모션 애플리케이션을 위한 컨트롤러 요구 사항
DELTA TAU
![]() |
소개
다른 애플리케이션과 달리, 고정밀 모션 제어 애플리케이션은 모션 컨트롤러를 필요로 한다. 요구 사항 중 많은 부분이 미묘하며 데이터 시트에서 바로 알아보기 힘들다. 모션 컨트롤러의 설계자는 정밀 애플리케이션에 맞게 제어하기 위해서 숫자, 데이터 속도, 보간 기법, 빠른 서보 업데이트 및 기타 문제에 주의를 기울여 처리해야 한다. 여기서는 문제 해결에 필요한 주요 전략을 조사하고자 한다.
궤도 지령(Commanded Trajectories)
지령된 궤도에 대한 적절한 전략은 고정밀 모션 애플리케이션에 부합하기 위해 중요하다. 사실상 제어 교육 코스에서는 소홀히 하지만, 최소한 서보 알고리즘으로써는 중요한 사항이다.
일반적으로 지령된 궤도는 피드백 해상도보다 덜 미세한 해상도를 사용했다. 저장 및 계산의 모든 바이트 용량이 문제가 됐던 시절에는 이와 같은 전략이 의미 있었다. 그러나 성능에 몇 가지 심각한 제한이 있다. 대부분의 궤도에서 이상적인 중간 포인트(intermediate points)들은 ‘카운트(counts)’의 완전 숫자가 아니다. 각 포인트를 가장 가까운 정수로 강제 지정하는 정량화 노이즈(quantization noise)는 중요할 수 있다.
피드포워드(feedforward)를 사용하면 효과가 악화된다. 가장 일반적인 피드포워드 항과 속도 및 가속 피드포워드는, 지령된 궤도로부터 디지털 미분을 필요로 한다. 즉, 노이즈가 생성되는 작업이다. 충분한 분수 해상도 (fractional resolution)가 없으면 합리적으로 사용하거나 최대 효과를 내는 데 사용할 수 없다.
피드포워드의 문제에 대한 많은 견해는 기술 자체에서 오는 것이 아니라 부적절한 해결책으로 인한 것이다. 각 위치가 점진적으로 생성되는 경우, 각기 사이클의 지령된 위치는 전체 계산의 기준점으로 사용된다. 수치적분 에러를 최소화하려면 상당한 분수분해가 필요하다.
이는 다 축 애플리케이션에서 적절한 조정을 유지하는 데 특히 중요하며, 이는 종종 축 간의 경로 정확도(path accuracy)를 의미한다.
궤도생성 부분에서 수치 기법에 대한 가장 주의 깊은 관심이 필요하다. 많은 사람들은 고정 소수점(fixed-point number) 방식보다 부동 소수점(floating-point numbers) 방식이 모든 측면에서 낫다고 믿는다.
하지만 꼭 그런 것만은 아니다. 위치가 부동 소수점으로 표현되면 위치와 같이 부분적인 해상도가 변경된다. 100만 카운트(나노미터 해상도에서 원점으로부터 100mm)에서 20비트 분량을, 10억 카운트(나노미터 해상도 에서 원점으로부터 1m)에서는 30비트의 분량을 잃어버리게 된다. 위치 표현을 위한 표준 32비트 부동 소수점 방식이 정밀도가 높은 애플리케이션에 부적합하다는 것을 알 수 있다. 64비트 부동 소수점 표현도 주의를 기울 여야 한다.
![]() |
부동 소수점 표현이 정확하지 않기 때문에, 반복 정밀도가 필요하지 않은 애플리케이션에서도 반복되는 더하기 연산의 반올림 에러가 누적될 수 있다. 부동 소수점 해상도가 처음에는 충분하다고 여겨질 수도 있다. 만약 이것이 애플리케이션에서 문제 된다면, 덧셈 항을 곱셈 항으로 간단히 대체할 수 있다.
모든 컨트롤러는 다항식을 사용해 지령 위치 궤도를 생성한다. 제어기가 개선됨에 따라 이 방정식의 지수는 증가했다. 1970년대 초반의 디지털 컨트롤러는 1차 방정식의 위치 궤도를 사용해 일정 속도 세그먼트를 생성할 수 있었지만, 가속 및 감속을 제어할 수는 없었다. 시스템은 물리적으로 실현 가능한 궤도를 생성하기 위해 아날로그 서보 드라이브에 상당한 지연이 필요했다.
1980년대에 공통으로 사용된 2차 방정식의 궤적은, 기본적인 가속 제어와 부드러운 코너링(C1 연속성)이 가능해졌다. 서보 지연의 필요를 크게 줄임으로써 서보 제어가 더욱 정밀해졌다. 그럼에도 여전히 가속도에서 힘과 모터전류 그리고 곡률의 개선을 요구했다. 그러나 이 중에 아무것도 물리적으로 현실화되지 않는다.
1990년대에 일부 컨트롤러에 도입한 3차식 궤도는 저크(jerk) 컨트롤과 경로 곡률(C2 연속성)의 연속성이 가능해졌다. 이를 통해 ‘S커브’ 가속 및 입체 스플라인(cubic spline)과 같은 기능이 효과적으로 구현됐다.
물리적으로 실현 가능한 궤도를 생성할 수 있는 고차 방정식의 사용은, 특히 트래킹 에러를 최소화하기 위해 의도적으로 피드포워드를 사용하는 정밀 시스템에서 중요하다. 뚜렷한 트래킹 에러 혹은 ‘서보 지연’이 있는 시스템은, 갑작스런 지령 변경에 대한 원활한 보상으로 인한 지연시간을 계산할 수 있다. 그러나 그만큼에 대한 정확성은 손해를 본다.
사실상 S커브 가속과 같은 기술은 지령 궤도상에서의 저역 통과 필터(low-pass filters)이다. 이들은 시스템에서 고주파 공진의 발생을 방지하는 역할을 한다. 새로운 기술은 공진 주파수에 대한 선택적 거절을 위해 지령된 궤도에 대역 차단 필터(band-reject filter)를 구축하는 것이다. 신속한 동작을 가능하게 하는 고 주파수 콘텐츠는 거부되지 않는다.
컨투어(contour)를 재구성하는 것은 보편적인 방법이다. 궤도 내에서 보간점을 컨투어 상에 직접적으로 지정하게 된다(선형 보간법, linear Interpolation). 이로써 시스템의 다른 에러를 대신 해주는 에러를 지령된 궤도 내에 생성시킨다. 현대의 정밀 컨트롤러는 에러를 최소화하기 위해 Hermite 스플라인 같은, 보다 정확한 윤곽궤적을 지원할 수 있어야 한다.
![]() |
피드백 문제
컨트롤러는 고정밀 애플리케이션에서 일반적인 모션 제어 애플리케이션을 훨씬 초과하는 데이터 속도(단위 시간당 LSB로 표시)로 피드백 신호를 받아들일 수 있어야 한다. 하드웨어와 소프트웨어 모두에서 필요한 이 전략은, 표준제어 알고리즘의 전략과는 다를 수 있다.
첫 번째, 가장 간단한 전략은 고속 디지털 인터페이스 회로를 사용하는 것이다. 표준 직교 엔코더(quadrature encoder)에서는 500kHz 카운트 속도를 내지만, 정밀 센서의 인크리멘털 출력은 종종 20MHz 속도를 낼 수 있다. 정밀 컨트롤러는 이러한 속도를 수용해야 한다.
간섭계와 같은 정밀도 센서는 위치(또는 적어도 시작점에서부터의 거리)를 나타내는 병렬 디지털 데이터 워드를 출력한다. 정밀 컨트롤러는 제어루프 실행과, 동기적으로 안정된 데이터 워드를 저장할 수 있는 능력을 갖춰야 한다.
만약 컨트롤러가 위치 데이터의 ‘소프트웨어 확장’ 기능을 수행할 수 있다면, 병렬 워드의 덜 중요한 부분에만 인터페이스 할 수 있다. 복잡성과 비용이 절약된다. 컨트롤러는 점차 간섭계와 선형 스케일 및 로터리 엔코더의 ‘사인-코사인’ 아날로그 신호를 직접 수용해, 고도 보간으로 해결하도록 요구받는다. 이 인터페이스는 시스템 내에 사이클의 위치를 결정하기 위해 하이브리드 아날로그/디지털 인터페이스, 디지털 주기 카운터, 그리고 아크탄젠트 알고리즘(arctangent algorithm)이 결합된 한 쌍의 아날로그-디지털 변환기(하드웨어 또는 소프트웨어)가 필요하다.
사이클 카운트의 정수와 분수의 구성 요소를 결합할 수 있고 전환 장애가 없는 알고리즘이 필수적이다.
서보 알고리즘
대부분의 고정밀 모션 애플리케이션에는 복잡한 서보 알고리즘이 필요 없다. 시스템의 대부분은 기구 시스템이 제어에서 하나의 강체(rigid body)로 인식할 정도로 잘 설계됐다. 유체역학 베어링을 사용하면 비선형 기구적 마찰의 문제도 사라진다. 표준 PID형 컨트롤러는 시스템에서 매우 잘 작동한다. 시스템을 위한 서보 알고리즘은 속도와 해상도에 대해 높은 수준을 요구한다. 대다수의 산업용 디지털 제어시스템에서 서보 루프의 게인(gain)을 제한하는 것은, 고전적인 안정성 기준(stability criteria)이 아니라 제한된 분해능으로 인한 지연 및 양자화 노이즈(quantization noise)이다.
불안정한 위상지연(phase lag)을 루프에 추가하는 지연은 디지털 샘플 속도에서 첫 번째로 발생한다. 이 속도는 자동으로 반주기 지연(half-cycle delay)을 유입한다. 속도 정보가 위치 피드백에서 파생되면, 피드백에 대한 디지털 차등으로부터 또 다른 반주기(half cycle) 지연이 유입된다.
또 다른 지연은 두 단계에서 비롯된다. 첫째는 피드백을 읽고 명령수행을 계산할 때이다. 둘째는 계산된 값을 실제 신호로 변환해, 액추에이터를 구동하는 데 필요한 ‘전송 지연’사이의 유한 계산 시간이다. 현대의 많은 스마트 드라이브(아날로그 입력이 있는 디지털 드라이브)는 지연을 혼합해 문제를 악화시켰다.
디지털 컨트롤러는 주기적으로 위치를 샘플링한다. 위치 및 속도의 루프를 닫고, 데이터를 디지털-아날로그 변환기를 통해 명령이 아날로그 형식으로 드라이브에 전송되도록 한다. 드라이브의 아날로그-디지털 변환기는 컨트롤러에 주기적으로 있지만, 비동기적으로 신호를 샘플링하고 전류 루프 및 가능한 속도 루프를 닫은 다음 전압 명령 값을 실제 신호로 변환한다. 지연의 여러 샘플 사이클이 이 프로세스를 통해 축적돼 시스템의 이득 및 성능을 대폭 감소시킨다.
이 맥락에서 보면, 단일 프로세서에서 모든 루프를 닫고 명령 출력 값을 물리적 신호(일반적으로 파워 트랜지스터에 대한 PWM 온-오프 신호)로 신속하게 변환하는 것이 훨씬 좋다. 디지털 전류 루프 폐쇄를 포함한 디지털 제어 구조는 게인, 더 나은 강성, 장애 배제(disturbance rejection), 대역폭, 가속도, 안정 시간(settling times) 및 기타 특성을 훨씬 좋게 제공할 수 있다.
디지털 피드백의 유한 해상도 역시 게인(gain)을 제한한다. 반복성 및 정확도를 같이 높이지 않아도 시스템 성능을 크게 향상시킬 수 있다. 방법은 서보 루프에 더 높은 피드백 분해능을 제공하고(위치 피드백과 속도 루프에서와 같이) 수치 값을 차별화하는 것이다. 어느 시험에서 10kg 부하의 볼 스크루를, 직접 구동하는 물리적 시스템에 대해 인코더에서 다양한 보간도(degrees of interpolation)로 테스트했다. 시스템은 1000라인 사인파 인코더가 있는 1kW 브러시리스 모터로 구성됐다. 테스트 이동은 25mm이며 1미크론에 정착됐다. 결과는 다음과 같다.
• ‘x4’ 디코드 (회전 당 4,000개) : 100msec
• ‘x256’ 보간 (회전 당 256,000개) : 75msec
• ‘x4096’ 보간 (회전 당 4,096,000개) : 60msec
에어 베어링을 통한 기구적 마찰의 제거는 ‘스틱 슬립(stick-slip)’ 현상을 피하기 위해 정밀응용 분야에서 매우 중요할 수 있지만, 마찰에 의한 댐핑 효과의 제거는 제어의 안정성 면에서 더 나빠진다.
서보 루프는 기구적 마찰이 거의 없는 유사한 시스템에 비해 두 배의 주파수에서 닫혀야 한다. 실제로 시스템의 서보 업데이트 속도는 최소 4kHz이다.
서보 알고리즘의 일부인 피드포워드는, 피드백 알고리즘이 반응하도록 하기 위한 에러가 발생되기를 기다리지 않는다. 이는 트래킹 에러를 최소화하는 정밀 시스템에서 중요할 수 있다. 고정밀 역학은 특히 피드포워드를 적극적으로 사용하는 데 적합하며, 대부분 쉽고 간단하게 모델링할 수 있다. 이러한 시스템에서 서보 명령의 99% 이상은 피드포워드 조건에서 비롯될 수 있다. 피드백 알고리즘은 외란 및 모델링 에러에 대한 간헐적인 보정을 제공한다.
정류(Commutation) 알고리즘
제한된 정밀도를 필요로 하는 애플리케이션에서, ‘6단계(six-step)’ 정류로 알려진 브러시리스 모터에 대한 스위칭 정류 전략을 사용할 수 있다. 고 정밀 애플리케이션에서는 반드시 ‘사인파(sinusoidal)’ 정류로 알려져 있는 정교한 정류 알고리즘이 사용돼야 한다.
‘사다리꼴로 감긴’ 브러시리스 모터를 사용해도 6단계 정류는 단일 스텝의 폭에 걸쳐 상당한 토크/힘 리플을 제공한다. 스텝 경계에서 위상의 갑작스러운 스위칭은 현저한 토크/힘 교란을 생성한다. 예를 들면, 절단 부분의 표면 가공에 눈에 띄는 흔적이 생길 수 있다.
정류 알고리즘으로 인해 생성된 토크는, 회전자의 자기장 각도에서 측정 오차의 코사인에 비례한다. 분해능 제한으로 인한 것과 같은 작은 측정 오차는 알고리즘 결과에 영향을 거의 미치지 않는다. 따라서 서보 알고리즘과 마찬가지로 정류 알고리즘에 대한 해결책이 필요 없다.
일반적으로 정류 알고리즘은 서보 알고리즘과 동일한 센서를 사용한다. 이 해상도는 모두 사용할 수 없으며, 제한된 해상도의 사인파 룩업 테이블(look-up table)에서 가장 가까운 점을 사용하는 것이 일반적이다.
루프를 폐쇄하기 위한 전략은 정류 알고리즘과 불가분 관계에 있다. 최근 마이크로프로세서 특히, DSP는 전류루프 폐쇄를 디지털 방식으로 수행하기에 충분히 빠르다. 이는 몇 가지 중요한 개선을 가능케 한다. 첫째, 노이즈에 민감한 명령의 아날로그 전송이 제거될 수 있다. 둘째, 위치 루프와 속도 루프, 정류 및 전류 루프에 대한 모든 피드백 계산을 단일 프로세서에서 수행해 전송 및 계산 지연을 최소화할 수 있다.
![]() |
보상 알고리즘
물리적 시스템은 완벽하지 않다. 물리적 에러를 측정하고, 이를 물리적으로 수정하는 것보다 알고리즘 적으로 보완하는 것이 보다 비용 효율적이다. 우수한 정밀 컨트롤러는 에러를 보완하기 위해 다양한 기술이 필요하다.
이들은 일반적으로 양수 및 음의 방향과, 2차원(때로는 3차원) 보상 테이블 및 직각도 보정 알고리즘에서 독립적인 보정을 하는 위치(리드 스크루) 보정 테이블을 포함한다.
최고 수준의 정밀도에서, 직교 좌표계인 최상의 시스템조차도 진정으로 직교 좌표계가 아니다. 이제 고급 사용자는 이상적인 데카르트 시스템과의 약간의 편차를 처리하기 위해 로봇식 기구학 알고리즘을 사용해서 실험하고 있다.
동기화 이슈
애플리케이션에서 동작 자체는, 작업을 위한 특정 공간 관계를 만드는 데 필요한 동작과 함께 끝까지 사용할 수 있는 수단이다. 많은 애플리케이션에서 물리적인 위치와 가능한 한 긴밀한 관계로 빠른 동작 중에 작업을 수행 하는 것이 바람직하다.
이를 지원할 수 있는 두 가지 전략은 ‘위치 파악’ 및 ‘위치 비교’ 회로다. 기존 컨트롤러는 소프트웨어에서 기능을 수행해, 소프트웨어 루프의 대기 시간으로 인해 기능의 정확도를 제한했다. 컨트롤러는 1990년에 캡처 및 비교 기능을 위한 전용 디지털 하드웨어로 나타나기 시작했다. 자연히 소프트웨어 지연이 제거됐다. 디지털 입력 신호(엔코더 인덱스, 프로브 스위치, 근접 센서)의 전환은 엔코더 카운터 값을 서보 사이클의 위치와 관계없이 전용 레지스터에 즉시 캡처한다. 소프트웨어는 프로세스의 정확성을 저해하지 않고 나중에 정보를 처리할 수 있다.
위치비교 프로세스는 논리적으로 캡처의 역(inverse of the capture)이다. 프로세서는 출력 신호가 필요한 엔코더 카운트와 동일한 값으로 하드웨어 레지스터를 미리 로드한다. 소프트웨어를 더 이상 사용하지 않으면, 디지털 하드웨어는 이 값을 인코더 카운터의 값과 지속적으로 비교한다. 두 값이 같으면 디지털 출력 값이 즉시 트리거 된다.
디지털 하드웨어 기술은 모션의 동시성을 디지털 입력 및 출력으로 혁신했다. 그러나 고해상도에 대한 요구가 디지털 직각 위상(digital quadrature)을 넘어선 피드백 처리를, 보다 복잡한 하이브리드 아날로그-디지털 처리로 전환함에 따라 디지털 캡처 및 비교기술의 기능은 향상된 해상도와 보조를 맞추지 못했다.
새로운 기술은 불균형을 바로 잡는다. 인코더 카운터와 연관된 디지털 하드웨어는 전용 타이머 회로를 사용해 카운터가 증가할 수 있는 비율로 분수 카운트 값을 계산한다. 업데이트된 분수 카운트 정보(fractional count information)를 항상 사용할 수 있으므로, 캡처 및 비교 회로를 확장해서 분수 정보를 통합할 수 있다.
사인파 엔코더용 보간 회로와 함께 사용할 때 사인파 및 코사인 파의 제로 크로싱(zero-crossings)이 타이머 및 캡처/비교 회로와 관련된 카운터에 내부적으로 사용되는 한 회로의 분해능은 따라 잡을 수 있다.
(서브 카운트 보간을 위한 이전의 타이머 기반 전략은 서보 사이클 당 한 번의 분수 카운트 정보만을 계산했으므로, 즉각적인 캡처 및 비교 기능에는 부적합함을 유의해야 한다.)
사인파 엔코더의 제로 크로싱은 가장 신뢰할 수 있는 기능이다. 디지털 타이머 기반 회로는 아날로그 기반 캡처/비교 회로보다 간단하고 비용이 적게들 뿐만 아니라 정확도 역시 높다.
자료 제공 : DELTA TAU(www.deltatau.com)






