معرفی،راه اندازی و تست سنسورMPU6050 +کتابخانه+فیلم
ویرایش دوم این مطلب در تاریخ اسفند 1397 با کلی تغییرات و بهینه سازی ها صورت پذیرفت!
این بار با کلیپی حرفه ای و البته کاربردی در خدمتتون هستیم!
راه اندازی سنسور MPU6050 برای خیلی ها دغدغه ی اساسی هست، لذا برآن شدیم که برای راه اندازی این سنسور حرفه ای توسط AVR ، کتابخانه ای مناسب و کاربردی نوشته و آن را برای کاربران عزیز RoboticNGO ارائه دهیم، از آنجا که شاید برخی از اصطلاحات و تعاریف در کتابخانه برای بعضی ها نامفهوم باشد، در فیلم آموزشی زیر علاوه به تست عملی سنسور به آموزش کتابخانه نیز پرداخته شده است.
[maxbutton id=”1″ url=”http://dl.rngo.ir/uploads/TF-4MPU-WUs-RoboticNGO-com-.rar” text=”دانلود رایگان فایل کتابخانه + پروژه راه اندازی شده در فیلم” ] [maxbutton id=”1″ url=”http://dl.rngo.ir/uploads/MPU6050-Datasheet-RoboticNGO-com-.rar” text=”دانلود رایگان دیتاشیت های سنسور MPU6050″ ]
ناگفته نماند این مطلب علمی در سال 1392 به همراه مقاله ی سیستم سنجش موقعیت برپایه اینرسی (IMU 6-DOF) تدوین گشته است و اکنون یعنی اسفند 96 قصد داریم آپدیت ها و بهینه سازی هایی که تاکنون منتشر نشده است را در اختیار شما قرار دهیم، به سبب این تغییرات دانش فنی بسیار متفاوت تر از نسخه قبلی را خواهید داشت:
دانش فنی:
لازم به ذکر است که نسخه قدیمی کتابخانه راه اندازی سنسور مطابق فیلمی که در ابتدا آمده است همچنان به صورت رایگان در اختیار شما عزیزان میباشد. ولی نسخه پیشرفته کتابخانه مذکور که به حق تغییرات حرفه ای در آن دیده میشود و تکامل یافته است به صورت فروش فایل، قابل تهیه است.
محتویات این بسته:
- فایل پاورپونت ارائه شده در فیلم
- نسخه PDF مقاله ی سیستم سنجش موقعیت برپایه اینرسی (IMU 6-DOF)
- فایل پروژه کدویژن، حاوی نمونه کد و چندین کتابخانه
- کتابخانه کاربردی و حرفه ای I2C
- فایل هدر شامل رجیستر مپ و پارامترهای MPU6050
- کتابخانه فیلر ترکیب داده MadgwickAHRS
- فایل نمایش گرافیکی زوایای اویلر در متلب
- فایل مدارچاپی اشاره شده در مقاله
- تصاویر و کلیپ های مرتبط
تمامی محصولات نرم افزاری سایت شامل خدمات پشتیبانی میباشند و در صورتی که آپدیت ارائه شود، به صورت رایگان برای خریداران قبلی نیز ارسال میشود. در صورت وجود هرگونه مشکل در سورس میتوانید از بخش “نظرات” و یا “تماس با ما” با ما در ارتباط باشید.
سوالی داشتید، در قسمت نظرات بپرسید، کارشناسان فنی پژوهشگران در اسرع وقت پاسخگو خواهد بود.
با تشکر S_Ahmad
با سلام و احترام
در خصوص راه اندازی سنسور و نمایش عملکرد برروی متلب ویدئویی تحت این عنوان مرتبط با 6 سال پیش در آپارات قرار داشت لذا خواهشمندم فایل راه اندازی سنسور که با متلب انجام شده است را برای اینجانب پیگیری نمایید.
لینک ویدئو
https://www.aparat.com/v/7jAEH/%28MPU6050_%28IMU_6DOF
سپاس فراوان
سلام
کتابخانه غیر رایگان شامل چه امکاناتی هست؟ فیلتر مکمل یا فیلتر کالمن هم پیاده سازی شده یا مشابه فیلم مقادیر خام هست؟
سلام. من هم مشکل بعضی از دوستان رو دارم.
هایپر ترمینال هیچ واکنشی نداره. لطفا راهنمایی کنید.
(این مورد رو هم چک کردم project>configure>C compiler >sprintf feature:float,width,precision)
شما احتمالا سیم بندی پورت سریال رو درست رعایت نکردید، می دونید که توی سریال توی هر اتصال باید Rx1 به TX2 و TX1 به RX2 وصل بشه
سلام
من برای پروژه م که کوادکوپتر هست نیاز به کتابخونه mpu6050 دارم اما موضوع تاخیر خیلی کم و پاسخ دهی سریع در ارتباط با این ماژول برای کوادکوپتر خیلی مهمه من از کتابخونه رایگان شما استفاده کردم اما دیلی به شدت زیادی داره می خواستم ببینم کتابخونه آپدیت شده ورژن 2.1 از این نظر اوکی هست یا خیر ؟
سلام. کد و کتابخانه این سنسور تغییرات بسیار وسیعی در این سالها داشته است که تازه ما بخشی از آنها را به صورت غیر رایگان ارائه داده ایم!
تقریباً میشه گفت همه توابع قبلی به روز شده اند.
به نظرم ارزش خریدش رو داره، ناراضی بودید سفارشتون رو لغو می کنیم و مبلغ رو برمی گردونیم!
در تاریخ 97/12/20 آخرین نسخه فایل کتابخانه MPU6050 نسخه حرفه ای 2.1 در توضیحات آموزش ارائه شد!
سلام بر شما
ازتون بسیار سپاسگذارم و خدا قوت تبریک به شما که در نشر دانش جلودار هستید.
سلام. به زودی نسخه کامل شده ی این کتابخانه که تاکنون منتشر نشده است، در اختیار عموم قرار خواهد گرفت. البته حقیقت امر به دلیل حجم کاری بالا امکان سفارشی ساده وجود ندارد. اگرچه با ارائه سورس کتابخانه ها استفاده آنها در سایر کامپایلرها بسیار آسان تر است.
با سلام میخواستم بپرسم نمونه راه اندازی با stm32 هم میتونید بزارید؟
سلام
این کدی که قرار دادید برای هر دوی شتاب سنجهای gy 87 و gy521 کار میکنه یا باید تغییراتی داد؟
با تشکر
سلام
فرقی نمی کنه از چه ماژولی استفاده می کنید، مهم اینکه شما از تراشه MPU6050 استفاده کنید!
1- نیاز اصلی من درواقع به دست آوردن موقعیت(زاویه) در صفحه افقی است.
در کتابخانه هایی که شما در سایت برای ماژول های فوق قرار داده اید، فقط تغیرات زاویه در صفحه xz و yz رو نشون میده و تغیرات زاویه در صفحه افقی (مثلا روی سطح میز) رو نشون نمیده.
میخواستم بدونم من اگر تغیرات زاویه در صفحه xy رو خواسته باشم ، چیکار باید بکنم؟
2- شتابی که در این کد محاسبه شده در واقع شتاب استاتیک هست که مربوط به جاذبه میشه.
من شتاب دینامیک و حرکتی رو برای محاسبه جابجایی نیاز دارم. امکان اندازه گیری توسط این ماژول هست؟
سلام
ببخشید، این بخش تالار گفتگو اصلا باز نمیشه. مشکل چیه . سوالم را کجا بپرسم؟
سلام.
سوالتون رو همین جا بپرسید!
سلام. تالار گفتمان این موضوع اصلا بالا نمیاد . مشکل چیه؟ من چندتا سوال داشتم
سلام ممنون از کتابخونه
لطف کنید اینم اضافه کنید به فایل RA_MPU6050.h
ad0=1—>0xD2
سلام خسته نباشید،ممنون از کتابخونه و اموزشتون!
لطفا اینم اضافه کنید که دوستان حتما با مشکل مواجه نشن
project>configure>C compiler >sprintf feature:float,width,precision
ستون سمت چپ پایین،یکی مونده به اخر گزینه float رو بزنند
با سلام و خسته نباشید ، من دقیقا این مشکل جناب سعید رو دارم روی هایپر ترمینال هیچ چیزی نمایش داده نمی شود مشکل در چیست خواهشا راهنمایی کنید ممنون از زحمات بی کران شما
project>configure>C compiler >sprintf feature:float,width,precision
ستون سمت چپ پایین،یکی مونده به اخر گزینه float رو بزنید
با عرض سلام و ممنون از سایت خوبتون
یه سوال داشتم اینکه من از این کتابخونه mpu استفاده میکنم و وقتی تابعی رو فراخونی میکنم ارور >>
function ‘Get_Accel_Angles’ declared, but never defined
رو میده ممنون میشم اگر راهنمایی کنید
سید جان عالی بود خیلی مچکرم
عالی بود
اگه امکانش هست شماتیک مدار و تنضیمات کد ویزارت را بگذارید
خواهش می کنم!
سوالات فنی در تالارگفتمان باید مطرح بشود.
ولی با این وجود شماتیک خاصی نداره چی بزاریم آخه!
سلام مهندس احمد عزیز. امیدوارم اجر زحماتی رو که میکشی رو خداوند در دنیا و آخرت بهتون بده. من یه سوال داشتم ازتون: آقای مهندس از این ماژول میشه تو پروژه های نظامی هم استفاده کرد. منظورم اینه مثلا میشه در حد 0.02درجه دقت یا رزولوشن داشته باشن؟ اگر جوابتون منفیه لطف میکنید ماژول مناسب رو معرفی کنید.
سپاسگزارم.
سلام.ممنون. فکر کنم شما با بنده تماس گرفتید و صحبت کردیم.
خلاصه بله سنسور کلاً نظامی هست و داری دقت بسیار بالایی می باشد.
بله دستیابی به این دقت ممکن است.
از Mpu6050 بهتر مدل جدیدتر خودش یعنی MPU9250 هست
سلام وقت بخیر راجع به این دو تابع یه توضیحی میدین ؟؟؟ میخوام بدونم چه جوری زاویه رو بر حسب شتاب حساب میکنه؟؟
// If you want be averaged of accelerometer data, write (on),else write (off)
#define GetAvrg on
#if GetAvrg == on
Get_AvrgAccel_Val();
// Calculate The Angle Of Each Axis
Accel_Angle[X] = 57.295*atan((float) AvrgAccel_Raw_Val[X] / sqrt(pow((float)AvrgAccel_Raw_Val[Z],2)+pow((float)AvrgAccel_Raw_Val[Y],2)));
Accel_Angle[Y] = 57.295*atan((float) AvrgAccel_Raw_Val[Y] / sqrt(pow((float)AvrgAccel_Raw_Val[Z],2)+pow((float)AvrgAccel_Raw_Val[X],2)));
Accel_Angle[Z] = 57.295*atan((float) sqrt(pow((float)AvrgAccel_Raw_Val[X],2)+pow((float)AvrgAccel_Raw_Val[Y],2))/ AvrgAccel_Raw_Val[Z] );
#else
Get_Accel_Val();
// Calculate The Angle Of Each Axis
Accel_Angle[X] = 57.295*atan((float) Accel_Raw_Val[X] / sqrt(pow((float)Accel_Raw_Val[Z],2)+pow((float)Accel_Raw_Val[Y],2)));
Accel_Angle[Y] = 57.295*atan((float) Accel_Raw_Val[Y] / sqrt(pow((float)Accel_Raw_Val[Z],2)+pow((float)Accel_Raw_Val[X],2)));
Accel_Angle[Z] = 57.295*atan((float) sqrt(pow((float)Accel_Raw_Val[X],2)+pow((float)Accel_Raw_Val[Y],2))/ Accel_Raw_Val[Z] );
#endif
سوالات خود رو در انجمن بپرسید.
با تشکر
دمتون گرم من بالاخره راش انداختم
متوجه نشدم یعنی چی پاسخ پ خ داده شد ؟؟؟!!!!
منظورم این بود که به صورت پاسخ خصوصی در فروم جواب داده شد!
ماشاالله این قدر ساعی هستید که در هر فروم و سایتی که من هستم پیغام دادید!
پیرو آخرین پیغام شما در همان فروم پاسخ داده شد!
سلام سید جان
من میخوام سنسور MPU6000 رو با همین روش راه اندازی کنم البته با پرتوکل SPI
این کتابخانه ای که شما تدارک دید بسیار عالی هستش اما همه I2C تعریف شده اگه بخوام با SPI کار کنم باید چه تغییراتی اعمال کنم؟؟؟
خیلی ممنون میشم اگه کمکم کنید بد جور گیر کردم
یه دنیا ممنون 🙂
پاسخ به صورت پ خ داده شد.
می تونه مناسب باشه!
ببخشید یه سوال داشتم!
این ژیروسکوپ برای کوادکوپتر مناسبه؟
چرا خوشبختانه؟ 😀
سلام
عالی بود
امکانش هست با بسکام بزارید؟
من با codvision خیلی کم بلدم 🙁
خیر، خوشبختانه بنده بسکام کلاً یاد ندارم!
سلام من این کدو دقیقا کپی کردم و پروگرام کردم با همون تنظیمات اما هر کار میکنم دیتایی تو هایپرترمینال نشون نمیده تنظیمات هایپر هم هیچ مشکلی نداره لطفا کمک کنین خیلی کارم گیره ممنون
جناب saeed
همان طور که در متن نوشته ذکر شده ، لطفاً سوالات خود را در تالارگفتمان مطرح نمایید.
سلام
خیلی عالی بود.
و واقعا کامل …
منتظر کلیپ های بعدی تون راجب قطعات دیگه هستم.
خسته نباشی
با تشکر حامد جعفری
ممنون. البته شما نیز می توانید کمکمون کنید. منتظر فعالیت های بیشتر از سمت شما و سایر دوستان هستیم!
با سلام و سپاس ..
درود بر شما و زحمت بی دریغتون برای اینهمه مطلب مفید وبی نظیر..
یه دونه هم خیلی خیلی مایله اگ بتونه با تبادل لینک کمک شایانی در بهبود کیفی و کمی آموزش سهیم باشه..
فقط کافیه یه ندا بهم بدید تا آدرس قشنگ و مفیدتونا بلینکم.
قول میدم خالی از لطف نباشه فقط یه نگاه کوچیک کافیه.
التماس دعا..
یا علی مدد…..