안녕하세요 대짜이찐입니다.
이번엔 지난 시간에 이어서,
모터드라이버 제작에 대해 얘기해 보겠습니다.
이전 편에는 npn 바이폴라 트랜지스터(Bipolar Junction Transistor, BJT)를
사용한 H 브릿지 회로를 만들었는데요.
사실 H 브릿지 회로같은 스위칭 회로에서는
BJT보다는 MOSFET을 주로 사용합니다.
BJT보다는 MOSFET을 주로 사용합니다.
이유는 간단합니다.
MOSFET이 값이 더싸고, 스위칭 속도도 빠르고,
회로를 더 간단하게 만들 수 있기 때문입니다.
또 전압 구동 방식이기 때문에 전력소모도 작습니다.
BJT는 쌍극성(Bipolar)으로, Bipolar라는 이름처럼, 전자(electron)와 정공(hole)
두개의 캐리어(carrier)가 전류에 기여합니다.
또 전류로 전류를 제어하는 전류 구동 방식입니다.
MOSFET(Metal-Oxide-Semiconductor Field-Effect Transistor)은
단극성(Unipolar)으로 전자 혹은 정공 둘 중 한개의 소자만
전류에 기여합니다.
또 전압으로 전류를 제어하는 전압 구동 방식입니다.
트랜지스터의 NPN, PNP 처럼 FET도
N-Channel과 P-Channel로 캐리어에 따라서 나뉘어 집니다.
캐리어를 정공대신 전자를 이용하므로, 속도가 빠르고
열도 덜 발생하기 때문입니다.


모터 드라이버를 제어할 때 H브릿지 회로에서
스위칭 동작으로 정/역방향 제어를 하는데요.
하프 브릿지 회로나 풀 브릿지(H브릿지) 회로에서
A,B,C,D 같이 게이트(베이스)쪽에 연결된 부분을
암(arm) 혹은 레그(leg)라고 합니다.

이때 가장 주의해야 할것이 암쇼트(arm short)입니다.
암쇼트란 HIGH SIDE와 LOW SIDE 스위칭 소자가
동시에 Turn-on이될 때, Vcc(+)와 GND(-) 가 쇼트 되는 현상을 말합니다.
위 회로에서 A와 B가 동시에 Turn-on이되면, 쇼트가 되고,
소자들은 과열되거나 파괴 됩니다.
MOSFET에는 Turn-on과 Turn-off때, 지연 시간이 다르며,
대부분의 경우 Turn-off시의 지연 시간이 깁니다.
이로 인해 상하 MOSFET이 모두 Turn-on되는 시간이 발생하고,
암쇼트가 발생하게 됩니다.
이를 방지하기 위해서 프로그램이나 하드웨어적인 회로로
약간의 시간차를 두고 Turn-on 시킵니다.
on/off가 전환되는 타이밍에서 양쪽 소자가 off되도록
제어하는 이 약간의 시간차를 데드타임(Dead Time)이라고 합니다.
http://www.elec4.co.kr/article/articleView.asp?idx=21353
위 사진은 전자 과학 기사에서 가져온 이미지 입니다.
MOSFET을 빠르게 스위칭 하여
데드타임을 작게 해주기 위해 게이트 드라이버를 사용해야 합니다.
마이크로 컨트롤러 I/O핀의 소싱 및 싱크 전류 정격은 통상 수십 mA에 반해서
게이트 드라이버는 이보다 훨씬 더 높은 전류를 제공할 수 있고
따라서 스위칭 시간은 훨씬 짧습니다.

http://www.elec4.co.kr/article/articleView.asp?idx=21353
위 사진은 전자 과학 기사에서 가져온 이미지 입니다.

LOW SIDE처럼 N-Channel MOSFET의 Source에 GND를
연결하여 사용하면 문제가 없지만,
HIGH SIDE처럼 MOSFET의 Source 부분에
부하(Load)를 연결하여 사용할 때에는
MOSFET이 포화영역에 도달하지 못하기 때문에
스위칭이 제대로 동작하지 않아
모터가 느리게 돌고 발열이 심할 것입니다.
이유는 문턱 전압(Threshhold Voltage)때문에 GATE에 인가해주는 전압보다
조금 낮은 전압이 Source에 인가되고
출력단에는 스위칭하려는 전압보다 더 낮은 전압이 인가되어
스위칭을 할 수 없는 상황이 발생합니다.

이러한 문제를 해결하기 위해 부트 스트랩(Bootstrap) 회로를 사용합니다.
부트 스트랩 회로는 다이오드와 커패시터를 이용하여
커패시터를 순간적으로 충전시켜
MOSFET의 gate에 문턱 전압이상의 전압을 인가시켜주는 방법입니다.
부트 스트랩 회로 사용 시 캐패시터가 계속 충방전을 해줘야 하기 때문에
상단 HIGH SIDE에 PWM 신호를 넣어서 PWM 제어를 해줍니다.
같은 이유로 PWM duty가 0% 혹은 100%가 되면 캐패시터가 충방전을 하지 못하기에
PWM duty는 10~90%로만 사용해야 합니다.

약간의 시간차를 두고 Turn-on 시킵니다.
on/off가 전환되는 타이밍에서 양쪽 소자가 off되도록
제어하는 이 약간의 시간차를 데드타임(Dead Time)이라고 합니다.
http://www.elec4.co.kr/article/articleView.asp?idx=21353
위 사진은 전자 과학 기사에서 가져온 이미지 입니다.
MOSFET을 빠르게 스위칭 하여
데드타임을 작게 해주기 위해 게이트 드라이버를 사용해야 합니다.
마이크로 컨트롤러 I/O핀의 소싱 및 싱크 전류 정격은 통상 수십 mA에 반해서
게이트 드라이버는 이보다 훨씬 더 높은 전류를 제공할 수 있고
따라서 스위칭 시간은 훨씬 짧습니다.

http://www.elec4.co.kr/article/articleView.asp?idx=21353
위 사진은 전자 과학 기사에서 가져온 이미지 입니다.

LOW SIDE처럼 N-Channel MOSFET의 Source에 GND를
연결하여 사용하면 문제가 없지만,
HIGH SIDE처럼 MOSFET의 Source 부분에
부하(Load)를 연결하여 사용할 때에는
MOSFET이 포화영역에 도달하지 못하기 때문에
스위칭이 제대로 동작하지 않아
모터가 느리게 돌고 발열이 심할 것입니다.
이유는 문턱 전압(Threshhold Voltage)때문에 GATE에 인가해주는 전압보다
조금 낮은 전압이 Source에 인가되고
출력단에는 스위칭하려는 전압보다 더 낮은 전압이 인가되어
스위칭을 할 수 없는 상황이 발생합니다.
이러한 문제를 해결하기 위해 부트 스트랩(Bootstrap) 회로를 사용합니다.
부트 스트랩 회로는 다이오드와 커패시터를 이용하여
커패시터를 순간적으로 충전시켜
MOSFET의 gate에 문턱 전압이상의 전압을 인가시켜주는 방법입니다.
부트 스트랩 회로 사용 시 캐패시터가 계속 충방전을 해줘야 하기 때문에
상단 HIGH SIDE에 PWM 신호를 넣어서 PWM 제어를 해줍니다.
같은 이유로 PWM duty가 0% 혹은 100%가 되면 캐패시터가 충방전을 하지 못하기에
PWM duty는 10~90%로만 사용해야 합니다.

MOSFET에는 내부 다이오드(기생 다이오드)가 있어서,
환류 다이오드 역할을 해주긴 하지만,
쇼트키 다이오드나 패스트 리커버리 다이오드보다는
특성이 약하기 때문에 추가적으로 붙여주었습니다.
이 때 사용하는 환류 다이오드는 모터에 정격 전류용량의
3배 이상을 견딜 수 있는 제품으로 선정해야 합니다.
MOSFET의 게이트에 연결된 저항은, BJT와 다르게 전류가 아닌
전압제어이므로 저항의 값이 상대적으로 낮습니다.
이번 포스팅하면서 저도 많이 공부한것 같습니다ㅎㅎ
다음에는 모터드라이버 회로를 직접 테스트해보겠습니다.
감사합니다.
다음에는 모터드라이버 회로를 직접 테스트해보겠습니다.
감사합니다.
0 댓글