Satura rādītājs:

MPU6050-akselerometrs+žiroskopa sensora pamati: 3 soļi
MPU6050-akselerometrs+žiroskopa sensora pamati: 3 soļi

Video: MPU6050-akselerometrs+žiroskopa sensora pamati: 3 soļi

Video: MPU6050-akselerometrs+žiroskopa sensora pamati: 3 soļi
Video: АНОНС! Raspberry Pi #PICO RP2040, ЖК-дисплей 1,28 дюйма, гироскоп, акселерометр 27 января 2023 г. 2024, Jūlijs
Anonim
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati
MPU6050-akselerometrs+žiroskopa sensora pamati

MPU6050 ir ļoti noderīgs sensors.

Mpu 6050 ir IMU: Inerciālā mērvienība (IMU) ir elektroniska ierīce, kas mēra un ziņo par ķermeņa specifisko spēku, leņķisko ātrumu un dažreiz ķermeņa orientāciju, izmantojot akselerometru, žiroskopu kombināciju.

Tā ir 6 asu ierīce

Asis 3 var izmērīt paātrinājumu, bet pārējās 3 - leņķiskā paātrinājuma mērījumiem.

Izmantojot paātrinājumu un leņķisko paātrinājumu, ir iespējams iegūt diezgan precīzu leņķa novērtējumu

Šajā apmācībā mēs izpētīsim, kā mēs varam izmantot MPU6050 ar bibliotēku, lai padarītu lietas daudz vieglākas.

Piegādes

  1. Arduino dēlis
  2. MPU6050
  3. Jumper vadi
  4. Maizes dēlis

1. darbība. Pabeidziet ķēdi

Pabeidziet ķēdi
Pabeidziet ķēdi

Sensors izmanto protokolu, kas pazīstams kā I2c, lai sazinātos ar Arduino, lai nosūtītu tam vērtības.

A4 tapa tiek izmantota SCL sērijas pulkstenim, un tai jābūt savienotai ar sensora SCL, No A5 līdz SDA-sērijas datu līnijai.

Vcc ir savienots ar 5 V, un Gnd ir savienots ar zemi

2. darbība: kodēšana

Kodēšana
Kodēšana

#iekļaut #iekļaut

Pirms es sāku, šī bibliotēka nav manis rakstīta, es tikai domāju, ka tā ir visvienkāršākā un man patīk to izmantot.

Tie ir galvenes faili ^^, wire.h tiek izmantots, lai izveidotu i2c komunikāciju

MPU6050 mpu6050 (vads);

šeit mēs nosaucam savu žiroskopu vai izveidojam objektu tiem, kas ir pazīstami ar OOP.

void setup () {

Sērijas sākums (9600); Wire.begin (); mpu6050.begin (); mpu6050.calcGyroOffsets (patiess); }

Sākotnēji mēs aprēķinām kompensācijas, jo visi leņķa rādījumi būs attiecībā pret sākotnējo orientāciju.

void loop () {

mpu6050.update (); Serial.print ("leņķisX:"); Serial.print (mpu6050.getAngleX ()); Serial.print ("\ tangleY:"); Sērijas nospiedums (mpu6050.getAngleY ()); Serial.print ("\ tangleZ:"); Serial.println (mpu6050.getAngleZ ()); }

Katrs dod mums leņķa mēru.

3. darbība. Citas funkcijas

Bibliotēkā ir citas funkcijas

piemēram:

mpu6050.getTemp () // norāda temperatūru (nav ļoti precīza)

mpu6050.getAccX () // Lineārs paātrinājums X virzienā

(līdzīgas funkcijas ir mpu6050.getAccY (), mpu6050.getAccZ ())

mpu6050.getGyroX () // Leņķiskais paātrinājums ap x asi

(līdzīgas funkcijas ir mpu6050.getGyroY (), mpu6050.getGyroZ ())

Ieteicams: