ዝርዝር ሁኔታ:

MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p): 5 ደረጃዎች
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p): 5 ደረጃዎች

ቪዲዮ: MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p): 5 ደረጃዎች

ቪዲዮ: MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p): 5 ደረጃዎች
ቪዲዮ: MPU-6050 Gyroscope Teapot demo 3D simulation 2024, ሀምሌ
Anonim
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p)
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p)
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p)
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱዲኖ ጋር (Atmega328p)
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱinoኖ ጋር (Atmega328p)
MPU 6050 Gyro ፣ የፍጥነት መለኪያ ከአርዱinoኖ ጋር (Atmega328p)

የ MPU6050 አይኤምኤው በአንድ ቺፕ ላይ የተቀናጀ 3-Axis accelerometer እና 3-Axis gyroscope አለው።

ጋይሮስኮፕ በ X ፣ Y እና Z ዘንግ ላይ የማዕዘን አቀማመጥ በጊዜ ሂደት የማሽከርከር ፍጥነት ወይም የለውጥ መጠን ይለካል።

የጋይሮስኮፕ ውፅዓት በሰከንድ በዲግሪዎች ነው ፣ ስለሆነም የማዕዘን አቀማመጥን ለማግኘት የማዕዘን ፍጥነቱን ማዋሃድ ብቻ ያስፈልገናል።

በሌላ በኩል ፣ MPU6050 የፍጥነት መለኪያ በ 3 መጥረቢያዎች ላይ የስበት ፍጥነትን በመለካት እና አንዳንድ ትሪጎኖሜትሪ ሂሳብን በመጠቀም አነፍናፊው የተቀመጠበትን አንግል ማስላት እንችላለን። ስለዚህ ፣ የፍጥነት መለኪያ እና ጋይሮስኮፕ መረጃን ብንቀላቀል ወይም ብናጣምር ስለ አነፍናፊ አቀማመጥ በጣም ትክክለኛ መረጃ ማግኘት እንችላለን።

MPU-6050 በ x ፣ y ፣ z ዘንግ ከማይክሮ ኤሌክትሮ ሜካኒካል ሲስተም ቴክኖሎጂ (ኤምኤምኤስ) ጋር የማሽከርከር ፍጥነትን መለየት የሚችል የ 3 ዘንግ ጋይሮስኮፕን ያካተተ ነው። አነፍናፊው በማንኛውም ዘንግ ላይ በሚሽከረከርበት ጊዜ በ MEMS በተገኘው የኮሪዮሊስ ውጤት ምክንያት ንዝረት ይዘጋጃል። 1000 ፣ +/- 2000 የሙሉ ልኬት ወሰን ክልል ነው።የመደበኛ ፍጥነት በእያንዳንዱ ዘንግ ላይ በሰከንድ አሃድ ይለካል።

ጠቃሚ አገናኝ ………………….

የአርዱዲኖ ቦርድ …………….

MPU6050 IMU ……………

ደረጃ 1: MPU-6050 ሞዱል

MPU-6050 ሞዱል
MPU-6050 ሞዱል

የ MPU-6050 ሞዱል 8 ፒኖች አሉት ፣

INT: ዲጂታል ውፅዓት ፒን ያቋርጡ።

AD0: I2C የባሪያ አድራሻ LSB ፒን። ይህ በ 7 ቢት የመሣሪያ አድራሻ ውስጥ 0 ኛ ቢት ነው። ከ VCC ጋር ከተገናኘ እንደ አመክንዮ አንድ እና የባሪያ አድራሻ ሲቀየር ይነበባል።

XCL: ረዳት ተከታታይ ሰዓት ፒን። ይህ ፒን ሌሎች የ I2C በይነገጽ የነቁ ዳሳሾች SCL ፒን ከ MPU-6050 ጋር ለማገናኘት ያገለግላል።

ኤክስዲኤ - ረዳት ተከታታይ የውሂብ ፒን። ይህ ፒን ሌሎች የ I2C በይነገጽ የነቁ ዳሳሾች SDA ፒን ከ MPU-6050 ጋር ለማገናኘት ያገለግላል።

SCL: ተከታታይ ሰዓት ፒን። ይህንን ፒን ከማይክሮ መቆጣጠሪያዎች SCL ፒን ጋር ያገናኙ። ኤስዲኤ - ተከታታይ የውሂብ ፒን። ይህን ፒን ከማይክሮ መቆጣጠሪያዎች SDA ፒን ጋር ያገናኙ።

GND: የመሬት ፒን። ይህን ሚስማር ከመሬት ግንኙነት ጋር ያገናኙ።

ቪሲሲ: የኃይል አቅርቦት ፒን። ይህን ፒን ከ +5 ቪ ዲሲ አቅርቦት ጋር ያገናኙ። MPU-6050 ሞዱል የባሪያ አድራሻ አለው (AD0 = 0 ፣ ማለትም ከቪሲሲ ጋር አልተገናኘም) እንደ ፣

የባሪያ ፃፍ አድራሻ (SLA+W): 0xD0

የባሪያ ንባብ አድራሻ (SLA+R): 0xD1

ደረጃ 2 - ስሌቶች

ስሌቶች
ስሌቶች

የ MPU6050 ሞዱል ጋይሮስኮፕ እና የፍጥነት መለኪያ ዳሳሽ መረጃ በ 2 ማሟያ ቅጽ ውስጥ 16-ቢት ጥሬ መረጃን ያካትታል።

የ MPU6050 ሞዱል የሙቀት ዳሳሽ መረጃ 16-ቢት መረጃን (በ 2 ማሟያ ቅጽ ውስጥ አይደለም)።

አሁን እኛ መርጠናል እንበል ፣

  • - የፍጥነት መለኪያ ሙሉ ልኬት +/- 2 ግ ከ 16 ፣ 384 LSB (ቆጠራ)/ሰ ጋር።
  • - የግሪኮስኮፕ ሙሉ ልኬት ክልል +/- 250 °/ሰ ከ 131 ኤልኤስቢ (ቆጠራ)/°/ሰ ጋር የስሜት መለኪያ ሚዛን። ከዚያ ፣

የአነፍናፊ ጥሬ መረጃን ለማግኘት በመጀመሪያ በአክስሌሮሜትር እና ጋይሮስኮፕ ዳሳሽ መረጃ ላይ የ 2 ን ማሟያ ማከናወን አለብን። የአነፍናፊ ጥሬ መረጃን ካገኘን በኋላ የአነፍናፊ ጥሬ መረጃን በስሜታዊ ልኬታቸው መጠን እንደሚከተለው በመከፋፈል የፍጥነት እና የማዕዘን ፍጥነትን ማስላት እንችላለን-

የፍጥነት መለኪያ እሴቶች በ g (g ኃይል)

  • በ X ዘንግ ላይ ማፋጠን = (የፍጥነት መለኪያ X ዘንግ ጥሬ መረጃ/16384) ሰ.
  • በ Y ዘንግ ላይ ማፋጠን = (የፍጥነት መለኪያ Y ዘንግ ጥሬ መረጃ/16384) ሰ.
  • በ Z ዘንግ = (Accelerometer Z axis ጥሬ መረጃ/16384) ሰ.

ጋይሮስኮፕ እሴቶች በ °/ሰ (ዲግሪ በሰከንድ)

  • በ X ዘንግ = (ጋይሮስኮፕ X ዘንግ ጥሬ መረጃ/131) °/ሰ።
  • በ Y ዘንግ = የማዕዘን ፍጥነት = (ጋይሮስኮፕ Y ዘንግ ጥሬ መረጃ/131) °/ሰ።
  • በ Z ዘንግ = (ጋይሮስኮፕ Z ዘንግ ጥሬ መረጃ/131) °/ሰ።

የሙቀት እሴት በ °/ሴ (ዲግሪ በሴልሲየስ)

የሙቀት መጠን በዲግሪዎች C = ((የሙቀት ዳሳሽ መረጃ)/340 + 36.53) °/ሐ።

ለምሳሌ, እንበል ፣ ከ 2’ማሟያ በኋላ የፍጥነት መለኪያ X መጥረቢያ ጥሬ እሴት = +15454 እናገኛለን

ከዚያም መጥረቢያ = +15454/16384 = 0.94 ግ.

ተጨማሪ ፣

ስለዚህ እኛ በ +/- 2G እና +/- 250deg/s ትብነት ላይ እንደምንሠራ እናውቃለን ፣ ግን እሴቶቻችን ከእነዚያ የፍጥነት/ማዕዘኖች ጋር እንዴት ይዛመዳሉ።

እነዚህ ሁለቱም ቀጥታ መስመር ግራፎች ናቸው እና እኛ ለ 1 ጂ እኛ 16384 ን እና ለ 1 ዲግሪ/ሰከንድ 131.07 ን እናነብባለን (ምንም እንኳን.07 በሁለትዮሽ ምክንያት ችላ ቢልም) እነዚህ እሴቶች የተሰራው ስዕሉን በመሳል ብቻ ነው። የቀጥታ መስመር ግራፍ በ 2 ጂ በ 32767 እና -2G በ -32768 እና 250/-250 በተመሳሳይ እሴቶች።

ስለዚህ አሁን የእኛን የስሜት ህዋሳት እሴቶች (16384 እና 131.07) እናውቃለን ፣ ማካካሻዎቹን ከእሴቶቻችን መቀነስ እና ከዚያ በስሜታዊነት መወሰን አለብን።

እነዚህ ለ X እና Y እሴቶች ጥሩ ይሰራሉ ፣ ግን Z በ 1 ጂ ላይ እንደተመዘገበ እና 0 እንዳልሆነ ፣ በስሜታዊነት ከመከፋፈላችን በፊት 1G (16384) መቀነስ አለብን።

ደረጃ 3: MPU6050-Atmega328p ግንኙነቶች

MPU6050-Atmega328p ግንኙነቶች
MPU6050-Atmega328p ግንኙነቶች
MPU6050-Atmega328p ግንኙነቶች
MPU6050-Atmega328p ግንኙነቶች
MPU6050-Atmega328p ግንኙነቶች
MPU6050-Atmega328p ግንኙነቶች

በስዕላዊ መግለጫው ውስጥ እንደተጠቀሰው እያንዳንዱን ነገር ያገናኙ…

ግንኙነቶቹ እንደሚከተለው ተሰጥተዋል-

MPU6050 አርዱዲኖ ናኖ።

ቪሲሲ 5 ቪ መውጫ ፒን

GND መሬት ፒን

ኤስዲኤ A4 ፒን // ተከታታይ ውሂብ

SCL A5 ሚስማር // ተከታታይ ሰዓት

የፒች እና የጥቅል ስሌት-ጥቅል በ x ዘንግ ዙሪያ መሽከርከር ሲሆን ቅጥነት በ y ዘንግ ላይ መሽከርከር ነው።

ውጤቱም በራዲያን ነው። (በ 180 በማባዛት እና በ pi በመከፋፈል ወደ ዲግሪዎች ይቀይሩ)

ደረጃ 4: ኮዶች እና ማብራሪያዎች

ኮዶች እና ማብራሪያዎች
ኮዶች እና ማብራሪያዎች

/*

አርዱዲኖ እና MPU6050 የፍጥነት መለኪያ እና የጂሮስኮስኮፕ ዳሳሽ አጋዥ በ Dejan ፣ https://howtomechatronics.com */ #include const int MPU = 0x68; // MPU6050 I2C አድራሻ ተንሳፋፊ AccX ፣ AccY ፣ AccZ; ተንሳፋፊ GyroX ፣ GyroY ፣ GyroZ; ተንሳፋፊ accAngleX ፣ accAngleY ፣ gyroAngleX ፣ gyroAngleY ፣ gyroAngleZ; ተንሳፋፊ ጥቅል ፣ ቅጥነት ፣ ያው; ተንሳፋፊ AccErrorX ፣ AccErrorY ፣ GyroErrorX ፣ GyroErrorY ፣ GyroErrorZ; ተንሳፋፊ ጊዜ አል currentል ፣ የአሁኑ ጊዜ ፣ ያለፈው ጊዜ ፤ int c = 0; ባዶነት ማዋቀር () {Serial.begin (19200); Wire.begin (); // መተባበርን ያስጀምሩ Wire.begin ማስተላለፊያ (MPU); // ከ MPU6050 // መግባባት ይጀምሩ/ MPU = 0x68 Wire.write (0x6B); // ከምዝገባ 6B Wire.write (0x00) ጋር ይነጋገሩ; // ዳግም አስጀምር - 0 በ 6 ቢ መመዝገቢያ Wire.endTransmission (እውነተኛ) ውስጥ ያስቀምጡ። // ስርጭቱን ያጠናቅቁ/* // የፍጥነት መለኪያ ስሜትን ያዋቅሩ - ሙሉ ልኬት ክልል (ነባሪ +/- 2g) Wire.begin ማስተላለፊያ (MPU); Wire.write (0x1C); // ከ ACCEL_CONFIG መዝገብ (1C ሄክስ) Wire.write (0x10) ጋር ይነጋገሩ ፤ // የመመዝገቢያ ነጥቦቹን እንደ 00010000 (+/- 8g ሙሉ ልኬት ክልል) Wire.endTransmission (እውነተኛ) ያዘጋጁ። // የጂሮ ስሜትን ያዋቅሩ - ሙሉ ልኬት ክልል (ነባሪ +/- 250deg/s) Wire.begin ማስተላለፊያ (MPU); Wire.write (0x1B); // ከ GYRO_CONFIG መዝገብ (1 ቢ ሄክስ) Wire.write (0x10) ጋር ይነጋገሩ ፤ // የመመዝገቢያውን ቢት እንደ 00010000 (1000 ዲግ/ሰ ሙሉ ልኬት) Wire.endTransmission (እውነተኛ) ያዘጋጁ። መዘግየት (20); */ // ለሞዱልዎ የ IMU የስህተት እሴቶችን ለማግኘት ከፈለጉ ይህንን ተግባር ይደውሉ_IMU_error (); መዘግየት (20); } ባዶነት loop () {// === የፍጥነት መረጃን ያንብቡ === // Wire.beginTransmission (MPU); Wire.write (0x3B); // በመመዝገቢያ 0x3B (ACCEL_XOUT_H) Wire.endTransmission (ሐሰት) ይጀምሩ። Wire.requestFrom (MPU ፣ 6 ፣ እውነት); // አጠቃላይ 6 መዝገቦችን ያንብቡ ፣ እያንዳንዱ የዘንግ እሴት በ 2 መዝገቦች ውስጥ ተከማችቷል // ለ +-2 ግ ክልል ጥሬ እሴቶችን በ 16384 መከፋፈል አለብን ፣ እንደ AccX = (Wire.read () << 8 | Wire.read ()) / 16384.0; // ኤክስ-ዘንግ እሴት AccY = (Wire.read () << 8 | Wire.read ()) / 16384.0; // የ-ዘንግ እሴት AccZ = (Wire.read () << 8 | Wire.read ()) / 16384.0; // የ Z -axis እሴት // ጥቅል እና ፒች ከአክስሌሮሜትር መረጃ accAngleX = (atan (AccY / sqrt (pow (AccX ፣ 2) + pow (AccZ ፣ 2))))) * 180 / PI) - 0.58; // AccErrorX ~ (0.58) ለተጨማሪ ዝርዝሮች የሂሳብ_IMU_error () ብጁ ተግባርን ይመልከቱ AcAngleY = (atan (-1 * AccX / sqrt (ዱቄት (AccY ፣ 2) + ዱቄት (AccZ ፣ 2))) * 180 / PI) + 1.58; // AccErrorY ~ (-1.58) // === የጂሮስኮፕ መረጃን ያንብቡ === // previousTime = currentTime; // ትክክለኛው ጊዜ የአሁኑን ጊዜ = ሚሊስን () ከማንበቡ በፊት የቀደመው ጊዜ ተከማችቷል ፤ // የአሁኑ ጊዜ ትክክለኛው ጊዜ ንባብ አልቋልTime = (የአሁኑ ጊዜ - ቀዳሚ ጊዜ) / 1000; // ሰከንዶች ለማግኘት በ 1000 ይከፋፈሉ Wire.beginTransmission (MPU); Wire.write (0x43); // የጂሮ ውሂብ መጀመሪያ የመመዝገቢያ አድራሻ 0x43 Wire.endTransmission (ሐሰት); Wire.requestFrom (MPU ፣ 6 ፣ እውነት); // አጠቃላይ 4 መዝገቦችን ያንብቡ ፣ እያንዳንዱ የዘንግ እሴት በ 2 መዝገቦች ውስጥ ተከማችቷል GyroX = (Wire.read () << 8 | Wire.read ()) / 131.0; // ለ 250 ዲግ/ ሰ ክልል በመጀመሪያ ጥሬ እሴቱን በ 131.0 መከፋፈል አለብን ፣ በ GyroY = (Wire.read () << 8 | Wire.read ())/ 131.0; GyroZ = (Wire.read () << 8 | Wire.read ()) / 131.0; // በተሰጡት የስህተት እሴቶች ውጤቶቹን ያስተካክሉ GyroX = GyroX + 0.56; // GyroErrorX ~ (-0.56) GyroY = GyroY - 2; // GyroErrorY ~ (2) GyroZ = GyroZ + 0.79; // GyroErrorZ ~ (-0.8) // በአሁኑ ጊዜ ጥሬ እሴቶቹ በሰከንዶች በዲግሪዎች ፣ ዲግ/ሰ ውስጥ ናቸው ፣ ስለሆነም አንግል በዲግሪዎች gyroAngleX = gyroAngleX + GyroX * ያለፈበት ጊዜ ለማግኘት በሰከንዶች (ዎች) ማባዛት አለብን። // deg/s * s = deg gyroAngleY = gyroAngleY + GyroY * ያለፈበት ጊዜ; yaw = yaw + GyroZ * አልpsል ጊዜ; // ተጨማሪ ማጣሪያ - የፍጥነት መቆጣጠሪያ እና የጂሮ ማእዘን እሴቶች ጥቅል = 0.96 * gyroAngleX + 0.04 * accAngleX ን ያጣምሩ። pitch = 0.96 * gyroAngleY + 0.04 * accAngleY; // በተከታታይ ማሳያ ላይ እሴቶችን ያትሙ Serial.print (ጥቅል); Serial.print ("/"); Serial.print (ቅጥነት); Serial.print ("/"); Serial.println (yaw); } ባዶነት calcula_IMU_error () {// የፍጥነት መለኪያ እና የጂሮ ውሂብን ስህተት ለማስላት በማዋቀሪያው ክፍል ውስጥ ይህንን መዝናኛ መደወል እንችላለን። ከዚህ በተከታዮቹ ማሳያ ላይ የታተሙ ከላይ በተጠቀሱት እኩልታዎች ውስጥ ጥቅም ላይ የዋሉ የስህተት እሴቶችን እናገኛለን። // ልብ ይበሉ ተገቢውን እሴቶችን ለማግኘት IMU ን ለጥፎ ማስቀመጥ ያለብን ፣ ስለዚህ ትክክለኛ እሴቶችን እንድናገኝ/ // የፍጥነት መለኪያ እሴቶችን 200 ጊዜ አንብብ (ሐ <200) {Wire.beginTransmission (MPU) ፤ Wire.write (0x3B); Wire.end ማስተላለፍ (ሐሰት); Wire.requestFrom (MPU ፣ 6 ፣ እውነት); AccX = (Wire.read () << 8 | Wire.read ()) / 16384.0; AccY = (Wire.read () << 8 | Wire.read ()) / 16384.0; AccZ = (Wire.read () << 8 | Wire.read ()) / 16384.0; // ሁሉንም ንባቦች ድምር AccErrorX = AccErrorX + ((atan ((AccY) / sqrt (pow ((AccX) ፣ 2) + pow ((AccZ) ፣ 2))) * 180 / PI)); AccErrorY = AccErrorY + ((atan (-1 * (AccX)) / sqrt (ዱቄት ((AccY) ፣ 2) + ዱቄት ((AccZ) ፣ 2))) * 180 / PI)); ሐ ++; } // የስህተቱን እሴት AccErrorX = AccErrorX /200 ለማግኘት ድምርውን በ 200 ይከፋፍሉ። AccErrorY = AccErrorY / 200; ሐ = 0; // የጂሮ እሴቶችን 200 ጊዜ ያንብቡ (ሐ <200) {Wire.beginTransmission (MPU) ፤ Wire.write (0x43); Wire.end ማስተላለፍ (ሐሰት); Wire.requestFrom (MPU ፣ 6 ፣ እውነት); GyroX = Wire.read () << 8 | Wire.read (); GyroY = Wire.read () << 8 | Wire.read (); GyroZ = Wire.read () << 8 | Wire.read (); // ሁሉንም ንባቦች ድምር GyroErrorX = GyroErrorX + (GyroX / 131.0); GyroErrorY = GyroErrorY + (GyroY / 131.0); GyroErrorZ = GyroErrorZ + (GyroZ / 131.0); ሐ ++; } // የስህተት እሴቱን ለማግኘት ድምርውን በ 200 ይከፋፍሉ GyroErrorX = GyroErrorX /200; GyroErrorY = GyroErrorY / 200; GyroErrorZ = GyroErrorZ / 200; // የስህተት እሴቶችን በ Serial Monitor Serial.print (“AccErrorX:”) ላይ ያትሙ ፤ Serial.println (AccErrorX); Serial.print ("AccErrorY:"); Serial.println (AccErrorY); Serial.print ("GyroErrorX:"); Serial.println (GyroErrorX); Serial.print ("GyroErrorY:"); Serial.println (GyroErrorY); Serial.print ("GyroErrorZ:"); Serial.println (GyroErrorZ); } ------------------------------------------------- -------------------------------------------- ውጤቶች-X = Y = Z = ----------------------------------------------------- ------------------------------------------------ ጠቃሚ ማሳሰቢያ- ------------------------

በሉፕ ክፍሉ ውስጥ የፍጥነት መለኪያ መረጃን በማንበብ እንጀምራለን። የእያንዳንዱ ዘንግ መረጃ በ 2 ባይት ወይም በመመዝገቢያዎች ውስጥ ተከማችቷል እና የእነዚህን መመዝገቢያዎች አድራሻዎችን ከአነፍናፊው የውሂብ ሉህ ማየት እንችላለን።

ሁሉንም ለማንበብ ፣ እኛ በመጀመሪያ ምዝገባ እንጀምራለን ፣ እና የ ‹RequiestFrom (›) ተግባርን በመጠቀም ሁሉንም የ X ፣ Y እና Z ዘሮች 6 መዝገቦችን እንዲያነቡ እንጠይቃለን። ከዚያ ከእያንዳንዱ መዝገብ ውሂቡን እናነባለን ፣ እና ውፅዓቶቹ ሁለት ተጓዳኝ ስለሆኑ ፣ ትክክለኛዎቹን እሴቶች ለማግኘት በአግባቡ እናዋሃዳቸዋለን።

ደረጃ 5 - ያጋደለ አንግልን መረዳት

የፍጥነት መለኪያ

የምድር ስበት ኃይል ሁል ጊዜ ወደ ምድር መሃል የሚያመላክት የማያቋርጥ ፍጥነት ነው።

የፍጥነት መለኪያ ከስበት ኃይል ጋር ትይዩ በሚሆንበት ጊዜ የሚለካው ፍጥነቱ 1 ጂ ይሆናል ፣ የፍጥነት መለኪያው ከስበት ኃይል ጋር ቀጥ ባለበት ጊዜ 0G ይለካል።

ይህንን ቀመር በመጠቀም የማዞሪያ አንግል ከተለካ ፍጥነቱ ሊሰላ ይችላል-

θ = ኃጢአት -1 (የሚለካ ማፋጠን / የስበት ማፋጠን)

GyroGyro (የአካ ተመን ዳሳሽ) የማዕዘን ፍጥነቱን (ω) ለመለካት ጥቅም ላይ ይውላል።

የሮቦት ጠመዝማዛ አንግል ለማግኘት ከዚህ በታች ባለው ቀመር እንደሚታየው ውሂቡን ከጂሮ ማዋሃድ አለብን።

ω = dθ / dt ፣

θ = ∫ ω dt

Gyro እና Accelerometer Sensor Fusion የሁለቱም የጂሮ እና የፍጥነት መለኪያ ባህሪያትን ካጠናን በኋላ የራሳቸው ጥንካሬ እና ድክመት እንዳላቸው እናውቃለን። ከአክስሌሮሜትር መረጃው የተሰላው የዘንባባ ማእዘን ዘገምተኛ የምላሽ ጊዜ አለው ፣ ከጂሮ ውሂብ የተቀናጀ የመጠምዘዝ አንግል በተወሰነ ጊዜ ውስጥ ለመንሸራተት ይጋለጣል። በሌላ አነጋገር ፣ የፍጥነት መለኪያ ውሂቡ የጂሮ ውሂብ ለአጭር ጊዜ ጠቃሚ ሆኖ ሳለ ለረጅም ጊዜ ጠቃሚ ነው ማለት እንችላለን።

ለተሻለ ግንዛቤ አገናኝ እዚህ ጠቅ ያድርጉ

የሚመከር: