TITLE: ESP32 C3 Super Mini - MQ3 알코올 센서
이 튜토리얼은 ESP32 C3 Super Mini를 MQ3 알코올 센서와 함께 사용하여 공기 중의 에탄올 및 알코올 증기를 감지하는 방법을 보여줍니다. DIY 호흡 분석기 프로젝트 및 알코올 감지 시스템 구축에 완벽합니다!
이 튜토리얼에서 배우게 될 내용:
- MQ3 알코올 센서가 무엇이고 알코올 증기를 감지하는 방법
- MQ3 센서 모듈을 ESP32 C3 Super Mini에 배선하는 방법
- ESP32 C3 Super Mini를 프로그래밍하여 알코올 농도 데이터를 읽는 방법
- 정확한 호흡 측정 판독값을 위해 센서를 보정하는 방법
- 임계값 기반 알코올 감지 시스템을 구축하는 방법

필요한 하드웨어
| 1 | × | ESP32 C3 Super Mini | 아마존 | |
| 1 | × | USB 타입-C 케이블 | 쿠팡 | 아마존 | |
| 1 | × | MQ3 알코올 센서 | 아마존 | |
| 1 | × | 브레드보드 | 쿠팡 | 아마존 | |
| 1 | × | 점퍼 와이어 | 쿠팡 | 아마존 |
MQ3 알코올 센서 정보
MQ3는 감지 소자의 저항 변화를 측정하여 알코올 증기 및 에탄올을 감지하는 가스 센서입니다.
- 작동 전압: 5V DC
- 감지 범위: 25-500 ppm (백만분율)
- 부하 저항: 200 KΩ
- 히터 저항: 33Ω ± 5%
- 가열 소비: < 800mW
- 감지 저항: 1 MΩ – 8 MΩ
- 예열 시간: 첫 사용 시 24-48시간, 이후 사용 시 5-10분
- 출력 타입: 디지털(DO) 및 아날로그(AO) 출력 모두
- 센서 타입: 금속 산화물 반도체(MOS) 화학 저항기
- 감지 물질: 세라믹 기판의 이산화 주석(SnO2)
- 완벽한 용도: DIY 호흡 측정기, 알코올 증기 알람, 공기 질 모니터, 음주운전 감지기
MQ3 알코올 센서 모듈은 가열된 금속 산화물 반도체를 사용하여 공기 중의 알코올 분자를 감지합니다. 알코올 증기가 센서 표면에 접촉하면 전기 저항이 변하며, ESP32 C3 Super Mini가 이를 측정할 수 있습니다.
핀아웃
MQ3 알코올 센서 모듈은 ESP32 C3 Super Mini에 쉽게 연결할 수 있는 4개의 핀을 가지고 있습니다:
- VCC 핀: 전력 공급 핀 - 5V에 연결
- GND 핀: 접지 핀 - GND(0V)에 연결
- DO 핀: 디지털 출력 핀 - 임계값 설정을 기반으로 HIGH 또는 LOW 출력
- AO 핀: 아날로그 출력 핀 - 알코올 농도에 비례하는 전압 출력

모듈에는 두 개의 LED 표시기가 포함되어 있습니다:
- PWR-LED: 전원 표시기 - 모듈이 전원이 켜질 때 켜짐
- DO-LED: 감지 표시기 - 알코올이 임계값 이상으로 감지되면 켜짐
작동 방식
MQ3 센서는 이산화 주석(SnO2) 반도체 물질의 저항 변화를 통해 알코올을 감지합니다:
깨끗한 공기 작동:
- 산소 분자는 가열 시 SnO2 표면에 붙음
- 갇힌 전자는 높은 전기 저항을 생성
- 센서는 아날로그 핀에서 낮은 전압 출력
알코올 증기 감지:
- 알코올 분자는 표면 산소와 반응
- 갇힌 전자를 물질로 다시 방출
- 전기 저항이 크게 감소
- 센서는 아날로그 핀에서 높은 전압 출력
- 더 많은 알코올 = 더 낮은 저항 = 더 높은 전압 출력
디지털 출력(DO 핀):
- 온보드 포텐셜미터를 사용하여 감지 임계값을 설정
- 알코올이 임계값을 초과할 때 DO 핀이 LOW(LED 켜짐)
- 알코올이 임계값 이하일 때 DO 핀이 HIGH(LED 꺼짐)
- 간단한 예/아니오 알코올 감지에 완벽
아날로그 출력(AO 핀):
- 0-4095 범위(ESP32 ADC 범위)의 연속 전압 판독값 제공
- 더 높은 전압 = 더 많은 알코올 증기 감지
- 더 낮은 전압 = 더 적은 알코올 증기
- 실제 농도 수준을 측정하는 데 이상적
- 포텐셜미터 설정의 영향을 받지 않음
예열 및 보정
예열 요구사항
MQ3 알코올 센서는 정확한 측정을 수행하기 전에 적절한 가열이 필요합니다:
- 첫 사용 또는 30일 이상 보관 후: 센서 판독값을 안정화하기 위해 24-48시간 동안 연속 가열
- 정기적인 사용: 측정을 수행하기 전에 5-10분 예열
- 예열 중: 초기 판독값은 정상보다 높을 수 있지만 빠르게 안정화됨
- 예열 방법: VCC를 5V에, GND를 USB 전원 또는 외부 공급을 통해 접지에 연결하기만 하면 됨
임계값 찾기
모든 MQ3 센서는 약간씩 다르므로 호흡 측정기 프로젝트에는 보정이 필수입니다:
- 깨끗한 공기 기준선 테스트:
- 알코올이 없는 신선한 공기에서 센서 실행
- 아날로그 값 기록(일반적으로 100-150)
- 이것이 "깨끗한" 기준선 판독값
- 알코올 증기 테스트:
- 이소프로필 알코올 또는 손 소독제를 센서 근처(접촉하지 않음)에 들고 있음
- 증기가 센서 소자에 도달하도록 함
- 더 높은 판독값 기록(일반적으로 400-900, 증기 농도에 따라 다름)
- 이것은 "감지" 범위를 설정
- 감지 영역 설정:
- 깨끗한 범위: 기준선 + 20 미만(예: 판독값 < 120)
- 중간 범위: 중간 수준 판독값(예: 120-400)
- 높은 범위: 중간 임계값 이상(예: > 400)
- 중요 사항: 개별 센서는 다름, 환경 조건이 판독값에 영향, 실제 사용 전에 항상 특정 센서를 보정
디지털 임계값 설정
온보드 포텐셜미터를 조정하여 DO 핀이 트리거될 때를 설정합니다:
- 알코올 증기에 센서 노출(손 소독제 또는 문지르는 알코올 사용)
- DO-LED가 켜질 때까지 포텐셜미터를 시계 방향으로 회전
- LED가 꺼질 때까지 천천히 반시계 방향으로 회전
- 디지털 임계값은 이제 원하는 민감도 수준에 맞게 보정됨
- 알코올 증기에 다시 노출하여 테스트 - LED가 안정적으로 켜져야 함
배선도
MQ3 센서 모듈은 디지털 및 아날로그 출력을 모두 사용하여 ESP32 C3 Super Mini에 쉽게 연결됩니다.
- 참고: MQ3 센서는 적절한 가열을 위해 5V 전력이 필요합니다. VCC를 3.3V가 아닌 5V 핀에 연결하세요.

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
| MQ3 알코올 센서 | ESP32 C3 Super Mini |
|---|---|
| VCC | 5V |
| GND | GND |
| DO | D7 |
| AO | A5 |
ESP32 C3 Super Mini 코드 - 디지털 출력 읽기
이 코드는 MQ3 센서에서 디지털 출력을 읽어 알코올 존재 여부를 감지합니다:
- 매초 DO 핀 상태 확인
- Serial Monitor에 감지 상태 인쇄
- 온보드 포텐셜미터에 의해 설정된 임계값 사용
- 간단한 예/아니오 알코올 감지
빠른 단계
- ESP32 C3 Super Mini를 처음 사용하시나요? 개발 환경을 설정하려면 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하세요.
- Arduino IDE 열기: 컴퓨터에서 Arduino IDE를 실행합니다
- 코드 복사: 위의 코드를 복사하여 Arduino IDE에 붙여넣으세요
- 보드 선택: Tools > Board 메뉴에서 ESP32 C3 Super Mini 선택
- 포트 선택: Tools > Port 메뉴에서 올바른 COM 포트 선택
- 코드 업로드: Upload 버튼을 클릭하여 ESP32 C3 Super Mini를 프로그래밍
- Serial Monitor 열기: Serial Monitor 아이콘(오른쪽 상단)을 클릭하거나 Ctrl+Shift+M 누르기
- 보드 레이트 설정: Serial Monitor 드롭다운에서 115200 보드 선택
- 알코올로 테스트: 손 소독제 또는 문지르는 알코올을 MQ3 센서 근처에 가져가기
- 결과 확인: Serial Monitor에서 감지 상태 변경 확인
- 민감도 조정: LED가 항상 켜져 있거나 꺼져 있으면 포텐셜미터를 조정하여 임계값 조정
- 전문가 팁: 센서를 만지지 않고 일관된 테스트를 위해 이소프로필 알코올에 적신 솜을 사용합니다.
ESP32 C3 Super Mini 코드 - 아날로그 출력 읽기
이 코드는 MQ3 센서에서 아날로그 전압 값을 읽어 알코올 농도를 측정합니다:
- 매초 AO 핀에서 아날로그 값을 읽음
- Raw ADC 값 표시(0-4095 범위)
- 더 높은 값은 더 많은 알코올 증기를 나타냄
- Serial Monitor에 판독값 표시
빠른 단계
- ESP32 C3 Super Mini를 처음 사용하시나요? 개발 환경을 설정하려면 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하세요.
- 코드 복사: 위의 코드를 Arduino IDE에 붙여넣으세요
- 보드에 업로드: Upload 버튼을 클릭하여 ESP32 C3 Super Mini를 프로그래밍
- Serial Monitor 열기: 보드 레이트를 115200으로 설정
- 기준선 값 주목: 깨끗한 공기에서 판독값 관찰(일반적으로 100-150)
- 알코올로 테스트: 손 소독제 또는 문지르는 알코올 증기를 센서 근처에 도입
- 값 증가 확인: 알코올이 감지될 때 판독값이 크게 증가
- 값 기록: 보정을 위해 범위 기록
- 전문가 팁: 호흡 측정기 프로젝트에 대한 정확한 임계값을 계산하기 위해 깨끗한 공기 기준선 및 알코올 증기 판독값을 적어놓습니다.
ESP32 C3 Super Mini 코드 - 임계값 감지가 있는 호흡 측정기
이 코드는 보정된 임계값으로 아날로그 판독값을 해석하여 간단한 호흡 측정기를 만듭니다:
- 아날로그 알코올 농도 값을 읽음
- 보정된 임계값에 대해 판독값을 비교
- 청결 수준 분류(Sober, Drinking, Drunk)
- Serial Monitor에서 상태 및 센서 값 표시
- 매초 판독값 업데이트
빠른 단계
- ESP32 C3 Super Mini를 처음 사용하시나요? 개발 환경을 설정하려면 먼저 ESP32 C3 슈퍼 미니 - 시작하기 튜토리얼을 완료하세요.
- 먼저 보정: 아날로그 판독 코드를 실행하여 센서의 기준선 및 알코올 감지 값 찾기
- 임계값 업데이트: SOBER_THRESHOLD 및 DRUNK_THRESHOLD를 보정된 값으로 바꾸기
- 예제 보정: 깨끗한 공기가 130을 읽고 알코올 증기가 500+를 읽으면 SOBER_THRESHOLD = 150 및 DRUNK_THRESHOLD = 400 사용
- 코드 업로드: Upload 버튼을 클릭하여 ESP32 C3 Super Mini 프로그래밍
- Serial Monitor 열기: 보드 레이트를 115200으로 설정
- 시스템 테스트: 먼저 센서 근처에서 정상적으로 호흡("Stone Cold Sober" 읽어야 함)
- 알코올로 테스트: 손 소독제 또는 이소프로필 알코올 증기를 사용하여 알코올 호흡 시뮬레이션
- 상태 변경 관찰: 시스템이 다양한 농도 수준을 분류하는 것을 봅니다
- 전문가 팁: 더 정확한 판독값을 위해 각 테스트 후 30초를 기다려 센서가 기준선으로 돌아가도록 한 후 다시 테스트합니다.
교육용만: 이는 가스 센서 및 ESP32 C3 Super Mini에 대해 배우기 위한 엄격한 교육 프로젝트입니다. 법적 호흡 측정기, 운전 안전 평가 또는 공식 알코올 테스트 목적으로 이 기기를 사용하지 마십시오.
※ 주의:
이 튜토리얼은 센서 또는 구성 요소에 연결된 ADC(아날로그-디지털 변환기)에서 값을 읽기 위해 analogRead() 함수를 사용합니다. ESP32 C3 Super Mini의 ADC는 높은 정확도가 필요하지 않은 프로젝트에 적합합니다. 그러나 정확한 측정이 필요한 프로젝트의 경우 다음을 염두에 두세요:
- ESP32 C3 Super Mini의 ADC는 완벽하게 정확하지 않으며 올바른 결과를 위해 보정이 필요할 수 있습니다. 각 ESP32 C3 Super Mini 보드는 약간씩 다를 수 있으므로 각 개별 보드에 대해 보정이 필요합니다.
- 보정은 특히 초보자의 경우 어려울 수 있으며 항상 원하는 정확한 결과를 얻지 못할 수도 있습니다.
높은 정밀도가 필요한 프로젝트의 경우 ESP32 C3 Super Mini에서 외부 ADC(예: ADS1115)를 사용하거나 더 안정적인 ADC를 가진 Arduino Uno R4 WiFi와 같은 다른 Arduino를 사용하는 것을 고려하세요. ESP32 C3 Super Mini의 ADC를 보정하고 싶으시다면 ESP32 ADC Calibration Driver를 참조하세요.
프로젝트 아이디어 및 응용 프로그램
ESP32 C3 Super Mini와 MQ3 알코올 센서를 사용하여 구축할 수 있는 몇 가지 실질적인 프로젝트입니다:
- DIY 호흡 측정기 시스템: 알코올 감지 원리를 시연하는 교육용 호흡 분석기 구축
- 알코올 증기 알람: 알코올 증기가 안전 수준을 초과할 때 경고 시스템을 트리거
- 바 또는 양조장 모니터링: 발효 또는 양조 영역의 알코올 증기 농도 모니터링
- 가정 안전 감지기: 알코올 기반 세제가 안전하지 않은 증기 수준에 도달할 때 경고
- 실험실 가스 모니터: 화학 연구소 또는 연구 시설의 에탄올 증기 추적
- 차량 안전 시스템: 교육 시연을 위한 알코올 인터록 개념 프로토타입
- 공기 질 스테이션: 멀티 센서 공기 질 모니터의 일부로 알코올 감지 포함
비디오 튜토리얼
아래 비디오를 시청하여 ESP32 C3 Super Mini 및 MQ3 알코올 센서로 이 프로젝트의 시각적 안내를 받으세요.
직접 도전하기
ESP32 C3 Super Mini 알코올 센서 프로젝트를 한 단계 더 나아가 준비가 되셨나요? 다음 도전을 시도해보세요:
- 쉬움: 알코올이 깨끗한 임계값 이상으로 감지될 때 켜지는 LED 추가
- 쉬움: 센서가 높은 알코올 농도를 감지할 때 울리는 부저 추가
- 중간: 깨끗함, 중간, 취한 수준을 보여주는 신호등 시스템(Green/Yellow/Red LED) 생성
- 중간: 타임스탬프가 있는 SD 카드에 센서 판독값 기록하여 데이터 분석
- 고급: Blynk 또는 MQTT를 통해 스마트폰으로 알코올 감지 경고를 보내도록 WiFi 연결 추가
- 고급: 실시간 판독값 및 상태 메시지를 표시하는 OLED 디스플레이로 완전한 호흡 측정기 구축