Inhoudsopgave:

MPU6050-Versnellingsmeter + gyroscoopsensor Basisprincipes - Ajarnpa
MPU6050-Versnellingsmeter + gyroscoopsensor Basisprincipes - Ajarnpa

Video: MPU6050-Versnellingsmeter + gyroscoopsensor Basisprincipes - Ajarnpa

Video: MPU6050-Versnellingsmeter + gyroscoopsensor Basisprincipes - Ajarnpa
Video: How to use MPU-9250 Gyroscope, Accelerometer, Magnetometer for Arduino 2024, Juli-
Anonim
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes
MPU6050-Versnellingsmeter+Gyroscoop Sensor Basisprincipes

De MPU6050 is een zeer bruikbare sensor.

De mpu 6050 is een IMU: een traagheidsmeeteenheid (IMU) is een elektronisch apparaat dat de specifieke kracht van een lichaam, de hoeksnelheid en soms de oriëntatie van het lichaam meet en rapporteert, met behulp van een combinatie van versnellingsmeters en gyroscopen.

Het is een apparaat met 6 assen

3 van de as kunnen versnelling meten en de andere 3 zijn voor hoekversnellingsmetingen.

Met behulp van de versnelling en hoekversnelling is het mogelijk om een vrij nauwkeurige schatting van de hoek te krijgen

In deze tutorial zullen we onderzoeken hoe we de MPU6050 kunnen gebruiken met een bibliotheek om dingen een stuk eenvoudiger te maken.

Benodigdheden

  1. Arduino-bord
  2. MPU6050
  3. Doorverbindingsdraden
  4. Breadboard

Stap 1: Voltooi het circuit

Voltooi het circuit
Voltooi het circuit

De sensor gebruikt een protocol dat bekend staat als I2c om met de Arduino te communiceren om de waarden te verzenden.

De A4-pin wordt gebruikt voor SCL-seriële klok en moet worden aangesloten op SCL van de sensor en, A5 naar SDA-seriële datalijn.

De Vcc is verbonden met 5v en de Gnd is verbonden met aarde

Stap 2: Coderen

codering
codering

#include #include

Voordat ik begin, is deze bibliotheek niet door mij geschreven, ik denk gewoon dat het de eenvoudigste is en ik gebruik het graag.

Dit zijn de header-bestanden ^^, wire.h wordt gebruikt om een i2c-communicatie tot stand te brengen

MPU6050 mpu6050 (draad);

hier noemen we onze gyroscoop, of maken we een object voor degenen die bekend zijn met OOP's.

ongeldige setup() {

Serieel.begin(9600); Draad.begin(); mpu6050.begin(); mpu6050.calcGyroOffsets(true); }

In eerste instantie berekenen we offsets omdat alle hoekmetingen ten opzichte van de initiële oriëntatie zullen zijn.

lege lus() {

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

Elk geeft ons de maat van de hoek.

Stap 3: Andere functies

De bibliotheek bevat andere functies

Leuk vinden:

mpu6050.getTemp()//geeft de temperatuur (niet erg nauwkeurig)

mpu6050.getAccX()//Lineaire versnelling in X-richting

(vergelijkbare functies zijn mpu6050.getAccY(), mpu6050.getAccZ())

mpu6050.getGyroX()//Hoekversnelling rond de x-as

(vergelijkbare functies zijn mpu6050.getGyroY(), mpu6050.getGyroZ())