현장 설치 문서 · 배선 & 핀맵
온습도 노드 — 1번 지점 / 서버실
SHT30 온습도 센서를 라즈베리파이(Pi-B)의 I2C(버스 1, 주소 0x44)에 연결하는 측정 노드입니다.
이 노드는 측정값만 5분 주기로 서버에 보고하며, 고온·저온·고습·저습 임계 판정과 SMS 발송은 서버가 담당합니다.
Raspberry Pi 4 Model B
BCM2711
Raspberry Pi OS Bookworm 64-bit
Sensirion SHT30 (한진데이터 P4422-3)
I2C bus 1
addr 0x44
sensor_id=2
보고 주기 5분
240핀 헤더 핀맵 도해 사용 핀만 강조 · 나머지는 회색
3.3V 전원 — 핀 1
I2C SDA/SCL — 핀 3·5
GND (사용) — 핀 6
대체 GND (선택) — 9·14·20·25·30·34·39
미사용 핀
본 도해의 핀 번호·신호는 Raspberry Pi 4 Model B (BCM2711) 40핀 헤더 표준 배열과 일치합니다.
3핀맵 표 SHT30 → 40핀 헤더
| 신호 | BCM | 물리핀 | 비고 |
| 3.3V 전원 (VCC) |
— |
1 |
★ 반드시 3.3V — 5V(핀 2·4) 연결 금지 |
| I2C 데이터 (SDA) |
GPIO2 / SDA1 |
3 |
4.7kΩ 풀업 → 3.3V (모듈 내장 시 생략) |
| I2C 클럭 (SCL) |
GPIO3 / SCL1 |
5 |
4.7kΩ 풀업 → 3.3V (모듈 내장 시 생략) |
| 접지 (GND) |
— |
6 |
대체 GND 사용 가능: 9 · 14 · 20 · 25 · 30 · 34 · 39 |
| 주소 선택 (ADDR) |
— |
GND |
ADDR → GND ⇒ 0x44 (선택) · ADDR → VDD ⇒ 0x45 |
4배선 스키매틱 센서 ↔ 헤더 ↔ 풀업 저항
풀업 저항 R1·R2 (4.7kΩ ×2) 는 3.3V 레일로 연결됩니다. SHT30 모듈에 내장되어 있으면 생략하십시오.
SDA 선의 반원(hop)은 배선 교차 표시일 뿐 전기적 연결이 아닙니다.
5전기 설계 · 주의
치명적 경고 — 전원은 반드시 3.3V
SHT30 의 VCC 는 물리 핀 1 (3.3V) 에만 연결하십시오.
5V (핀 2·4) 연결 절대 금지 — 소자가 즉시 손상될 수 있습니다.
결선 전 핀 번호를 다시 확인하십시오.
- I2C 풀업: SDA·SCL 각각 4.7kΩ 풀업 저항을 3.3V 로 연결. 센서 모듈에 내장된 경우 생략 가능.
- 주소 설정: ADDR → GND 이면
0x44(기본), ADDR → VDD 이면 0x45. config.py 의 I2C_ADDR 값과 반드시 일치해야 합니다.
- I2C 버스: 버스 1 사용. 부팅 후 I2C 가 활성화되어 있어야 함(
raspi-config 또는 dtparam=i2c_arm=on).
- 배선 길이: I2C 는 짧은 케이블을 권장. 케이블이 길면 통신 오류·풀업 값 조정이 필요할 수 있습니다.
- 역할 분담: 이 노드는 측정값만 5분 주기로 서버에 보고합니다. 고온·저온·고습·저습 임계 판정과 SMS 발송은 서버가 수행합니다.
- 설정 파일:
raspberry_pi4_sht30/config.py (I2C_BUS=1, I2C_ADDR=0x44). 기기별 값은 config_local.py 로 오버라이드.
# I2C 연결 확인 (0x44 가 표에 보이면 정상)
$ i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- --
6설치 체크리스트
- 전원 차단 상태에서 배선 작업 (핫플러그 금지)
- VCC → 물리 핀 1 (3.3V) 연결 — 5V 핀(2·4) 아님을 재확인
- GND → 물리 핀 6 연결 (대체 GND 사용 시 9·14·20·25·30·34·39)
- SDA → 핀 3 (GPIO2), SCL → 핀 5 (GPIO3) 연결
- 풀업 저항 4.7kΩ ×2 를 SDA·SCL → 3.3V 로 연결 (모듈 내장 시 생략)
- ADDR → GND 확인 (주소 0x44 선택)
- 결선 전체 재확인 후 Pi 전원 인가
- I2C 활성화 확인 (raspi-config / dtparam=i2c_arm=on)
i2cdetect -y 1 실행 → 0x44 표시 확인
- config.py / config_local.py 의 I2C_BUS=1, I2C_ADDR=0x44 확인
- 측정 로그 및 서버 수신 확인 (5분 주기 보고 정상)