인터넷에 연결되지 않은 WiFi 장치의 표준은 무엇입니까?


10

나는 많은 홈 오토메이션을 할 계획입니다. 이를 위해 모든 장치를 연결할 개인 격리 된 WiFi 네트워크를 호스팅합니다. 이 장치는 간단한 조명, RGB LED 스트립 (smd5050 및 ws2812b), 온도 조절기, 팬, 창 오프너, 창 가리개 제어기 및 일반 콘센트입니다. 또한 IR 송신기는 TV 등을 시작하기 위해 리모컨을 시뮬레이트하고 433MHz 송신기는 표준 리모컨 콘센트를 토글 할 수있는 리모컨을 시뮬레이트합니다.

이제이 장치가 WiFi 네트워크에 어떤 종류의 인터페이스를 노출해야하는지에 대한 표준이 있는지 궁금합니다.

물론 모든 장치에 간단한 http 경로를 제공하고 인터페이스를 이해하는 응용 프로그램을 작성할 수는 있지만 이미 작성된 응용 프로그램과 프로그램을 사용하고 표준을 이해하는 표준을 구현할 수 있다면 좋을 것입니다 .

답변:


7

IoT 프로토콜에 대해 가장 일반적으로 HTTP, CoAP 및 MQTT가 통신에 사용됩니다.

HTTP 및 CoAP는 REST 유형의 클라이언트와 서버 간 통신에 적합하며 MQTT는 서버에서 클라이언트로, 클라이언트에서 서버로, 심지어 클라이언트에서 클라이언트로의 원점이 쉽게 될 수있는 기반 다중 사용자 통신의 발행 및 구독을 지원합니다.

질문에 대답하기 :

일대일 통신에는 HTTP 또는 CoAP를 통한 REST를 사용하거나 다 지점 트래픽 사용에는 MQTT를 사용하십시오.

자세한 내용은

아래의 의견 후에 나는 대답이 상당히 부분적임을 인정하여 조금 더 조사하고 찾았습니다.

모든 계산에 따르면 통신조차도 이런 종류의 표준 엉망이 있습니다.

http://www.slideshare.net/butler-iot/butler-project-overview-13603599

출처 : EU 버틀러 프로젝트-커뮤니케이션 문제

또한 postscapes.com 에는 다양한 측면에 따라 다음 목록이 있습니다.

1  Infrastructure (ex: 6LowPAN, IPv4/IPv6, RPL)
2  Identification (ex: EPC, uCode, IPv6, URIs)
3  Comms / Transport (ex: Wifi, Bluetooth, LPWAN)
4  Discovery (ex: Physical Web, mDNS, DNS-SD)
5  Data Protocols (ex: MQTT, CoAP, AMQP, Websocket, Node)
6  Device Management (ex: TR-069, OMA-DM)
7  Semantic (ex: JSON-LD, Web Thing Model)
8  Multi-layer Frameworks (ex: Alljoyn, IoTivity, Weave, Homekit)

각 예제의 목록에서 볼 수 있듯이 많은 예제가 있으며 더 많은 사용자 정의 및 독점 예제가 있습니다.

해당 링크를 열고 읽어야합니다. 적어도 센서가 무겁게 포장 된 형태 인 경우, 프로젝트에서 많은 것들이 발생할 수 있다고 생각합니다. 가장 순수한 형식의 구성 요소뿐만 아니라 이미 존재하는 일부 생태계의 일부입니다. 이러한 경우 인터페이스 방식을 협상 할 수 없으므로 생태계를 선택하기 만하면됩니다.

올바른 문제는 이제 목표를 설정할 때 Wi-Fi를 통해 동일하거나 거의 일치하는 프로토콜 스택이있는 올바른 제품 세트 또는 세트 세트 (제품 세트 그룹)를 찾는 것 같습니다. 당신이 여전히 직면 할 수있는 많은 다른 비 인터넷 무선 네트워킹 솔루션입니다).

기준은 당신이하고 싶은 모든 일과 그 방법으로 배우고 싶은 스택의 수를 식별하는 것입니다. 학습을 통해 가젯을 거의 사용하지 않고 특정 프로토콜이 어떻게 작동하는지 알고 싶습니다.


1
"REST over http"는 약간 모호합니다. 이를 염두에 두면서도 특히 '켜기'및 '끄기'이상을 이해하는 장치를 위해 인터페이스를 설계하는 수백 가지 방법을 생각할 수 있습니다. 이상적으로는 IP 주소와 장치 유형을 제공하고 나머지는 표준화됩니다. 그런 것이 있습니까?
Forivin

7

나의 추천은 MQTT이다. 다목적이며 가벼우 며 모듈 식이며 ESP8266 (허브 및 클라이언트)에서도 실행될 수 있습니다. MQTT 프로토콜은 임베디드, 모바일 장치 및 MAC, Windows 및 Linux와 같은 큰 운영 체제까지 많은 플랫폼에서 사용할 수 있습니다.

프로토콜에는 통신을위한 Publisher, Subscriber 모델이 있습니다. 그리고 가입자가 게시자로부터 메시지를 받았는지 허브가 기억할 수있는 QoS. 따라서 잠자는 장치가 깨어나 메시지를 찾을 때 속도를 높일 수 있습니다.

작은 Raspberry Pi Zero W에서 MQTT 서버를 실행합니다. 벽면의 신용 카드와 같으며 "노드 레드"를 사용하는 논리에 대해 OpenHAB를 살펴보면서 더 복잡한 솔루션을 찾기 시작했습니다.

또한 12v DC 장치 용 Arduino / MQTT 장치를 자체 제작했으며 230v AC 장치 용 ESP8266 기반 제품을 사용합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.