const
Opis
Bloczek const przechowuje jedną stałą wartość i wysyła ją na swoje wyjście, gdy zostanie wyzwolony zdarzeniem wejściowym albo odpowiednią komendą z bloczka command.
Bloczek posiada jedno wejście i jedno wyjście. Nie wymaga stosowania wejść oznaczanych za pomocą bloczka tag.
Stała wartość może mieć typ:
- logiczny
- liczbowy
- tekstowy
Jeśli do wejścia bloczka nie jest podłączone żadne inne źródło, to po uruchomieniu projektu bloczek sam wysyła skonfigurowaną wartość jeden raz.
Parametry konfiguracyjne
| Nazwa parametru | Wartość |
|---|---|
Zbocze wyzwalające (input_edge) |
Parametr obowiązkowy określający, jakie zwykłe zdarzenie wejściowe ma powodować ponowne wysłanie stałej wartości. Obsługiwane są wartości: rising, falling, both, true, false, null, none. |
Typ wartości (value_type) |
Parametr obowiązkowy określający typ stałej wartości. Obsługiwane są wartości: bool, num, str. |
Wartość (value) |
Parametr obowiązkowy określający samą stałą wartość wysyłaną na wyjście. Sposób interpretacji zależy od value_type. |
Znaczenie parametru input_edge:
rising: reakcja na zmianę interpretowaną jakofalse -> truefalling: reakcja na zmianę interpretowaną jakotrue -> falseboth: reakcja na każdą zmianę pomiędzy stanami logicznymitrue: reakcja na każde zdarzenie wejściowe, którego nowa wartość daje się zinterpretować jako logiczne truefalse: reakcja na każde zdarzenie wejściowe, którego nowa wartość daje się zinterpretować jako logiczne falsenull: reakcja na każde zdarzenie wejściowe, którego nowa wartość tonullnone: brak reakcji na zwykłe zdarzenia wejściowe
Znaczenie parametru value_type:
bool: bloczek przechowuje wartość logicznątruealbofalsenum: bloczek przechowuje wartość liczbową; dozwolone są liczby całkowite, liczby zmiennoprzecinkowe, temperatura oraz procentstr: bloczek przechowuje wartość tekstową
Obsługa wejścia
Bloczek reaguje na zwykłe zdarzenia doprowadzone do jego jedynego wejścia oraz na komendy set i reset wysyłane z bloczka command.
Bloczek nie wymaga żadnych wejść typu tag.
Szczegółowe zasady działania:
- jeśli do wejścia nie jest podłączony żaden inny bloczek, to po zakończeniu inicjalizacji
constsam wyśle skonfigurowaną wartość - zwykłe zdarzenie wejściowe spełniające warunek z
input_edgepowoduje ponowne wysłanie skonfigurowanej wartości - dla
input_edge = nonewszystkie zwykłe zdarzenia wejściowe są ignorowane - komenda
setz bloczkacommandpowoduje ponowne wysłanie skonfigurowanej wartości niezależnie od parametruinput_edge - komenda
resetz bloczkacommandpowoduje wysłanie na wyjście wartościnulltego samego typu co skonfigurowana wartość - po komendzie
resetkolejna komendasetalbo kolejne poprawne wyzwolenie wejściowe ponownie wyśle skonfigurowaną wartość
Dodatkowe zasady interpretacji wejścia:
- dla
rising,fallingibothbloczek wymaga wartości, które dają się zinterpretować logicznie - dla
trueifalsebloczek reaguje na każde zdarzenie wejściowe z nową wartością interpretowaną odpowiednio jako true albo false, nawet jeśli poprzednia wartość była taka sama - dla
nullbloczek reaguje wyłącznie na zdarzenia wejściowe, w których nowa wartość jestnull
Wyjścia bloczka
Bloczek posiada jedno wyjście.
Na wyjściu pojawia się zawsze wartość skonfigurowana w parametrach bloczka, chyba że bloczek otrzyma komendę reset, która wysyła wartość null.
Sposób emisji zależy od typu skonfigurowanej wartości:
- dla
value_type = strkażda emisja ma postać zmianynull -> tekst - dla
value_type = numkażda emisja ma postać zmianynull -> liczba - dla
value_type = boolkażda emisja ma postać zmiany z przeciwnego stanu logicznego na wartość skonfigurowaną, czylifalse -> truealbotrue -> false
Opis widoczny pod bloczkiem pokazuje aktualnie przygotowaną do wysłania wartość w postaci tekstowej, na przykład:
truefalse2521.5°Chello
Po komendzie reset opis bloczka zmienia się na null. Po kolejnym wysłaniu skonfigurowanej wartości opis wraca do jej tekstowej reprezentacji.
Błędy zwracane przez bloczek
Bloczek może zwracać następujące błędy:
| Kod błędu | Opis błędu |
|---|---|
Invalid input edge configuration. |
Parametr input_edge jest niepoprawny albo nie został ustawiony. |
Missing value type configuration. |
W konfiguracji brakuje parametru value_type. |
Invalid value type configuration. |
Parametr value_type ma wartość spoza obsługiwanej listy bool, num, str. |
Missing value configuration. |
W konfiguracji brakuje parametru value. |
Invalid value configuration. |
Parametr value ma niepoprawną postać dla wybranego typu wartości. Dotyczy to między innymi przypadku, gdy dla bool podano wartość inną niż true albo false, albo gdy dla num nie udało się odczytać poprawnej wartości liczbowej. |
Expected numeric value configuration. |
Parametr value_type ustawiono na num, ale parametr value nie zawiera wartości liczbowej. |
Set description failed. |
Bloczek nie potrafi przygotować tekstowego opisu skonfigurowanej wartości. Jest to błąd wewnętrzny i oznacza, że wartość nie może zostać poprawnie pokazana w opisie bloczka. |
Przykłady działania
- Jeśli
value_type = str,value = helloi do wejścia nie jest podłączony żaden inny bloczek, to po uruchomieniu projektuconstsam wyśle na wyjście wartośćhello. - Jeśli
value_type = num,value = 21.5°Ciinput_edge = rising, to każde zbocze narastające na wejściu spowoduje wysłanie na wyjście wartości21.5°C. - Jeśli
value_type = bool,value = true, to komendasetz bloczkacommandspowoduje wysłanie zmianyfalse -> true, niezależnie od ustawieniainput_edge. - Jeśli
value_type = bool,value = false, to każde poprawne wyzwolenie spowoduje wysłanie zmianytrue -> false. - Jeśli bloczek otrzyma komendę
reset, na wyjściu pojawi sięnull, a opis bloczka zmieni się nanull.