WizFi360 MQTT AT Command를 이용하여 Azure IoT Hub에 연동
#
시작하기 전에Azure Portal에 Login을 합니다. 계정이 없는 경우, 계정 생성 후에 Login을 진행합니다.
※ 본 문서는 체험 계정으로 진행합니다.
Azure Portal을 사용하여 IoT Hub 만들기 등 앞선 일련의 과정에 대하여 Azure Cloud 서비스 소개를 참조하시기 바랍니다.
#
소개Microsoft Azure Service에 WizFi360을 연동하여, Data를 Cloud로 전송하고, Monitoring을 할 수 있습니다.
Data 통신은 다음과 같은 구조로 이루어집니다.
MQTT AT Command를 이용하여, IoT Hub Service 연결 및 Data 송신을 합니다.
IoT Hub로 송신이 된 Data는 Stream Analytics를 통하여 Data 저장소 Blob Storage로 저장이 됩니다.
본 문서는 WizFi360 MQTT AT Command 이용하여 Microsoft Azure Service 연결 방법에 대한 Guide를 제공합니다.
#
Step 1: 필수 구성 요소본 문서를 따라하기에 전에 다음 항목이 준비되어야 합니다.
#
HadrwareDesktop or Laptop Computer
Micro 5 Pin USB Cable
#
Software- Preferred Serial Terminal (TeraTerm, Hercules, etc . . .)
#
Step 2: Device 준비#
1. Hardware 준비WizFi360-EVB-Shield는 Standalone Mode로 사용되어 집니다. 따라서 WizFi360-EVB-Shield의 DIP Switch를 다음과 같이 설정이 필요합니다.
- SW1 : On
- SW2 : Off
- SW3 : Off
#
2. Device 연결Hardware 설정 후, Micro 5 Pin USB Cable을 이용하여 WizFi360-EVB-Shield를 Desktop 혹은 Laptop Computer와 연결을 합니다.
장치 관리자에서 WizFi360-EVB-Shield와 연결된 COM Port를 확인 할 수 있습니다.
장치 관리자에서 COM Port를 확인 할 수 없는 경우, 다음 Link에서 Driver를 Downlonad하여 설치하시기 바랍니다.
#
Step 3: 동작 예제WizFi360의 조금 더 상세한 사용 방법은 Quick Start Guide, AT Command는 AT Instruction Set을 참고 바랍니다.
#
1. Mode 설정Command | Response |
---|---|
AT+CWMODE_CUR=1 | OK |
#
2. DHCP 설정Command | Response |
---|---|
AT+CWDHCP_CUR=1,1 | OK |
#
3. AP 접속Command | Response |
---|---|
AT+CWJAP_CUR="ssid","password" Example : AT+CWJAP_CUR="wiznet","0123456789" | WIFI CONNECTED WIFI GOT IP OK |
#
4. MQTT 연결 설정Command | Response |
---|---|
AT+MQTTSET="iot_hub_host_name/device_id/?api-version=2018-06-30","sas_token","device_id",60 Example : AT+MQTTSET="MyWizFi360IoTHub.azure-devices.net/MyWizFi360IoTDevice/?api-version=2018-06-30","SharedAccessSignature sr=MyWizFi360IoTHub.azure-devices.net%2Fdevices%2FMyWizFi360IoTDevice&sig=t3R9nDS7ezMGBdb%2FNd5ktb3xQx5jx4NC02n325vRA6c%3D&se=1611895717","MyWizFi360IoTDevice",60 | OK |
SAS Token 생성은 다음을 참고 바랍니다.
#
5. Topic 설정Command | Response |
---|---|
AT+MQTTTOPIC="devices/device_id/messages/events/",devices/device_id/messages/devicebound/# Example : AT+MQTTTOPIC="devices/MyWizFi360IoTDevice/messages/events/","devices/MyWizFi360IoTDevice/messages/devicebound/#" | OK |
#
6. Broker 연결Command | Response |
---|---|
AT+MQTTCON=1,"iot_hub_host_name",8883 Example : AT+MQTTCON=1,"MyWizFi360IoTHub.azure-devices.net",8883 | CONNECT OK |
#
7. Publish MessageNote :
Data를 Publish 할 때, Stream Analytics 실행 중이어야 Blob Storage로 Data가 전달됩니다.
Command | Response |
---|---|
AT+MQTTPUB="publish_data" Example : AT+MQTTPUB="{"deviceId":"MyWizFi360IoTDevice","temperature":21.97,"humidity":43.58}" | OK |
Note :
Publish Data는 어떤 형태라도 가능하지만, Azure Guide의 Stream Analytics에서 작업 입력 구성 설정 중,
Event Serialization 형식이 기본 JSON 형태이므로 맞춰주어야 합니다.
#
Step 4: 동작 예제 결과#
1. Stream Analytics 작업 시작Stream Analytics에서 개요 > 시작 > 현재 > 시작을 선택합니다.
#
2. 출력 확인1) Blob Storage에서 개요 > 컨테이너를 선택합니다.
2) 목록에서 Container를 선택하여 엽니다.
3) 목록에서 Blob을 선택하여 엽니다.
4) 편집을 눌러 WizFi360으로부터 수신한 Data를 확인합니다.
#
더 보기Azure Portal을 사용하여 Stream Analytics 작업 입 · 출력 구성 및 변환 Query 정의
WizFi360 MQTT AT Command를 이용한 Azure IoT Hub 연동 예제