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”:
Parametr | Deklaracja | Typ danych | Obszar pamięci | Opis |
EN | Wejście | BOOL | I, Q, M, D, L lub stała | Wejście enable |
ENO | Wyjście | BOOL | I, Q, M, D, L | Wyjście enable |
IN | Wejście | Ciągi bitowe, liczby całkowite, liczby zmiennoprzecinkowe, CHAR, WCHAR, BCD16, BCD32 | I, Q, M, D, L, P lub stała | Wartość do konwersji. |
OUT | Wyjście | Ciągi bitowe, liczby całkowite, liczby zmiennoprzecinkowe, CHAR, WCHAR, BCD16, BCD32 | I, Q, M, D, L, P | Wynik 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):
Następujący przykład pokazuje konwersję bajtu (8 bit) na liczbę całkowitą SINT (8 bit):
Następujący przykład pokazuje konwersję bajtu (8 bit) na liczbę całkowitą bez znaku USINT (8 bit):
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:
