Hvordan måle vinkel med MPU-6050 (GY-521): 3 trinn
Hvordan måle vinkel med MPU-6050 (GY-521): 3 trinn
Anonim
Hvordan måle vinkel med MPU-6050 (GY-521)
Hvordan måle vinkel med MPU-6050 (GY-521)

I denne instruksen vil vi måle vinkelen med en Arduino. Vi trenger noen kabler, en Arduino UNO og GY-521 (MPU-6050) for å måle vinkelen.

Trinn 1: Koble MPU-6050 til Arduino UNO

Koble MPU-6050 til Arduino UNO
Koble MPU-6050 til Arduino UNO

Vi trenger noen hann-hun-kabler, en Arduino UNO og GY-521 (MPU-6050) sensor for å måle vinkelen. Vi må koble MPU-6050 til Arduino UNO som vist på bildet. Så,

  • VCC til 5V (MPU-6050 fungerer med 3,3V, men GY-521 øker den til 5V.),
  • GND til GND,
  • SCL til A5,
  • SDA til A4,
  • ADO til GND,
  • INT til digital pin 2.

Trinn 2: Kode

Kode
Kode

Her er koden. Den bruker I2C. Jeg tok noen deler av koden fra internett. (I2C del)

// Skrevet av Ahmet Burkay KIRNIK // Måling av vinkel med MPU-6050 (GY-521)

#inkludere

const int MPU_addr = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ;

int minVal = 265; int maxVal = 402;

dobbelt x; dobbelt y; dobbel z;

ugyldig oppsett () {Wire.begin (); Wire.beginTransmission (MPU_addr); Wire.write (0x6B); Wire.write (0); Wire.endTransmission (true); Serial.begin (9600); } void loop () {Wire.beginTransmission (MPU_addr); Wire.write (0x3B); Wire.endTransmission (false); Wire.requestFrom (MPU_addr, 14, true); AcX = Wire.read () << 8 | Wire.read (); AcY = Wire.read () << 8 | Wire.read (); AcZ = Wire.read () << 8 | Wire.read (); int xAng = map (AcX, minVal, maxVal, -90, 90); int yAng = map (AcY, minVal, maxVal, -90, 90); int zAng = map (AcZ, minVal, maxVal, -90, 90);

x = RAD_TO_DEG * (atan2 (-yAng, -zAng)+PI); y = RAD_TO_DEG * (atan2 (-xAng, -zAng)+PI); z = RAD_TO_DEG * (atan2 (-yAng, -xAng)+PI);

Serial.print ("AngleX ="); Serial.println (x);

Serial.print ("AngleY ="); Serial.println (y);

Serial.print ("AngleZ ="); Serial.println (z); Serial.println ("-----------------------------------------"); forsinkelse (400); }

Trinn 3: Ferdig

Ferdig!
Ferdig!

Det er gjort! Hvis det ikke fungerer eller du trenger hjelp, kan du legge igjen en kommentar eller sende en e -post. Du finner e -postadressen min fra kommentarer. Engelsk er forresten ikke så bra, så jeg beklager dårlig engelsk.

Ahmet Burkay KIRNIK

Istanbul, Tyrkia

Edit: Etter 2 år ble engelskheten min bedre, så jeg korrigerte noen feil.

Anbefalt: