- 필요한 구성 요소
- 솔레노이드 잠금
- HC-05 블루투스 모듈
- Bluetooth 제어 솔레노이드 잠금 회로도
- 지문 데이터를 기반으로 솔레노이드 잠금을 제어하는 Arduino 프로그램
- 지문 데이터를 읽고 Bluetooth를 통해 Arduino로 보내기위한 Android 앱
- 생체 인식 기반 잠금을위한 3D 인쇄 케이스
- Arduino 기반 지문 제어 잠금 테스트
이제 전 세계가 COVID 19를 파악하고 있으며 모든 사람들이 사회적 거리두기, 마스크 착용, 현금없는 거래 사용, 세균 확산 방지를 위해 무엇이든 만지지 않도록하여이 심각한 질병에 걸리지 않도록 예방 조치를 취하고 있습니다. 기술의 출현으로 일반 잠금 장치는 과거의 것이되고 새로운 생체 인식 기반 잠금 장치와 RFID 기반 잠금 장치는 점점 더 주류가되고 있습니다. 지문 기반 잠금 및 출석 기록 유지 장치는 너무 사무실과 대학의 대부분에서 사용되지만 요즘은이 때문에 유행성 그렇게하지 않는 것이 좋습니다 우리는 솔레노이드 잠금 및 사용하여 도어 잠금 장치를 구축 할 예정되도록 제어 블루투스를 통해 안드로이드 앱을 사용하여지문 센서를 전혀 건드리지 않고 자신의 휴대폰을 사용하여 잠금을 제어 할 수 있습니다. 자, 시작합시다.
필요한 구성 요소
- 1 × Arduino Nano
- 1 × HC-05 블루투스 모듈
- 1 × 솔레노이드 잠금
- 1 × Piezoelectric 부저
- 1 × Red LED 5mm
- 1 × Green LED 5mm
- 1 × IRF540N N 채널 MOSFET
- 1 × BC547 NPN 트랜지스터
- 저항기: 1 × 550Ω, 1 × 2k0Ω, 1 × 220Ω
- 1 × 7805 전압 조정기
- 1 × DC 잭 커넥터 쌍
- Perfboard
솔레노이드 잠금
기존의 도어락에서는 래치를 당기거나 밀기위한 키가있어 수동으로 조작해야하는데 솔레노이드 락에서는 래치를 제어하는 솔레노이드 코일에 전압을 가하여 래치를 자동으로 작동시킬 수 있습니다. 자물쇠에 있습니다.
솔레노이드 잠금 장치 에는 저전압 솔레노이드 코일이있어 적절한 전압이 가해지면 래치를 도어 안으로 다시 당기고 전압이 제거 될 때까지 열린 상태로 유지됩니다. 따라서 누름 버튼, 릴레이, 마이크로 컨트롤러 등을 사용하여 주어진 전압을 제어하여 작동을 제어 할 수 있습니다. 솔레노이드 도어록은 주로 원격 지역에서 사용되어 사람의 노력없이 작동을 자동화합니다.
HC-05 블루투스 모듈
HC-05는 프로젝트에 무선 연결을 제공하는 데 사용되므로 다른 마이크로 컨트롤러 또는 휴대폰 및 랩톱과 통신 할 수 있습니다. 직접 만들 수있는 간단한 안드로이드 어플리케이션을 사용하여 송수신 데이터를 쉽게 제어 할 수 있습니다. 두 가지 모드가 있습니다. 첫 번째 데이터 모드 는 Bluetooth 장치와 데이터를주고받는 데 사용되며 두 번째는 AT 명령 모드입니다.Bluetooth 모듈을 구성하는 데 사용됩니다. USART 통신을 사용하여 9600 보드 율로 통신하므로 USART 통신을 지원하는 모든 마이크로 컨트롤러에 연결할 수 있으며 보드에서 사용 가능한 직렬 포트에 쉽게 연결할 수 있습니다. 5V 전원 공급 장치로 장치에 전원을 공급하고 TX 핀을 마이크로 컨트롤러의 RX 핀에 연결하고 RX 핀을 마이크로 컨트롤러의 TX 핀에 연결해야합니다. 자동화 애플리케이션 및 데이터 로깅 및 로봇 공학의 무선 애플리케이션에서 사용할 수 있습니다.
Bluetooth 제어 솔레노이드 잠금 회로도
MOSFET을 통해 Arduino와 솔레노이드 잠금 장치를 인터페이스하고 제어하는 방법을 보여주는 전체 회로 다이어그램이 아래에 나와 있습니다.
회로도에서 볼 수 있듯이 연결은 5V 전원 공급 장치로 장치에 전원을 공급하여 HC-05 Bluetooth 모듈을 nano에 연결하고 TX 핀을 마이크로 컨트롤러의 RX 핀에 연결하고 RX 핀을 마이크로 컨트롤러의 TX 핀. Arduino nano의 전원 상태를 표시하려면 빨간색 LED를 추가하고 문이 잠금 해제되었는지 표시하려면 녹색 LED를 추가해야합니다. 부 저도 연결해야합니다. 이해하기 쉽도록 연결 다이어그램도 아래에 나와 있습니다.
솔레노이드 잠금을 제어하려면 NPN 트랜지스터와 N 채널 MOSFET으로 구성된 제어 회로를 사용해야합니다. Nano의 D9 핀을 550 Ohm 저항을 통해 트랜지스터의 기본 핀에 연결하여 트랜지스터로 흐르는 전류를 제어하여 NPN 트랜지스터를 제어합니다. D9 핀이 하이로 당겨지면 트랜지스터가 켜지고 MOSFET의 게이트 핀이 접지로 당겨져 솔레노이드 잠금을 끄는 MOSFET이 꺼지고 D9 핀이 LOW이면 NPN 트랜지스터가 꺼집니다. 이는 MOSFET의 GATE가 2kOhm 풀업 저항을 통해 12V로 당겨져 MOSFET을 켜고 솔레노이드 잠금 장치에 전원을 공급한다는 것을 의미합니다. 이런 식으로 5V Arduino Nano를 사용하여 솔레노이드 잠금을 제어 할 수 있습니다. IRF540N MOSFET은 로직 레벨 MOSFET이 아니기 때문에 Nano의 5V 핀으로 직접 제어 할 수 없습니다.t 나노에서 5V로 완전히 켜지거나 꺼 지므로 BC547 NPN 트랜지스터를 사용하여 MOSFET을 제어합니다.
나는 그것을 컴팩트하게 만들기 위해 perf board에 완전한 회로를 납땜했습니다. 이 아이디어는 잠금 장치의 3D 인쇄 케이스를 디자인하여 쉽게 설치하고 사용할 수 있도록하는 것입니다.
지문 데이터를 기반으로 솔레노이드 잠금을 제어하는 Arduino 프로그램
공식 Arduino IDE에 코드를 작성합니다. IDE가없는 경우 공식 Arduino 웹 사이트에서 다운로드해야합니다. 버저 및 LED와 같은 주변 장치를 제어하고 트랜지스터를 제어하여 솔레노이드 잠금을 제어하기 위해 코드에서 사용할 변수를 선언하여 코드를 시작합니다.
int value1; #define led 12 #define bjt 9 #define 부저 7
이제 Arduino의 설정 부분에 이르면 먼저 Arduino의 직렬 통신을 9600 전송 속도로 초기화합니다. 직렬 통신을 위해 Arduino의 하드웨어 핀을 사용하고 있으므로 프로젝트에서 소프트웨어 직렬을 사용할 필요가 없습니다. 이제 출력 또는 입력으로 사용중인 핀을 선언하고 초기 조건을 제공해야합니다.
Serial.begin (9600); pinMode (bjt, OUTPUT); pinMode (led, OUTPUT); pinMode (부저, OUTPUT); digitalWrite (bjt, HIGH); digitalWrite (led, LOW);
이제 코드의 루프 기능에서 HC-05 Bluetooth 모듈에서 직렬로 들어오는 데이터를 읽고 잠금 또는 잠금 해제 명령에 해당하는지 확인합니다. 프로그램 로직에서 지문이 올바르게 인식되면 블루투스 모듈은 값 "1"을 보내고 지문이 인식되지 않으면 블루투스 모듈은 값 "0"을 보냅니다. Nano가 읽은 값이 "1"이면 문이 잠금 해제되고 부저가 1 초 동안 울리고 문이 7 초 동안 잠금 해제 상태로 유지됩니다. 그 후에 문이 다시 잠 깁니다. 읽은 값이 "0"이면 지문이 인식되지 않는 것이므로 부저가 1 초 동안 3 번 경보를 울려 보안을 알려줍니다.
Serial.println ("읽기"); while (Serial.available () == 0); 값 1 = Serial.read (); Serial.println (값 1); if (value1 == 1) {Serial.println ("Unlocking"); digitalWrite (bjt, LOW); digitalWrite (부저, HIGH); digitalWrite (led, HIGH); 지연 (1000); digitalWrite (부저, LOW); 지연 (6000); digitalWrite (bjt, HIGH); digitalWrite (led, LOW); } if (값 1 == 0) {digitalWrite (bjt, HIGH); digitalWrite (부저, HIGH); Serial.println ("잠금"); 지연 (1000); digitalWrite (부저, LOW); 지연 (1000); digitalWrite (부저, HIGH); 지연 (1000); digitalWrite (부저, LOW); 지연 (1000); digitalWrite (부저, HIGH); 지연 (1000); digitalWrite (부저, LOW); }
지문 데이터를 읽고 Bluetooth를 통해 Arduino로 보내기위한 Android 앱
이 프로젝트의 앱은 Kodular 앱 발명자를 사용하여 설계되었습니다. Kodular를 사용하여 앱을 만드는 것은 매우 간단합니다. 프로젝트의 순서도에 따라 블록을 결합하여 앱을 만들 수 있습니다.
Kodular로 앱을 만들려면 Kodular.io로 이동하여 계정이없는 경우 계정을 만들고 계정에 로그인 한 다음 ' 앱 만들기' 옵션 을 클릭합니다.
그 후 프로젝트 화면으로 이동합니다. ' 프로젝트 생성' 버튼을 클릭하여 프로젝트를 생성합니다.
앱 이름을 지정하고 ' 마침 '을 클릭 합니다 . 프로젝트가 생성되고 프로젝트의 디자이너 페이지로 이동합니다. 이제 디자이너 페이지에서 구성 요소 팔레트의 네 가지 구성 요소를 추가하여 Bluetooth 클라이언트, 지문, 목록 선택기 및 이미지 단추 의 앱 레이아웃을 만듭니다 . 목록 선택기 및 버튼은 ' 사용자 인터페이스' 에서 찾을 수 있으며 지문 및 Bluetooth는 ' 센서 '및 ' 연결 ' 에서 선택할 수 있습니다.
화면 속성은 각 블록의 속성을 변경하여 변경할 수 있습니다.
그런 다음 ' 블록 '화면으로 이동하여 블록 을 사용하여 앱을 빌드합니다.
이제 아래로 스크롤하여 ' List_Picker1'을 클릭 하고 이미지와 같이 첫 번째 코드 블록을 끌어서 놓습니다.
다음 단계에서 'Control' 블록을 클릭 한 다음 첫 번째 코드 블록을 뷰어 화면에 끌어다 놓습니다.
그런 다음 ' Bluetooth_client1' 블록으로 이동 하여 ' Bluetooth_client.connect' 코드 블록을 선택합니다.
그런 다음 ' List_Picker' 블록으로 이동 하여 아래 이미지와 같이 ' 선택 코드 블록' 을 선택합니다 .
이제 다음 단계에서 다시 ' List_Picker' 블록으로 이동하여 ' List_Picker 를 선택합니다 . 아래 이미지와 같이 코드 블록에 텍스트를 입력 합니다.
그 후 '텍스트' 블록으로 이동 하여 첫 번째 코드 블록을 선택하십시오.
이것으로 첫 번째 코드 블록이 완성됩니다. Android 휴대폰의 지문 센서를 호출하고 지문을 인증하려면 3 개의 코드 블록을 더 만들어야합니다. 전체 코드 블록은 아래 그림에 나와 있습니다. 이 그림을 사용하여 나머지 코드 블록을 결합하십시오.
모든 블록이 연결되면 랩톱 에서 .apk 파일 을 내보내거나 QR 코드를 사용하여 APK를 휴대폰으로 직접 내보낼 수 있습니다. 이 앱 의 .aia 및 .apk 파일은 아래 링크에서 다운로드 할 수 있습니다.
- Arduino를 통해 솔레노이드 잠금을 제어하는 Android 애플리케이션 다운로드
생체 인식 기반 잠금을위한 3D 인쇄 케이스
앞서 언급했듯이 우리는 성능 보드와 솔레노이드 잠금 장치를 깔끔한 작은 케이스에 조립하는 3D 모델을 만들었습니다. 슬라이싱 소프트웨어에 배치 된 모델은 다음과 같습니다.
동일한 크기의 성능 보드와 솔레노이드 잠금 장치를 사용하는 경우 아래에 제공된 STL 파일을 사용하여 동일한 케이스를 인쇄 할 수도 있습니다. 이전에 구축 한 다른 3D 프린팅 프로젝트도 확인할 수 있습니다.
솔레노이드 잠금 케이스용 STL 파일
Arduino 기반 지문 제어 잠금 테스트
먼저 잠금을 제어하려면 휴대폰에 .apk 파일 을 다운로드하여 설치해야합니다. 또한 Arduino Nano에 전체 코드를 업로드해야하지만 코드를 업로드하기 전에 nano에서 TX 및 RX 핀을 제거했는지 확인하십시오. 업로드가 완료되면 잠금 장치를 설치 한 다음 휴대폰에서 Bluetooth를 켜고 사용중인 Bluetooth 장치와 페어링하고 앱을 엽니 다. 이제 앱에서 블루투스 아이콘을 탭하고 블루투스 장치에 연결하면 앱의 블루투스 아이콘이 잠금 아이콘으로 바뀝니다. 이제 지문 아이콘을 탭하여 휴대폰의 지문 스캐너를 사용하여 지문을 확인해야하며 값이 Arduino Nano로 전송됩니다.
이 프로젝트는 휴대폰에 연결된 Bluetooth 모듈로 수행 할 수있는 작업의 기본적인 데모 일뿐입니다. 전체 작업 로봇, 출석부, 앱 제어 홈 자동화 장치 등을 만들 수 있으며 목록은 상상에 달합니다. 또한 디스플레이를 인터페이스하여 건물에 들어가는 사람의 이름을 표시하거나 보안을 위해 카메라를 추가하여 그 사람의 사진을 클릭 할 수 있습니다. 직접 시도하고, 변경하고, 어딘가에 갇힌 경우 의견 섹션에서 알려 주시면 도움을 드리겠습니다. 다시 한 번 감사 드리며 좋은 하루 되세요.