스마트 디바이스 11주차 아두이노 클라우드 - yubiine/25-1_smartdevice GitHub Wiki

⭐️ 목표

ESP32와 아두이노 클라우드를 활용하여 IoT 데이터를 수집·활용하고, 원격 제어 기능을 실습한다.

📌아두이노 클라우드란?

Arduino Cloud는 사용자가 직접 프로그래밍하지 않아도 웹 기반 인터페이스에서 손쉽게
센서 데이터 확인, 디바이스 제어, 자동화 규칙 설정, 대시보드 구축 등을 할 수 있게 해주는 Arduino의 공식 IoT 플랫폼입니다.

🔹주요 기능

  • 디바이스 연결 관리 (ESP32, MKR WiFi 1010, Uno R4 WiFi 등)

  • 센서 데이터 수집 및 시각화

  • 원격 제어 (웹, 스마트폰 앱으로 LED 제어 등)

  • IFTTT 같은 자동화 로직 설정

  • OTA(Over-The-Air) 펌웨어 업데이트

  • Webhook / REST API 지원 → 다른 시스템과 연동 가능

🔹 장점

  • 초보자도 쉽게 사용할 수 있는 UI 기반 개발 환경

  • 웹브라우저 기반으로 소프트웨어 설치 최소화

  • 공식 앱(Arduino IoT Remote)을 통해 모바일로도 제어 가능

  • 클라우드에서 자동으로 코드 생성해 줘서 프로그래밍 부담 ↓

  • 무료로 시작 가능 (제한 있음)

🔹 한계

  • 상업용 대규모 서비스 구축에는 부적합

  • 사용자 정의 확장성 및 백엔드 연동 기능 부족

🔹 비교

항목 대기업형 오픈소스형 아두이노 클라우드
대표 예시 AWS IoT, Azure IoT ThingsBoard, Node-RED Arduino Cloud
확장성 매우 높음 중간~높음 낮음
사용 편의성 중간 중간~어려움 매우 쉬움
교육용 적합도 낮음 중간 매우 높음
상용 서비스 적합도 매우 높음 중간 낮음

📌아두이노 클라우드 설정

  • Thing tab에서 “CREATE THING” 버튼을 클릭합니다. image

  • 프로젝트의 이름을 입력합니다. 그리고 “ADD VARIABLE” 버튼을 클릭합니다. image

  • LED 상태를 제어하기 위한 led_state 변수 추가합니다 image

  • 온습도 센서를 모니터링하기 위한 temperature변수 추가합니다.

  • “Associated Device” 섹션에서 “Select Device” 버튼을 클릭합니다. image

  • “SET UP NEW DEVICE”를 선택한 뒤, “Set up a 3rd Party device”를 클릭합니다. image

  • ESP32를 선택하고 드롭다운 메뉴에서 “DOIT ESP32 DEVKIT V1”을 선택합니다.

  • Device의 이름을 정하고 다음으로 진행합니다. image image

  • “Device ID”와 “Security Key”를 받게 됩니다. Security Key 복사 image

  • USB 포트를 통해 스케치를 업로드하려면 Create Agent가 필요합니다.

  • 스케치 탭에 진입했을 때 아래 메시지 창이 뜬다면 Create Agent가 설치되어 있지 않은 것입니다.

  • “Learn More”를 누르면 download 링크를 확인할 수 있습니다 image image

  • 대시보드 설정 create -> add image

  • led_state 변수를 제어할 switch 위젯을 선택합니다. 위젯의 이름을 정해 준 뒤 “Link Variable”
    버튼을 클릭해 줍니다. 디바이스(ESP32)와 변수(led_state)를 선택하여 위젯에 연결해 줍니다. image image

  • temperature를 모니터링할 Chart 위젯을 추가하여 줍니다.

  • 디바이스(ESP32)와 변수(temperature)를 선택하여 연결해 줍니다. image image

  • 실행 결과 image

https://github.com/user-attachments/assets/e7bbd7b1-a447-4f31-ac52-9d813ddabc8c