Innholdsfortegnelse:

MPU6050-Accelerometer+Gyroscope Sensor Basics: 3 trinn
MPU6050-Accelerometer+Gyroscope Sensor Basics: 3 trinn

Video: MPU6050-Accelerometer+Gyroscope Sensor Basics: 3 trinn

Video: MPU6050-Accelerometer+Gyroscope Sensor Basics: 3 trinn
Video: 6 DOF IMU (3 axis accelerometer, 3 axis gyroscope), Arduino, OpenGL, Python, complementary filter 2024, Juli
Anonim
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-Accelerometer+Gyroscope Sensor Basics
MPU6050-akselerometer+grunnleggende gyroskopsensor
MPU6050-akselerometer+grunnleggende gyroskopsensor

MPU6050 er en veldig nyttig sensor.

MPU 6050 er en IMU: En treghetsmåleenhet (IMU) er en elektronisk enhet som måler og rapporterer kroppens spesifikke kraft, vinkelfrekvens og noen ganger kroppens orientering ved hjelp av en kombinasjon av akselerometre, gyroskoper.

Det er en 6 -akset enhet

3 på aksen kan måle akselerasjon og de andre 3 er for vinkelakselerasjonsmålinger.

Ved å bruke akselerasjonen og vinkelakselerasjonen er det mulig å få et ganske nøyaktig estimat av vinkelen

I denne opplæringen skal vi utforske hvordan vi kan bruke MPU6050 med et bibliotek for å gjøre ting mye enklere.

Rekvisita

  1. Arduino bord
  2. MPU6050
  3. Jumper ledninger
  4. Brødbrett

Trinn 1: Fullfør kretsen

Fullfør kretsen
Fullfør kretsen

Sensoren bruker en protokoll kjent som I2c for å kommunisere med Arduino for å sende den verdiene.

A4-pinnen brukes til SCL-seriell klokke og skal kobles til SCL på sensoren og, A5 til SDA-seriell datalinje.

Vcc er koblet til 5v og Gnd er koblet til jord

Trinn 2: Koding

Koding
Koding

#include #include

Før jeg begynner, er ikke dette biblioteket skrevet av meg, jeg tror bare det er det enkleste der og elsker å bruke det.

Dette er toppfilene ^^, wire.h brukes til å etablere en i2c -kommunikasjon

MPU6050 mpu6050 (Wire);

her navngir vi gyroskopet vårt, eller lager et objekt for de som er kjent med OOP.

ugyldig oppsett () {

Serial.begin (9600); Wire.begin (); mpu6050.begin (); mpu6050.calcGyroOffsets (true); }

I utgangspunktet beregner vi forskyvninger siden alle vinkelmålingene kommer til å være med hensyn til den opprinnelige retningen.

void loop () {

mpu6050.update (); Serial.print ("vinkelX:"); Serial.print (mpu6050.getAngleX ()); Serial.print ("\ tangleY:"); Serial.print (mpu6050.getAngleY ()); Serial.print ("\ tangleZ:"); Serial.println (mpu6050.getAngleZ ()); }

Hver gir oss mål på vinkelen.

Trinn 3: Andre funksjoner

Biblioteket inneholder andre funksjoner

som:

mpu6050.getTemp () // gir temperaturen (ikke veldig nøyaktig)

mpu6050.getAccX () // Lineær akselerasjon i X -retning

(lignende funksjoner er mpu6050.getAccY (), mpu6050.getAccZ ())

mpu6050.getGyroX () // Vinkelakselerasjon rundt x -aksen

(lignende funksjoner er mpu6050.getGyroY (), mpu6050.getGyroZ ())

Anbefalt: