فهرست مطالب:

MPU6050-شتاب سنج+حسگر ژیروسکوپ مبانی: 3 مرحله
MPU6050-شتاب سنج+حسگر ژیروسکوپ مبانی: 3 مرحله

تصویری: MPU6050-شتاب سنج+حسگر ژیروسکوپ مبانی: 3 مرحله

تصویری: MPU6050-شتاب سنج+حسگر ژیروسکوپ مبانی: 3 مرحله
تصویری: ژیروسکوپ ، معرفی ماژول MPU6050 ماژول ژیروسکوپ 2024, جولای
Anonim
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ
MPU6050-شتاب سنج+مبانی سنسور ژیروسکوپ

MPU6050 یک سنسور بسیار مفید است.

mpu 6050 یک IMU است: واحد اندازه گیری اینرسی (IMU) یک دستگاه الکترونیکی است که با استفاده از ترکیبی از شتاب سنج ها ، ژیروسکوپ ها ، نیروی خاص بدن ، میزان زاویه و گاهی جهت بدن را اندازه گیری و گزارش می کند.

این دستگاه 6 محوره است

3 محور می تواند شتاب را اندازه گیری کند و 3 مورد دیگر برای اندازه گیری شتاب زاویه ای است.

با استفاده از شتاب و شتاب زاویه ای می توان برآورد نسبتاً دقیقی از زاویه بدست آورد

در این آموزش ما در مورد چگونگی استفاده از MPU6050 با کتابخانه برای سهولت کارها استفاده می کنیم.

تدارکات

  1. برد آردوینو
  2. MPU6050
  3. سیم های بلوز
  4. تخته نان

مرحله 1: مدار را کامل کنید

مدار را کامل کنید
مدار را کامل کنید

این حسگر از پروتکلی موسوم به I2c برای ارتباط با آردوینو برای ارسال مقادیر استفاده می کند.

پین A4 برای ساعت سریال SCL استفاده می شود و باید به SCL سنسور وصل شود

، خط داده A5 به SDA-Serial.

Vcc به 5 ولت و Gnd به زمین متصل است

مرحله 2: کد نویسی

کد نویسی
کد نویسی

#شامل #شامل شود

قبل از شروع کار ، این کتابخانه توسط من نوشته نشده است ، من فقط فکر می کنم این کتابخانه ساده ترین کتابخانه موجود است و دوست دارم از آن استفاده کنم.

اینها فایلهای هدر ^^ هستند ، wire.h برای برقراری ارتباط i2c استفاده می شود

MPU6050 mpu6050 (سیم) ؛

در اینجا ما ژیروسکوپ خود را نامگذاری می کنیم ، یا یک شیء برای کسانی که با OOP familar هستند ایجاد می کنیم.

void setup () {

Serial.begin (9600)؛ Wire.begin ()؛ mpu6050.begin ()؛ mpu6050.calcGyroOffsets (درست) ؛ }

در ابتدا ما آفست ها را محاسبه می کنیم زیرا همه قرائت زاویه با توجه به جهت اولیه است.

حلقه خالی () {

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

هر کدام اندازه زاویه را به ما می دهند.

مرحله 3: سایر توابع

کتابخانه شامل توابع دیگر است

پسندیدن:

mpu6050.getTemp () // دما را می دهد (خیلی دقیق نیست)

mpu6050.getAccX () // شتاب خطی در جهت X

(توابع مشابه mpu6050.getAccY () ، mpu6050.getAccZ ())

mpu6050.getGyroX () // شتاب زاویه ای در مورد محور x

(توابع مشابه mpu6050.getGyroY () ، mpu6050.getGyroZ ())

توصیه شده: