آموزش راه اندازی ماژول فاصله سنج GP2Y0A21YK0F با آردوینو

فهرست مطالب

ویژگی های ماژول فاصله سنج GP2Y0A21YK0F

ماژول فاصله سنج GP2Y0A21YK0F یک ماژول فاصله سنج IR بوده که از امواج مادون قرمز برای فاصله یابی استفاده می کند. خروجی ماژول از نوع ولتاژ آنالوگ بوده که به راحتی توسط کانال مبدل ADC میکرو می توان فاصله یابی کرد. از این ماژول می توان در صنعت و بخصوص در رباتیک استفاده های زیادی کرد. محدوده کارایی این ماژول 10 الی 80 سانتی متر است.
توجه
این ماژول در فاصله های کمتر از 10 سانتی متر و بیشتر از 80 سانتی متر اطلاعات غلط میدهد.

دیتاشیت ماژول فاصله سنج GP2Y0A21YK0F را می توانید از اینجا دریافت کنید.

معرفی پایه ها (Pinout) ماژول فاصله سنج GP2Y0A21YK0F

ماژول GP2Y0A21YK0F دارای 3 پایه به شرح زیر است:

• VCC: تغذیه ماژول – 5 ولت
• GND: زمین
• OUT: خروجی ماژول که به صورت ولتاژی آنالوگ است.

پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.

لوازمی که به آن احتیاج دارید

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

آردوینو UNO R3 × 1
ماژول فاصله سنج مادون قرمز GP2Y0A21YK0F × 1
سیم جامپر × 1

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

آردوینو IDE

راه اندازی ماژول GP2Y0A21YK0F با آردوینو

گام اول: سیم بندی

مطابق مدار زیر، ماژول را به آردوینو وصل کنید.

گام دوم: کد

ابتدا کتابخانه زیر را روی برد آردوینوی خود نصب کنید.

https://github.com/MajenkoLibraries/Average

توجه

اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه در آردوینو مراجعه کنید.

کد زیر را روی برد آردوینوی خود آپلود کنید.
/*   
modified on Sep 8, 2020
Modified by MohammedDamirchi from https://github.com/MajenkoLibraries/Average
https://electropeak.com/learn/ 
*/ 
#include <Average.h>

// Reserve space for 10 entries in the average bucket.
// Change the type between < and > to change the entire way the library works.
Average<float> ave(10);

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

void loop() {
    int minat = 0;
    int maxat = 0;
    
    // Add a new random value to the bucket
    ave.push(27.728*1.3 * pow(map(analogRead(A0), 0, 1023, 0, 5000) / 1000.0, -1.2045));
    Serial.println(ave.mean());

    delay(100);
}

پس از اجرای کد تصویر زیر را در خروجی سریال مشاهده می کنید.

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

آموزش های مشابه

Comments (3)

  • حمیدرضا Reply

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

    می 9, 2023 at 3:43 ب.ظ
    • محمد دمیرچی Reply

      با سلام
      کد را بر روی آردوینو خود آپلود میکنید با نزدیک کردن دست به سنسور عدد های خروجی تغییر میکند درست است؟؟
      حال برای اینکه در حد مشخصی فرمان روشن کردن صادر شود مقدار ave.mean() را درون یک if قرار بدهید و با شرط بررسی کنید که این مقدار بزرگ‌تر از یک عددی شده است یا خیر. و در صورت درست بودن خروجی را مورد نظر را انجام بدهد.

      می 10, 2023 at 5:49 ب.ظ
  • حمیدرضا Reply

    سلام مجدد
    خیلی ممنون از پاسخگویی تون، آخه یه مشکل بزرک هست هیج سایتی کامل ران کردن و مراحل تک به تک رو واضح توضیح نداده ،من 4 عدد سنسور دارم با یه بردبورد 840 سوراخ و یه آردینو و ریسه ال ای دی ، الان تو نحوه اتصال صحیح اینا گیج شدم که به چه صورت به بردبورد و اردینو متصل بشن ، انصافا جا داره برای همچین پروژه ای یه اموزش کامل بزارید.اگه کمک کنید ممنون میشم.

    بازم ممنون

    می 10, 2023 at 6:11 ب.ظ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.