Jak zbudować swój pierwszy konektor MQTT?
  • 28 Aug 2024
  • 3 Minuty do przeczytania
  • Współtwórcy

Jak zbudować swój pierwszy konektor MQTT?


Streszczenie artykułu

Jak zbudować swój pierwszy konektor MQTT

Skorzystaj z tego przewodnika, aby dowiedzieć się, jak wprowadzić tematy MQTT do Tulip

W tym przewodniku dowiesz się:* Jak skonfigurować źródło danych MQTT w Tulip

Jeśli masz działającego brokera MQTT, którego chcesz połączyć z Tulip, jesteś gotowy do skonfigurowania źródła danych MQTT i stworzenia swojej pierwszej aplikacji do monitorowania maszyn.

Konfigurowanie połączenia MQTT

Konektory MQTT można tworzyć na stronie konektorów lub na stronie źródła danych maszyny. Proces konfiguracji nie różni się, a połączenie utworzone w jednym miejscu pojawi się w drugim.

Więcej szczegółów na temat tworzenia konektorów można znaleźć tutaj: Jak skonfigurować konektor

Konfiguracja jako źródło danych maszyn

  1. Kliknij opcję Maszyny w zakładce Shop Floor na pasku menu.

image.png

  1. Następnie kliknij Machine Data Sources z lewej strony szuflady.

image.png

  1. Następnie kliknij przycisk Create Machine Data Source na stronie Machine Data Sources.

image.png

  1. Nazwij swoje źródło danych, wybierz hosta konektora, wybierz MQTT i żądaną wersję MQTT.

image.png

  1. Dodaj szczegóły połączenia, aby połączyć się z brokerem.

image.png

Konfigurowanie połączenia MQTT

Runs On

Runs on reprezentuje Connector Host, który będzie odpowiedzialny za obsługę połączenia z brokerem. Jeśli broker nie jest dostępny w Internecie, do uzyskania dostępu do brokera MQTT wymagany będzie lokalny host konektora. Przed przetestowaniem hosta konektora należy zapoznać się z poniższymi wymaganiami dotyczącymi wersji.

:::(Warning) (Wersja On Prem Connector Host) Tylko On Prem Connector Host w wersji 261 (LTS11) lub nowszej obsługuje źródła danych MQTT. Tylko urządzenia brzegowe w systemie OS56 lub nowszym obsługują źródła danych MQTT.

:::

MQTT vs. MQTTs

MQTTs to po prostu MQTT z dodatkową warstwą zabezpieczeń. Po wybraniu MQTTs, protokół SSL/TLS będzie używany do komunikacji między klientem a brokerem. Dodatkowo MQTTs obsługuje klucze prywatne, certyfikaty i zaufane tokeny CA. Po wybraniu tylko MQTT dostępne jest tylko uwierzytelnianie za pomocą nazwy użytkownika i hasła lub nazwy użytkownika według identyfikatora klienta.

Identyfikator klienta

Identyfikator klienta to sposób, w jaki klient Tulip będzie identyfikował się z brokerem MQTT. Na najprostszym poziomie jest to często używane do uwierzytelniania i kontroli dostępu. Może być ustawiony na wartość statyczną lub losową z odwróconą flagą "Auto-generate".

Keep Alive

Keep alive to maksymalny czas, w sekundach, przez jaki klient chciałby utrzymywać otwartą komunikację z brokerem. Jeśli żadna wiadomość nie została przekazana od brokera do klienta w tym czasie, klient wyśle wiadomość do brokera wskazującą, że nadal żyje.

Informacje o certyfikatach MQTT

Klucz prywatny

Aktualizuje właściwość klucza w konfiguracji uwierzytelniania Node.js.

Klucze prywatne w formacie PEM. PEM umożliwia szyfrowanie kluczy prywatnych. Zaszyfrowane klucze zostaną odszyfrowane za pomocą options.passphrase. Wiele kluczy używających różnych algorytmów może być dostarczonych jako tablica niezaszyfrowanych ciągów kluczy lub buforów, lub tablica obiektów w formie. Forma obiektu może występować tylko w tablicy. object.passphrase jest opcjonalne. Zaszyfrowane klucze zostaną odszyfrowane za pomocą object.passphrase, jeśli zostanie podane, lub options.passphrase, jeśli nie zostanie podane.

Certificate

Aktualizuje właściwość cert w konfiguracji uwierzytelniania Node.js.

Łańcuchy certyfikatów w formacie PEM. Dla każdego klucza prywatnego należy podać jeden łańcuch certyfikatów. Każdy łańcuch certyfikatów powinien składać się z certyfikatu w formacie PEM dla dostarczonego klucza prywatnego, a następnie certyfikatów pośrednich w formacie PEM (jeśli istnieją), w kolejności i z wyłączeniem głównego urzędu certyfikacji (główny urząd certyfikacji musi być wcześniej znany partnerowi, patrz ca). W przypadku dostarczania wielu łańcuchów certyfikatów, nie muszą one być w tej samej kolejności, co ich klucze prywatne w kluczu. Jeśli certyfikaty pośrednie nie zostaną dostarczone, peer nie będzie w stanie zweryfikować certyfikatu, a uzgadnianie zakończy się niepowodzeniem.

Zaufany urząd certyfikacji

Aktualizuje właściwość ca w konfiguracji uwierzytelniania Node.js.

Opcjonalnie można zastąpić zaufane certyfikaty CA. Domyślnie zaufane są dobrze znane urzędy certyfikacji nadzorowane przez Mozillę. CA Mozilli są całkowicie zastępowane, gdy CA są jawnie określone przy użyciu tej opcji. Wartość może być łańcuchem lub buforem, lub tablicą łańcuchów i/lub buforów. Dowolny ciąg lub bufor może zawierać wiele certyfikatów PEM CA połączonych razem. Certyfikat peera musi być powiązany łańcuchowo z urzędem certyfikacji zaufanym przez serwer, aby połączenie mogło zostać uwierzytelnione. W przypadku korzystania z certyfikatów, których nie można powiązać z dobrze znanym urzędem certyfikacji, urząd certyfikacji musi być wyraźnie określony jako zaufany, w przeciwnym razie uwierzytelnienie połączenia nie powiedzie się. Jeśli peer używa certyfikatu, który nie pasuje lub nie jest powiązany z jednym z domyślnych urzędów certyfikacji, należy użyć opcji ca, aby podać certyfikat urzędu certyfikacji, do którego certyfikat peera może pasować lub być powiązany. W przypadku certyfikatów z podpisem własnym, certyfikat jest jego własnym urzędem certyfikacji i musi zostać podany. W przypadku certyfikatów zakodowanych w PEM obsługiwane typy to "TRUSTED CERTIFICATE", "X509 CERTIFICATE" i "CERTIFICATE". Zobacz także tls.rootCertificates.

Testowanie połączenia

Kliknij Test, aby sprawdzić, czy możesz pomyślnie połączyć się z brokerem.

image.png

Jeśli test się powiedzie, możesz skonfigurować maszynę. Kliknij Zapisz, a następnie przejdź do strony Typy maszyn, aby skonfigurować pierwszą kategorię maszyn.


Czy znalazłeś to, czego szukałeś?

Możesz również udać się na stronę community.tulip.co, aby opublikować swoje pytanie lub sprawdzić, czy inni mieli do czynienia z podobnym pytaniem!


Czy ten artykuł był pomocny?