[아두이노] DC 모터 제어의 본질: “왜 이 부품이어야 하는가”
아두이노로 DC 모터를 제어하는 순간, 단순한 코딩이 아니라 전력 제어 시스템 설계로 넘어갑니다.
많은 입문 자료는 “이렇게 연결하세요”에서 끝나지만,
실무에서는 항상 한 가지 질문이 따라옵니다.
👉 “왜 이 사양이어야 하지?”
이 글에서는 부품 역할 + 수치 설계 + 데이터시트 해석 관점까지 포함해
DC 모터 제어 회로를 엔지니어 수준으로 정리합니다.
1. 왜 아두이노에 모터를 직접 연결하면 안 될까?
아두이노 디지털 핀의 한계:
출력 전류: 약 20mA
모터 요구 전류: 수백 mA ~ 수 A
즉,
👉 전류가 절대적으로 부족
👉 역전압(Back EMF)로 보드 손상 위험
그래서 반드시 필요합니다:
외부 전원
스위칭 소자 (트랜지스터 / MOSFET)
보호 회로
2. 전체 구조 한 눈에 보기
[Arduino] → [Base 저항] → [트랜지스터] → [모터] → [외부 전원]
↑
[플라이백 다이오드]
이 구조의 핵심은 단 하나입니다:
👉 “작은 신호로 큰 전류를 제어한다”
3. Q1: 트랜지스터 — 스위치의 품질이 시스템을 결정한다
✔ 역할
아두이노 신호 → 전력 스위칭
✔ 핵심 설계 포인트
(1) Stall Current 기준으로 설계
모터는 멈출 때 가장 위험합니다.
평상시: 100mA
스톨 시: 1A 이상
👉 반드시 최대 전류 기준으로 설계
(2) 포화 영역(Saturation) 확보
트랜지스터는 “켜졌다”가 아니라
👉 완전히 켜져야 한다
전력 손실:
P = Vce(sat) × Ic
예:
Vce ≈ 0.3V
Ic = 0.5A
👉 P = 0.15W → 발열 발생
✔ 추천 선택 기준
| 상황 | 추천 |
|---|---|
| 소형 모터 | PN2222 |
| 중전류 | TIP120 |
| 고효율 | MOSFET (IRLZ44N) |
4. R1: 베이스 저항 — “적당히”가 아니라 “계산해야 하는 값”
많은 글에서 1kΩ을 그냥 씁니다.
👉 틀린 건 아니지만, 정확하지도 않습니다.
✔ 설계 계산
필요 조건:
Ic = 500mA
hFE = 50
필요 베이스 전류:
Ib = Ic / hFE = 0.5 / 50 = 0.01A (10mA)
✔ 저항 계산
R = (5V - 0.7V) / 0.01A ≈ 430Ω
✔ 실무 판단
| 상황 | 저항값 |
|---|---|
| 안정성 우선 | 1kΩ |
| 힘(토크) 우선 | 330~470Ω |
👉 저항값이 크면 → 안전하지만 힘이 약함
👉 저항값이 작으면 → 강하지만 핀 부담 증가
5. D1: 플라이백 다이오드 — “없으면 언젠가 터진다”
모터는 인덕터입니다.
스위치를 끄는 순간:
V = L × (di/dt)
👉 순간적으로 수십~수백 V 발생
✔ 역할
역전압을 우회시켜 회로 보호
✔ 선택 기준
| 항목 | 기준 |
|---|---|
| 전압 | 전원보다 높게 (≥ 50V) |
| 전류 | 모터 전류 이상 |
✔ 추천 부품
범용: 1N4004
고속 PWM: 1N5819 (쇼트키)
👉 PWM 제어라면 쇼트키가 훨씬 유리합니다.
6. C1: 노이즈 필터 — “안 넣으면 디버깅 지옥”
모터는 전기적으로 매우 더러운 부하입니다.
문제:
EMI 발생
MCU 오동작
센서 값 튐
✔ 해결 방법
(1) 모터 단자
0.1µF 세라믹
(2) 전원 입력
100µF ~ 1000µF 전해 커패시터
👉 실무에서는 거의 무조건 둘 다 사용
7. 한 단계 위 설계: PLC 마인드 적용
아두이노라도 산업 설계처럼 접근하면 달라집니다.
✔ 추천 추가 요소
① 포토커플러 (절연)
제어부 ↔ 전력부 완전 분리
② MOSFET 전환
발열 ↓
효율 ↑
③ 별도 전원 분리
MCU 안정성 확보
8. 최종 설계 체크리스트
✔ 모터 Stall Current 확인했는가
✔ 트랜지스터 정격 2배 이상 확보했는가
✔ 베이스 저항 계산했는가
✔ 플라이백 다이오드 방향 맞는가
✔ 커패시터 위치 적절한가
✔ GND 공통 연결했는가
마무리
DC 모터 제어는 단순한 ON/OFF 문제가 아닙니다.
👉 “전력을 어떻게 안전하게 다룰 것인가”
이 관점이 생기는 순간,
회로가 안정해지고
디버깅 시간이 줄고
설계 수준이 올라갑니다
한 줄 정리
“모터를 돌리는 것은 쉽다.
하지만 안전하게, 오래, 정확하게 돌리는 것이 엔지니어링이다.”
댓글
댓글 쓰기