powerpoint 프레젠테이션 -...
TRANSCRIPT
WiFi 연결 및 제어
10-1 WiFi 시리얼보드연결하기10-2 라이브러리설치10-3 AP 모드설정및데이터읽기10-4 AP 모드센서값전송하기10-5 네트워크스캔하기10-6 STA 모드설정및데이터읽기10-7 STA 모드센서값전송하기10-8 클라우드서버로센서값전송하기10-9 클라우드서버로부터데이터읽기
10
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
1. WiFi 시리얼 보드
10
아두이노와 PLC를 이용한 IoT 구현 실습
2
WiFi 시리얼 보드는 헬로앱스의 자체 펌웨어가 내장된 무선통신 모듈입니다.아두이노나 다른 보드와 시리얼 통신을 통해 연결됩니다.
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
2. WiFi 시리얼 보드 연결하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
3
GND
5V
Digital 1번 (Tx)
Digital 0번 (Rx)
WiFi 시리얼 보드 아두이노 보드
GND
5V
Digital 11번 (Tx)
Digital 10번 (Rx)
아두이노 보드에서는Software Serial로 연결(다른 핀 사용 가능)
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
3. WiFi 시리얼 보드에서의 핀의 위치
10
아두이노와 PLC를 이용한 IoT 구현 실습
4
RX
RX
5V
GN
D
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
4. 아두이노 보드에서의 핀의 위치
10
아두이노와 PLC를 이용한 IoT 구현 실습
5
D10
(Rx)
5V
GN
D
올인원 쉴드 2018년신형의 경우, D10, D11, 5V, GND가4개의 핀으로 분리되어있습니다.
D10
(Rx)
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
5. GND와 5V 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
6
GND
5V
WiFi 시리얼 보드 아두이노 보드
GND
5V
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
5. GND와 5V 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
7
WiFi 시리얼 보드의 GND와 아두이노의 GND를 연결합니다.WiFi 시리얼 보드의 5V와 아두이노의 5V를 연결합니다.
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
5. GND와 5V 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
8
WiFi 시리얼 보드의 GND와 아두이노의 GND를 연결합니다.WiFi 시리얼 보드의 5V와 아두이노의 5V를 연결합니다.
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
6. Rx 및 Tx 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
9
Digital 1번 (Tx)
Digital 0번 (Rx)
WiFi 시리얼 보드 아두이노 보드
Digital 11번 (Tx)
Digital 10번 (Rx)
아두이노 보드에서는Software Serial로연결 예정
WiFi 시리얼 보드의 Rx (디지털 0번) 핀은 아두이노 보드의 디지털 11번 핀에 연결합니다.WiFi 시리얼 보드의 Tx (디지털 1번) 핀은 아두이노 보드의 디지털 10번 핀에 연결합니다.
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
6. Rx 및 Tx 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
10
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
6. Rx 및 Tx 연결
10
아두이노와 PLC를 이용한 IoT 구현 실습
11
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
7. 최종 연결 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
12
5V, GND
Rx, Tx
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
7. 최종 연결 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
13
5V, GND
Rx, Tx
첫번째 연결 방법
WiFi 연결및제어
10 - 1 WiFi 연결및 제어
7. 최종 연결 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
14
Rx, Tx
두번째 연결 방법
WiFi 연결및제어
10 - 2 라이브러리설치
1. http://helloapps.co.kr/iot 페이지 접속
10
아두이노와 PLC를 이용한 IoT 구현 실습
15
WiFi 연결및제어
10 - 2 라이브러리설치
2. 다운로드 받은 파일의 압축을 해제한 후, 라이브러리 폴더로 복사
10
아두이노와 PLC를 이용한 IoT 구현 실습
16
폴더 복사 내 PC -> 문서 -> Arduino -> libraries
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
1. 프로그램 실행 전 준비사항
10
아두이노와 PLC를 이용한 IoT 구현 실습
17
리셋버튼을눌러 전원초기화
리셋버튼이 눌려지면 WiFi 보드에서 실행중인프로그램이 종료되고 다시 시작할 준비 상태가 됨
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
2. AP 모드 시나리오
10
아두이노와 PLC를 이용한 IoT 구현 실습
18
AP모드
무선공유기 역할
아두이노 보드센서
웹브라우저를 통해WiFi 모듈에 접속
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
3. WiFi 프로그램 기본 템플릿
10
아두이노와 PLC를 이용한 IoT 구현 실습
19
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
}
void loop(){
}
위의 2줄은 항상 입력해 놓아야 한다.
WiFi 모듈은 디지털 10번 (Rx) 과디지털 11번 (Tx)에 연결되어있다.
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
4. Setup 함수에 아래의 명령어를 추가해 놓는다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
20
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
}
void loop(){
}
Wifi 모듈과는 9600 속도로 통신한다.
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
5. AP 모드 시작
10
아두이노와 PLC를 이용한 IoT 구현 실습
21
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.StartAP();delay(500);Serial.print(wifi.Message());
}
void loop(){
}
wifi.Message() 함수는 WiFi 보드가전달해 준 메시지를 넘겨준다.Serial.print() 함수는 이 값을 외부 시리얼통신으로 다시 전달해 주는 것이다.
wifi.StartAP()명령어 하나만으로AP와 웹서버 기능을시작한다.
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
5. AP 모드 시작
10
아두이노와 PLC를 이용한 IoT 구현 실습
22
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
6. 노트북이나 스마트폰의 WiFi 접속을 자신이 생성한 AP로 접속한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
23
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
7. 자신의 AP가 네트워크 목록에서 보이지 않는 경우 조치사항
10
아두이노와 PLC를 이용한 IoT 구현 실습
24
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.Channel("6");delay(200);Serial.print(wifi.Message());
wifi.StartAP();delay(500);Serial.print(wifi.Message());
}
void loop(){
}
채널을 수정해 준다.1 ~ 13 사이의 임의의 숫자 입력 가능
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
8. 노트북이나 스마트폰에서 웹브라우저 실행 후, AP의 주소로 접속한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
25
http://192.168.4.1
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
9. Loop 함수에 다음과 같이 읽기 명령어를 추가한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
26
wifi.WiFiRead() 명령어는 외부에서 전송된값을 넘겨준다.
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);}
delay(100);}
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
10. 웹브라우저로 데이터 전송
10
아두이노와 PLC를 이용한 IoT 구현 실습
27
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
11. 웹브라우저에서 “on” 버튼을 클릭한 경우의 실행 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
28
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
12. 웹브라우저에서 다른 버튼들을 클릭한 경우의 실행 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
29
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
13. LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
30
13번(D13)
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
13. LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
31
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "on")digitalWrite(13, HIGH);
else if (s == "off")digitalWrite(13, LOW);
}
delay(100);}
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
13. LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
32
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
14. 로봇 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
33
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "1")DriveWrite(200, 200);
else if (s == "2")DriveWrite(0, 200);
else if (s == "3")DriveWrite(0, 0);
else if (s == "4")DriveWrite(200, 0);
else if (s == "5")DriveWrite(-200, -200);
}
delay(100);}
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
14. 로봇 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
34
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
15. 멜로디 연주하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
35
2번(D02)
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
15. 멜로디 연주하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
36
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);if (s == "on")
tone(2, 262, 250);else if (s == "1")
tone(2, 294, 250);else if (s == "off")
tone(2, 330, 250);else if (s == "2")
tone(2, 349, 250);else if (s == "3")
tone(2, 392, 250);else if (s == "4")
tone(2, 440, 250);else if (s == "run")
tone(2, 494, 250);else if (s == "5")
tone(2, 523, 250);else if (s == "stop")
tone(2, 587, 250);}delay(100);
}
WiFi 연결및제어
10 - 3 AP 모드 설정및 데이터읽기
15. 멜로디 연주하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
37
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
1. 아날로그 센서 연결하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
38
0번(A0)
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
2. 아날로그 센서 값을 WiFi로 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
39
wifi.WiFiWrite() 명령어는 외부로 값을전송한다.
void loop(){
int a = analogRead(0);
wifi.WiFiWrite(a);
delay(200);}
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
3. 새로고침으로 웹페이지 갱신
10
아두이노와 PLC를 이용한 IoT 구현 실습
40
Write Data 항목에조도 센서 값이 표시된다.
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
4. 센서이름과 센서값 같이 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
41
wifi.WiFiWrite() 명령어에서는 이름과값을 같이 전송할 수 있다.
void loop(){
int a = analogRead(0);
wifi.WiFiWrite("CDS", a);
delay(200);}
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
4. 센서이름과 센서값 같이 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
42
Write Data 항목에이름과 센서 값이같이 표시된다.
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
5. 여러 센서값 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
43
void loop(){
int a0 = analogRead(0);int a1 = analogRead(1);
wifi.WiFiWrite("CDS", a0);delay(100);
wifi.WiFiWrite("PSD", a1);
delay(200);}
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
5. 여러 센서값 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
44
Write Data 항목에여러 개의 센서값이같이 표시된다.
WiFi 연결및제어
10 - 4 AP 모드 센서값전송하기
6. 센서 읽기와 LED 제어 동시에 하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
45
void loop(){
int a = analogRead(0);wifi.WiFiWrite("CDS", a);
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "on")digitalWrite(13, HIGH);
else if (s == "off")digitalWrite(13, LOW);
}
delay(200);}
WiFi 연결및제어
10 - 5 네트워크스캔하기
1. 네트워크 스캔 코드
10
아두이노와 PLC를 이용한 IoT 구현 실습
46
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
Serial.println("Network Scan");
wifi.Scan();for (int i = 0; i < 100; i++){
Serial.print(wifi.Message());delay(100);
}}
WiFi 연결및제어
10 - 5 네트워크스캔하기
2. 네트워크 스캔 결과
10
아두이노와 PLC를 이용한 IoT 구현 실습
47
시리얼포트가 오픈되었습니다 - COM4Network ScanScan startScan done2 networks found1: MY_NETWORK1 (-82) WPA / PSK2: MY_NETWORK2 (-48) WPA / PSK
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
1. STA 모드 시나리오
10
아두이노와 PLC를 이용한 IoT 구현 실습
48
STA모드
무선 랜카드 역할
아두이노 보드센서
웹브라우저를 통해WiFi 모듈에 접속
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
2. 접속하고자 하는 무선 공유기 이름 지정하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
49
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
}
void loop(){
}
HelloApps는 예시이다.각자 자신이 연결해야 할무선공유기의 이름(SSID)을 입력해 본다.
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
3. 접속하고자 하는 무선 공유기 비번 지정하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
50
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
}
void loop(){
}
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
4. 무선 공유기에 연결하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
51
#include <HelloWiFi.h>
HelloWiFi wifi(10, 11);
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.ConnectAP();delay(500);Serial.print(wifi.Message());
}
wifi.ConnectAP()명령어는 기존에 있는무선공유기에연결하는 명령어이다.
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
4. 무선 공유기에 연결하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
52
시리얼포트가 오픈되었습니다 - COM4[C] SSID[D] HelloApps[C] PWRD[D] HelloAppsConnecting to HeloApps[IP] 192.168.0.11
정상적으로 연결되는 IP 주소가 할당되어 표시된다.
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
5. 웹서버 시작하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
53
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.ConnectAP();delay(500);Serial.print(wifi.Message());
wifi.BeginServer();delay(500);Serial.print(wifi.Message());
}
wifi.BeginServer()명령어는 웹서버 기능을시작시킨다.
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
5. 웹서버 시작하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
54
시리얼포트가 오픈되었습니다 - COM4[C] SSID[D] HelloApps[C] PWRD[D] HelloAppsConnecting to HelloApps[IP] 192.168.0.11Server started
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
5. 웹서버 시작하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
55
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
6. 데이터 읽기
10
아두이노와 PLC를 이용한 IoT 구현 실습
56
wifi.WiFiRead() 명령어는 외부에서 전송된값을 넘겨준다.
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);}
delay(100);}
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
6. 데이터 읽기
10
아두이노와 PLC를 이용한 IoT 구현 실습
57
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
6. 데이터 읽기
10
아두이노와 PLC를 이용한 IoT 구현 실습
58
시리얼포트가 오픈되었습니다 - COM4[C] SSID[D] HelloApps[C] PWRD[D] HelloAppsConnecting to HelloApps[IP] 192.168.0.11Server startedon
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
6. 데이터 읽기
10
아두이노와 PLC를 이용한 IoT 구현 실습
59
시리얼포트가 오픈되었습니다 - COM4[C] SSID[D] HelloApps[C] PWRD[D] HelloAppsConnecting to HelloApps[IP] 192.168.0.11Server startedon1off23
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
7. LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
60
void loop(){
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "on")digitalWrite(13, HIGH);
else if (s == "off")digitalWrite(13, LOW);
}
delay(100);}
WiFi 연결및제어
10 - 6 STA 모드 설정및 데이터읽기
7. LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
61
WiFi 연결및제어
10 - 7 STA 모드 센서값전송하기
1. 아날로그 센서값 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
62
wifi.WiFiWrite() 명령어는 외부로 값을전송한다.
void loop(){
int a = analogRead(0);
wifi.WiFiWrite(a);
delay(200);}
WiFi 연결및제어
10 - 7 STA 모드 센서값전송하기
1. 아날로그 센서값 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
63
Write Data 항목에조도 센서 값이 표시된다.
WiFi 연결및제어
10 - 7 STA 모드 센서값전송하기
2. 센서 이름과 값 같이 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
64
wifi.WiFiWrite() 명령어에서는 이름과값을 같이 전송할 수 있다.
void loop(){
int a = analogRead(0);
wifi.WiFiWrite("CDS", a);
delay(200);}
WiFi 연결및제어
10 - 7 STA 모드 센서값전송하기
3. 여러 센서 값 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
65
void loop(){
int a0 = analogRead(0);int a1 = analogRead(1);
wifi.WiFiWrite("CDS", a0);delay(100);
wifi.WiFiWrite("PSD", a1);
delay(200);}
WiFi 연결및제어
10 - 7 STA 모드 센서값전송하기
4. 전송과 수신 동시에 하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
66
void loop(){
int a = analogRead(0);wifi.WiFiWrite("CDS", a);
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "on")digitalWrite(13, HIGH);
else if (s == "off")digitalWrite(13, LOW);
}
delay(200);}
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
1. 클라우드 서버 연결 시나리오
10
아두이노와 PLC를 이용한 IoT 구현 실습
67
STA모드
무선 랜카드 역할
아두이노 보드센서
웹브라우저를 통해클라우드 서버에접속
인터넷
클라우드서버
STA 모드 설정후, 노트북이나 스마트폰에서 아두이노 보드를 제어한다.
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
1. 클라우드 서버 연결 시나리오
10
아두이노와 PLC를 이용한 IoT 구현 실습
68
인터넷
클라우드서버
센서 데이터제어 데이터
STA 모드
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
2. 기본 코드 템플릿
10
아두이노와 PLC를 이용한 IoT 구현 실습
69
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.ConnectAP();delay(500);Serial.print(wifi.Message());
}
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
2. 기본 코드 템플릿
10
아두이노와 PLC를 이용한 IoT 구현 실습
70
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.ConnectAP();delay(500);Serial.print(wifi.Message());
}
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
3. 클라우드 서버로 전송할 사용자 ID 설정하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
71
void setup(){
Serial.begin(115200);delay(200);
wifi.begin(9600);delay(500);
wifi.SSID("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.Password("HelloApps");delay(200);Serial.print(wifi.Message());
wifi.ConnectAP();delay(500);Serial.print(wifi.Message());
wifi.UserID("12345");delay(200);Serial.print(wifi.Message());
}
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
4. 아날로그 센서 값을 30초 간격으로 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
72
30초 간격으로 아날로그 센서값을클라우드 서버로 전송한다.
int num = -1;
void loop(){
//30 secnum = (num + 1) % 30;Serial.println(num);
Serial.print(wifi.Message());
if (num == 0){
int a0 = analogRead(0);wifi.Send(a0);
delay(500)Serial.print(wifi.Message());
}
delay(1000);}
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
4. 아날로그 센서 값을 30초 간격으로 전송하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
7330초마다데이터를전송한다.
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
5. 클라우드 서버 웹페이지 접속하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
74
http://helloapps.co.kr/ 홈페이지에서 IoT 메뉴 클릭한다.
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
6. 페이지 중간에 있는 HelloApps IoT 클라우드 서비스에 있는 링크 클릭
10
아두이노와 PLC를 이용한 IoT 구현 실습
75
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
6. 페이지 중간에 있는 HelloApps IoT 클라우드 서비스에 있는 링크 클릭
10
아두이노와 PLC를 이용한 IoT 구현 실습
76
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
7. 사용자 ID에 본인의 ID를 입력한 후, 데이터 조회 버튼을 클릭한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
77
WiFi 연결및제어
10 - 8 클라우드서버로 센서값전송하기
7. 사용자 ID에 본인의 ID를 입력한 후, 데이터 조회 버튼을 클릭한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
78
WiFi 연결및제어
10 - 9 클라우드서버로 부터데이터 읽기
1. 기존 코드에 데이터 읽기 명령어 추가
10
아두이노와 PLC를 이용한 IoT 구현 실습
79
int num = -1;
void loop(){
//30 secnum = (num + 1) % 30;Serial.println(num);
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);}
if (num == 0){
int a0 = analogRead(0);wifi.Send(a0);
delay(500)Serial.print(wifi.Message());
}
delay(1000);}
WiFi 연결및제어
10 - 9 클라우드서버로 부터데이터 읽기
2. 외부에서 제어 데이터 보내기
10
아두이노와 PLC를 이용한 IoT 구현 실습
80
웹페이지에서 on 버튼을 클릭해 본다. 클릭후, 최대 30초를기다려야 한다.
WiFi 연결및제어
10 - 9 클라우드서버로 부터데이터 읽기
2. 외부에서 제어 데이터 보내기
10
아두이노와 PLC를 이용한 IoT 구현 실습
81
제어 데이터가 전송 대기중인상태
WiFi 연결및제어
10 - 9 클라우드서버로 부터데이터 읽기
3. 콘솔창에서 수신 데이터를 확인한다. 클라우드로 데이터를 전송하면서 결과로제어 데이터를 수신한다.
10
아두이노와 PLC를 이용한 IoT 구현 실습
82
WiFi 연결및제어
10 - 9 클라우드서버로 부터데이터 읽기
4. 클라우드로 부터 LED 제어하기
10
아두이노와 PLC를 이용한 IoT 구현 실습
83
int num = -1;
void loop(){
//30 secnum = (num + 1) % 30;Serial.println(num);
String s = wifi.WiFiRead();
if (s.length() > 0){
Serial.println(s);
if (s == "on")digitalWrite(13, HIGH);
else if (s == "off")digitalWrite(13, LOW);
}
if (num == 0){
int a0 = analogRead(0);wifi.Send(a0);
delay(500)Serial.print(wifi.Message());
}
delay(1000);}