Field Wiring & Pinmap · 누수 감지 노드

누수 감지 노드 · 배선 & 핀맵

e-con 5C-08 저항형 누수감지센서를 GPIO17(물리 핀 11)에 연결하는 표준 배선도입니다. Pi-A(sensor_id=1 · 1번 지점 · 서버실)와 Pi-C(sensor_id=3 · 3번 지점 · 신규)는 배선이 동일한 공통 노드입니다.

Raspberry Pi 4 Model B BCM2711 Raspberry Pi OS Bookworm 64-bit e-con 5C-08 · 저항형 ~1.5MΩ GPIO17 / 핀11 외부 4.7MΩ 풀다운 필수

240핀 헤더 핀맵 도해

홀수 핀 짝수 핀 3V3 5V 1 2 GPIO2 (SDA1) 5V 3 4 GPIO3 (SCL1) GND 5 6 GPIO4 GPIO14 (TXD) 7 8 GND GPIO15 (RXD) 9 10 GPIO17 GPIO18 11 12 GPIO27 GND 13 14 GPIO22 GPIO23 15 16 3V3 GPIO24 17 18 GPIO10 (MOSI) GND 19 20 GPIO9 (MISO) GPIO25 21 22 GPIO11 (SCLK) GPIO8 (CE0) 23 24 GND GPIO7 (CE1) 25 26 GPIO0 (ID_SD) GPIO1 (ID_SC) 27 28 GPIO5 GND 29 30 GPIO6 GPIO12 31 32 GPIO13 GND 33 34 GPIO19 GPIO16 35 36 GPIO26 GPIO20 37 38 GND GPIO21 39 40
신호 (GPIO17 · 핀 11)센서 신호선 입력
전원 3V3 (핀 1)센서 전원 공급
접지 GND (핀 6 · 사용)센서 GND 기본 연결
접지 대체 가능핀 9 / 14 / 20 / 25 / 30 / 34 / 39
확장 예시 (선택)GPIO27·핀 13, GPIO22·핀 15
미사용 핀이 노드에서 연결하지 않음
붉은 점선 사각형이 핀 1 위치입니다. 헤더 방향(핀 1 기준)을 반드시 확인하고 배선하세요. 실제 사용 핀은 1 · 6 · 11 세 개뿐입니다.

3핀맵 표

신호BCM물리 핀비고
신호 센서 신호선 GPIO17 핀 11 센서 신호 입력. 외부 4.7MΩ 풀다운을 핀 11 ↔ GND 사이에 연결.
전원 센서 전원 3.3V 3V3 핀 1 센서 VCC 공급. (예비 3V3 = 핀 17)
접지 센서 GND GND 핀 6 대체 가능: 핀 9 / 14 / 20 / 25 / 30 / 34 / 39 중 아무 GND.
확장 추가 센서 예시 GPIO27 핀 13 선택. config.py의 SENSORS에 BCM 번호로 추가.
확장 추가 센서 예시 GPIO22 핀 15 선택. 위와 동일한 방법으로 추가(각 채널마다 외부 풀다운 필요).
사용 핀은 3개(핀 1 · 6 · 11). 확장 행은 다중 센서 구성 시 참고용 예시입니다. 기기별 sensor_id / location은 config_local.py에서 설정.

4배선 스키매틱

Raspberry Pi 4 · 40핀 헤더 핀1 · 3V3 핀11 · GPIO17 핀6 · GND e-con 5C-08 누수센서 VCC 3.3V SIG 신호 GND 3.3V 전원 · 핀1 신호 · GPIO17 · 핀11 GND · 핀6 4.7MΩ 외부 풀다운(필수) 내부 풀 OFF · USE_INTERNAL_PULL=False (PUD_OFF) 건조 → GPIO=LOW(0) · 누수 → GPIO=HIGH(1) · ACTIVE_LOW=False
동작 원리: 건조 시 센서는 초고임피던스(거의 개방) 상태라 외부 4.7MΩ 풀다운이 GPIO17을 LOW로 유지합니다. 누수로 물이 전극을 연결하면 3.3V가 ~1.5MΩ을 통해 신호선을 끌어올려 GPIO17이 HIGH로 전환됩니다.

5전기 설계 · 주의

★ 절대 주의 · CRITICAL

내부 풀다운을 켜지 마세요

내부 50kΩ 풀다운을 활성화하면, ~1.5MΩ 고임피던스 센서가 GPIO를 HIGH로 끌어올리지 못해 누수를 감지하지 못합니다(감지 실패). 반드시 내부 풀은 PUD_OFF로 끄고, 외부 4.7MΩ 풀다운만 사용하세요. (USE_INTERNAL_PULL = False)

극성 · 로직 레벨

ACTIVE_LOW = False → 건조 시 GPIO=LOW(0), 누수 시 GPIO=HIGH(1).

외부 풀다운 (필수)

4.7MΩ 저항을 GPIO17(핀 11) ↔ GND 사이에 연결. 고임피던스 센서용으로 반드시 필요.

내부 풀 설정

USE_INTERNAL_PULL = False — 내부 풀은 PUD_OFF 유지.

디바운스

DEBOUNCE_MS = 500 — 고임피던스 특성상 넉넉하게 설정.

설정 파일

전기 파라미터는 raspberry_pi4/config.py (SENSORS · ACTIVE_LOW · USE_INTERNAL_PULL · DEBOUNCE_MS). 기기별 sensor_id / location은 config_local.py (Pi-A = id 1 · 1번 지점 · 서버실 / Pi-C = id 3 · 3번 지점 · 신규).

카메라 (선택 · CAMERA_ENABLED=True)

Raspberry Pi 4는 15핀(1.0mm 피치) 표준 CSI 커넥터입니다. Zero 2 W는 22핀(0.5mm)이라 리본·카메라보드가 비호환 → Pi 4용 15핀 리본 또는 15↔22 변환 어댑터가 필요합니다. 촬영은 rpicam-still(Bookworm) / libcamera-still(Bullseye), 640×480 JPEG.

6설치 체크리스트

  1. Raspberry Pi 전원을 완전히 차단한 상태에서 배선을 시작한다.
  2. 헤더 방향(핀 1 위치)을 확인한다. 붉은 점선 표시 = 핀 1.
  3. 센서 신호선을 핀 11(GPIO17)에 연결한다.
  4. 센서 전원(3.3V)을 핀 1(3V3), 센서 GND를 핀 6(GND)에 연결한다.
  5. 외부 4.7MΩ 풀다운을 핀 11 ↔ GND 사이에 연결한다. (필수 · 생략 시 감지 실패)
  6. 내부 풀이 꺼져 있는지 확인한다 — USE_INTERNAL_PULL=False (PUD_OFF). 내부 풀다운 절대 금지.
  7. config.py 확인: ACTIVE_LOW=False, DEBOUNCE_MS=500, SENSORS에 GPIO17 등록.
  8. config_local.py에서 기기별 sensor_id / location 설정 (Pi-A=1/서버실, Pi-C=3/신규).
  9. 전원 인가 후, 건조 상태에서 GPIO17 = LOW(0)인지 로그로 확인한다.
  10. 물(또는 젖은 천)로 센서를 적셔 GPIO17이 HIGH(1)로 전환되고 누수 이벤트가 기록되는지 확인한다.
  11. (선택) 카메라 사용 시 리본 방향·커넥터 규격(15핀 / 어댑터)을 확인하고 640×480 촬영 테스트를 수행한다.