프리스케일 100MHz 32비트 DSC를 사용한 듀얼 센서리스 모터 제어
  • 2012-04-11
  • 편집부

이 글은 가전기기 모터 제어 드라이브의 동향을 설명하고, 듀얼 센서리스 사인파 모터 제어 애플리케이션에 최적인 프리스케일 100MHz 32비트 디지털 시그널 컨트롤러를 소개하며, 영구자석 모터의 센서리스 벡터 제어와 프리스케일 DSC에 구현된 방식을 집중적으로 소개한다.

글 | 라딤 비싱카(Radim Visinka) 박사, 프리스케일 반도체

모터 드라이브는 세탁기, 식기세척기, 건조기, 냉장고, 에어컨 시스템을 포함한 여러 가지 다양한 가전기기의 핵심 부품이다. 지난 몇 년 동안 가전기기 모터 드라이브에 대한 요구사항이 크게 바뀌었다. 변화의 절박성은 강화되는 안전 표준, 더욱 더 친환경적인 솔루션으로 이전하는 추세, 그리고 당연한 것이지만 시스템 생산 비용으로 인해 촉구됐다. 친환경성이 향상된 시스템에 대한 요구와 관련하여, 이에 대응할 수 있는 방안으로 효율성 높은 모터로 전환하는 것과 첨단 제어 알고리즘을 구현하여 모터를 제어하는 것에 관심이 집중돼 왔다. 이후 일반적인 솔루션에도 이러한 기준이 적용되고 있다. 더 효율적인 모터로 전환하는 데 영향을 주는 핵심적인 요소는 세 가지다. 첫째는 높은 동적 성능과 폭넓은 작동 속도 범위를 가진 가변 모터 속도 동작의 필요성이다. 둘째는 소음 저감 추세로 인해 간단한 정류 제어 방식에서 사인파 드라이브로 이전하는 경향이 생긴 것이다. 마지막으로 단상 비동기 교직 양용 모터는 AC 유도, 브러시리스 DC, 그리고 주로 PMSM(영구자석 동기 모터)의 3상 모터로 교체되고 있으며, 이들은 모두 앞서 언급한 요구사항을 만족한다. 또한 또 다른 요구사항으로 AC 유도 모터 또는 영구자석 동기 모터의 벡터 제어 구현도 부각되고 있다. 그 이유는 벡터 제어가 탁월한 동적 성능을 제공하며, 저속에서 전체 모터 토크 성능을 활용할 수 있고, 폭넓은 속도 범위에서 각 동작점마다 더 높은 효율로 모터를 제어하며, 모터 토크와 자속 모두를 개별적으로 제어할 수 있기 때문이다. 더불어 단일 입력 역률이 필요하므로 PFC(역률 보정) 회로를 구현해야 한다.



모터 드라이브에 사용되는 기술 솔루션은 기술적 한계에 다다른 경우가 많으며 비용에 따라 크게 좌우된다. 모터는 그 크기와 재료의 가격에 따라 최적화되며, 이는 모터 온도 및 전류에 따라 변화하는 비선형적인 모터 매개변수로 이어지는 경우가 많다. 전자 하드웨어는 최대한 간단하며, 설계자들은 대개 고가의 정밀 아날로그 부품을 없애고 대신 전용 소프트웨어 알고리즘을 구현한다. 위치센서 또는 속도센서는 비교적 고가이므로, 개발사들은 첨단 수학 추정 방식을 사용하여 인가되는 전압에서 모터 속도와 위치를 계산하여 전류 및 모터 매개변수를 산출하는 센서리스 작동에 집중하고 있다. 그 결과, 모터 제어가 더 이상 간단한 알고리즘이 아니라 전용 주변기기가 있는 고성능 마이크로컨트롤러와 함께 첨단 모터 제어 알고리즘이 필요한 복잡한 시스템이 됐다.
일부 가전기기에는 2개 이상의 모터가 사용된다. 그 예로 물 펌프와 주 드라이브가 있는 세탁기 또는 압축기와 팬이 모두 사용되는 에어컨 장치를 들 수 있다. 이전까지 이러한 모터는 개별 전자 회로에 의해 구동됐다. 하지만 비용 최소화의 압력으로 인해 하나의 마이크로컨트롤러를 사용하여 2개의 모터를 병렬로 제어함으로써 고가의 전자부품을 중복 사용하는 일을 최소화할 수 있는 드라이브가 개발
됐다.

프리스케일 DSC 제품군: MC56F84xx
높은 성능, 전용 주변기기, 적절한 가격이 결합된 전용 마이크로컨트롤러가 발표되면서 이러한 고효율, 고성능이며 비용 효율적인 방식을 구현할 수 있게 됐다. 프리스케일은 첨단 모터 제어 애플리케이션의 요구사항을 만족하는 포괄적인 DSC(디지털 시그널 컨트롤러) 제품군을 제공한다. 프리스케일 DSC 제품군은 디지털 전원 변환, 모터 제어 및 기타 높은 속도와 높은 분해능의 제어 루프 기능이 필요한 다수 애플리케이션에 최적화된 솔루션을 제공한다. 또한 프리스케일 DSC 포트폴리오는 DSP(디지털 시그널 프로세서)의 성능과 MCU(마이크로컨트롤러)의 기능에 유연한 주변기기 세트가 결합되어 비용 효율적인 솔루션을 구성한다. 프리스케일 DSC 제품군은 펌프, 팬, 압축기 등의 센서리스 벡터 제어와 같은 적당히 복잡한 드라이브를 대상으로 하는 16비트 56800E 코어 기반의 32 MHz MC56F80xx 디바이스에서 시작하여 센서리스 세탁기 등과 같은 다소 까다로운 애플리케이션을 대상으로 하는 60 MHz DSC, 그리고 최근 발표한 디지털 전원 변환 및 센서리스 듀얼 모터 제어 전용의 32비트 56800EX 기반 100 MHz 56F84xx DSC까지 이어진다.
100 MHz 32비트 MC56F84xx는 시판 제품 중 가장 빠른 디지털 시그널 프로세싱 마이크로컨트롤러 중 하나이며, 가장 효율적인 디지털 전원 변환 및 첨단 모터 제어 애플리케이션에 필요한 탁월한 정밀도, 감지, 제어 기능을 제공한다. 100MHz/100MIPS 32비트 56800EX 코어는 첨단 전원 및 모터 제어 애플리케이션에 필요한 연산 기능을 제공한다. 단일 사이클 수학 연산, 분수 산술 지원 및 병렬 이동은 성능을 높여주면서 더 면밀하고 빠른 제어 루프를 구동한다.
MC56F84xx에는 실시간 애플리케이션 전용의 첨단 고속, 고정밀 주변기기가 포함돼 있다. 312피코초(pico-second)의 분해능을 제공하는 고분해능 펄스 폭 변조(eFlexPWM) 모듈이 더 높은 스위칭 주파수를 지원하므로 비용이 절감되며 효율이 높아진다. 이차 PWM 블록을 통해 듀얼 모터 제어가 구현된다. 최고 300ns/3.33Msps의 샘플링 주파수를 제공하는 2개의 12비트 고속 ADC(아날로그-디지털 컨버터)가 입력 값에서 지터를 줄여 시스템 정밀도를 높여준다. 일반적인 애플리케이션 측정에는 온도센서와 밴드갭이 내장된 16비트 SAR ADC가 사용된다. 통합 6비트 DAC(디지털-아날로그 컨버터)가 포함된 4개의 아날로그 비교기가 시스템 이벤트 식별 속도를 높여주며 PWM 출력의 비상 정지를 가능케 한다. 다목적 타이머는 독립적인 타이밍 및 PWM 신호 생성을 지원하며, PDB(프로그래머블 딜레이 블록)은 모터 전류 재구성에 필요한 PWM 펄스와 동기화된 하드웨어 ADC 트리거링을 대상으로 한다. 직교 디코더 블록은 산업용 모터 제어 드라이브에 흔히 사용되는 직교 인코더 위치 신호의 디코딩 기능을 제공한다. 64~288 KB의 유연한 플래시메모리 구성은 주요 디지털 전원 및 모터 제어 애플리케이션에 필요한 확장성을 제공한다. DMA(Direct Memory Access) 컨트롤러는 코어 중단을 줄여주며 성능을 높여준다. 프리스케일 FlexMemory EEPROM은 캘리브레이션 및 종료 값의 임시 보관 장소를 제공한다. 메모리 보호 기능은 사용자 코드가 주요 메모리 위치 및 관리자 액세스용으로 예약된 주변기기에 액세스하는 것을 제한함으로써 시스템의 안정성을 높여준다. 허용오차 5 V의 I/O는 설계 유연성과 시스템 비용절감 기능을 제공한다. QSCI, QSPI, I2C/SMBus, FlexCAN 등을 포함한 풍부한 통신 주변기기 세트는 마스터/슬레이브 시스템과 다기능 연결을 지원한다. 인터모듈 크로스바(Inter-Module Crossbar)는 ADC, 12비트 DAC, 비교기, 쿼드타이머, eFlexPWM, PDB, EWM, 직교 디코더 등의 온칩 주변기기와 선택형 I/O 핀 사이의 일반화된 연결을 제공하는 다기능 주변기기이다.
PFC 회로가 포함된 듀얼 센서리스 사인파 벡터 제어는 56F84xx의 대상 애플리케이션 중 하나다. 이러한 애플리케이션의 예는 단일 DSC로 펌프와 주 드라이브를 모두 제어하는 세탁기, 또는 단일 DSC로 팬과 압축기를 모두 제어하는 실외 에어컨 장치를 들 수 있다.
해당 시스템의 애플리케이션 요구사항은 다음과 같다.

- 영구자석 동기 모터의 이중 제어
- 두 모터 모두의 사인파 벡터 제어(FOC, 자기장 중심 제어라고도 부름)
- 센서리스 모터 위치 예측
- 높은 시동(start-up) 토크, 폭넓은 속도 범위
- 8~16 kHz의 PWM 주파수
- 분로(shunt) 저항을 사용한 3상 전류 감지(경우에 따라서 DC 버스에 대한 단일 분로 전류 감지 방식이 더 좋을 수 있음), DC 버스 전압 감지
- 입력단 역률 보정(지역 및 총 전력에 따라 결정됨)
- 하드웨어 및 소프트웨어 오류
방지
- 마스터/슬레이브 시스템과 연결 기능
- IEC60730 가전기기 안전 표준 준수

이 솔루션의 개념이 그림 2에 나와 있다. 그림에서처럼 단일 DSC가 두 모터 모두와 PFC를 포함한 전체 애플리케이션을 제어하며 연결 기능을 제공하고 가전기기 자체의 애플리케이션 제어 기능을 제공한다. 전원 하드웨어에는 DC 버스 회로를 공유하는 전력 인버터 2개, PFC 전원 전자장치, 전류 및 전압 감지 기능, 보조 전원 공급기가 포함된다.

벡터 제어 알고리즘
앞서 설명한 것처럼, 최신 가전기기의 첨단 모터 제어 알고리즘은 일반적으로 벡터 제어 기법을 기반으로 한다(그림 3 참조). 벡터 제어 알고리즘을 사용하면, AC 유도 및 PM 동기 모터의 제어 프로세스가 개별적으로 여자된 DC 모터를 제어하는 것과 유사해진다. 특별한 레퍼런스 프레임에서는 고정자 전류를 토크 생성 성분과 자기장 생성 성분으로 분리할 수 있다. 위 각 성분은 DC 값으로 표현되며 개별적, 독립적으로 제어할 수 있다.
벡터 제어 알고리즘을 사용하려면, 고속 ADC를 사용하여 3상 전류를 측정해야 한다. 스위칭 잡음을 방지하고 전류의 의미 있는 중간 시간 값을 얻으려면 전류 측정이 PWM 펄스의 중심과 동기화되어야 한다. 일반적으로 2개의 위상 전류가 동시에 측정되며, 세 번째는 계산된다. 따라서, DSC는 PWM과 동기화되어 2개의 전류를 동시에 샘플링할 수 있는 기능을 가진다. 3상 위상 전류는 회전 d/q 좌표로 변환되며, 이를 통해 토크 생성 및 자속 생성 전류 성분을 개별적으로 제어할 수 있다. 제어 시스템에는 2개의 전류 제어 루프가 포함되며, 하나는 토크용(q-컨트롤러로 표현)이고 하나는 자기장-자속(d-컨트롤러로 표현)용이다. 이 컨트롤러의 결과에 따라, 공간 벡터 변조 기법을 사용하여 출력 전압 벡터가 계산되며, 인버터에 적용할 적절한 보상 PWM 신호가 생성된다. 공칭 속도 이상의 높은 모터 속도라면, 자기장 감쇠 구역에서 동작을 가능하게 만드는 특별한 알고리즘이 포함되어야 한다. 더구나 일부 모터는 강한 자기저항 토크를 가진다. 이러한 자기저항 토크를 사용하고 가능한 가장 작은(또한 비용 효율적인) 모터를 구성하기 위해, 개발사들은 자기저항 토크를 최대한 활용할 수 있는 MTPA(Maximal-Torque-Per-Amp)라는 특별한 알고리즘을 구현하고 있다. MPTA를 사용하면 효율성 또한 높아진다. 토크 생성 및 자속 생성 전류를 개별적, 독립적으로 제어함에 따라 극히 낮은 속도에서부터 매우 동적인 동작이 가능하며 뛰어난 제어 특성이 확보된다.
벡터 제어가 올바르게 작동하려면 위치 및 속도 정보가 필요하다. 산업용 드라이브의 경우, 이 정보는 일반적으로 인코더, 리졸버, SinCos 또는 위치 홀센서 등과 같은 기계적인 위치/속도 센서를 통해 입수된다. 현재 대다수 가전기기 드라이브의 경우 기계식 센서는 너무 고가이다. 경우에 따라서 펌프 또는 압축기 내의 기계적 한계로 인해 센서를 사용하기 어려울 수도 있다. 따라서, 이러한 경우 센서 대신 첨단 센서리스 알고리즘을 사용하여 모터 위치와 속도를 계산해야 한다. 영구자석 동기 모터의 센서리스 위치 계산에 가장 유용한 알고리즘은 모터의 역기전력 수학 모델 계산을 기반으로 한다. 역기전력 수학 모델을 사용하려면 적절한 모터 매개변수, 인가된 전압, 모터 전류가 필요하다. 동작 도중 DSC는 일련의 방정식을 풀고, 디지털 필터 및 예측기를 실행하며, 벡터 제어 알고리즘이 올바르게 작동하는 데 필요한 위치와 속도를 계산한다. 이 모델이 정지 속도에서 사라지는 모터 역기전력 전압을 기준으로 하므로, 이 방식으로는 정지 속도 또는 매우 낮은 속도에서 위치와 속도를 파악할 수 없다. 따라서, 이 방식에는 전용 시동 알고리즘이 필요하며, 여기에는 일반적으로 일종의 토크 및 전류 제한이 있는 오픈 루프 시동이 사용된다.
이 모든 알고리즘을 계산하려면 프로세서의 계산 성능이 뛰어나야 한다. 가장 요구량이 많은 작업은 위상 전류 재구성을 포함한 벡터 제어 알고리즘의 고속 제어 루프, 전류를 회전 좌표계로 변환하는 계산, 전류 컨트롤러, 공간 벡터 변조, 위치 및 속도 예측기와 필터를 포함한 역기전력 관측기이다. 고속 제어 루프의 계산은 PWM 주파수와 동기화되어야 하며, 일반적으로 매 PWM 펄스마다 실행되므로 8~16 kHz PWM의 경우 63~125 마이크로초 주기이다.
듀얼 모터 제어를 사용하려면 2개의 전체 벡터 제어 알고리즘을 병렬로 계산해야 한다. 일반적으로 모터 사이에서 인버터의 단일 DC 버스 회로가 공유된다. 단일 DC 버스 커패시터의 전류 응력을 줄이고 최저 DC 버스 전압 리플을 달성하려면, 두 모터의 PWM 펄스가 PWM 주기의 50%에서 서로 바뀌어야 한다. 이러한 PWM 전환을 통해 ADC 샘플링을 교대로 진행할 수 있으므로 2개의 ADC 컨버터로 충분하다. 그 다음, 각 모터에 사용되는 센서리스 벡터 알고리즘의 고속 루프 계산 또한 교대로 진행된다.
선택적으로 PFC(역률 보정)가 필요할 수 있다. 성능 요구, 출력, 부하 조건에 따라 몇 가지 유형의 PFC 토폴로지를 구현할 수 있다. 듀얼 모터 운영에 일반적인 높은 출력이 필요할 경우, 대개 연속 전도 모드로 작동하는 인터리브 PFC가 사용된다. 인터리브 PFC에는 2개의 MOSFET 전원 스위치와 2개의 PFC 인덕터가 수용된다. 입력 전류를 그리드와 동기화하고 사인파로 유지할 수 있도록 마이크로컨트롤러가 입력 전류를 감지하고 전원 스위치를 제어한다. PFC에 사용되는 일반적인 PWM 주파수는 50~100 kHz 범위 이내이다.
앞서 언급한 것처럼 첨단 모터 제어 알고리즘이 두 모터 모두와 PFC를 관리하려면 전용 주변기기 기능과 마이크로컨트롤러의 CPU 성능이 필요하다. 마이크로컨트롤러는 이러한 작업 이외에도 다른 애플리케이션별 작업을 위해 계산 시간의 최소 50% 이상을 여유로 가지고 있어야 한다. 프리스케일 MC56F84xx는 애플리케이션 요구를 만족하며, 그러한 첨단 애플리케이션에 이상적인 후보다.

연계 시스템
애플리케이션의 성공적인 개발에 가장 중요한 요소는 개발사가 시간 내에 복잡한 드라이브를 설계할 수 있도록 하는 DSC를 둘러싼 연계 시스템의 가용 여부다. 프리스케일은 컴파일러, 디버거, 애플리케이션 전용 노트 및 레퍼런스 디자인 등과 같은 표준 도구 이외에, 바로 개발사의 관심을 끌 두 가지 도구 즉, FreeMASTER 실시간 디버거와 임베디드 소프트웨어 라이브러리를 제공한다.
FreeMASTER는 사용자 중심의 실시간 디버그, 모니터, 데이터 시각화 도구다. 모터 제어 애플리케이션은 다수의 시스템 변수와 제어 매개변수가 사용되는 실시간 임베디드 애플리케이션이다. 제어 알고리즘을 최적으로 개발, 설정, 조정하려면 이러한 매개변수와 변수를 실시간으로 관찰하고 평가할 수 있어야 한다. 이전까지 개발사들은 모터 제어 애플리케이션의 개발에 코드 디버거와 오실로스코프를 사용해왔다. 이러한 기존 개발방식은 상당히 어려운 작업이다. 디버거의 경우 대개 시각화나 실행 도중 애플리케이션 변수 변경을 지원하지 않으며, 변수에 액세스하려면 대상 프로세서를 중지해야 한다. 개발자가 단순히 프로세서의 메모리에 액세스하기 위해 모터를 중지시킨 다음 다시 모터를 작동시킬 수 없으므로, 모터 제어 애플리케이션에는 이러한 접근방식을 적용할 수 없다. 오실로스코프를 사용하는 경우의 제한요소는 드라이브의 실제 신호가 프로세서에서 측정한 신호와 다른 경우가 많다는 점이다. 측정되는 신호는 사용하는 감지 회로, 측정 잡음뿐 아니라, ADC의 오프셋과 게인 오류에 의해 영향을 받는다. 신호의 필터링 또한 측정 정밀도에 영향을 준다. 내부 변수의 시각화에 오실로스코프를 사용하는 것 또한 상당히 제한적이다.
FreeMASTER 실시간 디버거는 모터 제어 애플리케이션을 더 쉽게 개발할 수 있도록 설계됐다. FreeMASTER는 임베디드 시스템에서 실행되는 변수의 완전히 비간섭적인 모니터링을 지원한다. 임베디드 시스템 개발자는 오실로스코프와 비슷한 화면에서 시간에 따라 변화하는 여러 애플리케이션 변수를 관찰하거나 또는 텍스트 형식으로 데이터를 볼 수 있다. 또한 사용자가 호스트 PC에서 대상에서 실행되는 임베디드 애플리케이션을 제어할 수도 있다. HTML 기반의 데이터 시각화 영역은 고도로 확장 가능하다. 사용자는 제어창에 Active-X 기반의 계측 게이지, 다이얼, 노브, 슬라이더를 배치하여 원하는 만큼 복잡하거나 또는 명확한 맞춤형 비주얼 대시보드를 만들 수 있다.
FSLESL(프리스케일 임베디드 소프트웨어 라이브러리)는 첨단 모터 제어 애플리케이션의 개발을 목표로 하는 폭넓은 알고리즘 그룹이다. GFLIB(일반 함수 라이브러리)는 산술, 삼각법, 룩업 테이블(look-up table), 제어 함수 등을 제공한다. 위 소프트웨어 모듈은 기본적인 빌딩 블록이다. MCLIB (모터 제어 라이브러리)는 디지털 제어 모터 드라이브를 개발할 수 있는 벡터 변조, 변환, 특정 모터 관련 함수를 다룬다. GDFLIB (일반 디지털 필터 라이브러리)는 신호 조정용 필터 함수를 제공한다. ACLIB(첨단 제어 라이브러리)는 영구자석 동기 모터의 센서리스 제어에 핵심적인 함수를 다룬다.



프리스케일 임베디드 소프트웨어 라이브러리에 포함된 알고리즘은 고도로 최적화됐으며, 수십 만 가지 테스트 벡터를 통해 철저히 테스트되었고, 완벽한 설명이 제공된다. 또한 C 호출 가능 함수 인터페이스로 구현돼 있으므로 사용자가 사용하기 쉽다. 이 라이브러리는 현재 56800E/EX, ColdFire짋V1, Kinetis짋, Power Architecture짋 플랫폼에서 사용할 수 있다. 이 알고리즘은 간단한 애플리케이션을 개발하는 초심자뿐 아니라, 모터 제어, 전원 변환 및 기타 실시간 임베디드 애플리케이션 등 복잡한 실시간 동역학 시스템을 개발하는 전문가들의 개발시간을 크게 단축시켜 준다.
결론적으로, 첨단 센서리스 알고리즘으로 제어되는 3상 모터는 가전기기를 포함하여 광범위한 드라이브에 사용될 것이다. 프리스케일은 애플리케이션에 이와 같이 복잡한 제어 알고리즘을 구현하며 신속하고 효율적으로 요구된 성능을 달성할 수 있는 포괄적인 전용 디지털 시그널 컨트롤러 제품군, 풍부한 툴 체인, 필수적인 노하우를 제공한다. 

<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>



  • 100자평 쓰기
  • 로그인

세미나/교육/전시
TOP