Transistor (2): Transistor with Arduino

Taejun Kim·2022년 3월 10일
0

지난 포스트에서 Transistor의 역할, 원리 등에 대해 알아보았다. 이어지는 본 글에서는 아두이노와 같은 Microcontroller 회로를 구성할 때 트랜지스터가 필요한 상황이 언제 인지에 대해 정리한다.

Microcontroller에서 트랜지스터를 사용하는 이유

Arduino I/O Digital Pin 혹은 Analogue Pin의 Current Limit는 40 mA 이다. 40 mA 보다 더 큰 전류가 흐르게 되면 Pin에 손상이 갈 수 있다. 작은 LED (e.g., MCL053MD - Recommended Operating Current 20 mA)의 경우에는 Arduino Pin Output을 이용해 직접 드라이브할 수 있다. 하지만 더 큰 전력을 소모하는 모터의 경우 (e.g., 12G88 Athlonix DC Motor: 9V 구동 & Max Continuous Current 370 mA, Precision Microdrive 진동 모터: 3V 구동 & Rated Operating Current: 60 mA) 아두이노 Pin을 모터에 직접 연결하면 큰 전류가 흘러서 Pin에 손상이 갈 수 있다.

따라서 모터 드라이버 혹은 간단하게는 트랜지스터를 이용하는 것이다. Arduino Pin Output을 통해 전달할 수 있는 작은 전류를 Control Signal로 사용하고, 실제 모터에는 외부 전원을 이용해 충분하고 안정적인 전압/전류를 공급해주는 것이다. 아래 회로도는 Arduino Pin을 트랜지스터의 Base 단과 연결하여 사용하는 예시를 보여준다.

Digital pin을 트랜지스터와 연결. 실제 모터의 전압은 5V pin에서 공급 (VCC pin, GND pin의 Current Limit은 200 mA, 관련 링크)

참고

https://m.blog.naver.com/okseods1/220949581522
https://playground.arduino.cc/Main/ArduinoPinCurrentLimitations/
https://learn.adafruit.com/adafruit-arduino-lesson-13-dc-motors/transistors
https://www.youtube.com/watch?v=T1eMKml3iE0&t=235s

변경 이력

  • 2022년 3월 9일: 글 등록
profile
Ph.D. Candidate in HCI Lab KAIST

0개의 댓글