TCP/UDP

Interfejsem TCP/UDP można wymieniać surowe dane między sterownikiem SPS a zdalnym serwerem. Jednocześnie można uruchomić serwer do nasłuchiwania danych.

Info: Interfejs synchronizuje się automatycznie z najwolniejszym cyklem przypisanego sterownika SPS. System buforuje telegramy, więc żaden nie zostanie utracony.

Monitor

W monitorze używane są następujące kolory.

Kolor Opis
Biały Nie wystąpił żaden błąd.
Pomarańczowy Osięgnął się timeout.
Zielony Połączenie zakończyło się powodzeniem.
Czerwony Nie udało się nawiązać połączenia lub osiągnięto krytyczny timeout podczas wysyłania. Możliwe, że błąd w komunikacji UDP nie zostanie wykryty.

Broadcast i Multicast

Można wysyłać i odbierać broadcast oraz multicast za pomocą interfejsu TCP/UDP. W tym celu należy odpowiednio wybrać tryb pracy w konfiguracji bramy. Następnie niektóre opcje, takie jak np. TCP, nie będą już dostępne. Ponadto wybór wyjściowego interfejsu stanie się obowiązkowy.

Aby wysyłać telegramy, należy również wpisać IP zgodnie z wymogami obok pola. Jeśli tak się nie stanie, wysłanie nastąpi za pomocą unicast.

Tryb Opis
Unicast Pozwala na bezpośrednią komunikację.
Ograniczone nadawanie broadcastu Pozwala na komunikację tylko w lokalnej sieci. (Niezależnie od IP)
Celowe nadawanie broadcastu Pozwala na komunikację z podsiecią broadcast. Na przykład 10.0.0.255, jeśli podsieć zawiera 24 bity lub została ustawiona na 255.255.255.0.
Multicast Pozwala na komunikację za pomocą multicastu. W tym celu używane jest IGMP-Snooping.

Wykrywanie końca pakietu

W konfiguracji przerwa wiersza można ustawić warunek zakończenia transmisji. Wykryty koniec jest również przesyłany.

Jeśli koniec nie zostanie wykryty, interfejs czeka na timeout lub koniec połączenia i wysyła wynik do sterownika SPS. Dlatego zaleca się sprawdzanie wszystkich odebranych pakietów. Odbieranie telegramów UDP nie posiada timeoutu.

Transmisja HTTP

Metodę można zdefiniować za pomocą następującej przerwy wiersza:

HTTP

Ta metoda jest specjalna, ponieważ pozwala odpowiednio reagować na Content-Length w nagłówku.

Po określonej długości

Aby zakończyć odbieranie po określonej długości, można użyć następującego ciągu znaków w konfiguracji przerwa wiersza:

LEN === ###

Gdzie ### odpowiada liczbie znaków. Zapisywać należy dokładnie tak jak powyżej, wraz z odstępami.

Uwaga: Użycie LEN === 1 odbiera każdy znak osobno i może prowadzić do zwiększonego obciążenia serwera.

Indywidualne zakończenie wiersza

Można zdefiniować różne zakończenia wierszy. Zazwyczaj używa się \n lub \r. Każdy wiersz definiuje inne wykrycie końca wiersza.

W konfiguracji następujące znaki otrzymują escape:

\\ \r \n \0

Komunikacja

Podczas wysyłania komunikacji za pomocą TCP połączenie jest zamykane po każdym żądaniu.

Jeśli podczas żądania sendrecv nie otrzymano odpowiedzi, interfejs wysyłający zostaje zablokowany do momentu osiągnięcia timeoutu. W monitorze wyświetlany jest błąd.

Zmienna Opis
send Wysyła dane do serwera.
!send Wysyła wszystkie dane do serwera, pomijając przy tym żadne telegramy.
sendrecv Jak send, ale czeka na odpowiedź.
!sendrecv Jak !send, ale czeka na odpowiedź.
response Odpowiedź z sendrecv. Po osiągnięciu timeoutu zwracana jest pusta ciąg znaków.
recv Dane, które zostały odebrane przez lokalny serwer.
error Jeśli podczas przesyłania wystąpi błąd, wartość jest prawdziwa. Może ona pojawić się w sendrecv dopiero po osiągnięciu timeoutu.

Uwaga: Zwróć uwagę na bezpieczeństwo interfejsu. Dane nigdy nie powinny być bezpośrednio przesyłane przez Internet. Brak autoryzacji i szyfrowania za pomocą SSL lub TLS.