산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

애저 IoT 기반 스마트 수영장 제어 시스템: 온도 모니터링 및 원격 제어

프로젝트 개요

인텍스(Intex) 15피트 원형 수영장(약 19,000리터)을 대상으로, 수온/기온 모니터링과 펌프·히터·염수 시스템 자동 제어를 통해 아이들이 놀기 좋은 수온을 유지하면서 에너지 낭비를 방지하는 IoT 시스템을 구축했습니다. 라즈베리 파이 2(Windows 10 IoT Core)와 아두이노 우노를 조합하고, 마이크로소프트 애저 클라우드 서비스(IoT Hub, Stream Analytics, SQL Database, API App, Web App, Power BI)를 활용해 엔드투엔드 솔루션을 완성했습니다.

시스템 아키텍처

애저 IoT 기반 스마트 수영장 제어 시스템: 온도 모니터링 및 원격 제어

데이터 흐름: DS18B20 센서(2개) → 아두이노 우노(I2C 마스터) → 라즈베리 파이(I2C 슬레이브) → 애저 IoT Hub(AMQP) → 스트림 애널리틱스 → SQL Database → API App ↔ 웹/모바일 앱 / Power BI 대시보드

하드웨어 구성

부품수량비고
라즈베리 파이 2 모델 B1Windows 10 IoT Core 실행, 필드 게이트웨이 역할
아두이노 우노 R31DS18B20 2개 연결, I2C로 라즈베리 파이에 온도 전송
DS18B20 방수 온도 센서2수온용(수중 설치), 기온용(박스 외부 부착)
IoT 파워 릴레이 (110V 콘센트 제어)1라즈베리 파이 3.3V GPIO로 펌프/염수 시스템 전원 제어
4.75kΩ 저항 (1/4W)2DS18B20 데이터 라인 풀업용
방수 보관함, 벨 와이어(연장선), 브레드보드 등-케이블 그랜드, 환기 구멍 가공 필요

주요 구성 요소별 상세

센서부 (아두이노 우노)

릴레이 제어 (라즈베리 파이)

라즈베리 파이 애플리케이션 (IoTPoolRaspiBackgroundApp)

애저 클라우드 파이프라인

서비스역할주요 설정
IoT Hub (무료 티어)디바이스 인증, D2C/C2D 메시징일일 8,000 메시지, 500바이트 제한 내 여유
Stream Analytics실시간 쿼리로 SQL DB 적재SELECT ... INTO sql FROM iothub 단순 쿼리
SQL Database (S0 Standard)시계열 데이터 저장Pools 테이블: Id, PoolName, 수온, 기온, 전원상태, 타임스탬프
API App (ASP.NET Web API)RESTful 인터페이스 제공API 키 인증, GET/POST로 최신 데이터 조회 및 펌프 제어
Web App (ASP.NET Web Forms)브라우저 모니터링/제어 UIAAD 인증 필수, 모바일 친화적 레이아웃
Mobile App (Xamarin Forms)크로스플랫폼 네이티브 앱WP/Win10 컴파일, iOS/Android 크로스컴파일 가능
Power BI (무료)실시간 대시보드 시각화DirectQuery로 SQL DB 연결, 보고서 핀 고정

소프트웨어 설정 핵심 포인트

라즈베리 파이 코드 (StartupTask.cs)

static string iotPoolConnString = "HostName=<iothubname>.azure-devices.net;DeviceId=iotpool;SharedAccessKey=<key>";
static string deviceName = "iotpool";

웹 앱 설정 (default.aspx.cs, web.config)

// API 엔드포인트 및 키 설정
private static string apiKey = "";
HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Post, "https://<yourwebsite>.azurewebsites.net/api/pool/poweron");
// web.config AAD 설정
<add key="ida:ClientId" value="<AAD client ID>" />
<add key="ida:AADInstance" value="https://login.microsoftonline.com/" />

모바일 앱 설정 (Core.cs, DataService.cs, PoolPage.xaml.cs)

string queryString = "https://<yourwebsite>.azurewebsites.net/api/pool/getlatest";
private static string apiKey = "";

전체 소스 코드 저장소

GitHub: khilscher/iotpool - 모든 프로젝트 코드(라즈베리 파이, 아두이노, API, 웹, 모바일, SQL 스키마) 포함

참고 자료

회로도 (프리칭)

애저 IoT 기반 스마트 수영장 제어 시스템: 온도 모니터링 및 원격 제어 애저 IoT 기반 스마트 수영장 제어 시스템: 온도 모니터링 및 원격 제어

제조공정

  1. 매립형·지상형 수영장 설계 및 시공 종합 가이드
  2. 아두이노, 산업용 IoT 보드 '포텐타 H7' CES서 공개… 듀얼 코어·내구성 강화
  3. 애저 RTOS, 새로운 개발 키트로 주요 임베디드 플랫폼 전반에 지원 확대
  4. Azure vs AWS: IoT에 더 적합한 클라우드 플랫폼은?
  5. Azure IoT Hub에서 공간 분석 기능을 갖춘 GPS 데이터로거 구축
  6. IoT & AI 기반 수질 모니터링으로 수생 생물 보호
  7. 아두이노와 MAX30100으로 만드는 실시간 IoT 심박수 모니터
  8. 원격 IoT 제어 커스텀 로봇 팔: 아두이노 MKR1000과 심링크(Simulink) 활용
  9. 스마트 IoT 자 제작: ESP8266, 아두이노 & 초음파 센서로 실시간 모니터링
  10. IoT 기반 듀얼 축 태양광 추적기: 아두이노로 구현하는 스마트 에너지 관리