
باتریهای قابل شارژ لیتیومی امروزه در بسیاری از وسایل الکترونیکی، از گوشی و لپتاپ گرفته تا پهپاد، اسپیکر، تجهیزات قابل حمل و پروژههای الکترونیکی استفاده میشوند. در میان مدلهای مختلف، باتری لیتیوم یونی و…
ادامه مطلب۰۶ آذر ۱۴۰۱

در این پروژه قصد داریم به کمک سنسور اولتراسونیک یک فاصله سنج طراحی کنیم. می توان با استفاده از این سنسور یک موج فراصوت ارسال و دریافت کرد. از آنجایی که سرعت صوت در هوا ثابت است، با محاسبه اختلاف زمان ارسال و دریافت می توان فاصله سنسور تا یک جسم را حساب کرد. در ادامه با ما همراه باشید.
ماژول اولتراسونیک
بردبرد (خرید برد بورد)
Adrafruit LCD
ماژول اولتراسونیک دارای 4 پایه است. نام هر پایه در کنار آن نوشته شده است. در شکل زیر، میزان دقت سنسور، زاویه ارسال و تشخیص، جریان گذرنده از سنسور و محدوده تشخیص آن ذکر شده است.
پین های سنسور اولتراسونیک
دو پایه VCC و GND ماژول را به پین های 5v و GND آردوینو و پایههای Trig و Echo را به دو پین 2 و 3 دیجیتال آردوینو وصل کنید. پایه Trig ورودی ماژول است و فرمان ارسال موج اولتراسونیک به آن وارد میشود. پایه Echo خروجی ماژول است و به موج دریافتی از محیط حساس است.
مدار اتصال ماژول اولتراسونیک
در این برنامه می خواهیم با فعال کردن پین trig به مدت 10 میکرو ثانیه و دریافت موج توسط echo، مدت زمان رفت و برگشت موج را محاسبه کنیم و مقدار آن را روی سریال مانیتور نشان دهیم.
۱. ابتدا پین های 2 و3 را به ترتیب trig و echo در نظر می گیریم. سپس پین trig را به عنوان خروجی و پین echo را به عنوان ورودی در نظر می گیریم. نرخ ارسال داده (Baudrate) روی پورت سریال را مشخص می کنیم.
۲. ابتدا پین trig را LOW می کنیم تا وضعیت این پین را ریست کند. پس از 2 میکروثانیه این پین را HIGH می کنیم و به مدت 10 میکروثانیه روشن است، سپس آن را خاموش می کنیم و با تابع pulseIn مقدار زمان رفت و برگشت را داخل متغیر duration قرار می دهیم. برای کاربرد های ساده، سرعت صوت در هوا را مقدار ثابتی در حدود 334 m/s در نظر میگیریم و از طریق فرمول زیر مقدار فاصله را بر حسب سانتی متر محاسبه می کنیم:
distance = duration*0.034/2
سپس با استفاده از ارتباط سریال، مقدار فاصله را روی سریال مانیتور نشان می دهیم. برای این کار کد های زیر را وارد می کنیم:
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
#define trig 2
#define echo 3
void setup()
{
Serial.begin(9600);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
}
void loop()
{
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
float time = pulseIn(echo, HIGH);
float velocity = 334;
float distance = ((time / 2) * velocity) * 0.0001; // conversion to cm
if (distance >= 2 && distance <= 400)
{
Serial.print("Distance= ");
Serial.println(distance);
}
else
{
Serial.println("Out of range");
}
delay(1000);
}برای دیدن خروجی سنسور طبق مسیر زیر وارد سریال مانیتور شوید:
Tools>Serial Monitor
شکل (3): مسیر باز کردن سریال مانیتور
در شکل زیر خروجی سریال مانیتور را مشاهده می کنید. دو کد Serial.print() به ما کمک کردند که عبارت های distance و cm را در سریال مانیتور نمایش دهیم. سرعت ارسال اطلاعات به میزان مجموع delay ها بستگی دارد که 12 میکروثانیه است.
نکته: دقت داشته باشید که میزان Baudrate تعریف شده توسط Serial.begin() در تابع setup() با مقدار Baudrate تعیین شده در سریال مانیتور یکی باشد.
خروجی سنسور در سریال مانیتور
تبریک میگوییم! ماژول اولتراسونیک شما راه اندازی شده و میتوانید در پروژههای فاصله سنجی از آن استفاده کنید!
اگر نگاهی به محصولات اولتراسونیک در بازار بیاندازید، چندین نوع سنسور پیدا میکنید. نمونههایی مانند HC-SR04 ، HC-SR05 ، SRF06 ، US-100 و JSN-SRF04T نحوه کارکرد این سنسورها تقریبا یکسان است و تفاوت آنها عمدتا به میزان دقت، محدوده کاری، ضد آب بودن و غیره مربوط میشود. پرکاربردترین سنسور اولتراسونیک ماژول HC-SR04 است که یک سنسور ارزان قیمت و با دقت مناسب است. محدوده کاری این سنسور 2 – 4 cm و دقت کاری آن 0.5cm است.
برای مشاهده مدلهای بیشتر میتوانید به بخش خرید ماژولهای اولتراسونیک در فروشگاه جم ترونیک مراجعه کنید.
با استفاده از سنسور اولتراسونیک توانستیم فاصله سنسور تا یک جسم را محاسبه کنیم و مقدار آن را از روی سریال مانیتور بخوانیم. مقدار خوانده شده توسط سنسور را می توان روی یک LCD نمایش داد. از این سنسور می توان برای محاسبه ارتفاع در بسیاری از پروژه ها استفاده کرد. درصورتی می خواهید دقت بالاتری داشته باشید می توانید با استفاده از سنسور دما و رطوبت، پارامتر های دیگری که در سنجش آن تأثیر دارند را بررسی کنید و با لحاظ کردن آن، فاصله را بسنجید. برای شناخت بیشتر ماژولهای اولتراسونیک میتوانید پست ماژول اولتراسونیک چیست؟ را بخوانید.

نویز برق یکی از مشکلات رایج در مدارهای الکترونیکی است که میتواند به شکل صدای اضافی در سیستمهای صوتی، اختلال در عملکرد سنسورها، نوسان سیگنال، خطا در تجهیزات دیجیتال یا حتی عملکرد نامنظم یک…

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