Github Link : https://github.com/psy1064/DJU_OSP
DJU_OSP
2019 대전대학교가 주최하는 Open Source Project 경진대회에 제출하는 작품입니다.
프로젝트 소개
- 프로젝트명 : 라즈베리파이를 이용한 스마트홈 및 원격관리 어플리케이션
- 개발기간 : 19.10.01 ~ 19.12.05
- 개발인원 : 박세용
작품 기능
- 라즈베리파이를 이용한 스마트 홈 구축
- 실시간 환경 정보(온도, 습도, 미세먼지) 데이터 수집
- Qt Programming과 LCD를 이용해 GUI 형태로 출력
- Pi camera로 CCTV 영상 촬영 및 적외선 촬영 가능
- 서보모터로 전등 스위치 ON/OFF
- 인체감지센서를 통해 사람 인식
- 안드로이드 어플리케이션으로 실시간 모니터링 및 제어
- 라즈베리파이에서 수집한 데이터를 실시간 모니터링
- Pi camera로 촬영한 영상을 실시간 스트리밍
- CCTV 원격 ON / OFF
- 원격으로 전등 스위치 ON / OFF
- 알람 기능을 활용하여 원하는 시간에 전등 스위치 ON
- 어플 내 감시모드 활성화 시 사람이 감지되었을 때 Push 알람
작품 구조도
라즈베리파이 실행화면
안드로이드 어플리케이션 실행화면
-
- Splash Activity로 2초 뒤 MainActivity로 이동
-
-
어플리케이션의 메인화면
-
어플 상단에는 라즈베리파이로부터 받아온 환경정보(미세먼지, 습도, 온도) 데이터 출력
-
어플 하단에는 4가지 부가기능(전등제어, CCTV 확인, 알람, 감시모드 활성화) 버튼이 있음
-
미세먼지 값은 등급에 따라 색과 등급을 표시해줌
-
실시간 데이터들은 Notification Bar에 띄워줌
-
전등제어 이미지 버튼 클릭 시 메세지 창이 뜨게 되고 명령에 따라 전등을 ON OFF 시켜줌
-
감시모드 이미지 버튼 클릭 시 ''감시모드가 활성화 되었습니다'' ToastMessage 출력 후 버튼의 색 변경
-
감시모드가 활성화 되었을 때 라즈베리파이의 인체감지센서에 사람이 감지되면 Notification Bar에 사람이 감지되었다는 알림이 생성되고 알림 클릭 시 cctvActivity로 바로 이동함
-
-
- MainActivity의 CCTV 확인의 이미지 버튼을 클릭하면 실행되는 Activity
- CCTV ON / OFF 버튼을 클릭 시 CCTV를 원격으로 ON / OFF 할 수 있음
- 신고하기 버튼 클릭 시 메세지 창이 뜨게되고 Yes 클릭 시 112로 전화걸수 있는 다이얼로 이동하게 됨
-
- 설정한 알람시간이 되었을때 실행되는 액티비티
- MainActivity에서 알람 ON의 이미지 버튼을 클릭하면 시간을 설정할 수 있는 창이 나옴
- 알람을 설정하면 이미지 버튼의 색이 바뀌고 Notifcation Bar에 설정한 알람시간을 띄움
- 알람이 울리면 상단의 시계가 실시간으로 출력되고 아래의 Swipe Button을 밀어서 해제하면 종료됨
변경사항
20.02.04) 상시 데이터를 출력, 보내주는 것에서 수집된 데이터의 값이 변동이 있을 때만 수행하도록 했습니다.
20.03.03) 어플이 서버로 최초 접속시 서버에서 데이터를 한번 보내주도록 수정했습니다.
20.03.04) 전등 ON/OFF 기능을 제거하고 cctv의 각도를 조절하는 기능을 추가했습니다.
관련 링크
https://1d1cblog.tistory.com/21?category=806242
https://1d1cblog.tistory.com/110?category=806242
https://1d1cblog.tistory.com/44?category=806242
https://1d1cblog.tistory.com/43?category=806242
https://1d1cblog.tistory.com/42?category=806242
https://1d1cblog.tistory.com/48?category=806242
https://1d1cblog.tistory.com/47?category=806242
https://1d1cblog.tistory.com/41?category=806242
https://1d1cblog.tistory.com/40?category=806242
https://1d1cblog.tistory.com/38?category=806245
https://1d1cblog.tistory.com/20?category=806245
https://1d1cblog.tistory.com/16?category=806245
https://1d1cblog.tistory.com/11?category=806245
https://1d1cblog.tistory.com/34?category=823445
https://1d1cblog.tistory.com/37?category=823445
https://1d1cblog.tistory.com/39?category=823445
'Project > 개인 프로젝트' 카테고리의 다른 글
[개인프로젝트] 나무 재고 관리 프로그램 (0) | 2020.04.03 |
---|---|
[개인프로젝트] 크롬 확장프로그램 Time Timer 개발 (0) | 2020.03.19 |
[개인프로젝트] 코로나 선별 진료소 확인 어플리케이션 (0) | 2020.03.11 |