week_2(프로젝트 기획안 ‐ 수정) - sunbang123/Graduation_Project GitHub Wiki
(정보를 확인하려면 클릭하세요!)
- AWS는 여러 오픈소스 프로젝트에 기여하고 있으며, 자체적으로도 다양한 소프트웨어를 개발해 오픈소스로 공개하고 있습니다. 예를 들어, 개발자가 AWS 서비스를 쉽게 사용할 수 있도록 도와주는 SDK(Software Development Kit)나, 인프라를 코드로 관리할 수 있는 AWS CDK 등이 있습니다.
AWS IoT Core 개요
- AWS IoT Core는 다양한 IoT(사물 인터넷) 기기를 클라우드에 안전하게 연결하고, 이들로부터 데이터를 수집할 수 있게 해주는 서비스입니다. 이 서비스를 통해 집 안의 여러 기기들을 한 곳에서 쉽게 관리하고, 자동화할 수 있습니다.
센서와 AWS IoT Core의 통합
- 스마트 홈 시스템에서 자주 사용하는 DHT11과 같은 센서는 온도와 습도를 측정합니다. 이 센서를 Raspberry Pi 같은 장치에 연결하고, AWS IoT Core와 연동하면, 실시간으로 데이터를 수집하고 분석할 수 있습니다.
간단한 과정:
- 센서에서 데이터를 수집합니다.
- 이 데이터를 AWS IoT Core에 전송합니다.
- AWS IoT Core의 규칙 엔진을 사용해 필요한 데이터를 다른 서비스로 보냅니다.
- IoT 애널리틱스를 활용한 데이터 분석
- AWS IoT 애널리틱스를 사용하면 센서에서 수집한 데이터를 분석하여 중요한 정보를 얻을 수 있습니다. 예를 들어, 집 안의 온도와 습도 변화를 분석해 난방과 냉방 시스템을 최적화할 수 있습니다.
백엔드 웹 서버 호스팅
- AWS는 웹 서버를 쉽게 구축할 수 있도록 다양한 서비스를 제공합니다. 예를 들어, EC2를 사용하면 직접 서버를 설정할 수 있고, AWS Lambda를 사용하면 서버 없이도 코드를 실행할 수 있습니다.
프론트엔드 UI 호스팅
- 사용자 인터페이스(UI)를 AWS에서 호스팅하는 것도 간단합니다. 정적인 웹사이트는 S3와 CloudFront를 통해 호스팅할 수 있고, AWS Amplify를 사용하면 더 복잡한 웹 애플리케이션도 쉽게 관리할 수 있습니다.
- AWS를 사용하면 스마트 홈 시스템을 쉽게 구축하고 관리할 수 있습니다. AWS IoT Core로 집 안의 기기들을 연결하고, 수집된 데이터를 분석해 생활을 더 편리하고 효율적으로 만들 수 있습니다. AWS의 다양한 도구와 서비스를 활용해 여러분만의 스마트 홈 시스템을 만들어보세요.
일상에서의 편안함과 자동화를 목표로 하며, 최신 기술을 활용하여 스마트홈 환경을 구축합니다.
- 공간 활용 최적화
- 사용자 친화적 인터페이스
- 자동화된 환경 제어
기술 | 용도 |
---|---|
Raspberry Pi | 중앙 제어 및 처리 유닛 |
Docker | 모듈화된 서비스 배포 및 관리 |
Home Assistant | 오픈소스 홈 자동화 플랫폼 |
Node-RED | 시각적 프로그래밍 및 자동화 시나리오 설정 |
MQTT | IoT 기기 간 통신 프로토콜 |
Python | 센서 및 디바이스 제어 스크립트 |
Grafana | 실시간 모니터링 및 시각화 대시보드 |
AWS | 클라우드 인프라 및 서비스 관리 |
AWS Lambda | 서버리스 백엔드 로직 실행 |
AWS IoT Core | IoT 장치의 클라우드 통신 및 관리 |
AWS S3 | 데이터 저장 및 백업 |
- 온/습도 센서: 실내 환경 모니터링 및 조절
- 모션 센서: 움직임 감지 기반 조명 및 보안 시스템 제어
- 미세먼지 센서: 공기질 모니터링 및 공기청정기 자동 제어
- 토양 수분 센서: 화분 관리 자동화
- 스마트 스피커 연동: 음성 명령 기반 시스템 제어
- 규칙 기반 자동화: 사용자 정의 자동화 시나리오 실행
실제 가전 -> 교육용 대체품
---------------------------------
조명 -> LED 패널/소형 전구
공기청정기 -> 팬+필터 모형
스마트 플러그 -> USB 제어 장치
디스플레이를 통해 스마트홈의 상태를 한눈에 확인하고, 자동으로 관리할 수 있는 시스템 구축.
- 일상 정보 제공의 효율성 향상
- 개인 맞춤형 서비스 제공
- Raspberry Pi: 스마트 디스플레이 컨트롤러
- Node-RED: UI 구축 및 데이터 흐름 관리
- AWS DynamoDB: 실시간 데이터베이스 및 인증 관리
- AWS Lambda: 서버리스 함수로 데이터 처리 및 API 구현
- AWS IoT Core: 가전 기기 연동 및 상태 모니터링
- IFTTT: 다양한 서비스 연동 및 자동화 규칙 설정
- 스마트 디스플레이: 시간, 날씨, 일정 등 대시보드
- 알람 및 리마인더: 일정 및 할 일 알림
- 음성 제어: 기본 음성 명령 처리
- 실시간 상태 모니터링: 센서 및 디바이스 상태 확인
- 연동된 가전 제어: Node-RED 인터페이스/음성으로 제어
- 스마트 디스플레이 → 일반 모니터/소형 디스플레이
- 음성 제어 → 간단한 음성 인식 라이브러리
- 알람/리마인더 → LED 알림 + 모형 기기
- 센서 데이터: 온도, 습도, 움직임, 조명 상태 등
- 사용자 입력: Node-RED 대시보드/음성 명령 기록
- 시간 데이터: 사용자 행동의 시간대 기록
graph LR
A[센서/사용자 데이터] --> B[SQLite/Firebase]
B --> C[Node-RED]
C --> D[데이터 전처리]
D --> E[패턴 인식]
- 시간 기반 패턴
if (time === "07:00" && day === "weekday") { turnOn("bedroom_light"); }
- 조건 기반 규칙
if (temperature > 28 && fanStatus === "off") { turnOn("fan"); }
- 빈도 기반 패턴
if (isMostUsedDevice("living_room_light") && time === "18:00") { suggestAutomation("Turn on living room light at 6 PM"); }
- Node-RED로 기본 자동화 규칙 설정
- 패턴 기반 새로운 자동화 규칙 제안
- 사용자 피드백을 통한 지속적 개선
- Node-RED 플로우: 데이터 수집 → 처리 → 규칙 생성 → 자동화 실행
- Home Assistant 연동: 생성된 규칙을 실제 스마트홈 환경에 적용
- AWS Lambda 및 IoT Core를 통해 클라우드 기반 자동화 규칙 실행 및 관리
참고: 이 프로젝트는 복잡한 머신러닝 없이도 기본적인 '스마트' 기능을 구현할 수 있습니다. Node-RED의 시각적 프로그래밍을 활용하여 복잡한 로직도 쉽게 구현합니다!