본문으로 이동

아두이노:WIFI: 두 판 사이의 차이

학교의 모든 지식. SMwiki
잔글편집 요약 없음
6번째 줄: 6번째 줄:
=== ps. 와이파이를 쓰려면.. ===
=== ps. 와이파이를 쓰려면.. ===


* 처음부터 ESP8266 NodeMCU나 Wemos D1 mini 처럼 와이파이 통합 보드를 쓰는 편이 간편하고 좋다.(모듈을 따로 사서 붙이는 것보다 싸다. 새로 덧붙일 필요도 없고.)
* 처음부터 ESP8266 NodeMCU나 Wemos D1 mini 처럼 와이파이 통합 보드를 쓰는 편이 간편하고 좋다.
**모듈을 따로 사서 붙이는 것보다 싸다.
** 새로 덧붙일 필요도 없고.(모듈만 사서 덧붙이는 게, 좀 귀찮은 작업이 필요하다. 저항 달고, 빵판 필요하고;;)
* 그러나 학습용으로 기존 보드에 붙이는 용이라면 ESP8266 ESP-01 모듈이 좋다.
* 그러나 학습용으로 기존 보드에 붙이는 용이라면 ESP8266 ESP-01 모듈이 좋다.



2025년 8월 31일 (일) 23:49 판

아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노

  1. 아두이노:개요
  2. 아두이노:하드웨어
    1. 아두이노:우노보드
    2. 아두이노:ESP32
  3. 아두이노:코드
    1. 아두이노:컴퓨터에서 보드로
    2. 아두이노:안드로이드에서 보드로
    3. 아두이노:기초 문법
    4. 아두이노:라이브러리
  4. 아두이노:핀 사용
    1. 아두이노:전원공급
  5. 아두이노:시리얼 통신
    1. 아두이노:엑셀기록
    2. 아두이노:파이썬과 통신
  6. 아두이노:편의함수
  7. 센서 사용
    1. 아두이노:모션센서
    2. 아두이노:온습도센서
    3. 아두이노:조도센서
    4. 아두이노:인체감지센서
    5. 아두이노:pH미터 만들기(Gravity 아날로그 pH센서)
  8. 아두이노:LCD 사용
  9. 아두이노:스위치 사용
  10. 아두이노:릴레이
  11. 통신 관련, 정보 교환
    1. 아두이노:WIFI
    2. 아두이노:블루투스(외장모듈)
    3. 아두이노:IR 송수신
    4. 아두이노:RFID
  12. 아두이노:해결되지 않은 다양한 의문들
  13. 수업용 간단 실습
    1. 아두이노:LED
    2. 아두이노:초음파센서
    3. 아두이노:전압계 만들기
    4. 아두이노:저항계 만들기
  14. 아두이노 모터 출력
    1. 아두이노:서보 모터
    2. 아두이노:DC 모터
    3. 아두이노:BLDC 모터
  15. 미완문서
    1. 아두이노:스테핑 모터
  16. 분류:아두이노 프로젝트

개요

아두이노에서 현재 시간을 받거나 데이터를 보낼 때 와이파이를 다루어야 할 필요가 생긴다.

ps. 와이파이를 쓰려면..

  • 처음부터 ESP8266 NodeMCU나 Wemos D1 mini 처럼 와이파이 통합 보드를 쓰는 편이 간편하고 좋다.
    • 모듈을 따로 사서 붙이는 것보다 싸다.
    • 새로 덧붙일 필요도 없고.(모듈만 사서 덧붙이는 게, 좀 귀찮은 작업이 필요하다. 저항 달고, 빵판 필요하고;;)
  • 그러나 학습용으로 기존 보드에 붙이는 용이라면 ESP8266 ESP-01 모듈이 좋다.

아두이노 기종별 와이파이 사용법

R4

아두이노 R4엔 ESP32-S3가 내장되어 있다.

아래는 와이파이를 이용해 현재시간을 불러오는 방법이다.

  • 라이브러리에서 wifi 검색, Arduino Uno WIFI Dev Ed Library 설치.
  • 라이브러리에서 NTPClient 설치.(시간을 가져오는 라이브러리)
#include <WiFi.h>
#include <WiFiUdp.h>
#include <NTPClient.h>
#include <time.h>

// WiFi 정보
const char* ssid = "kwsh";
const char* password = "khsh9700#";

// NTP 클라이언트 설정
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP);

void setup() {
  Serial.begin(9600);  // 시리얼 통신 속도 설정
  WiFi.begin(ssid, password);

  // WiFi 연결 시도
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Connecting to WiFi...");
  }

  Serial.println("Connected to WiFi network");

  timeClient.begin();
  timeClient.setTimeOffset(32400);  // 서울 시간(UTC+9)으로 변환하기 위한 오프셋 설정
}

void loop() {
  timeClient.update();
  String fromattedTime = timeClient.getFormattedTime();
  

  Serial.print("Current time: ");
  Serial.print(fromattedTime.substring(0,2));
  Serial.print(":");
  Serial.println(fromattedTime.substring(3,5));


  delay(1000);
}