Problem z bloczkiem Integral (całkowanie)

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Panowie znowu problemo, aż mi głupio pisać ale naprawdę próbuje ile mogę sam ale znowu się zawiesiłem. Teraz problem z całkowaniem. Wykorzystuję bloczek Integral x t . Dostaję na wyjściu tego bloczka pusta tablicę. Przeczytałem help do bloczka i pustą tablicę mogę dostać w przypadku gdy dt będzie =0 lub mniejsze od 0. Noto ja mu podaję przecierzz 0,005, nawet dawałem 1 oby cokolwiek scałkował ale ten nic X( . Poniżej przesyłam fotki z kodem. Nie wiem co jest. Może zły bloczek używam kurcze, chcę aby to było calkowanie dyskretne które obliczy mi pole pod wykresem, będzie sumą kolejnych próbek.
Załączniki
całka.png
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: Problem z bloczkiem Integral (całkowanie)

Post autor: PiDi »

Bloczek, którego używasz, to jest całka nieoznaczona, zwraca Ci więc nieoznaczoną całkę funkcji, czyli funkcję. Jeśli chcesz pole pod wykresem, to jest bloczek Numeric Integration.
ObrazekObrazekObrazekObrazek
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Re: Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Bloczek poniżej liczy całkę jako pole pod wykresem. Ale to jest bloczek dla labview 7.1. W labview 2010 i 8.5 nie ma czegoś takiego. To zamiast ulepszyć program to do skiepścili chyba. Orientuje się ktoś może co w 2010 odpowiada temu bloczkowi
Załączniki
calkowanie.png
calkowanie.png (1.26 KiB) Przejrzano 13869 razy
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Problem z bloczkiem Integral (całkowanie)

Post autor: vugie »

Bloczek który zamieściłeś robi to samo co ten, z którym miałeś problemy. Zmienił się tylko sposób podawania warunków początkowych i końcowych. Liczy on całkę nieoznaczoną, czyli wynikiem jego działania jest funkcja. W każdej wersji. Jeżeli warunki początkowy i końcowy są ustawione na 0, to ostatnia wartość zwróconej tablicy odpowiada polu pod funkcją wejściową. Prościej jest jednak użyć całki oznaczonej - Numeric Integration.vi - tak jak napisał PiDi
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Re: Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Panowie chcę zrobić coś takiego. Jak na rysunku poniżej. Mam dane z przyspieszeniem i muszę to zamienić na prędkość tak żeby całkowanie odbywało się cięgle cały czas. Czy te całki działają tak, że na wejściu potrzebują dostać już całą tablicę, funkcję- wszystkie próbki?? Ja mam tak zrobione, że podaję po jednym elemencie na wejście funkcji całkującej.
Załączniki
otakiecoschcem.png
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Problem z bloczkiem Integral (całkowanie)

Post autor: vugie »

Signal Processing -> Point by Point -> Integ&Diff -> Integral x(t) PtByPt.vi
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Re: Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Więc tak panowie, zrobiłem całkowanie za pomocą 3 dostępnych do tego bloczków. Wyniki poniżej. Coś mi się tutaj nie podoba i proszę o radę.
1. Całkowanie z wykorzystaniem bloczka Integral x(t). Podłączyłem go tak jak na rysunku ale to chyba nie liczy całki oznaczonej bo wyniki są ujemne a całka oznaczona liczy pole pod wykresem dla ujemnej części wykresu ze znakiem minus, więc nie wiem skąd ujemne wartości.
2. Sposób jak radził PiDi wykorzystanie bloczka Numeric Integration. No to niby liczy całkę ale tez nie wiem jaką bo mam ujemne wartości Widzę, ze tam ciągle się dodają wartości do siebie z tej całki. Z reszta nie wiem już sam jak te wyrkesy czytać. Ale jeśli liczy wszystko i dodaje więc mniemam że jeżeli tym sposobem scałkuję teraz ten wykres prędkości to otrzymam droge przebyta od startu do stopu??
3. Chciałem aby to umożliwiało pokazanie całki tak jak w załączonym obrazu w poście powyżej. Zaproponowane przez Vugiego Integral Point by Point, też nie liczy całki oznaczonej ;/. Ujemne wartości na wykresie. Albo źle go podłączam. On tam potrzebuje na wejście kolejne próbki sygnału, być może, że mój sposób z Array Size i podawaniem aktualnego rozmiary tablicy nie działa i nie podaję mu kolejnych próbek.
Czyli tak naprwdę to nic mi nie liczy calki bo wszędzie mam wartości ujemne albo nie wiadomo co to jest.
Pomocy pleaseeeeeeeeeeeee.
Załączniki
point by point.png
sprawdzic.png
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Problem z bloczkiem Integral (całkowanie)

Post autor: vugie »

A nie zauważyłeś, że dane wejściowe masz ujemne? Na moje oko wszystkie wykresy przyspieszenia są POD zerem. Odrobinę, ale jednak pod.
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Masz racje wiem, że są ujemne bo takie chciałem zamieścić, jednak wynik całkowania powinien być dodatni. Całka, która liczby pole pod wykresem dla ujemnych licbz - fragmentu wykresu bierze wynik ze znakiem minus. czy nie??

http://pl.wikipedia.org/wiki/Ca%C5%82ka

Tutaj inne wykresy. To juz mi się bardziej podoba.
Załączniki
wzdluz x.PNG
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Problem z bloczkiem Integral (całkowanie)

Post autor: vugie »

Źle rozumiesz ten rysunek - tu chodzi o to, że dodatnie fragmenty funkcji dodają się do całkowitego pola, a ujemne od niego odejmują. Poza tym, pole pod krzywą to tylko geometryczna interpretacja całki, a nie jej istota.
Zastanów się: załóżmy, że - oznacza w lewo, a + w prawo. Masz ciało które jednostajnie przyspiesza w lewo (wartość przyspieszenia ujemna). W którą stronę będą skierowane jego kolejne chwilowe prędkości?

Tam gdzie funkcja wejściowa jest dodatnia, jej całka rośnie, tam gdzie ujemna - maleje.
limatorek
Posty: 42
Rejestracja: 14 lut 2011 13:35
Wersja środowiska: LabVIEW 7.1

Problem z bloczkiem Integral (całkowanie)

Post autor: limatorek »

Mhyyym dzięki za odpowiedź. Chyba coś łapię, ale jeszcze na spokojnie będę dumać chwilę nad tym. Muszę sobie na razie odfiltrować błędy spowodowane dryftem 0 z akcelerometru bo to powoduje, że ciągle mi się dodają te błędne wartości, tak jak zauważyłeś Panie kolego, że wykres jest trochę pod 0. Potem będę mógł dopiero dobrze interpretować tą całkę.
ODPOWIEDZ