آموزش راه اندازی سنسور فاصله سنج شارپ | شما یاد خواهید گرفت که ماژول سنسور IR چیست.
شما یاد خواهید گرفت که چگونه از ماژول سنسور IR تیز GP2Y0A21 استفاده کنید.
شما یاد خواهید گرفت که چگونه ماژول سنسور IR تیز را با برد آردوینو UNO یکپارچه کنید.
آموزش راه اندازی سنسور فاصله سنج شارپ
سختافزار مورد نیاز
آردوینو UNO
ماژول سنسور IR شارپ (GP2Y0A21)
بردبورد
سیم جامپر
کابل USB نوع A به B
سیستم
نرمافزار
نرمافزار آردوینو / IDE آردوینو
توضیحات پروژه راه اندازی سنسور فاصله سنج شارپ
این پروژه از یک ماژول سنسور IR استفاده میکند که به برد آردوینو UNO متصل است. سنسور IR به عنوان ورودی تنظیم شده و فاصله بین سنسور و شیء را اندازهگیری خواهد کرد. این کار را با ارسال یک پرتو باریک نور با استفاده از فرستنده داخلی خود انجام میدهد و سپس گیرنده داخلی آن پرتو نوری که از شیء به سنسور بازگشته است را دریافت میکند. تفاوت در زمان انتقال به عنوان یک زاویه اندازهگیری خواهد شد و این زوایا سپس نشاندهنده فاصله خواهند بود.
شرح راه اندازی سنسور فاصله سنج شارپ
آردوینو Uno
نوعی بورد آردوینو که به طور معمول توسط متخصصان و سرگرمداران استفاده میشود به دلیل طراحی مقاوم آن. این بورد مجهز به یک میکروکنترلر است که بر پایه ATMega328P ساخته شده و دارای ۱۴ پین ورودی/خروجی پیشرفته (که ۶ تای آنها خروجی PWM هستند)، ۶ ورودی آنالوک، کریستال کوارتز ۱۶ مگاهرتز، یک جک برق، یک پورت USB، یک هدر ICSP و یک دکمه ریست میباشد.
حسگر IR شارپ
یک دستگاه کوچک است که از نور مادون قرمز برای اندازهگیری فاصله جسم استفاده میکند. این حسگر دارای مصرف انرژی بسیار کم و انواع مختلفی از خروجیها است. دو نوع اصلی از این حسگرهای مادون قرمز وجود دارد: خروجی آنالوگ و خروجی دیجیتال. حسگرهای آنالوگ مانند GP2Y0A710، GP2D120، GP2Y0A41، GP2Y0A21 و GP2Y0A02 اطلاعات واقعی در مورد فاصله به صورت خروجیهای آنالوگ ارائه میدهند، به این معنی که مقدار دقیق فاصله جسم از حسگر را میدهند. در حالی که حسگر دیجیتال مانند GP2D15 یک مقدار ثابت، مانند یک آستانه، ارائه میدهد و وقتی به آن محدوده مشخص میرسد، سیگنال HIGH و اگر نه، سیگنال LOW ارسال میکند.
در شکل، میتوانید دامنههای سنسورهای آنالوگ و سنسور دیجیتال را مشاهده کنید. همانطور که متوجه شدید، سنسور دیجیتال فقط یک خط به آن کشیده شده است. این خط نقطه تحریک یا نقطه آستانه است، زمانی که جسم درون آستانه باشد، یک سیگنال HIGH ارسال میکند و هنگامی که خارج از آستانه باشد، یک سیگنال LOW ارسال میکند.
سنسور دارای ۳ پین است: VCC برای منبع ولتاژ ۵+ (سیم قرمز)، GND برای زمین (سیم مشکی) و پین SIG برای سیگنال (سیم زرد).
محتوای آموزش
استفاده از حسگر IR شارپ (آنالوگ)
مرحله ۱: جمع آوری قطعات
قطعات را میتوان از فروشگاه الکترونیک محلی ( و یا آموزشگاه خانه رباتیک ایران ) خریداری کرد یا به سادگی آن را به صورت آنلاین سفارش دهید تا دردسر کمتری داشته باشید.
مرحله ۲: ساخت مدار
اتصالات منابع
پین ۵ ولت برد آردوینو اونو را به شیار بالایی/پایینی برد بورد متصل کنید. اتصالات در اینجا به صورت افقی متصل شدهاند که آن را برای منابع ایدهآل میکند.
پین GND برد آردوینو اونو را به شیار بالایی/پایینی برد بورد متصل کنید، اما اطمینان حاصل کنید که آنها را کنار هم قرار ندهید تا از اتصال کوتاه برد آردوینو جلوگیری کنید.
سنسور را متصل کنید
پین +۵V (قرمز) سنسور IR تیز را به منبع ولتاژ در برد براق وصل کنید.
پین GND (سیاه) سنسور IR تیز را به زمین مشترک در برد براق متصل کنید.
پین SIGNAL (زرد) سنسور IR را به پین آنالوگ ۵ (A5) آردوینو اونو متصل کنید زیرا ما خروجی آنالوگ آن را میخوانیم.
مرحله ۳: برنامهنویسی
برد آردوینو Uno را با استفاده از کابل USB نوع A به B به کامپیوتر متصل کنید.
پس از برقراری اتصال، IDE آردوینو را باز کنید و به Tools > Board بروید و سپس Arduino/Genuino Uno را انتخاب کنید.
حالا کد زیر را کپی کرده و در طراحی خود در محیط IDE آردوینو پیست کنید.
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ |
int IRpin = ۵; //sets the IR sensor @pin 5 //defines the values float IRvalue; float IRdistance; //setup command void setup() { Serial.begin(۹۶۰۰); //starts the serial at 9600 baud rate } //loop command void loop() { IRvalue = analogRead(IRpin); //sets the IRvalue to read the IRpin IRdistance = ۲۰۷۶*pow(IRvalue, -۱۱); //converts the distance to cm Serial.println(IRdistance); Serial.print("Distance = "); //prints the distance measured in cm delay(۱۰۰); //delay of 100 milliseconds for every reading } |
کد ابتدا پین سنسور IR تیز را در پین A5 و متغیرهای ‘IRdistance’ و ‘IRvalue’ تعریف میکند. در دستور setup، ارتباط سریال را با نرخ ۹۶۰۰ بیت در ثانیه شروع میکند. در دستور loop، مقدار IRvalue برای خواندن دادههای آنالوگ IRpin تنظیم میشود. IRdistance برای تبدیل فاصله به سانتیمتر تنظیم میشود، با استفاده از فرمول پس از تبدیل، سریال مقادیر ‘IRdistance’ را چاپ میکند، با تأخیری معادل ۱۰۰ میلیثانیه برای هر خواندن.
پس از اینکه کد را در طرحتان در IDE آردوینو تایپ کردید، روی دکمه تأیید کلیک کنید تا طرح ذخیره شده و برنامه کامپایل شود.
اگر هیچ خطایی پیدا نشد، روی دکمه بارگذاری کلیک کنید تا فرایند نصب برنامه بر روی برد آردوینو اونو آغاز شود.
پس از باز شدن، دست خود را جلوی سنسور نگه دارید، این باید خوانشها را در مانیتور سریال نشان دهد.
شعبه بابل: پل کارگر به سمت کشوری، روبروی ماکروویو، جنب فروشگاه جانبو
شعبه ساری: خیابان مهدیه، نبش بهمن شرقی