راه‌اندازی سنسور آلتراسونیک SR04 با آردوینو

0
843
راه‌اندازی سنسور آلتراسونیک SR04 با آردوینو
راه‌اندازی سنسور آلتراسونیک SR04 با آردوینو

مقدمه

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

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

سنسور آلتراسونیک چیست؟

اساس کار حسگرهای فراصوت(آلتراسونیک) مشابه رادار یا ردیاب صوتی، تشخیص ویژگی‌های هدف ازطریق تحلیل بازتاب امواج رادیویی یا صوتی می‌باشد. حسگرهای فراصوت امواج صوتی با فرکانس بالا ایجاد می‌کنند و موج بازتاب‌شده را دریافت و تحلیل می‌کنند. این حسگرها با محاسبهٔ زمان بین فرستادن سیگنال و گرفتن بازتاب، فاصلهٔ جسم را محاسبه می‌کنند. از این فناوری می‌توان در اندازه‌گیری سرعت و جهت باد یا میزان پربودن یک مخزن استفاده‌کرد. برای اندازه‌گیری سرعت و جهت، یک دستگاه از چندین گیرنده استفاده می‌کند و از روی فاصلهٔ نسبی آن‌ها سرعت را اندازه می‌گیرد. برای اندازه‌گیری میزان مایع داخل یک مخزن نیز کافیست فاصله از سطح مایع اندازه گرفته‌شود. کاربردهای دیگر شامل ردیاب‌های صوتی(sonar)، بخورها (Humidifier)، فراوانگاری (سونوگرافی فراصوت)، دزدگیرها و آزمایش‌های غیرمخرب می‌شود.

به‌طورمعمول از فرستنده و گیرنده‌هایی استفاده می‌شود که با تبدیل انرژی الکتریکی به صوتی امواج صوتی بالاتر از ۲۰کیلوهرتز ایجاد می‌کنند و با دریافت بازتاب امواج، صوت را بار دیگر به انرژی الکتریکی تبدیل می‌کنند تا قابل اندازه‌گیری و نمایش باشند.

خب پس‌از اینکه متوجه‌شدیم تقریبا چه اتفاقی درون این سنسور‌ها ازجمله سنسور SR04 می‌افتد نوبت‌به راه‌اندازی این سنسور توسط سخت‌افزار آردوینو می‌رسد. برای این کار ابتدا پروژه را به دو بخش سخت‌افزار و نرم‌افزار تقسیم می‌کنیم.

سخت‌افزاری که برای راه‌اندازی سنسور آلتراسونیک SR04 نیاز داریم شامل مواردزیر می‌شود.

  • سنسور آلتراسونیک SR04
  • برد آردوینو (نوع برد مهم نیست از هرنوعی که دارید اشکالی‌نداره)
  • ترجیحا بردبرد و چند عدد سیم بردبردی

تا اینجا بخش سخت‌افزار پروژه به اتمام رسید.

نرم‌افزاری که برای این پروژه موردنیاز است فقط نصب نرم‌افزار آردوینو است. که اگر باعنوان ”دانلود نرم‌افزار آردوینو” در گوگل سرچ‌کنید به‌راحتی می‌توانید این نرم‌افزار را دانلود و نصب کنید.

پس‌از فراهم‌کردن مواردی که گفته‌شد نوبت‌به راه‌اندازی سنسور توسط برد آردوینو می‌رسد.

شماتیک سنسور آلتراسونیک SR04

شماتیک سنسور SR04
شماتیک سنسور SR04

 

پس‌از اینکه نحوه اتصالات را به‌درستی انجام‌دادیم حال نوبت‌به نوشتن کد موردنظر برای سخت‌افزار موردنظرمان می‌رسد.

کدنویسی سنسور SR04

int trigPin = 9; //Trig - green Jumper
int echoPin = 12; //Echo - yellow Jumper
long duration, cm, inches;

void setup() {
//Serial Port begin
Serial.begin (9600);
//Define inputs and outputs
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}

void loop()
{


// The sensor is triggered by a HIGH pulse of 10 or more microseconds.
// Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

// Read the signal from the sensor: a HIGH pulse whose
// duration is the time (in microseconds) from the sending
// of the ping to the reception of its echo off of an object.
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);

// convert the time into a distance
cm = (duration/2) / 29.1;
inches = (duration/2) / 74; 

Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();

delay(250);
}

عملکرد کد به‌نحوی است که دو پین از آردوینو یکی ورودی و دیگری خروجی تعریف‌شده‌است چرا؟ برای اینکه اگر به توضیحاتی که دادیم یکی زمان رفت و یکی زمان برگشت را اندازه‌گیری می‌کند و درنهایت می‌توان توسط پالسی که ایجاد می‌کند تشخیص دهد که آیا مانعی وجود دارد یا خیر؟

و درواقع مهم‌ترین کاری که برنامه‌نویس باید در این پروژه باید انجام‌دهد محاسبه تبدیلات است.(حالا بگید تئوری کاربرد نداره) که این کار برای دو واحد سانتی‌متر و اینچ نوشته‌شده‌است.(برای تمرین می‌تونید تبدیلات واحد‌های دیگه رو هم انجام‌بدید.)

درنهایت هم اگر دقت‌کنید واحدهای in و cm نمایش داده می‌شود.

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

1000in, 2545cm
1001in, 2547cm
1001in, 2547cm
1001in, 2546cm
1001in, 2547cm
1001in, 2546cm
1001in, 2547cm
12in, 31cm
12in, 31cm
7in, 19cm
5in, 15cm
23in, 59cm
7in, 18cm
6in, 15cm
4in, 10cm
1004in, 2554cm
1006in, 2559cm
1006in, 2560cm
1006in, 2559cm
1002in, 2549cm
12in, 31cm
13in, 33cm
1001in, 2546cm
1001in, 2546cm
1000in, 2545cm
1001in, 2545cm
1000in, 2543cm
1000in, 2543cm
1000in, 2543cm

امیدوارم که این آموزش هم برای شما مفید واقع‌شده‌باشد.

 

 

منبع:‌سیسوگ

مطلب قبلیرادیو آماتوری چیست و چرا به آن نیاز داریم؟ (بخش اول–معرفی)
مطلب بعدیوقتی برنامه‌نویسان ایرانی تحریم را با طعم جدیدتری چشیدند

پاسخ دهید

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