ساخت فاصله سنج بسیار دقیق با آردوینو و ماژول SRF05

ساخت فاصله سنج بسیار دقیق

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

بعد قبل
ساخت فاصله سنج بسیار دقیق با آردوینو و ماژول SRF05
ساخت فاصله سنج بسیار دقیق با آردوینو و ماژول SRF05
ساخت فاصله سنج بسیار دقیق با آردوینو و ماژول SRF05
بعد قبل

امواج اولتراسونیک یا UT چیست؟

امواج اولتراسونیک از نظر فیزیکی، مانند صوت، جزو امواج مکانیکی طول طبقه بندی می شوند. به عبارت دیگر برای انتشار این امواج، ذرات در راستای انتشار موج، نوسان می کنند. طبیعی است که برای انتشار امواج صوتی (Sonic/Sound Waves) به محیطی از ماده (جامد، مایع یا گاز) نیازمندیم و این امواج در خلا، جایی که هیچ یک از انواع ماده وجود ندارند، منتشر نمی شوند. تفاوت امواج اولتراسونیک و صوت در این است که فرکانس امواج اولتراسونیک بالای 20KHz و فراتر از محدوده شنیداری انسان می باشد و به همین دلیل اولتراسونیک یا فراصوت نام گرفته اند.

برای ارسال امواج اولتراسونیک در محیط باید از فرستنده و برای دریافت این امواج باید از گیرنده مخصوص استفاده کنیم. در مقایسه با امواج صوتی، می توان فرستنده را به بلندگو و گیرنده را به میکروفون تشبیه کرد. معمولا هر یک از گیرنده ها و فرستنده های اولتراسونیک برای کار در فرکانسی خاص ساخته می شوند و بنابراین باید فرستنده و گیرنده های سازگار با هم (یعنی با فرکانس کاری برابر) به کار روند. معمولا در فاصله سنج ها با امواج اولتراسونیک، از فرستنده ها و گیرنده هایی با فرکانس کاری 40KHz استفاده می شود.

ماژول اولتراسونیک HY-SRF 05

طبق توضیحاتی که تا به الان داده ایم، برای اینکه بتوانیم توسط امواج اولتراسونیک فاصله را اندازه گیری کنیم، ابتدا باید توسط یک مدار نوسان ساز فرکانس 40KHz را برای سنسور فرستنده اولتراسونیک ارسال کنیم و سپس فرکانس دریافتی در سنسور گیرنده اولتراسونیک را توسط یک مدار تقویت کننده جهت محاسبه زمان ارسال و دریافت سیگنال، تقویت کنیم. به طور حتم برای ساخت فرکانس 40KHz و تقویت کننده، نیاز به دو مدار نوسان ساز و مدار تقویت کننده داریم، که ساخت آن ها کاری زمانبر و دشوار است. اما نگران نباشید!

ماژول اولتراسونیک SRF05 علاوه بر داشتن دو سنسور فرستنده و گیرنده اولتراسونیک 40KHz ، دارای مدار نوسان ساز و تقویت کننده نیز می باشد که همگی آن ها بر روی یک برد بسیار کوچک در ابعاد 2 در 4/5 سانتی متر قرار گرفته اند، که این موضوع باعث شده کار با آن و راه اندازی ماژول بسیار راحت شود. همچنین ماژول اولتراسونیک SRF 05 یک ماژول بسیار کامل و البته ارزان قیمت می باشد که توسط آن می توان فاصله ای تا حداکثر 5 متر را اندازه گیری نمود.

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

برد آردوینو Arduino UNO R3 مدل DIP1 عدد
ماژول آلتراسونیک SRF05 مناسب اندازه گیری فاصله1 عدد
LCD کاراکتری مدل 16×2 با Backlighting آبی1 عدد
برد بورد (پروجکت برد) مدل GL1 عدد
سیم جامپر برد بوردی مدل دو سر نری (سری 40تایی)1 عدد

توضیحات ساخت مدار پروژه

برای آزمایش پروژه آردوینو و شروع برنامه نویسی ابتدا لازم است سخت افزار پروژه بسته شود، به همین خاطر ابتدا طبق نقشه شماتیک زیر، ال.سی.دی کاراکتری و ماژول اولتراسونیک SRF05 را به برد آردوینو Arduino Uno اتصال دهید. همچنین در ادامه می توانید فیلم آموزشی و توضیحات بیشتری در رابطه با نحوه اتصال LCD کاراکتری و ماژول به برد آردوینو مشاهده کنید.

ساخت فاصله سنج بسیار دقیق با آردوینو و ماژول SRF05

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

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

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

نحوه اتصال ماژول اولتراسونیک SRF05 به برد آردوینو

ماژول اولتراسونیک SRF05 به صورت کلی دارای 5 پایه است، که در این پروژه برای اتصال آن به برد آردوینو کافی است طبق جدول زیر اتصالات را انجام دهید. همچنین لازم به ذکر است در این پروژه پایه های OUT در ماژول اولتراسونیک SRF05 به جایی متصل نمی شود.

نحوه اتصال ماژول اولتراسونیک SRF05 به برد آردوینو

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

ویدئو آموزش ساخت و راه اندازی پروژه

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

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

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

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

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

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

 تاریخ انتشار : 2 ژوئن 2019

100 دیدگاه

  1. با سلام و خسته نباشید خدمت شما آقای اکبری!
    من این پروژه را با برد آردوینو اونو بستم(تو این پروژه من سروو موتور هم اضافه کردم)؛ولی به محض اینکه پروژه را روشن کردم،ناگهان چراغ ال سی دی و برد آردوینو ضعیف شد و بعد آن دیگر پروژه اجرا نشد!
    آردوینو قبل پروژه سالم بود و کد ها به درستی بر روی آن آپلود شده بود؛ولی وقتی که از مدار خارجش کردم و تستش کردم،دیدم که آردوینو سوخته و هیچ کدی روش آپلود نمیشه!
    1-به نظرتون چرا برد آردوینو سوخت؟
    2-آیا به نظر شما دلیل سوختن از جریان کشی نبوده؟
    3-شما چه راه کاری رو برای جلوگیری از جریان کشی و نشتی جریان سایر قطعات الکترونیکی بر روی قطعات حساس الکترونیکی دیگر،پیشنهاد می کنید؟؟؟(این خیلی مهمه!)
    4-ضمنا من در این پروژه از 2 باطری لیتیومی یون3.7 ولت(به صورت موازی) که به یک ماژول افزاینده تا5ولت وصل کرده بودم،استفاده کردم.((باطری هام از سال پیش مونده بودن.ولی من شارژش کردم؛ولی به 4.2 نرسید تا 3.9 ولت شارژ شد.))به نظر شما این مشکل جریان کشی از ضعف باطری ها نبوده؟چون اگه مشکل از باطری بوده من اونو عوض کنم.
    از پاسخ شما استاد بزرگوار به سوالاتم،بسیار بسیار متشکرم!

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

  3. سلام وقتت بخیر ممنون بابت اموزش خوبتون ، ببخشید من میخواسم به همین پروژه ماژول کارت حافظه اضاف کنم که فاصله اندازه گیری شده ثبت بشه اگه میشه راهنمایی کنید که نحوه اتصال سیم ها کد نویسیش چجوری باید باشه ؟؟

  4. سلام خسته نباشید من همین پروژه رو دارم با این تفاوت که ماژول من sef04 هست خواستم بدونم با توجه به اینکه در این جا out ماژول srf05 کار نمیکنه من میتونم شماتیک رو و برنامه ی 05 رو روی 04 اجرا کنم؟

  5. سلام برای ماژول srf04 هم از این کد و شماتیک میشه استفاده کرد؟

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

    سلام دوست عزیز
    بله می توانید از ماژول SRF04 نیز استفاده کنید.

  7. سلام چگونه میتوانم تنظیم کنم که در فاصله10 سانتی متری الارم بده و چگونه این وسیله الارم میده یا چگونه میتونم برای الارم اش بیزر استفاده کنم

  8. با سلام و احترام
    برای این موضوع باید در برنامه پروژه در حلقه Loop یک شرط تعریف کنید که اگر مقدار اندازه گیری شده (متغیر distance) برابر با 10 شد یک پایه آردوینو 1 شود و به همان پایه نیز یک بازر 5 ولتی با اسیلاتور داخلی متصل کنید.

  9. سلام بنده پروژه انجام دادم ، هنگامی که وصل میشم به کامپیوتر و برنامه را اپلود میکنم ، همچی روشن و درسته ولی هنگام پایان اپلود یک ارور در اردینو برای کد میاد ، نمیدونم باید چیکار کنم ارور این هست :
    avrdude: stk500_getsync() attempt 9 of 10 : not in sync : resp=0×ba
    از همین کد که داخل سایت استفاده کردم و اتصالات مثل عکس هست ، میشه بگین مشکل کجاست؟؟؟؟؟؟

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

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

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

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

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

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