Indholdsfortegnelse:
![FIR -filtrering for mere pålidelig frekvensregistrering: 5 trin FIR -filtrering for mere pålidelig frekvensregistrering: 5 trin](https://i.howwhatproduce.com/images/001/image-2459-5-j.webp)
Video: FIR -filtrering for mere pålidelig frekvensregistrering: 5 trin
![Video: FIR -filtrering for mere pålidelig frekvensregistrering: 5 trin Video: FIR -filtrering for mere pålidelig frekvensregistrering: 5 trin](https://i.ytimg.com/vi/IG6Wvs_5hDY/hqdefault.jpg)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
![FIR -filtrering for mere pålidelig frekvensregistrering FIR -filtrering for mere pålidelig frekvensregistrering](https://i.howwhatproduce.com/images/001/image-2459-6-j.webp)
Jeg er en virkelig stor fan af akellyirls instruerbare om pålidelig frekvensregistrering ved hjælp af DSP -teknikker, men nogle gange er den teknik, han brugte, ikke god nok, hvis du har støjende målinger.
En let løsning for at få et renere input til frekvensdetektoren er at anvende en slags filter omkring den frekvens, du vil registrere.
Desværre er det ikke let at oprette et digitalt filter, og der er ret meget matematik involveret. Så jeg tænkte på at oprette en slags program for at forenkle oprettelsen af sådanne filtre, så alle kunne bruge dem i deres projekter uden at grave i detaljerne.
I denne Instructable kommer jeg til at detektere en 50Hz sinusbølge i en støjende måling med en Arduino Uno (Arduino er egentlig ikke nødvendig).
Trin 1: Problemet
![Problemet Problemet](https://i.howwhatproduce.com/images/001/image-2459-7-j.webp)
Forestil dig, at de målte inputdata ligner kurven ovenfor - temmelig støjende.
Hvis vi konstruerer en simpel frekvensdetektor som den i akellyirl's Instructable, er resultatet "-inf" eller i tilfælde af nedenstående kode: "Ja, for meget støj …"
Bemærk: Jeg brugte stort set al akellyirls kode, men tilføjede et rawData -array øverst indeholdende de støjende målinger.
Nedenfor kan du finde hele koden i en fil kaldet "unfiltered.ino".
Trin 2: Løsningen
![Løsningen Løsningen](https://i.howwhatproduce.com/images/001/image-2459-8-j.webp)
Da inputdataene er støjende, men vi kender den frekvens, vi leder efter, kan vi bruge et værktøj, jeg har oprettet kaldet easyFIR, til at oprette et Bandpass -filter og anvende det på inputdata, hvilket resulterer i et meget renere input til frekvensdetektoren (billedet ovenfor).
Trin 3: EasyFIR
![EasyFIR EasyFIR](https://i.howwhatproduce.com/images/001/image-2459-9-j.webp)
EasyFIR -værktøjet er ret let at bruge, bare download GitHub -depotet og kør filen easyFIR.py med en prøve af dine målinger (i CSV -format).
Hvis du åbner filen easyFIR.py, finder du 5 parametre (se billedet ovenfor), du kan og bør ændre afhængigt af det resultat, du gerne vil opnå. Når du har justeret de 5 parametre og udført python -filen, vil du se de beregnede koefficienter i din terminal. Disse koefficienter er afgørende for det næste trin!
Flere oplysninger om den nøjagtige brug findes her:
Trin 4: Filtrering
![Filtrering Filtrering](https://i.howwhatproduce.com/images/001/image-2459-10-j.webp)
Hvis du nu har beregnet de nødvendige filterkoefficienter, er det ret let at anvende den faktiske filer på frekvensdetektoren.
Som du kan se på billedet ovenfor, skal du kun tilføje koefficienterne, ApplyFilter -funktionen og derefter filtrere inputmålingerne.
Nedenfor kan du finde hele koden i en fil kaldet "filtered.ino".
Bemærk: stor tak til denne Stack Overflow Post for den store filterapplikationsalgoritme!
Trin 5: Nyd det
![god fornøjelse god fornøjelse](https://i.howwhatproduce.com/images/001/image-2459-11-j.webp)
Som du kan se, er vi nu i stand til at registrere et 50Hz signal selv i et støjende miljø?
Du er velkommen til at tilpasse min idé og kode til dine behov. Jeg vil være meget taknemmelig for at inkludere dine forbedringer!
Hvis du kan lide mit arbejde, ville jeg virkelig sætte pris på, hvis du støtter mit arbejde med stjerne på GitHub!
Tak for din støtte!:)
Anbefalede:
Smart motorcykel HUD-prototype (turn-by-turn navigation og så meget mere): 9 trin
![Smart motorcykel HUD-prototype (turn-by-turn navigation og så meget mere): 9 trin Smart motorcykel HUD-prototype (turn-by-turn navigation og så meget mere): 9 trin](https://i.howwhatproduce.com/images/001/image-818-j.webp)
Smart motorcykel HUD-prototype (turn-by-turn navigation og så meget mere): Hej! Denne instruktion er historien om, hvordan jeg designede og byggede en HUD (Heads-Up Display) platform designet til at blive monteret på motorcykelhjelme. Det blev skrevet i forbindelse med "kort" -konkurrencen. Desværre var jeg ikke i stand til helt at afslutte
VBScript Basics - Start dine scripts, forsinkelser og mere !: 5 trin
![VBScript Basics - Start dine scripts, forsinkelser og mere !: 5 trin VBScript Basics - Start dine scripts, forsinkelser og mere !: 5 trin](https://i.howwhatproduce.com/images/002/image-3102-22-j.webp)
VBScript Basics - Start dine scripts, forsinkelser og mere !: Velkommen til min første tutorial om, hvordan du laver VBScripts med notesblok. Med.vbs -filer kan du oprette nogle sjove sjov eller dødbringende vira. I denne vejledning viser jeg dig grundlæggende kommandoer som at starte dit script, åbne filer og meget mere. Ved t
Dyrkning af mere salat på mindre plads eller Dyrkning af salat i rummet, (mere eller mindre) .: 10 trin
![Dyrkning af mere salat på mindre plads eller Dyrkning af salat i rummet, (mere eller mindre) .: 10 trin Dyrkning af mere salat på mindre plads eller Dyrkning af salat i rummet, (mere eller mindre) .: 10 trin](https://i.howwhatproduce.com/images/009/image-26019-j.webp)
Dyrkning af mere salat på mindre plads eller … Dyrkning af salat i rummet, (mere eller mindre) .: Dette er en professionel indsendelse til Growing Beyond Earth, Maker Contest, indsendt via Instructables. Jeg kunne ikke være mere begejstret for at designe til produktion af rumafgrøder og sende min første Instructable. Til at begynde med bad konkurrencen os om at
Let, billig og pålidelig berøringssensor med kun 3 dele: 3 trin
![Let, billig og pålidelig berøringssensor med kun 3 dele: 3 trin Let, billig og pålidelig berøringssensor med kun 3 dele: 3 trin](https://i.howwhatproduce.com/images/010/image-28003-j.webp)
Let, billig og pålidelig berøringssensor med kun 3 dele: Styring af alle former for elektroniske enheder med et tryk på din finger kan være ganske nyttigt. I denne instruktive vil jeg vise dig, hvordan du bygger en let, men kraftig berøringssensor, der fungerer fejlfrit. Alt du behøver er en standard transistor og to
Pålidelig, sikker, tilpasselig SMS -fjernbetjening (Arduino/pfodApp) - Ingen kodning påkrævet: 4 trin
![Pålidelig, sikker, tilpasselig SMS -fjernbetjening (Arduino/pfodApp) - Ingen kodning påkrævet: 4 trin Pålidelig, sikker, tilpasselig SMS -fjernbetjening (Arduino/pfodApp) - Ingen kodning påkrævet: 4 trin](https://i.howwhatproduce.com/images/010/image-28896-j.webp)
Pålidelig, sikker, tilpasselig SMS -fjernbetjening (Arduino/pfodApp) - Ingen kodning påkrævet: Opdatering 6. juli 2018: En 3G/2G -version af dette projekt ved hjælp af SIM5320 er tilgængelig her Opdatering: 19. maj 2015: Brug pfodParser -biblioteket Version 2.5 eller højere. Det løser et rapporteret problem om ikke at give tid nok til, at skjoldet kan oprette forbindelse til