위즈네트 아카데미

OPEN PROJECT

오픈 프로젝트

WIZnet Treasure IoT 프로토콜 ; MQTT & CoAP

2279 2017.11.27 16:13 조회 수 : 99

1. IoT 프로토콜 배경

사물인터넷이 새로운 IoT 트렌트가 되어 가면서 스마트 홈, 스마트 시티와 같은 사물 간의 정보 교환이 실생활에 많은 서비스를 제공하여 현대인들에게 보다 편안한 생활을 제공 하고 있습니다. 이에 따라, 사물간의 데이터를 교환하는 방법, 즉 IoT 프로토콜은 중요한 기술로 자리 잡았습니다.

 

IoT 프로토콜을 대표하는  MQTT와 CoAP에 대한 기본적인 설명과 몇 가지 예를 소개하도록 하겠습니다.

 

  1. MQTT 설명

MQTT(MQ Telemetry Transport or Message Queue Telemetry Transport)는 Publish-Subscribe 기반 메시징 프로토콜이며 TCP/IP 계층 위에서 동작합니다.

MQTT를 이해하기 위해 아래와 같은 세 가지 개념을 이해해야 합니다.

  • Broker –토픽을 관리하고 해당 토큰에 대한 Publisher/Subscriber 사이의 메시지를 중계

  • Publish – 해당 토픽으로 메시지 발행

  • Subscriber – 해당 토픽의 메시지 수신

    1. CoAP 설명

       

CoAP는 저전력 비동기 통신 프로토콜 이며, MQTT와 달리 UDP 통신 기반 통신입니다. UDP 기반 통신이기 때문에 통신 신뢰성을 보장하지 않습니다. 추가적으로, 암호화를 위한 DTLS(Datagram Transport Layer Security) 와 RESTFul을 지원합니다.

  1. MATT Vs CoAP 

 

2. IoT 프로토콜 예제

2.1 MQTT 예제

2.1.1 Using MQTT to connect Arduino to the Internet of Things

첫 번째 예제는 아두이노를 이용하여 튜토리얼처럼 쉽게 접해볼 수 있는 예제입니다. 해당 예제 에서는 아두이노 우노, 이더넷 쉴드, 2lemety라는 웹 MQTT 클라이언트를 이용하여 MQTT 통신 테스트를 진행합니다. 자세한 내용은 아래 링크에서 보실 수 있습니다.

 

mqtt

 

TAG: Arduino, MQTT, Ethernet, Tutorial

WIZnet Museum: http://wiznetmuseum.com/portfolio-items/using-mqtt-to-connect-arduino-to-the-internet-of-things/

Source: http://chrislarson.me/blog/using-mqtt-connect-arduino-internet-things.htmlhttp://chrislarson.me/blog/using-mqtt-connect-arduino-internet-things.html

 

 

 

2.1.2 IoT, Home Automation

두 번째 예제는 MQTT통신을 이용하여 IoT Home Automation 구축하는 방법을 다루며 총 7개의 포스팅에 걸쳐 설명합니다. ESP8266, 아두이노 메가2560, 이더넷 쉴드, 라즈베리 파이 등 다양한 종류의 보드와 모듈을 사용하므로 MQTT 및 IoT 프로젝트 경험이 있는 분들에게 적합할 것 같습니다. 자세한 내용은 아래 링크에서 보실 수 있습니다.

smarthome

 

TAG: Wi-Fi, MQTT, Ethernet, Raspberry Pi

WIZnet Museum: http://wiznetmuseum.com/portfolio-items/iot-home-automation/

Source: http://www.instructables.com/id/IoT-Intranet-of-Things-Home-Automation-Part-1-IoT-/

 

 

2.2 CoAP Example

2.1.1 CoAP using the Arduino and firefox plugin

해당 프로젝트는 아두이노를 이용하여 기본적인 CoAP 통신을 하는 예제입니다. 이 포스팅에서는 하드웨어 연결 및 코드 또한 제공하므로 초보자에게 적합할 것 같습니다. 자세한 내용은 아래 링크에서 보실 수 있습니다.