Wodomierz

jamsjamsen
Posty: 9
Rejestracja: sob sty 28, 2017 11:08 am

ndz lis 17, 2019 9:34 am

(Wow) jaka szybka odpowiedz...

niestety oscyloskopu u mnie brak :(
a co do czujnika to prawdopodobnie ma współczynnik wypełnienia impulsu 50% tak więc długość impulsu będzie proporcjonalna do ilości przepływającej wody im większy przepływ to impuls będzie krótszy.
testowałem a Twoim firmware (3xlicznik) gdzie można „wklepać” długość zczytywanego impulsu i gdzie przy przepływie 25L/min i 384 ipm/L najrótszy impuls wychodził z obliczeń 6,25 ms, dalej ilość wskazanych litrów wychodziła dziwna i nie liczył wszystkiego!?

tak więc jak wspominałeś zostaje tylko oscyloskop ;) ( nie wiadomo co zlicza chiński czujnik )
pzygmunt pisze:
sob lis 16, 2019 11:34 pm
... wracając co Twojego sprzętu. Należałoby podłączyć jakiś oscyloskop pod ten czujnik aby ustalić co się tam dzieje. Problem powinien być rozwiązywalny.
Ostatnio zmieniony ndz lis 17, 2019 2:20 pm przez jamsjamsen, łącznie zmieniany 1 raz.
Awatar użytkownika
Robert Błaszczak
Posty: 1117
Rejestracja: sob gru 22, 2018 8:55 pm
Lokalizacja: Zielona Góra
Kontaktowanie:

ndz lis 17, 2019 11:28 am

Przemek (@pzygmunt) już wielokrotnie pisał, że ESP nie do końca dobrze radzi sobie ze zliczaniem w czasie obsługi przerwań. Przy tak dużej ilości impulsów na 1 litr to nie ma szans na poprawne zliczanie. W takim wypadku musi być dodatkowy układ elektroniczny zliczający impulsy, z którego ESP będzie co jakiś interwał pobierał wartość licznika i wysyłał do CLOUD.

Zobaczymy, co w tym temacie opracował ZAMEL.
Pozdrawiam
Robert Błaszczak

Strona prywatna: https://www.blaszczak.pl
Jakość powietrza: https://robert.aqi.eco
Awatar użytkownika
pzygmunt
Posty: 8416
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz lis 17, 2019 12:08 pm

Generalnie chodzi o to, że ESP lubi "zatrzymać" się na chwilę na obsłudze WiFi. Wtedy może zgubić kilka przerwań ale nie w takiej skali. Do tego co masz pewnie trzeba zmienić kod programu tak aby nie sprawdzał czasu i poprzedniej wartości tylko aby liczył tylko zbocza opadające lub tylko rosnące. Wtedy spokojnie obsłużysz nawet 10k impulsów/sek. Tak czy inaczej ten przepływomierz trzeba sprawdzić tj. co przy dużym przepływie generuje.
jamsjamsen
Posty: 9
Rejestracja: sob sty 28, 2017 11:08 am

ndz lis 17, 2019 1:29 pm

co do narastających zboczy to chwilę miałem taki pomysł o przerzutniku co by przy narastającym zboczu dawał na wyjsciu impuls o stałej długości np. 5 ms,?ale skoro ESP nie lubi takiego nawału impulsów na sekundę(flood) to co tu poradzić ....

Dzięki za wszystkie odpowiedzi ;)
pzygmunt pisze:
ndz lis 17, 2019 12:08 pm
Generalnie chodzi o to, że ESP lubi "zatrzymać" się na chwilę na obsłudze WiFi. Wtedy może zgubić kilka przerwań ale nie w takiej skali. Do tego co masz pewnie trzeba zmienić kod programu tak aby nie sprawdzał czasu i poprzedniej wartości tylko aby liczył tylko zbocza opadające lub tylko rosnące. Wtedy spokojnie obsłużysz nawet 10k impulsów/sek. Tak czy inaczej ten przepływomierz trzeba sprawdzić tj. co przy dużym przepływie generuje.
Awatar użytkownika
pzygmunt
Posty: 8416
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz lis 17, 2019 3:26 pm

Tak jak wspominałem.... Można poeksperymentować. Na sprzęcie Zamel-a osiągnęliśmy prędkość 9000impl na sek. bez błędów ale to inne rozwiązanie sprzętowe. Mogę coś przygotować dla ESP co będzie tylko liczyło zbocza narastające.
rav.b
Posty: 157
Rejestracja: pn lis 26, 2018 9:09 am
Lokalizacja: Niepołomice/Lipnica Mała

ndz lis 17, 2019 9:26 pm

pzygmunt pisze:
sob lis 16, 2019 11:24 pm
Zamel najprawdopodobniej udostępni nowe liczniki impulsów do testów LIW-01. Sprzęt wyposażony w specjalny układ zliczający. Łapie impulsy trwające od 1us do kilku sekund z małą i dużą częstotliwością. Zgłoś
się do nich to może udostępnią Ci licznik do testów.
Jest może w planach taki licznik impulsów tyle że w wersji "puszkowej"?
Polecam do analiz MES darmowego CalculiX -a
3x SRW-01, 3x ROW-02, 2x LIW-01, 1x ROW-02m, 1x ROW-01, 1x SLW-01, 1x SLW-02, 1x MEW-01, 1x PNW-01, 1x Heatpol Home+, 1x Sonoff mini
Awatar użytkownika
pzygmunt
Posty: 8416
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz lis 17, 2019 10:02 pm

Nie wiem. Pewnie jak będzie taka potrzeba rynku to taki się pojawi. Pierwszy model będzie na szynę DIN zasilany 24V. Wielkość S-a ( z uwagi na możliwość podłączenia do wodomierza lub gazu musi być zasilany z zewnetrznego zasilacza)
Awatar użytkownika
klew
Posty: 830
Rejestracja: czw cze 27, 2019 12:16 pm

pn lis 18, 2019 8:49 am

Jeśli ogarniasz Arduino IDE, to spróbuj wgrać sobie soft z tą biblioteką:
https://github.com/SUPLA/arduino/tree/develop

W samej aplikacji wystarczy:

Kod: Zaznacz cały

// CHANNEL0 - Impulse Counter on pin 34, without status LED (it is not implemented yet), counting raising edge (from LOW to HIGH), no pullup on pin, and 10 ms debounce timeout
  SuplaDevice.addImpulseCounter(34, 0, true, false, 10);
  
  // CHANNEL1 - Impulse Counter on pin 34, without status LED (it is not implemented yet), counting folling edge (from HIGH to LOW), with pullup on pin, and 50 ms debounce timeout
  SuplaDevice.addImpulseCounter(35, 0, false, true, 50);
 
Na wyjściu Serial będzie lecieć informacja o złapanym impulsie.

Implementacja licznika impulsów jest zrobiona na timerze. Można liczyć zbocza opadające/narastające.
Awatar użytkownika
makrz
Posty: 310
Rejestracja: wt lis 27, 2018 1:43 pm
Lokalizacja: Opole

wt lis 19, 2019 7:36 am

pzygmunt pisze:
ndz lis 17, 2019 3:26 pm
Mogę coś przygotować dla ESP co będzie tylko liczyło zbocza narastające.
Bardzo chętne przetestuję coś takiego.
jamsjamsen
Posty: 9
Rejestracja: sob sty 28, 2017 11:08 am

wt lis 19, 2019 9:40 am

Witam.
„ Odpaliłem” na Arduino Mega z eth W5100, i i przy zboczach narastających i czasie 5 ms, łapał najwięcej impulsów, mimo tego dalej wodomierz w instalacji i to co pokazywała aplikacja w telefonie to duża różnica, może ten przepływomierz nadaje się np. na produkcję do odmierzania zadanych objętości cieczy?? /:
klew pisze:
pn lis 18, 2019 8:49 am
Jeśli ogarniasz Arduino IDE, to spróbuj wgrać sobie soft z tą biblioteką:
https://github.com/SUPLA/arduino/tree/develop

W samej aplikacji wystarczy:

Kod: Zaznacz cały

// CHANNEL0 - Impulse Counter on pin 34, without status LED (it is not implemented yet), counting raising edge (from LOW to HIGH), no pullup on pin, and 10 ms debounce timeout
  SuplaDevice.addImpulseCounter(34, 0, true, false, 10);
  
  // CHANNEL1 - Impulse Counter on pin 34, without status LED (it is not implemented yet), counting folling edge (from HIGH to LOW), with pullup on pin, and 50 ms debounce timeout
  SuplaDevice.addImpulseCounter(35, 0, false, true, 50);
 
Na wyjściu Serial będzie lecieć informacja o złapanym impulsie.

Implementacja licznika impulsów jest zrobiona na timerze. Można liczyć zbocza opadające/narastające.
ODPOWIEDZ