Odpowiedz 
 
Ocena wątku:
  • 2 Głosów - 5 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Analizator NA01
SP6FRE Offline
Leszek
****

Liczba postów: 725
Dołączył: 20-09-2009
Post: #181
RE: Analizator NA01
Operacje na danych binarnych (byte, word) to w procedurach pomiarowych NA01 mniejszość, często charakter takich argumentów ginie w niezbędnych operacjach zmiennoprzecinkowych. Nie ma chyba potrzeby aby przechodzić na większą rozdzielczość pomiaru A/D z dwóch powodów. Po pierwsze AD8307 ma współczynnik detekcji 25mV/1dB a więc prawie jeden rząd więcej niż rozdzielczość przetwonika A/D a poza tym procedury zwiększenia rozdzielczości nie są banalne i wymagają zaawansowanego filtrowania oraz złożonych operacji matematycznych obciążających procesor, powiększających kod programu itp. Zamiast więc zwiększać rozdzielczość pomiaru można zastosować interpolację wyników pomiędzy punktami pomiarowymi. Nie wydaje się jednak aby w mierniku klasy NA01 potrzebne było tak wyrafinowane działanie. Nie analizowałem dokładnie wpływu błędów zaokrągleń na wynik pomiaru ale biorąc pod uwagę współczynnik 25mV/1dB można powiedzieć, że sięga on w najgorszym przypadku jedynki na poziomie ok. 70 (najmniejsze mierzone sygnały) czyli mniej niż 1.5%. O wiele ważniejsze, niż absolutna wartość tłumienia w dB jest często uzyskanie wiedzy o kształcie zależności w pasmie, poznanie miejsca rezonansów itp. W końcu, mierzone wartości muszą być zobrazowane na wyświetlaczu (128/64) o funkcjonalnej rozdzielczości pionowej 56 linii (8 najwyżej położonych linii używam do komunikacji, opisów) więc nawet jeśli wynik pomiaru będzie nieskończenie dokładny to i tak zostanie pokazany z dokładnością 1.8%.
L.J.
24-03-2014 10:29
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
blejders Offline


Liczba postów: 7
Dołączył: 24-09-2010
Post: #182
RE: Analizator NA01
Masz rację na wyświetlaczu nie będzie dużej różnicy ale przesyłając dane do komputera wykres będzie dużo dokładniejszy. ADC atmegi nie należy do najlepszych jego niedokładność może wynosić nawet 3 LSB. Napięcie odniesienia nawet bez nadpróbkowania pozwoli małym kosztem zwiększyć dokładność pomiaru i uniknąć przynajmniej kilku operacji zmiennoprzecinkowych(typ float). Niedawno w pewnym projekcie eliminując trzy operacje na danych typu float mogłem zejść z atmegi32 na atmegę16 a to już spory zysk. Przy nadpróbkowaniu nie stosujemy skomplikowanej filtracji bo niewielki poziom szumów jest nam potrzebny do jej prawidłowego działania. Oversampling nie jest taki straszny. W załączniku umieszczam artykuł o podstawach próbkowania.


Załączone pliki
.pdf  Nadpróbkowanie.pdf (Rozmiar: 594.26 KB / Pobrań: 1305)
24-03-2014 15:57
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP6FRE Offline
Leszek
****

Liczba postów: 725
Dołączył: 20-09-2009
Post: #183
RE: Analizator NA01
Faktycznie, oversampling w tej wersji nie jest specjalnie skomplikowanym algorytmem. Nie wprowadzę go jednak do bieżącego algorytmu pomiarowego NA01 ze względu na znaczące zwiększenie ilości operacji wymaganych na każdy dodatkowy bit dokładności. Zysk z takiej procedury spowolni pracę w czasie rzeczywistym miernika z jednej strony a wynik i tak nie będzie zauważony. Szykuję jednak wersję oprogramowania do współpracy z PC gdzie algorytm pomiarowy zapewniał będzie zewnętrzny program więc powstaną możliwości uzyskania dowolnego scenariusza i dokładności pomiarowej. Miernik reagował będzie na polecenia: ustawienia częstotliwości pomiarowej, opóźnienia o zadanym okresie czasu oraz na polecenie odczytu danych. Możliwe więc będzie wielokrotne odczytanie wartości dla ustalonej na czas próbkowania częstotliwości a więc droga do oversamplingu będzie otwarta ;-)
L.J.
24-03-2014 18:14
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
blejders Offline


Liczba postów: 7
Dołączył: 24-09-2010
Post: #184
RE: Analizator NA01
Jeśli chcesz zrobić urządzenie do współpracy z komputerem to proponowałbym zastosowanie zewnętrznego przetwornika A/D oraz galwaniczne oddzielenie części analogowej od cyfrowej a zwłaszcza komputera od urządzenia pomiarowego. Komputery wytwarzają tak silne zakłócenia że 16 bitowa karta dźwiękowa używa tylko 12 najstarszych bitów.
25-03-2014 15:12
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ4AVS Offline
Rafał
*****

Liczba postów: 1,401
Dołączył: 29-01-2010
Post: #185
RE: Analizator NA01
blejders stosowanie bardziej rozdzielczego przetwornika niż w atmedze jest pozbawione sensu (oversamplingu zresztą też, wspomniałem o nim w kontekście zakłóceń) spójrz na liniowość detektora
25-03-2014 16:52
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
blejders Offline


Liczba postów: 7
Dołączył: 24-09-2010
Post: #186
RE: Analizator NA01
Rafale, znaczne zwiększanie rozdzielczości przetwornika nie ma sensu ale 12 bitów zwłaszcza stosując napięcie 4,096v pozwoli na lepszą aproksymację wyników co zmniejszy wpływ nieliniowości przetwornika A/D atmegi. Producent podaje że całkowita niedokładność przetwornika może sięgać 3LSB dla wersji TQFP mikrokontrolera.
25-03-2014 18:16
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ4AVS Offline
Rafał
*****

Liczba postów: 1,401
Dołączył: 29-01-2010
Post: #187
RE: Analizator NA01
Blejdersie a jaka jest liniowość przetwornika ad? Nie ma sensu mierzyć lepiej niż sam detektor daje bo nic to nie da. Jeśli chce się większej rozdzielczości w mV na dB wystarczy zmniejszyć odniesienie do około 3V a że liczby nie są w mV na dB równych co to przeszkadza i tak jak pisał Leszek nachylenie przetwornika też nie jest równe bo wynosi 25mv/db.
25-03-2014 19:41
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ6ADE Offline
Radjoamator.
****

Liczba postów: 539
Dołączył: 05-04-2010
Post: #188
RE: Analizator NA01
W profesjonalnych zastosowaniach Atmegi gdzie nie jest wymagana mega rozdzielczość odczytu
nikt nie stosuje tego kłopotliwego (w produkcji i kosztach) dławika. Np. urządzenia stosowane w pojazdach (LPG).
Do takich banalnych pomiarów z odwzorowaniem na graficznym LCD wystarczy rozdzielczość 1 bajtu.

Coś do poczytania:
http://www.elektroda.pl/rtvforum/topic1062920.html

tylko na FM UKF -> Just True Sound Hi-Fi Smile
(Ten post był ostatnio modyfikowany: 25-03-2014 20:59 przez SQ6ADE.)
25-03-2014 20:59
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
blejders Offline


Liczba postów: 7
Dołączył: 24-09-2010
Post: #189
RE: Analizator NA01
Rafale jeśli tak przedstawiasz sytuację to zgadzam się z tobą ale moim założeniem było wyeliminowanie działań na ułamkach. Atmega nie posiada struktury sprzętowej odpowiedzialnej za działania zmiennoprzecinkowe więc każde działanie na ułamkach wymusza na kompilatorze wygenerowanie długiego i skomplikowanego kodu programu, widać bardzo dobrze gdy podejrzymy kod w asemblerze(lub będziemy symulować go w VMLAB). Jeśli nie chcemy bawić się w nadpróbkowanie możemy pozostać przy 10 bitach ale zastosować napięcie 4,096v co da nam równe 4mV na działkę. Na niedokładność przetworników A/D wpływją takie parametry: Offset error, gain error, integral non-linearitY, differential non-linearity, oraz absolute accuracy który jest sumą wszystkich poprzednich. W atmegach absolute accuracy może wynosić typowo od 1 do 3LSB czyli jeśli Aref wynosi 5V a rozdzielczość 10 bit to w najgorszym przypadku absolute accuracy wyniesie 3*4,88mV=14,6mV.
25-03-2014 22:55
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ6ADE Offline
Radjoamator.
****

Liczba postów: 539
Dołączył: 05-04-2010
Post: #190
RE: Analizator NA01
blejders - tu prawie wszyscy kol. "kodują" w C lub w "basdownie" i REF "binarny" jaki proponujesz nie zrobi na kol. żadnego wrażenia Smile
Wygodni są bo liczy za nich kalkulator Tongue Może to i dobre ?

tylko na FM UKF -> Just True Sound Hi-Fi Smile
25-03-2014 23:05
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Skocz do:


Użytkownicy przeglądający ten wątek: 2 gości