ارسال سفارشات بالای 900 هزار تومان رایگان میباشد

‫ماژول HMC5883L قطب نمای دیجیتال با رابط I2C

آشنایی

‫این ماژول ارزان قیمت به یک سنسور مغناطیس مجهز می باشد و می توانید با کمک آن جهت حرکت رباط خود را تعیین کنید. ‫
‫از مزایای این ماژول قابلیت اتصال با رابط I2C می باشد که به شما امکان می دهد که در مصرف پینهای میکرو کنترولر خود صرفه جویی کنید. ‫
‫ولتاژ کاری آن نیز بین 3 تا 5 ولت است که تقریبا با هر میکرو کنترولری سازگار می باشد. ‫
‫از تراشه این ماژول در موبایلها و فلایت کنترولرها و بسیاری از ابزارهای جهت یابی استفاده شده است.

روش کار این سنسور

‫این سنسور حساس به میدان مغناطیسی می باشد و از سه محور اصلی پشتیبانی می کند. ‫
‫داخل سنسور برای هر محور یک پل مقاومتی وجود دارد که به تغییرات میدان مغناطیسی در جهت همان محور حساس می باشد. ‫
‫سنسور این تغییرات را در هر جهت اندازه گیری کرده و اطلاعات آنها را به شکل دیجیتال در اختیار شما قرار می دهد. ‫

ساختن یک قطب نما

‫برای ساختن یک قطب نما به یک میکرو کنترولر مانند آردوینو اونو و یک ماژول 5883 نیاز داریم. ‫
‫مانند شکل زیر اتصالات مربوط به ماژول را به آردوینو انجام دهید و برنامه نمونه را بارگزاری نمایید. ‫
‫با توجه به شکل زیر پین DRDY ماژول را متصل نمیکنیم. برای آنکه عملکرد ماژول متوقف شود و در مصف انرژی صرفه جویی شود آن را به زمین متصل کنید و برای ادامه کار آن را مثبت کنید. ‫
‫به سادگی می توانید روی پنجره سریال نتیجه را مشاهده کنید. ‫
‫در این مثال از یک کتابخانه به نام QMC5883LCompass که برای این ماژول نوشته شده است استفاده کرده ایم که آن را باید نصب کنید. ‫
‫برای نصب این کتابخانه به منوی tools رفته و گزینه Manage libraries را باز کنید. سپس در بخش جستجو شماره 5883 را نوشته و از میان نتایج کتابخانه QMC5883LCompass را که مخصوص این ماژول می باشد نصب کنید. ‫
‫استفاده از این کتابخانه کار برنامه نویسی را آسان کرده و انجام محاسبات پیچیده را خودش انجام می دهد.

نمونه برنامه تست ماژول


#include

QMC5883LCompass compass;

void setup() {
Serial.begin(9600);
compass.init();
}

void loop() {
compass.read();

byte a = compass.getAzimuth();

char myArray[3];
compass.getDirection(myArray, a);

Serial.print(myArray[0]);
Serial.print(myArray[1]);
Serial.print(myArray[2]);
Serial.println();

delay(250);
}

  • جدید ترین
    • جدید ترین
    • موضوع
    • نام
    • 8
    • 24
    • 48
    • 96
    • 120
    120 تعداد نمایش
  • جدید ترین
    • جدید ترین
    • موضوع
    • نام
  • تعداد نمایش 6
    • 8
    • 24
    • 48
    • 96
    • 120