Tabele Danych w programie UniLogic

Tycjan Kołecki Akademia Unitronics
AkademiaTemple16

Tabele Danych w programie UniLogic są bardzo wydajnym i pomocnym obiektem przeznaczonym do organizacji danych.

Tabele danych (w programie UniLogic Data Table) są pomocną strukturą, która pozwala przede wszystkim na:

  • Organizowanie i manipulowanie danymi za pomocą funkcji Ladder
  • Tworzenie Data Logs
  • Tworzenie i przenoszenie Receptur
  • Importowanie danych z arkusza kalkulacyjnego (np. Excel)
  • Pozwala użytkownikowi modyfikować dane za pośrednictwem widgetu na panelu HMI

Uwaga: Kiedy tworzysz Data Table musisz zdefiniować jej strukturę przez Properties Windows. UniLogic automatyczne wygeneruje strukturę dla każdej tabeli. Każda z typów Data Table posiada nieco inne funkcje struktury, ponieważ służą do różnych zastosowań.

Tworzenie Data Table

W drzewie programu wybieramy opcje Data Table, klikamy Add Table. Następnie klikając doskonale znanego nam „Zielonego plusa” dodajemy nową tabelę.

Dodawanie Data Table

Następie uzupełniamy Properties Window. Określamy nazwę, typ (więcej o typach w dalszej części artykułu), liczbę rzędów i strukturę.

Properties Window tabeli danych
  • Data Table Name – Nazwa tabeli, pojawia się w Global Tags
  • Data Table Type – wybór typu tabeli FIFO, LIFO, Indexed
  • Retained (Przechowywanie) – pozwala na awaryjny zapis danych w razie nagłego utracenia zasilania przez sterownik
  • Rows – liczba rzędów tabeli
  • Struct – Struktura Tabeli Danych

Gdy w kolumnach wybierzemy typ Float (liczby zmiennoprzecinkowe, więcej dowiesz się tu) musimy określić liczbę miejsc po przecinku która będzie zapisywana w tabeli.

Wprowadzanie i edycja w tabelach danych

Środowisko UniLogic pozwala na wprowadzanie i/lub edycje wartości tabel danych na kilka sposobów:

Za pomocą UniLogic

Klikamy na komórkę (ang. cell) którą chcemy zmienić, a następnie modyfikujemy jej wartość, nazwę itp.

Tabele Danych w programie UniLogic 7
Modyfikacja nazwy komórki

Możemy również wprowadzić wartość do komórki gdy sterownik jest podłączony do PC a program znajduje się w trybie Online.

Tabele Danych w programie UniLogic 6
Modyfikacja wartości komórki

Przechodzimy do zakładki Online, wybieramy interesującą nas komórkę i klikamy, żeby zmienić jej wartość.

Za pomocą funkcji Ladder

Funkcje drabinkowe (LD) pozwalają na za zapis struktury w wybrany przez nas rząd tabeli lub nadpisanie dowolnej wartości w rzędzie.

Tabele Danych w programie UniLogic 4
Funkcja Ladder Data Table
  • A – (Data Table Destination) podpinamy adres Tabeli, którą chcemy modyfikować.
  • B – (Struct: Source) Wybieramy źródło struktury, którą chcemy zapisać/nadpisać w rzędzie. Przykładowo, możemy umieścić tutaj strukturę próbkowania Data Samplera.
  • C – (Row Number: Write Destination) – wybieramy rząd który chcemy nadpisać/zapisać.

Uwaga, powyższy blok stosujemy dla wszyskich rodzajów Data Table

Rodzaje Data Table

Omówimy teraz podstawowe typy Tabel, które z pewnością będą często wykorzystywane przez programistę pracującego w UniLogic.

FIFO (kolejkowanie)

Tabla FIFO zgodnie z nazwą pracuje według zasady First-in-first-out (Pierwszy wchodzi – pierwszy wychodzi). Oznacza to, że dane które zostały wcześniej wprowadzone do tablicy są procesowane w pierwszej kolejności.

Struktura Tabeli FIFO:

  • Number of Occupied Rows (UNIT32) – określa liczbę rzędów kolumny, które są zajęte przez dane.
  • Number of Rows (UNIT32) – liczba rzędów w tabeli
  • Status (INT8) – pozwala na odczytanie stanu tabeli (0=brak błędów, -1=full, -2=empty)
  • Is Full/Is Empty (BIT) – sygnalizuje stan tabeli (pusta/nie pusta, pełna/nie pełna)
Tabele Danych w programie UniLogic 3
Data Table Tagi

LIFO (pozycjonowanie)

Tabela LIFO działa według zasady last-in-first-out – (ostatni wchodzi – pierwszy wychodzi). W swoim zamyśle, ta tabela jest podobna do magazynu spożywczego, w którym jako pierwsze wychodzą produkty o najkrótszym terminie przydatności. Możemy wiec powiedzieć, że LIFO operuje na najwyższych rzędach tablic.

Struktura Tabeli LIFO jest identyczna jak FIFO

Funkcje LIFO

Układ tabeli LIFO możemy modyfikować za pomocą prostych funkcji wbudowanych w utworzoną strukturę.

  • Push LIFO – (write) – zapisanie wartości do najwyższego rzędu tabeli
  • Pop LIFO – (delete) – usunięcie wartości z najwyższego rzędu tabeli
  • Top LIFO – (move) – kopiuje wartość z najwyższego rzędu i zapisuje do struktury.
  • Clear LIFO – (clear) – czyści całą tabelę LIFO
Tabele Danych w programie UniLogic
Graf przedstawiający zasady działania Tabeli LIFO

Struktura Indexed (Indeksowanie)

Ostatnią omówioną przez nas strukturą będzie Indexed (indeksowanie, a właściwie „zaindeksowany’). Cechą tej struktury jest to, że możemy dowolnie adresować dane do wierszy. Ponadto, za pomocą DTI (Data Table Indexed) możemy importować wartość pochodzące ze źródeł zewnętrznych.

Import danych zewnętrznych do DTI

Do struktury Indexed możemy dodać każdy plik z rozszerzeniem .udtf, który znajduje się na wbudowanej karcie SD. Ponieważ, jest to nieco bardziej skomplikowane niż FIFO i LIFO, omówmy wszystkie złącza bloku LD.

Importowanie wyników z pliku zewnętrznego do Data Table za pośrednictwem Ladder.

Wybieramy z listy blok „Load DTI from SD„, a następnie, podobnie jak w przypadku „Write Row To Data Table” dodajemy odpowiednie parametry.

  • A – Data Table Destination – wybieramy tutaj do której tabeli chcemy zapisać dane.
  • B – Start Row Number Destination – wybieramy od którego rzędu chcemy rozpocząć wstawianie.
  • C – Source File Name – wpisujemy nazwę pliku z którego chcemy zaimportować dane
  • D – Start Row in Source File – wybieramy od którego rzędu chcemy zacząć importować dane z pliku SD
  • E – Number of Rows to Load – liczba rzędów które chcemy zaimportować
  • F – Status – jest przypisany przez system jako tag błędów

Podsumowanie

Tabele Danych w programie UniLogic to z pewnością potężne narzędzie pozwalające na szybki import dużych ilości wcześniej przygotowanych przez nas danych. Poza importem danych, tabele są wykorzystywane przede wszystkim do archiwizacji danych Data Samplerów (opisanych w 11. części Akademii PLC). Tabele danych poznamy dokładniej przy wykonywaniu projektu końcowego, ponieważ będzie ich wymagał zapis danych z falownika.

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.