Harmonogram jak to ustawić.

rafalekkalwak@wp.pl
Posts: 494
Joined: Mon Feb 06, 2023 8:56 am

Post

Wydaje mi się, że konfiguracja harmonogramów ma mały błąd:
Chce ustawić pierwszy harmonogram - włącznik co (pełną) godzinę, drugi - wyłącznik 10 min później - tu wszystko gra i to działa w ten sposób.

Natomiast jest 12.30 , chce żeby pierwszy raz włącznik zadziałał o 13. więc konfiguruję datę rozpoczęcia niejako w przeszłości, a najbliższe wykonanie będzie za godzinę od TERAZ a nie od "Data rozpoczęcia", co jest bez sensu:
Image

Da się to zrobić jakoś inaczej niż czekać jeden interwał? Nie żeby mi to robiło jakąś różnicę ale projektuje też podobne rzeczy w pracy i tak jak to działa to się tego nie robi :geek: Jest to strasznie mylące.

Wg mnie jak ustawie Data rozpoczęcia w przyszłość np. 13:00 to pierwsze wywołanie nastąpi o 13:00.
Jak ustawię w przeszłości to powinna być jakaś walidacja, ale efekt powinien być ten sam.
Moment konfiguracji nie powinien mieć żadnego znaczenia, co najwyżej sugestię w polu data rozpoczęcia ;)
czersi
Posts: 12
Joined: Tue Jan 12, 2021 6:41 am

Post

Czy jest możliwość zrobienia interwału, ale w zadanych godzinach dziennych ?

Od godziny 9.00 włączaj na 30 min, 30 min wyłączony i tak np. do godziny 17.00

Czy pozostaje tylko klepanie kalendarza godzinowego.
User avatar
klew
Posts: 8647
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

czersi wrote: Fri May 10, 2024 7:26 am Czy jest możliwość zrobienia interwału, ale w zadanych godzinach dziennych ?

Od godziny 9.00 włączaj na 30 min, 30 min wyłączony i tak np. do godziny 17.00

Czy pozostaje tylko klepanie kalendarza godzinowego.
W zaawansowanym takie coś ustawisz
Widzimy się na Supla Offline Party vol. 2 :!:
czersi
Posts: 12
Joined: Tue Jan 12, 2021 6:41 am

Post

Dobrze to zrobiłem ?

Będzie się włączać od godziny 10 co 20 min i od godziny 10 co 30 min wyłączać, a o 17.59 zakończy wykonywanie i tak co dzień .

*/20 10-17 * * * włącz

*/30 10-17 * * * wyłącz
User avatar
klew
Posts: 8647
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

czersi wrote: Mon May 13, 2024 6:09 am Dobrze to zrobiłem ?

Będzie się włączać od godziny 10 co 20 min i od godziny 10 co 30 min wyłączać, a o 17.59 zakończy wykonywanie i tak co dzień .

*/20 10-17 * * * włącz

*/30 10-17 * * * wyłącz
To raczej nie jest tym czego oczekujesz. Ten format zapisu harmongoramów pochodzi z crontab w linuxach. W ogólności jest on bezstanowy, więc tam nie ma koncepcji "co 20 min". Każde "słowo" jest interpretowane niezależnie. Tzn. pierwsze "*/20" ozacza "co 20 min na minutniku zegarowym". Tzn. że uruchomi się gdy na zegarku będzie 0, 20, 40 min. W Twoim przykłądzie uruchomienia będą o: 10:00, 10:20, 10:40, 11:00, itd.
Natomiast wyłączenia będą o: 10:00, 10:30, 11:00, 11:30, itd.

Wcześniej pisałeś, że chesz włączać na 30 min, czekać 30 min i znowu włączać. Takie coś zrobisz takimi wpisami:
0 10-17 * * * włącz -> 10:00, 11:00, 12:00... 17:00
30 10-17 * * * wyłącz -> 10:30, 11:30 ... 17:30

Natomiast tego ostatniego przykładu nie rozumiem co chcesz osiągnąć. Ogólnie tym formatem nie da się zrobić wszystkiego, ale da się sporo. Także napisz co byś chciał zrobić.
Widzimy się na Supla Offline Party vol. 2 :!:
czersi
Posts: 12
Joined: Tue Jan 12, 2021 6:41 am

Post

Chcę uruchamiać pompę w basenie do wymuszenia obiegu aby nagrzać wodę za pomocą słońca.
Dlatego dałem przykładowe 30 min bo jeszcze nie wiem jak czasowo to wyjdzie dokładnie.
Najprawdopodobniej 30 min będzie ok, ten przykład zrobiłem na 20 min aby być pewnym czy dobrze te komendy zrozumiałem.

Czyli włącza się pompa o 10.00 i wyłącza o 10.20 i jest wyłączona o 10.40 znów się włącza na 20 min i tak w kółko w przedziale godzinowym 10.00 do 17.00 .

*/20 10-17 * * * włącz

*/20 10.20-17.20 * * * wyłącz
i tak pewnie powinno to wyglądać ?

szukałem instrukcji jak to się robi i brałem z tego linku z przykładów : https://crontab-generator.com/pl/przyk%C5%82ady
User avatar
klew
Posts: 8647
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

czersi wrote: Mon May 13, 2024 10:00 am Chcę uruchamiać pompę w basenie do wymuszenia obiegu aby nagrzać wodę za pomocą słońca.
Dlatego dałem przykładowe 30 min bo jeszcze nie wiem jak czasowo to wyjdzie dokładnie.
Najprawdopodobniej 30 min będzie ok, ten przykład zrobiłem na 20 min aby być pewnym czy dobrze te komendy zrozumiałem.

Czyli włącza się pompa o 10.00 i wyłącza o 10.20 i jest wyłączona o 10.40 znów się włącza na 20 min i tak w kółko w przedziale godzinowym 10.00 do 17.00 .

*/20 10-17 * * * włącz

*/20 10.20-17.20 * * * wyłącz
i tak pewnie powinno to wyglądać ?

szukałem instrukcji jak to się robi i brałem z tego linku z przykładów : https://crontab-generator.com/pl/przyk%C5%82ady
Nie, tak to nie działa. W "cron" wpisujesz: minuty godziny itd. Nie ma tam "powtarzaj co x min". To są warunki, które są sprawdzane względem zegarka i osobno są sprawdzane minuty, godziny itd.
Nie da się tam zrobić: włączaj co 20 min na 20 min, bo możesz włączać tylko dla konkretnie wybranych minut od 0 do 59.
Przy ustawieniu "włączaj co 20 min na 20 min" musiałbyś mieć start o: 10:00, 10:40, 11:20, 12:00, itd. Także zależnie od godziny, byłyby to inne minuty.
Mógłbyś włączanie zrobić dwoma wpisami:
0,40 10-17/2 * * * włącz (czyli: 10:00, 10:40, 12:00, 12:40, 14:00, 14:40...)
20 11-17/2 * * * włącz (czyli: 11:20, 13:20, 15:20)


Aby to sobie uprościć, możesz dodać sobie scenę "Pompa w basenie" i w scenie zrobić:
1. Włącz pompę
2. Poczekaj X minut
3. Wyłącz pompę
Wtedy wyłaczanie miałbyś łatwo w scenie ogarnięte, bez kombinowania z tym harmonogramem.
Widzimy się na Supla Offline Party vol. 2 :!:
RomanG
Posts: 300
Joined: Tue Jul 21, 2020 7:35 am

Post

Możesz wykorzystać "automat schodowy" ustawiony na 30 minut i załączać go według kodu crontab; 0 10-17 * * *.
Pompka załączy się na 30 minut co godzinę od 10:00 do 17:00 (włącznie).

Return to “Ogólna dyskusja”