초보자를 위한 FOC(필드 지향 제어) 설명

무브러시 모터 FOC 제어

FOC(Field Oriented Control) 알고리즘을 사용하면 다양한 방식으로 무브러시 모터의 회전을 제어할 수 있습니다. 이는 로봇 공학에도 널리 적용됩니다.

FOC 시스템

FOC 시스템은 컨트롤러가 센서로부터 전류 및 각도 신호를 수신한 다음 우리가 제공한 명령에 따라 필요한 모터 속도, 위치 및 토크를 계산하는 폐쇄 루프 시스템입니다. 그런 다음 이러한 계산을 해당 전기 신호로 변환하여 모터의 회전을 제어합니다. 이 시스템의 핵심은 FOC 알고리즘인 계산 방법입니다. FOC 알고리즘이 무엇을 계산하는지 이해하려면 먼저 무브러시 모터의 제어 원리를 살펴봐야 합니다.

무브러시 모터의 내부 구조

아래 다이어그램에서 보듯이 모터 주변에는 3개의 코일이 배치되어 있으며, 외부의 6개 MOSFET에 연결되어 있습니다. 작동 중일 때 코일은 고정되어 있으며 스테이터라고 합니다. 가운데에는 로터라고 하는 회전 자석이 있습니다.

두 개의 MOSFET이 켜지면 전류가 두 코일로 흘러 자기장을 생성합니다. 두 자기장이 겹치면 로터가 회전하도록 하는 자기장을 생성합니다. 로터가 자기장과 겹치면 컨트롤러가 다른 MOSFET으로 전환하여 로터를 계속 회전시킵니다.

또한 세 개의 MOSFET을 모두 켜서 전류가 세 개의 코일 모두로 흐르게 하여 세 개의 자기장을 생성하고, 이 자기장이 합쳐져 두 개만 있는 것보다 더 강한 자기장을 생성합니다. 아래는 여섯 가지 다른 자기장을 생성할 수 있는 다양한 스위칭 조합의 다이어그램입니다. 이러한 자기장 사이를 지속적으로 스위칭함으로써 로터가 회전하도록 구동할 수 있습니다.

이것이 브러시리스 모터 제어의 기본 원리입니다.

정확하고 제어 가능한 자기장 생성

기본 무브러시 모터 제어는 기본적으로 모터를 회전시켜 기존의 무브러시 모터를 대체합니다. 예를 들어, 원격 조종 항공기나 전기 헤어드라이어에 사용되는 무브러시 모터 컨트롤러는 이 원리를 사용합니다. 그러나 일부 제품은 모터를 회전시키는 것 이상을 요구합니다. 전기 칫솔과 같이 정밀한 모터 제어가 필요한 제품은 더 정밀한 제어가 필요합니다. 이 정밀한 제어에는 모터가 어떤 속도로든 회전하고, 어떤 위치에도 머물고, 토크를 조정할 수 있도록 하는 것이 포함됩니다. 이것이 FOC 알고리즘이 해결하는 문제입니다.

FOC 알고리즘은 어떻게 정밀한 제어를 달성하는가?

모든 방향의 자기장 제어

우리는 어떤 방향으로든 자기장을 생성해야 합니다. 앞서 언급했듯이, MOSFET을 스위칭하여 생성되는 여섯 가지 다른 자기장이 있습니다. 이제 V1과 V2 사이를 0.5ms 동안 앞뒤로 스위칭합니다. 이 과정을 반복하면 로터가 V1과 V2의 자기장 사이를 앞뒤로 진동합니다. 그러나 자기장의 스위칭 속도가 로터의 응답 시간을 넘어 충분히 빠르면 로터는 중앙에 머물러 움직이지 않아 효과적으로 새로운 자기장을 생성합니다.

이 시점에서 시간 주기에서 초기 자기장의 시간 비율을 조정함으로써 이 범위 내의 모든 자기장을 합성할 수 있습니다. 동일한 방법을 인접한 자기장 간에 전환하는 데 적용하여 360° 범위 내의 모든 방향으로 자기장을 생성할 수 있습니다.

자기장 강도 제어

이 시점에서 우리는 모든 방향으로 자기장을 생성했습니다. 또한 자기장의 강도를 제어해야 합니다. 방법은 간단합니다. 동일한 정렬의 세 MOSFET이 켜지면 코일에는 전압이 없지만 전류가 있습니다. 코일은 유도성이고 인덕턴스는 전류가 갑자기 변하는 것을 방지하는 연속성 효과가 있기 때문입니다. 따라서 전류는 즉시 0으로 떨어지지 않고 특정 속도로만 감소할 수 있습니다. 이것이 제로 벡터가 6개의 MOSFET을 모두 닫는 대신 항상 세 개의 상단 MOSFET 또는 세 개의 하단 MOSFET을 켜야 하는 이유입니다. 시간 주기 내에 제로 자기장 상태를 삽입하고 시간 비율을 조정하면 자기장의 강도를 원하는 대로 제어할 수 있습니다. 따라서 이제 방향과 강도를 제어할 수 있는 자기장을 만들었습니다.

로터 및 자기장 정렬

이 시점에서, 우리는 단순히 로터가 회전하기를 원하는 방향으로 자기장을 생성하면 된다고 생각할 수 있지만, 그렇게 간단하지는 않습니다. 먼저 각도 센서를 사용하여 로터의 현재 위치를 감지한 다음 항상 해당 방향과 수직인 자기장을 생성해야 합니다. 이 자기장은 로터를 끌어당겨 그 방향으로 이동합니다. 로터가 약간이라도 움직이면 자기장은 수직 정렬을 유지하기 위해 로터를 따라갑니다. 이는 이 구성에서 생성되는 힘이 가장 강하고 효율이 가장 높기 때문입니다.

이 아이디어를 얻은 후, 조정해야 할 유일한 매개변수는 자기장 강도입니다. 자기장 강도를 제어함으로써 무브러시 모터의 위치, 속도, 토크를 제어할 수 있습니다. 예를 들어, 모터를 더 빨리 회전시키고 싶다면 자기장 강도를 높입니다. 모터를 멈추고 싶다면 음의 자기장을 적용하여 반대 힘을 생성합니다. 로터가 멈추면 자기장 강도를 0으로 설정할 수 있습니다. 로터의 위치를 ​​바꾸는 외부 교란이 있는 경우 자기장을 적용하여 로터를 원래대로 되돌릴 수 있습니다. 이것이 FOC의 기초입니다.

폐쇄 루프 시스템

완전한 FOC 알고리즘은 폐쇄 루프 시스템입니다. 앞서 언급한 자기장 강도는 센서의 데이터와 PID 계산을 통해 우리가 내리는 명령을 사용하여 계산됩니다. 실제로 우리는 코일의 전류가 자기장과 밀접한 관련이 있기 때문에 전류를 사용하여 자기장을 대체합니다. 방향이 정렬되고 크기가 비례합니다. 또한 전류 센서를 사용하면 더 편리합니다. 따라서 실제 FOC 토폴로지 구조에는 피드백을 위한 전류 루프, 속도 루프 및 위치 루프가 포함됩니다. 시스템은 입력 제어 명령과 센서 데이터를 기반으로 MOSFET 스위치를 제어하는 ​​방법을 결정합니다.

하나의 코멘트

  1. Lothar 2026-02-01 at pm5:37 - 댓글

    Zur 직관적인 Erfassung der Funktionsweise von FOC Motoren ziehe ich gerne digitale PWM Lautsprecher heran, deren Membran mittels PWM und hoher Frequenz entlang der gewünschten Bahn, welche dem Audiosignal am besten entspricht, geführt wird. Jetzt ersetze ich mental die Membran gegen den Rotor des Motors, und voila, akkurate Steuerung und Positionierung dies.

코멘트를 남겨주세요

관련 게시물