MOSFET과 마이크로 컨트롤러로 DC 모터를 구동합니까?


13

Atmega328 마이크로 컨트롤러, 3.3V로 구동되는 초소형 브러시 DC 모터를 사용하여 나노 쿼드 콥터를 개발 중입니다. 이 모터에 사용되는 평균 전류는 약 800mA @ 3.7V입니다.

처음에는 그것들을 구동하기 위해 L293D 모터 드라이버를 사용했지만이 구성 요소는 매우 비효율적이었습니다. 모터가 최대 전력으로 작동 할 때 측정 된 전류는 약 500mA이므로 추력이 훨씬 낮아야합니다.

이제이 문제를 해결하기 위해 모터 드라이버를 4 개의 로직 레벨 MOSFET으로 대체 할 것입니다. 긴 검색 후, 나는 발견 하나 (2SK4033을).

작동해야하는지 알고 있습니까? 다이오드와 함께 사용해야합니까? 대답은 무엇인지에 대해 "예", 경우이다 하나 (MBR360RLG)?

동일한 온라인 상점에서 구입할 수 있기 때문에 이러한 구성 요소도 선택했습니다.


2
Andy는 귀하의 질문에 MOSFET 부분에 대한 답변을했지만 더 근본적인 질문을 언급 한 사람은 없습니다. 어떻게 L293D를 4N MOSFET로 대체 할 계획입니까? N MOSFET을 하이 사이드에 배치하면 효율 문제가 발생할 수 있습니다. 회로도는 아이디어를 명확하게하는 데 도움이 될 수 있습니다.
Laszlo Valko

"하이 사이드"란 무엇을 의미합니까? 이 시점에서 내가 가진 유일한 회로도는 L293D가있는 회로도입니다. 도움이된다면 게시 할 수 있습니다. 제 생각은 각 모터가 MOSFET (전체적으로 4 개)에 의해 구동되고 필요한 경우 다이오드도 구동한다는 것입니다. 더 효율적인 솔루션은 무엇입니까?
supergiox

각 L293D 출력에는 "하이 사이드"트랜지스터 (Vcc와 출력 간)와 "로우 사이드"트랜지스터 (GND와 출력 간)가 포함됩니다. "하이 사이드"트랜지스터를 N MOSFET으로 교체하는 경우 출력 전압보다 높은 Vgs (최소 2..3..4V)를 제공 할 수있는 전원 공급 장치가 필요합니다. 또는 최대 출력 전압은 Vcc-Vgs ...
Laszlo Valko

Vgs는 3.3V 여야하고 출력 (Vds)은 3.7V 여야합니다 (배터리의 동일한 전압, 고유). 따라서이 문제가 발생하면 어떻게해야합니까? 다른 해결책을 제안 할 수 있습니까?
supergiox

2
다음과 같은 옵션이 있습니다. a) 하이 사이드에는 P MOSFET을 사용하십시오. b) 하이 사이드 MOSFET 게이트를 구동하기 위해 2 * Vcc를 제공하기 위해 별도의 전압 더블 러 또는 DC-DC 컨버터 회로를 사용하십시오. c) 부트 스트랩 회로를 사용하여 하이 사이드 MOSFET 게이트를 구동하기위한 적절한 Vout + Vcc 전압을 제공하십시오. 이들 각각에는 단점 및 / 또는 한계가 있습니다.
Laszlo Valko

답변:


17

MOSFET은이 애플리케이션에서 매우 잘 작동합니다. 고려해야 할 사항은 다음과 같습니다.

1:

FET를 사용하여 부하를 구동 할 때 하이 사이드 또는 로우 사이드 구성을 선택할 수 있습니다. 하이 사이드는 FET를 파워 레일과로드 사이에 배치하고로드의 다른 쪽은 접지에 연결됩니다. 로우 사이드 구성에서로드의 한 리드는 파워 레일에 연결되고 FET는로드와 접지 사이에 배치됩니다.

낮음

모터 (또는 다른 부하)를 구동하는 가장 간단한 방법은 로우 사이드 구성에서 N- 채널 MOSFET을 사용하는 것입니다. 게이트 전압이 소스보다 높으면 N-FET가 작동하기 시작합니다. 소스가 접지에 연결되어 있으므로 게이트는 일반적인 온-오프 로직으로 구동 할 수 있습니다. FET가 수행되기 전에 게이트 전압이 임계 값 ( "Vth")을 초과해야한다는 임계 값이 있습니다. 일부 FET는 수십 볼트에서 Vth를 갖는다. Vcc보다 훨씬 낮은 임계 값을 갖는 "논리 수준"N-FET가 필요합니다.

로우 사이드 FET 구성에는 두 가지 단점이 있습니다.

  • 모터 권선은 파워 레일에 직접 연결됩니다. FET가 꺼져 있으면 전체 권선이 "핫"입니다. 전원 연결이 아닌 접지를 전환하고 있습니다.

  • 모터에는 실제 접지 기준이 없습니다. 가장 낮은 전위는 FET의 순방향 전압에 의해 접지보다 높습니다.

이 중 어느 것도 디자인에 중요하지 않습니다. 그러나 예상하지 못한 경우 문제가 될 수 있습니다! 특히 고전력 회로의 경우 :)

이러한 문제를 극복하기 위해 하이 사이드 구성에서 P-FET를 사용할 수 있습니다. 그러나 구동 회로는 조금 더 복잡해진다. P-FET 스위치는 일반적으로 게이트를 파워 레일로 끌어 당깁니다. 이 파워 레일은 uC의 Vcc보다 높으므로 uC의 I / O 핀을 게이트에 직접 연결할 수 없습니다. 일반적인 솔루션은 더 작은 로우 사이드 N-FET를 사용하여 하이 사이드 P-FET의 게이트를 풀다운하는 것입니다.

DualFet

R1 및 R3은 Q2가 구동 될 때까지 FET의 전원을 차단합니다. 로우 사이드 구성에서도 R3이 필요합니다.

귀하의 경우, 간단한 로우 사이드 N-FET (R3 포함)가 더 나은 서비스를 제공 할 것이라고 생각합니다.


2 :

마지막 다이어그램에서 R2를 확인하십시오. MOSFET 게이트는 커패시터로 작용하며 드레인 소스 전류가 흐르기 전에 충전되어야합니다. 처음 전원을 공급할 때 돌입 전류가 크게 발생할 수 있으므로 uC의 출력 드라이버가 손상되지 않도록이 전류를 제한해야합니다. 캡은 순간적으로 짧아 보이기 때문에 큰 오차가 필요하지 않습니다. 예를 들어 특정 Atmel은 40mA를 소싱 할 수 있습니다. 3.3V / 35mA => 94.3 옴. 100 옴 저항은 훌륭하게 작동합니다.

그러나이 저항은 FET의 켜기 및 끄기 시간을 느리게하여 스위칭 주파수를 상한으로 만듭니다. 또한 FET가 선형 작동 영역에있는 시간을 연장하여 전력을 낭비합니다. 고주파로 전환하는 경우 문제가 될 수 있습니다. 하나의 지표는 FET가 너무 뜨거워 진 경우입니다!

이 문제에 대한 해결책은 FET 드라이버를 사용하는 것입니다. 이들은 효과적으로 더 많은 전류를 공급할 수있는 버퍼이므로 제한 저항없이 게이트를 더 빠르게 충전 할 수 있습니다. 또한 대부분의 FET 드라이버는 일반적인 Vcc보다 더 높은 전력 레일을 사용할 수 있습니다. 이 높은 게이트 전압은 FET의 온 저항을 줄여 추가 전력을 절약합니다. 귀하의 경우 3.7V로 FET 드라이버에 전원을 공급하고 uC의 3.3V로 제어 할 수 있습니다.

FetDriver


삼:

마지막으로 쇼트 키 다이오드를 사용하여 모터로 인한 전압 스파이크를 방지해야합니다. 유도 성 부하를 전환 할 때마다이 작업을 수행하십시오.

LowSideWithDiode

모터 권선은 큰 인덕터이므로 전류 흐름의 모든 변화에 저항합니다. 전류가 권선을 통해 흐르고 있다고 가정하면 FET를 끕니다. 인덕턴스는 전기장이 붕괴 될 때 모터에서 전류가 계속 흐르게합니다. 그러나 그 전류가 갈 곳은 없습니다! 따라서 FET를 뚫거나 파괴적인 다른 일을합니다.

부하와 병렬로 배치 된 쇼트 키는 전류가 흐르도록 안전한 경로를 제공합니다. 전압 스파이크는 다이오드의 순방향 전압에서 최대치이며, 지정한 전압에 대해 1A에서 0.6V에 불과합니다.

플라이 백 다이오드를 사용한 로우 사이드 구성 인 이전 그림은 쉽고 저렴하며 매우 효과적입니다.


MOSFET 솔루션을 사용할 때 볼 수있는 유일한 다른 문제는 본질적으로 단방향이라는 것입니다. 오리지널 L293D는 다중 하프 브리지 드라이버입니다. 이로써 모터를 양방향으로 구동 할 수 있습니다. 1Y와 2Y 사이의 모터를 연결하는 이미징. L293D는 1Y = Vdd 및 2Y = GND를 만들 수 있으며 모터는 한 방향으로 회전합니다. 또는 1Y = GND 및 2Y = Vdd로 만들 수 있으며 모터는 다른 방향으로 회전합니다. 꽤 편리합니다.

행운을 빌고 재미있게 보내!


좋은! 마이크로 리드와 게이트 사이에 저항이 필요합니까? 220 Ohm이 좋은 가치입니까? (3.3V / 0.02A = 170 Ohm ~ 220 Ohm)
supergiox

1
좋은 질문. 이상적인 세계에서 게이트는 전류를 전혀 흡수하지 않습니다. 이것이 BJT에 비해 FET의 장점 중 하나입니다. 그러나 실제 세계에서 게이트는 작은 커패시터 역할을하며 드레인 소스 전류가 흐르기 전에 충전해야합니다. FET를 빠르게 켜려면 빠르게 충전하기를 원합니다. uC 핀을 처음 켜면 게이트 커패시턴스가 단락으로 나타납니다. ATmega328은 핀당 40mA를 공급할 수 있습니다. 모자는 순간적으로 짧게 보일 것이므로 너무 많은 오차가 생기지 않습니다. 3.3V, 35mA : ~ 100- 옴. 오늘 나중에 이것을 합칠 것입니다!
bitsmack

1
아, 그리고 모터를 고주파수로 전환하면이 저항이 문제가됩니다. 게이트의 충전 및 방전 속도가 느려져 스위칭 주파수가 느려집니다. 또한 FET가 선형 작동 영역에있는 시간을 연장하여 전력을 낭비합니다. 이것이 문제인 것을 발견하면 "FET 드라이버"또는 다른 버퍼를 사용하십시오. 게이트는 게이트에서 훨씬 높은 전류를 소싱 / 싱킹합니다. 그런 다음 저항을 최소화 (또는 제거) 할 수 있습니다.
bitsmack

스위치 주파수는 PWM 주파수라고 생각합니다. 약 500Hz 여야합니다.
supergiox

1
좋은 :) 나는 질투한다; 나는 꽤 오랫동안 쿼드 헬리콥터를 만들고 싶었다! 알려주세요.
bitsmack

12

다음은 MOSFET에 대해 살펴볼 내용입니다. 이것은 2SK4033의 데이터 시트에서 가져온 것입니다.-

여기에 이미지 설명을 입력하십시오

800mA가 평균 전류라고 말하지만 부하시 1A 이상으로 증가 할 수 있습니까? 어쨌든 1A에서 게이트 구동 전압이 3.3V 인 MOSFET은 1A 부하에 전력을 공급할 때 단자에서 약 0.15V를 떨어 뜨린다. 이 전력 손실 (150mW)로 살아갈 수 있습니까? 더 중요한 것은 배터리 전압이 3V 아래로 떨어지면 게이트 전압이 필연적으로 떨어지면 성능 손실로 살아갈 수 있다는 것입니다.

오직 당신 만이이 질문에 대답 할 수 있습니다. 이보다 더 나은 MOSFET이 있지만 예상되는 모터의 실제 부하 전류를 계산해야합니다.

EDITS

MOSFET 대신에 유용 할 수있는 칩이 있습니다. TI 의 DRV8850 입니다. 하프 브리지 2 개가 포함되어있어 플라이 백 다이오드가 필요없이 4 개의 모터 중 2 개를 독립적으로 구동 할 수 있습니다 (실제로 상단 FET는 동기식 정류기로서 작동하며 물론 손실을 줄입니다). 각 FET에 대한 온 저항은 0.045ohm이며 5A (소비 전력은 약 1.1 와트)로 평가되지만 OP가 약 1A를 원한다는 점을 고려하면 이는 매우 사소한 일입니다. 전원 전압 범위는 2V ~ 5.5V이므로 다시 매우 적합합니다.-

여기에 이미지 설명을 입력하십시오


고마워 예, 모터는 전류를 1A를 약간 넘는 값으로 늘릴 수 있지만 단시간 동안 만 가능합니다. 내가 아는 실질적인 규칙은 평균 (1.6A)의 두 배인 전류를 고려하는 것입니다. 150mW의 전력 손실은 큰 문제가 아니라고 생각합니다.
supergiox

게이트 드라이브가 열악하고 손실이 커질 때 배터리 전압이 낮을 때는 어떻습니까? 물론 악마를 옹호하고 있습니다!
Andy 일명

배터리 전압이 3V 미만으로 떨어지는 것에 대해, 나는 당신이 무엇을 의미하는지 이해하지 못합니다. 어쨌든 3.3V에서 ATmega에 전원을 공급하기 위해 전압 조정기 (LE33CZ)를 사용합니다. 전압이 "항상"3.3V라는 것을 의미하지 않습니까? 질문 하나 더 다이오드는 어떻습니까?
supergiox

1
배터리 전압이 3.4V로 떨어지면 레귤레이터 출력도 떨어지기 시작합니다. 이는 게이트에 대한 구동 전압이 떨어지기 시작하고 피트가 비효율적으로됨을 의미합니다. 다이오드 전에이 시나리오를 다루십시오. 다이오드는 비교가 쉽지 않습니다.
Andy 일명

1
각 모터를 제어하려면 하나의 Fet이 필요합니까? Laszlo는 원래 L293을 사용했기 때문에 2가 필요하다고 가정합니다.
Andy 일명

6

브러시 DC 모터를 사용하고 있으므로 드라이브로 반드시 H-Bridge가 필요하지 않습니다. 실제로 두 가지 경우에만 H- 브리지가 필요합니다. 모터를 외부에서 정류해야하거나 (예 : 브러시리스 PM 모터를 생각) 스핀을 반대로해야합니다. 이들 중 어느 것도 여기에 적용되지 않는 것 같습니다. 단일 방향 또는 단일 사분면 드라이브 (SQD)를 사용하면 수행하려는 작업이 크게 단순화됩니다.

사용하려는 FET (2SK4033)는 사용 가능한 드라이브 전압 (Andy가 이미 지적한 이유)과 크게 일치하지 않으므로 나중에 FET 선택에 대해 자세히 설명합니다.

단일 사분면 드라이브 (SQD)로 브러시 DC 모터 구동

Vth

여기에 이미지 설명을 입력하십시오

VωRwindRgRpdVbVdrv

ImIdpkIdrmsIcr-ave

  • IdpkIm
  • Id-rms2Im2
  • Icr-aveIm

FET 선택을위한 기본 기준 (FET 선택의 ABC) :

  • VDS1.5VB-max

VDS

  • V최대VDrv-min

    Vth-maxRds

  • ΔTJA

    열 상승이 정말 중요합니다. 그것은 모든 손실, 전도 손실, 게이트 손실 및 스위칭 손실을 설명합니다.

3 가지 기준에 따른 샘플 부품 선택 :

VB-maxVDrv-minVDSV최대아르 자형DS

  • VDSVth-max

Rth

PTPcondPsw

어디

PcondRdsIm2

Psw12ImVbFPWM(τf+τr)

VgsVdsVgsVmpVds

여기에 이미지 설명을 입력하십시오

mpVmpVdrv아르 자형VmpVdrv

mpτVdrv2아르 자형τ2아르 자형mpVdrv2(100영형h미디엄에스)(4nC)3.3V

일부 운영 가정을위한 시간입니다.나는미디엄아르 자형ds아르 자형ds

0.9(33 분)(1.2A)2(3.3V)(1.2A)(242n 초)(20kHz)

나는미디엄

느슨한 끝

  • 드라이브 회로와 스위치를 모터 가까이에 두십시오.

  • 마이크로가 FET를 직접 구동하는 것이 가능할 수도 있지만, 마이크로를 보호하기위한 드라이버는 좋은 생각입니다 ( NC7WZ16 과 같은 것이 여기에서 작동 할 수 있음).

  • iss

  • 나는미디엄

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.