IoT Wireless

<WizFi310과 KT IoT IoTMakers> #3 IoTMakers에 데이터 전송하기 본문

MQTT

<WizFi310과 KT IoT IoTMakers> #3 IoTMakers에 데이터 전송하기

DH0815 2016. 6. 23. 08:45


KT IoT 클라우드에 접속에 성공을 했으니, 이젠 실제 데이터를 클라우드에 보내보도록 하겠다.


KT IoT 클라우드에서 지원하는 데이터 타입은 문자 형태와 숫자 형태가 있고, TagID를 식별자로 사용한다. KT IoT SDK에서는 이를 JSON을 이용하여 데이터를 만들어서, KT IoTMakers 메시지 포맷으로 감싼 후에 이를 MQTT 메시지 데이터를 전송하고 있다.


하지만, WizFi310일 이용하면 KT IoT 클라우드에서 요구하는 패킷 형태를 따로 만들 필요 없이, 아래의 명령어만 사용하면 된다.


AT+MQTTKTPUB=dataType,dataID,dataValue

  dataType  : s(문자형)/d(숫자형)

  dataID     : Data ID(Tag Stream ID) (http://ilikethisplus.tistory.com/48 참조)

  dataValue : Data Value

ex1) AT+MQTTKT=s,switch,ON

ex2) AT+MQTTKT=s,switch,OFF

ex3) AT+MQTTKT=d,Temperature,11.3


그럼, 실제로 WizFi310을 이용하여 데이터를 전송하는 로그를 확인해 보겠다.

WizFi310 Version 1.0.1.0 (WIZnet Co.Ltd)

AT+WSET=0,WizFiDemoAP
[OK]

AT+WSEC=0,,12345678
[OK]

AT+WNET=1
[OK]

AT+WJOIN

[Link-Up Event]
  IP Addr    : 192.168.3.52
  Gateway    : 192.168.3.1
[OK]

AT+MQTTSET=,,,30,0
[OK]

AT+MQTTKTSET=OPEN_MQTT_001PTL001_10000*****,WizFi310ID0001,ymy*****x
[OK]

AT+MQTTCON=2,220.90.216.90,10030,0

[MQTT CONNECT]
{Q,out/WizFi310ID0001,,104}{"athnRqtNo":"ymy*****x","athnNo":"000000003B9AD366000000003B9*****","respCd":"100","respMsg":"SUCCESS"}
[OK]

// 여기까지는 지난 포스팅에서 설명한 접속로그 이다. 
// 자, 이제 데이터를 전송해 보자.

AT+MQTTKTPUB=d,Temperature,14.8  (숫자형으로 TagID "Termperature"에 14.8 전송)
[OK]
{Q,out/000000003B9AD366000000003B9*****,,74}{"msgHeadVO":{"mapHeaderExtension":{}},"respCd":"100","respMsg":"SUCCESS"}  
(KT IoT 클라우드에서는 전송 확인에 대한 ACK가 전송됨)

AT+MQTTKTPUB=d,Temperature,16.5  (숫자형으로 TagID "Termperature"에 16.5 전송)
[OK]
{Q,out/000000003B9AD366000000003B9*****,,74}{"msgHeadVO":{"mapHeaderExtension":{}},"respCd":"100","respMsg":"SUCCESS"}

AT+MQTTKTPUB=d,Temperature,18.1  (숫자형으로 TagID "Termperature"에 18.1 전송)
[OK]
{Q,out/000000003B9AD366000000003B9*****,,74}{"msgHeadVO":{"mapHeaderExtension":{}},"respCd":"100","respMsg":"SUCCESS"}


전송이 끝났으면, KT IoT 대쉬 보드를 통해서, 전송된 값을 실시간으로 확인해 볼 수 있다.