네이티브 | IOT 하드웨어 펌웨어 데이터와 서버가 통신하는 여러가지 방법(모바일)
페이지 정보
작성자 강석호 조회26,122회 댓글0건본문
IOT 펌웨어가 서버와 통신하기 위해서는 하드웨어에 통신 모듈이 설치 되어있어야 합니다.
그 중 가장 많이 사용하는 통신 모듈 종류를 정리합니다.
1. Bluetooth
블루투스는 양방향 데이터를 전송할 수 있는 기술로 가장 보편적으로 쓰이는 통신중 하나입니다.
블루투스는 BT와 BLE로 나뉘게 되는데 BT는 음성 데이터 등 용량이 큰 데이터도 전송 가능하지만 배터리 소모가 엄청납니다.
그래서 나온게 Bluetooth4.0 이상부터 나온 BLE 입니다.
BLE는 Bluetooth Low Energy의 약자로 말 그대로 저전력을 최 우선으로 통신하기 때문에 용량이 큰 데이터도 전송하지 못하고 전송 속도도 느립니다.
그래서 용도에 따라 다른 기술을 사용해야 되는데 보통 BT만 지원하는 기술은 Classic, BLE만 지원하는 기술은 Smart 라고 부릅니다.
둘다 지원하는 기술은 Smart Ready 라고 부르는데 스마트폰이나 웨어러블 같은 혼합 데이터를 사용하는 디바이스에 많이 사용됩니다.
블루투스는 최대 365미터의 거리까지 통신이 가능하다고 하지만 실제로 20미터를 넘어가게 되면 안정성이 떨어집니다.
2. Beacon
Bluetooth는 양방향 통신이지만 서로 페어링을 해야만 통신이 가능합니다.
반대로 Beacon은 단방향 통신으로 정해진 데이터를 불특정 다수의 대상에게 초 단위로 계속 전송합니다.
특별한 행동을 하는게 아니라 정해진 규칙만 따르기 때문에 배터리 소모도 굉장히 적습니다.(버튼 셀 배터리로 최대 2년까지 사용 가능)
통신을 받을려면 비콘을 지원하는 기기에서 일방적 페어링만 해주면 됩니다.
근처 비콘 정보를 모두 수집 후 원하는 비콘을 선택하여 페어링 해 주기만 하면 선택한 비콘에서 계속 데이터가 들어오는걸 확인 가능합니다.
통신 거리는 최대 50~70미터까지 가능하다고 하는데 제가 사용해 본 결과 30~40미터 까지는 안정적으로 데이터가 수집되는거 같았습니다.
주의할 점은 블루투스와 마찬가지로 벽이 가로막혀 있다면 통신이 불안정해지거나 아예 통신이 안될 수 있습니다.
비콘은 BLE 기반의 기능이기 때문에 Bluetooth를 충분히 이해한 후 사용해야 합니다.
3. NFC
NFC(Near Field Communication) 는 초근거리 양방향 통신 기술입니다.
페어링이 필요 없이 단순히 NFC를 지원하는 기기를 가져다 대기만 해도 읽기/쓰기가 가능합니다.
인식률은 모든 통신 기술중 최고를 자랑하며 인식 속도 또한 0.1초 이내입니다.
단 성능이 좋은 대신 통신 거리는 10cm밖에 되지 않습니다.
4. MQTT
MQTT(Message Queuing Telemetry Transport)는 M2M, IOT를 위한 ISO 표준 발행-구독 기반의 메시징 프로토콜입니다.
현재까지의 통신 방법 중 IOT와 모바일간의 통신에 가장 적합하고 안정성을 자랑합니다.
HTTP, TCP등의 통신처럼 클라이언트-서버 구조를 띄지 않고 브로커, 퍼블리셔, 서브스크리버 구조로 이루어져 있습니다.
발행자(퍼블리셔)는 Topic을 발행하고 구독자(서브스크리버)는 Topic에 구독합니다. 그리고 브로커는 중개하는 역할을 합니다.
단일 Topic에 여러 구독자가 구독이 가능하므로 1:N 통신에도 적합합니다.
MQTT는 Wifi 기반으로 동작하기 때문에 Wifi에 접속이 가능한 모든 디바이스라면 사용 가능합니다.