1주차_2차시 : 스마트디바이스와 ESP32 - dhryu60/SmartDevice_2025-1 GitHub Wiki
📌 스마트디바이스와 ESP32 – 1주차 강의 자료
📖 강의 개요
- 스마트디바이스와 IoT의 개념을 이해한다.
- SoC(ESP32)의 역할과 특징을 학습한다.
- 실습 환경 구축을 위한 기본 지식을 습득한다.
📖 스마트디바이스란?
- 정의:
스마트디바이스(Smart Device)는 네트워크 연결이 가능하고 센서, 프로세서, 액츄에이터가 포함된 장치. - 주요 예시:
- 스마트폰, 스마트워치, 스마트TV
- 스마트홈 기기(스마트 전구, 온도조절기)
- 스마트카 및 자율주행차
📖 IoT(사물인터넷)란?
- IoT(Internet of Things)의 정의:
- 사물들이 인터넷을 통해 데이터를 주고받으며 상호작용하는 시스템.
- IoT의 기본 구조:
- 센서 – 데이터를 감지 (온도, 습도, 거리 등)
- 프로세서 – 데이터를 처리 (ESP32, Raspberry Pi 등)
- 통신 모듈 – 데이터 송수신 (Wi-Fi, Bluetooth, MQTT)
- 클라우드 – 데이터 저장 및 분석
📖 IoT의 활용 사례
- 스마트홈:
- 스마트 조명, 스마트 도어락, IoT 냉장고
- 헬스케어:
- 스마트 워치(심박수 모니터링), 원격 환자 모니터링
- 스마트 팩토리:
- 공장 자동화, 센서를 통한 실시간 모니터링
- 스마트 농업:
- 토양 수분 센서, 자동 급수 시스템
📖 IoT의 핵심 구성 요소
- 센서 및 액츄에이터
- 센서: 온도, 습도, 거리 측정
- 액츄에이터: 모터, LED, 스피커
- 마이크로프로세서
- ESP32, Raspberry Pi, Arduino
- 네트워크 통신
- Wi-Fi, Bluetooth, LoRa, Zigbee
- 클라우드 서비스
- Firebase, AWS IoT, Google Cloud
📖 ESP32란?
- ESP32 개요
- Espressif Systems에서 개발한 저전력, 고성능 마이크로컨트롤러 (SoC).
- Wi-Fi 및 Bluetooth 기능을 내장하여 IoT 프로젝트에 적합.
- ESP32의 주요 특징
- Wi-Fi 및 Bluetooth 지원
- 듀얼 코어 프로세서
- 다양한 GPIO 지원 (아날로그, 디지털)
- 저전력 설계
📖 ESP32와 아두이노 비교
기능 | 아두이노(UNO) | ESP8266 | ESP32 |
---|---|---|---|
프로세서 | ATmega328P (8bit) | Tensilica L106 (32bit) | Xtensa LX6 (32bit, 듀얼코어) |
클럭 속도 | 16 MHz | 80 MHz | 160~240 MHz |
Wi-Fi 지원 | 없음 | 802.11 b/g/n | 802.11 b/g/n |
Bluetooth 지원 | 없음 | 없음 | Bluetooth 4.2, BLE |
GPIO 핀 수 | 14 | 17 | 34 |
📖 ESP32의 하드웨어 구성
- 주요 하드웨어 요소
- GPIO 핀 (디지털, 아날로그)
- Wi-Fi/Bluetooth 모듈
- USB-UART 인터페이스 (CP2102)
- 전압 조절기 (3.3V 전원 공급 필요)
📖 ESP32의 개발 도구
- 개발 환경 (IDE)
- Arduino IDE
- ESP-IDF (Espressif 공식 개발 환경)
- MicroPython (Python 개발 가능)
- PlatformIO (VS Code 확장 기능)
📖 ESP32로 할 수 있는 프로젝트
- 스마트홈 자동화
- 온습도 센서 기반 자동 제어
- IoT 조명 시스템
- 실시간 데이터 모니터링
- 클라우드 연동 센서 데이터 수집
- 웹 대시보드 활용
- 스마트 농업
- 토양 센서 기반 자동 급수 시스템
📖 ESP32의 Wi-Fi & Bluetooth 기능
- Wi-Fi 기능
- AP 모드(액세스 포인트)
- STA 모드(클라이언트)
- Bluetooth 기능
- BLE(Bluetooth Low Energy)
- 스마트폰과 통신
📖 ESP32의 GPIO 활용
- 디지털 입력/출력
- LED ON/OFF
- 버튼 입력
- 아날로그 입력
- 가변 저항 값 읽기
- PWM 출력
- LED 밝기 조절
📖 ESP32 실습 환경 구축
- 필요한 준비물
- ESP32 보드
- USB 케이블
- 점퍼 와이어, 센서
- 설치할 소프트웨어
- Arduino IDE
- ESP32 보드 매니저
📖 GitHub를 활용한 코드 관리
- GitHub 기본 개념
- 코드 저장 및 공유
- 협업을 위한 버전 관리
- 실습: GitHub 저장소 생성 및 코드 업로드
📖 PDF 자료
📖 1주차 실습
✅ GitHub 계정 생성 및 1주차 보고서 작성
📖 학습 정리
- 스마트디바이스의 개념 및 IoT 활용
- ESP32의 특징 및 개발 도구 소개
- GitHub를 활용한 코드 관리
📖 다음 주 예고
🔹 Arduino IDE를 활용한 ESP32 기본 프로그래밍
🔹 디지털 및 아날로그 입출력 실습
🔹 간단한 IoT 프로젝트 시작하기