Funkcja logiczna/skryp LUA

Programowanie i parametryzacja urządzeń systemu KNX / EIB przy pomocy programów narzędziowych.
Davideq
Posty: 8
Rejestracja: 7 maja 2017, o 07:07

Funkcja logiczna/skryp LUA

Post autor: Davideq » 1 kwie 2019, o 14:06

Witam,
W jaki najprostszy sposób zrealizować następującą funkcję: Tylko jeżeli stan na wejściu utrzymuje się odpowiednio długi, zadany czas, spowoduje to zmianę stanu na wyjściu i wysłanie elegramu.Czyli np. powyżej 15s telegram jest wysyłany, jeżeli czas jest krótszy to nic się nie dzieje. Oczywiście nie chodzi mi o opóźnienie w czasie wysłania, bo taką funkcję zrealizowałem. Mam skryp LUA, który realizuje funkcję, oprócz oczywiście uwarunkowania czasowego:

value_1 = grp.getvalue('0/6/1')
if value_1 == true then
grp.write('3/0/37', 3)
grp.write('3/0/43', 3)
else
grp.write('3/0/37', 1)
grp.write('3/0/43', 1)
end

Będę wdzięczni za każdą wskazówkę, podpowiedź.
Pozdrawiam.
Dawid

Gadgetman1
Posty: 162
Rejestracja: 19 sty 2014, o 15:10

Re: Funkcja logiczna/skryp LUA

Post autor: Gadgetman1 » 1 kwie 2019, o 21:38

Tak to wygląda w module logicznym dedykowanym funkcją logicznym w knx. Adres grupowy 1/1/0 jeżeli zmieni wartość w ciągu 10 sek na "0" to nie będzie "TRUE" na wyjściu. Chyba raczej powinieneś poszukać jakiegoś forum zajmującym się skryptem LUA.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Davideq
Posty: 8
Rejestracja: 7 maja 2017, o 07:07

Re: Funkcja logiczna/skryp LUA

Post autor: Davideq » 2 kwie 2019, o 10:31

No właśnie potrzebowałem logiczny schemat jak zrealizować taką funkcję. Dziękuję za podpowiedź. Mój oczywiście wygląda znacznie prościej.
logic.JPG
Teraz też bez problemu napiszę sobie to w LUA.
Dziękuję za pomoc.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Gadgetman1
Posty: 162
Rejestracja: 19 sty 2014, o 15:10

Re: Funkcja logiczna/skryp LUA

Post autor: Gadgetman1 » 2 kwie 2019, o 11:11

No tak ale u mnie funkcja delay i staircase to są 2 różne działania. Po wywołaniu przez telegram funkcji "delay" akcja jest po określonym czasie jeżeli ten sam telegram przed upływem czasu wyśle "0" czyli false zegar restartuje i ponownie odlicza czyli zawsze będzie "true" na wyjściu.A jak u ciebie? Funkcja staircase wysyła telegram od razu" 1" czyli true ,jeżeli przed upływem czasu otrzyma telegram "0" to zegar zatrzymuje się i na wyjściu otrzymujesz "0" więc dlatego obiektem blokującym "gate" jest ten sam adres grupowy tylko z innym czasem wyjściowym.

ODPOWIEDZ