ESP8266 - 리미트 스위치 | ESP8266 - Limit Switch
이 튜토리얼은 ESP8266를 리미트 스위치와 함께 사용하는 방법을 안내합니다. 자세히는, 우리는 배울 예정입니다:
- ESP8266을 리미트 스위치에 연결하는 방법.
- ESP8266을 프로그래밍하여 리미트 스위치의 상태를 읽는 방법.
- 리미트 스위치가 접촉되었는지 여부를 확인하기 위해 ESP8266을 프로그래밍하는 방법.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | Limit Switch (KW12-3) | 쿠팡 | Amazon | |
1 | × | Limit Switch (V-156-1C25) | 쿠팡 | Amazon | |
1 | × | Wires | Amazon | |
1 | × | (Optional) Heat Shrink Tubing | Amazon | |
1 | × | (Optional) Soldering Iron | Amazon | |
1 | × | (Optional) 5V Power Adapter for ESP8266 | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
리미트 스위치에 관하여
그것은 움직이는 물체가 한계에 도달했을 때를 감지하는 것이 주된 목적이기 때문에 리미트 스위치라고 불립니다.
리미트 스위치 핀배열
다양한 종류의 리미트 스위치가 있지만, 가장 널리 선호되는 것들은 KW12-3과 V-156-1C25입니다. 이들 각각의 타입은 3개의 핀을 특징으로 합니다:
- C: 이것은 공통 핀으로, 일반적으로 열림 모드와 일반적으로 닫힘 모드 양쪽에서 사용됩니다.
- NO: 이것은 일반적으로 열림 핀으로, 일반적으로 열림 모드에서만 사용됩니다.
- NC: 이것은 일반적으로 닫힘 핀으로, 일반적으로 닫힘 모드에서만 사용됩니다.
작동 원리
제한 스위치에는 3개의 핀이 있지만, 일반적인 응용 프로그램에서는 일반적으로 두 개의 핀만 사용합니다: C 핀과 다른 두 개 중 하나입니다. 따라서 제한 스위치를 사용하는 네 가지 다른 방법이 있습니다. 다음은 모든 네 가지 방법에 대한 제한 스위치의 배선 표와 ESP8266에서의 읽기 상태입니다:
C pin | NO pin | NC pin | ESP8266 Input Pin's State | |
---|---|---|---|---|
1 | GND | ESP8266 Input Pin (with pull-up) | not connected | HIGH when untouched, LOW when touched |
2 | GND | not connected | ESP8266 Input Pin (with pull-up) | LOW when untouched, HIGH when touched |
3 | VCC | ESP8266 Input Pin (with pull-down) | not connected | LOW when untouched, HIGH when touched |
4 | VCC | not connected | ESP8266 Input Pin (with pull-down) | HIGH when untouched, LOW when touched |
모든 방법에 대해, GND 핀과 ESP8266 입력 핀을 서로 바꿀 수 있습니다. 따라서, 리미트 스위치에 ESP8266을 연결하는 여덟 가지 가능한 방법이 있습니다.
우리는 제시된 네 가지 옵션 중 하나를 선택해야 합니다. 튜토리얼의 나머지 부분은 첫 번째 방법을 사용할 것입니다.
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
안전하고 신뢰할 수 있는 배선 연결을 위해, 전선과 리미트 스위치의 핀을 함께 납땜하기 위해 솔더링 아이언 사용을 권장합니다. 그 후, 추가적인 안전을 위해 연결부를 열 수축 튜브로 덮으십시오.
ESP8266 코드 - 리미트 스위치
버튼과 마찬가지로, 리미트 스위치에도 디바운싱이 필요합니다 (버튼/리미트 스위치에 왜 디바운싱이 필요한가?에 대한 자세한 정보는 이곳을 참조하세요). 이는 프로그래밍을 복잡하게 만들 수 있습니다. 다행히도, ezButton 라이브러리는 디바운싱 기능을 지원하고 내부 풀업 레지스터를 가지고 있어 버튼 프로그래밍을 더 쉽게 만들어 줍니다.
※ NOTE THAT:
리미트 스위치와 관련된 두 가지 일반적인 용도가 있습니다:
- 첫 번째: 스위치가 TOUCHED 상태인 경우, 특정 동작을 취해야 합니다. 반대로, 입력이 UNTOUCHED인 경우, 다른 동작을 수행해야 합니다.
- 두 번째: 스위치가 UNTOUCHED에서 TOUCHED로 변경되거나 (또는 그 반대의 경우), 특정 동작이 실행되어야 합니다.
사용 방법
아두이노 IDE에서 ESP8266을 시작하려면 다음 단계를 따르세요:
- ESP8266을 처음 사용하는 경우 Arduino IDE에서 ESP8266 환경 설정 방법 튜토리얼을 확인하세요.
- 다이어그램에 표시된 대로 부품을 연결하세요.
- USB 케이블을 사용하여 컴퓨터에 ESP8266 보드를 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드(예: NodeMCU 1.0 (ESP-12E Module))와 해당 COM 포트를 선택하세요.
- 다이어그램에 표시된 대로 배선하세요.
- USB 케이블을 사용하여 컴퓨터에 ESP8266을 연결하세요.
- Arduino IDE를 엽니다.
- EzButton 라이브러리를 설치하세요, 설치 방법은 여기에서 찾을 수 있습니다.
- 올바른 보드와 포트를 선택하세요.
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP8266에 컴파일하고 업로드하세요.
- 리미트 스위치를 눌렀다가 놓으세요.
- 시리얼 모니터에서 결과를 확인하세요.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.