Powiadomienia
Wyczyść wszystko

Flow switch czujnik przepływu

50 Wpisów
2 Użytkownicy
9 Reactions
2,148 Wyświetleń
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

A tak wyglądają logi z tym wsadem z timerami-nie włącza się z nimi przekaźnik:

82395: ADS1x15: RAW value: 19821, output value: 19821.000000
82408: EVENT: ads#flow=230
82415: ACT : TimerSet,1,3
82420: ACT : TimerSet,2,0
82422: TIMER: disable timer
82860: EVENT: stan#gpio2=1
82868: EVENT: http#192.168.0.107=200
83396: ADS1x15: RAW value: 19822, output value: 19822.000000


 
Dodane : 17/12/2025 8:11 pm
isom
 isom
(@isom)
Wpisów: 5301
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

Dobra nie rozumiem tego espeasy, w tasmocie, która bazuje na podobnych regułach mogę sobie zarządzać dowolną ilością timerów w jednym wywołaniu.

Jak coś działa to zostaw a buforowo zrób bloczki w domoticz, albo może ktoś kto ogarnia ten dziwny soft pomoże


 
Dodane : 17/12/2025 8:58 pm
geoterm zareagował
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

@isom zgadzam się z Tobą- nie ma się co z tym boksować i tak zrobiłeś mi mega robotę czego ja by, na pewno nie zrobił. Dzięki. A czy coś by pomogło w tym wariancie ze zmiennymi jakby dołożył jeszcze jedną zmienną ?


 
Dodane : 17/12/2025 9:02 pm
isom
 isom
(@isom)
Wpisów: 5301
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

Wartości zmiennych var nie są trwałe, po zaniku zasilania może wyjść kosmos. W tasmocie są zmienne Var i MEM i te drugie nie zapominają danych więc gdyby to była tasmota zrobiłbym całość bez problemu. Tu nie wiem i nie mam ochoty się uczyć bo nigdy nie skorzystam 🙂


 
Dodane : 17/12/2025 9:06 pm
geoterm zareagował
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

Chyba się udało :). Moc jest z nami. 

https://youtube.com/shorts/8j-Ped-RAN0?si=VUGpObL12OBArUcT

w kodzie opisałem co zrobiłem:

1. bez timerów,

2. niepotrzebnie zmieniałem te stany on na off i off na on - tu coś przekombinowałem,

3. gpio po system boot dałem na ON

On System#Boot Do
  GPIO,2,0          // OFF (active-LOW) ---->>>>>>>tu zmieniłen na ON
  Let,0,0           // wymagany stan GPIO = OFF---->>>>> i tu też zmieniłem na ON,  zlikwidowałem timery
Endon

//WŁĄCZANIE (flow ≥ 160)

On ads#flow>=160 Do   
  TimerSet,1,3      // warunek musi trwać 3 s
Endon

On Rules#Timer=1 Do
  GPIO,2,0          // ON   ---->>> włącza przekaźnik, gdy przepływ jest niski 
  Let,0,0
Endon

//WYŁĄCZANIE (flow < 140)

On ads#flow<140 Do
  TimerSet,2,5      // warunek musi trwać 5 s
Endon

On Rules#Timer=2 Do
  GPIO,2,1          // OFF   ------->>> wyłącza gdy przepływ jest wysoki, odwrotnie niż trzeba
  Let,0,1
Endon

//WATCHDOG (ochrona przed ręcznym sterowaniem)

On Clock#Second Do
  If [GPIO#2] != [UserVar#0]
    GPIO,2,[UserVar#0]
  EndIf
Endon

 
Dodane : 17/12/2025 10:30 pm
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

Mały minus układu- po resecie zawsze włączy przekaźnik, pompę obiegową, ale to nie problem.

https://youtube.com/shorts/e9E0FjkWTlw?si=1dhLnZeB-BF36f6b

On System#Boot Do
  GPIO,2,0          // ON
  Let,0,0           // wymagany stan GPIO = ON
Endon

//WŁĄCZANIE (flow < 140)

On ads#flow<140 Do   
  TimerSet,1,3      // warunek musi trwać 3 s
Endon

On Rules#Timer=1 Do
  GPIO,2,0          // ON  
  Let,0,0
Endon

//WYŁĄCZANIE (flow > 160)

On ads#flow>160 Do
  TimerSet,2,5      // warunek musi trwać 5 s
Endon

On Rules#Timer=2 Do
  GPIO,2,1          // OFF  
  Let,0,1
Endon

//WATCHDOG (ochrona przed ręcznym sterowaniem)

On Clock#Second Do
  If [GPIO#2] != [UserVar#0]
    GPIO,2,[UserVar#0]
  EndIf
Endon

 


 
Dodane : 17/12/2025 11:00 pm
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

Wymyśliłem jak to zrobić na tzw. chama. 

Zmienię po system#boot na gpio,2,1  - czyli wyłącz pompę ciepła - tak będzie lepiej. 

Wtedy taki stan, taki zanik napięcia będzie wymagał resetu.

Taki reset albo zrobić ręcznie albo jakiś inny przekaźnik albo regułę, która musi zrobić tak:

jeżeli przepływ jest duży, a nie działa pompa ciepła, zmniejsz przepływ i znów go zwiększ.


 
Dodane : 18/12/2025 12:10 am
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

Zrobiłem tak, testowałem, działa, problem się trochę sam rozwiązał z drugim przekaźnikiem od pompy obiegowej. 

Jedyny minus - co jeszcze będę sprawdzał z telegramem przez noc- że ESP się raz na jakiś czas samo resetuje. Jak często? Zobaczymy. 

https://youtu.be/utjrCGV7eFE

// FLOW SWITCH pompa ciepła

On System#Boot Do
  GPIO,2,1          // ON
  Let,0,1           // wymagany stan GPIO = ON
Endon

//WŁĄCZANIE  (flow < 140)

On ads#flow<140 Do   
  TimerSet,1,10      // warunek musi trwać 10 s
Endon

On Rules#Timer=1 Do
  GPIO,2,0          // ON  
  Let,0,0
Endon

//WYŁĄCZANIE (flow > 160)

On ads#flow>160 Do
  TimerSet,2,10      // warunek musi trwać 10 s
Endon

On Rules#Timer=2 Do
  GPIO,2,1          // OFF  
  Let,0,1
Endon

// termostat pompy ciepła-załączanie pompy obiegowej-- to jeszcze będzie do modyfikacji, dojdzie warunek mocy-poboru pradu przez PC

On ads#t Do
  If [ads#t]>100 // i moc poboru W>100
  GPIO,0,0
  Endif
   If [ads#t]<30  // i moc poboru W<=100
  GPIO,0,1
  Endif 
Endon

 
Dodane : 18/12/2025 2:04 pm
isom
 isom
(@isom)
Wpisów: 5301
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

Ja bym zaczął od zmiany GPIO dla przekaźników, oba wybrane są w pewnych okolicznościach problematyczne

1

Zmiana na GPIO12 i 14 może poprawić sytuację.

W rule wykasuj wszędzie Let , skoro go nie wykorzystujesz do watchdoga 


 
Dodane : 18/12/2025 4:52 pm
geoterm zareagował
geoterm
(@geoterm)
Wpisów: 200
Pomocny
Autor tematu
 

A tak. Masz rację. Miałem to w tyle głowy. Czyli do przekaźników używać najlepiej te z białymi polami. 

Aczkolwiek stosuję teraz MCP23017 pod i2C. 

Zrezygnowałem z watchdoga bo nie pilnował pinu. 

3

 
Dodane : 18/12/2025 5:03 pm
Strona 3 / 3
Udostępnij: