This project is carried out with an offer from Pablo Airlines. It consists of three parts: server, Android, and Arduino under the theme of building a user authentication-based door lock system.
Progress period : 2022.09.04 ~ 2022.09.28
Hosted by: kusitsm
- Install server application.
git clone https://github.com/asapD/server.git
- Execute docker-compose to run db server.
docker-compose up
- Run spring boot project in IntelliJ.
- Server
- Secure
- Database
- Environment
- etc
- 회원가입한 사용자가 asapD 어플을 통해 상품을 주문한다.
- 서버에서 주문ID와 사용자ID,
prefix
값을 통해 serialNum을 생성하고 이를 Redis에 저장한다. 그 후 사용자에게 serialNum을 QR코드로 보여준다. - 사용자가 도어락 기기 ( 아두이노 )와 블루투스 연결을 한다.
- 블루투스 연결 성공 후에 사용자가 도어락 기기의 QR 코드 리더기에 QR 코드를 보여준다.
- 도어락 기기에서 QR 코드 값을 읽은 뒤, serialNum을 추출하여 사용자에게 블루투스 통신으로 값을 전달한다.
- 안드로이드에서 이 값을 바로 서버에 보내어, 검증 과정을 거친다.
- 검증 결과로 200 status일 경우 안드로이드는 도어락 기기에 블루투스 통신은로
open
키워드를 전송하고, 400 status일 경우close
키워드를 전송한다. - 도어락 기기는 전달받은 키워드에 따라 서보 모터를 움직여 문을 열거나 열지 않는다.