아두이노 나노 ESP32 펌프 제어
이 튜토리얼은 Arduino Nano ESP32를 사용하여 펌프를 제어하는 방법에 대한 지침을 제공합니다. 이 튜토리얼을 확장하여 DIY 수족관, 칵테일 기계, 커피 기계, 또는 물주기 시스템 등을 구축할 수 있습니다...
펌프를 구동하는 방법은 두 가지입니다. 하나는 릴레이로, 펌프를 시작하고 멈추는 것만 가능합니다. 다른 하나는 MOSFET 모듈로, 펌프를 시작하고 멈출 수 있을 뿐 아니라 PWM으로 펌프 속도를 바꿔 물의 양을 늘리거나 줄일 수도 있습니다. 소음도 적습니다. 여기서 두 가지 방법을 모두 배웁니다.
준비물
| 1 | × | 아두이노 나노 ESP32 | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
| 1 | × | 릴레이 | 아마존 | |
| 1 | × | (또는) MOSFET Module (AOD4184, LR7843 or FR120N) | 아마존 | |
| 1 | × | 12V 펌프 | 쿠팡 | 아마존 | |
| 1 | × | Vinyl Tube | 아마존 | |
| 1 | × | 12V 전원 어댑터 | 아마존 | |
| 1 | × | 브레드보드 | 쿠팡 | 아마존 | |
| 1 | × | 점퍼케이블 | 쿠팡 | 아마존 | |
| 1 | × | (옵션) DC 커넥터 전원 연결 잭 플러그 소켓 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 나노용 스크루 터미널 확장 보드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 나노용 브레이크아웃 확장 보드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 나노 ESP32용 전원 분배기 | 쿠팡 | 아마존 |
12V 펌프에 관하여
펌프 핀배열

12V 펌프에는 두 개의 전선이 있습니다:
- 부정(-) 전선(검정색): 이 전선을 12V DC 전원 공급 장치의 부정 전선에 연결하십시오
- 긍정(+) 전선(빨간색): 이 전선을 12V DC 전원 공급 장치의 긍정 전선에 연결하십시오
아두이노 나노 ESP32를 사용한 펌프 제어 방법
12V 전원 공급 장치를 펌프에 연결하면 펌프가 작동합니다. Arduino Nano ESP32를 사용하여 프로그래밍 방식으로 펌프를 제어할 수 있습니다. 이를 위해서는 펌프 Arduino Nano ESP32 보드 사이에 릴레이가 필요합니다. 릴레이에 대해 자세한 정보와 단계별 지침, 하드웨어 핀아웃, 작동 원리, ESP32에 대한 배선 연결, Arduino Nano ESP32 코드 등이 포함된 구체적인 튜토리얼이 있습니다. 아두이노 나노 ESP32 - 릴레이 튜토리얼에서 릴레이에 대해 알아보세요.
릴레이 대신 MOSFET 모듈을 사용할 수 있습니다. 이 모듈을 처음 사용한다면 아두이노 나노 ESP32 - MOSFET 모듈 튜토리얼에서 처음부터 설명합니다.
펌프에는 무엇을 쓸까: 릴레이 또는 MOSFET 모듈
| 릴레이 | MOSFET 모듈 | |
|---|---|---|
| 펌프 제어 | 시작과 정지만 가능 | 시작, 정지, 유량 조절(PWM) |
| 스위칭 소리 | 딸깍 소리가 들림 | 없음 |
| 스위칭 속도 | 느림(몇 ms) | 매우 빠름 |
| 수명 | 접점이 마모됨 | 움직이는 부품 없음 |
| 펌프 종류 | AC 또는 DC 펌프 | DC 펌프만 가능 |
| 펌프 전원 | 릴레이가 허용하는 범위 | 6V 이상 |
| 절연 | 예, 코일과 접점 사이 | 예, PC817 포토커플러로 |
| 가장 적합한 용도 | AC 펌프, 단순 ON/OFF | DC 펌프, 유량 제어, 잦은 ON/OFF 반복 |
12V DC 펌프에서 물을 적게 주고 싶다면, 예를 들어 식물에 천천히 물방울을 떨어뜨리고 싶다면 MOSFET 모듈을 선택하세요. 펌프가 AC로 동작하거나 ON/OFF만 필요하다면 릴레이로 충분합니다.
ESP32, 릴레이 및 펌프간의 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
브레드보드 없이 연결한 같은 배선입니다:

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
프로젝트를 오래 실행하거나 케이스 안에 넣을 경우, 전선을 나사로 고정하는 것이 좋습니다. Arduino Nano ESP32를 아두이노 나노용 스크루 터미널 확장 보드에 꽂기만 하면 됩니다. 아래는 나사 단자 보드를 사용한 배선도입니다.

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 나노 ESP32 - 펌프 코드
아래 코드는 4초마다 펌프를 주기적으로 켜고 끕니다.
사용 방법
아두이노 나노 ESP32를 시작하는 방법은 다음과 같습니다:
- 아두이노 나노 ESP32가 처음이라면, 아두이노 나노 ESP32 - 소프트웨어 설치에 대한 튜토리얼을 참조하세요.
- 제공된 도면에 따라 구성 요소를 연결하세요.
- USB 케이블을 사용하여 아두이노 나노 ESP32 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 아두이노 IDE를 실행하세요.
- Arduino Nano ESP32 보드와 해당 COM 포트를 선택하세요.* 위의 코드를 복사하여 아두이노 IDE에 붙여넣으세요.
- 아두이노 IDE의 Upload 버튼을 클릭하여 아두이노 나노 ESP32 보드에 코드를 컴파일하고 업로드하세요.
- 펌프의 상태를 확인하세요.
코드 줄별 설명
위의 Arduino Nano ESP32 코드는 줄별 설명을 포함하고 있습니다. 코드의 주석을 읽어주세요!
MOSFET 모듈로 펌프 유량 제어하기
이제 같은 펌프를 MOSFET 모듈로 구동해 봅시다. 그러면 Nano ESP32가 유량을 세게 또는 약하게 만들 수 있습니다.
ESP32, MOSFET 모듈, 펌프 간의 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아래 그림은 브레드보드 없이 같은 연결을 보여줍니다:

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
점퍼 와이어는 프로젝트를 옮길 때 빠질 수 있습니다. 이를 위해 Arduino Nano ESP32를 아두이노 나노용 스크루 터미널 확장 보드에 장착하세요. 아래 그림처럼 각 전선은 같은 핀의 나사 단자로 연결됩니다.

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
연결:
- Nano ESP32의 D9는 모듈의 PWM 핀에, Nano ESP32의 GND는 모듈의 GND 핀에 연결합니다.
- 12V 어댑터 +와 펌프 빨간색 선(+)을 모두 + 단자에 넣습니다.
- 펌프 검은색 선(−)은 LOAD 단자에 넣습니다.
- 12V 어댑터 −는 − 단자에 넣습니다.
- 펌프 양쪽에 플라이백 다이오드(1N4007 또는 1N5819)를 추가합니다. 줄무늬(캐소드)는 펌프 +에, 다른 쪽 끝은 펌프 −에 연결합니다. 펌프 모터는 코일이며, 모듈에는 다이오드가 내장되어 있지 않습니다.
Arduino Nano ESP32 - 펌프 유량 코드
MOSFET 모듈 튜토리얼의 코드를 변경 없이 사용합니다. 펌프는 2초 동안 최대 유량으로 작동하고 2초 동안 멈춥니다. 그 후 유량이 10%에서 100%까지 올라갔다가 0%까지 내려갑니다.
빠른 단계
- 필요하면 먼저 릴레이 빠른 단계에서 보여 준 대로 Arduino IDE를 설정하세요.
- 펌프를 물에 담그세요. 물 없이 작동시키지 마세요.
- 12V 어댑터를 뽑은 상태로 위 다이어그램과 같이 부품을 배선하세요.
- 코드를 Arduino Nano ESP32에 업로드하세요.
- 12V 어댑터를 꽂고 시리얼 모니터를 9600 보드레이트로 여세요.
- 튜브에서 나오는 물을 보세요. 세게 흐르다가 멈추고, 점점 늘어났다가 다시 약해집니다.
기억하세요: MOSFET 모듈은 DC 펌프 전용이며, 펌프 전원은 약 6V 이상이어야 합니다. AC 펌프에는 계속 릴레이를 사용하세요.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.