Czym jest REST? Zastosowanie w przemyśle

Jeśli chodzi o systemy sprzęgające, REST (Representational State Transfer) niemal zawsze odgrywa kluczową rolę. Szczególnie w związku z systemami obsługującymi sieć, REST jest jednym z wiodących standardów integracji systemów. Jednak REST wcale nie jest nowy; wręcz przeciwnie, koncepcja stojąca za REST jest wypróbowana i przetestowana. Łączenie systemów za pośrednictwem REST jest proste i skuteczne ze względu na prostą konstrukcję. A ponieważ jest bezstanowy, jest łatwy do skalowania. W sektorze przemysłowym REST jest używany w wielu miejscach. Tutaj zapewniamy Ci niezbędną podstawową wiedzę na temat REST. Odkryj wszystko, co musisz wiedzieć o korzystaniu z REST w naszym praktycznym przykładzie i wyjaśnieniach przemysłowych.

 

1. Główna idea REST

REST
JSON to niezależny format danych, który nie jest związany z językiem JavaScript. Jednocześnie JSON jest idealnym formatem do wymiany danych między systemami dzięki swojej prostej strukturze i kodowaniu w zestawie znaków Unicode. Zawsze jest wymieniany między aplikacjami jako całość. Jest najłatwiejszy do przetwarzania przez człowieka dokumentu JSON, jeśli dokument jest dostępny jako plik w systemie plików. Zazwyczaj używa się tutaj rozszerzenia pliku „*.JSON”. Zawartość dokumentu JSON jest zasadniczo obiektowo zorientowana w strukturze (patrz Podstawowa struktura).

2. Interfejs API REST

Interfejs API REST
API (Application Programming Interface) to odpowiednia implementacja architektury REST konkretnego systemu. Jest on wówczas nazywany RESTful API. Zasoby, które mogą być adresowane przez REST, są definiowane w interfejsie.
Dla poszczególnych zasobów istnieją powiązane parametry, które opisują zasób i są modyfikowane przez REST.
W przypadku RESTful API systemu dostawca zazwyczaj udostępnia dokumentację API, w której można przeglądać wszystkie zasoby i ich parametry.
Przykładem dobrej dokumentacji API jest interfejs REST naszego systemu zgłoszeń Target Process, który można przeglądać tutaj: Target Process REST API.
W środowisku produkcyjnym system obsługujący REST może udostępniać następujące zasoby, na przykład:

    • /production/production order
      • Parametry: ID, numer zamówienia, ilość, produkt, termin, …
    • /production/production-order/{id}/component.
      • Parametry: ID, numer materiału, ilość, partia, …
    • /produkcja/zakład
      • Parametr: ID, status, bieżące zamówienie, następna konserwacja, godziny pracy, …

3. REST i HTTP

Architektoniczna idea Representational State Transfer nie narzuca technologii implementacji. W praktyce jednak REST jest zawsze implementowany za pomocą protokołu HTTP. Zasoby są adresowane za pomocą unikalnego URI (Uniform Resource Identifier), znanego z przeglądarki internetowej. Parametry zasobu są dołączane jako zapytanie (znane również jako parametry URL).
Akcje na zasobach są implementowane w protokole HTTP za pomocą standardowych akcji GET, POST, PUT i DELETE. Obowiązuje następujący standard:

    • GET pobiera jeden lub więcej zasobów
    • POST tworzy nową instancję zasobu
    • PUT zapisuje dane do zasobu i w ten sposób je zmienia
    • DELETE usuwa instancję zasobu

Wywołanie REST w celu pobrania określonego zlecenia produkcyjnego z systemu ERP obsługującego REST mogłoby wyglądać następująco za pośrednictwem istniejącego połączenia http:

GET http://ERPSYSTEM/Produktionsauftrag/4711
Accept: application/json

Drugi wiersz określa systemowi ERP format, w jakim ma zostać udzielona odpowiedź.

Możliwą odpowiedzią w formacie JSON byłoby:

[
{
„id“: „4711“,
„Artykuł“: „Produkt A”,
„Menge“: „10500,
„Freigabe”: fałszywe,
„Lieferdatum”: „21.7.2020”
}
]

4. Przykład

REST Open Weather z Routerem OPC

Prawdziwy przykład wywołania REST można wypróbować na przykład na stronie usługi prognozy pogody OpenWeatherMap.

Jeśli łącze zostanie wywołane za pomocą przeglądarki internetowej (na kliknięcie), żądanie GET zostanie wysłane do usługi. W rezultacie usługa odpowie prognozą pogody dla lokalizacji Londyn.
Punkt końcowy w tym przypadku to: api.openweathermap.org/data/2.5/forecast
Zasób to „prognoza” z powiązanymi parametrami „q” dla lokalizacji i „mode” dla formatu. Szczegółowy przykład wywołania tego API można znaleźć w naszym artykule z instrukcjami dotyczącymi pobierania danych pogodowych z OpenWathermap za pomocą Routera OPC.

5. Formaty danych

Format danych odpowiedzi punktu końcowego REST nie jest przepisany i dlatego może być w zasadzie dowolny. W praktyce format zależy od funkcji punktu końcowego. W większości przypadków dane są dostarczane jako dokument JSON lub XML. Jeśli zwykła strona internetowa jest przeszukiwana za pomocą wywołania REST, odpowiedź jest w formacie HTML.
Struktura odpowiedzi XML/JSON musi być udokumentowana przez operatora interfejsu REST, ponieważ nie ma tutaj możliwości samoopisu.

6. Usługa / Usługa internetowa

W odniesieniu do oprogramowania usługa internetowa lub usługa odnosi się do usługi, która umożliwia wymianę danych i współpracę między różnymi systemami oprogramowania. Usługa internetowa umożliwia to w sieci za pośrednictwem standardowych technologii internetowych. Spośród wielu innych, REST jest konkretnym przejawem implementacji usługi internetowej. Inne to na przykład SOAP lub RPC (Remote Procedure Call).

7. Czujniki z REST

Wiele urządzeń terenowych z wbudowanymi małymi komputerami oferuje również swoje dane za pośrednictwem REST. W ten sposób te urządzenia terenowe można łatwo zintegrować z innymi aplikacjami.
Przykładami tego są moduły I/O (np. od WuT) lub urządzenia do pomiaru energii (np. od Phoenix Contact).
W przypadku sterowników (PLC) i innych zdalnych źródeł danych serwer Kepware OPC oferuje również możliwość dostarczania danych za pośrednictwem serwera REST.

8. Systemy oprogramowania z REST

Interfejs REST jest szeroko stosowany w systemach oprogramowania (np. ERP, MES, PLS), a zwłaszcza w sieci w systemach opartych na chmurze. Dzięki dobrze wyposażonemu API niemal cały zakres funkcjonalny systemu oprogramowania można obsłużyć za pośrednictwem interfejsu lub, alternatywnie, można utworzyć punkty końcowe REST specyficzne dla użytkownika. Przykładami tego są, między innymi, SAP z REST za pośrednictwem PI, Microsoft z REST API dla Dynamics 365 lub Siemens Mindsphere REST API. Ostatecznie jednak warto zapytać producenta o REST API dla każdego używanego systemu oprogramowania.

9. Punkt końcowy

Punkt końcowy REST

Punkty końcowe to pełne URI, które tworzą odpowiednie API REST. Suma wszystkich punktów końcowych to API, a każdy indywidualny punkt końcowy adresuje dokładnie jeden zasób. Na przykład w przypadku zlecenia produkcyjnego punkt końcowy do zapytania o zestaw komponentów mógłby wyglądać następująco:

/Produktionsauftrag/{id}/Komponente/{id}/Menge

W tym punkcie końcowym numery zamówienia i komponentu są przesyłane jako identyfikator.

10. OPC Router i REST

Router OPC i REST

OPC Router służy jako klient REST podczas wywoływania interfejsu API REST (patrz Wtyczka REST). W OPC Routerze punkt końcowy jest konfigurowany dla wywołania, a następnie wywoływany w połączeniu. Metoda, punkt końcowy i parametry są następnie widoczne w obiekcie transferu.

Szczegółowy przykład można znaleźć tutaj: Zapytanie o dane pogodowe z OpenWeather za pomocą REST.

Oprócz wywoływania punktów końcowych REST, OPC Router może również działać jako serwer i definiować punkty końcowe REST. W tym celu OPC Router udostępnia tak zwane wyzwalacze REST. W ten sposób można zbudować własny interfejs API REST za pomocą OPC Routera.

11. Postman – klient API testowego

postman

Istnieją różne narzędzia do szybkiego i łatwego testowania interfejsów REST. Jednym z najbardziej znanych jest Postman. Bardzo mocny program do wywoływania i tworzenia API. Postmana można pobrać tutaj: Postman REST API Client.

12. Swagger – Framework do opisu API

Swagger

Framework Swagger służy do tworzenia, używania i dokumentowania usług sieciowych. Jest to szczególnie pomocne dla klientów REST, ponieważ REST API udokumentowany za pośrednictwem Swagger zapewnia standardową dokumentację, dzięki czemu przeglądanie interfejsu jest możliwe w kliencie. Ta funkcjonalność przeglądania nie jest zawarta w głównej idei REST i jest tutaj uzupełniana.

13. Historia REST

Usługi sieciowe były ważnym tematem w rozproszonych systemach oprogramowania od samego początku. Wiele technologii szybko stało się bardzo wydajnych i zapewniało wiele funkcji. W przypadku mniejszych aplikacji były one często zbyt złożone i zbyt intensywne obliczeniowo.
W 2000 roku amerykański informatyk Roy Fielding wykorzystał to jako okazję do zaprojektowania nowej, prostej architektury. Otrzymał za to doktorat. Od tego czasu REST stał się powszechny i ​​jest jedną z najważniejszych technik sprzęgania systemów w Internecie.

14. Przyszłość REST – GraphQL

Model architektury REST jest stały i działa tak, jak jest. Brak struktury w zapytaniach REST doprowadził do nowych rozwiązań, które rozwijają ideę architektury REST. Facebook opracował architekturę GraphQL w 2012 r. i wydał ją w 2015 r. Podobnie jak REST, GraphQL jest bezstanowym językiem zapytań. Wśród innych ulepszeń GraphQL definiuje schematy. Definiuje to sposób, w jaki odpowiada punkt końcowy, oraz strukturę danych w odpowiedzi. GraphQL poprawia zatem architekturę w jednym z największych słabych punktów REST.

15. Bezpieczeństwo w REST

Ponieważ HTTP jest używany do wywoływania punktów końcowych REST, można również użyć uwierzytelnień dostępnych w standardzie, takich jak: HttpBasic, Jwt, Ntml, OAuth1, OAuth2.
Ponadto, https jest oczywiście używany zamiast http, aby użyć połączenia odpornego na podsłuch.
Oprócz standardowych opcji uwierzytelniania, często wymieniany jest tzw. Klucz AppKey. Ten klucz to tajny kod utworzony dla klienta, który jest przesyłany przy każdym wywołaniu w celu uzyskania autoryzacji dla wywołania. Tak zwany Bearer Token jest również obsługiwany przez OPC Router. REST jest uważany za bezpieczny ze względu na wykorzystanie powszechnie stosowanych metod.

16. Wideo: samouczek wtyczki REST

W tym filmie wyjaśniamy, jak zintegrować OPC Router z komunikacją REST. W pierwszym przykładzie żądamy danych pogodowych z OpenWeather. W drugim przykładzie pokazujemy, jak skonfigurować i przetestować interfejs REST-ful na OPC Routerze, aby odczytać dane o zamówieniach z bazy danych.

Prosta komunikacja REST w praktyce

REST jest jednym z wiodących standardów łączenia systemów obsługujących sieć. Korzystając z interfejsu REST (REST API), klient i serwer mogą komunikować się ze sobą w prosty i efektywny sposób. Do integracji systemu z REST nie jest wymagany obszerny kod, zwykle wystarcza prosty adres URL. Korzystając z czterech prostych akcji http: GET, POST, PUT i DELETE, REST może wykonać niemal każde zadanie.

W praktyce do integracji systemu za pośrednictwem REST wymagane jest oprogramowanie, które może adresować i przeszukiwać usługi sieciowe REST. Produkty oprogramowania, takie jak OPC Router, oferują w tym celu graficzny interfejs użytkownika, w którym połączenia z maszynami, kontrolerami, bazami danych, systemami w chmurze i innymi komponentami systemu można tworzyć w prosty sposób metodą „przeciągnij i upuść”. Oprogramowanie powinno również umożliwiać indywidualną i specyficzną dla aplikacji wymianę danych. Działa to na przykład z tzw. wtyczkami do systemów SAP lub bazą danych SQL w taki sam sposób, jak w przypadku systemów w chmurze lub platform IoT. Szczególnie w przemyśle REST można zatem wykorzystywać na wiele sposobów i umożliwia on bardziej efektywną komunikację.

To może Cię również zainteresować

REST logo
Szczegóły dotyczące wtyczki REST

W przypadku integracji systemów wiodącym standardem jest model architektoniczny REST. Opiera się on na czystej technologii internetowej i logice bezstanowej do wyszukiwania i edycji danych w systemach. Umożliwia to łatwą skalowalność, dlatego REST jest szeroko stosowany w przemyśle. Na naszej stronie ze szczegółami interfejsu REST można znaleźć wszystkie szczegóły dotyczące łączenia się za pośrednictwem REST, a także praktyczne przykłady zastosowań.

Addressing Ewon HMS Flexy 205 via REST over Talk2M Cloud
Łączenie zdecentralizowanych zakładów przemysłowych dostępnych w chmurze za pośrednictwem REST

Zdecentralizowane zakłady przemysłowe dostępne za pośrednictwem chmury można doskonale zintegrować ze strukturami systemowymi za pomocą REST. Nikt nie musi być obecny w zakładzie w celu przeprowadzenia interwencji konserwacyjnych lub w przypadku awarii. To połączenie jest technicznie wykonalne dzięki Routerowi zdalnej konserwacji Ewon Flexy 205, który oprócz czystej zdalnej sieci umożliwia również połączenie z chmurą Talk2M. W przypadku innych systemów chmura oferuje nowoczesny interfejs REST. Dokładnie wyjaśniamy, jak działa konfiguracja z OPC Routerem w naszych instrukcjach krok po kroku „Połączenie Talk2M”.

twilio
Wysyłaj powiadomienia mobilne do użytkowników urządzeń mobilnych za pomocą wiadomości SMS i WhatsApp.

W Przemyśle 4.0 dostęp do informacji jest niezbędny, aby podejmować właściwe decyzje na czas. Najlepszym sposobem na to jest posiadanie aktywnych powiadomień z procesów – i to mobilnych. Znane usługi powiadomień, takie jak WhatsApp lub klasyczny SMS, umożliwiają to w połączeniu z OPC Router, wtyczką REST i usługą Twilio. Nasz przewodnik krok po kroku „Wysyłanie powiadomień dla użytkowników mobilnych za pośrednictwem wiadomości SMS i jako wiadomości WhatsApp” pokazuje, jak wysyłać własne indywidualne powiadomienia.

ThingWorx krok po kroku za pomocą wtyczki REST
Podłączanie platformy IoT ThingWorx za pomocą wtyczki REST

Platforma IoT ThingWorx firmy ptc zapewnia wirtualne obrazy urządzeń, maszyn i czujników z koncepcją „cyfrowego bliźniaka” do wizualizacji, analiz lub rozszerzonej rzeczywistości. Obrazy tych cyfrowych bliźniaków (rzeczy) można połączyć za pomocą REST, a dane można przesyłać lub pobierać w ten sposób. Nasz samouczek „Łączenie ThingWorx za pomocą wtyczki REST” pokazuje, jak połączyć właściwości i metody cyfrowych bliźniaków z platformy IoT ThingWorx za pomocą wtyczki REST OPC Routera.

Pozwól swoim systemom komunikować się ze sobą za pomocą REST

Przetestuj teraz bezpłatnie i bez zobowiązań OPC Router z wtyczką REST lub zapisz się na nasz newsletter, aby być na bieżąco ze zmianami i nowościami.

Nie znalazłeś jeszcze odpowiednich informacji?

Tutaj znajdziesz więcej informacji o naszym oprogramowaniu, a także przegląd wszystkich dostępnych wtyczek OPC Router. Udostępniamy również bezpłatne demo, dzięki któremu możesz przetestować w pełni funkcjonalną wersję OPC Router.

Tel. +48 32 235 45 60     E-mail: info@inee.pl

© Wszystkie prawa zastrzeżone INEE Sp. z o.o. 2024 - 2025