"Piki" odczyt z adc napięcia potencjometru

Wszelkie sprawy związane z LabVIEW i komunikacją ze sprzętem. Problemy i ciekawe rozwiązania.
Awatar użytkownika
bartchez
Posty: 40
Rejestracja: 27 lis 2010 00:34
Wersja środowiska: LabVIEW 8.5
Lokalizacja: Łódź
Kontakt:

"Piki" odczyt z adc napięcia potencjometru

Post autor: bartchez »

Witam

Mam kłopot z "pikami" podczas odczytu z adc karty Advantech usb 4711A. Pojawiają się one losowo, nie mam pojęcia dlaczego się pojawiają na oscyloskopie wygląda wszystko ok.
Ktoś ma pomysł z czego to może wynikać albo jak je odfiltrować.

Proszę o pomoc.
Załączniki
pik.jpg
pik.jpg (51.47 KiB) Przejrzano 12313 razy
Awatar użytkownika
Trint
Posty: 14
Rejestracja: 22 paź 2012 14:10
Wersja środowiska: LabVIEW 2012

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: Trint »

Najprostszy sposób na pozbycie się - bloczek In Range and Coerce. Trzeba by przyjąć jakiś rozsądne maksimum, np. 0,4 (albo ciut mniej). Wtedy każdą wartość z tablicy podłączonej do tego bloczka zaokrąglałoby do tej wartości. Dość paskudne.
Lepiej byłoby te pojedyncze wartości usunąć, to trzeba by zrobić w pętli:
Dla każdej wartości, jeżeli jest większa niż "rozsądna wartość", użyj Delete from Array (w strukturze case).
To oczywiście nie jest filtrowanie, ale powinno zadziałać... jeśli ta "rozsądna wartość" będzie stała.
A jeśli nie, można policzyć średnią i odchylenie standardowe całego przebiegu. A potem odrzucić te wartości, dla których różnica między nimi a średnią jest znacznie większa, niż to odchylenie. "Znacznie", czyli też powyżej pewnego progu.
pozdrawiam
laradek
Posty: 47
Rejestracja: 06 kwie 2013 18:25
Wersja środowiska: LabVIEW 2012

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: laradek »

Proponuję filtr dolnoprzepustowy :)
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: PiDi »

A możesz powiedzieć najpierw, co i w jaki sposób jest podłączone do tej karty? Jak to "coś" próbkujesz (częstotliwość, liczba próbek)? Czy te piki mają stałą wysokość (nie widzę tego na wykresie)? Bo tak pogdybać to sobie możemy, że wytniemy albo odfiltrujemy, tylko za bardzo nie wiemy co :-?
ObrazekObrazekObrazekObrazek
laradek
Posty: 47
Rejestracja: 06 kwie 2013 18:25
Wersja środowiska: LabVIEW 2012

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: laradek »

Jak chcesz wiedzieć jaką częstotliwość odfiltrować (jaką mają piki) to możesz zrobić FFT. Ale żeby dobrze zmierzyć częstotliwość pików musiałbyś próbkować z conajmniej dwa razy większą częstotliwością niż mają piki ( zgodnie z f graniczną Nyquista ) :) Tak mi się wydaje. Jakby co to może ktoś mądrzejszy mnie poprawi :)
Awatar użytkownika
bartchez
Posty: 40
Rejestracja: 27 lis 2010 00:34
Wersja środowiska: LabVIEW 8.5
Lokalizacja: Łódź
Kontakt:

"Piki" odczyt z adc napięcia potencjometru

Post autor: bartchez »

Piki mają zawsze taką samą wartość ale nie mają określonej częstotliwości występują całkowicie losowo.
Do karty jest podłączony normalny potencjometr 10K +5V-----adc-----gnd.
Raczej zastosowanie filtru nie ma sensu gdyż wartość sygnału zmienia się w zakresie 0-5V tzn 0-180', a piki przyjmują ok 4V.
Co do próbkowania jest to max karty(obecnie na 2 adc), przy czym nie zależy mi na bardzo dużej ilości próbek -sygnał nie zmienia się szybko.
Wydaję mi się że najlepszą opcją było by sprawdzanie czy sygnał nie narasta zbyt szybko jeśli tak się dzieje to pozostanie przy ostatniej wartości.
laradek
Posty: 47
Rejestracja: 06 kwie 2013 18:25
Wersja środowiska: LabVIEW 2012

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: laradek »

Filtr dolnoprzepustowy to filtr częśtotliwościowy (uczyli mnie tego chyba w technikum), który właśnie "wytnie" tak szybkie zmiany sygnału (jeśli go odpowiednio ustawisz) i zostawi pomiary, które cię interesują w całym zakresie 0-5VDC i nie będzie wycinał niczego powyżej 4V. Jeśli nie zależy Ci na pomiarze szybkich zmian daj na sygnał próbkowany filtr z wartością np 10Hz i zobacz co otrzymasz (trochę strzelam). :)
Zyga
Posty: 86
Rejestracja: 26 sty 2012 23:36
Wersja środowiska: LabVIEW 2011

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: Zyga »

Jeśli jeszcze nie rozwiązałeś problemu, proponuję użycie filtru medianowego. U mnie pomogło.
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: jogurt_owocowy »

Użycie filtru to najprostsze rozwiązanie, ale to zamiecenie problemu pod dywan. Skoro pików nie widać na oscyloskopie, to najwyraźniej problem tkwi w akwizycji sygnału.
Poszukaj przykładowego programu do akwizycji danych z karty (tu jest coś o obiecującej nazwie Virtual Oscillograph Utility) i zobacz czy w nim będzie ok.
laradek
Posty: 47
Rejestracja: 06 kwie 2013 18:25
Wersja środowiska: LabVIEW 2012

Re: "Piki" odczyt z adc napięcia potencjometru

Post autor: laradek »

A może jest to oscyloskop cyfrowy który ma wbudowaną jakąś filtrację. Żeby stwierdzić czy piki są po stronie karty pomiarowej czy potencjometru podłącz zamiast potencjometru (najlepiej na tych samych przewodach) bateryjkę 1,5V i zobacz czy będą piki :)
ODPOWIEDZ