아두이노 - 물 누출 감지기 | Arduino - Water Leak Detector
이 가이드에서는 아두이노와 물 샌서 센서를 사용하여 물 새는 곳을 찾는 방법을 배우게 됩니다.
Hardware Preparation
1 | × | Arduino Uno | Amazon | |
1 | × | USB 2.0 cable type A/B | 쿠팡 | Amazon | |
1 | × | Water Leak Detector | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Recommended) Screw Terminal Block Shield for Arduino Uno | 쿠팡 | Amazon | |
1 | × | (Recommended) Breadboard Shield For Arduino Uno | 쿠팡 | Amazon | |
1 | × | (Recommended) Enclosure For Arduino Uno | Amazon |
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.
물 새는 감지기에 대하여
누수 감지기 또는 누수 센서는 원치 않는 물을 조기에 찾아 피해를 방지하는 데 도움이 됩니다.
물 유출 감지기 핀배열
물 샘 감지기는 두 개의 전선이 함께 제공됩니다:
스위치나 버튼처럼 물 샘 감지기의 두 전선을 구분할 필요가 없습니다.
물 누수 감지기의 작동 방식
물이 있을 때 회로가 닫힙니다. 물이 없을 때 회로는 열린 상태로 유지됩니다.
아두이노에 수분 감지기를 설치하려면 한 전선을 GND에 연결하고 다른 한 전선을 디지털 입력 풀업으로 설정된 아두이노의 입력 핀에 연결하세요. 물이 있으면 아두이노 핀이 LOW 값을 표시합니다. 물이 없으면 핀이 HIGH 값을 표시합니다.
※ NOTE THAT:
물 누출 감지기는 순수한 물과 같은 "비전도성" 물을 감지할 수 없습니다. 감지기 근처에 소금을 뿌려서 작동하게 하세요. 물이 소금과 섞이면서 물이 전도성을 갖게 됩니다.
물 샘 감지기와 아두이노 간의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노를 프로그래밍하여 물 샘 감지기에서 값을 읽는 방법
- 아두이노 핀을 디지털 입력으로 설정하려면 pinMode() 함수를 사용하십시오. 예를 들어, D7 핀의 경우 이 함수를 사용하십시오.
pinMode(7, INPUT_PULLUP);
- digitalRead() 함수를 사용하여 Arduino 핀의 상태를 확인합니다.
int water_state = digitalRead(7);
아두이노 코드 - 물 샘 감지
/*
* 이 Arduino 코드는 newbiely.kr 에서 개발되었습니다
* 이 Arduino 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다.
* 상세한 지침 및 연결도에 대해서는 다음을 방문하세요:
* https://newbiely.kr/tutorials/arduino/arduino-water-leak-detector
*/
#define WATER_SENSOR_PIN 7 // Arduino pin D7 connected to water sensor's pin
int water_state; // current state of water sensor
int prev_water_state; // previous state of water sensor
void setup() {
Serial.begin(9600);
pinMode(WATER_SENSOR_PIN, INPUT_PULLUP); // set Arduino pin to input pull-up mode
water_state = digitalRead(WATER_SENSOR_PIN); // read state
}
void loop() {
prev_water_state = water_state; // save the last state
water_state = digitalRead(WATER_SENSOR_PIN); // read new state
if (prev_water_state == HIGH && water_state == LOW) {
Serial.println("Water leakage is detected!");
}
}
Detailed Instructions
- 위의 코드를 복사하여 아누이노 IDE에 붙여넣습니다.
- 코드를 아두이노 보드에 업로드하려면 아두이노 IDE에서 Upload 버튼을 클릭하세요.
- 물 샘 감지기 근처에 물을 부으세요.
- 시리얼 모니터에서 결과를 확인하세요. 다음과 같이 표시됩니다.
COM6
The water leak is detected
The water leak is detected
Autoscroll
Clear output
9600 baud
Newline
Video Tutorial
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.