Skip to content

variable

Opis

Bloczek variable służy do współdzielenia jednej wartości pomiędzy wieloma miejscami projektu logiki. Wszystkie instancje bloczka skonfigurowane z tą samą nazwą zmiennej odnoszą się do tej samej wspólnej wartości.

Bloczek posiada jedno wejście i jedno wyjście. Nie wymaga stosowania wejść oznaczanych za pomocą bloczka tag. Każda zmiana odebrana na wejściu dowolnej instancji variable jest natychmiast przekazywana na wyjście wszystkich instancji korzystających z tej samej nazwy zmiennej.

Wartość zmiennej nie jest zapisywana trwale. Po ponownym uruchomieniu projektu zmienna wraca do stanu null i pozostaje w nim do chwili otrzymania pierwszej nowej wartości.

Parametry konfiguracyjne

Nazwa parametru Wartość
name Obowiązkowa nazwa zmiennej współdzielonej przez bloczki variable. Nazwa musi mieć od 1 do 25 znaków, może zawierać wyłącznie litery ASCII, cyfry oraz znak _, a jej pierwszy znak nie może być cyfrą.

Obsługa wejścia

Bloczek akceptuje każdą zmianę przesłaną na swoje jedyne wejście. Obsługiwane są wszystkie typy wartości logicznych używane w projekcie, między innymi:

  • null
  • wartości logiczne true i false
  • liczby całkowite
  • liczby zmiennoprzecinkowe
  • tekst

Po odebraniu nowej wartości bloczek:

  • zapisuje ją jako aktualną wartość zmiennej o nazwie wskazanej w parametrze name
  • przekazuje tę samą zmianę na wyjście wszystkich bloczków variable używających tej samej nazwy zmiennej
  • aktualizuje opis widoczny pod bloczkiem

Bloczek nie wymaga żadnych wejść typu tag i nie narzuca ograniczeń co do typu przesyłanej wartości.

Wyjście bloczka

Bloczek posiada jedno wyjście. Na wyjściu pojawia się każda nowa wartość zapisana do współdzielonej zmiennej o danej nazwie, niezależnie od tego, przez którą instancję variable została ona wprowadzona.

Opis widoczny pod bloczkiem pokazuje:

  • liczbę aktywnych instancji bloczka variable używających tej samej nazwy zmiennej
  • aktualną wartość zmiennej w postaci tekstowej

Przykładowe opisy:

  • 1: null oznacza jedną instancję tej zmiennej i brak zapisanej wartości
  • 3: true oznacza trzy instancje tej samej zmiennej oraz aktualną wartość logiczną true
  • 2: 21.5°C oznacza dwie instancje tej samej zmiennej oraz aktualną wartość liczbową

Błędy widoczne dla użytkownika

Bloczek może pokazywać następujące komunikaty błędów:

Kod błędu Opis błędu
Variable name configuration error. W konfiguracji brakuje parametru name, parametr jest pusty albo nie ma postaci tekstowej.
Invalid variable name. Nazwa zmiennej nie spełnia wymagań: ma długość spoza zakresu 1-25, zawiera niedozwolone znaki albo zaczyna się od cyfry.

Przykłady działania

  • Jeśli dwa bloczki variable mają parametr name = living_room_mode, to wpisanie wartości true na wejście pierwszego z nich spowoduje pojawienie się wartości true na wyjściu obu tych bloczków.
  • Jeśli jeden bloczek variable o nazwie target_temp otrzyma wartość 21.5, to każdy inny bloczek variable o nazwie target_temp od razu zacznie udostępniać tę samą wartość.
  • Jeśli bloczek variable o nazwie scene_name otrzyma tekst evening, to pod wszystkimi bloczkami tej zmiennej pojawi się opis zawierający wartość evening.
  • Po ponownym uruchomieniu projektu wartość zmiennej alarm_state nie zostanie zachowana. Do momentu zapisania nowej wartości opis bloczka będzie wskazywał stan null.