모션의 손발을 움직인다! 모션컨트롤러 (1)
모션의 손발을 움직인다! 모션컨트롤러 (1)
  • 윤진근 기자
  • 승인 2014.07.01 14:12
  • 댓글 0
이 기사를 공유합니다

모션컨트롤러의 역사와 종류
모션컨트롤러는 그 이름처럼 모션컨트롤을 돕는 장치다. 그 종류에 따라 각기 다른 제어 작업을 수행한다. 모션컨트롤러를 구성하는 기술들과 모션컨트롤러의 종류에 대해 간단히 알아보고, 대표적인 장비 및 응용사례를 통해 각 장치의 특징과 기능을 살핀다.
글|모션시스템디자인 편집부
정리|윤진근 기자(yoon@iomedia.co.kr)
 
오늘날 모션컨트롤은 컴퓨터나 솔리드스테이트 로직 혹은 공압 시퀀서의 지도하에 이루어진다. 이들 장치는 다양한 형태로 각기 다른 레벨의 제어를 실현한다.

컨트롤러는 기본적으로 네 가지 유형으로 나눌 수 있다. 
 
▲칩 레벨 장치는 몇 개의 집적회로로 구성되어 있다. 집적회로를 통해 위치결정장치를 구동하는 신호를 만들 수 있다. ▲보드 레벨 장치는 하나 이상의 회로 기판으로 구성된다. 입출력부터 각종 계산기능에 이르기까지 다양한 작업을 수행한다. 위치결정제어장치를 제어 및 감지하며 전원 공급도 담당한다. ▲박스 레벨 장치는 일반적으로 한 장비 안에 화면출력장치, 키보드, 계산 및 입출력 기능 등을 모두 탑재하고 있다. ▲특정 작업용(즉, 전용) 컨트롤러는 프로그래머블 로직 컨트롤러(PLC)와 공압 시퀀서를 포함하고 있는 장비다. 전용 컨트롤러는 작업현장 전체에서 일어나는 다양한 잡무를 처리할 수 있게 설계되었다.
 
저마다의 특징을 가진 네 가지 장비는 모션컨트롤 분야에서 각기 다른 작업을 수행한다. 이러한 기술을 간단히 알아보고, 대표적인 장비 및 응용사례를 통해 각 장치의 유형과 기능을 설명한다.
1. 마이크로컨트롤러
집적회로로 만든 모션컨트롤러는 주로 단일 칩 마이크로컨트롤러로 전력을 계산한다. 이런 장비들은 기본적으로 컴퓨터 프로세서와 메모리 그리고 간단한 입출력 기능을 단일 칩에 결합한 것이다. 지난 몇 년 동안 개발을 거친 마이크로컨트롤러는 주로 모션 제어 응용사례에 쓰인다. 모션 제어에 최적화된 여러 기능을 담고 있기 때문이다. 특정 타이머 및 카운터 기능 등이 대표적이다. 타이머 및 카운터를 통해 펄스폭 변조(PWM) 파형 생성을 촉진할 수 있다. 파형을 생성함으로써 모터 및 산업용 장비들을 한층 원활히 구동할 수 있게 된다.
 
마이크로컨트롤러의 추가적인 기능으로는 입력 라인의 신호 세기를 빠르게 감지하고 주변장치를 구동하는 트리거 신호를 생성하는 것 등이 있다. 이 기능은 회전기계 등 기계적으로 작동하는 주변장치의 타이밍 설정을 맡는다. 또한 리밋 스위치 등의 변환기가 생성한 신호를 감지하는 데에도 쓰인다. 
 
추가적인 기능 및 장치로는 전용 펄스폭 변조 출력과 감시 계시자(監視計時子, Watchdog Timer), 고해상도(대략 10비트) 아날로그/디지털 변환기 등이 있다.
 
마이크로컨트롤러는 8096, 8051 및 68HC11형 장치 등의 모션컨트롤러 안에 내장되어있다. 이러한 구성은 8비트 혹은 16비트 데이터 경로에서 작동하며 최대 12㎒의 클록 속도를 자랑한다. 

장치가 가지고 있는 처리량 및 대역폭은 간단한 모션제어 응용사례에 적합하다. 하지만 고성능 응용사례에서는 이러한 장치만으로 목표를 달성하기가 어렵다. 

이에 고성능 요구사항을 처리하기 위해 32비트 컨트롤러가 출현해 한층 빠른 속도를 자랑하고 있다.

고성능 응용사례에 대응하고자 만들어진 32비트 부품은 다목적 32비트 마이크로프로세서에서 사용하는 규모가 작은 연산회로를 탑재하고 있다. 고성능을 달성하는 열쇠는 바로 멀티 메가바이트 번지 공간과 32비트 자료처리와 16㎒ 혹은 그 이상의 클럭 속도 그리고 특별한 명령(지시)기능 등을 포함하고 있는 칩이다. 칩은 큰 메모리를 직접적으로 다루며, 내용이 긴 프로그램도 실행할 수 있다. 이러한 범주에 해당하는 컨트롤러로는 80960 및 80376 컨트롤러 등이 있다.
 
장치 및 주변 칩이 제공하는 다른 기능으로는 직접 기억 접근(Direct Memory Access, DMM) 채널, 인터럽트 컨트롤러, 프로그래밍 가능한 간격 타이머(Interval Timer) 등이 있다. 이런 기능을 필요로 하는 응용사례는 다수의 연산이나 영상인식기능 등을 요구하는 사례가 대부분이다. 로봇 팔 제어나 배열처리 등이 이에 해당한다.
2. 특수 IC
오늘날 제조업체들은 특수목적의 IC를 개발했다. 폐루프 모션제어 및 모터 속도제어 모두를 구현하기 위해서다. 현재는 모션제어에 3개의 칩이 쓰이고 있다. 하나는 다축 윤곽 형성에, 나머지 2개는 모터 속도제어에 사용한다.
 
HCTL-1000이라고 불리는 다목적 모션제어 IC는 DC 모터 ·브러시리스 DC 모터·스테퍼 모터 등을 대상으로 한다. TTL호환 칩은 단일 5V 파워서플라이를 통해 전원을 공급받는다. 위치 및 속도제어는 호스트 컴퓨터 입력 신호와 증분 인코더의 피드백 자료를 비교함으로써 실현된다. 인코더 피드백은 Quadrature 카운트로 해독이 가능하며, 24비트 카운터가 그 위치를 추적한다. 따라서 이 구성에는 아날로그적 보상도, 속도 피드백도 필요하지 않다. 온칩(반도체 칩 위에 회로를 집적한) 소프트웨어는 네 개의 제어 모드를 제공한다. 위치제어·속도비 제어·사다리꼴 프로파일링(Ttrapezoidal Profiling)·전체 속도제어가 그것이다.
 
위치제어 모드를 사용하면 모터가 한 지점에서 다른 지점으로 이동할 때 속도 프로파일링이 필요 없다.

속도비 제어는 다른 변수없이 보상(compensation)만으로 모터 속도를 조절할 수 있다. 이때 다이내믹 폴(Dynamic Pole) 및 제로 리드 보상은 쓰이지 않는다. 실제 모터 속도를 사전에 지정한 속도와 비교하며 그 오차를 계산한다.

사다리꼴 모드는 속도제어와 함께 점대점 제어에서 주로 사용된다. 이 모드에서는 최종 위치와 가속 그리고 최고속도를 지정할 수 있다. 수치를 지정한 뒤에 제어 관련 사항들이 요구사항을 충족하는지 알아보기 위해 컨트롤러로 신호 개요를 계산한다. 

위치를 변경할 때에는 모터 속도를 관찰한다. 만약 모터가 목표지점의 절반 이하 지점에서 최고속도에 다다른다면 속도 대 시간 파형은 사다리꼴 모양을 나타낸다. 그렇지 않은 경우에는 삼각형 모양을 나타낸다.
 
적분 속도제어 모드(Integral Velocity Control Mode)는 연속 속도제어를 제공한다. 이 모드에서는 속도 개요를 제 시간에 만들기 위해 속도 및 가속도를 언제든 변경할 수 있다. 지정된 속도에 다다르면 새로운 명령을 내리기 전까지 그 속도를 유지한다.

GL-2000이라고 불리는 새로운 폐루프 컨트롤러는 10㎒ 외부 클록을 사용해 회로 출력시간을 맞춤으로써 한층 정확한 모터 제어를 제공한다. 칩은 2채널 증분 인코더가 특정한 위치에서 생성한 신호와 12비트 오류 신호를 비교한다. 오류 신호는 정확한 모터 위치제어에 필요한 요소다. 
 
GL-1200의 흥미로운 기능 중 하나는 위치 오류로부터 도출한 미분계수(Derivative)를 계산하고 이 값을 시스템 제동에 사용하는 것이다. 미분계수는 속도에 비례하기 때문에, 회전 속도계(태코미터)가 생성하는 속도 피드백이 따로 필요없다.
최근 개발된 서보 제어 칩 LM628과 LM629는 PID 필터링 기능을 포함하고 있다. 이 칩들은 마이크로프로세서를 통해 장치가 이동하는 중에도 필터 상수를 변경할 수 있다.
 
호스트프로그램은 속도와 가속도 그리고 위치에 대한 정보를 얻고, 이를 통해 디지털 필터의 계수를 프로그래밍하여 오류 및 모터 시간 상수를 보상한다. 호스트프로그램은 또한 칩에 대한 정보를 모으고 좌석 레지스터(내선에 접속할 때 접속에 필요한 정보를 수신하고 마커로 전송하는 기능을 갖는 레지스터. 출처 IT 용어사전)를 분석하며 상태 정보를 획득한다. 
위기 상황이 발생했을 경우 서보 IC는 호스트프로그램을 차단 혹은 중단시킬 수 있다. 위치 오차가 한계를 넘어서거나 모터가 갑자기 멈추는 등의 문제가 이에 해당한다.
 
장치가 움직이면 서보 칩의 프로파일 생성기가 디지털 합산 노드(Summing Node)로 위치 신호를 전송한다. 각 표본간격을 실제 모터 위치와 비교함으로써 필요한 위치를 구한다. 이를 통해 얻은 오류 신호는 필터링을 거친 후 디지털/아날로그 변환기로 전송된다.
몇 년 전, 2축 움직임을 동시에 제어하기 위한 두 개의 칩이 개발되었다. 
 
문제에 대한 좀 더 명확한 설명을 위해, X축과 Y축에 대해 각 45° 컷을 달성하는 밀링 머신을 떠올려보자. 모터가 밀 테이블을 구동할 때 정확히 같은 시간에 작동을 멈추지 않는다면 재료가 깔끔하게 잘리지 않게 된다. 절단되는 부분이 직선이 아닌 비뚤어진 선을 그리게 되는 것으로, 정도가 심하면 곡선 혹은 계단 모양으로 잘릴 수도 있다.
 
또 다른 어려움은 절삭 헤드의 속도를 일정하게 유지해야 한다는 점이다. 실제 절삭 속도는 X축 및 Y축 방향을 향하는 속도에 따라 달라진다. 예를 들어 절삭 속도가 10ipm인 상황에서 절삭 헤드가 같은 속도로 X축 및 Y축 방향으로 이동한다면 실제 속도는 14.14ipm이 된다.
 
KM3701과 KM3702 칩은 CMOS 장치로, PC 호환 플러그인 보드 형태로도 혹은 분리된 형태로도 사용 가능하다. KM3701 마이크로컨트롤러는 X축과 Y축에 대한 보간 펄스를 생성하는데, 외부 장치로부터 보간 펄스를 계산 및 연산하는 데에 쓰이는 정보를 얻는다. 펄스는 개루프 시스템에서 스테핑 모터를 제어하는 데에 사용할 수 있다. 
 
KM3702는 이와 반대로 폐루프 설계에 사용할 수 있는 장치로, 모션제어 칩이다. 지정된 위치와 실제 위치 사이의 차례에 비례하는 출력신호를 생성한다.
 
칩에 저장되어있는 알고리듬을 통해 보간 펄스를 계산할 수 있다. 여타 보간 칩과 비교했을 때 KM37001는 포물선함수·대수함수·지수함수에 대한 펄스를 생성하는 능력이 우수하며, 복잡한 곡선을 매우 정확하게 구현한다.
 
몇몇 업체들은 속도제어에 필요한 칩을 개발했다. LS7263 칩을 예로 들 수 있다. 3상 브러시리스 모터의 속도 조절을 위해 만들어진 이 칩의 회로는 3.58㎒ 결정 시간축(Crystal Time Base)을 활용함으로써 ±0.1%의 속도 제어를 실현한다. 회전속도계의 입력 수치를 측정하고 각 권선의 구동신호에 변화를 줌으로써 속도를 교정하는 것이다. 
 
이 칩은 한층 더 부드러운 제동을 제공함으로써 권선들이 동시에 단락되는 현상을 예방할 수 있다. 그러나 모터에 전기적인 부하를 가하면 진행속도가 느려진다.
 
이 장치는 권선과 드라이버 그리고 전원공급장치에 과전류 보호 기능을 제공한다. 보호 회로는 아주 작은 저항을 이용해 포지티브 서플라이와 드라이버의 이미터(트랜지스터의 전극의 하나) 사이를 연결하고, 전위차계(포텐셔미터)를 드라이버와 접지면 사이에 연결한다. 이때 IC의 과전류 입력부에 와이퍼를 감는데, 와이퍼는 작동 전류를 특정한 모터에 맞추어 조절하는 역할을 맡는다.

주요기사
이슈포토