'BEMF'에 해당되는 글 9건

  1. 2015.12.23 토크 제어와 자속 기준 제어(FOC)
  2. 2015.12.12 모터의 토크 발생원리 2
  3. 2015.12.12 BLDC와 PMSM의 구조
  4. 2015.12.10 BLDC와 PMSM의 토크
  5. 2015.12.09 BLDC vs. PMSM
  6. 2014.04.07 Wii-ESC에 대한 FAQ
  7. 2014.04.04 Wii-ESC 프로젝트의 소개입니다
  8. 2014.04.01 BLDC모터란?
  9. 2014.03.13 Wii-ESC란?


유도 전동기나 PMSM을 포함한 BLDC 모터의 토크(Torque)는 회전자인 영구 자석의 회전으로 인한 역기전력(BEMF)과 고정자에 흐르는 3상 전류에 비례합니다. 여기서 역기전력은 시간에 따른 쇄교 자속의 변화율로 고정자 권선에 의해서 발생하는 자속과 회전자 영구 자석에 의해서 생성되는 자속이 쇄교(직교)하는 시점에서 최대가 됩니다. 모터에서 생성되는 토크는 다음과 같습니다.



여기서 Te는 electromagnetic 토크를 의미하고 K는 관련상수이며, λ는 회전자에 의한 쇄교 자속이고 전류 i와 마찬가지고 3상의 net한 공간 벡터입니다.



토크는 역기전력에 비례하므로 방향은 플레밍(Fleming)의 오른손 법칙을 따르고 벡터의 외적(cross product)으로 공간 벡터 λ와 i에 의해서 형성되는 위 그림과 같이 면적과 같습니다. 만일 물리적 3상 좌표계에서 보다 직관적인 2축 직교좌표계로 변환을 하면 다음과 같습니다.



공간 벡터 λ와 i를 d-q 좌표축에 투영하면 두 점 (λd, λq), (id, iq)을 구할 수 있고, 원점과 함께 삼각형의 면적을 구하는 헤론(Heron)의 공식을 적용하면 다음과 같이 정리할 수 있습니다.



만일 자속을 나타내는 공간 벡터 λ가 d축과 일치하고, 자속의 시정수가 전류의 시정수보다 훨씬 커서 순시적으로 자속이 일정하다고 가정하면 이 때 λq=0가 되어 토크는 다음과 같이 간략화됩니다.



이는 토크를 3상 전류 공간 벡터 i의 q축 성분만을 조절하여 제어할 수 있음을 의미합니다. 즉, 자속을 기준하여 3상 공간상에서 전류의 크기와 방향을 제어하는 기법을 자속 기준 제어(Field Oriented Control; FOC) 혹은 벡터 제어라고 부릅니다.


위와 같은 제어를 위해서는 예를 들어 3상의 전류 공간 벡터를 직교하는 2차원 좌표계로 변환할 필요가 있으며, 회전자의 위치에 따라서 지속적인 토크 발생을 위해 d축을 회전자의 자속의 방향과 일치시킬 필요가 있습니다. 전자는 Clarke 변환(α-β 좌표계)이고 후자를 Park 변환(d-q 좌표계)이라고 말하며 이에 역변환(inverse transformation)도 필요하게 됩니다.





'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

릴럭턴스 토크  (1) 2016.01.27
Clarke vs. Park 변환  (4) 2015.12.24
모터의 회전자계  (1) 2015.12.17
모터의 토크 발생원리  (2) 2015.12.12
BLDC와 PMSM의 구조  (0) 2015.12.12
Posted by Nature & Life


다음 그림은 DC 모터의 토크 발생 원리를 설명하기 위한 개념도입니다.



위 그림과 같이 DC 모터에 전압 v를 인가하여 권선에 전류 i가 흐를 경우, 발생할 토크(회전력)는 위와 같이 플레밍(Fleming)의 왼손 법칙에 의하여 다음과 같습니다. 여기서 2는 회전축을 중심으로 같은 힘 F가 토크에 기여하기 때문이며 F는 로렌쯔(Lorentz)의 힘입니다.

τ = 2rF = 2ri(l x B)

그러므로 선분 ad와 bc는 위치에 따라서 힘이 작용할 수는 있지만 토크에는 기여하지 못하고, 선분 ab와 cd에서만 회전에 기여하는 토크가 발생합니다. 한편 페러데이(Faraday) 법칙에 의해서 기전력(electromagnet force) e는 다음과 같습니다. 여기서 속도 v = dx/dt = rdθ/dt = rω이고 ω는 각속도입니다. 





e = -dψ/dt = -BdA/dt = -Bldx/dt = -Blv = -Blrω

권선 길이 l 성분은 자속 밀도 B와 수직하므로 유도 기전력을 사용하여 토크의 크기를 다시 나타내면 다음과 같습니다. 결국 회전자를 영구 자석으로 고려하면 고정자 권선에 걸리는 역기전력은 오직 각속도에 비례함을 알 수 있습니다.

τ = 2rF = 2rilB = 2/ωei

따라서 토크는 고정자 권선에 흐르는 전류에 비례하고, 회전자의 회전으로 인해 고정자 권선에 유기된 역기전력에 비례함을 나타냅니다.


교류 모터의 원리


영구 자석이 회전하는 BLDC 모터나 PMSM를 고려하면 자속 밀도 B가 변화하므로 토크는 다음과 같이 쓸 수 있습니다. 

τ = 2rilBsinθ

고정자 권선에 i라는 전류가 흐르면, 권선이 이루는 면에 수직으로 발생하는 자속 밀도 Bs의 크기는 암페어(Ampere) 법칙에 의해서 전류 i에 비례하므로 Bs = Gi라 하면 다음과 같이 됩니다. 단, G는 루프의 형태와 관련된 상수입니다.

τ = 2rilBsinθ = 2rl/G·Bs·Bsinθ

여기서 k = 2rl/G라 하여 기기의 구조에 의존하는 값으로 정의하면 일반적인 토크는 다음과 같이 나타낼 수 있습니다.

τ = k·Bs·Bsinθ = k·(Bs×B)

그러므로 토크는 권선에 의한 자속 밀도와 영구 자석에 의한 자속 밀도의 방향이 쇄교(orthogonal, perpendicular)할 때 최대가 되고 같을 때 0이 됩니다. 이는 두 자계의 방향이 서로 일치하려는 작용에 의해 토크가 발생하고 회전자의 자계가 고정자의 자계와 일치하는 방향으로 토크가 발생한다는 것입니다. 위 그림에서 θ가 0도인 경우는 회전 토크에 기여하지 못하는 것으로 다른 말로 쇄교하는 자속 밀도가 시간에 따라 변화가 없어 역기전력은 0이 되어 토크가 없다고 의미와 같습니다.


다음 그림에서 고정자 b에 전류를 인가하면 영구 자석의 N 혹은 S극이 b상으로 정렬되고 이때 힘(인력) F는 최대이지만 회전자의 회전에는 전혀 기여하지 않게 됩니다. 소위 고정자의 자계가 회전한다면, 회전자에서 고정자 자계를 따라가기 위해 토크가 계속 발생하는 것이 모터의 회전 원리라는 것입니다.




위의 원리는 회전자인 영구 자석 대신에 이를 권선으로 대치한 유도(Induced) 모터에도 같은 원리가 적용되고 요약하면 다음과 같습니다. 여기서 k'에 관련된 상수입니다.

τ = k·(Bs×B) = k'/ω·e·i

      • [abc 상(좌표계) 관점에서] 토크는 고정자 권선에 의한 자속 밀도와 회전자 영구 자석에 의한 자속 밀도의 방향이 쇄교(90˚)할 때 최대가 됩니다.

      • [시간의 관점에서] 토크는 고정자 권선에 전류가 클수록 그리고 역기전력이 클수록 그리고 회전 속도가 작을수록 커지게 됩니다. 


이는 DC 모터의 정상상태 방정식 V = Ri + Ldi/dt + e으로부터 고정자에 일정한 전류 i가 인가된 정상상태에서 전류를 증가시키면 토크가 증가하여 회전 속도가 증가하지만 이로 인해 역기전력이 증가하고 상대적으로 고정자에 권선에 걸리는 전압의 감소는 전류의 감소로 이어저 결국 주어진 전류에 토크(회전 속도)는 균형을 이루게 됩니다.


요약하면, 회전하는 모터의 고정자를 손으로 정지시키면 고정자의 권선에 흐르는 전류가 증가하여 토크가 증가하는데, 이는 회전하려는 힘이 스스로 증가하려는 것으로 전형적인 DC 모터의 특성이며, PMSM을 포함하는 BLDC 모터를 '-DC'로 표현하는 것은 DC 모터의 특성을 닮았기 때문입니다.


3상(abc)의 고정자 권선을 가지는 유도 전동기나 PMSM을 포함한 BLDC 모터를 최대의 토크를 유지하며 구동하기 위해서는 abc 좌표계에서 회전자에서 발생하는 자속 밀도가 고정자에서 발생하는 자속 밀도와 항상 쇄교(90˚)하도록 해야 하며, 이는 타임 도메인(시변 좌표계)에서 회전자의 회전으로 인해 고정자 권선에 유기되는 역기전력과 고정자 권선에 인가되는 전류가 동상(in phase)이 되도록 해야 한다는 의미입니다.



※ 플레밍(Fleming)의 법칙


유도기전력의 방향


전기가 흐르는 도체가 받는 힘





'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

토크 제어와 자속 기준 제어(FOC)  (0) 2015.12.23
모터의 회전자계  (1) 2015.12.17
BLDC와 PMSM의 구조  (0) 2015.12.12
BLDC와 PMSM의 토크  (0) 2015.12.10
BLDC vs. PMSM  (0) 2015.12.09
Posted by Nature & Life


다양한 형태의 모터 구조입니다. PMSM은 BLDCM에 비해 각 상에 대해서 슬롯(slot)을 여러 개로 분산하여 권선을 감은 것을 알 수 있습니다. 따라서 BLDCM 형태를 집중권(concentrated winding)이라고 말하고 PMSM 형태를 분산권(distributed winding)이라 부릅니다.


여러 가지 형태의 모터 내부 구조


일반적으로 분산권은 여러 개로 나뉘어진 슬롯의 형태로 집중권에 비해서 유기된 역기전력 자체의 크기는 감소하지만, 자기 저항이 균일하여 즉, 역기전력의 파형이 정현파에 가까워 토크를 매끄럽게 하고, 권선의 누설 리액턴스(reactance) 감소시키며 열 방산 효과가 좋아 과열을 방지할 수 있다는 것입니다.

PMSM은 회전자를 돌리면서 3상에서 측정한 역기전력(BEMF)의 파형을 보면 BLDCM과 달리 분산된 다수 잇접 슬롯들의 자기장(magnetic field) 간섭으로 정현파(sinusoidal)형의 유기된 역기전력(BEMF)을 갖게 됩니다.


게다가 PMSM은 고정자가 1회전하는 동안 최종 자속 밀도는 일정한 착자 방향을 가질 수 있으나 BLDC 모터의 경우에는 고정자 슬롯간의 자기장의 간섭이 적어 동일한 방향의 착자 방향을 가질 수 없고 따라서 쇄교하는 고정자의 자속 밀도를 감소시키는 결과로 토크도 감소한다는 것입니다. 



고정자 권선의 결선 방법으로는 Star 결선(Y 결선)과 delta 결선(△ 결선) 형태가 있는데, 각 상간에 인가되는 유효 전압은 delta 결선이 유리하지만, BLDC 모터에서는 floating 상의 역기전력(BEMF) 관측의 용이성과, PMSM에서 오직 2상의 전류를 측정하여 회전자의 위치을 파악하기 위해 각 상의 전류의 합이 0이 되는 Star 결선이 구동시스템의 자원을 줄일 수 있기 때문에 Star 결선 방법만을 고려합니다.





'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

모터의 회전자계  (1) 2015.12.17
모터의 토크 발생원리  (2) 2015.12.12
BLDC와 PMSM의 토크  (0) 2015.12.10
BLDC vs. PMSM  (0) 2015.12.09
BLDC의 장단점  (0) 2014.04.03
Posted by Nature & Life


BLDC 모터의 경우에는 전기각의 매 60도 간격으로 구형파 파형의 전류를 한번에 2개 위상에 가하여 구동하며, 나머지 한 개의 위상은 전력을 가하지 않은 floating 상태로 역기전력(Back EMF; BEMF)를 관측하고 이를 이용하여 6-step commutation을 실시합니다.


따라서 BLDC 모터의 구동은 근본적으로 토크 리플(Torque ripple)이 발생할 수 밖에 없으며 그러므로 시스템에서 토크 리플이나 음향 노이즈가 큰 문제가 되지 않고 감당할 수 있는 수준일 때 사용된다는 것입니다. 하지만 PMSM은 사인파(정현파)형 전류를 3개 위상에 모두 동시적으로 가하여 구동하여, 토크가 매끄럽고 음향 노이즈가 낮다는 것입니다.


이러한 Brushless 모터의 구동을 위해서는 고정자에서 회전 자기장을 만들어 낼 수 있도록 외부에서 제어를 해주어야 하며, 고정자 코일에 토크가 최대가 되도록 전류를 공급하기 위해서는 회전자의 현재 위치에 대한 정보가 반드시 필요하게 됩니다. 이를 위해서 센서나 광학 엔코더(optical encoder)를 사용하는데 이는 가격 상승의 원인이며 이러한 센서들이 다양한 드론(Drone)의 비행 환경에서 감도가 떨어지고 주변 시스템의 잡음 등의 영향으로 센서가 없는 센서리스(Sensorless) 모터를 채택한다는 것입니다.


그러므로 BLDC 모터의 경우에는 회전자의 위치를 파악하기 위해서 floating 상에서 유기된 역기전력(BEMF)이 '0'을 교차하는 순간(Zero-Crossing Point)을 감지하여 회전자와 주어진 고정자 권선 간의 상대적 위치에 대한 정보을 알아내어 위상 정류를 동기화시키는 간단한 방법을 사용합니다. 여기서 역기전력이 '0'인 순간은 자속의 절대값이 최대인 순간을 포착하는 것과 같습니다.



반면에 PMSM의 경우에는 2상의 전류를 감지하여 모터의 복잡한 다변수 비선형 상태 방정식을 이산화(digitized)하여 수치해석적으로 실시간 계산을 통해 회전자 위치를 지속적으로 얻어 반영하는 구조로, 회전자의 토크가 최대가 되도록 고정자 3상의 전류를 공급하게 됩니다. 따라서 PMSM의 센서리스 제어를 위해서는 BLDC와는 달리 고성능의 ADC와 32-bit 이상의 빠른 속도, 때로는 부동 소수점 연산장치(Floating Point Unit; FPU)를 갖는 마이크로컨트롤러(MCU)가 필요하게 된다는 것입니다.



위 그림에서 좌측은 사다리꼴 파형의 역기전력을 갖는 BLDC 모터와 우측은 정현파형의 역기전력을 갖는 PMSM의 각 시간에 따른 토크의 변화를 나타냅니다. 각 상의 토크 T는 역기전력 e와 전류의 i에 곱에 비례하므로 전체 토크 Te = Ta + Tb + Tc 는 이론적으로 일정하게 보입니다. 하지만 실제로는 BLDC 모터의 경우 사다리꼴의 윗변의 폭이 좁아져 토크는 리플이 생기게 됩니다.




'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

모터의 토크 발생원리  (2) 2015.12.12
BLDC와 PMSM의 구조  (0) 2015.12.12
BLDC vs. PMSM  (0) 2015.12.09
BLDC의 장단점  (0) 2014.04.03
BLDC모터란?  (0) 2014.04.01
Posted by Nature & Life


Drone의 기체에 추력을 내기 위해서 사용되는 모터는 그동안 BLDC(Brushless Direct Current) 모터가 주류를 이루었지만, 후술되는 장점으로 인하여 최근에는 PMSM(Permanent Magnet Synchronous Motor)으로 교체되는 추세에 있습니다. BLDC 모터와 PMSM 두 모터는 회전자(rotator)가 영구자석(permanent magnet)으로 3상인 기본적인 구조는 유사하며, 주된 차이는 모터가 회전시 각각 역기전력(Back EMF)이 사다리꼴파(Trapzoidal)와 정현파(Sinusoidal)라는 것입니다.


넓은 의미에서 BLDC 모터(BLDCM)는 PMSM을 포함하며 일반적인 DC 모터와의 장점은 이전글인 'BLDC의 장단점'을 참조하시기 바랍니다. 모터의 회전원리는 쉽게 말해 영구자석으로 이루진 회전자는 전류를 공급하는 3상의 권선이 감겨져 있는 고정자(stator)에 전원을 회전자계가 발생하도록 적절히 공급하고, 이때 회전자는 고정자의 회전자계와 동기화(Syncronous)되어 회전하게 된다는 것입니다. 


이와 같이 전원을 공급하는 경우, BLDC는 6-step commutation이라는 전기각의 매 60도 간격으로 전류의 크기와 방향을 바꾸는 스칼라 제어(Scalar 제어)를 사용하는 반변에, PMSM에서는 공간벡터제어(Space Vector Control)라는 기법으로 전체 사이클에 대해서 전류의 크기와 방향을 제어하여, 토크(torque) 직접제어가 가능하고, 속도제어, 위치제어 등에서 탁월한 성능을 발휘한다는 것입니다. FOC(Field-Oriented Control)로 알려진 공간벡터제어(Space Vector Control) 기법으로 구동되는 PMSM을 BLAC(Brushless AC)로 부르기도 합니다.


다음은 BLDC 모터와 PMSM의 차이입니다.


 

BLDC

PMSM

권선형태

대부분 집중권(concentrating winding)

각 상을 분산시킨(pole 수를 증가시킨) 분산권(distributed winding)

용도

고토크, 고속도 제어

고효율, [위치제어] 정밀 서보

 인버터 효율

High

Low

모터 효율

Low

High

모터 비용

Low

Medium

역기전력 & 전류

사다리꼴파 & 구형파

모두 정현파

제어방식

6-step trapzoidal 방식의 비교적 간편한 스칼라 제어(scalar control)

 - 전류 제어 및 토크 최적화 불가능

 - 느린 응답

 - 저속 및 고속에서 토크 전달이 비효율적

 - 낮은 토크에서 비효율적

 - 저속에서 뛰어나지만 내부 손실이 많다

 - 저속에서 개방제어로 큰 부하에서 가속이 어렵다

 - 고속에서 제어가 상대적으로 어렵다

 - 6-step 방식으로 토크리플(맥동 토크) 발생

 - 가청 소음(잡음)이 있다

 - 발열이 있어 영구자석이 자성을 잃으면 토크가 감소한다

 - 분배 와인딩에서 작동하지 않음

 - 낮은 비용

연속 3상 정현파의 비교적 복잡한 벡터 제어(vector control) 혹은 FOC(Field-Oriented Control)

 - 시작시 최대 토크

 - 전류로 제어

 - 속도와 토크의 독립적인 제어

 - 최대 토크와 속도 범위에서 최적의 제어 가능

 - 높은 토크에서 비교적 높은 효율

 - set point나 연속 부하 변화에 부드럽고 상대적으로 빨리 반응하고 토크, 속도, 위치를 맟힐 수 있다

 - 상대적으로 높은 최대 가능 속도

 - 120도 위상차를 갖는 3상의 정현파의 합은 동일하므로 토크는 일정

 - 연속 정현파 곡선제어에 기반하여 잡음이 적다

 - 저비용 분배 와인딩에서 작동

 - 전기적인 브레이크와 홀드

 - 낮은 발열

 - 보다 효율적인 전력 사용

 - 비교적 높은 비용

 - 모터 설정이 복잡하다

Sensorless Drive

Low to Medium

High




6-step보다 많은 상태를 이용해 위치를 제어할수록 위치 정밀성과 알고리즘 복잡성도 높아집니다



'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

모터의 토크 발생원리  (2) 2015.12.12
BLDC와 PMSM의 구조  (0) 2015.12.12
BLDC와 PMSM의 토크  (0) 2015.12.10
BLDC의 장단점  (0) 2014.04.03
BLDC모터란?  (0) 2014.04.01
Posted by Nature & Life
Radio Control/ESC2014. 4. 7. 21:03

 

 

다음은 Wii-ESC에 대한 FAQ입니다.

http://code.google.com/p/wii-esc/wiki/WiiESCv20FAQ

 

Introduction

This page is collection of answers from different forums and threads. Main intention is to collect knowelege base here and than transform it to proper documentation later on.

이 페이지는 다른 포럼이나 글들에서 대답을 정리한 것입니다. 주된 목적은 여기에 기본 지식을 정리하고 나중에 적절한 문서 형태로 전환할 것입니다.

 

Q: What is the difference (meaning of) RCP_MAX and RCP_FULL?

RCP_MAX와 RCP_FULL의 [의미상] 차이는 무엇인지요?

 

RCP_MIN/RCP_MAX - valid range, everything outside is rejected ( 유효한 범위, 이외의 모든 것은 무시됩니다)
RCP_START - where to start (with min. power) (최소 파워인 시작 지점)
RCP_FULL - where to have full power (최대 파워를 갖는 지점)
RCP_DEADBAND - deadband for startup (초기의 데드밴드)

 

Q: Do you have a link to compile/flashing instructions for v2

v2에 대한 컴파일 및 프로그래밍 설명서에 대한 링크가 있는지요?

 

The easiest way to build (빌드하기에 가장 쉬운 방법) :

Download Code::Blocks (in downloads) (CodeBlocks을 다운로드합니다)
Open project wii-esc-ng.cbp (wii-esc-ng.cbp를 'Open project'로 열기합니다)
Setup path to avr-gcc in Code::Blocks (CodeBlocks에 avr-gcc 경로를 설정합니다)

 

Q: I did notice on an MT3506 and a Turnigy/Keda 2213 1050KV motor that the throttle seems to have some bumps, with either normal or complementary PWM.

MT3506과 Turnigy/Keda 2213 1050KV 모터에서 정상 모드 혹은 complementary PWM 모드에서 스로틀에 'bump' 현상을 있는 것으로 압니다.

 

 

 

I would guess you have BEMF filter caps still in place. It does not like them any more

여러분의 ESC에 BEMF 신호의 필터링을 위한 cap이 부착되어 있는 것으로 압니다. 그 cap을 제거해야 합니다.

 

Q: What is Sigma-Delta modulation and how such resolution is archived with /8 timer pre-scaler?

무엇이 Sigma-Delta 변조이며 어떻게 그러한 분해능이 8 timer pre-scaler 없이 구현될 수 있는지요?

 

Generally concept is simple: http://en.wikipedia.org/wiki/Pulse-density_modulation. So, there are 1 bit first order SDM. Due the fact that it has integrator, it is not necessary to sample it precisely. It even benefitial to add some noise to the sampling. So SDM generation scheduled as Idle task using prothothreads, without any timer or interrupt. This also allows to naturally sync SDM generation and Analogue comparator sampling. Qantizer value can be any as soon as the integrator not overflowing. So currently all measured range passed directly to the SDM without any transformation, which is ~4000 points with extended range, 1600 with standard one.

일반적인 개념은 간단합니다: http://en.wikipedia.org/wiki/Pulse-density_modulation. 1-bit 1st order SDM입니다. 이것은 적분기를 가지고 있기 때문에 그것을 정밀하게 샘플링할 필요가 없습니다. 이것은 결국 샘플링 노이즈를 추가하는 격입니다. 그래서 prothothreads를 사용하여 Idle task로 어떤 타이머나 인터럽트 없이 SDM 생성이 스케줄링합니다. 이것은 또한 동기화된 SDM 생성과 아날로그 비교기 샘플링을 허용합니다. 양자화 값은 overflow가 되지 않은 어떤 값이 될 수 있습니다. 그러므로 현재 모든 측정된 범위는 어떤 변환없이 SDM으로 곧바로 전달되고 표준의 1600이 아닌 약 4000 포인트의 확장된 범위를 갖습니다.

 

Benefits of this approach :

  • Lower switching losses as FET's have enough time to properly open/close (currently min on/off ~4us) (FET가 적절히 열리고 닫히기 위한 충분한 시간(현재 최소 ~4us의 on/off 시간)을 가질 때 낮은 스위칭 손실을 갖습니다)

  • More linear power curve by the same reason. (동일한 이유로 좀 더 선형적인 파워 커브를 갖습니다)

  • Lower noise in working range. Yes, the base frequency drops to 1khz at 99.99% but it is not really critical as commutation noises are much higher there. (동작영역에서 잡음 수준이 낮습니다. 기본 주파수는 99.99%에서 1khz인데 commutation 잡음이 휠씬 높기 때문에 실제로 중요하지는 않습니다)

 

Q: What is done to increase dynamic response of the system?

무엇이 시스템의 동적 응답 특성을 증가시켰나요?

 

Yes I have 7.5° blanking time and 2 taps FIR instead of IIR for timing. 2 taps FIR still needed because ZC detection in LH and HL transitions is not symmetrical. (7.5° blanking time과 IIR 대신에 2-tap FIR 필터를 가지며 2-tap FIR 필터는 LH 그리고 HL 천이에서 ZC 감지가 대칭적이지 않기 때문에 여전히 필요합니다)

 

Q: How Can I activate complimentary PWM during compilation?

어떻게 컴파일 동안에 complimentary PWM을 적용할 수 있는지요?

 

Add "#define COMP_PWM" in config.h (config.h에서 "#define COMP_PWM"을 추가합니다)

 

Q: hi ziss.. im interested in wii-esc fws.. and would be interested to know what is the downside of wii-esc?

무엇이 Wii-ESC 펌웨어의 단점인지요?

 

Bright side (장점):

1. up to 4000 steps of resolution.
2. low noise with comparatively high efficiency (Sigma-delta modulator, instead of fixed frequency PWM)
3. linear power response. (completely no "bump" at 100%)
4. Sync recovery.
5. Safe stall detection.
6. Complimentary PWM support

 

Dark side (단점):
1. no EPA, throttle endpoints are fixed.
2. no reverse
3. probably lower max RPM.
4. require removing BEMF capacitors.

 

Q: What is better for BS20A wii-esc Complementary or Low side PWM?

BS20A ESC에서 wii-esc 펌웨어의 Complementary PWM과 Low side PWM 중에 어떤 것이 좋은지요?

 

Short answer: Complimentary PWM allows faster rotor deceleration, putting energy back to the battery. (Complimentary PWM은 에너지를 밧데리 다시 보내 빠른 로터 감속이 가능합니다)

Long answer: This has an interesting effect of having the motor speed more closely and more quickly track the duty cycle even without any active braking or closed-loop controlling. (이것은 모터 속도가 어떤 브레이크나 폐회로 제어가 없을 때 조차도 duty 사이클을 좀 더 근접하고 빠르게 따라가는 흥미있는 효과를 갖습니다)

 

 

'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC 프로젝트의 소개입니다  (0) 2014.04.04
Wii-ESC란?  (0) 2014.03.13
Posted by Nature & Life
Radio Control/ESC2014. 4. 4. 08:49

 

 

 

About

 

This firmware designed as a replacement for many commercially available ESC designs based on the AVR MCU. It implements scalar sensor less method to drive Brushless Motor by detecting BEMF zero-crossing instants. The goal of this project is to create firmware most suitable to use in multi-rotors, using cheap and commercially available hardware.

 

이 펌웨어는 AVR 마이크로콘트롤러(MCU)에 기반을 둔 많은 상업용 ESC의 대체용으로 설계되었습니다. 이것은 BEMF zero-cross 순간을 감지하여 Brushless 모터를 구동하는 Sensorless 방법을 구현하였습니다. 이 프로젝트의 목표는 저렴하고 상업적으로 가능한 멀티로터(Multi-rotor) 기체를 사용하는 데에 가장 적당한 펨웨어를 개발하는 것입니다.

 

Features:

 

  • Fastest possible power response.

  • Up to 4000 steps of resolution.

  • Low noise with comparatively high efficiency (Sigma-delta modulator, instead of fixed frequency PWM)

  • Linear power response. (completely no "bump" at 100%)

  • Jitter-free input PWM measurement without harware assisted input capture.

  • Accepts any PWM update rate

  • Sync recovery.

  • Safe stall detection.

  • Complimentary PWM support (AKA: active freewheeling, active rectification)

  • Fixed throttle end-points. No need to calibrate. (since version 2.0.9 it is also possible to calibrate end-points using stick programming procedure)

  • Automatic oscillator calibration.
    Enhanced PPM filter, preventing accidental motor startup (when FC is rebooted, for example)

  • Configurable. The configuration parameters are stored in EEPROM. The Wii-ESC flash tool has visual parameters editor. No more stick programming.

  • Modularity. The high-level implementation is separated from actual hardware with HAL layer.

  • Portability. The firmware is written in C++, which means it can be easilly ported to different platform.

 

Supported Hardware:

 

For complete mapping between targets and real hardware, it is possible to use RapidESC Database. Currently tested targets:

 

펌웨어와 실제 하드웨어 사이에 완전한 매핑을 위하여 RapidESC 데이타베이스를 사용하는 것이 가능합니다. 현재 검증된 펨웨어는 다음과 같습니다.

 

  • bs.hex

  • bs_nfet.hex

  • bs40a.hex

  • kda.hex

  • qynx.hex

  • rb50a.hex

  • rct30nfs.hex

  • rct45nfs.hex

  • tgy.hex

  • tp.hex

  • tp_nfet.hex

 

다음은 아래의 상업용 HobbyKing BlueSeries 40A(HK40A-bs) ESC에서 APC prop.을 장착하고 원래 출고당시 제품과 SimonK와 Wii-ESC 펌웨어를 탑재하였을 때의 추력 등의 특성을 서로 비교한 데이터입니다.

 

 

 

 

 

 

 

 

마지막으로 상업용 ESC에 재프로그램(reflashing)하는 절차입니다.

 

 

 

 


 

'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Wii-ESC란?  (0) 2014.03.13
Posted by Nature & Life

 

 

모터(motor)란 전기에너지를 이용하여 회전 토크(torque)를 얻는 장치로, RC에서는 로터(rotor)를 회전시켜 양력을 얻기 위해 반드시 필요합니다. 과거에는 DC 모터를 이용하였지만 최근에는 비용을 최소화하기 위한 초소형 기체를 제외하고는 Brushless DC 모터를 채택하게 된다고 알려집니다.

 

Brushless DC 모터란 Brush가 없는 DC 모터로 이하 BLDC로 약칭합니다. BLDC가 대중화된 이유는 여러가지가 있을 것입니다. 아래는 일반적인 DC 모터의 내부 모습니다. 케이스 안쪽에 영구자석을 부착하고 철심(core)에 코일(coil)을 감은 회전자(rotator)를 서로 베어링을 이용해 고정하고 Brush를 이용하여 DC 전압을 회전자에 급전하면 플레밍의 왼손 법칙에 의해 회전하게 됩니다.

 

 

 

 

이때 Brush는 기계적인 기구로 회전자에 의해 접점이 마찰되면서 닳을 수 밖에 구조이며, 회전시 모터의 역기전력(Back Ekectro-motive Force, BEMF)과 합세하여 스파크를 발생시키고 어쿠스틱 소음(acoustic noise)을 만들게 됩니다. 이러한 스파크와 소음은 결국 밧데리의 소모를 부추기게 됩니다.

 

BLDC 모터를 사용하면 우선 Brush로 인한 스파크와 소음이 없어져 반영구적인 모터의 수명 뿐만아니라 밧데리의 효율을 증가시켜 RC 기체의 체공시간을 길게 만들어 줍니다. 또한 일반 DC 모터의 소음은 콘덴서를 모터의 양 단자에 연결하여 줄일 수는 있지만, MCU 기반에 정교하게 동작하는 비행제어기(Flight controller)나 전자변속기(Electronic Speed Controller, ESC)의 오동작을 초래할 수도 있다는 것입니다.

 

기존의 RC 기체는 동력원으로 엔진을 사용하였지만 근래에 밧데리 용량과 방전 특성 그리고 안전성이 크게 개선된데다가 BLDC 모터의 채용으로 중소형 기체에서는 엔진에서 모터로 옮겨가는 추세라는 것입니다. 이로 인하여 엔진을 사용시 연료나 그으름으로 누더기 되었던 기체의 관리가 쉬워졌고 소음이 줄어들어 정숙비행이 가능해졌다는 것입니다.

 

Brush를 사용한 DC 모터와는 달리, BLDC 모터는 철심에 코일이 감긴 고정자(stator)와 안쪽에 자석이 부착된 케이스로 구성되어 케이스가 회전하는 소위 '통돌이 모터'라고도 부릅니다. 하지만 기계적 기구인 Brush가 하던 일을 다른 방식으로 해주어야 하니 전자변속기라는 별도의 제어기가 필요하게 됩니다.

 

 

 

 

RC용 전자변속기는 대부분 마이크로컨트롤러(MCU)와 H-bridge를 구성하는 트랜지스터들과 그 주변회로 구성되며, 현재 회전자의 위치를 파악하여 다음 위치로 회전시키기 위한 구동 신호를 가하는 방식으로 동작합니다.

 

일반적으로 산업용으로 사용되는 BLDC 모터는 엔코더(encoder)라는 장치나 홀센서(Hall sensor)가 모터에 부착되어 회전자의 현재 위치를 알려주는데 RC에 사용되는 BLDC 모터는 이러한 장치가 없어 전자변속기를 더욱 복잡하게 만듭니다. 하지만 고성능 MCU의 출현으로 어렵지 않게 구현이 가능해졌는데 이러한 기술 또한 엔진을 전기모터로 대체하는 요인 중에 하나가 될 것입니다.

 

통상 홀센서를 가지는 BLDC 모터는 전력을 공급받는 3상의 리드선과 별도의 홀센서 리드선이 다수가 필요하여 신뢰성이 중요한 RC 기체에서는 꺼리게 되었지만, 그 보다도 RC 기체가 비행하는 외부조건이 다양한데 홀센서는 이러한 외부조건에 취약하고 [기계적] 엔코더 타입의 모터는 소형화와 경량화가 어렵다는 것입니다.

 

 

'Flight Controller 이해 > 모터제어이론' 카테고리의 다른 글

모터의 토크 발생원리  (2) 2015.12.12
BLDC와 PMSM의 구조  (0) 2015.12.12
BLDC와 PMSM의 토크  (0) 2015.12.10
BLDC vs. PMSM  (0) 2015.12.09
BLDC의 장단점  (0) 2014.04.03
Posted by Nature & Life
Radio Control/ESC2014. 3. 13. 19:46

 

 

ESC는 Electronic Speed Controller의 약자로 우리말로 '전자변속기'라고 부릅니다. ESC는 밧데리로부터 전기를 전기모터에 공급하는 장치로 멀티콥터(Multicopter)를 비롯한 각종 RC 기체에 회전 동력을 필요로 하는 곳에 사용하여 로터(rotor)를 회전시켜 양력을 얻거나, 멀티콥터의 짐벌(gimbal)에 응용하여 기계적 장치를 움직이게 합니다.

 

과거의 엔진기체에는 전기모터가 필요없지만 근래에는 밧데리 용량과 방전 특성이 크게 개선되어 전기모터를 동력원으로 하는 기체가 대중화되었습니다. 기존의 DC 모터를 사용하는 경우, 기계적 브러쉬(brush)로 회전자에 전기를 급전하기에 기계적 접점이 불가피하여 모터가 회전시 스파크나 소음이 발생하는 등 효율이 좋지 않고 모터의 수명 또한 단축되었습니다.

 

최근에는 이러한 기계적 접점을 없앤 브러쉬리스(brushless; BLDC) 모터가 등장하여 소음도 현저히 줄어들고, 반영구적이며, 효율이 개선되어 RC 기체의 정숙비행과 체공시간의 증대로 전동기체가 범람하게 되었습니다. 기존의 DC 모터를 구동하기 위해서는 스로틀(throttle)의 위치에 따라 트랜지스터(transistor)와 같은 액티브 스위치(active switch)를 PWM 형태로 개폐하므로 장치가 간단하지만 브러쉬리스 모터를 사용하는 경우 장치가 매우 복잡해지고 단가가 상승하게 됩니다.

 

 

BLDC 모터를 구동하는 ESC는 8-bit PIC나 AVR 시리즈 등의 마이컴(Micom)으로 정교하게 제어하는 방법을 채택하고, 상용 ESC의 제조사는 하드웨어를 제작하고 여기에 펌웨어(Firmware)를 적절히 튜닝하여 시판하게 됩니다. 최근에는 멀티콥터가 대중화되면서 이에 걸맞는 성능을 갖춘 예를 들어, 빠른 응답 특성을 가진 ESC를 필요로 하게 되었습니다.

 

 

이러한 요구는 전 세계적으로 ESC를 자작(DIY)하려는 매니아나 동호회를 등장시켰습니다. 대다수는 ESC는 동일 클럭에서 속도가 빠르고 내부에 A/D 컨버터나 비교기 등의 고기능을 지원하는 AVR를 사용하는데, 대부분 어셈블러(Assembler) 수준에서 펌웨어를 개발하기 때문에 일반인이 접근하기에는 쉽지 않다는 것입니다.

 

Wii-ESC는 멀티위(MultiWii) 등의 멀티콥터에 최적화된 ESC 펌웨어를 만들기 위한 오프 소스(open source) 펌웨어 개발 프로젝트로 전 세계적으로 여러 사람이 참여하고 있으며, 어셈블러가 아닌 C 언어 기반이므로 일반 매니아층도 펌웨어의 이해와 수정이 가능하여 자기만의 멀티콥터에 최적화된 펌웨어를 구현할 수 있다는 장점이 있습니다.

 

다음은 Wii-ESC 프로젝트의 링크이며 소개를 간단히 번역한 것입니다.

(번역이 원문과 상이하거나 매끄럽지 못한 부분은 댓글로 남겨 주시면 감사하겠습니다)

 

http://code.google.com/p/wii-esc/

 

 

About

This firmware designed as a replacement for many commercially available ESC designs based on the AVR MCU. It implements scalar sensor less method to drive Brushless Motor by detecting BEMF zero-crossing instants. The goal of this project is to create firmware most suitable to use in multi-rotors, using cheap and commercially available hardware.

이 펌웨어는 AVR MCU에 기반을 둔 많은 상용 ESC를 위한 대체용으로 개발되었습니다. 이것은 역기전력(BEMF)이 '0' 레벨을 지나가는 순간(ZC point)를 감지함으로서 BLDC 모터를 구동하는 sensorless method를 구현하였습니다. 이 프로젝트의 목표는 저렴한 상용 하드웨어를 사용하여 멀티콥터에 가장 적합한 펌웨어를 만드는 것입니다.

 

* Sensorless method

BLDC 모터는 센서(sensor)의 유무에 따라 크게 두 가지 구분하는데, CD-ROM 모터로 대표되는 센서를 가진 BLDC 모터는 제어기가 간편해질 수는 있으나 모터에 센서가 장착되어 단가가 올라가고, 혹한 환경에서 센서의 정밀도가 떨어지며, 모터 외부로 추가적인 배선이 요구되는 등 고장이 쉽다는 것입니다. 하지만 센서 없는 BLDC 모터는 이를 구동하는 제어기가 복잡해지는 단점은 있지만, MCU의 지속적인 성능 개선으로 얼마든지 이를 극복할 수 있으므로 근래에 보다 선호하게 되었다는 것입니다.

 

Features:

  • Fastest possible power response.

  • Up to 4000 steps of resolution.

  • Low noise with comparatively high efficiency. (Sigma-delta modulator, instead of fixed frequency PWM)

  • Linear power response. (completely no "bump" at 100%)

  • Jitter-free input PWM measurement without harware assisted input capture.

  • Accepts any PWM update rate.

  • Sync recovery.

  • Safe stall detection.

  • Complimentary PWM support. (AKA: active freewheeling, active rectification)

  • Fixed throttle end-points. No need to calibrate. (since version 2.0.9 it is also possible to calibrate end-points using stick programming procedure)

  • Automatic oscillator calibration.

  • Enhanced PPM filter, preventing accidental motor startup. (when FC is rebooted, for example)

  • Configurable. The configuration parameters are stored in EEPROM. The Wii-ESC flash tool has visual parameters editor. No more stick programming.

  • Modularity. The high-level implementation is separated from actual hardware with HAL layer.

  • Portability. The firmware is written in C++, which means it can be easilly ported to different platform.

 

 

 

'Radio Control > ESC' 카테고리의 다른 글

RapidESC FAQ's  (0) 2014.06.11
RapidESC Flashing  (0) 2014.06.03
RapidESC란?  (0) 2014.05.26
Wii-ESC에 대한 FAQ  (0) 2014.04.07
Wii-ESC 프로젝트의 소개입니다  (0) 2014.04.04
Posted by Nature & Life