프로젝트 소개
PySmartHome-PC는 ESP32 센서 노드와 Windows PC에서 실행되는 강력한 Python 서버를 연결하도록 설계된 탄력적인 스마트 홈 플랫폼입니다. 이 시스템은 DHT22 센서와 OLED 디스플레이가 장착된 ESP32 장치(ESP32 Hub 및 ESP32-S3 포함)로부터 온도 및 습도 데이터를 수집합니다. 이러한 노드는 최소한의 HTTP API 엔드포인트(/api/status)를 노출하며, Python 서버가 이를 10초마다 폴링합니다.
Flask로 구축된 서버는 데이터를 CSV 파일에 기록하고 http://localhost:5000에서 로컬 대시보드를 제공합니다. 또한 5분마다 데이터와 구성을 GitHub에 동기화하여, GitHub Pages에 호스팅된 미러 온라인 대시보드를 가능하게 합니다. 이 이중 대시보드 접근 방식은 동일한 시각적 디자인과 기능을 통해 로컬 및 원격에서 데이터 가용성을 보장합니다.
주요 기능은 다음과 같습니다:
- 확대/축소, 팬, CSV 내보내기 기능을 갖춘 상호 작용식 차트.
- 평균, 최소/최대 값, 전일 대비 추세 분석 등 각 방에 대한 풍부한 통계.
- 금요일 제외, 2시간 단위 순환 슬롯, 진행률 표시줄이 있는 라이브 카운트다운 등 계획된 정전이 있는 지역을 위한 전문화된 정전 일정 시스템.
- 서버 파일의 업로드, 다운로드, 삭제를 위한 로컬 파일 관리자.
- 사이버펑크, 라이트, 레트로 CRT 등 10가지 사용자 정의 테마와 RTL 레이아웃을 갖춘 완전한 페르시아어 및 영어 지원.
- IP, 간격, 임계값에 대한 환경 변수를 통한 구성으로 코드 변경을 최소화합니다.
- Windows에서 사용하기 쉽게 하기 위한 종속성 및 시작 스크립트의 자동 설치.
이 아키텍처는 서버 측에서 복잡한 Arduino 프레임워크를 피하면서 ESP32의 펌웨어를 최소화하여 신뢰성과 단순성을 강조합니다. 이 프로젝트는 MIT 라이선스 하에 오픈 소스이며, WebSocket 업데이트 및 온도 예측과 같은 향후 기능을 위한 기여를 환영합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.