اندازه گیری زاویه ی شیب ربات(tilt angle) همیشه برای سازندگان آن یک چالش بزرگ بوده است. دقت زاویه ی شیب محاسبه شده برای برخی کاربردها نظیر رباتهای متعادل و مولتی روتورها بی نهایت مهم است. این دست از رباتها به سنسورهایی از قبیل شتابسنج، ژیروسکوپ و در کل یک IMU نیاز دارند. این المانهای MEMS کوچک و سبک، داخل ربات تعبیه می شوند تا اطلاعاتی در خصوص پدیده های مکانیکی مختلفی از قبیل شتاب، ویبره، شیب، موقعیت یا جهت در فضا، سرعت زاویه ای و چرخش را جهت پردازش و تولید دستورات لازم برای کنترل ربات تولید کنند. در این جلسه از برنامه نویسی STM32 در آردوینو قصد داریمآموزش راه اندازی سنسور MPU6050 توسط STM32 و آردوینو و روش دریافت دیتا از آن را آموزش بدهیم.
توضیحات آموزش راه اندازی سنسور MPU6050 توسط STM32 و آردوینو
سنسور MPU6050 یک سنسور IMUی شش محوره یا بعبارتی 6DOF، محصول InvenSense است که شامل یک ژیروسکوپ 3 محوره به همراه یک شتاب سنج 3 محوره می باشد که باهم روی یک تراشه ی واحد جاسازی شده اند. این ماژول 6 مقدار بعنوان خروجی به ما می دهد. 3 خروجی مربوط به اندازه گیریهای شتابسنج و 3 خروجی حاصل از سنسور ژیروسکوپ. تراشه MPU6050 دارای شش عدد مبدل آنالوگ به دیجیتال (ADC) داخلی با دقت 16 بیتی است. سه عدد از این مبدلهای ADC برای 3 خروجی ژیروسکوپ و سه عدد دیگر هم برای 3 خروجی شتاب سنج استفاده میشوند. پس هر 6 خروجی را در یک زمان باهم محاسبه میکند.