ساخت قطب نمای دیجیتال با آردوینو توسط ماژول GY-271 سری 5883

تفاوت قطب نمای دیجیتال با قطب نمای ساده و یا معمولی

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

تا قبل از ساخته شدن قطب نماهای دیجیتالی کاربرد قطب نماهای معمولی بسیار محدود بود، به طوریکه فقط انسان ها می توانستند از آن برای جهت یابی استفاده کنند. اما با پیشرفت تکنولوژی پای قطب نماهای پیشرفته وارد عرصه جهت یابی شد، که امروزه این قطب نماها کاربرد وسیعی در صنعت رباتیک، مخابرات و صنایع نظامی دارند. بر خلاف قطب نماهای ساده و معمولی، قطب نماهای دیجیتالی به صورت کلی بر پایه علوم الکترونیک طراحی شده اند و در ساخت آن ها از قطعات الکترونیکی همچون مقاومت ها، خازن ها، تراشه ها و میکروچیپ ها استفاده شده است، که همین موضوع باعث شده تا علاوه بر انسان ها، ربات ها و سایر تجهیزات الکترونکی نیز بتوانند از آن برای جهت یابی و یافتن زوایا نسبت به محورها X و Y و Z استفاده کنند.

بعد قبل
راه اندازی ماژول قطب نما GY-271 سری hmc5883 با آردوینو
راه اندازی ماژول قطب نما GY-271 سری hmc5883 با آردوینو
راه اندازی ماژول قطب نما GY-271 سری hmc5883 با آردوینو
بعد قبل

ماژول قطب نما GY-271

ماژول قطب نما GY-271 یک قطب نمای دیجیتالی پیشرفته است. این قطب نما سه محوره بوده و می تواند میزان شدت میدان مغناطیسی را تا ±8 گائوس با تلرانس پنج میلی گائوس محاسبه کند. ماژول قطب نما GY-21 را می توان با ولتاژ 3 الی 5 ولت DC راه اندازی نمود. همچنین این قطب نما از پروتکل ارتباطی I2C برای ارتباط با سایر تجهیزات استفاده می کند.

نمای ظاهری و ترتیب پایه های خروجی ماژول قطب نمای GY-271

لیست قطعات مورد نیاز

برد آردوینو Arduino UNO R3 مدل DIP1 عدد
ماژول قطب نما مدل GY-271 HMC58831 عدد
LCD کاراکتری مدل 16×2 با Backlighting آبی1 عدد
برد بورد (پروجکت برد) مدل GL1 عدد
سیم جامپر برد بوردی مدل دو سر نری (سری 40تایی)1 عدد

شرح عملکرد پروژه

در این پروژه آردوینو از مبحث آموزش آردوینو می خواهیم نحوه برنامه نویسی و ساخت یک قطب نما دیجیتال با استفاده از ماژول GY-271 با استفاده از برد آردوینو Arduino Uno را آموزش دهیم. عملکرد پروژه اینگونه است که ابتدا برد آردوینو به واسطه برنامه ای که برای آن نوشته شده است، توسط ماژول قطب نما GY-271 به جهت یابی و یافتن زوایا نسبت به محورها X و Y و Z می پردازاد و سپس نتایج بدست آمده را بر روی یک LCD کاراکتری که در مدار پروژه تعبیه شده است نمایش می دهد.

نقشه شماتیک مدار پروژه

نقشه شماتیک مدار پروژه ساخت قطب نمای دیجیتال با آردوینو توسط ماژول GY-271

نحوه اتصال LCD کاراکتری به برد آردوینو

ال.سی.دی های کاراکتری به صورت کلی دارای 16 پایه هستند که در این پروژه برای اتصال آن به برد آردوینو کافی است طبق جدول زیر اتصالات را انجام دهید. همچنین لازم به ذکر است پایه های 7 و 8 و 9 و 10 در LCD کاراکتری به جایی متصل نمی شوند.

نحوه اتصال LCD کاراکتری به برد آردوینو

برنامه آردوینو در نرم افزار آردوینو

آموزش دستورات و توابع مهم کتابخانه QMC5883.h

همانطور که در برنامه پروژه مشاهده می کنید ما برای راه اندازی ماژول قطب نما GY-271 توسط آردوینو Arduino از کتابخانه QMC5883.h استفاده کرده ایم. این کتابخانه دارای توابع بسیار کاربردی و مهمی برای جهت یابی و پیدا کردن زوایا نسبت به محورهای X و Y و Z دارد که در این بخش نحوه استفاده از آن ها را بیان میکنیم.

پیکربندی اولیه کتابخانه QMC5883.h

برای استفاده از کتابخانه در برنامه آردوینو ابتدا لازم است آنرا در نرم افزار آردوینو نصب کرده و توسط دستور زیر فراخوانی کنیم. سپس یک آبجکت با نام دلخواه از کلاس QMC5883 تعریف کنیم. (در صورتیکه با نصب کتابخانه در آردوینو آشنا نیستید نگران نباشید، برای این منظور می توانید ویدئو آموزشی درج شده در انتهای همین مطلب را مشاهده کنید.)

شروع ارتباط با ماژول قطب نما GY-271

برای شروع برقراری ارتباط با ماژول قطب نما GY-271 لازم است کد دستوری زیر را در زیر برنامه Setup() وارد کنید.

کد دستوری برگرداندن مقدار زاویه ماژول نسبت به محوره X بر حسب رادیان

کد دستوری برگرداندن مقدار زاویه ماژول نسبت به محوره Y بر حسب رادیان

کد دستوری برگرداندن مقدار زاویه ماژول نسبت به محوره Z بر حسب رادیان

کد دستوری برگرداندن مقدار زاویه به طور مستقیم بر حسب رادیان

کد دستوری برگرداندن مقدار زاویه به طور مستقیم بر حسب درجه

ویدیو ضبط شده از نحوه راه اندازی و عملکرد پروژه

دانلود ویدئو با لینک مستقیم از سرورهای پرقدرت الکترونیک 98

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 حجم فایل : 224 کیلوبایت

 محیط برنامه نویسی : Arduino (IDE)

 برنامه نویسی شده به زبان : ترکیبی از برنامه نویسی به زبان سی (C) یا سی پلاس پلاس (++C)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 27 می 2019

7 دیدگاه

  1. با سلام امکانش هست که این برنامه رو برای سری hmc5883 بنویسید چون qmc5883 تو بازار موجود نیست
    یا اگر امکانش هست ماژول رو برام بفرستید
    چون واقعا به این پروژه نیاز دارم

  2. فرهاد اکبری

    سلام دوست عزیز
    فکر نمی کنیم مشکل از مدل ماژول شما باشد چراکه ما خود نیز در این پروژه از مدل GY-271 HMC5883L استفاده کرده ایم و نتیجه نیز حاصل شد.
    بهتر است اتصالات خود را به دقت بررسی نمائید و برنامه را بدون کوچکترین ویرایشی استفاده کنید اگر نتیجه حاصل نشد ممکن است ماژول شما مشکل داشته باشد و یا در هنگام راه اندازی به دلیل یک اشتباه صدمه دیده باشد.

  3. با سلام و خسته نباشید
    من اتصالات رو چک کردم مشکلی وجود نداشت
    میشه یک ماژول واسم بفرسین یا من حضوری بیام شرکتتون؟؟؟؟

  4. فرهاد اکبری

    سلام دوست عزیز
    با عرض پوزش، در حال حاضر فروش قطعات الکترونیکی نداریم.

  5. سلام میتونم حظوری خدمتتون برسم ؟
    چون واقعا برام حیاتی این مسئله

  6. فرهاد اکبری

    سلام دوست عزیز
    خیر متاسفانه در حال حاضر به دلیل ازدحام کاری امکان ملاقات با تیم فنی مقدور نیست.

  7. سلام من پروژه شما را راه اندازی کردم ولی مقادیرم روی lcd صفره اتصالات و همه چی رو بررسی کردم اگ میتونید کمکم کنید ممنون میشم عجله زیادی دارم ممنون

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.