یکشنبه چهاردهم مهر ۱۳۹۲ | 21:59 | امیر عیوضی -
ماژول HC-SR04 به این صورت کار میکنه که شما ابتدا یه پالس با طول حداقل 10
میکرو ثانیه به پایه TRIG میدین و ماژول خودش 8 عدد پالس با فرکانس 40
کیلو هرتز ارسال میکنه
وقتی که پالس ها ارسال شد پایه ECHO یک میشه و تا زمانی که برگشت پالس ها از جسم را دریافت نکنه این پایه یک باقی میمونه
به نمودار زیر توجه کنید

کاری که برنامه نویس باید انجام بده اینه که باید زمان رفت و برگشت پالس رو از روی پایه ECHO اندازه بگیره و با استفاده از فرمول زیر (فیزیک دوم دبیرستان
distance = (high level time×velocity of sound (340M/S) ) / 2
ممکنه سرعت محیط های مختلف متفاوت باشه مثلا در آب سرعت صوت فرق میکنه پس در هوای مرطوب هم سرعت با هوای خشک فرق میکنه ولی به صورت پیش فرض سرعت را در هوای معمولی و خشک در نظر میگیریم
برای اندازه گیری زمان از تایمر صفر استفاده شده و از وقفه این تایمر استفاده شده است (صرفا جهت شمارش تعداد سریز ها) و در نهایت با استفاده از کد زیر زمان محاسبه میشود (کلاک تایمر 8MHz می باشد)
1: Use voltage: DC5V
2: Static current: less than 2mA
3: level output: high-5V
4: level output: Low 0V
5: Sensor angle: not more than 15 degrees
6: Detection distance: 2cm-450cm
7: High precision: up to 3mm
Wiring, VCC, trig (control side), echo (receiving end), GND Ground