- Wydrukować
Komunikacja z maszynami za pomocą Edge MC's Connector Host i Node-RED
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!