로그인회원가입

[카테고리:] 부품 리뷰

DIY 용 단일 부품 리뷰

  • ESP32-CAM 무한 리셋 없는 전원 제어! 소형 MOSFET SI2302 완벽 가이드 (특성 및 회로도)

    ESP32-CAM 무한 리셋 없는 전원 제어! 소형 MOSFET SI2302 완벽 가이드 (특성 및 회로도)

    안녕하세요! 메이커 여러분. 오늘은 IoT 프로젝트를 진행할 때 필수적으로 마주하게 되는 ‘전력 관리(Power Management)’에 대해 이야기해보려고 합니다.

    cam 은 사용할 때만 켜고 평상시는 아예 전원을 끊어 놓는게 보안상 좋습니다.

    배터리로 구동되는 가젯이나 스마트 장치를 만들 때, 평소에는 전원을 완전히 차단했다가 필요할 때만 특정 모듈을 켜고 싶을 때가 많죠. 특히 ESP32-CAM처럼 카메라와 Wi-Fi를 동시에 사용하며 순간 피크 전류를 500mA 이상 잡아먹는 헤비한 모듈은 일반 트랜지스터(TR)로 제어하기가 까다롭습니다. “어? 트랜지스터를 달았더니 ESP32가 무한 리부팅(Brownout)에 빠지네?” 하시는 분들이 많으셨을 텐데요.

    오늘은 그 해결사이자, 소형 표면실장(SMD) 타입으로 메이커들 사이에서 가성비 최고로 불리는 N-채널 Logic Level MOSFET, SI2302에 대해 자세히 알아보고 실전 회로까지 마스터해 보겠습니다.

    1. 왜 일반 TR이 아니라 MOSFET(마스펫)일까?

    우리가 흔히 쓰는 2N2222 같은 일반 트랜지스터(BJT)는 ‘전류’로 ‘전류’를 제어하는 부품입니다. 컬렉터와 에미터 사이에 전류가 흐를 때, 필연적으로 약 0.2V ~ 0.6V 수준의 전압 강하(Voltage Drop)가 발생합니다. 5V 전원을 공급했는데 모듈에는 4.5V만 들어가는 현상이 생기죠. 이 때문에 전류를 많이 쓰는 ESP32-CAM은 전압 부족으로 리셋이 걸리게 됩니다.

    반면, MOSFET(전계효과트랜지스터)은 ‘전압’으로 ‘전류’를 제어합니다. 완전히 켜졌을 때(Turn-on), MOSFET은 단순히 ‘저항이 매우 낮은 도선’처럼 작동합니다. 전압 강하가 거의 없어서 저전압 대전류 스위칭에 완벽한 솔루션이 됩니다.

    2. SI2302 핵심 성능 사양 (Datasheet 정밀 분석)

    SI2302(주로 SOT-23 패키지)는 아주 작은 크기임에도 불구하고 놀라운 사양을 자랑합니다. 왜 이 녀석이 ESP32-CAM 스위칭에 제격인지 데이터시트 수치로 증명해 드립니다.

    주요 항목사양 (Specification)메이커를 위한 의미 해석
    소자 타입N-Channel MOSFET부하의 GND 라인을 끊고 맺는 ‘로우 사이드’ 스위치에 적합
    드레인-소스 전압 (VDS​)Max 20V3.3V, 5V, 12V 회로까지 넉넉하게 커버 가능
    연속 드레인 전류 (ID​)Max 2.8AESP32-CAM의 피크 전류(약 0.5A)의 5배 이상 감당!
    게이트 문턱 전압 (VGS(th)​)0.65V ~ 1.2V전압이 매우 낮아도 켜지기 시작함
    도통 저항 (RDS(on)​)@4.5V : 0.045Ω
    @2.5V : 0.070Ω
    핵심 포인트! 3.3V GPIO를 넣으면 저항이 약 0.055Ω으로 극도로 낮아짐

    🧮 옴의 법칙으로 보는 실제 전압강하와 발열량

    ESP32-CAM이 Wi-Fi 전송으로 최대 500mA(0.5A)를 당길 때, SI2302에서 발생하는 손실을 계산해 볼까요? (ESP32-C3의 3.3V 제어 기준, 저항은 0.055Ω 적용)

    • 실제 전압 강하 (V=I×R):0.5A×0.055Ω=0.0275V5V 전원을 통과시켜도 고작 0.027V만 깎입니다. ESP32-CAM에는 4.97V 이상이 그대로 전달되므로 브라운아웃 리셋 걱정이 없습니다.
    • MOSFET 자체 발열량 (P=IR):0.5A2×0.055Ω=0.01375W(13.75mW)소모 전력이 미미하여 방열판은커녕 만져봐도 온기가 느껴지지 않을 정도로 쾌적하게 작동합니다.

    3. ESP32-C3를 이용한 ESP32-CAM 전원 제어 실전 회로도

    메인 컨트롤러인 ESP32-C3의 GPIO 1번 핀을 사용하여 ESP32-CAM의 5V 전원을 켜고 끄는 로우 사이드(Low-Side) 스위칭 회로입니다.

    Plaintext

    💡 회로 구성 핵심 팁!

    1. 게이트 보호 저항 (100Ω): MCU의 GPIO 핀에서 MOSFET 게이트로 순간적으로 흘러 들어가는 서지 전류를 제한하여 핀을 보호합니다.
    2. 풀다운 저항 (10kΩ): MCU가 부팅되거나 핀이 플로팅(불안정) 상태일 때, 게이트 전압을 GND로 잡아두어 ESP32-CAM이 제멋대로 켜지는 것을 방지합니다.
    3. 돌입 전류 방지용 콘덴서 (470μF): 가장 중요합니다! MOSFET이 딱 켜지는 나노초(ns) 단위의 순간, 회로 전체 전압이 휘청이는 것을 콘덴서가 댐퍼 역할을 하며 막아줍니다. 이 콘덴서가 있어야 안정적인 구동이 가능합니다.

    4. 하드웨어 메이커를 위한 최종 주의사항 (UART 역류)

    이 회로는 구조가 간단한 대신 ESP32-CAM의 GND 라인을 차단하는 방식입니다. 만약 ESP32-C3와 ESP32-CAM 사이에 TX, RX 같은 통신선이 직접 연결되어 있다면, MOSFET을 꺼서 GND를 차단하더라도 5V 전원이 내부 회로와 통신선을 타고 ESP32-C3의 3.3V 핀으로 역류할 수 있습니다.

    이를 방지하기 위해 소프트웨어 코드를 작성하실 때는 “전원을 차단하기 직전, 통신선 핀 모드를 INPUT으로 변경하거나 LOW로 떨어뜨리는 로직”을 반드시 추가해 주시는 것이 좋습니다.

    SI2302는 알리익스프레스나 국내 부품몰에서 개당 수십 원 단위로 구할 수 있는 초가성비 아이템이니, 배터리 기반의 IoT 가젯을 설계 중이시라면 꼭 한 번 활용해 보세요!


    컨트롤 MCU와 게이트 사이 저항값에 대해서

    마이크로컨트롤러(MCU)의 GPIO 보호 목적만 본다면 100Ω은 충분한 값이며, 1kΩ으로 올려도 정상 작동은 하지만 스위칭 속도가 미세하게 느려집니다. 그리고 아예 저항을 걸지 않으면(직결하면) 최악의 경우 MCU의 GPIO 핀이 고장 날 위험이 있습니다.

    왜 그런지 MOSFET 게이트의 독특한 구조인 ‘기생 커패시턴스(Cgs)’ 특성을 바탕으로 쉽게 설명해 드릴게요.

    1. 아예 저항을 안 걸면 어떻게 될까? (0Ω 직결)

    MOSFET의 게이트(Gate)는 내부적으로 완벽히 절연되어 있어서, 전류가 계속 흘러 들어가지 않습니다. 대신 아주 작은 콘덴서(커패시터)가 들어있다고 보시면 됩니다.

    • 스위칭 순간의 문제: 텅 비어있는 콘덴서에 전압을 거는 그 ‘찰나의 순간’에는 저항이 0인 쇼트 상태와 같습니다.
    • MCU의 위험: ESP32-C3의 GPIO 1번이 HIGH로 바뀌는 순간, 순간적으로 수십~백 mA 이상의 과전류(돌입 전류)가 게이트로 왈칵 흘러 들어갑니다. ESP32-C3의 GPIO가 안전하게 버틸 수 있는 최대 전류는 보통 20mA ~ 40mA 수준이기 때문에, 저항 없이 직결하면 이 순간적인 과전류 스트레스가 누적되어 GPIO 핀이 타버리거나 고장 날 수 있습니다.

    따라서 단 100Ω이라도 직렬로 달아주면, 옴의 법칙(I=V/R)에 의해 최대 피크 전류가 3.3V / 100Ω = 33mA 수준으로 제한되므로 MCU를 완벽하게 보호할 수 있습니다. 그래서 100Ω이 결코 작은 값이 아닙니다.

    2. 1kΩ 저항을 걸면 어떻게 될까?

    1kΩ을 걸면 피크 전류가 3.3V / 1kΩ = 3.3mA로 줄어드니 MCU 입장에서는 훨씬 더 안전하고 편안합니다. ESP32-CAM 전원 제어 같은 일반적인 ON/OFF 스위칭용으로는 1kΩ을 써도 아무런 문제 없이 잘 작동합니다.

    다만, 기술적으로 한 가지 트레이드오프(개념적 손해)가 발생합니다.

    • RC 시상수(Time Constant)의 증가: 앞서 게이트가 ‘소형 콘덴서’ 같다고 말씀드렸죠? 저항(R)의 크기가 커지면 콘덴서(C)에 전압이 완전히 충전되는 데 걸리는 시간(τ=R×C)이 늘어납니다.
    • 스위칭 속도 저하와 발열: 저항이 100Ω일 때는 나노초(ns) 단위로 순식간에 켜지던 MOSFET이, 1kΩ일 때는 켜지는 시간이 살짝 늘어납니다. MOSFET이 ‘어정쩡하게 켜져 있는 구간(과도기)’이 길어지면, 그 순간만큼은 도통 저항(RDS(on)​)이 높기 때문에 MOSFET 자체에 순간적인 발열과 전압 강하가 발생할 수 있습니다.

    3. 상황별 추천 가이드

    게이트 저항 값MCU 안전성스위칭 속도 (효율)한줄평
    0Ω (직결)❌ 위험 (핀 고장 가능성)⚡ 초고속절대 비추천 (테스트할 때나 잠깐 사용)
    100Ω ~ 220Ω안전 (전류 제한)⚡ 고속가장 추천 (PWM 제어나 고속 스위칭에 필수)
    1kΩ ~ 10kΩ둥글게 안전 (매우 안전)느림일반 ON/OFF용으론 무난 (단단한 안전 제일주의)

    요약하자면, ESP32-CAM을 단순히 하루에 몇 번, 혹은 몇 분에 한 번씩 껐다 켰다 하는 용도라면 부품 박스에 굴러다니는 1kΩ을 쓰셔도 아무런 지장이 없습니다. 다만 모터 제어처럼 고속으로 ON/OFF를 반복하는 회로(PWM)라면 MOSFET의 발열을 줄이기 위해 확실히 100Ω~220Ω 정도의 작은 저항을 써야 효율이 좋습니다.

  • [ESP8266] 구형이라도 괜찮아! 여전히 현역인 NodeMCU 보드의 매력과 핀맵 정리

    [ESP8266] 구형이라도 괜찮아! 여전히 현역인 NodeMCU 보드의 매력과 핀맵 정리

    안녕하세요! Mana’s Lab입니다.

    최근 ESP32-C3나 S3 같은 고성능 신형 마이크로컨트롤러(MCU)들이 쏟아져 나오면서, 예전에 유행하던 구형 ESP8266(NodeMCU) 보드는 서랍 구석에 잠들어 있는 경우가 많습니다.

    하지만 단순히 센서 데이터를 수집하고, 무선(Wi-Fi)으로 서버에 전송하는 홈 자동화나 데이터 로깅 프로젝트라면 어떨까요? 비싸고 복잡한 신형 칩셋 대신, 서랍 속 ESP8266을 꺼내야 할 이유는 충분합니다.

    오늘은 구형이지만 여전히 매력적인 ESP8266 NodeMCU 보드의 장점과, 작업할 때마다 매번 찾아보게 되는 핵심 핀맵(Pinout)을 깔끔하게 정리해 드립니다.

    1. 왜 아직도 ESP8266인가? (구관이 명관인 이유)

    • 검증된 Wi-Fi 안정성: 수년간 전 세계 수많은 메이커들에 의해 필드 테스트를 거쳤습니다. 2.4GHz 대역에서 끊김 없는 데이터 송수신을 보여주며, 단순 TCP/UDP 통신이나 MQTT, HTTP 요청 환경에서는 신형 칩셋 못지않게 매우 견고하고 안정적으로 동작합니다.
    • 압도적인 가성비와 콤팩트함: 복잡한 멀티코어나 블루투스 기능이 필요 없는 단순 IoT 기기(예: 온습도 모니터링, 스마트 인큐베이터 등)를 대량으로 구축할 때 이보다 경제적인 대안은 없습니다.
    • 풍부한 라이브러리와 레퍼런스: 아두이노 IDE든 MicroPython이든, 문제가 생겼을 때 구글링 한 번이면 전 세계 개발자들이 미리 겪고 해결해 둔 코드 템플릿을 쉽게 찾을 수 있습니다.

    2. ESP8266 NodeMCU 핵심 핀맵 (Pinout) 바로보기

    개발 보드의 실크 인쇄(D0, D1 등)와 아두이노/MicroPython에서 제어하는 실제 GPIO 번호는 다릅니다. 코딩할 때 헷갈리지 않도록 핀맵을 표로 정리했습니다.

    ◼️ 상단 핀 라인 (안테나가 왼쪽일 때 위쪽)

    핀 이름주요 기능GPIO 번호비고
    D0GPIO1616Deep Sleep 해제 시 RST 핀과 결선하는 핀
    D1GPIO5 / SCL5**I2C 통신(SCL)**으로 가장 권장하는 핀
    D2GPIO4 / SDA4**I2C 통신(SDA)**으로 가장 권장하는 핀
    D3GPIO00Flash 버튼 연결 핀 (부팅 모드 관여, 내부 풀업)
    D4GPIO2 / TXD12부팅 시 High 상태, 보드 내장 LED와 연동
    3V / G3.3V / Ground전원 및 접지
    D5GPIO14 / HSCLK14SPI 통신 (SCK)
    D6GPIO12 / HMISO12SPI 통신 (MISO)
    D7GPIO13 / HMOSI13SPI 통신 (MOSI)
    D8GPIO15 / HCS15SPI 통신 (CS) / 부팅 시 Low 상태여야 함
    RX / TXUART0 RX / TX3 / 1PC와의 시리얼 통신 및 펌웨어 다운로드용

    ◼️ 하단 핀 라인 (안테나가 왼쪽일 때 아래쪽)

    핀 이름주요 기능GPIO 번호비고
    A0ADC0ADC0유일한 아날로그 입력 (입력 범위 0V ~ 1.0V 주의)
    VVVBUS (5V)USB 연결 시 5V 전원 출력 핀
    S3 ~ SKSDIO 라인10, 9, 8, 11, 7, 6⚠️ 사용 금지: 내부 플래시 메모리 전용 핀
    ENCH_PD칩 활성화 (기본 High, Low 시 칩 종료)
    RSTReset리셋 핀 (RST 버튼과 연동)
    UINVIN외부 5V 전원 입력 공급 핀

    3. ESP8266 사용 시 꼭 기억해야 할 주의사항 (Troubleshooting)

    1. SD 라인 핀(S3, S2, S1, SC, S0, SK)은 건드리지 마세요! 보드 중앙 하단에 나열된 이 핀들은 내부 플래시 메모리와 통신하는 통로입니다. 이곳에 센서를 연결하거나 풀업/풀다운을 걸면 보드가 부팅되지 않고 무한 루프에 빠집니다. 일반 GPIO가 부족하더라도 이 핀들은 비워두셔야 합니다.
    2. 부팅 모드 핀 (Boot Pins) 매핑 주의 GPIO0(D3), GPIO2(D4), GPIO15(D8) 핀은 전원이 켜질 때 칩이 어떻게 작동할지 결정하는 부팅 설정 핀입니다. 예를 들어, D8 핀이 부팅 순간에 High 상태가 되면 정상 동작(Flash 실행)을 하지 않습니다. 따라서 부팅 시 전위에 영향을 주는 릴레이나 특정 센서 모듈을 연결할 때는 가급적 이 핀들을 피하고 D1, D2, D5, D6 등을 우선적으로 사용하는 것이 정신 건강에 좋습니다.
    3. 아날로그 전압 범위 ESP8266의 아날로그 핀(A0)은 기본적으로 0~1V까지만 측정할 수 있습니다. NodeMCU 보드 자체에 전압 분배 저항이 내장되어 있어 대략 0~3.3V까지 입력받을 수 있게 설계되어 있긴 하지만, 정밀한 전압 센싱이나 그 이상의 전압을 다룰 때는 반드시 외부에 저항 분배 회로를 추가해야 안전합니다.

    📝 마치며

    블루투스(BLE)나 고성능 AI 연산이 필요한 프로젝트가 아니라면, Wi-Fi 네트워크를 통해 데이터를 주기적으로 쏘아주는 웹 서버나 데이터 로거 역할로 ESP8266은 여전히 훌륭하고 차고 넘치는 성능을 보여줍니다.

    무엇보다 오랜 기간 다듬어진 네트워크 스택 덕분에 Wi-Fi 연결 안정성 하나만큼은 신형 못지않게 탄탄하다는 점이 가장 큰 무기입니다.

    집 안 서랍 속에서 잠자고 있는 구형 NodeMCU 보드가 있다면, 이번 기회에 가벼운 가전 제어나 온습도 모니터링 시스템으로 다시 숨을 불어넣어 보는 건 어떨까요?


    ** esp8266 에 마이크로 파이썬 설치가 안될때

    플래시 메모리 모드(DIO vs QIO) 설정 차이

    ESP8266칩과 내장 메모리가 통신하는 방식(Flash Mode)에는 QIO, QOUT, DIO, DOUT 등이 있습니다.

    • 아두이노 IDE는 스마트하게 보드에 맞춰 이 모드를 자동으로 조절해 컴파일하는 경우가 많지만, 마이크로파이썬 펌웨어를 직접 구울 때는 이 모드가 맞지 않으면 펌웨어 쓰기가 실패하거나, 써지더라도 무한 부팅(Boot loop)에 빠집니다.
    • 안 되는 보드가 유독 구형이거나 다른 제조사 칩이라면 플래시 모드를 DIO 또는 DOUT으로 낮추어 구워보아야 합니다.

    대량 생산되는 저가형 ESP8266 보드들은 묶음 상품이라도 내부에 들어가는 플래시 메모리 칩셋(Winbond, BergMicro 등)을 섞어서 쓰는 경우가 많습니다. 아두이노는 컴파일 시점에 이 칩셋 특성을 덜 타지만, 이미 만들어진 파일(바이너리)을 통째로 굽는 마이크로파이썬은 칩셋 특성을 심하게 탑니다.

    dout 모드로 체크하고 구우시면 대부분 정상적으로 >>> 프롬프트가 뜨며 작동할 것입니다!


    Thonny 내부 도구가 특정 PC 환경이나 드라이버 상태에 따라 플래싱 에러를 자주 뿜기도 합니다. 이럴 땐 역시 수동으로 날리는 esptool.py 명령어가 제일 확실하고 속편하죠!

    cmd(명령 프롬프트)에서 esptool.py를 사용할 때 dout 모드로 지정하는 방법은 아주 간단합니다. 명령어 옵션에 --flash_mode dout를 추가해 주시면 됩니다.

    그리고 마이크로파이썬을 구울 때는 앞서 말씀드린 erase_flash(전체 지우기)를 먼저 실행해 주는 것이 실패율을 극적으로 낮춰줍니다. 안 되는 1개의 보드를 위해 아래 순서대로 cmd에 입력해 보세요.

    🛠️ cmd에서 안전하게 다시 굽는 명령어 (2단계)

    1步. 먼저 플래시 메모리를 완전히 비웁니다.

    Bash

    (성공적으로 완료되면 Chip erase completed successfully 문구가 뜹니다.)

    2步. dout 모드 옵션을 넣어서 마이크로파이썬을 굽습니다. 기존 명령어에 --flash_mode dout를 추가한 버전입니다.

    Bash

    ✍️ 명령어 핵심 요약

    • --flash_mode dout: 플래시 메모리 통신 방식을 가장 호환성이 높은 호환 모드(Dual Output)로 강제 지정합니다. 속도는 QIO보다 미세하게 느리지만, 칩셋 특성을 타지 않아 먹통 보드를 살릴 때 직효약입니다.
  • [DIY IR 리모컨 만들기] IR LED 크기 3mm vs 5mm, 파장(940nm/850nm) 완벽 선택 가이드

    [DIY IR 리모컨 만들기] IR LED 크기 3mm vs 5mm, 파장(940nm/850nm) 완벽 선택 가이드

    IR(적외선) 송신용 LED를 선택할 때 3mm와 5mm의 크기 차이는 단순히 외형뿐만 아니라 송신 거리(출력)와 지향각(신호가 퍼지는 범위) 측면에서 성능 차이를 만들어냅니다.

    상황에 맞는 최적의 부품을 선택하실 수 있도록 핵심 차이점을 정리해 드립니다.


    1. 주요 성능 비교

    구분3mm IR LED5mm IR LED
    송신 거리상대적으로 짧음 (약 3~5m)상대적으로 긺 (약 5~10m 이상)
    지향각 (빔 각도)약 20° ~ 45° (넓은 편)약 15° ~ 30° (좁고 집중됨)
    정격 전류 (IF​)약 20mA ~ 50mA약 50mA ~ 100mA (고출력 가능)
    물리적 내구성작고 정밀한 실장 가능방열 및 고정 안정성이 좋음

    2. 상세 성능 분석

    가. 출력과 거리 (Power & Range) 5mm LED는 3mm에 비해 내부 다이(Die)의 크기가 크거나, 더 높은 전류를 견딜 수 있도록 설계된 경우가 많습니다.

    • 5mm: 더 높은 순방향 전류를 흘릴 수 있어 적외선 강도가 높고, 신호가 더 멀리 도달합니다. 거실처럼 넓은 공간에서 가전제품을 제어할 때 유리합니다.
    • 3mm: 출력이 낮아 근거리 제어에 적합합니다.

    나. 지향성 (Directivity)

    • 5mm (좁은 각도): 렌즈 역할을 하는 상단 돔이 크기 때문에 빛을 한곳으로 모으는 집광 능력이 좋습니다. 특정 방향으로 신호를 강하게 쏘기에 좋지만, 수신부와 각도가 맞지 않으면 수신율이 떨어질 수 있습니다.
    • 3mm (넓은 각도): 상대적으로 빛이 넓게 퍼집니다. 거리는 짧지만 각도 조절에 덜 민감하여, 수신 장치가 LED 정면에 있지 않아도 신호가 전달될 확률이 높습니다.

    다. 하드웨어 설계 편의성

    • 3mm: 공간이 협소한 소형 가전, 웨어러블 기기, 혹은 여러 개의 LED를 촘촘하게 배치해야 하는 경우에 유리합니다.
    • 5mm: 일반적인 리모컨이나 아두이노/ESP32 프로젝트용 모듈에서 가장 흔하게 쓰이며, 브레드보드나 만능기판에 고정하기가 더 수월합니다.

    요약 및 추천

    • ESP32 등을 이용한 스마트 홈 허브 제작 시: 거실 전체를 커버해야 하므로 5mm 고출력 LED를 권장합니다. 특히 출력을 극대화하려면 트랜지스터(TR)를 이용해 구동 전류를 높여주는 것이 좋습니다.
    • 컴팩트한 센서 노드나 소형 장치 제작 시: 공간 효율성을 위해 3mm LED를 사용하되, 부족한 거리는 LED 개수를 늘리거나 지향각을 조절하여 보완할 수 있습니다.

    회로 설계 시 전류 제한 저항을 계산할 때, 5mm 제품이 허용 전류가 더 높더라도 사용하시는 ESP32의 GPIO 핀 출력 한계(일반적으로 20~40mA)를 고려하여 적절한 TR(예: 2N2222)을 사용하는 것이 안정적입니다.


    적외선 LED에서 940nm850nm는 파장의 길이를 의미하며, 이 미세한 차이가 ‘가시성’과 ‘용도’에서 큰 차이를 만들어냅니다.


    1. 주요 차이점 비교

    구분940nm (불가시 적외선)850nm (저가시 적외선)
    가시성완전 무색. 육안으로 확인 불가붉은 광원. LED 소자가 빨갛게 보임
    감도 (효율)상대적으로 낮음상대적으로 높음 (약 30~40% 우수)
    주요 용도리모컨, 은밀한 감시용 CCTV일반 보안 CCTV, 야간 투시용
    도달 거리짧음동일 전력 대비 더 멂

    2. 상세 성능 분석

    가. 가시성 (Visibility)

    • 850nm: 인간의 가시광선 영역(약 380~750nm)에 가깝기 때문에, 어두운 곳에서 LED를 바라보면 소자 자체가 희미하게 붉은색 점으로 보입니다. 이를 ‘Red Glow’ 현상이라고 합니다.
    • 940nm: 가시광선 영역에서 완전히 벗어나 있어, 작동 중에도 육안으로는 아무런 빛이 보이지 않습니다. 스마트폰 카메라로 비춰보아야만 보라색 빛으로 작동 여부를 확인할 수 있습니다.

    나. 수신 감도와 효율

    • 850nm: 대부분의 CMOS 이미지 센서(CCTV 카메라 등)는 850nm 파장에 더 민감하게 반응합니다. 따라서 야간에 사물을 더 밝고 선명하게 비추기에 유리합니다.
    • 940nm: 공기 중의 수분에 의해 흡수되는 성질이 850nm보다 강하고 센서의 반응도도 낮아, 같은 거리의 영상을 얻으려면 850nm보다 더 많은 개수의 LED가 필요합니다.

    3. 상황별 추천 선택

    리모컨(IR Sender) 제작 시

    • 추천: 940nm
    • 이유: 가전제품 리모컨의 표준 파장은 대부분 940nm입니다. 리모컨을 누를 때마다 눈에 붉은빛이 보이면 사용자에게 거부감을 줄 수 있고, 수신부(IR Receiver) 모듈들 또한 대부분 940nm에 최적화되어 설계되어 있습니다.

    CCTV 및 야간 조명(IR Illuminator) 제작 시

    • 성능 중심이라면: 850nm. 더 적은 전력으로 더 멀리, 더 밝게 비출 수 있습니다. (흔히 보는 보안 카메라들이 밤에 빨갛게 보이는 이유입니다.)
    • 은밀함이 중요하다면: 940nm. 카메라가 작동 중임을 들키지 않아야 하는 야생동물 관찰이나 특수 보안용으로 적합합니다.

    💡 팁

    만약 IR 수신 모듈(TSOP 시리즈 등)을 사용하여 프로젝트를 진행하신다면, 반드시 해당 모듈의 데이터시트를 확인하여 매칭되는 파장을 선택해야 합니다. 대부분의 리모컨 수신용 IC는 940nm에서 최대 감도를 가지도록 튜닝되어 있습니다.

  • [엔코더 리뷰] 가성비 AS5600 탈출기? 이제는 MT6701을 써야 하는 이유

    [엔코더 리뷰] 가성비 AS5600 탈출기? 이제는 MT6701을 써야 하는 이유

    AS5600과 MT6701은 모두 비접촉식 자기식 엔코더(Magnetic Encoder)로, DIY 프로젝트나 로봇 관절 제어 등에 널리 사용됩니다. 하지만 두 칩은 성능과 기능 면에서 몇 가지 결정적인 차이가 있습니다.

    1. 주요 사양 비교

    항목AS5600 (ams OSRAM)MT6701 (MagnTek)
    해상도 (I2C)12-bit (4096 CPR)14-bit (16384 CPR)
    최대 회전 속도낮음 (정적 위치 제어에 적합)높음 (최대 55,000 RPM 지원)
    인터페이스I2C, 아날로그, PWMI2C, SSI, ABZ(증분형), UVW, PWM
    샘플링 속도약 150µs (느린 편)약 5µs (매우 빠름)
    전압 범위3.3V / 5.0V3.3V / 5.0V

    2. 핵심 차이점 상세 분석

    해상도 및 정밀도

    • AS5600: 12비트 해상도를 가집니다. 일반적인 각도 측정에는 충분하지만, 매우 미세한 제어가 필요한 경우에는 한계가 있을 수 있습니다.
    • MT6701: 14비트 해상도로 AS5600보다 4배 더 정밀합니다. 정밀한 서보 모터 제어나 고해상도 피드백이 필요한 경우 유리합니다.

    반응 속도와 RPM (가장 큰 차이)

    • AS5600: 내부 신호 처리 속도가 느려 고속 회전 시 오차가 커집니다. 주로 밸브 조절, 다이얼, 저속 로봇 관절 등 ‘위치’를 측정하는 용도에 적합합니다.
    • MT6701: 고속 샘플링을 지원하여 수만 RPM의 고속 회전에서도 안정적으로 데이터를 출력합니다. BLDC 모터 제어나 빠른 반응이 필요한 동적 시스템에 훨씬 적합합니다.

    출력 모드 (유연성)

    • AS5600: 주로 I2C나 아날로그 전압 출력을 사용합니다.
    • MT6701: I2C 외에도 ABZ 위상(엔코더 모드) 출력을 지원하므로, 일반적인 하드웨어 카운터 인터럽트를 사용하는 MCU(예: ESP32, STM32)에서 활용도가 더 높습니다.

    3. 프로젝트별 추천

    • AS5600을 선택해야 할 때:
      • 회전 속도가 느리고 정적인 각도 확인이 주 목적인 경우 (예: 스마트 팜 환기창 개폐 각도, DIY 볼륨 노브).
      • 라이브러리가 풍부하고 예제가 많아 구현이 쉬운 것을 원할 때.
      • 정밀도보다는 가성비와 단순 구현이 중요할 때.
    • MT6701을 선택해야 할 때:
      • 고속으로 회전하는 모터의 속도나 위치를 실시간으로 제어해야 할 때 (예: FOC 모터 제어, 드론).
      • 12비트 이상의 높은 정밀도가 필요할 때.
      • ABZ나 SSI 같은 다양한 통신 프로토콜을 사용해야 할 때.

    요약

    단순히 각도만 읽는 용도라면 저렴하고 익숙한 AS5600이 편하지만, 모터 제어나 정밀한 동적 움직임이 포함된다면 MT6701이 압도적으로 성능이 좋습니다. 최근 오픈 소스 하드웨어 씬(SimpleFOC 등)에서는 MT6701로 넘어가는 추세입니다.


    AS5600과 MT6701 외에도 프로젝트의 성격(정밀도, 가격, 인터페이스)에 따라 고려해 볼 만한 훌륭한 자기식 엔코더들이 더 있습니다. 주로 산업용 수준의 신뢰성이나 더 높은 해상도를 원할 때 사용하는 칩들입니다.


    1. AS5048 (A/B 타입)

    AS5600의 상위 버전 격으로, 고성능 DIY 프로젝트에서 가장 표준적으로 사용되는 칩입니다.

    • 해상도: 14-bit (16,384 CPR)
    • 특징: AS5600보다 훨씬 정밀하며, 노이즈에 강합니다.
    • 인터페이스: AS5048A는 SPI, AS5048B는 I2C를 지원합니다.
    • 추천 용도: 고정밀 짐벌(Gimbal) 모터 제어, 로봇 관절.

    2. TLE5012B (Infineon)

    가성비와 성능의 균형이 매우 뛰어나 고성능 모터 제어 커뮤니티(SimpleFOC 등)에서 매우 선호하는 칩입니다.

    • 해상도: 내부적으로 최대 15-bit 수준의 연산을 수행합니다.
    • 특징: 데이터 업데이트 속도가 매우 빠르고, SSC(SPI 호환), PWM, Encoder(IIF) 출력을 동시에 지원합니다.
    • 추천 용도: 고속 BLDC 모터의 정밀 위치 제어.

    3. MA730 (Monolithic Power Systems)

    속도와 지연 시간(Latency)에 극도로 민감한 프로젝트라면 최적의 선택입니다.

    • 해상도: 14-bit
    • 특징: 지연 시간이 매우 짧아 고속 회전 시에도 위상 차이가 거의 없습니다. 칩 크기가 매우 작아 소형 모듈화에 유리합니다.
    • 추천 용도: 초고속 모터 제어, 소형 서보 액추에이터.

    💡 선택을 위한 가이드

    요구 사항추천 부품이유
    “가장 대중적이고 정밀한 것”AS5048A라이브러리가 가장 많고 검증된 성능을 보여줍니다.
    “가성비와 속도 모두 챙기고 싶다”TLE5012B저렴한 모듈이 많으면서도 산업용급 성능을 냅니다.
    “초소형/초고속 제어가 필요하다”MA730반응 속도가 압도적으로 빠릅니다.

    추가 팁: 자기식 엔코더를 선택할 때는 칩 자체의 성능도 중요하지만, 자석(Magnet)과의 거리 및 정렬(Alignment)이 정밀도에 큰 영향을 미칩니다. 만약 축이 어긋날 가능성이 있다면, 어느 정도 오차를 보정해주는 기능이 있는 AS5047P 같은 모델도 좋은 대안이 됩니다.


    2026년 5월 현재, 알리익스프레스와 주요 부품 시장의 시세를 기준으로 한 5가지 엔코더의 가격대 비교입니다. (모듈 1개, 자석 포함 기준 대략적인 원화 환산 가격)


    💰 자기식 엔코더 5종 가격 비교

    부품명가격대 (대략)특징 요약가성비 평가
    AS5600약 1,500원 ~ 2,500원12-bit, I2C 전용, 저속용입문용 최저가. 단순히 각도만 읽을 때 가장 경제적입니다.
    MT6701약 2,500원 ~ 4,000원14-bit, 고속 RPM 지원, SSI/I2C/ABZ현재 압도적 1위. AS5600과 가격 차이는 적으면서 성능은 훨씬 뛰어납니다.
    AS5048A약 8,000원 ~ 12,000원14-bit, SPI/PWM, 높은 신뢰성표준형 중고가. 정밀도와 검증된 라이브러리가 필요한 고급 프로젝트용입니다.
    TLE5012B약 10,000원 ~ 25,000원15-bit, 초고속 데이터 갱신, 산업용전문가용. 고성능 FOC 모터 제어 등에 쓰이며 가격대가 높은 편입니다.
    MA730약 15,000원 ~ 30,000원14-bit, 초저지연(Latency), SPI/SSI하이엔드. 지연 시간이 극도로 짧아야 하는 정밀 로봇 관절용입니다.

    📊 블로그용 가격 분석 팁

    1. 가성비 깡패는 MT6701: AS5600보다 불과 1,000~2,000원 정도만 더 투자하면 4배의 해상도(14-bit)와 50,000 RPM급 속도 대응 능력을 얻을 수 있습니다. DIY 개발자들에게 가장 추천하기 좋은 포인트입니다.
    2. 가격 차이의 이유: * AS5600: 생산량이 어마어마하고 구조가 단순해 가장 저렴합니다.
      • TLE5012B / MA730: 내부 연산 속도가 훨씬 빠르고, 노이즈 필터링 및 고속 통신 프로토콜(SPI/SSI)을 지원하기 때문에 칩 단가가 비쌉니다.
    3. 번들 구매 팁: 알리익스프레스 등에서 5개 또는 10개 묶음으로 구매하면 개당 가격이 20~30% 정도 더 저렴해집니다. ‘Mana’s Lab’ 구독자들에게 “여러 개 사서 쟁여두고 쓰기에는 MT6701이 가장 합리적”이라고 조언해 주시면 좋을 것 같네요.

    MT6701은 I2C와 SSI(SPI와 유사) 방식을 모두 지원하지만, 14비트의 높은 해상도와 속도를 온전히 활용하기 위해 SSI(SPI) 방식을 사용하는 예제를 준비했습니다.


    1. ESP32 – MT6701 연결 (SSI 방식)

    MT6701 핀ESP32 핀 (예시)설명
    VDD3.3V전원
    GNDGND접지
    CSNGPIO 5Chip Select (Active Low)
    CLKGPIO 18Serial Clock
    DOGPIO 19Data Out (MISO)

    2. MicroPython 예제 코드

    이 코드는 하드웨어 SPI를 사용하여 MT6701로부터 14비트 각도 데이터를 읽어와 도(Degree) 단위로 변환합니다.

    Python

    3. 코드 포인트

    • 14비트 처리: raw_value >> 2 부분이 핵심입니다. MT6701은 16비트 통신 프레임을 사용하지만 실제 데이터는 상위 14비트에 들어있기 때문에 오른쪽으로 2비트 시프트(Shift)가 필요합니다.
    • SPI 설정: polarity=1, phase=1 (SPI Mode 3) 설정은 MT6701 데이터시트에서 권장하는 방식 중 하나입니다. 만약 값이 튀거나 이상하다면 polarity=0, phase=0으로 변경하며 테스트하면 된다.
    • 성능: I2C 라이브러리를 쓸 때보다 SPI 방식이 훨씬 빠르기 때문에, 고속 RPM 측정이나 SimpleFOC 연동 시 이 방식이 유리합니다.

    MT6701을 I2C 방식으로 사용하는 MicroPython 예제 코드입니다.

    I2C 방식은 SSI(SPI) 방식보다 배선이 간편하고, 다른 센서들과 버스를 공유할 수 있다는 장점이 있습니다. 다만, 고속 회전 제어 시에는 통신 속도가 병목 현상이 될 수 있으므로 정밀한 각도 판독용으로 추천합니다.


    1. ESP32 – MT6701 연결 (I2C 방식)

    MT6701 핀ESP32 핀 (예시)설명
    VDD3.3V전원
    GNDGND접지
    SCLGPIO 22I2C 클럭 라인
    SDAGPIO 21I2C 데이터 라인

    주의: MT6701의 I2C 주소는 기본적으로 0x06입니다. (칩 버전이나 설정에 따라 다를 수 있으니 i2c.scan()으로 확인하는 것이 좋습니다.)


    2. MicroPython 예제 코드 (I2C)

    Python


    3. 보충 설명

    • 레지스터 구조: I2C 방식은 SSI와 달리 특정 메모리 주소(레지스터)를 지정해서 읽습니다. MT6701의 경우 각도 데이터가 들어있는 레지스터 주소가 0x03번부터 시작하는 경우가 많습니다.
    • Pull-up 저항: 만약 모듈 형태가 아닌 칩 자체를 사용하신다면, SCL과 SDA 라인에 4.7kΩ 정도의 풀업 저항이 연결되어 있는지 확인해야 한다고 언급해 주시면 초보자들에게 큰 도움이 됩니다.
    • I2C vs SSI 비교: 배선이 복잡해도 성능을 원하면 SSI(SPI), 간단한 연결과 범용성을 원하면 I2C를 선택하면 됩니다.
  • ESP32-C3와 MicroPython으로 구현한 정밀 위치 제어 시스템 (PID 제어 및 WebSocket GUI)

    ESP32-C3와 MicroPython으로 구현한 정밀 위치 제어 시스템 (PID 제어 및 WebSocket GUI)

    단순한 모터 회전을 넘어, 엔코더 신호를 정밀하게 분석하여 원하는 각도에 정확히 멈추는 절대 위치 제어 시스템을 구축했습니다. 특히, 저해상도 엔코더의 한계를 극복하기 위한 PID 튜닝 과정과 브라우저에서 실시간으로 조작 가능한 WebSocket 기반의 현대적인 웹 GUI 구현 과정을 공유합니다.


    1. 하드웨어의 한계를 소프트웨어로 극복하기

    처음 사용한 펄스당 2회(PPR 2)의 저해상도 엔코더와 높은 기어비(666:359) 환경에서 발생하는 오차를 줄이기 위해 PID(Proportional-Integral-Derivative) 제어를 도입했습니다.

    • Kp(비례): 목표치에 빠르게 도달하는 힘
    • Ki(적분): 누적된 미세 오차를 제거
    • Kd(미분): 목표 지점 근처에서 브레이크를 걸어 오버슈트 방지 사용자 맞춤형 튜닝을 통해 모터가 부드럽고 정확하게 멈추는 최적의 값을 찾아가는 과정을 담았습니다.

    2. WebSocket을 이용한 실시간 웹 컨트롤러

    HTTP 방식의 느린 반응 속도를 해결하기 위해 WebSocket 핸드쉐이크를 직접 구현했습니다.

    • 실시간성: 브라우저의 슬라이더를 움직이는 즉시 모터가 반응합니다.
    • 다크 모드 GUI: 터치가 용이하도록 큼직한 버튼과 직관적인 슬라이더 디자인을 적용하여 사용자 편의성을 극대화했습니다.
    • 제로 포인트 설정: 물리적 위치가 틀어졌을 때 언제든 현재 위치를 0도로 고정할 수 있는 ‘SET ZERO’ 기능을 추가하여 실용성을 높였습니다.

    3. 고해상도 상상(Quadrature) 엔코더로의 진화

    더 정밀한 제어를 위해 Phase A/B 두 개의 신호를 사용하는 상상 엔코더 방식으로 시스템을 업그레이드했습니다. ESP32-C3의 인터럽트 기능을 활용해 방향 판별과 카운팅을 실시간으로 처리하며, 촘촘한 엔코더 디스크 환경에서도 데이터 누락 없이 안정적으로 동작하는 코드를 완성했습니다.

    4. 주요 설정 팁: Duty_u16과 속도 제한

    마이크로파이썬의 duty_u16이 가진 0~65535 범위를 효율적으로 배분했습니다. 기구부의 수명과 안정성을 고려해 MAX_DUTY를 제한하고, 모터가 멈추지 않고 돌아갈 수 있는 최소 전압인 MIN_DUTY를 설정하여 제어의 품질을 한 단계 끌어올렸습니다.


    IR 엔코더에서 두개 신호로 정회전 역회전 구분하는 원리

    IR 엔코더(일반적으로 광학식 인크리멘탈 엔코더)에서 회전 방향을 구분하는 핵심 원리는 **’위상차가 있는 두 개의 신호’**를 사용하는 것입니다. 보통 이 신호를 **A상(Phase A)**과 **B상(Phase B)**이라고 부릅니다.

    상세한 원리는 다음과 같습니다.

    1. 쿼드러처(Quadrature) 신호의 생성

    엔코더 내부에는 슬릿(구멍)이 있는 디스크와 이를 감지하는 두 개의 IR 센서가 약간 어긋난 위치에 배치되어 있습니다. 디스크가 회전하면 두 센서는 각각 독립적인 펄스 신호를 만들어내는데, 이때 센서의 배치 덕분에 두 신호는 정확히 **90도(1/4 주기)**의 위상차를 갖게 됩니다.


    2. 회전 방향에 따른 파형의 변화

    정회전과 역회전일 때 A상과 B상 중 어느 것이 먼저 “상승”하느냐에 따라 방향을 판별합니다.

    • 정회전 (Clockwise): A상 신호가 B상 신호보다 앞서서 발생합니다. 즉, A상이 ‘High’가 된 직후에 B상이 ‘High’가 됩니다.
    • 역회전 (Counter-Clockwise): B상 신호가 A상 신호보다 앞서서 발생합니다. 즉, B상이 ‘High’가 된 직후에 A상이 ‘High’가 됩니다.

    3. 상태 변화 판별 로직

    실제 마이크로컨트롤러(MCU)에서 방향을 읽을 때는 특정 시점의 신호 상태를 비교합니다. 예를 들어, **A상이 상승 에지(Low → High)**일 때 B상의 상태를 확인하는 방식입니다.

    기준점 (A상의 상승 에지)B상의 상태판별 결과
    A: ↑ (Rising)B: Low (0)정회전
    A: ↑ (Rising)B: High (1)역회전

    이처럼 두 신호의 조합을 통해 현재 바퀴나 모터가 어느 쪽으로 돌고 있는지, 그리고 펄스의 개수를 세어 얼마나 돌았는지(변위)를 동시에 계산할 수 있습니다.

    센서가 하나만 있다면 속도는 알 수 있지만 방향은 알 수 없기 때문에, 정밀 제어가 필요한 모터 시스템에서는 반드시 이 두 개의 신호(A, B상)를 활용하는 것이 표준입니다.

    과학상자 모터에 엔코딩

    프린터에서 추출한 엔코더 DC모터

  • 가변 저항과 뭐가 다를까? 무한 회전 EC11 엔코더 기초 가이드

    가변 저항과 뭐가 다를까? 무한 회전 EC11 엔코더 기초 가이드

    EC11은 가전제품이나 DIY 전자 기기에서 흔히 볼 수 있는 로터리 엔코더(Rotary Encoder) 부품입니다. 볼륨 조절기처럼 계속 돌아가면서 회전 방향과 클릭 여부를 감지할 수 있는 인터페이스 소자입니다.


    1. 주요 특징

    • 무한 회전: 가변 저항(Potentiometer)과 달리 끝없이 계속 회전할 수 있습니다.
    • 디지털 신호: 회전할 때마다 ‘딸깍’하는 느낌(Detent)과 함께 펄스 신호를 발생시켜 마이크로컨트롤러(MCU)가 회전 수와 방향을 읽게 합니다.
    • 푸시 스위치 내장: 축(Shaft)을 누르면 버튼 스위치로도 동작하여 메뉴 선택 등에 유용합니다.

    2. 핀 구성 (5핀 기준)

    일반적으로 한쪽에 3개, 반대쪽에 2개의 핀이 있습니다.

    회전 감지 (3개 핀)

    • A상 (Phase A): 회전 시 펄스가 나오는 출력 핀 1.
    • GND: 접지. 보통 가운데 핀에 해당합니다.
    • B상 (Phase B): 회전 시 펄스가 나오는 출력 핀 2. A상과의 위차 차이를 통해 회전 방향을 판단합니다.

    스위치 (2개 핀)

    • 축을 눌렀을 때 연결되는 독립된 스위치 단자입니다.

    3. 작동 원리: 증분형 엔코더

    EC11은 **그레이 코드(Gray Code)**를 사용하여 방향을 판별합니다.

    • 시계 방향(CW): A상이 B상보다 먼저 변합니다.
    • 반시계 방향(CCW): B상이 A보다 먼저 변합니다.

    4. 주요 사양 및 선택 가이드

    부품을 구매하거나 설계할 때 다음 사항을 확인해야 합니다.

    • 축의 길이 및 형태: 15mm, 20mm 등 길이와 ‘D’자형 혹은 별 모양(Knurled)인지 확인.
    • 디텐트(Detent): 한 바퀴 회전 시 ‘딸깍’하는 걸림이 몇 번 있는지 (보통 15회, 20회, 30회 등).
    • 전압: 대개 DC 5V 이하에서 작동합니다.

    5. 활용 예시

    • 오디오 기기: 볼륨 조절 및 곡 선택.
    • 3D 프린터: LCD 제어 패널의 메뉴 이동 및 선택.
    • 스마트 홈 장치: 조명 밝기 조절이나 온도 설정.

    회전 시 발생하는 채터링(Bounce) 현상을 방지하기 위해 소프트웨어적으로 디바운싱 처리를 하거나 10nF 정도의 커패시터를 연결하여 하드웨어적으로 필터링하는 것이 일반적입니다.


    EC11 로터리 엔코더는 단순한 회전 이상의 정밀한 제어가 가능해서 임베디드 프로젝트DIY 가전에서 활용도가 매우 높습니다. 특히 마이크로컨트롤러(MCU)와 결합했을 때 다음과 같은 응용이 가능합니다.


    1. 정밀 메뉴 내비게이션

    가장 대표적인 활용 사례입니다. 버튼을 눌러 메뉴에 진입하고, 회전시켜 항목을 이동하며, 다시 눌러 선택하는 ‘All-in-one’ 인터페이스를 구현할 수 있습니다.

    • 3D 프린터 제어반: 설정 온도 변경, 출력 파일 선택.
    • 스마트 홈 허브: 조명 색상 선택, 모드 전환.

    2. 값의 미세 조정 (Parameter Tuning)

    가변 저항은 회전 범위에 한계가 있지만, EC11은 무한 회전이 가능하므로 매우 넓은 범위의 값을 세밀하게 조정할 때 유리합니다.

    • 디지털 볼륨 컨트롤: 오디오 기기의 음량을 0부터 100까지(혹은 그 이상) 부드럽게 조절.
    • 모터 속도 제어: PWM 신호의 듀티 사이클을 1단위로 정밀하게 조절.
    • 타이머 설정: 분, 초 단위를 빠르게 돌려 설정.

    3. 입력 장치 커스텀 (HID 장치)

    PC와 연결하여 특정 소프트웨어의 단축키나 기능을 매핑한 전용 컨트롤러를 만들 수 있습니다.

    • 영상 편집용 조그 셔틀(Jog Shuttle): 프레임 단위로 영상을 앞뒤로 넘기거나 타임라인 스크롤.
    • 매크로 패드: 회전 시 브라우저 탭 전환, 줌 인/아웃, 화면 밝기 조절.

    4. 상태 모니터링 및 피드백 시스템

    엔코더의 회전 펄스를 계산하여 물리적인 움직임을 수치화할 수 있습니다.

    • 로봇 암(Arm) 관절: 관절이 회전한 각도를 계산하여 위치 제어.
    • 디지털 각도기/측정기: 회전축에 연결하여 회전한 거리나 각도를 LCD에 표시.

    실전 구현 팁: 활용성을 높이는 법

    • 가속도 알고리즘: 천천히 돌리면 1씩 변하고, 빨리 돌리면 10이나 100씩 변하도록 코딩하면 사용자 경험(UX)이 훨씬 좋아집니다.
    • LED 링 결합: 엔코더 주변에 LED 링을 배치하여 현재 설정된 값의 수준을 시각적으로 표현하면 고급스러운 UI를 만들 수 있습니다.

  • 자기식 로터리 엔코더 AS5600

    자기식 로터리 엔코더 AS5600

    AS5600은 자석의 회전 각도를 감지하는 자기식 로터리 엔코더(Magnetic Rotary Encoder) IC입니다. 슬롯형 디스크 방식이 “빛이 통과하느냐 마느냐”를 따졌다면, AS5600은 **”자기장의 방향이 어디인가”**를 측정합니다.

    작동 원리는 크게 세 단계로 나뉩니다.


    1. 홀 센서 어레이 (Hall Sensor Array)

    IC 내부에는 십자 형태나 원형으로 배치된 여러 개의 **홀 센서(Hall Effect Sensor)**가 들어 있습니다. 홀 센서는 자기장의 세기와 방향을 전기 신호로 바꾸는 소자입니다.

    2. 자기장 벡터 계산 (CORDIC 알고리즘)

    모터 축 끝에 붙인 **원형 자석(Diametric Magnet)**이 회전하면, IC 위에 형성되는 자기장의 방향이 계속 변하게 됩니다.

    • 내부에 배치된 센서들이 각각 측정하는 자기장의 세기가 달라집니다.
    • IC 내부의 프로세서가 이 값들을 조합하여 삼각함수(Sine, Cosine) 계산을 수행합니다.
    • 이를 통해 자석이 현재 몇 도 방향을 가리키고 있는지 정확한 **각도(Angle)**를 산출해 냅니다.

    3. 출력 방식 (Absolute Position)

    기존 광학식 엔코더는 단순히 펄스(딸깍거리는 신호)만 보내주기 때문에 전원을 껐다 켜면 현재 위치를 잊어버립니다. 하지만 AS5600은 **절대 위치(Absolute Position)**를 알려줍니다.

    • I2C 디지털 출력: 12비트 해상도(0~4095)로 현재 각도 값을 직접 숫자로 전달합니다.
    • PWM/아날로그 출력: 각도에 비례하는 전압이나 펄스 폭을 내보내 일반적인 가변저항(Potentiometer)처럼 쓸 수도 있습니다.

    주요 장점

    1. 비접촉 구조: 자석과 센서가 떨어져 있어 마모가 전혀 없고 수명이 반영구적입니다.
    2. 높은 내구성: 기름, 먼지, 물방울이 튀어도 자기장은 통과하므로 오작동이 거의 없습니다.
    3. 고해상도: 360도를 4096단계로 쪼개서 읽을 수 있어 매우 정밀한 제어가 가능합니다.
    4. 설계 편의성: 거대한 엔코더 디스크 대신 작은 자석(보통 지름 6mm 정도) 하나만 축 끝에 고정하면 끝납니다.

    사용 시 주의사항

    가장 중요한 점은 자석의 종류입니다. 일반적인 자석(축 방향으로 N/S극이 나뉜 자석)이 아니라, 원판의 옆면을 기준으로 반을 나눠 N/S극이 배치된 경방향 착자(Diametric Magnet) 자석을 써야 센서가 각도 변화를 읽을 수 있습니다.


    여러 종류 엔코더 방식

    슬롯형 디스크와 포토 인터럽트를 사용하는 방식은 ‘광학식(Optical) 증분 엔코더’의 가장 기초적인 형태입니다. 이 방식은 저렴하고 직관적이지만, 먼지에 취약하고 물리적인 디스크 크기 때문에 소형화에 한계가 있다는 단점이 있습니다.

    최근에는 이를 보완하거나 완전히 대체하는 자기식, 정전용량식, 그리고 고성능 광학 센서 기술들이 널리 쓰이고 있습니다.


    1. 자기식 엔코더 (Magnetic Encoder)

    최근 DIY 및 산업용 로봇 분야에서 가장 인기가 많은 방식입니다. 디스크 대신 **자석(Magnet)**을 축에 달고, 그 위에 홀 센서(Hall Effect Sensor) IC를 배치합니다.

    • 특징: 먼지, 기름, 습기 등 외부 오염에 무적에 가깝습니다.
    • 장점: 비접촉식이라 수명이 매우 길고, 아주 작은 크기로 제작 가능합니다.
    • 최근 기술: AS5600이나 AS5048 같은 IC는 자력의 방향을 읽어 360도 절대 위치(Absolute Position)를 12비트(4096단계) 이상의 고해상도로 바로 알려줍니다.

    2. 정전용량식 엔코더 (Capacitive Encoder)

    두 장의 판 사이의 정전용량 변화를 측정하는 방식입니다. 디지털 캘리퍼스(버니어 캘리퍼스)에 들어가는 기술과 유사합니다.

    • 특징: 광학식의 정밀함과 자기식의 내구성을 동시에 갖췄습니다.
    • 장점: 전기적 노이즈에 강하고, 환경 변화(온도 등)에 매우 안정적입니다. CUI Devices의 AMT 시리즈가 대표적이며, 사용자가 프로그래밍을 통해 해상도(PPR)를 조절할 수 있는 유연성이 있습니다.

    3. 반사형 광학 엔코더 (Reflective Optical Encoder)

    슬롯(구멍)을 통과하는 방식이 아니라, 반사판에 그려진 미세한 패턴에 빛을 쏘아 반사되는 양을 측정합니다.

    • 특징: 구멍을 뚫을 필요가 없으므로 디스크를 극단적으로 얇고 작게 만들 수 있습니다.
    • 장점: 스마트폰 카메라의 OIS(손떨림 방지)나 초소형 드론 모터처럼 공간이 극히 제한된 곳에 쓰입니다.

    4. 인덕티브 엔코더 (Inductive Encoder)

    금속판의 와전류(Eddy Current) 원리를 이용합니다.

    • 특징: 자기장 간섭이 심한 대형 모터나 발전기 근처에서도 오작동이 없습니다.
    • 장점: ‘자기식의 끝판왕’ 느낌으로, 강력한 자석이나 모터의 전자기 노이즈가 심한 가혹한 산업 현장에서 광학식을 빠르게 대체하고 있습니다.

    요약 및 추천

    구분광학식 (기존)자기식 (대세)정전용량식
    내오염성낮음 (먼지에 약함)매우 높음높음
    정밀도매우 높음보통~높음높음
    크기큼 (디스크 크기)매우 작음작음
    추천 용도정밀 CNC, 고정형 장비로봇 관절, RC카, 드론산업용 서보 모터

    만약 현재 진행 중인 프로젝트에서 “부피를 줄이고 싶다”거나 “먼지 때문에 오작동이 걱정된다”면 AS5600 같은 자기식 엔코더 모듈을 검토해 보시는 것을 강력히 추천드립니다. 소형 자석 하나만 모터 축 끝에 붙이면 되므로 기구 설계가 훨씬 단순해집니다.


  • 로봇의 근육, ‘DC 서보 모터’

    로봇의 근육, ‘DC 서보 모터’

    로봇 공학, 드론, 그리고 자동화 장비에서 빼놓을 수 없는 핵심 부품인 DC 서보 모터에 대해 알아보겠습니다.

    단순히 회전하는 일반 모터와 달리, 서보 모터는 “내가 원하는 각도만큼, 정확한 속도로” 움직이게 하는 능력이 탁월한데요. 그 비밀이 무엇인지 핵심만 콕콕 집어 정리해 드립니다.


    1. DC 서보 모터란 무엇인가?

    **서보(Servo)**라는 단어는 ‘따르다’, ‘시중들다’라는 뜻의 라틴어 Servus에서 유래되었습니다. 즉, 사용자의 명령(위치, 속도 등)에 따라 **피드백(Feedback)**을 주고받으며 정확하게 동작하는 모터를 말합니다.

    그중에서도 DC 전원을 사용하는 것이 DC 서보 모터이며, 정밀한 제어가 필요한 소형 기기나 산업용 로봇 팔에 주로 사용됩니다.


    2. DC 서보 모터의 구성 요소

    서보 모터가 똑똑하게 움직일 수 있는 이유는 내부에 다음의 4가지 요소가 유기적으로 결합되어 있기 때문입니다.

    1. DC 모터: 실제 회전력을 발생시키는 구동부.
    2. 기어 박스 (감속기): 모터의 속도를 줄이는 대신 힘(토크)을 키워줍니다.
    3. 위치 검출 센서 (엔코더/포텐셔미터): 현재 축이 어디에 있는지 실시간으로 확인합니다.
    4. 제어 회로 (Controller): 명령값과 현재 위치를 비교하여 오차를 수정합니다.

    3. 작동 원리: “닫힌 루프(Closed-loop)” 시스템

    일반 DC 모터는 전기를 주면 돌고, 끊으면 멈춥니다. 하지만 서보 모터는 다릅니다.

    • 명령: 사용자가 “90도 지점으로 이동해!”라고 신호를 보냅니다.
    • 비교: 제어 회로가 엔코더를 통해 현재 위치(예: 0도)를 파악합니다.
    • 구동: 목표치에 도달할 때까지 모터를 돌립니다.
    • 수정: 목표에 가까워지면 속도를 줄이고, 정확히 90도에 도달하면 그 상태를 유지합니다. 만약 외부 힘에 의해 축이 밀려나면 다시 90도로 돌아오려고 저항합니다.

    4. DC 서보 모터의 장점과 단점

    구분특징
    장점– 저속에서도 강한 토크를 낼 수 있음
    – 가속 및 감속 응답 속도가 매우 빠름
    – 소형화가 가능하며 효율이 좋음
    단점– 일반 모터에 비해 가격이 비쌈
    – 브러시 타입의 경우 브러시 마모로 인한 유지보수가 필요함 (BLDC 타입은 제외)

    5. 주요 활용 분야

    • RC 완구 및 드론: 방향타(Rudder) 제어 및 카메라 짐벌.
    • 로봇 공학: 관절 부위의 정밀한 각도 조절.
    • 스마트 팩토리: 부품을 정확한 위치로 옮기는 컨베이어 및 픽앤플레이스 장비.
    • 의료기기: 정밀한 수술 로봇이나 검사 장비.

    💡 마무리하며

    DC 서보 모터는 현대 자동화 기술의 **’근육과 신경’**과 같은 존재입니다. 단순히 도는 것을 넘어 ‘지능적인 움직임’을 가능하게 하죠. DIY 프로젝트나 로봇 제작을 계획 중이시라면, 제어 목적에 맞는 토크와 속도를 가진 서보 모터를 선택하는 것이 성공의 첫걸음입니다!


    이 영상은 Arduino와 함께 *홀 효과 인코더(Hall Effect Encoder)*가 장착된 DC 기어드 모터를 사용하여 모터의 회전 방향, 위치, 속도를 제어하는 방법을 상세히 설명합니다.

    주요 내용:

    • 인코더 원리 및 감지 (3:38 – 5:23): 인코더의 두 센서(A상, B상)가 발생하는 위상차(구형파)를 분석하여 모터의 회전 방향을 파악하는 방법을 설명합니다.
    • 회전 방향 감지 실습 (5:23 – 12:15): Arduino를 사용하여 인코더 신호를 시각화하고, 시리얼 플로터를 통해 정방향/역방향 회전 시 발생하는 신호 차이를 확인합니다.
    • 속도 및 위치 제어 (12:15 – 25:54): 인코더의 분해능을 활용하여 정확한 RPM 계산과 위치 제어를 구현합니다. Arduino의 인터럽트 기능을 사용하여 펄스를 카운트하고, PID 제어 개념을 도입하여 정밀한 위치 제어와 가변 속도 제어를 수행합니다.
    • 팁: 모터 구동 시 발생하는 소음을 줄이기 위해 PWM 주파수를 조정하거나 방진 소재를 사용하는 방법도 함께 다룹니다.

    이 프로젝트는 로봇 공학이나 자동화 시스템을 공부하는 입문자들에게 유용한 실습 가이드를 제공합니다.

  • 유튜브 DIY ESC 제대로 될까? 

    유튜브 DIY ESC 제대로 될까? 

    출처 유튜브 https://www.youtube.com/watch?v=SykfLBLP3xI

    이 영상은 “단 9개의 부품으로 만드는 초간단 BLDC 모터 드라이버(ESC)” 프로젝트의 실체를 파헤치고 검증하는 내용입니다. 유튜버 GreatScott!은 약 50만 회의 조회수를 기록한 해당 회로가 실제로 실용성이 있는지 직접 제작하며 테스트했습니다.

    주요 요약 내용은 다음과 같습니다.

    1. 회로의 특징과 문제점

    • 초간단 구조: 일반적인 ESC는 수십 개의 부품(영상 속 예시는 85개)이 들어가지만, 이 회로는 단 9개의 부품만 사용합니다 [01:12].
    • 4선식 모터 필요: 시중의 대부분 BLDC 모터는 3선식이지만, 이 회로는 ‘공통 단자(Star point)’가 있는 4선식 모터를 기준으로 설계되었습니다 [04:14]. 3선식으로도 동작은 하지만 불안정합니다.
    • 피드백 시스템의 한계: 상용 ESC는 마이크로컨트롤러를 통해 유도 기전력을 정밀하게 감지하여 스위칭 타이밍을 잡지만, 이 DIY 회로는 가공되지 않은 전압을 그대로 게이트 신호로 사용합니다 [08:32].

    2. 실제 테스트 결과

    • 자체 기동 불가: 대부분의 경우 전원을 넣어도 바로 회전하지 않으며, 손으로 돌려줘야 겨우 돌아가기 시작합니다 [05:56].
    • 부하에 취약: 모터에 약간의 부하만 걸려도 회전이 멈춰버리며, 멈춘 상태에서는 다시 시작하기가 매우 어렵습니다 [07:37].
    • 부품 파손 위험: 정밀한 제어가 되지 않아 과도한 전류와 전압 스파이크가 발생하며, 이는 결국 모스펫(MOSFET)을 파괴할 가능성이 큽니다 [09:26].

    3. 최종 결론

    • 이 회로는 단순히 모터가 돌아가는 것을 보여주는 **’눈속임용 장난감(Gimmick)’**에 가깝습니다 [09:24].
    • 실제 드론, 스케이트보드 등 부하가 걸리는 장치에는 절대 사용할 수 없으며, 화재나 부품 파손의 위험이 있으니 배터리에 연결하지 말라고 경고합니다.
    • 저렴한 ESC가 필요하다면 차라리 시중에서 판매하는 저가형 제품을 구매하는 것이 훨씬 안전하고 효율적입니다 [09:48].

    요약하자면: 유튜브의 “너무 간단해서 놀라운” 전자 회로 영상들은 중요한 단점들을 숨기는 경우가 많으니 주의해야 하며, 이 DIY ESC는 실용성이 전혀 없다는 것이 결론입니다.

  • 소중한 내 회로를 지켜라! DC/스텝 모터의 ‘역 기전력’과 1N5822 쇼트키 다이오드 활용법

    소중한 내 회로를 지켜라! DC/스텝 모터의 ‘역 기전력’과 1N5822 쇼트키 다이오드 활용법

    안녕하세요! 메이커 여러분, 그리고 전자 회로 애호가 여러분.

    아두이노나 라즈베리 파이를 이용해 로봇 팔을 만들거나, 3D 프린터를 DIY 하면서 DC 모터나 스텝 모터를 다뤄보신 적이 있으시죠? 모터가 부드럽게 돌아갈 때의 쾌감은 정말 최고입니다. 하지만 열심히 짠 코드를 업로드하고 모터를 구동하는 순간, 갑자기 아두이노가 재부팅되거나 심지어 모터 드라이버 IC가 타버리는 끔찍한 경험을 해보신 분들도 계실 겁니다.

    “분명 연결은 맞게 했는데, 왜 이럴까?”

    이런 미스터리한 고장의 주범은 바로 눈에 보이지 않는 무서운 복병, **역 기전력(Back EMF, Electromotive Force)**입니다. 오늘은 이 역 기전력이 무엇인지, 그리고 이 파괴적인 힘으로부터 우리의 소중한 회로를 단돈 몇 백 원으로 지켜줄 메이커들의 필수 아이템, 1N5822 쇼트키 다이오드에 대해 알아보겠습니다.


    1. 문제의 근원: 모터는 ‘발전기’이기도 합니다. (역 기전력의 이해)

    모터는 전기를 넣어주면 회전하는 장치입니다. (전기 에너지 $\rightarrow$ 운동 에너지) 하지만 물리학의 놀라운 점은 이 과정이 정반대로도 일어난다는 것입니다. 모터 내부에 있는 코일이 자석 근처에서 회전하면, 거꾸로 전기가 만들어집니다. (운동 에너지 $\rightarrow$ 전기 에너지 = 발전기)

    그렇다면 우리가 모터를 구동할 때 무슨 일이 벌어질까요?

    1. 모터 드라이버가 모터에 전기를 공급하여 코일을 자화시키고 모터를 회전시킵니다.
    2. 모터가 회전하는 동안, 모터 내부의 코일은 스스로 발전기 역할을 하여 공급되는 전압과 반대 방향의 전압을 만들어냅니다. 이것이 바로 역 기전력입니다.
    3. 정상적인 구동 중에는 이 역 기전력이 공급 전압보다 낮아 큰 문제가 되지 않습니다.

    진짜 문제는 ‘모터가 멈추거나 갑자기 전원이 끊길 때’ 발생합니다.

    모터는 관성을 가지고 있어 전원이 끊겨도 잠시 더 회전합니다. 이때 모터는 완벽한 발전기가 됩니다. 특히 회전을 멈추는 순간, 코일에 흐르던 전류가 갑자기 차단되면서 코일 주변의 자기장이 급격히 붕괴됩니다. 렌츠의 법칙에 의해, 코일은 이 변화에 저항하려고 하며, 이 순간 순간적으로 공급 전압보다 수 배에서 수십 배 높은 초고압의 역 기전력을 반대 방향으로 쏘아 보냅니다.


    2. 역 기전력이 회로에 미치는 피해

    이 순간적인 고전압 스파이크는 회로의 약한 고리를 공격합니다.

    • 모터 드라이버 IC 파괴: L298N, DRV8825 같은 모터 드라이버 IC의 내부 트랜지스터(MOSFET 등)가 견딜 수 없는 전압이 가해져 타버립니다. 가장 흔한 피해입니다.
    • 마이크로컨트롤러(MCU) 오작동 및 파괴: 전원 라인을 타고 고전압 스파이크가 아두이노나 ESP32 같은 MCU로 유입되면, 순간적으로 로직 전압이 흔들려 재부팅(Reset)이 발생하거나, 심하면 전원 핀이나 I/O 핀이 영구적으로 손상됩니다.
    • 전원장치 손상: 고전압이 전원 배터리나 어댑터 쪽으로 역류하여 전원장치의 수명을 단축시키거나 고장을 유발할 수 있습니다.

    요약하자면, 모터는 멈추는 순간 회로를 향해 전기적인 ‘어퍼컷’을 날리는 셈입니다.


    3. 해결책: 1N5822 쇼트키 다이오드로 ‘전기적 안전벨트’ 매기

    이 파괴적인 역 기전력을 어떻게 막을 수 있을까요? 가장 효과적인 방법은 방향을 바꾸는 것입니다. 고전압 스파이크가 모터 드라이버나 MCU 쪽으로 흐르지 못하게 하고, 모터 자체 내에서 소모되거나 전원의 양극(+)으로 안전하게 바이패스(Bypass)시키는 것입니다.

    이를 위해 사용하는 것이 바로 프리휠링 다이오드(Freewheeling Diode) 또는 **플라이백 다이오드(Flyback Diode)**라 불리는 회로 구성입니다. 그리고 이 역할에 가장 적합한 부품 중 하나가 바로 1N5822 쇼트키 다이오드입니다.

    왜 1N5822 쇼트키 다이오드인가?

    많은 분들이 흔히 쓰는 일반 정류 다이오드(예: 1N4007)를 생각하실 수 있습니다. 하지만 모터 구동처럼 고전류가 흐르고 빠른 스위칭이 필요한 곳에서는 **쇼트키 다이오드(Schottky Diode)**가 훨씬 유리합니다.

    1. 매우 빠른 스위칭 속도 (Fast Response): 역 기전력 스파이크는 아주 짧은 순간에 발생합니다. 일반 다이오드는 이 스파이크에 반응해서 켜지는 데 시간이 걸려, 다이오드가 작동하기도 전에 회로가 손상될 수 있습니다. 반면 쇼트키 다이오드는 스위칭 속도가 훨씬 빨라 순간적인 스파이크를 즉시 잡아낼 수 있습니다. (전기적 안전벨트가 더 빨리 작동하는 셈입니다.)
    2. 낮은 순방향 전압 강하 ($V_F$, Low Voltage Drop): 다이오드가 작동할 때 전압 손실이 발생합니다. 일반 다이오드는 약 0.7V~1V의 전압 강하가 발생하지만, 1N5822 같은 쇼트키 다이오드는 약 0.3V~0.5V(전류에 따라 다름) 정도로 훨씬 낮습니다. 이는 다이오드에서 발생하는 열을 줄이고 에너지 효율을 높여줍니다. 특히 보조배터리로 구동하는 모바일 로봇에서 중요합니다.
    3. 적절한 용량: 1N5822는 최대 3A의 전류를 견딜 수 있습니다. 일반적인 NEMA 17 스텝 모터나 중소형 DC 모터 구동에 충분한 용량입니다. (1N4007은 1A까지만 견디므로 모터용으로는 부족합니다.)

    4. 실전! 1N5822 다이오드 부착 방법

    방법은 아주 간단합니다. 모터의 두 단자(코일 양끝)에 다이오드를 병렬로 연결하되, 방향이 중요합니다. 다이오드는 전류를 한 방향으로만 흐르게 하는 부품입니다.

    • 다이오드의 띠(캐소드, -)가 모터 전원의 양극(+) 쪽에 가도록,
    • 띠가 없는 쪽(애노드, +)이 모터 전원의 음극(-) 쪽에 가도록 연결합니다.

    왜 반대로 연결하나요?

    정상 구동 중에는 다이오드 방향이 반대라서 전류가 다이오드로 흐르지 않고 모터로만 흐릅니다. 하지만 전원이 끊겨 역 기전력이 발생하면, 역 기전력은 원래 전원과 **반대 방향(음극 $\rightarrow$ 양극)**으로 전압을 만듭니다. 이때는 다이오드 입장에서 순방향이 되므로, 고전압 스파이크가 모터 드라이버로 가지 않고 다이오드를 통해 모터 코일 내에서 안전하게 순환하며 소모됩니다. (또는 전원의 양극(+)으로 안전하게 바이패스됩니다.)

    (참고용 이미지: DC 모터 양 단자에 1N5822 다이오드가 병렬로, 캐소드 띠가 양극 쪽을 향하게 연결된 모습)

    스텝 모터의 경우: 스텝 모터는 코일이 여러 개입니다. (예: 4선식 바이폴라 모터는 2개의 코일). 각 코일마다 한 개씩, 총 2개의 다이오드를 위와 같은 방식으로 연결해 주어야 합니다.


    5. 마무리: 단돈 몇 백 원의 기적

    메이커로서 1N5822 쇼트키 다이오드는 모터 프로젝트의 ‘생명줄’과 같습니다. 몇 백 원짜리 다이오드 몇 개를 아끼려다 수만 원짜리 모터 드라이버나 아두이노를 날려먹는 것은 너무나 뼈아픈 경험입니다.

    이제부터 DC 모터나 스텝 모터를 사용하는 프로젝트를 계획하신다면, 반드시 부품 목록에 1N5822 쇼트키 다이오드를 추가하세요. 그리고 모터 단자에 이 ‘전기적 안전벨트’를 매주는 것을 잊지 마세요. 여러분의 소중한 회로를 건강하게 지키면서 더 멋진 메이커 활동을 이어나가시길 바랍니다!


    1N5822 vs 1N4004 크기 비교

    📊 1N5822 핵심 제원 (Data Sheet 요약)

    항목사양 값의미
    순방향 전류 ($I_{F}$)3.0A지속적으로 3암페어까지 흘릴 수 있음 (17모터 10개분)
    역방향 내압 ($V_{RRM}$)40V반대 방향으로 들어오는 전압을 40V까지 버팀
    순방향 전압 강하 ($V_{F}$)약 0.52V전류 통과 시 전압 손실이 매우 적음 (일반은 0.7~1.1V)
    서지 전류 ($I_{FSM}$)80A아주 짧은 순간(8.3ms) 발생하는 80A 폭주 전류도 견딤
    동작 온도-65°C ~ 125°C에어컨 같은 가혹한 환경에서도 동작 가능

    💡 왜 1N5822가 특별할까요?

    1. 전압 손실이 적습니다 (Low $V_{F}$)

    일반 다이오드는 전기가 지나가면 약 $0.7V$에서 $1.1V$를 깎아 먹습니다. 하지만 1N5822는 약 $0.5V$ 정도만 소비합니다.

    • 이득: 전압 손실이 적으니 열이 덜 나고, 배터리 효율이 좋아집니다. ESP32-C3 같은 정밀 기기 전원부에 딱입니다.

    2. 반응 속도가 광속입니다 (Fast Switching)

    쇼트키 다이오드는 ‘역회복 시간’이 거의 0에 가깝습니다.

    • 이득: 스텝모터처럼 고주파로 전기가 켜졌다 꺼졌다 하는 회로에서 발생하는 노이즈와 스파이크 전압을 즉각적으로 잡아내어 소멸시킵니다.

    🛠️ 실전 활용법 (지금 프로젝트에서)

    1. 전원 역접속 방지 (보디가드):
      • 전원부 + 라인에 직렬로 연결하세요. 실수로 배터리를 반대로 끼워도 ESP32와 TMC2209가 타는 것을 100% 막아줍니다.
    2. 모터 역기전력 흡수 (댐퍼):
      • 아까 걱정하신 “손으로 돌릴 때 발생하는 전기”를 막기 위해 드라이버 전원 입력단에 달아주면 든든한 보험이 됩니다.
    3. 병렬 전원 구성:
      • USB 전원과 외부 배터리를 동시에 연결할 때, 서로 전기가 역류하지 않도록 ‘체크 밸브’ 역할을 수행하게 할 수 있습니다.

    ⚠️ 주의할 점

    • 굵은 다리: 1N5822는 다리가 꽤 굵습니다. 일반 브레드보드에 억지로 꽂으면 구멍이 헐거워질 수 있으니, 가급적 납땜을 하거나 전용 커넥터를 쓰는 게 좋습니다.
    • 40V 한계: 전압 내압이 40V입니다. 만약 48V 이상의 고전압 산업용 모터를 돌린다면 이 다이오드는 터질 수 있습니다. (하지만 지금 쓰시는 5V~24V 환경에서는 천하무적입니다.)