GuardOwl
Guard_Owl
아두이노와 NFC 리더기로 만든 이중 보안 기능을 지닌 금고와 이를 사용 및 관리하기 위해 웹과 안드로이드 앱을 활용하는 IOT 물품 보관시스템
프로젝트
프로젝트 이름 : Guard Owl
사용언어 = WEB : JavaScript , Html , Css [Spring FrameWork]
APPLICATION : JAVA , XML
DB : ORACLE (AWS RDS Oracle)
Aduino : Raspberry
사용Tool : STS , androidStudio
프로젝트 소개
1. 프로젝트 개발
최근 지하철 역사내 비치된 보관함을 비롯한 공용 보관함을 사전에 신청하여 대여하는
서비스들이 생겨나고 있으나, 개인이나 단체에게 전용 보관함과 이에 대한 서비스를 제공해주는
업체는 아직 많지 않습니다. 그리고 대부분의 보관함들은 개폐장치를 제외한 다른 보안장치는 구현되어
있지 않아 물리적 혹은 전기적으로 외부에서 충격을 줘 부정한 방법으로 보관함의 문을 열 경우,
내부의 물품들의 안전이 위협 받을 수 있습니다. 따라서 보안이 필요한 물품이나 자료들을 독자적으로
보관/관리 하기를 원하는 단체 및 개인에게 2중 보안 장치가 부착된 보관함과 그것을 이용 및
관리할 수 있는 서비스를 제공하면 시장에서 충분한 수요가 있을 것이라고 판단하여
프로젝트 개발을 결심하게 되었습니다.
2. 프로젝트 개발 목표
금고는 금고 문의 잠금/잠금해제를 담당하는 1차 보안장치인 NFC리더기와 이를 무시하고
금고 자체를 탈취하려 하거나, 금고문을 문을 부정한 방법으로 개폐하려고 할 경우를 대비한
2차 보안장치인 아두이노 모듈(압력센서, 카메라 모듈 등)로 구성되어 있습니다.
2차 보안장치는 압력센서에서 측정한 무게 값이 설정 값과 달라지게 되면 금고 상단에 부착된
카메라 모듈을 이용하여 현장 사진을 촬영하고 이 사진과 함께 경고 메시지를 웹과 앱을 통해서
사용자에서 전송합니다. 이러한 기능을 통하여, 각별한 보안이 요구되는 물품이나 서류자료를
독자적으로 관리하고자 하는 관공서, 회사, 단체, 개인 등이 보안을 더욱 철저히 할 수 있게 하며
동시에, 이를 대한 관리 비용을 줄일 수 있게 함을 목표로 하고 있습니다.
3. 프로젝트 수행 일정
구성 요소 및 구현 기능
서버 (AWS Ubuntu 16.04)
서버 기본 설정과 Oracle DB 사용을 위한 환경설정 리눅스에서 수행
Putty 프로그램을 이용한 서버 구축
FileZilla 프로그램으로 프로젝트 파일 임포트
아두이노 웹서버에서 사진 이미지 가져오기
보관함에 충격이 있거나 패스워드 찾기 기능 사용 시 이메일 송신
웹 애플리케이션, 안드로이드 애플리케이션을 위한 DB 및 서비스 제공웹 애플리케이션: 시스템 관리자용 웹 페이지
관리자 추가 및 삭제(관리자, 매니저, 일반 사용자 권한 부여)
관리자 계정 회원 가입, 개인 정보 수정, 패스워드 찾기
신규 사용자 회원 가입 승인
사용자 신청 승인 및 거절 (수령, 보관)
보관함 추가 및 삭제
보관품 목록 조회
아두이노에서 전송된 사진 이미지 조회
게시판 기능 (게시글, 댓글, 첨부 파일 추가, 삭제, 수정)안드로이드 애플리케이션: 일반 사용자용 안드로이드 애플리케이션
일반 사용자용 회원 가입, 패스워드 찾기, 개인정보 수정
게시판 기능 (게시글, 댓글 추가 및 삭제)
관리자에게 보관함 관련 신청 (수령신청, 보관신청)
관리자가 신청을 승인할 시 사용자 알림 백그라운드 서비스
보관품 목록 조회
사용자 신청 내역 조회
NFC 리더기를 이용한 사용자 인증
TCP 소켓 통신을 이용한 아두이노 보관함 잠금장치 개폐하드웨어: NFC 리더기, 아두이노 및 기타 장치들을 이용한 보관함 모형
Geunuino UNO: 보관함 문을 개페하기 위한 서보 모터 동작용 보드
ESP8266 UNO에서 요청 시 개폐를 위해 서보 모터 동작
ESP8266 UNO와 UART 통신
ESP8266 UNO: WiFi모듈, 카메라모듈, 압력센서를 사용한 메인 보드
압력 센서에 인가되는 압력 값 변화 시 카메라 모듈이 사진 촬영
와이파이 모듈을 이용하여 아두이노 웹서버 구축 및 웹서버에 사진 송신
안드로이드 애플리케이션과 TCP 소켓 통신
안드로이드 애플리케이션에서 요청 시, Genuino UNO에 개폐 신호 송신
NFC 리더기: 사용자 인증용 NFC 리더기
서버를 통해 안드로이드 애플리케이션과 통신하여 사용자 인증 기능 수행
최종 완성본
하루를 기록하다