교통시설안전물

LTE U+ 와이파이 라우터 & WEMOS D1 MINI 연결

ZEROWIN.TECH 2020. 8. 5. 12:29
728x90

휴대용 라우터

휴대용 라우터 와 임베디드 와이파이 보드와 연결하여 외부에서 인터넷을 사용할 수 있도록 합니다.

아두이노같은 임베디드 보드에서 휴대용 라우터를 이용ㅇ하여 데이터를 서버로 전송합니다.

https://lgrouter.co.kr/carry

라우터 관련 정보를 아래에서 볼수 있습니다.

 

휴대형 라우터

U+ LTE 라우터

lgrouter.co.kr

WEMOS D1 MINI

미니보드를 다른 임베디드 보드와 연결하여 Serial 통신으로 받은 데이터를 와이파이로 전송하는 용도로 사용이 가능합니다.

https://docs.wemos.cc/en/latest/d1/d1_mini.html

 

 

LOLIN D1 mini — WEMOS documentation

© Copyright 2019, wemos.cc Revision d994a5da.

docs.wemos.cc

ESP-8266EX 기반 4MB 플래시 미니 와이파이 보드

 

11 개의 디지털 IO, 인터럽트 / 펌웨어 / I2C / 1 선 지원 (D0 제외)
아날로그 입력 1 개 (3.2V 최대 입력)
마이크로 USB 연결
MicroPython, Arduino, nodemcu와 호환

프로그래밍

소프트웨어 시리얼을 통해서 임베디드 보드로 부터 데이터를 수신합니다.

수신한 데이터를 와이파이를 이용하여 서버로 전송합니다.

* 아래코드는 사용하는 코드중 통신기능 일부만 발췌한 것입니다.

#include <ESP8266WiFi.h>

#include <SoftwareSerial.h>

#define SW_TX D1
#define SW_RX D2

SoftwareSerial swSerial(SW_RX, SW_TX); // RX, TX

char * ssid = "IML-C5000W 629a";
char * pass = "xxxxxxxx";

void tryLogIn()
{
   WiFi.mode(WIFI_STA);
     WiFi.begin(ssid, pass);
     
     int timeout = 0;
   while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.println(".");
    timeout += 1;
    if(MAX_WIFI_CONNECT_TIMEOUT < timeout) break;
   }

   if(timeout <= MAX_WIFI_CONNECT_TIMEOUT) 
   {
   
     Serial.print("Connected to ");
     Serial.println(ssid);
     Serial.print("IP address: ");
     Serial.println(WiFi.localIP());   
     Serial.println(getTime()); 

     bLogInInit = true;
   }
   else {
	  Serial.println("RESET!");
      software_Reset();
   }
}

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  Serial.println("START...");

  swSerial.begin(9600);

	
  tryLogIn();

}

void loop() {
  // put your main code here, to run repeatedly:
   // 임베디드 보드에서 데이터를 수신합니다.
    while(0 < swSerial.available())
    {
        char c = swSerial.read();
        buffer[cnt] = c;

        if ((c == '\n') || (sizeof(buffer)-1 <= cnt))
        {
            cnt += 1;
            buffer[cnt] = '\0';
            cnt = 0;
            ready = true;

            break;
        }
        else {
          cnt += 1;
        }
    }  

    delay(10); // 
}

테스트영상

LTE 라우터를 통한 아이피 획득 테스트를 합니다.

서버로 올라오는 데이터를 확인합니다.

문제없이 정상동작합니다.