Strefa OMSI

Pełna wersja: Co zrobić aby przełącznik stał się monostabilny
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam.Przepraszam za nazwę tematu, ale nie wiem jak to ująć.Mianowicie pracuję nad mini panelem z przyciskami do omsi.Chciałbym, aby np grzejniki załączało się takim przyciskiem kołyskowym, czyli takim jak np w przedłużaczu.Jednak gdy zrobię to w omsi, to żeby wyłączyć ten przycisk muszę nim wrócić do pozycji wyłączonej i znowu dać go na włączoną.Dopiero wtedy grzejniki się wyłącza.Chciałbym aby ten przycisk działał w autobusie tak, że jest wciśniety dopóki go trzymamy myszką, czyli tak jak np przycisk w ng272 który robi coś tam przy przegubie.Jest on wciśnięty dopóki go trzymamy myszką, a gdy go puścimy to wraca do pozycji wyłączonej.Chciałbym tak przerobić resztę przycisków, ale jednak nie bardzo wiem jak to zrobić
Sam to kiedyś rozgryzałem. To, czego potrzebujesz definiuje się w skrypcie w miejscu, gdzie jest skrypt funkcji, za którą odpowiada ten przycisk.

Z tego, co pamiętam,to zwykły skrypt zaczynamy od (L.L.XxxxxxYyyyyy), potem dajemy {if} i budujemy resztę. Ja taki efekt, kjak opisujesz osiągnąłem zaczynając skrypt od podwojonej pierwszej komendy oddzielonej wykrzyknikiem:

(L.L.XxxxxxYyyyyy) ! (L.L.XxxxxxYyyyyy)

To wszystko zależy od tego, jak sformułowany jest skrypt, więc nie zawsze to musi działać. Żeby zrozumieć ogikę, proponuję odszukać w skrypcie drzwi funkcję odpowiadającą za przyciski drzwi, powinno się to zaczynać tak:

(L.L.doorx) ! (L.L.doorx)

Ja się w ten sposób uczyłem, więc może i Tobie coś to pomoże.
W odskakujacych przyciskach jest zawsze komenda trigger:xxx_off czyli akcja jaka się dzieje po puszczeniu przycisku. Usunąć to i dodać to co napisał Madez to powinno chulać.
Dzieki za pomoc.W prawdzie w modelu który przygotowuje pod panel robi się to inaczej to i tak dzięki.Większość przełączników poszła jak spłatka.Ogarnąłem że trzeba je pisać w taki sposób (tutaj przycisk do załączania maksymalnego nawiewu)
{trigger:cp_luefter_max_toggle}
1 (S.L.cp_luefter_max) s1
(M.L.kippschaltersound)
{end}
{trigger:cp_luefter_max_toggle_off}
0 (S.L.cp_luefter_max) s1
(M.L.kippschaltersound)
{end}

MAm tez problem z wentylatorami.Otoz wyglada to tak ze mamy 3 pozycyjny przelacznik.Jest 0 1 2.Dziala to tak ze po nacisnieciu przycisku myszka zalacza się 1 bieg a po drugim nacisnieciu 2 bieg a po trzecim powraca do pozycji 0.I tu pytanie-czy da się to rozdzielic tak zeby bieg 1 i 2 mozna bylo wlaczac oddzielnymi przyciskami?Czy za duzo z tym kombinowania?Nizej podaje skrypt tego przycisku
{trigger:cp_heizluefter_toggle}
(L.L.cp_heizluefter_sw) 0.4 + (S.L.cp_heizluefter_sw) s1
(L.L.cp_heizluefter_sw) 0.4 >
{if}
-0.4 (S.L.cp_heizluefter_sw) s1
{endif}
(L.L.cp_heizluefter_sw) 0.4 =
{if}
1 (S.L.cp_heizluefter_sw) s1
{endif}
' (L.L.cp_heizluefter_sw) ! (S.L.cp_heizluefter_sw) s1
(M.L.kippschaltersound)
{end}
{trigger:cp_luefter_max_toggle}
(L.L.cp_luefter_max) ! (S.L.cp_luefter_max) s1
(M.L.kippschaltersound)
{end}
Na razie umiem to zrobic tak zebym mogl albo wlaczac tylko pozycje 1 albo pozycje 2, ale nie potrafie tego rozdzielic na 2 inne przyciski.Dodam ze model na ktorym to robie to O407 Perotinusa
edit//poradzilem juz sobie z elektryka.Pozostaje kwestia anwiewu.Wydaje mi sie ze trzeba przypisac nowy przycisk ale nie za bardzo wiem jak to zrobic
Przekierowanie