-
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!plix.pl!newsfeed
1.plix.pl!news.nask.pl!news.nask.org.pl!news.onet.pl!.POSTED!not-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: Jak szybko mierzyć częstotliwość przy pomocy uC?
Date: Fri, 17 Dec 2010 12:38:52 +0100
Organization: http://onet.pl
Lines: 54
Message-ID: <iefejt$hn9$1@news.onet.pl>
References: <4d0b2fb7$0$27044$65785112@news.neostrada.pl>
NNTP-Posting-Host: smaug.int.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.onet.pl 1292582333 18153 83.238.197.12 (17 Dec 2010 10:38:53 GMT)
X-Complaints-To: n...@o...pl
NNTP-Posting-Date: Fri, 17 Dec 2010 10:38:53 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.15) Gecko/20101030
Icedove/3.0.10
In-Reply-To: <4d0b2fb7$0$27044$65785112@news.neostrada.pl>
Xref: news-archive.icm.edu.pl pl.misc.elektronika:601162
[ ukryj 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
Następne wpisy z tego wątku
- 17.12.10 14:27 Pszemol
- 17.12.10 18:44 VSS
- 18.12.10 00:45 Adam Wysocki
- 18.12.10 00:57 Adam Wysocki
- 18.12.10 17:22 VSS
- 18.12.10 19:38 J.F.
- 19.12.10 15:01 VSS
- 19.12.10 16:03 J.F.
- 19.12.10 18:44 Mirek
- 19.12.10 19:38 VSS
- 21.12.10 07:04 EM
- 21.12.10 13:05 J.F.
- 22.12.10 10:50 Kicer
Najnowsze wątki z tej grupy
- nawigacja satelitarna
- SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- Głośnik piezoelektryczny
- Mala autonomiczna kamera monitoringu
- czas na emeryturę i EB
- Generowanie sumy kontrolnej z fragmentu pliku bin
- Re: Mala autonomiczna kamera monitoringu
- HDMI
- Re: Mala autonomiczna kamera monitoringu
- Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
- skąd my to znamy
- Re: Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
Najnowsze wątki
- 2024-06-27 Re: Prywatny parking? Pierwsze 10 minut bezplatnie
- 2024-06-27 A co mnie to koooorwa obchodzi?
- 2024-06-28 nawigacja satelitarna
- 2024-06-28 SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- 2024-06-27 położyłem kafelki
- 2024-06-28 Łódź => International Freight Forwarder <=
- 2024-06-28 Łódź => Spedytor Międzynarodowy <=
- 2024-06-28 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-06-28 Sopot => Team Leader E-Commerce for Foreign Markets <=
- 2024-06-28 Warszawa => Senior React Native Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Software .Net Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Programista Full Stack .Net <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=