Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


  • 0

Wyzwalanie sceny w określonych miesiącach co rocznie


wt

Question

Witam

Potrzebuje waszej pomocy. Przygotowuje scenę, która będzie sterowała elektrozaworem, który podaje wodę do autonomicznego systemu zraszaczy. Problem w tym, że w systemie blokowym nie mogę ustawić miesięcy, w których elektrozawór ma być aktywny. O to co zrobiłem do tej pory. Stworzyłem zmienną zm_ogrod_zr przyjmującą wartość 0 i 1 (screen 1). Następnie scena to mój problem chciałbym żeby cyklicznie co roku 21 kwietnia ww. zmienna zmieniała się na 1 (screen 2) dając zielone światło scenie z otwieraniem elektrozaworu (screen 3) i scenie z wyłączeniem elektrozaworu podczas deszczu (4). Problem analogicznie stanowi scena z (screena 5), gdzie zmienna zmienia wartość na 0 a co za tym idzie elektrozawór się zamyka. Podsumowując moją intencją jest napisanie sceny która 21 kwietnia każdego roku uruchomi elektrozawór i 23 września go zamknie. Z tego co przeglądałem się bloczkom nie mam szan napisać tego bez LUA. Proszę o pomoc.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Edited by wt
Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

The topic has been moved from "

Please login or register to see this link.

" to "

Please login or register to see this link.

".

 

Temat został przeniesiony z "

Please login or register to see this link.

" do "

Please login or register to see this link.

".

Link to comment
Share on other sites

  • 0
On 3/1/2017 at 12:15 AM, wt said:

Witam

Potrzebuje waszej pomocy. Przygotowuje scenę, która będzie sterowała elektrozaworem, który podaje wodę do autonomicznego systemu zraszaczy. Problem w tym, że w systemie blokowym nie mogę ustawić miesięcy, w których elektrozawór ma być aktywny. O to co zrobiłem do tej pory. Stworzyłem zmienną zm_ogrod_zr przyjmującą wartość 0 i 1 (screen 1). Następnie scena to mój problem chciałbym żeby cyklicznie co roku 21 kwietnia ww. zmienna zmieniała się na 1 (screen 2) dając zielone światło scenie z otwieraniem elektrozaworu (screen 3) i scenie z wyłączeniem elektrozaworu podczas deszczu (4). Problem analogicznie stanowi scena z (screena 5), gdzie zmienna zmienia wartość na 0 a co za tym idzie elektrozawór się zamyka. Podsumowując moją intencją jest napisanie sceny która 21 kwietnia każdego roku uruchomi elektrozawór i 23 września go zamknie. Z tego co przeglądałem się bloczkom nie mam szan napisać tego bez LUA. Proszę o pomoc.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

Please login or register to see this attachment.

 

 

Jeżeli uzywasz HC2 to prosty kod w LUA załatwi sprawę:

 

Please login or register to see this code.

analogicznie zmienisz zmienną na 0 przy innej dacie.

 

Ustaw w swojej scenie tylko włąściwą nazwę zmiennej, jej wartośc i datę. Powyżej jest: Zmienna_ogrod, wartość: 1 i data: 04-21 10:00

 

Jeżeli używasz HCL to jedyne co ci pozostaje to zrobić sobie 10 scen bloczkowych, na 10 lat do przodu, i ustawić sobie przypomnienie w kalendarzu, żeby za 10 lat pozmieniać sceny :)

 

EDITED

Edited by jires
Poprawiony kod z powodu błędów z wyzwalaniem.
  • Like 1
Link to comment
Share on other sites

  • 0

Próbuję skorzystać z twojego gotowca. Niestety nie działa. Najpewniej dlatego że jestem zielony w LUA.

Możesz coś podszepnąć? 

Please login or register to see this attachment.

 

Please login or register to see this image.

/monthly_2018_03/Przechwytywanie1.PNG.eae305780faf8c4d476502f1bcc49344.PNG" alt="Przechwytywanie1.PNG.eae305780faf8c4d476502f1bcc49344.PNG" />

 

po odpaleniu startu cisza :)

Link to comment
Share on other sites

  • 0

Jak cisza to dobrze, bo gdyby był błąd w kodzie to by ci wywaliło to w oknie debuga.

Rozumiem że utworzyłeś sobie zmienna o nazwie Lato i zmieniłeś datę na tą która cię interesuje.

Jak chcesz się upewnić że działa, to zmień datę i godzinę w scenie na np. 5 minut do przodu, upewnij się że zmienna lato jest na "0", zapisz scenę i  zostaw w spokoju na 5 minut, potem zobaczysz że jak ta godzina minie, to zmienna będzie mieć nową wartość.

 

Jeżeli chcesz zrobić to bardziej skomplikowane, możesz dodać debug.

Wpisz w lini 18, przed "end" taki kod:

 

Please login or register to see this code.

Scena będzie cie informować swoim o działaniu. Po sprawdzeniu że wszystko działa, radzę skasować  ostatnią linię kodu, bo fibaro będzie pisać co minutę że to nie ta data, i niepotrzebnie zapychać system.

 

Pozdrawiam.

  • Thanks 1
Link to comment
Share on other sites

  • 0

Sprawdzałem ze zmiana daty ale nie zadziałało.

Po wklejeniu pojawia się taki komunikat:

Please login or register to see this attachment.

Link to comment
Share on other sites

  • 0

Sorki, powinno być else a nie elseif.. tak to jest jak się pisze z telefonu który podpowiada tekst...

Poprawiłem kod, teraz działa. Problem był z wyzwalaniem kodu (przedtem kod sie uruchamiał tylko przy restarcie całej centrealki.

Poniżej właściwa wersja z debugami (ale tak jak przedtem, debug radze skasować po sprawdzeniu czy działa): 

Please login or register to see this code.

 

  • Thanks 1
Link to comment
Share on other sites

  • 0

Działa, dziękuję  :D.

czy to powiadomienie " właściwy czas.." można dostać push-em?

gdzie ono się wyświetli? poza debugiem 

Link to comment
Share on other sites

  • 0

właściwie to już dałem radę , przerobiłem scenę bloczkową zgodnie z twoją ideą, otwierają mi się oczy teraz . Dziękuję

Tak naprawdę to mam problem z sterowaniem ogrzewaniem. O tym jest mój inny post. Możesz coś podpowiedzieć? 

Link to comment
Share on other sites

  • 0

Chodzi o ten z termostatem? Chyba moge podpowiedzieć coś. Napisze w tamtym wątku.

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...