Skip to content

and

Opis

Bloczek and realizuje logiczny iloczyn wielu sygnałów wejściowych typu bool. Na wyjściu zwraca true tylko wtedy, gdy aktualnie odebrana wartość wejściowa ma wartość logiczną true oraz wszystkie pozostałe podłączone wejścia mają ostatnią znaną wartość logiczną true. W każdym innym przypadku zwraca false.

Bloczek posiada jedno wyjście i dopuszcza wiele połączeń do swojego wejścia. Nie wymaga stosowania wejść oznaczanych za pomocą bloczka tag.

Bloczek analizuje bieżącą odebraną zmianę oraz ostatnie zapamiętane wartości pozostałych podłączonych wejść. Dzięki temu wynik odpowiada logicznej operacji AND wykonanej na aktualnie znanych stanach wszystkich wejść.

Parametry konfiguracyjne

Nazwa parametru Wartość
Blokuj powtarzające się wartości (filter_duplicated_values) Obowiązkowa wartość logiczna true albo false. Gdy ustawione jest true, bloczek nie wyśle ponownie wyniku identycznego z ostatnio wyemitowanym. Gdy ustawione jest false, każda ponowna kalkulacja wyniku zostanie wysłana na wyjście, nawet jeśli wynik nie zmienił się względem poprzedniego.

Obsługa wejścia

Bloczek dopuszcza wiele połączeń do jedynego wejścia.

Każda nowa zmiana wejściowa powoduje przeliczenie wyniku według następujących zasad:

  • jeśli właśnie odebrana wartość nie jest logicznym true, bloczek natychmiast wyśle false
  • jeśli właśnie odebrana wartość ma wartość logiczną true, bloczek sprawdzi ostatnie znane wartości wszystkich pozostałych podłączonych wejść
  • jeśli choć jedno z tych pozostałych wejść nie ma ostatniej wartości logicznej true, na wyjściu pojawi się false
  • jeśli wszystkie podłączone wejścia mają ostatnią znaną wartość logiczną true, na wyjściu pojawi się true

Bloczek reaguje wyłącznie na wartości logiczne true jako warunek ustawienia wyniku na true. Wartości false, null oraz wartości innych typów nie spełniają tego warunku i są traktowane jak brak stanu true na danym wejściu.

Przypadki ignorowane:

  • ponowne wyliczenie tego samego wyniku, gdy filter_duplicated_values = true

Wyjścia bloczka

Bloczek posiada jedno wyjście.

Na wyjściu pojawia się wartość logiczna:

  • true gdy aktualnie odebrana wartość oraz ostatnie znane wartości wszystkich pozostałych wejść mają wartość logiczną true
  • false gdy choć jedno wejście nie ma wartości logicznej true

Opis widoczny pod bloczkiem odzwierciedla ostatnio wyliczony wynik:

  • null przed pierwszym przeliczeniem wyniku
  • true gdy ostatni wyliczony wynik miał wartość logiczną true
  • false gdy ostatni wyliczony wynik miał wartość logiczną false

Błędy widoczne dla użytkownika

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

Kod błędu Opis błędu
Missing filter_duplicated_values configuration. W konfiguracji brakuje parametru filter_duplicated_values albo parametr nie może zostać odczytany jako wartość logiczna.
Input disconnected. Do wejścia bloczka nie podłączono żadnego innego bloczka.

Przykłady działania

  • Jeśli do bloczka podłączone są trzy wejścia i ich ostatnie znane wartości to odpowiednio true, true, true, to na wyjściu pojawi się true.
  • Jeśli do bloczka podłączone są trzy wejścia i jedna z wartości zmieni się na false, to na wyjściu pojawi się false.
  • Jeśli aktualnie odebrana zmiana ma wartość true, ale jedno z pozostałych wejść nie wysłało jeszcze wartości logicznej true, to na wyjściu pojawi się false.
  • Jeśli jedno z wejść prześle liczbę, tekst albo null, to takie wejście nie spełni warunku logicznego true, więc na wyjściu pojawi się false.
  • Jeśli filter_duplicated_values = true i kolejne zmiany wejściowe nadal prowadzą do wyniku true, bloczek nie wyśle ponownie wartości true.
  • Jeśli filter_duplicated_values = false i kolejne zmiany wejściowe nadal prowadzą do wyniku true, bloczek będzie ponownie wysyłał wartość true po każdej takiej zmianie.