İnternete bağlı olmayan WiFi cihazları için standartlar?


10

Birçok ev otomasyonu yapmayı planlıyorum. Bunun için tüm aygıtlarımın bağlanacağı özel bir izole WiFi ağına ev sahipliği yapacağım. Cihazlar basit ışıklar, RGB LED şeritler (smd5050 ve ws2812b), termostatlar, fanlar, pencere açıcılar, pencere gölge kontrolörleri ve normal çıkışlar olacaktır. Ayrıca, TV vb.

Şimdi, bu cihazların WiFi ağına ne tür bir arayüz açması gerektiğine dair herhangi bir standart olup olmadığını merak ediyorum.

Elbette her cihaza basit bir http yolu verebilir ve daha sonra arayüzümü anlayan uygulamalar yazabilirim, ancak önceden yazılmış uygulamaları ve programları kullanmama ve standardı anlamama izin verecek bir standart uygulayabilirsem iyi olur .

Yanıtlar:


7

IoT protokolleri hakkında iletişimde en yaygın olarak HTTP, CoAP ve MQTT kullanılır.

HTTP ve CoAP, sunucu iletişimi ile REST tipi istemci (ler) için uygundur ve MQTT, kaynağın sunucudan istemciye, istemciden sunucuya ve hatta istemciden istemciye olabileceği yayınlama ve abonelik tabanlı çoklu kullanıcı iletişimini destekler.

Soruyu cevaplamak:

Bire bir iletişim için REST'i HTTP veya CoAP üzerinden veya çok noktalı trafik kullanımı için MQTT'yi kullanın.

Daha fazla detay

Aşağıdaki yorumdan sonra cevabımın oldukça kısmi olduğunu kabul ediyorum, bu yüzden biraz daha inceledim ve buldum:

İletişim bile, hepsi hesaplanırsa, bu tür standartların karışıklığına sahiptir:

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

Kaynak: AB Butler Projesi - İletişim Sorunları

Ayrıca postscapes.com'un farklı yönlere dayanan aşağıdaki listesi vardır:

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)

Her örnek listesinde görüldüğü gibi, bol miktarda var ve ayrıca daha özel ve tescilli olanlar da var.

Bu bağlantıyı açmalı ve okumalısınız, akıl almaz. En azından sensörler yoğun şekilde paketlenmişse, yani projelerinizde bunlarla karşılaşabileceğinize inanıyorum. sadece en saf formattaki bileşenler değil, mevcut bazı ekosistemin parçaları. Bu gibi durumlarda, onları ara yüzünüzle müzakere edemezsiniz, sadece ekosistemler arasında seçim yapmanız gerekir.

Doğru sorun, hedefi belirledikçe wifi üzerinden aynı veya neredeyse eşleşen protokol yığınlarına sahip doğru ürün setini veya setlerini (ürün grubu grubu) bulmak gibi görünüyor (kızılötesinin bu alanın dışında bir çözüm olduğunu ve hala karşılaşabileceğiniz diğer birçok internet dışı kablosuz ağ çözümüdür).

Kriterler, ne yapmak istediğinizi ve bu şekilde kaç tane yığın öğrenmek isteyebileceğinizi belirlemektir. Öğrenerek demek istediğim hala araçlarla çok az oynamak ve belirli protokolün kaputun altında nasıl çalıştığını bilmek istiyorsunuz.


1
"Http üzerinden REST" biraz belirsiz. Bunu göz önünde bulundurarak bile, özellikle 'açık' ve 'kapalı' dan daha fazlasını anlayan cihazlar için arayüzü tasarlamak için yüz farklı yol düşünebilirim. İdeal olarak sadece IP adresini ve cihazın tipini verirdim ve geri kalanı standartlaştırılacaktı. Böyle bir şey var mı?
Forivin

7

Benim tavsiyem MQTT. Çok yönlü, hafif ve modüler, ESP8266 (Hub ve istemci) üzerinde bile çalışabilir. MQTT protokolü, gömülü, mobil cihazlardan ve MAC, Windows ve Linux gibi büyük yağ işletim sistemlerine kadar birçok platform için kullanılabilir.

Protokol, iletişim için bir Yayıncı, Abone modeline sahiptir. Ve bir QoS, böylece bir Hub bir abonenin bir yayıncıdan mesaj alıp almadığını hatırlayabilir. Böylece bir uyku cihazı uyandığında ve mesajları aradığında hızlanabilir.

MQTT sunucumu küçük bir Raspberry Pi Zero W üzerinde çalıştırıyorum, duvardaki bir kredi kartı gibi ve "Node Red" kullandığım mantık için daha karmaşık bir çözüm için OpenHAB'a bakmaya başladım.

Ayrıca 12v DC aygıtlarım için kendi Arduino / MQTT aygıtlarımı kurdum ve 230v AC aygıtlarım için ESP8266 tabanlı bir ürün kullanıyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.