eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaJak szybko mierzyć częstotliwość przy pomocy uC?Re: Jak szybko mierzyć częstotliwość przy pomocy uC?
  • Data: 2010-12-17 11:38:52
    Temat: Re: Jak szybko mierzyć częstotliwość przy pomocy uC?
    Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 17.12.2010 10:39, Robbo pisze:
    > Witam,
    >
    > Chciałem za pomocą mikrokontrolera mierzyć
    > częstotliwość przebiegu sinusoidalnego
    > w zakresie od 0 do 150Hz występującą
    > w danym momencie.
    Żaden problem.

    > Zapewne najłatwiej byłoby zliczać liczbę
    > okresów w jakimś czasie.
    Zapewne.

    > Niemniej to może
    > być rozwiązanie za wolne dla moich potrzeb.
    Dlaczego?

    > Im szybciej wyznaczę częstotliwość, tym lepiej.
    > Wiem, że ktoś robił w ten sposób, że układem
    > analogowym mierzył czas trwania połówki
    > sinusoidy i w ten sposób określał częstotliwość.
    > Tylko, że ta metoda może okazać się kłopotliwa
    > we współpracy z mikrokontrolerem (jakoś trzeba
    > ten sygnał podać do uC -- może za pomocą
    > przetwornika A/C, tylko czy tu nie będzie jakichś
    > problemów typu przekłamania, opóźnienia związane
    > z czasem przetwarzania).
    Tak, taka atmega ma 15 tysięcy próbek na sekundę. Tanie army od ST 10
    razy tyle. To na pewno wprowadza ogromne opóźnienia przy sygnale 150Hz

    > A może sinusoidę
    > (poddaną "kwadratyzacji" ;) wprowadzać
    > na uC, na przerwanie wyzwalane narastaniem
    > i opadaniem zbocza, do tego wewnętrzny timer
    > i w ten sposób obliczać czas trwania połówki.
    > Czy ktoś mógłby mi zaproponować jakąś
    > inną metodę?
    Jeżeli sinusoida oscyluje wokół masy to albo ją przesuwasz, albo
    prostujesz, albo ucinasz.

    Próbkujesz sygnał za pomocą ADC - różnice między 2 kolejnymi próbkami
    zapisujesz w buforze cyklicznym (np 30), trzymasz też sumę zawartości
    bufora (bufor cykliczny pozwala uaktualniać ją w czasie stałym). W
    momencie kiedy suma z dodatniej staje się ujemna lub z ujemnej dodatnia
    to znaczy, że wykryłeś przejście przez max/min sinusa. W buforze
    cyklicznym trzymasz czas między ostatnimi K min/max - K zależnie od tego
    czy interesuje cię czas odpowiedzi, czy odporność na zakłócenia. Liczysz
    średni czas i masz częstotliwość chwilową.

    Zależnie od wymaganych parametrów masz odpowiedź w 1..10..100 okresów.

    --
    Pozdrawiam
    Michoo

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: