Стандарты для не подключенных к Интернету WiFi-устройств?

10

Я планирую сделать много домашней автоматизации. Для этого я буду размещать частную изолированную сеть WiFi, к которой будут подключены все мои устройства. Устройства будут представлять собой простые светильники, светодиодные RGB-полосы (smd5050 и ws2812b), термостаты, вентиляторы, открыватели окон, контроллеры жалюзи и обычные розетки. Кроме того, ИК-передатчики для имитации пульта дистанционного управления для запуска телевизоров и т. Д. И передатчик 433 МГц для имитации пульта дистанционного управления, который может переключать стандартные розетки с дистанционным управлением.

Теперь мне интересно, есть ли какие-нибудь стандарты на то, какой интерфейс эти устройства должны предоставлять сети Wi-Fi.

Конечно, я мог бы дать каждому устройству простой http-маршрут, а затем написать приложения, которые понимают мой интерфейс, но было бы неплохо, если бы я смог реализовать стандарт, который позволил бы мне использовать приложения и программы, которые уже были написаны, и действительно понимал стандарт ,

Forivin
источник

Ответы:

7

О протоколах IoT чаще всего HTTP, CoAP и MQTT используются при обмене данными.

HTTP и CoAP подходят для REST-типа обмена данными между клиентом и сервером, а MQTT поддерживает публикацию и подписку на основе многопользовательского взаимодействия, где источником может быть легко от сервера к клиенту, от клиента к серверу и даже от клиента к клиенту.

Отвечая на вопрос:

Используйте REST через HTTP или CoAP для обмена данными один на один или MQTT для многоточечного трафика.

Подробнее

После комментария ниже я признаю, что мой ответ был довольно частичным, поэтому я изучил и нашел немного больше:

Даже в сообщениях есть такая путаница стандартов, если все рассчитать:

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

Источник: проект Батлера ЕС - Проблемы коммуникации

Также 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
«ОТДЫХ через http» немного расплывчато. Даже имея это в виду, я мог бы подумать о сотне различных способов разработки интерфейса, особенно для устройств, которые понимают больше, чем «включено» и «выключено». В идеале я бы просто предоставил IP-адрес и тип устройства, а остальные были бы стандартизированы. Существует ли что-нибудь подобное?
Форивин
7

Моя рекомендация - MQTT. Универсальный, легкий и модульный, он может работать даже на ESP8266 (концентратор и клиент). Протокол MQTT доступен для многих платформ от встраиваемых, мобильных устройств и до таких крупных ОС, как MAC, Windows и Linux.

Протокол имеет издателя, модель подписчика для связи. И QoS, чтобы Hub мог помнить, получил ли подписчик сообщение от издателя. Таким образом, спящее устройство может набрать скорость, когда оно просыпается и ищет сообщения.

Я запускаю свой сервер MQTT на небольшом Raspberry Pi Zero W, это как кредитная карта на стене, и для логики я использую «Node Red», и я начал искать OpenHAB для более сложного решения.

Я также создал свои собственные устройства Arduino / MQTT для своих устройств 12 В постоянного тока и использую продукт на основе ESP8266 для своих устройств 230 В переменного тока.

MatsK
источник