Komunikacja z maszynami za pomocą Edge MC's Connector Host i Node-RED
  • 04 Nov 2023
  • 3 Minuty do przeczytania
  • Współtwórcy

Komunikacja z maszynami za pomocą Edge MC's Connector Host i Node-RED


Article Summary

Komunikacja z maszynami za pomocą Edge MC's Connector Host i Node-RED

Dowiedz się, jak używać Edge MC Connector Host do komunikacji z urządzeniami Node-RED

W poniższym artykule

  • Konfiguracja hosta konektorów Edge MC
  • Tworzenie funkcji Connector do komunikacji z urządzeniem
  • Tworzenie aplikacji do komunikacji z urządzeniem

Wymagania wstępne

  • Upewnij się, że włączyłeś Node-RED na swoim Edge MC. Instrukcje, jak to zrobić, można znaleźć w tym artykule.

Podsumowanie

Wykorzystując host konektorów na urządzeniu Edge MC, można użyć aplikacji do wyzwalania funkcji konektorów, które komunikują się z Node-RED działającym na urządzeniu Tulip. Ostatecznie daje to możliwość zapisu na urządzeniach z poziomu aplikacji Tulip.

Konfigurowanie hosta Connector w urządzeniu Edge MC

Uwaga: Jeśli nie jesteś zaznajomiony z hostami konektorów i funkcjami konektorów w Tulip, zapoznaj się z tym artykułem.

Aby rozpocząć, najpierw przejdź do strony Connectors i kliknij Create Connector. Pojawi się okno modalne z prośbą o podanie następujących informacji:

  • Nazwa: Wybierz nazwę dla hosta konektora
  • Opis: Wybierz nazwę dla hosta konektora
  • Typ konektora: Wybierz HTTP

Następnie należy określić szczegóły hosta konektora. Kliknij przycisk produkcji, testowania i rozwoju, aby otworzyć okno dialogowe Edit Connector Details i wprowadź następujące informacje:

  • Running On: Wybierz EMC Connector Host Uwaga: Jeśli nie widzisz tej opcji, przejdź do portalu Edge MC i upewnij się, że Connector Host został włączony.
  • Host: Wpisz localhost
  • Port: Wpisz 1880 (jest to port, na którym działa Node-RED)
  • TLS: Wpisz Nie

Nie ma potrzeby dodawania nagłówków ani certyfikatów. Teraz należy kliknąć Test i sprawdzić, czy połączenie zostało nawiązane. Na koniec kliknij Zapisz.

Tworzenie funkcji łącznika

Po pomyślnym skonfigurowaniu hosta konektora możesz rozpocząć tworzenie funkcji konektora do komunikacji z urządzeniami Tulip. W tym przykładzie Node-RED będzie działał jako serwer HTTP.

Aby skonfigurować funkcję konektora, musisz skonfigurować funkcję w Tulip, a także w edytorze Node-RED. W tym przykładzie zbudujemy prostą funkcję, która pobiera dane wejściowe firstName i lastName i zwraca odpowiedź "Hello firstName lastName!", a także znacznik czasu.

Tworzenie funkcji konektora w aplikacji Tulip

Przejdź do hosta Connector dla swojego Edge MC i wybierz opcję Create Function w prawym górnym rogu.

Wybierz GET jako typ żądania i wprowadź punkt końcowy: /helloWorld. Chociaż może się to wydawać arbitralne, w późniejszym kroku skonfigurujemy ten punkt końcowy w edytorze Node-RED:

{height="" width=""}
Skonfiguruj dane wejściowe funkcji, aby zawierały Imię i Nazwisko:

{height="" width=""}
W polu Request Body wybierz Content Type: JSON i ustaw następujące klucze dla danych wejściowych. Będą one przywoływane później w edytorze Node-RED:

{height="" width=""}
Teraz dodaj następujące wyjścia do Connector Function, Message i Time. Dodaj powiązane Body do wyjść, aby można było się do nich odwoływać w edytorze Node-RED:

{height="" width=""}
Następnie sprawdź, czy typ odpowiedzi jest ustawiony na JSON.

Zakończyłeś konfigurację funkcji łącznika po stronie Tulip. Kliknij Zapisz, aby zapisać funkcję łącznika.

Tworzenie przepływu w Node-RED

Nadszedł czas, aby otworzyć edytor Node-RED z portalu Edge MC i skonfigurować nowy przepływ.

Najpierw przeciągnij i upuść węzeł http z sekcji sieci do edytora. Ustaw węzeł tak, aby miał następującą konfigurację:

{height="" width=""}
Ważne jest, aby metoda żądania i adres URL żądania były zgodne z funkcją łącznika skonfigurowaną w aplikacji Tulip.

Następnie przeciągnij i upuść węzeł zmiany z następującą konfiguracją:

{height="" width=""}
Ustaw msg.payload na JSON i pozostaw go jako pusty obiekt: {}

Teraz wstaw węzeł szablonu. W tym miejscu można pobrać właściwości przychodzącej wiadomości (wejścia funkcji łącznika) i zbudować z nich ciąg znaków (np. "Hello World").

`` Witaj,

{{req.body.firstName}}

{{req.body.lastName}}!



Teraz nadszedł czas, aby dodać kolejny **węzeł zmiany**, aby przechwycić znacznik czasu i wysłać go z powrotem jako część odpowiedzi. Skonfiguruj węzeł w następujący sposób:


![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Communicate%20with%20Machines%20using%20Edge%20MC%27s%20Connector%20Host%20%26%20Node-RED_313570022.png){height="" width=""}
W tym momencie nasz przepływ zaakceptował dane wejściowe wysyłane z Tulip i nadszedł czas, aby skonfigurować odpowiedź. Aby to zrobić, przeciągnij i upuść **węzeł** **odpowiedzi http**. Skonfiguruj odpowiedź tak, aby miała **kod** statusu **200**, **OK**:


![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Communicate%20with%20Machines%20using%20Edge%20MC%27s%20Connector%20Host%20%26%20Node-RED_313570331.png){height="" width=""}
Ogólny przepływ jest teraz zakończony i powinien wyglądać podobnie do poniższego:


![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Communicate%20with%20Machines%20using%20Edge%20MC%27s%20Connector%20Host%20%26%20Node-RED_313570517.png){height="" width=""}
Należy pamiętać, że zielone węzły w powyższym przepływie są węzłami **debugowania**, wykorzystywanymi do wyświetlania ładunku w edytorze Node-RED. 


Ostatnim krokiem będzie **wdrożenie** przepływu z edytora Node-RED. Teraz będzie można przetestować funkcję łącznika w środowisku testowym Tulip, 


#### Uruchamianie funkcji łącznika przez aplikację


Po skonfigurowaniu hosta konektora i funkcji konektora, która skutecznie komunikuje się z urządzeniem za pomocą Node-RED jako serwera http, możesz zintegrować tę funkcjonalność ze swoimi aplikacjami.


W tym przykładzie istnieją dwa pola wejściowe do zaakceptowania zmiennych **firstName** i **lastName**, które zostaną wysłane w naszym żądaniu:


![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Communicate%20with%20Machines%20using%20Edge%20MC%27s%20Connector%20Host%20%26%20Node-RED_313571948.png){height="" width=""}
W przycisku "Say Hello!" wprowadź następujący wyzwalacz, aby wywołać funkcję konektora:


![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Communicate%20with%20Machines%20using%20Edge%20MC%27s%20Connector%20Host%20%26%20Node-RED_313570870.png){height="" width=""}
Po wprowadzeniu danych wejściowych i kliknięciu przycisku "Say Hello!" skutecznie wysłałeś żądanie http do urządzenia Tulip i otrzymałeś odpowiedź JSON.


Aby przetestować aplikację, kliknij przycisk **Test** w edytorze aplikacji, aby przejść do trybu programowania!


Czy ten artykuł był pomocny?