پروژه آردوینو فاصله سنج با ماژول SRF05 و SRF04

4

در این پست از سایت اِمیک, اموزش راه اندازی ماژول های فاصله سنج التراسونیک SRF05 و SRF04 با استفاده از برد اردوینو قرار داده شده است. برای راه اندازی این ماژول ها از برد اردوینو UNO استفاده شده است, البته شما می توانید از هر نوع برد اردوینویی که دارید استفاده کنید. قبلا این ماژول ها را با استفاده از میکروکنترلر AVR راه اندازی کرده بودیم که در ان پست بطور کامل در مورد ماژول های SRF05 و SRF04 و مدهای راه اندازی انها توضیح داده شد, بنابراین در صورتی که با این ماژول ها و مدهای راه اندازی انها اشنا نیستید حتما پست “پروژه AVR فاصله سنج با ماژول SRF05 و SRF04” را مطالعه کنید.

P-SRF05&04-Test-with-Arduino-emic

پروژه آردوینو فاصله سنج با ماژول SRF05 و SRF04 :

در این پروژه ما با استفاده از برد اردوینو یونو (UNO) ماژول فاصله سنج التراسونیک SRF05 را راه اندازی خواهیم کرد. البته شما می توانید بدون نیاز به تغییر در برنامه یا شماتیک پروژه از ماژول SRF04 نیز استفاده کنید.در زیر ترتیب پایه های این دو ماژول را مشاهده می کنید:

Ultrasonic-Module-SRF-PIN-EMIC

ماژول SRF05 دارای 5 پایه می باشد

  • پایه VCC که باید به 5 ولت متصل شود
  • پایه GND که به زمین (منفی تغذیه) متصل می شود
  • پایه Trig
  • پایه Echo
  • پایه OUT

در ماژول SRF04 تعداد پایه ها 4 عدد می باشد و تنها تفاوت نسبت به ماژول SRF05 نداشتن پایه OUT است.

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

SRF05&04-Test-with-Arduino-emic

شماتیک ساده این پروژه را در بالا مشاهده می کنید که بجز برد اردوینو و ماژول SRF05 از یک LCD کاراکتری 2*16 نیز برای نمایش مقادیر فاصله بدست امده, استفاده شده است. پتانسیومتر RV1 برای تنظیم کنتراست (روشنایی) ال سی دی کاراکتری استفاده شده است و در صورتی که نخواستید از پتانسیومتر استفاده کنید باید پین 3 ال سی دی را به زمین متصل کنید.

همانطور که در شماتیک مشاهده می کنید, پایه Trig در ماژول SRF05 به پین A0 در برد اردوینو متصل شده و پایه Echo نیز به پین A1 اردوینو متصل شده است. برای تست پروژه در صورتی که تغذیه پروژه را از برد اردوینو تامین می کنید, برد اردوینو را با استفاده از اداپتور راه اندازی کنید تا جریان دهی مناسبی داشته باشد.

برنامه :

فرمول بدست اوردن فاصله با استفاده از ماژول التراسونیک SRF05 و SRF04 به صورت زیر می باشد که ما در خط 26 برنامه از این فرمول استفاده کرده ایم:

SRF05&04-FMD-emic

همانطور که در بالا گفته شد حتما پست راه اندازی ماژول های SRF05 و SRF04 با میکروکنترلر AVR را مطالعه کنید, بخصوص قسمت مد یک برای راه اندازی این ماژول ها که ما در این پروژه به روش مد یک این کار را انجام می دهیم.

همانطور که در فرمول بالا مشاهده می کنید ما برای محاسبه فاصله باید زمان رفت و برگشت سیگنال را بدست اوریم. ماژول SRF05 و SRF04 در زمان ارسال تا دریافت سیگنال پایه Echo خود را یک می کنند, بنابراین ما با اندازه گیری زمان یک بودن (HIGH بودن) پایه Echo می توانیم زمان رفت تا برگشت سیگنال را بدست اوریم. این کار با استفاده از یک دستور ساده در اردوینو انجام می شود که در زیر ان را مشاهده می کنید:

pin : پین مورد نظر از اردوینو که می خواهیم مدت زمان پالس روی ان را بخوانیم (مدت زمان یک بودن یا صفر بودن ان را بدست اوریم)

value : مشخص می کنیم که می خواهیم مقدار زمان یک بودن یا مقدار صفر بودن را بدست اوریم. در صورتی که یک بودن را می خواهیم باید مقدار ان را برابر با HIGH و در صورتی که مدت زمان صفر بودن را می خواهیم باید مقدار ان را برابر با LOW قرار دهیم.

نکته : خروجی تابع بالا یک زمان برحسب میکروثانیه می باشد. همانطور که در خط 25 مشاهده می کنید ما از این دستور برای بدست اوردن زمان رفت تا برگشت سیگنال استفاده کرده ایم.

نکته: از اونجایی که ما زمان رفت تا برگشت را در فرمول میذاریم باید بر 2 تقسیم کنیم تا فاصله ما دو برابر محاسبه نشود.

سرعت صوت در دمای 20 درجه سانتی گراد 343.2 متر بر ثانیه می باشد و همانطور که در فرمول مشاهده می کنید باید ان را تبدیل به سانتی متر بر میکروثانیه کنیم که بعد از تبدیل سرعت صوت برابر با 0.03432 سانتی متر بر میکروثانیه می شود و ما از این مقدار در برنامه بالا استفاده کرده ایم.

توضیحات قسمت های مهم برنامه نوشته شده, اگر سوالی داشتید می تونید در قسمت نظرات مطرح کنید.

کلیپ تست عملی پروژه :

 

دانلود فایل ها

پسورد فایل زیپ : www.emic.ir

نظر یادتون نره …

4 دیدگاه‌ها

ارسال دیدگاه

لطفا دیدگاه خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید