logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Rozwiązano] S7 1200 - Procedura zliczania napływu wody do zbiornika na podstawie poziomu lustra w % i wykresu

ienecode 03 Lis 2022 19:09 621 13
  • #1 20266547
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    Witam,

    Mam zbiornik z wodą który się opróżnia i napełnia. W systemie mam tylko poziom lustra w % którego wykres mniej więcej wygląda tak:
    S7 1200 - Procedura zliczania napływu wody do zbiornika na podstawie poziomu lustra w % i wykresu


    Proszę o poradę jak napisać sprytną procedurę która zliczać będzie ile w ciągu danej godziny napłynęło wody do zbiornika. Trzeba uchwycić części rosnące wykresu i doliczać do głównego licznika ? Pytanie w jak to optymalnie zrobić i co z zakłóceniami jakie widać na wykresie ?

    Pierwszy test jak niżej , tyle że na minutę żeby nie czekać na efekt:
    S7 1200 - Procedura zliczania napływu wody do zbiornika na podstawie poziomu lustra w % i wykresu

    Jednak coś tu brakuje...
  • #2 20267075
    Wojciech.
    Poziom 37  
    Posty: 3587
    Pomógł: 318
    Ocena: 464
    ienecode napisał:
    Proszę o poradę jak napisać sprytną procedurę która zliczać będzie ile w ciągu danej godziny napłynęło wody do zbiornika.


    Nie prościej za kilka złotych dołożyć przepływomierz impulsowy? :)

    A co do zadania to trzeba sprawdzać pochodną wykresu w danym miejscu i w zależności czy pochodna dodatnia dodawać przyrost lub odejmowac.

    f(x+1)-f(x)/T >0 dodaj przyrost f(x+1)-f(x)
    f(x+1) to będzie dla ciebie aktualny pomiar
    f(x) poprzedni zapamiętany pomiar

    Zależy jaka jest dynamika praca to musisz dobrać odpowiednio czas próbkowania T np. 1s.
  • #3 20267106
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    T=1s to wartość 1 w moich obliczeniach, zakładając że obliczenia będą się wykonywać w każdym cyklu plc ?
    Czy zrobić tak że wykonuję obliczenie np. co 10s impulsem generowanym z timera i wtedy T=10 w formule ?

    Proszę jeszcze zwrócić uwagę na to jak zachowuje się wykres gdy woda jest wypompowywana... Jest spore szarpanie gdzie ww. formuła będzie w niektórych przypadkach dodawać do licznika, natomiast część wykresu zaznaczona na czerwono nie powinna brać udziału w obliczeniach :
    S7 1200 - Procedura zliczania napływu wody do zbiornika na podstawie poziomu lustra w % i wykresu

    Dodano po 31 [minuty]:

    Wojciech. napisał:
    f(x+1)-f(x)/T >0 dodaj przyrost f(x+1)-f(x)


    Jeżeli f(x+1)-f(x) > 0 to warunek f(x+1)-f(x)/T > 0 zawsze będzie prawdziwy. Czy w ogóle stała T coś zmienia w obliczeniach , skoro i tak dodajemy f(x+1)-f(x) ?
    Jeśli się nie mylę to mój algorytm umieszczony w pierwszym poście daje ten sam wynik tylko w inny sposób:
    f(x+1) > f(x) dodaj przyrost f(x+1)-f(x)
  • #4 20267292
    Wojciech.
    Poziom 37  
    Posty: 3587
    Pomógł: 318
    Ocena: 464
    ienecode napisał:
    Jeżeli f(x+1)-f(x) > 0 to warunek f(x+1)-f(x)/T > 0 zawsze będzie prawdziwy. Czy w ogóle stała T coś zmienia w obliczeniach , skoro i tak dodajemy f(x+1)-f(x) ?


    Zapomniałem o nawiasie ale raczej chodziło o definicję pochodnej (f(x+1)-f(x))/T > 0.

    Możesz sprawdzać sam warunek f(x+1)-f(x) > 0

    ienecode napisał:
    Proszę jeszcze zwrócić uwagę na to jak zachowuje się wykres gdy woda jest wypompowywana... Jest spore szarpanie gdzie ww. formuła będzie w niektórych przypadkach dodawać do licznika, natomiast część wykresu zaznaczona na czerwono nie powinna brać udziału w obliczeniach :


    W jaki sposób napełnia się zbiornik?
    Stan wody opada do czujnika MIN a następnie napełnia się do MAX?

    A co gdy w czasie napełniania jest odbiór?
  • #5 20267306
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    Wojciech. napisał:
    W jaki sposób napełnia się zbiornik?
    Stan wody opada do czujnika MIN a następnie napełnia się do MAX?


    Nie zawsze od min,max stąd lekkie utrudnienie.

    Wojciech. napisał:
    A co gdy w czasie napełniania jest odbiór?

    Tak jest, tyle że tą kwestię pomijam bo napływ jest o wiele większy niż odbiór.
  • #6 20267312
    Wojciech.
    Poziom 37  
    Posty: 3587
    Pomógł: 318
    Ocena: 464
    ienecode napisał:
    Tak jest, tyle że tą kwestię pomijam bo napływ jest o wiele większy niż odbiór.


    Musiałbyś zbierać dane do jakiegoś wektora a potem je uśrednic jeśli chodzi o zakłócenia. Można też zwiększyć próbkowanie żeby ominąć te zakłócenia ale możesz przestrzelić wierzchołek.
  • #7 20267314
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    Spróbuję maksymalnie wygładzić wykres , wtedy powyższy algorytm miałby sens.
  • #8 20267330
    janek_wro
    Poziom 29  
    Posty: 1281
    Pomógł: 123
    Ocena: 290
    ienecode napisał:
    Wojciech. napisał:
    A co gdy w czasie napełniania jest odbiór?

    Tak jest, tyle że tą kwestię pomijam bo napływ jest o wiele większy niż odbiór.

    No to będziesz miał błąd pomiaru na samej tej sytuacji. W wielkości dwukrotnosci ilosci poboru wystepujacego podczas napelniania. Na szybko licząc.
    Oczywiscie zalezy to od proporcji. Jak jest 1/1000 proporcji (pobór podczas napełniania) to nawet nie zauwazysz. Jak 1/10 to będzie większe zafałszowanie wyniku.

    Wojciech. napisał:
    Nie prościej za kilka złotych dołożyć przepływomierz impulsowy
    To jest chyba najlepsze wyjscie z sytuacji.
    zliczanie poboru z pomiaru stopnia napełnienia zbiornika będzie obarczane sporym błędem. A dowiesz się empirycznie jak porównasz pomiary z obu metod.

    EDIT
    Te wahania poziomu masz tylko na etapie poboru. Czemu pobór tak kiwa pomiarem? (lustrem wody?) Bo napełnianie idzie gładko.
    Nie określiłeś jaka jest skala na osiach wykresu. A to moze ciut pomóc w rozważaniach.
    jedna działka X to ile sekund? , działka Y to ile % napelnienia?
  • #9 20267368
    Markos80

    Specjalista Automatyk
    Posty: 1854
    Pomógł: 472
    Ocena: 210
    Może wystarczy zapamiętać poziomy na otwarcie i zamknięcie zaworu napełniającego i różnicę dodawać do sumatora?
    lub
    Jeśli ciśnienie jest stałe to przepływ też będzie (z jakąś dokładnością), więc można go pewnie policzyć lub zmierzyć jednorazowo (napełniając wiadro :)), a potem już tylko sumować w czasie, gdy zawór otwarty. Wtedy likwidujesz błędy powstałe podczas jednoczesnego odbioru.
    Najdokładniejszy byłby wodomierz, jak sugerował Wojciech. Koszt pewnie też niezbyt wygórowany.
    Konto firmowe:
    PUMPA
    Widok 7, Łuczyce, 32-010 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: www.pumpa.pl
  • #10 20267392
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    Markos80 napisał:
    Może wystarczy zapamiętać poziomy na otwarcie i zamknięcie zaworu napełniającego i różnicę dodawać do sumatora?


    Jeżeli efekt z pierwotnego podejścia nie będzie zadowalający to pewnie na takim rozwiązaniu się skończy. Jednak ma ono wadę gdyż zawór napełniający otwarty jest przez długi okres stąd będzie długi czas odświeżania pomiaru.
  • #11 20267401
    Markos80

    Specjalista Automatyk
    Posty: 1854
    Pomógł: 472
    Ocena: 210
    Różnicę możesz odświeżać na bieżąco, gdy zawór jest otwarty. Będzie tylko odrobinę pływać.
    aktualna ilość = ilość po ostatnim zamknięciu zaworu + aktualny poziom - zapamiętany na otwarcie

    Sumowanie, nawet teoretycznego, przepływu też powinno zdać egzamin.
    Konto firmowe:
    PUMPA
    Widok 7, Łuczyce, 32-010 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: www.pumpa.pl
  • #12 20267436
    janek_wro
    Poziom 29  
    Posty: 1281
    Pomógł: 123
    Ocena: 290
    Markos80 napisał:
    Jeśli ciśnienie jest stałe
    tego nie wiemy, a takie założenia mogą być źródłem sporego błędu pomiarowego.
    Nie wiemy jaką charakterystyke przepływ/ciśnienie ma pompa napełniająca, i nie wiemy jaki przepływ mamy na wylocie podczas napełniania. Nie wiemy czy wysokość lustra w zbiorniku ma wplyw na ciśnienie napełniania, a zatem zmianę natężenia przepływu. Może mieć, może nie mieć.

    To wszystko należałoby pomierzyć przed robieniem założeń upraszczających funkcje zliczające pomiar. Inaczej zapraszamy sobie błędy do pomiaru.

    A zamiast sięgać piętą do ucha, najlepiej zamontować wodomierz na wlocie, czytać impulsy z wirnika. Co da najbardziej dokładny pomiar. Oczywiscie mieszcząc się w zakresie dynamiki natężenua przepływu dla czujnika.
  • #13 20267937
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    Próbuję liczyć średnią z gotowca ale ciągle na wyjściu mam to co na wejściu:

    Poniżej kod, może coś przeoczyłem:

    Kod: text
    Zaloguj się, aby zobaczyć kod



    Kod: text
    Zaloguj się, aby zobaczyć kod


    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #14 20269528
    ienecode
    Poziom 21  
    Posty: 2097
    Ocena: 96
    S7 1200 - Procedura zliczania napływu wody do zbiornika na podstawie poziomu lustra w % i wykresu


    Po wyliczeniu średniej, liczenie pochodnej i sumowanie wydaje się działać.

Podsumowanie tematu

✨ Użytkownik poszukuje sposobu na zliczanie napływu wody do zbiornika na podstawie poziomu lustra wody w procentach oraz wykresu. Proponowane rozwiązania obejmują analizę pochodnej wykresu, co pozwala na identyfikację przyrostów poziomu wody. Istnieje również sugestia zastosowania przepływomierza impulsowego dla dokładniejszego pomiaru. W dyskusji poruszono kwestie zakłóceń w pomiarach oraz wpływu odbioru wody na wyniki. Użytkownik rozważa różne metody obliczeń, w tym uśrednianie danych oraz sumowanie różnic poziomów wody. Wskazano na potrzebę pomiaru charakterystyki przepływu oraz ciśnienia, aby uniknąć błędów pomiarowych. Ostatecznie, użytkownik testuje algorytm do obliczania średniej, co wydaje się przynosić pozytywne rezultaty.
Wygenerowane przez model językowy.
REKLAMA