ESP-01 모듈을 도서관 AP에 연결하기.

Arduino Uno를 도서관 AP에 연결하기.

아두이노 우노 보드와 ESP-01 모듈을 아래와 같이 연결한다.
[ 아두이노 우노 ]                       [ ESP-01 ]
   D2(SW_TXD)                             RXD
   D3(SW_RXD)                             TXD


아두이노 스케치를 아래와 같이 작성한다.
#include <SoftwareSerial.h>

#define ESP_RX  3
#define ESP_TX  2

SoftwareSerial esp8266(ESP_RX, ESP_TX);

void setup()
{
  Serial.begin(9600);
  esp8266.begin(9600);
  esp8266.setTimeout(5000);
  delay(1000);
}

void loop()
{
  if( Serial.available() ) {
    esp8266.write(Serial.read());
  }

  if( esp8266.available() ) {
    Serial.write(esp8266.read());
  }
}

PC 시리얼 통신의 입력은 SoftwareSerial의 출력으로 전송하고, SoftwareSerial의 입력은 PC 시리얼 통신의 출력으로 전송하는 Code이다.

ESP8266의 AT Command를 통해서 ESP-01 모듈의 동작을 확인한다.
시리얼 모니터에서 "Both NL & CR"로 설정해야 한다.
 
1. "AT" command를 보내서 "OK" 응답이 있는지 확인한다.
2. "AT+CWMODE?" 명령을 보내서 ESP-01 모듈의 동작 Mode를 확인한다.
   1 : Station(Client) mode
   2 : AP mode
   3 : AP + Station mode

3. "AT+CWMODE=1"명령으로 "Station mode"로 설정한다.

4. "AT+CWLAP"명령으로 현재 접속 가능한 AP의 목록을 확인한다.
   0 : OPEN(공개)
   1 : WEP
   2 : WPA_PSK
   3 : WPA2_PSK
   4 : WPA_WPA2_PSK

5. AT+CWJAP="PublicWiFi@Library.Suwon",""password"명령으로 도서관 공유기에 접속한다.
"SSID"는 "PublicWiFi@Library.Suwon"로 입력하고, "Password"는 ""는 입력하지 않는다.

6. "AT+CWJAP?"명령으로 접속된 AP를 확인한다.

7. "AT+CIFSR"명령으로 AP에서 할당된 IP를 확인한다.
8. 동일한 공유기에 연결된 PC에서 ESP-01에 할당된 IP로 Ping을 보내서 연결을 확인한다.

9. AT명령을 통해서 HTTP 프로토콜로 접속해 본자.
ESP-01 모듈을 서버로 구성하기 위해서는 다중 연결을 활성화해야 합니다.
"AT+CIPMUX=1"명령으로 다중 연결을 활성화 합니다.

다음으로 HTTP 포트(80)에 서버를 시작시킨다.
"AT+CIPSERVER=1,80" 명령을 입력한다.


10. "AT+CIFSR" 명령으로 ESP-01 모듈에 할당된 IP를 확인하고, Web 브라우저를 열어서 EPS-01 모듈의 IP 주소를 입력한다.
ESP-01 모듈의 F/W(Firmware)를 수정했기 때문에 Web 서버가 정상적으로 동작하지 않는다.

PC에서 접속을 시도하면, 시리얼 터미널에 아래와 같은 메시지가 출력된다.


11. "AT+CWQAP" 명령으로 연결된 AP와의 접속을 해제한다.



댓글