Jeśli chciałem używać telefonu do sterowania prostym urządzeniem podłączonym do sieci Wi-Fi, które po prostu włącza lub wyłącza światło, lub zwykłym miernikiem temperatury, dlaczego nie komunikuję się bezpośrednio z urządzeniem zamiast przechodzić przez chmurę? Brak trwałości danych, intensywnego przetwarzania lub jakichkolwiek innych wymyślnych rzeczy do załatwienia.
Czy coś mnie powstrzymuje od zaprojektowania tak prostego produktu IoT i rozpoczęcia masowej produkcji i sprzedaży? Wydaje się, że taniej jest odciąć pośrednika i nie musieć zajmować się kosztami / opłatami związanymi z chmurą.
wifi
system-architecture
BossGiveMeArrays
źródło
źródło
Odpowiedzi:
Chociaż możesz zaprojektować gadżet IoT do pracy przez bezpośrednie połączenie z telefonem użytkownika, urządzenie, które działa tylko w ten sposób, może być zbyt ograniczające dla wielu użytkowników:
Jeśli użytkownika nie ma w domu, jest mało prawdopodobne, aby mógł on bezpośrednio współpracować z urządzeniem, ponieważ zezwalanie na próby połączeń przychodzących do sieci domowej jest ogólnie nie do przyjęcia z punktu widzenia bezpieczeństwa, a większość operatorów komórkowych blokuje również próby połączeń przychodzących do telefon. Zamiast tego żądania poza domem muszą być przesyłane przez serwer proxy, do którego docierają połączenia wychodzące zarówno z telefonu, jak i urządzenia IoT.
Jeśli użytkownik jest w domu, ale jego telefon jest obecnie w sieci mobilnej, a nie w sieci domowej, powyższy problem nadal obowiązuje. Poproszenie użytkownika o zmianę telefonu z telefonu komórkowego na Wi-Fi może, ale nie musi być akceptowany przez różnych użytkowników i zależy w pewnym stopniu od zużycia baterii przez telefon w telefonie; również niektóre telefony wybierają jedno z nich dynamicznie w sposób, który może być problematyczny, jeśli potrzebujesz sieci Wi-Fi.
Połączenie między telefonem a urządzeniem za pomocą innej metody, takiej jak BTLE, może być zaletą, ale ma ograniczony zasięg, więc może nie działać we wszystkich częściach domu lub otaczającej nieruchomości, i oczywiście nie będzie działać, gdy będziesz poza domem.
Tak więc, chociaż możesz zbudować urządzenie, które nie wymaga obsługi zewnętrznej infrastruktury serwerowej, prawdopodobnie lepiej jest zbudować urządzenie, które może efektywnie wykorzystywać serwer przekaźnikowy , jeśli jest to osiągalne lub dozwolone przez ustawienia preferencji użytkownika.
źródło
Tak, na rynku jest już wiele aplikacji, które nie polegają na usługach w chmurze. Hierarchia złożoności, którą użytkownik może zdecydować się zainstalować z określonym produktem, wygląda następująco:
Każdy dostawca może adresować część łańcucha. IFTTT na przykład zapewnia tylko usługę w chmurze i aplikację na telefon - wszystkie usługi są stronami trzecimi.
Termostat NEST firmy Google powinien działać samodzielnie (nawet jeśli jest to kosztowna implementacja w tym trybie).
Kamery bezpieczeństwa pasują do różnych kombinacji tych modeli, w zależności od tego, czy polegają na subskrypcji użytkownika, czy na jednorazowych kosztach sprzedaży.
Z komercyjnego punktu widzenia istnieją dwa kluczowe punkty zależności od infrastruktury chmury. Pierwszy to przydatność do oceny / częściowej instalacji (przy jednoczesnym utrzymaniu niskich kosztów początkowych), drugi to zdolność do utrzymania ograniczonej obsługi w przypadku braku połączenia dosyłowego (odcięcie zasilania itp.).
źródło
Jeśli chcesz kontrolować tylko w domu, na pewno jest to możliwe.
Problem polega na tym, że jeśli chcesz zaoferować kontrolę spoza domu, sprawy stają się trudne. Ani klient, ani serwer prawdopodobnie nie mają statycznego adresu IP, prawdopodobnie będą to zapory ogniowe i / lub NAT.
Użytkownik może skonfigurować przekierowanie portów / wyjątki w routerze / zaporze i skonfigurować dynamiczny DNS, aby śledzić swój dynamiczny adres IP i skierować swojego klienta na dynamiczny wpis DNS, ale użytkownik techniczny musi to zrobić i stwarza problemy bezpieczeństwa.
Posiadanie serwera w znanej lokalizacji w publicznym Internecie jest najprostszym sposobem, aby upewnić się, że Twoje rzeczy mogą komunikować się ze sobą, niezależnie od dynamicznych adresów IP, NATS, wychodzenia tylko z zapór ogniowych itp. Wciąż istnieją pewne problemy z bezpieczeństwem, ale są one ograniczone, jak możesz egzekwuj zasady bezpieczeństwa na serwerze, które możesz łatwiej monitorować i aktualizować.
IPv6 traci NAT, ale dynamiczne adresy IP i wychodzące tylko zapory ogniowe nadal są powszechne.
źródło
Urządzenia IoT wykraczają poza komunikację między urządzeniami. Weźmy na przykład pilota do telewizora, jest to urządzenie wbudowane, które komunikuje się z telewizorem za pomocą sygnału podczerwieni, aby poinstruować telewizor, aby dokonał czegoś takiego jak zmiana kanałów. Czy uważasz to za urządzenie IoT?
Urządzenia IoT „wykraczają poza” poprzez:
Funkcje te mogą zostać w pełni zaimplementowane w twoim produkcie i bez usług w chmurze, bardziej chodzi o decyzję, czy funkcje, które chcesz, aby posiadał produkt IoT, skorzystałyby z infrastruktury chmury. Korzyści występują w różnych obszarach:
Dane
Dane mogą być przechowywane w chmurze zamiast na nośniku pamięci na urządzeniu. Ma to wiele zalet:
Usługi oprogramowania
Jest prawdopodobne, że twoje urządzenia IoT będą miały aspekt interakcji z użytkownikiem za pomocą oprogramowania. Korzystając z chmury, oprogramowanie Twojego produktu może skorzystać z:
źródło