کثر ماژول های التراسونیک سنجش مسافت (Ultrasonic Ranging Module) از دو قسمت فرستنده و گیرنده تشکیل شده اند.قسمت فرستنده در کسری از ثانیه امواج التراسونیک را ارسال می کند این امواج پس از برخورد به جسم بازتاب داده می شوند. وظیفه قسمت گیرنده دریافت امواج بازتابی از جسم است.
گیرنده و فرستنده ماژول های HC-SR04 و HC-SR05 در کنار یکدیگر قرار دارند و می توانند جسم های در فاصله ۲ تا ۳۰۰ ساتی متر را با دقت قابل قبولی (من تا ۵ میلی متر ) تشخیص دهند. البته ماژول هایی نیز وجود دارند که قسمت گیرنده و فرستنده به صورت جدا از یکدیگر طراحی شده اند و می توان گیرنده و فرستنده را رویروی یکدیگر قرار داد و اکثرا برای مقاصدی همچو تشخیص مانع استفاده می شوند
با اندازه گیری مدت زمان رفت و برگشت امواج ارسالی و با دانش بر اینکه سرعت امواج التراسونیک برابر با سرعت صوت (۳۰۰ متر بر ثانیه) است، فاصله جسم قابل محاسبه می باشد. (x = vt )
راه اندازی ماژول SRF05 و ماژول SRF04 عینا مشابه یکدیگر است و تفاوتی در نوع راه اندازی این دو ماژول وجود ندارد.فقط تفاوت در تعداد پایه هاست که در مدل ۰۵ یک پایه outt وجود دارد و ما کاری به آن نداریم و آن پایه را به جایی وصل نمی کنیم.
البته باید بگم که مدل SRF05 دو مد راه اندازی داره که در اینجا ما مد ۱ رو توضیح دادیم.
برای راه اندازی این ماژول ها،باید یک پالس ۱۰ میکروثانیه ای به پایه تریگر آن اعمال کنیم، سپس منتظر می مانیم تا پایه اکو ماژول برابر یک (فعال) شود.پس از یک شدن آن، تایمر را فعال می کنیم و بعد منتطر می شویم تا پایه اکو برابر صفر (غیرفعال) شود.به محض صفر شدن اکو، تایمر را متوقف می کنیم،و برابر مدت زمان رفت و برگشت پالس می باشد.برای محاسبه فاصله جسم بازتاب کننده،کافی است این مدت زمان را بر ۲ تقسیم کنیم (فقط فاصله رفت) و سپس با استفاده از رابطه بالا فاصله جسم را به دست می آوریم.
قبل از توضیح کدها لازم است کتابخانه کاربردی زیر را تعریف کنیم که در اون ماکرو های مربوط به صفر و یک کردن بیت ها در محیط Atmel Studio رو قرار دادم.
سنجش مسافت التراسونیک HCSR04 و HC-SR05 با Atmel Studio