Filtrare 40Hz (passa basso) per contatore bpm

Feb 25, 2012 7 Replies

Sto realizzando un contatore di impulsi al minuto con AVR per apparecchiature pneumatiche. La frequenza limite =E8 di 2000 bpm a cui corrispondono circa 33 Hz. Il captatore sar=E0 probabilmente un microfono o una sonda di pressione (cattura al volo) ed ho notato che assieme al segnale utile entrano anche molte altre componenti indesiderate e, soprattutto, il rumore ambientale. In altre parole, devo amplificare, filtrare e squadrare il segnale per darlo in pasto al micro e per fare ci=F2 vorrei risolvere il tutto al massimo tramite un quadruplo operazionale (LM324 o gi=F9 di l=EC). Avete sottomano lo schema di un filtro tosatore ben collaudato? Visto lo scarso impegno del micro, sarei disposto con gaudio ad aiutare l'hardware con un post-filtraggio software per cui anche subroutine di semplici filtri sono pi=F9 che graditi. Anche il solo diagramma di flusso (anzi, meglio). Il micro =E8 un ATmega48.



Grazie.



Piccio.


dai un'occhiata allo LM2907, ricordo che ci feci qualcosa del genere.

...

Molto interessante, ma mi serve realizzare lo stadio prima. La rilevazione la frequenza la effettuo con strumento ad hoc (4+1/2 digit, input onda quadra, media degli ultimi 2 secondi, ecc.). Oppure input analogico con filtraggio software (praticamente quasi un rilevatore di picco).

Piccio.

Piccio ha scritto:

Mi ricorda un po' questo:

formatting link

Bisognerebbe aumentare l'ordine del filtro, piu' celle in serie e/o=20 configurazione con pendenza maggiore.

17:30

ma, e trovare il modo di fare un sistema ad aggancio di fase, così la frequenza del PLL agganciata fa da filtro?

Ovviamente se il segnale utile ha frequenza costante

---

-*_ uniposta*yahoo-it -*_ uniposta*gmail-com

-- If his chest had been a cannon, he would have shot his heart upon it. Se il suo petto fosse stato un cannone, gli avrebbe sparato contro il suo cuore. (Herman Melville, Moby Dick; Patrick Stewart, Capt. Jean-Luc Picard, Star Trek - The Next Generation)

...

giri.htm

Intendevo proprio una cosa simile. Il filtro non =E8 molto selettivo; in pratica =E8 un amplificatore convenzionale con la banda limitata, ma =E8 consolante sapere che funziona.

Piccio.

Purtroppo il segnale =E8 incostante e devo fare una media degli ultimi due secondi... :-|

Piccio.

Visto la bassissima frequenza, se la CPU è scarica, io fari così:

- classico Filtro RC passa basso, con taglio intorno 100Hz.

- Imposti l'ADC dell'ATmega per acquisire con un timer a f > 500Hz per stare sul sicuro

- Fai un semplice filtro IIR digitale passa basso.

Per l'ultimo punto, puoi progettarlo andando qui:

formatting link

Sì, lo so, ti darà delle costanti in virgola mobile, ma data la non criticità della frequenza di taglio e della pendenza, con un po' di prove vedrai che riuscirai a semplificare il tutto trasformando le moltiplicazioni in semplici shift logici. Una volta che il segnale è filtrato puoi squadrarlo comodamente e contare gli impulsi. Con un clock a una decina di MHz, ti dovrebbe stare tutto all'interno della ISR e l'occupazione di CPU non dovrebbe essere superiore al 30%.

_|/ Francesco Sacchi - Develer S.r.l., R&D dept. |\ http://www.develer.com/ - http://www.bertos.org

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required