Jak szybko mierzyć częstotliwość przy pomocy uC?

Witam,

Chciałem za pomocą mikrokontrolera mierzyć częstotliwość przebiegu sinusoidalnego w zakresie od 0 do 150Hz występującą w danym momencie. Zapewne najłatwiej byłoby zliczać liczbę okresów w jakimś czasie. Niemniej to może być rozwiązanie za wolne dla moich potrzeb. 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). 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ę? Z góry dziękuję za pomoc.

R.

Reply to
Robbo
Loading thread data ...

Na razie jasne.

Mierz okres.

Bez sensu.

To ma sens. Z tą kwadratyzacją to może przesada. Wystarczy układ określajacy punkt na sinusoidzie. Takim szczególnym przypadkiem jest detektor przejścia przez zero. Tylko że występuje dwa razy w ciągu okresu.. ale cóż to jest dla uC.

Mierzyć miernikem częstotliwości, obrabiać dane - jak jest problem to z użyciem komputera PC i wysyłać do uC. :-)))))

Reply to
Desoft

Użytkownik "Robbo" snipped-for-privacy@mmm.com napisał w wiadomości news:4d0b2fb7$0$27044$ snipped-for-privacy@news.neostrada.pl...

Jakaś inna metoda - mierzyć cały okres, a nie pół ;-) P.G.

Reply to
Piotr Gałka

W dniu 2010-12-17 11:17, Desoft pisze:

Trzeba tylko wiedzieć, czy to jest czysty sinus, czy ze śmieciami, bo wtedy możesz mieć wiele przejść przez zero w każdym półokresie.

Reply to
Zbych

Filtr dolnoprzepustowy, nawet najprostszy układ RC który nam odfiltruje śmieci.

Potem komparator z którego wyjście dasz na wejście cyfrowe procesora. Przetwornik AC nie jest potrzebny jeśli sinusoida ma w miarę stałą amplitudę to komparator z ustawionym na stałe progiem wystarczy... I teraz po prostu mierzysz ilość taktów timera między przerwaniami.

Jeśli sinusoida ma zmienną amplitudę to można wciąż użyć komparatora z tym że zamiast progu na stałym poziomie napięcia można zadać próg utworzony z wyprostowanej jednopołówkowo i odfiltrowanej sinusoidy wejściowej nieco obsuniętej aby uniknąć wyzwalania szumem.

Reply to
Pszemol

W wiadomości:4d0b2fb7$0$27044$ snipped-for-privacy@news.neostrada.pl, Robbo snipped-for-privacy@mmm.com nastukał:

A jak zrobisz już ten miernik jest szansa na jedna sztuke która potrzfi wykrywać 110,9Hz i wystawić 1 na jakies nózce ?

Reply to
VSS

Robisz dekoder CTCSSu? Może zainteresuj się układem LM567?

Reply to
Adam Wysocki

Robisz detektor CTCSSu? Może zainteresuj się układem LM567?

Reply to
Adam Wysocki

W wiadomości: snipped-for-privacy@news.chmurka.net, Adam Wysocki snipped-for-privacy@nospam.invalid nastukał:

tak, uzywałem 567 ale problem polega na szerokości pasma, zbiera 2 tony w lewo i prawo :( dlatego potrzebuje cos dokładniejszego

Reply to
VSS

A jak dokladnie ma mierzyc ? Moze sobie algorytm Goertzela zaprogramowac ?

J.

Reply to
J.F.

Tony CTCSS w okolicy 110,9Hz wyglądaja tak:

100,0 103,5 107,2 110,9 114,8 118,8 123,0

Dobrze by było aby łapal tylko 110,9Hz a nie łapał tych dwóch po bokach. Jest to możliwe ? Potrzeba jak najbardziej amatorska - przemiennik amatorski.

Reply to
VSS

Oczywiscie ze jest, tylko ze wymaga rozdzielczosci 2Hz, wiec czas pomiaru to tak im dluzszy tym lepszy - z dobrym sygnalem moze by sie udalo zejsc do 1/8 sekundy (cwierc okresu roznicy), ale doradzalbym raczej nastawic sie na sekunde.

J.

Reply to
J.F.

Z bardzo dobrym sygnałem, to można zrobić na podstawie kilku próbek.

formatting link

Reply to
Mirek

W wiadomości: snipped-for-privacy@4ax.com, J.F. <jfox snipped-for-privacy@poczta.onet.pl> nastukał:

wystrczy 1/4 sekundy w 100%. czy przy rozdzielczości 4Hz można by skrócic czas pomiaru.

Reply to
VSS

Użytkownik "VSS" snipped-for-privacy@gazeta.pl napisał w wiadomości news:ielmv2$nqh$ snipped-for-privacy@inews.gazeta.pl...

Jeśli da się uzyskać ładny przebieg cyfrowy, to można jego częstotliwość zmierzyć w ciągu 1 okresu i to z dokładnością znacznie przewyższającą 0,01Hz...

Reply to
EM

Użytkownik "EM" snipped-for-privacy@poczta.onet.pl> napisał w

Owszem, tylko musisz ten jeden okres zmierzyc z dokladnoscia do 1 us .. powiedzmy sam pomiar okresu nie jest problemem, mozna wielokrotnie dokladniej, natomiast czy nie bedzie problemem wyluskanie tego jednego okresu z taka dokladnoscia ..

J.

Reply to
J.F.

Może wzmacniacz wchodzący w nasycenie (tak żeby wyszedl prostokąt z tego sinusa), a potem avrka + wejście ICP?

pozdrawiam

Reply to
Kicer

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.