Typy danych dostępnych w sterownikach UniStream

Paweł Łoziński Akademia Unitronics Tagi: , , , , , , ,
Akademia PLC 4

Ten wpis jest kolejną częścią Akademii PLC Elmark, opisuje typy zmiennych dostępnych w sterownikach UniStream i ich zastosowanie.

Czym są typy danych w sterowniku PLC

Typy zmiennych informują nas o rodzajach pamięci, których używają elementy i funkcje programu.

Ogólne typy danych w sterownikach PLC

typy zmiennych PLC
Tabela typów zmiennych

Bool (Bit)

Najbardziej podstawowa zmienna, która może przyjmować dwie wartości: logiczne 0 lub 1. Zazwyczaj stosuje się je na przykład jako przełączniki. Dane te można zapisać jedynie w formacie binarnym.

INT8

Jest to typ danych, służący do zapisywania wartości które można przedstawić w postaci 8 bitów (1 bajtu). Można je zapisywać zarówno w formacie dziesiętnym, binarnym, jak i szesnastkowym. W systemie dziesiętnym przyjmuje wartości całkowite z przedziału od -128 do 127

UINT8

Rozwinięciem tej nazwy skróconej jest Unsigned INT8 czyli nieoznaczony INT8, co oznacza, że nie przyjmuje on wartości ujemnych. Można zapisywać go w formacie dziesiętnym, binarnym i szesnastkowym. W systemie dziesiętnym przyjmuje on wartości całkowite od 0 do 255

INT16

INT16 służy do zapisu wartości, którą da się zakodować za pomocą 16 bitów i, tak samo jak INT8, można go zapisać w formacie dziesiętnym, binarnym i szesnastkowym, a jego przedział wartości to liczby całkowite od -32768 do 32767. Należy jednak pamiętać, że jeśli wartość którą chcemy zapisać mieści się w przedziale INT o niższej ilości bitów, to dla oszczędności pamięci warto zastosować mniejszy typ danych.

UINT16 (Word)

Analogicznie do UINT8, UINT16 nie przyjmuje wartości ujemnych, a jego zakres w systemie dziesiętnym to od 0 do 65535. Można go przedstawiać w formacie dziesiętnym, szesnastkowym i binarnym.

DINT (INT32)

INT32 to typ danych zajmujący 4 bajty, a w systemie dziesiętnym możemy zapisywać wartości od -2,147,483,648 do 2,147,483,647. Można go używać w formacie binarnym, dziesiętnym, szesnastkowym oraz adresów IP.

UINT32 (DW)

Ten typ danych pozwala nam na zapisywanie wartości od 0 do 4,294,967,295. Możliwe do użycia formaty to binarny, dziesiętny, szesnastkowy, adres IP oraz HH:MM:SS.hhh – do zapisu czasu.

REAL (Float)

Zmienna Real należy do typu danych zmiennoprzecinkowych, w przeciwieństwie do zmiennych opisanych powyżej wyraża ona liczby rzeczywiste mieszczące się w zakresie ujemnym: od -3.402E37 do -1.176E-35 i dodatnim: od +1.176E-35 do +3.402E37. Tego typu zmienne można zastosować w czujnikach analogowych.

Time and Date (czas i data)

Jest to typ danych który obsługuje się za pomocą struktur. RTC Time zawiera godziny, minuty i sekundy, a RTC Date – dzień tygodnia, dzień miesiąca, miesiąc i rok. Co więcej, sterownik pobiera te dane automatycznie z zegaru systemowego.

String (Łańcuch znaków)

Ten typ danych pozwala na zapisywanie znaków w standardzie Unicode. W zależności od wybranego przez nas standardu, znaki są kodowane w sposób 7 bitowy (ASCII), 16 bitowy (UTF-16) lub 32 bitowy (UTF-32).

Struktury – typy danych definiowane przez użytkownika

Array (tablica)

Użytkownik może łączyć zmienne tego samego typu danych, które mogą być obsługiwane jako sekwencyjny blok danych. Tablica to uporządkowany zbiór komórek, gdzie każda komórka posiada własny numer wiersza i kolumny, który ją definiuje. Komórki przechowują wartości danego typu, tak jak zwykłe zmienne.

Struct

Użytkownik może łączyć różne typy zmiennych lub całe tablice w strukturę, która jest traktowana jako sekwencyjny blok danych. Struktura stanowi swego rodzaju zbiór typów danych. Użytkownik definiuje, jakie typy zmiennych wchodzą w skład struktury. Następnie może on dodawać do programu wiele instancji danej struktury – każda przechowuje swój własny zestaw wartości.

Buffers

Buffer jest tablicą bajtów, której długość może definiować użytkownik. Stosuje się go najczęściej przy komunikacji z wykorzystaniem protokołu MODBUS.

Struktury danych tworzone przez system

Struktury

Są one tworzone przez program UniLogic w momencie w którym użytkownik dołączy do układu lub programu dodatkowe I/O, Timery, regulatory PID. Każda struktura przechowuje dane opisujące pracę dołączonego elementu programu.

Buffers

Buffery także są dodawane automatycznie przez program UniLogic w momencie dodania konkretnych elementów. Ich zadaniem jest zachowywanie parametrów działania tych elementów.

Podsumowanie

W zależności od potrzeb programu należy stosować różne typy danych. Zastosowanie właściwej zmiennej jest bardzo istotne jeśli chcemy, aby program był dobrze zoptymalizowany, a dzięki temu wydajny i niezawodny.

Należy pamiętać że zmienne typu Bool (bit) stosujemy, kiedy chcemy zapisać wartości logiczne (true/false). Dlatego używamy ich przykładowo do tworzenia przełączników.

Zmienne typu Integer (INT) używamy, jeśli chcemy zapisywać wartości całkowite w danych przedziałach, na przykład do tworzenia liczników wykonanych cyklów. Należy pamiętać, aby zastosować zmienną całkowitą, której przedział zapisywanych wartości najlepiej odpowiada potrzebom danych, które chcemy w nim przechowywać. Przykładowo, zastosowanie INT16 do zapisywania danych w przedziale od 0 do 100 jest niepoprawne i jedynie niepotrzebnie zajmie pamięć sterownika.

Dane typu Real powinno się stosować przykładowo do zapisywania odczytów z czujników analogowych. Zastosowanie tego typu zmiennej pozwoli nam na dokładne zapisanie danych ze zbioru liczb rzeczywistych.

Zmienne typu String pozwalają na zapisywanie ciągu znaków. Stosuje się je na przykład w celu wyświetlania na panelu HMI informacji tekstowych o zmianie stanu urządzenia, które mają być widoczne dla operatora.

Zachęcamy do zapoznania się z pozostałymi częściami kursu Akademi PLC Elmarkdzięki którym można poznać inne istotne cechy i funkcje sterowników Unitronics:

  1. Sterowniki Unitronics serii UniStream
  2. Uruchomienie sterownika UniStream i instalacja UniLogic
  3. Konfiguracja sprzętowa sterownika Unitronics UniStream
  4. Typy danych dostępnych w sterownikach UniStream
  5. Tagi i struktury w programie UniLogic
  6. Podstawy tworzenia wizualizacji w UniLogic
  7. UniLogic prosty program przycisk + lampka
  8. Timery dostępne w UniLogic
  9. RTC w sterownikach Unistream
  10. String, czyli tekstowy typ danych
  11. DataSampling i archiwizacja danych w UniLogic
  12. I/O w sterownikach PLC UniStream
  13. Alarmy wbudowane w programie UniLogic
  14. UAC, czyli Zarządzanie uprawnieniami użytkowników
  15. Dostęp VNC do sterownika UniStream
  16. Tabele Danych w programie UniLogic
  17. Komunikacja EtherNet/IP
  18. Komunikacja ModBus RTU w UniStream
  19. Regulator PID w sterownikach UniStream
  20. Komunikacja CAN, czyli szeregowa magistrala komunikacyjna
  21. Konfiguracja Falowników w UniLogic
  22. Komunikacja za pomocą protokołu FTP
  23. Protokół MQTT w środowisku UniLogic
  24. Konfiguracja modemu 3G, wysyłanie/odbieranie SMS
  25. Bazy SQL w połączeniu z UniLogic

Wpisy wykorzystujące nabytą wiedzę w zaawansowany sposób

  1. UniStream współpracuje z bazami SQL.
  2. Sterownik PLC integruje się z systemem SCADA.
  3. UniStream działa jako serwer OPC UA.