Instrukcja „Convert value”

Udostępnij
Instrukcja „Convert value”

Instrukcja „Convert value” odczytuje zawartość parametru IN i konwertuje ją zgodnie z typami danych wybranymi w polu instrukcji. Przekonwertowana wartość jest wyjściem w OUT.

Aby uzyskać informacje na temat możliwych konwersji, zapoznaj się z sekcją „Explicit conversion” w „Zobacz także”.

Wyjście enable ENO ma stan sygnału „0”, jeśli spełniony jest jeden z następujących warunków:

  • Wejście enable EN ma stan sygnału „0”.
  • Podczas wykonania występują błędy, takie jak przepełnienie.

Opcje konwersji dla ciągów bitowych

Ciężary BYTE i WORD nie mogą być wybrane w polu instrukcji. Możliwe jest jednak określenie operandu typu danych DWORD lub LWORD w parametrze instrukcji, jeśli długości operandów wejściowych i wyjściowych są zgodne. Operand jest następnie interpretowany przez typ danych ciągu bitowego zgodnie z typem danych parametru wejściowego lub wyjściowego i jest konwertowany implicitnie. Typ danych DWORD jest na przykład interpretowany jako DINT/UDINT, a LWORD jako LINT/ULINT. Te opcje konwersji są również dostępne, gdy włączono „IEC check”.


Uwaga
Dla CPU serii S7-1500: Typy danych DWORD i LWORD mogą być konwertowane tylko na lub z typu danych REAL lub LREAL.Podczas konwersji wzór bitowy wartości źródłowej jest przenoszony niezmiennie, wyrównany do prawej, do docelowego typu danych. Jeśli podczas konwersji nie wystąpią błędy, stan sygnału wyjścia enable ENO = 1; jeśli wystąpi błąd podczas przetwarzania, stan sygnału wyjścia enable ENO = 0.

Parametry

Następująca tabela pokazuje parametry instrukcji „Convert value”:

ParametrDeklaracjaTyp danychObszar pamięciOpis
ENWejścieBOOLI, Q, M, D, L lub stałaWejście enable
ENOWyjścieBOOLI, Q, M, D, LWyjście enable
INWejścieCiągi bitowe, liczby całkowite, liczby zmiennoprzecinkowe, CHAR, WCHAR, BCD16, BCD32I, Q, M, D, L, P lub stałaWartość do konwersji.
OUTWyjścieCiągi bitowe, liczby całkowite, liczby zmiennoprzecinkowe, CHAR, WCHAR, BCD16, BCD32I, Q, M, D, L, PWynik konwersji

Możesz wybrać typy danych instrukcji z rozwijanych list „???” w polu instrukcji.

Przykłady

Następujący przykład pokazuje konwersję liczby całkowitej (16 bit) na inną liczbę całkowitą (32 bit):

AD 4nXcgMmJ 6Yme56CBred47q c qT5d4caB4qVPuRz9G13LfL3HEbWMwNePKd4KAQ 9KbqjJSLihZDZQ7PBwbni99uSRYRjq0YKT2mB6Zwcjtb93F6JdBkKJ5MviPF5FQhTPaAEEBGA5kEM7I28VJrSL0?key=fwWciRRIg5y2KmyfNSeIPsu7

Następujący przykład pokazuje konwersję bajtu (8 bit) na liczbę całkowitą SINT (8 bit):

AD 4nXdSwmyITlK4UHT7oaGH4VLAn eIoCqqGy1cBarBqLOCoijn4yTY9cGa9CXuxgkqs8djg3M6cP 52ZmV8vc62BCz8usCkRLn8bjLGihBgFUD0YH 6BkANCXPVecSw0C5Rkr65rxdLAMRdxE25i Jzw?key=fwWciRRIg5y2KmyfNSeIPsu7

Następujący przykład pokazuje konwersję bajtu (8 bit) na liczbę całkowitą bez znaku USINT (8 bit):

AD 4nXeD0pQwjTq9az0H gAkyg2Y7AVm90rWnsEGJYiKIpS0AjaghMUEIgv977CNfIvh LNvyHpfWbEvRx2lrcxbjI058Qzna7HZQSq2c Kj2pBWtzyRRiwU5 jEEU6RMbHq 7t9aZrK UXSy7PMRMDIn00?key=fwWciRRIg5y2KmyfNSeIPsu7

Konwersje są możliwe, ponieważ długości obu operandów są takie same.

Jeśli chcesz pogłębić swoją wiedzę i umiejętności w zakresie programowania i konfiguracji systemów automatyki, polecamy zapisanie się na darmowy kurs PLC! Sprawdź również naszą instrukcję wideo:

bezplatny s7 1200 5
Udostępnij
Polecany kurs!
Do 20.09.2022 rabat -15% na:

SIMATIC S7 w akcji

Zapisz się na newsletter!
Autor wpisów
Tomasz Gilewski

Witam, nazywam się Tomasz Gilewski. Jestem autorem książek o sterowniku S7-1200 oraz panelach HMI (czyli sprzęt firmy Siemens). Od kilkunastu lat zajmuję się programowaniem wyłącznie na sprzęcie oraz narzędziach inżynieryjnych firmy Siemens.

Zostaw komentarz

Wybierz walutę