Zliczanie impulsów z wodomierza

Pytania i odpowiedzi dotyczące sprzętu Unitronics

Moderatorzy: Marek Sikora, Mateusz Sikorski

Zliczanie impulsów z wodomierza

Postprzez lwilk » Wt, 2 paź 2012, 21:30

Witam,
mam problem z deklaracja zmiennych i wykorzystaniem odpowiedniego zakresu licznika (1000000000)m3 w ukladzie sluzacym do zliczania impulsów z wodomierza i wyświetlania zuzycia wody w m3. Prosze o pomoc w zadeklarowaniu zmiennych i wykorzystania odpowiedniego licznika, poniewaz licznik INC jest 16bitowy i nie posiada zadnego wyjscia przepelnienia, aby polaczyc go z kolejnym licznikiem.

Moj drugi problem polega na tym, że użytkownik deklaruje sobie okreslone zuzycie np. 10m3, po przekroczeniu takiego przyrostu ma zostac zasygnalizowane to na wyjsciu cyfrowym (odciecie zaworu doprowadzajacego wode) i program ma oczekiwac na skasowanie alarmu przez uzytkownika. I tak w kolko, jak znowu zadeklarowany przyrost zostanie przekroczony, to zasygnalizuj to na wyjsciu cyfrowym oraz pulpicie i czekaj na skasowanie...

sterownik to V1040

Z gory dziekuje za pomoc
Łukasz Wilk
Załączniki
problem1.JPG
(66.29 KiB) Pobrane 757 razy
lwilk
 
Posty: 18
Dołączył(a): Pn, 1 paź 2012, 22:29

Re: Zliczanie impulsów z wodomierza

Postprzez Mateusz Sikorski » Śr, 3 paź 2012, 11:36

Witam,
na samym wstępie pragnę zaznaczyć, że nie napisał Pan, na jakim sterowniku Pan pracuje. Zakładam, że jest to każdy z serii Vision, oprócz V120.

Ad.1) żeby osiągnąć wartość 1 000 000 000 m^3 należy użyć dwóch rejestrów 32bitowych (np. ML). Nie zauważyłem, żeby INC był tylko 16bitowy, spokojnie radzi sobie z 32bitowymi wartościami. Przesłałem Panu program (dla V570), gdzie w pierwszej drabince jest rozwiązany problem z liczeniem do 1 000 000 000. Pierwszy rejestr ML0 liczy od 0 do 999 999 a drugi ML1 zlicza wartość w milionach. Proszę sprawdzić jak wygląda prezentacja na wyświetlaczu.

Ad.2) w celu porównania dwóch liczników (druga drabinka) należy ustawić szeregowo dwa komparatory (ML0 porównuje z ML2 oraz ML1 z ML3). Wartości ML2 oraz ML3 są wpisywane z wyświetlacza. Przy takiej samej liczbie następuje "zasetowanie" bitu MB0 odpowiadającego za wysterowanie zaworu. MB0 dodatkowo uruchamia ekran alarmu, który należy zatwierdzić przyciskiem "Ack" (od Acknowledge). Dopiero taka operacja spowoduje zresetowanie bitu MB0.
Załączniki
licznik.rar
(187.03 KiB) Pobrane 764 razy
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 564
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: Zliczanie impulsów z wodomierza

Postprzez Mateusz Sikorski » Śr, 3 paź 2012, 11:56

Witam,

przepraszam, nie zauważyłem, że jednak napisał Pan, jaki to sterownik. Oczywiście V1040. W załączniku przesyłam program właśnie na ten model. Reszta odpowiedzi bez zmian.
Załączniki
licznik2.rar
(339.33 KiB) Pobrane 779 razy
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 564
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: Zliczanie impulsów z wodomierza

Postprzez lwilk » Śr, 3 paź 2012, 13:53

Witam,

bardzo serdecznie dziekuje za pomoc. Mam jeszcze jedno pytanie odnośnie dodania wartosci poczatkowej i podzielenia przez stala impulsowania. jak powinno to wyglądac w przypadku wykorzystania dwoch liczników ML0-L oraz ML1-H.
Dziekuje i pozdrawiam
LW
Załączniki
problem2.JPG
(80.02 KiB) Pobrane 712 razy
lwilk
 
Posty: 18
Dołączył(a): Pn, 1 paź 2012, 22:29

Re: Zliczanie impulsów z wodomierza

Postprzez Mateusz Sikorski » Śr, 3 paź 2012, 14:02

Witam,
na przykład można użyć bloku Formula (musi się wykonywać cały czas w programie), gdzie można połączyć ze sobą te dwa liczniki ML0 oraz ML1 (ML1 pomnożyć przez 1 000 000) a wynik tego połączenia podzielić przez dowolną wartość. Wynik wpisywać do rejestru MF. Przykładowe rozwiązanie w załączniku
Załączniki
formula.jpg
(30.73 KiB) Pobrane 745 razy
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 564
Dołączył(a): Śr, 13 lip 2011, 08:08


Powrót do Unitronics



Kto przegląda forum

Użytkownicy przeglądający to forum: Google [Bot] i 6 gości

cron