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
trueifalse - 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
variableuż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
variableużywających tej samej nazwy zmiennej - aktualną wartość zmiennej w postaci tekstowej
Przykładowe opisy:
1: nulloznacza jedną instancję tej zmiennej i brak zapisanej wartości3: trueoznacza trzy instancje tej samej zmiennej oraz aktualną wartość logicznątrue2: 21.5°Coznacza 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
variablemają parametrname = living_room_mode, to wpisanie wartościtruena wejście pierwszego z nich spowoduje pojawienie się wartościtruena wyjściu obu tych bloczków. - Jeśli jeden bloczek
variableo nazwietarget_tempotrzyma wartość21.5, to każdy inny bloczekvariableo nazwietarget_tempod razu zacznie udostępniać tę samą wartość. - Jeśli bloczek
variableo nazwiescene_nameotrzyma tekstevening, to pod wszystkimi bloczkami tej zmiennej pojawi się opis zawierający wartośćevening. - Po ponownym uruchomieniu projektu wartość zmiennej
alarm_statenie zostanie zachowana. Do momentu zapisania nowej wartości opis bloczka będzie wskazywał stannull.