Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Funkcja czasu
#1
Witam,

Zaczynam dopiero przygodę z Lankontrolerem.
Pobieżnie przejrzałem możliwości i instrukcję ale nie doszukałem się prostej funkcji czasowej (jest opóźnienie reakcji, ale mnie chodzi o coś innego).
Przykład: chcę sterować podlewaniem ogródka. Funkcja schedule to jasna sprawa. Chciałbym jednak też, aby domownicy mogli w prosty sposób wyzwalać podlewanie na żądanie, operując jedynie dwoma przyciskami "włącz" i "wyłącz".
Idea jest taka, żeby lankontroler realizował dwie funkcje zależne od czasu:
- po uzyskaniu na wejściu sygnału "włącz", aby wyjście utrzymywało stan "on" przez zdefiniowany czas np 1 minutę po czym się wyłączało
- przytrzymanie przycisku "włącz" przez 3 sekundy, aby włączało zraszanie bezterminowo (lub do zakończenia niezależnego programu zraszania ustawionego w schedule)
W jaki sposób można to zrealizować?

Ponadto, z racji ograniczonej liczby przewodów chciałbym aby przyciski włącz i wyłącz były obsługiwane przez wejście analogowe z pomiarem napięcia
- przyciśnięcie przycisku "włącz" posysłałoby na wejście napięcie wyższe
- przyciśnięcie przycisku "wyłącz" posyłałoby na wejście napięcie niższe
(czyli prosty pomiar napięcia i jego wysokość realizowana jakimś opornikiem wpiętym szeregowo pod przycisk "wyłącz").
Zależy mi na tym, by przycisk "wyłącz" nie był tylko przerwaniem obwodu dla przycisku "włącz", ale by mógł także aktywnie być sygnałem do zatrzymania zraszania dla programu schedule. Cel - możliwość awaryjnego zatrzymania zraszania, gdy w ogrodzie są osoby, lub przez przytrzymanie przycisku "wyłącz" (czyli występowanie warunku na wejściu przez określony czas) zatrzymanie najbliższego zaplanowanego zraszania.

Czy jest to możliwe z obecną wersją oprogramowania?

Pozdrawiam,
Wojtek
Odpowiedz
#2
Wojtek post_id=12664 time=1502959760 user_id=5990 napisał(a):Idea jest taka, żeby lankontroler realizował dwie funkcje zależne od czasu:
- po uzyskaniu na wejściu sygnału "włącz", aby wyjście utrzymywało stan "on" przez zdefiniowany czas np 1 minutę po czym się wyłączało
wystarczy przy danym wyjsciu ustawic wartośc reset time

Wojtek post_id=12664 time=1502959760 user_id=5990 napisał(a):- przytrzymanie przycisku "włącz" przez 3 sekundy, aby włączało zraszanie bezterminowo (lub do zakończenia niezależnego programu zraszania ustawionego w schedule)
takiej mozliwosci narazie nie ma

Wojtek post_id=12664 time=1502959760 user_id=5990 napisał(a):Ponadto, z racji ograniczonej liczby przewodów chciałbym aby przyciski włącz i wyłącz były obsługiwane przez wejście analogowe z pomiarem napięcia
- przyciśnięcie przycisku "włącz" posysłałoby na wejście napięcie wyższe
- przyciśnięcie przycisku "wyłącz" posyłałoby na wejście napięcie niższe
(czyli prosty pomiar napięcia i jego wysokość realizowana jakimś opornikiem wpiętym szeregowo pod przycisk "wyłącz").
Zależy mi na tym, by przycisk "wyłącz" nie był tylko przerwaniem obwodu dla przycisku "włącz", ale by mógł także aktywnie być sygnałem do zatrzymania zraszania dla programu schedule. Cel - możliwość awaryjnego zatrzymania zraszania, gdy w ogrodzie są osoby, lub przez przytrzymanie przycisku "wyłącz" (czyli występowanie warunku na wejściu przez określony czas) zatrzymanie najbliższego zaplanowanego zraszania.

Czy jest to możliwe z obecną wersją oprogramowania?
Załaczanie wyjscia po pomiarze napiecia jest mozliwe, ale musial byś dołozyć dzielnik rezystorowy po dany przycisk.
Jesli scheduler załaczył zraszanie to mozna je wyłaczyć innym zdarzeniem (przycik, pomiar napiecia), jednak mozliwosci zaplanowaego zraszania narazie nie ma, mozna jedynie ustawić zdrzenie z opcja pernamentne i jesi bedzie aktywne (bo np ktos wcisnal przycisk) to scheduler i tak nie uruchomi wyjscia bo zdarzenie pernamentne aktywne bedzie odrazu wyłaczało to wyjscie
pozdrawiam
tomek
Odpowiedz
#3
Reset time ma wpływ na wyjście. Gdybym miał dwa przyciski - zraszanie krótkie i zraszanie długie, to miałbym tylko jeden reset time. Wydaje mi się, że w kontrolerach jest osobny wirtualny obiekt stopera, który można zadeklarować osobno dla każdego wejścia czy zdarzenia.

Zdarzenia w LK3, z tego co widzę, mogą wywołać tylko stan "1" na danym wyjściu, a gdyby dało się wywołać stan "0", to już byłbym bliżej do wyłączania zraszania.

A co do pomiaru napięcia - czy można stosować więcej niż jeden próg? Np różne reakcje dla 5-ciu różnych stanów?
Odpowiedz
#4
Potrzebuję do sterownika nawilżacza funkcję czasu, właściwie opóźnienie wyłączenia wyjścia.
Aktualna konfiguracja
H1 czujnik wilgotności
INP1D czujnik napełniania pływak
OUT0 nawilżacz
OUT1 elektrozawór napełnianie
If H1 < 55 (histeresis 1) THEN OUT0 = 1
If OUT0 = 1 AND INP1D = 1 THEN OUT1 = 1

Problemem jest to, że wejścia cyfrowe nie mają histerezy, bo wiadomo jak to działa. Jeśli pływak jest na granicy to pstyka elektrozaworem, OUT0 =1 a INP1D przeskakuje z 0 na 1 i z powrotem. Żeby ten problem wyeliminować chciałbym zrobić opóźnienie wyłączenia wyjścia sterowalnego, np. 5sekund.

Dodatkowym problemem jest to, że po wpisaniu event H1 np. 55 w liście na dole pojawia się prawidłowo od wejścia H1, ale po ponownym zalogowaniu się do LK3 w event jest już wpis undefined zamiast H1 i 55 zmienia się w 5500, przydałoby się również zmiana event, w tej chwili nic nie mogę zmienić, muszę usunąć zdarzenie i dodać na nowo takie jakie chcę.

Jeszcze jedna kwestia, jak zrobić możliwość ustawiania poziomu wilgotności (to samo może tyczyć się temperatury). Podłączę wyświetlacz i chcę za pomocą przycisku zmieniać poziom żądanej wilgotności + i - wystarczy, da się ogarnąć ?
Odpowiedz
#5
oktawian post_id=13953 time=1510144968 user_id=5885 napisał(a):Problemem jest to, że wejścia cyfrowe nie mają histerezy, bo wiadomo jak to działa. Jeśli pływak jest na granicy to pstyka elektrozaworem, OUT0 =1 a INP1D przeskakuje z 0 na 1 i z powrotem. Żeby ten problem wyeliminować chciałbym zrobić opóźnienie wyłączenia wyjścia sterowalnego, np. 5sekund.

MOżesz pokombinować z wejsciem INPD i praca bistabilną, jest tam opcja opoznienia, ale w Twoim przypdaku chyba nic to nie da.
MOże poszukaj takiego pływaka z bardziej stabilna krańcówką, niewrażliwa na małe zmiany

oktawian post_id=13953 time=1510144968 user_id=5885 napisał(a):Dodatkowym problemem jest to, że po wpisaniu event H1 np. 55 w liście na dole pojawia się prawidłowo od wejścia H1, ale po ponownym zalogowaniu się do LK3 w event jest już wpis undefined zamiast H1 i 55 zmienia się w 5500, przydałoby się również zmiana event, w tej chwili nic nie mogę zmienić, muszę usunąć zdarzenie i dodać na nowo takie jakie chcę.

ten problem znamy i bedzie poprawiony

oktawian post_id=13953 time=1510144968 user_id=5885 napisał(a):Jeszcze jedna kwestia, jak zrobić możliwość ustawiania poziomu wilgotności (to samo może tyczyć się temperatury). Podłączę wyświetlacz i chcę za pomocą przycisku zmieniać poziom żądanej wilgotności + i - wystarczy, da się ogarnąć ?

Nowa funkcjonalnosć, trudno powiedziecczy bedzie dodana taka opcja
pozdrawiam
tomek
Odpowiedz
#6
Udało się ogarnąć to funkcją BI INPD, zrobiłem opóźnienie i jest ok. Zalogowałem się do panelu LK2, była tam histereza wyjść. Jakby to wróciło w LK3 byłoby super.

Właściwie to będzie mi do szczęścia brakować tylko zmiany poziomu wilgotności z poziomu panela przycisków +/-, przycisków, jakaś inkrementacja/dekrementacja.
Odpowiedz
#7
Jednak nie jest ok.... koniecznie niezbędne mi jest ustawienie zwłoki zadziałania wyjścia. Będę potrzebował około 20sztuk lankontrolerów miesięcznie jeśli zadziała tak jak potrzebuję.
Czyli chociaż opcje ze starej wersji v2
Odpowiedz
#8
oktawian post_id=14024 time=1510756132 user_id=5885 napisał(a):Jednak nie jest ok.... koniecznie niezbędne mi jest ustawienie zwłoki zadziałania wyjścia. Będę potrzebował około 20sztuk lankontrolerów miesięcznie jeśli zadziała tak jak potrzebuję.
Czyli chociaż opcje ze starej wersji v2

Tak myslalem ze na tych wejsciach sie nie da, dorobimy taka opcje jak w LK2
pozdrawiam
tomek
Odpowiedz
#9
Wojtek post_id=13138 time=1504379717 user_id=5990 napisał(a):Zdarzenia w LK3, z tego co widzę, mogą wywołać tylko stan "1" na danym wyjściu, a gdyby dało się wywołać stan "0", to już byłbym bliżej do wyłączania zraszania.
MOgą wywoałc stan 1 lub 0 to sie ustawia

Wojtek post_id=13138 time=1504379717 user_id=5990 napisał(a):A co do pomiaru napięcia - czy można stosować więcej niż jeden próg? Np różne reakcje dla 5-ciu różnych stanów?
Trzeba dodać 5 zdarzeń z róznymi progami
pozdrawiam
tomek
Odpowiedz
#10
Czy radę zrobić jakoś jeszcze taki myk, że wyjście np. out0 działa na podstawie temp lub wejścia, ale np. maksymalnie 30min i się wyłącza na 30min, później może znowu pracować przez 30min, ale tylko jeśli temp. lub wejście spełnia odpowiedni warunek (event).
W sumie to nawet by wystarczyło w schedulerze cyklicznie uruchamianie np. event1 ustawiam co 30min, jak nie przejdzie to uruchamianie o określonych porach zadań z schedulera, ale z kolei jest ograniczenie do 50.

Dodatkowo przydałby mi się licznik czasu pracy danego wyjścia/przekaźnika, będę miał podpiętą lampę UV i obowiązkowa wymiana co ileś tysięcy godzin, także przyda się. Np. jeśli licznik dobije do 4tys. godzin to uruchamia wyjścia i zapala się lampka wezwij serwis czy coś w tym stylu.

Trochę dużo chcę opcji, ale to urządzenie ma potencjał a nie chce mi się w Bascom AVR jak dotychczas rzeźbić na płytce atmega
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 2 gości