Filtrering Accelerometer buller i labVIEW (1 / 2 steg)

Steg 1: kod



Allmän översikt

Koden jag har lämnat bygger bort av de tidigare projekt. Du kanske har märkt det finns två loop strukturer. Först är vad jag kallar "Data Aquistion Loop" som i huvudsak läser data från chipKIT så snabbt som möjligt. Den andra slingan jag hänvisar till som "beräkningar Loop". Denna loop hanterar alla beräkningar som vi vill göra med data. Anledningen jag avgränsa data förvärv verksamheten från beräkningarna av data är att öka prestanda. LabVIEW är smart nog att kompilera koden i varje slinga så det kommer att köras på en separat kärna av din processor.

För att överföra data mellan två slingor, använder jag en lokal variabel. Varje gång beräkning loopen itererar, läser data från variabeln "XYZ kalibrerade värden" .

Jag har tagit två data tomter för detta särskilda projekt. En visar rådata, medan den andra visar filtrerade data. Tomterna är ett bra verktyg för att avgöra hur effektiva våra filtrering är. Tyvärr bug data tomterna om beräkningar loopen itererar till snabbt. Så måste en tidsfördröjning inkluderas till cap andelen loop.


Filtrera SubVI översikt

Allt filtreringen i detta projekt görs i en anpassad subVI. Denna subVI hjälper till att hålla koden snyggt och förståeligt. Inuti subVI finns det två typer av filtrering metoder som används. Först är enkel genomsnitt, och andra är låg passera Butterworth filtrering. Varje filtrering metod har en On/Off urval växla. När den är påslagen, spottar den ut filtrerade data. När växeln är avstängd, spottar den ut ofiltrerade rådata.


Filtrering med hjälp av medelvärden

Om ni minns från tidigare projekt, skulle rådata indata uppdatera så fort det var svårt att läsa. För att motverka detta, vi vill att genomsnittet (ta medelvärdet) av ett par datapunkter och Visa det värdet. Om vi i genomsnitt rätt antal datapunkter, visas informationen i läsbar takt. För att åstadkomma detta använde jag "menar PtByPt.vi". Här är lite mer information om det om du är nyfiken på hur det fungerar.


Filtrering med hjälp av ett lågpassfilter
Ett annat problem du kan ha råkat i föregående instructable är oberäkneligt jumpiness data. Detta kan bero på externa vibrationer eller vackla av din hand. Du kan använda ett lågpassfilter för att bli av detta. I huvudsak lågpass filtret smooth's ut abrupt hoppen mellan datapunkterna. Den särskilda lågpassfilter som jag använde i det här projektet är "Butterworth Filter PtByPt.vi". Om du är nyfiken på hur detta .vi fungerar, kolla in dess dokumentation. Observera att denna VI kan konfigureras för att fungera som 4 olika typer av filter (variabelt, Brytfrekvens, Bandpass eller Bandstop). Vi sysslar endast med variabelt filtrering, därav den "hög cuttof freq: fh" terminal lämnas osammanhängande.

Se Steg
Relaterade Ämnen

Rita 2d och 3d g-force vektorer i labVIEW

I detta instructable åker vi över hur man beräknar vektorer från accelerometer data. Vi kommer att beräkna utifrån dataXY 2d vektorZY 2d vektorZX 2d vektorXYZ 3d vektorOvanpå dessa beräkningar kommer vi också att undersöka hur man rita vektorer i 2d...

Stationära Accelerometer Tilt Sensor

I detta instructable jag skall gå igenom hur man bygger en tilt sensor (dvs mäta tonhöjden och rulle vinklar) använder en enda accelerometer. Jag har också tagit en "Gravity filter" som försöker ta bort verkan av tyngdkraften från accelerometer...

Kom igång med LabVIEW och Arduino (komplett tutorials)

Om du är en ny användare för elektronik och vill skapa projekt som ett proffs, är här handledningen för dig.Detta är inte en enskild handledning, detta kommer till följt av serie tutorials att slutföra en snabbkurs om hur LabVIEW att förvärva olika d...

Hacking misslyckades miljarder Dollar gränsen säkerhetssystemet

lika mycket som jag hatar uttrycket, det är ett stort FAIL!"Efter att ha avslöjat förra veckan som en pilot installation av kontroversiella, buggy gränssäkerhetscanner torn hade slutligen godkänts i bruk, den amerikanska regeringen har numedgav att p...

RB2 rinnande rutor.

Låter inte som en "stor sak"?Tja, för att vara ärlig, för mig visade det sig vara ganska svårt arbete. -0)Liksom i tidigare Bloggar jag siktar inte på en vetenskaplig uppsats, men jag ska försöka att avslöja fakta jag var tvungen att samlas för...

Enkla Accelerometer i labVIEW

Detta är en grundläggande handledning om hur du ansluter till en ADLX345 Accelerometer IC (finns på PmodACL) till labVIEW. Målet här är att installera ett enkelt projekt som kommer att läsa värden från accelerometern och kalibrera ingångarna så att d...

Guide till gyro och accelerometer med Arduino inklusive Kalman filtrering

denna guide var först postat på forumet Arduino, och kan hittas här: http://arduino.cc/forum/index.php/topic, 58048.0.htmlJag återuppfört bara den, så ännu mer kommer att få användning av den. Koden kan hittas här:https://github.com/TKJElectronics/ex...

Temperatur kontrollsystem med Labview (Atmega32)

ABSTRACTDetta arbete beskriver en ram av ON/OFF, proportionella och linjära temperatur styrsystem. Utformningen och genomförandet av denna process görs med LABVIEW, virtuella workbench programvara. Projektet omfattar datainsamling, databearbetning oc...

ACCELEROMETER & LOGGER + göra & användning

Bakgrund och syfteFör några veckor sedan en vän bröt hennes underarm: hon var på en buss vars föraren drog våldsamt bromsarna, och hon föll ner. Detta påminde mig om de få gånger som jag hade (artigt) påminna busschauffören att han inte skulle transp...

Accelerometer sköld för fysik klass och därefter

under en fysik klass vi Förformning en fysik experiment för att mäta accleration på grund av graivty - 9,8 m/s ^ 2 och medan vi inte göra någon ny fysik upptäckter jag hade en idé för att förbättra experimentet. Hur experimentet fungerade var att slä...

Accelerometer & Gyro handledning

IntroduktionHandboken är avsedd för alla intresserade att använda accelerometrar och gyroskop samt kombination IMU enheter (Inertial måttenhet) i deras elektronik projektKommer vi att täcka:Vad en accelerometer mäta?Vad ett gyroskop (aka gyro) mäta?H...

Analoga Buller Cancelling Hörlurarna

buller cancelling hörlurarna är ett idealiskt val för många musiklyssnare för deras förmåga att skära ut omgivande buller utan att höja ljudvolymen till en nivå som kan vara farliga för örat. Även med ingen musik i har hörlurarna förmågan att mute om...

Plug and Play-Pmods med LabVIEW

Pmods™ är små I/O gränssnitt styrelser som erbjuder ett idealiskt sätt att utöka funktionerna i våra FPGA/CPLD och inbäddad kontroll styrelser. Pmods kommunicera med systemet styrelser med 6 eller 12-pin-kontakter. Pmods inkluderar sensorer, I/O, dat...

MSP430 Accelerometer microSD Datalogger

Detta projekt startade som en EMG datalogger att studera min pappas Parkinsons sjukdom, men efter några tester jag beslutsamt bära elektroder inte var praktiskt för den långsiktiga datalogging som jag ville göra, data hamnade mycket bullrig på grund...

Tornerspel Robot (LabVIEW kod)

Detta instructable kommer att gå över den LabVIEW kod som jag skrev att styra en tornerspel robot. Detta är en djupgående förklaring av koden. Om inte du är intresserad av förklaringen, kopplas den LabVIEW VI det sista steget.För robot använde jag tv...

Frekvens mätning med LabVIEW

Denna video beskriver hur man mäter frekvensen av ljud med inbyggd mikrofon på en MacBook Pro och programvaran LabVIEW. Detta program skulle kunna användas att ställa ett musikinstrument. I det här exemplet använder jag en frekvens generator ansluten...

Arduino Nano: Accelerometer gyroskop kompass MPU9250 I2C Sensor med Visuino

MPU9250är en av de mest avancerade kombinerat Accelerometer, gyroskop och kompass liten storlek sensorer för närvarande finns tillgängliga. De har många avancerade funktioner, inklusive lågpass filtrering, rörelsedetektor och även en programmerbar sp...

Fånga rörelse med en Arduino Accelerometer w / XBee Comms

***************************************UPPDATERAD 10 JUNI 2014 ***Som utlovat, har detta Instructable uppdaterats med ett avsnitt om XBee meddelandet. Dessutom publiceras en ny Instructable snart om utvecklingen av rover del av detta projekt.Också, d...

DIY EKG med hjälp av en Analog Discovery 2 och LabVIEW

I detta Instructable kommer jag visa dig hur man gör en hemmagjord elektrokardiografiska (EKG). Målet med denna maskin är att förstärka, mäta och registrera den naturliga elektrisk potential skapad av hjärtat. En ECG kan avslöja en mängd information...