Innholdsfortegnelse:
- Trinn 1: Det vi trenger:
- Trinn 2: Bygg …
- Trinn 3: Litt ekstra informasjon før vi fortsetter
- Trinn 4: Kode:
- Trinn 5: Testing og konklusjon
Video: Vinkelmåling ved hjelp av gyro, akselerometer og Arduino: 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:26
Enheten er en grov prototype av det som til slutt vil bli en selvbalanseringsrobot, dette er den andre delen av hullet (les akselerometer og kontroller en motor for selvbalanse). Den første delen med bare gyroen finner du her. På denne instruksen vil vi måle vinkelen ved hjelp av både gyro og akselerometer, og ved å bruke en teknikk for å slå sammen begge sensoren for å få et jevnt signal. Teknikken kalles "komplementærfilter". Tidligere
Trinn 1: Det vi trenger:
Noen deler kan byttes ut, og noen endringer i koden må gjøres for å passe til maskinvaren din. På dette prosjektet vil vi bruke:- Brødbrett- Mikrokontroller, jeg brukte Arduinoboard- Wire- Jumper Wires- Gyroscope XV-8100- Nunchuck Wii (for akselerometeret)- Nunchuck Wii-adapter for Arduino
Trinn 2: Bygg …
Kretsen består av et gyroskop som er koblet direkte til port 0 på din arduino og en nunchuck wii -tilkobling ved I2C -porten. Montering av gyroen: 1. - plugg gyroen på brødbrettet 2. - wire ever thing:- Vo pin fra gyro koblet til analog port 0 på arduino (lys oransje wire)- G pin fra gyro koblet til bakken (White wire)- V+ pin fra gyro koblet til Vdd (3.3V) (Orange wire) Montering akselerometeret: 1. - plugg adapteren på nunchuck2. - plugg nunchuck på arduino ved hjelp av adapteren3. - plasser accel -sensoren som bildet ovenfor
Trinn 3: Litt ekstra informasjon før vi fortsetter
Fra begge sensorer kan vi måle vinkelen, men ved å bruke to forskjellige teknikker. For å måle vinkelen ved hjelp av gyroen må vi integrere signalet. Men hvorfor må vi gjøre dette? Fordi gyroen gir oss vinkelfrekvensen, er en enkel måte å få vinkelen på å ha vinkelfrekvensen multiplisert med tiden [vinkel = vinkel + w * dt] For å måle vinkelen ved hjelp av et akselerometer må vi kjenne tyngdekraften i hver akselen til akselerometeret, hva det betyr, projeksjonen av tyngdekraftakselerasjonen i hver retning av sensoren gir oss en ide om vinkelen. [angle_accel = arctg (Ay / sqrt (Ax^2 + Az^2))] Så hvorfor skal vi bruke to sensorer i stedet en? For å dra fordel av begge sensoregenskapene. Hvis du ser på grafikken, øker gyrodata kontinuerlig økning, dette kalles drift og akselerometerdataene endres mye på en liten tid. Jeg vet ikke den eksakte teorien bak dette, men det fungerer fint. Det er litt informasjon på internett, bare google den hvis du trenger mer informasjon. Denne lenken har mye informasjon og kan være nyttig. Filtered_angle = HPF*(filtered_angle + w*dt) + LPF*(angle_accel); hvor HPF + LPF = 1 Verdiene for HPF og LPF finnes på denne lenken, i filter.pdf -filen. Takk fra "The DIY Segway". Bare for testformål skal vi sette disse verdiene slik, HPF = 0,98 og LPF = 0,02.
Trinn 4: Kode:
Koden er en tilpasning fra en kode som jeg brukte på et annet prosjekt. Sannsynligvis er det noen variabler som ikke er brukt. Jeg brukte et bibliotek for å lese nunchuck -dataene fra https://todbot.com/blog/. Takk Tod E. Kurt. Kommentarene til kode er på portugisisk, så snart jeg har ledig tid, vil jeg oversette den. Kodeutgangen gjennom serienummeret noen tall med dette mønsteret: dt: w: teta: pitch: filter_teta $ time: angular_velocity: gyro_angle: accel_angle: filtered_angle $ Så du kan lagre disse verdiene på en seriell terminal og plotte en grafikk eller bruke vinkelen til andre ting. Hvis du trenger noen forklaring om koden, kan du spørre. Koden er med glidelås. Bare pakk ut pakken, åpne og last den opp til arduinoen din.
Trinn 5: Testing og konklusjon
For å teste systemet lagret jeg dataene ved hjelp av et program som heter Termite, og importer deretter disse dataene til excel og plott grafikken for å se hvor godt filteret mitt er. Resultatene er fantastiske. Selvfølgelig kan du bruke signalet til å kjøre en motor eller andre ting. Eventuelle kommentarer, tvil, informasjon mangler, bare fortell meg og jeg retter det. Vær så snill hvis du liker dette. Takk.
Anbefalt:
DIY -- Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: 6 trinn
DIY || Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: Mens du lager en edderkopprobot, kan du lære så mange ting om robotikk. Som å lage roboter er både underholdende og utfordrende. I denne videoen skal vi vise deg hvordan du lager en Spider -robot, som vi kan bruke ved hjelp av smarttelefonen vår (Androi
Ulykkesvarslingssystem ved bruk av GSM, GPS og akselerometer: 5 trinn (med bilder)
Ulykkesvarslingssystem ved bruk av GSM, GPS og akselerometer: Vennligst stem meg for en konkurranseVennligst stem meg på konkurransenI dag dør mange mennesker på veien på grunn av ulykke, hovedårsaken er "forsinkelse i redning". Dette problemet er veldig stort i utviklingsland, så jeg designet dette prosjektet for å redde
Hvordan lage en drone ved hjelp av Arduino UNO - Lag en quadcopter ved hjelp av mikrokontroller: 8 trinn (med bilder)
Hvordan lage en drone ved hjelp av Arduino UNO | Lag en Quadcopter ved hjelp av mikrokontroller: Introduksjon Besøk min Youtube -kanal En Drone er en veldig dyr gadget (produkt) å kjøpe. I dette innlegget skal jeg diskutere hvordan jeg får det billig? Og hvordan kan du lage din egen slik til en billig pris … Vel, i India er alle materialer (motorer, ESCer
Gestkontrollert Rover ved hjelp av et akselerometer og en RF-sender-mottakerpar: 4 trinn
Bevegelseskontrollert rover ved hjelp av et akselerometer og en RF-sender-mottakerpar: Hei, noen gang ønsket du å bygge en rover som du kunne styre med enkle håndbevegelser, men aldri kunne ta mot til å våge deg inn i vanskelighetene med bildebehandling og grensesnitt mellom et webkamera og din mikrokontroller, for ikke å snakke om oppoverbakken
Foreløpig* SPI på Pi: Kommunikasjon med et SPI 3-akset akselerometer ved hjelp av en bringebær Pi: 10 trinn
Foreløpig* SPI på Pi: Kommunikasjon med et SPI 3-akset akselerometer Bruke en Raspberry Pi: Trinnvis veiledning om hvordan du konfigurerer Raspbian og kommuniserer med en SPI-enhet ved hjelp av bcm2835 SPI-bibliotek (IKKE litt banket!) Dette er fortsatt veldig foreløpig … Jeg må legge til bedre bilder av fysisk oppkobling, og jobbe med noen av de vanskelige kodene