아두이노를 이용한 비밀번호 도어락 시스템 | Arduino - Door Lock System using Password
이 튜토리얼에서는 비밀번호로 문 잠금 시스템을 만드는 방법을 배웁니다. 이 튜토리얼은 두 가지 주요 파트를 포함합니다:
- 아두이노 - 키패드와 전자기 잠금장치를 사용한 비밀번호 도어락 시스템
- 아두이노 - 키패드, 전자기 잠금장치 및 LCD를 사용한 비밀번호 도어락 시스템
LCD는 선택 사항입니다. 그것은 시스템을 좀 더 편리하게 만들 뿐입니다.
정확한 비밀번호로 문이 잠금 해제되면, 이 장치는 문을 20초 동안 잠금 해제 상태로 유지한 후 자동으로 다시 문을 잠급니다. 아두이노 코드는 여러 비밀번호를 지원합니다.
※ NOTE THAT:
우리는 또한 다른 문 잠금 시스템 튜토리얼을 제공합니다:
준비물
1 | × | Arduino Uno | Amazon | |
1 | × | USB 2.0 cable type A/B | 쿠팡 | Amazon | |
1 | × | Keypad 3x4 and 4x4 Kit | 쿠팡 | Amazon | |
1 | × | (Alternative) Keypad 3x4 | 쿠팡 | Amazon | |
1 | × | (Alternative) Keypad 4x4 | 쿠팡 | Amazon | |
1 | × | Relay | Amazon | |
1 | × | 12V Power Adapter | Amazon | |
1 | × | DC Power Jack | 쿠팡 | Amazon | |
1 | × | Electromagnetic Lock | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) LCD I2C | 쿠팡 | 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 |
키패드 및 전자기 잠금장치와 LCD에 대하여
다음 튜토리얼에서 전자기 잠금 키패드와 LCD(핀아웃, 작동 방식, 프로그래밍 방법 등)에 대해 알지 못한다면, 그것들에 대해 배워보세요:
문 잠금 시스템 작동 방식
아두이노 코드에 미리 정의된 유효한 비밀번호들이 있습니다.
사용자의 입력 비밀번호를 저장하는 데 사용되는 문자열을 입력 문자열이라고 합니다. 키패드에서 두 개의 키(* 및 #)가 특수한 용도로 사용됩니다: 비밀번호 지우기 및 비밀번호 종료. 시스템은 다음과 같이 작동합니다:
- 두 개의 특수 키를 제외하고 다른 키가 눌리면 입력 문자열에 추가됩니다.
- *가 눌리면, 입력 문자열이 지워집니다. 비밀번호를 입력하기 시작하거나 다시 시작할 때 사용할 수 있습니다.
- #가 눌리면:
- 입력 문자열이 사전에 정의된 비밀번호와 비교됩니다. 사전에 정의된 비밀번호 중 하나와 일치하면 문이 열립니다.
- 비밀번호가 맞든 말든, 다음 입력을 위해 입력 문자열이 지워집니다.
선연결
아두이노 - 키패드와 전자기 잠금장치를 사용한 비밀번호 도어록 시스템
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 - 키패드, 전자기 잠금장치 및 LCD를 사용한 비밀번호 도어락 시스템
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 코드 - 키패드와 전자기 잠금장치를 사용하는 비밀번호 도어락 시스템
사용 방법
- 아두이노를 USB 케이블을 통해 PC에 연결합니다.
- 아두이노 IDE를 열고, 올바른 보드와 포트를 선택합니다.
- 아두이노 IDE의 왼쪽 바에 있는 Libraries 아이콘으로 이동합니다.
- "keypad"를 검색한 다음, Mark Stanley, Alexander Brevig이 만든 키패드 라이브러리를 찾습니다.
- 키패드 라이브러리를 설치하려면 Install 버튼을 클릭합니다.
- 위의 코드를 복사하고 Arduino IDE로 열기
- Arduino IDE에서 Upload 버튼을 클릭하여 Arduino에 코드를 업로드하기
- 자기장 판을 전자석에 가까이 두기
- 시리얼 모니터 열기
- 123456 키를 누르고 # 키를 누르기
- 1234ABC 키를 누르고 # 키를 누르기
- 20초 동안 자기장 판과 전자석 사이의 인력을 관찰하기
- 시리얼 모니터에서 결과 보기
아두이노 코드 - 키패드, 전자기 잠금장치 및 LCD를 사용한 비밀번호 도어록 시스템
※ NOTE THAT:
LCD의 I2C 주소는 제조업체에 따라 다를 수 있습니다. 코드에서는 DIYables 제조업체에서 지정한 0x27을 사용했습니다.
사용 방법
- Arduino IDE의 왼쪽 바에 있는 Libraries 아이콘으로 이동하세요.
- “LiquidCrystal I2C”를 검색한 후, Frank de Brabander가 만든 LiquidCrystal_I2C 라이브러리를 찾으세요.
- LiquidCrystal_I2C 라이브러리를 설치하려면 Install 버튼을 클릭하세요.
- 위의 코드를 복사하고 Arduino IDE로 열기
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 Arduino에 업로드
- 자석판을 전자석 가까이에 두기
- 잘못된 비밀번호를 입력한 다음 올바른 비밀번호를 입력하기
- 20초 동안 자석판과 전자석 사이의 인력을 보기
- LCD에 표시된 텍스트 보기
※ NOTE THAT:
- 위의 코드에서 간단하게 하기 위해 delay 함수를 사용했습니다. delay() 대신 millis()를 사용하는 것이 더 좋습니다. millis()를 delay() 대신 사용하는 방법을 참조하세요.
- 키패드가 눌릴 때마다 비프 소리를 내기 위해 파이조 버저를 추가할 수 있습니다.
- 위의 코드에서 문은 20초 후에 다시 잠깁니다. 문 센서로 대체할 수 있습니다. 사용자가 문을 닫으면 문 센서가 문이 닫힌 것을 감지하여 문이 잠깁니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.