Skip to content

Pylangs/SP_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

System Programming Team Project

2023년 2학기 시스템 프로그래밍 팀 프로젝트 : 스마트 통발

🛠구현 기능들

PI 1

  • 주된 서버 역할 -> 다른 파이들과의 연결을 담당
  • 카메라 센서 -> 물고기 판단 및 안드로이드에 실시간 영상 전달
  • 모터 센서 -> 미끼를 풀기 위한 용도

PI 2

  • LED 센서 -> 어둡거나 유저가 원할때 on/off 가능
  • 조도 센서 -> LED를 자동으로 제어하기 위함

PI 3

  • 모터 센서 2개 -> 통발의 앞 뒷문의 개폐를 담당

PI 4

  • 스피커 -> 유저가 원할 때 통발의 찾기 위함
  • GPS -> 유저가 요청했을 때 현재 위치를 전달하기 위함
  • 수질 센서 -> 현재 통발 위치의 수질정보를 유저에게 보여줌

ELSE

  • flask&pytorch -> 물고기인지 쓰레기인지 판단
  • android -> 유저의 통발 작동을 위함

🔍기능들 세부 동작방법

PI 1

  1. C코드 실행 전 카메라 센서 웹으로 송출
  2. flask, pi2, 3, 4순으로 연결
  3. 물고기인지 판단 값, 유저의 command를 실시간으로 받아옴
  4. 각 command를 적절한 pi에 보내주기 or 모터센서를 작동

PI 2

  1. 조도 센서 값이 임계값 이하일 때 LED를 작동
  2. PI 1과 socket연결을 진행
  3. PI 1 으로 부터 led command를 받아오면 조도센서값 무시 & 유저의 command에 맞게 led 작동

PI 3

  1. 최초 실행시 통발의 앞 뒷문 열어둠
  2. PI 1과 socket연결을 진행
  3. 카메라 센서로 부터 물고기 정보를 받아오면 문을 닫는다.
  4. 유저로 부터 command가 들어 오면 그 command에 맞춰 개폐를 하도록 한다.

PI 4

  1. 최초 실행시 스피커를 off시킴
  2. PI 1과 socket연결을 진행
  3. 일정 시간을 주기로 PI 1에 gps값과 수질값을 전송하게됨 (user가 command를 보낼시 PI 1에서 처리)
  4. user로 부터 스피커 command를 받았을 시 스피커를 잠깐 동안 작동시킴

flask & torch

  1. 원기형 부탁해!

android

  1. 유저로 부터 포트값 입력 받음
  2. 유저가 버튼을 누를 시 socket연결을 함
  3. 버튼에 맞는 command를 PI 1에 전송
  4. 정보를 받아올 필요가 있으면 받아온뒤 text값 변경
  5. 변경 or 정보를 받아올 필요가 없을 시 socket연결 종료
  6. cctv버튼이거나 gps버튼일 경우 webview를 이용해 유저에게 화면으로 보여줌

🧑각 기능별 담당자

PI 1 & flask, pytorch : 강원기

PI 2 & android : 채승우

PI 3 : 한도훈

PI 4 : 정의훈