아두이노 - Keypad - 전자기 잠금장치 | Arduino - Keypad - Electromagnetic Lock
이 튜토리얼에서는 키패드, 전자기 잠금장치, 그리고 아두이노를 함께 사용하는 방법을 배울 것입니다. 구체적으로, 사용자가 키패드에 비밀번호를 올바르게 입력하면, 아두이노가 전자기 잠금장치를 켭니다.
이 튜토리얼은 또한 일정 시간 동안 전자 자기 잠금장치를 켜고 delay() 함수를 사용하지 않고 끄는 코드를 제공합니다. 아두이노 코드는 다중 비밀번호도 지원합니다.
준비물
1 | × | Arduino Uno | Amazon | |
1 | × | USB 2.0 cable type A/B | 쿠팡 | Amazon | |
1 | × | Keypad 3x4 | 쿠팡 | Amazon | |
1 | × | Relay | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | Electromagnetic Lock | Amazon | |
1 | × | 12V Power Adapter | Amazon | |
1 | × | (Optional) DC Power Jack | 쿠팡 | Amazon | |
1 | × | (Optional) 9V Power Adapter for Arduino | 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 |
키패드 및 전자기 잠금장치에 관하여
키패드와 전자기 잠금장치(핀배열, 작동 원리, 프로그래밍 방법 등)에 대해 잘 모른다면, 다음 튜토리얼에서 배워보세요:
- Arduino - Keypad tutorial
- Arduino - Electromagnetic Lock tutorial
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 코드 - 비밀번호가 올바르면 전자 잠금장치를 켜기
아래 코드는 비밀번호가 맞으면 전자기 자물쇠를 켭니다.
사용 방법
- 아두이노를 USB 케이블을 통해 PC에 연결하십시오
- 아두이노 IDE를 열고, 올바른 보드와 포트를 선택하십시오
- 아두이노 IDE 왼쪽 바의 Libraries 아이콘으로 이동하십시오.
- “keypad”를 검색한 다음, Mark Stanley, Alexander Brevig에 의한 키패드 라이브러리를 찾으십시오
- 키패드 라이브러리를 설치하려면 Install 버튼을 클릭하십시오.
- 위의 코드를 복사하고 Arduino IDE로 열기
- 코드를 Arduino에 업로드하기 위해 Arduino IDE에서 Upload 버튼을 클릭하세요.
- 8123 키를 누르고 #을 누르세요.
- 1234 키를 누르고 #을 누르세요.
- 시리얼 모니터에서 결과와 전자 자물쇠의 상태를 확인하세요.
코드 설명
Arduino 코드에 미리 정의된 권한이 있는 비밀번호들이 있습니다.
사용자가 입력한 비밀번호를 저장하기 위해 문자열을 사용하며, 이를 입력 문자열이라고 합니다. 키패드에서는 두 개의 키(* 및 #)가 특수 용도로 사용됩니다: 비밀번호 지우기 및 비밀번호 종료. 키패드의 키가 눌렸을 때:
- 누른 키가 두 특수 키가 아닌 경우, 그 키는 입력 문자열에 추가됩니다.
- 누른 키가 *인 경우, 입력 문자열이 초기화됩니다. 비밀번호 입력을 시작하거나 재시작하는 데 사용할 수 있습니다.
- 누른 키가 #인 경우:
- 입력 문자열이 사전에 정의된 비밀번호와 비교됩니다. 사전에 정의된 비밀번호 중 하나와 일치하면 전자 자물쇠가 활성화됩니다.
- 비밀번호의 정확성에 상관없이 다음 입력을 위해 입력 문자열은 초기화됩니다.
아두이노 코드 - 비밀번호가 맞으면 정해진 시간 동안 전자 잠금장치를 켭니다
아래 코드는 비밀번호가 맞으면 전자 자물쇠를 5초 동안 켭니다. 5초 후에는 전자 자물쇠가 꺼집니다.
위 코드는 non-blocking 방식으로 시간을 관리하기 쉽게 해주는 ezOutput 라이브러리를 사용한다는 점에 유의하십시오. ezOutput 라이브러리 설치 가이드를 참조하실 수 있습니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.