آموزش آردوینوپروژه های آردوینو

اندازه گیری سطح آب با آردوینو و سنسور JSN SR-40T

حسگر اولتراسونیک (به عنوان سنسور SONAR نیز شناخته می شود) وسیله ای الکترونیکی است که برای اندازه گیری فاصله جسم هدف با انتشار امواج فراصوت مورد استفاده قرار می گیرد. به غیر از اندازه گیری فاصله ، برای ردیابی اجسام و ربات های عدم برخورد با مانع نیز استفاده می شود. پیش از این ، ما برای اندازه گیری فاصله و سایر پروژه ها از سنسور التراسونیک HC-SR04 به همراه آردوینو و سایر میکروکنترلرها استفاده کردیم. استفاده از این سنسور آسان و قیمت آن کم است. اما این سنسور محدودیت منفی هم دارد. یکی از آنها این است که نمی توان از این سنسورها در پروژه هایی که شامل آب هستند استفاده کرد.

در این آموزش ، ما در مورد یک سنسور اولتراسونیک ضد آب جدید به نام JSN SR-04T بحث خواهیم کرد. در طول این آموزش ، ما خواهیم فهمید که سنسور اولتراسونیک ضد آب JSN SR-04T چگونه کار می کند ، ویژگی ها و مشخصات آن چیست و نحوه راه اندازی آن با Arduino Nano چگونه است.

سنسور التراسونیک ضد آب JSN SR-04T

JSN-SR0T4 یک ماژول سنسور اندازه گیری فاصله اولتراسونیک ضد آب است که می تواند اندازه گیری فاصله (بدون تماس( 25 سانتی متر تا 450 سانتی متر را با دقت 2 میلی متر ارائه دهد. این ماژول سنسور در دو قسمت مجزا وجود دارد ، یکی مبدل است که عنصر سنجش است و دیگری صفحه کنترل است. این سنسور بسیار شبیه سنسورهای فراصوت است که در سپر اتومبیل استفاده می شود.

سنسور التراسونیک ضد آب JSN SR-04T

ماژول سنسور JSN SR-04T دارای طراحی صنعتی پروب سنجش التراسونیک، مقاومت در برابر آب ، عملکرد پایدار و دقت بالا است. می تواند در دامنه های افقی ، جلوگیری از برخورد با مانع ، کنترل خودکار ، نظارت بر اشیا و حرکت آنها ، کنترل ترافیک ، امنیت و هوش مصنوعی و سایر برنامه ها مورد استفاده قرار گیرد.

پین های سنسور JSN SR-04T

پین های سنسور JSN SR-04T 

Pin No. Pin Name توضیحات
1 5V پایه ولتاژ 5 ولت سنسور
2 Trig پایه ورودی سنسور. این پین باید برای 10 میکرو ثانیه بالا نگه داشته شود تا با ارسال امواج مافوق صوت ، اندازه گیری انجام شود.
3 Echo پین خروجی اکو. این پین برای دوره ای بالا می رود که برابر با مدت زمان بازگشت موج فراصوت به سنسور خواهد بود.
4 Gnd این پین به Ground سیستم متصل است.

ماژول سنسور JSN SR-04T مشابه HC-SR04 است ، اما در مقایسه با HC-SR04 پیشرفت هایی دارد:

  • بر خلاف HC-SR04، سنسور  JSN SR-04T مبدل لحیم کاری شده روی PCB را ندارد. در عوض ، این سنسور به یک کابل خارجی بسیار بلند (2.5 متری) متصل شده است ، بنابراین می توانید عنصر سنجش را از مدار کنترل دور کنید.
  • این سنسور در یک محفظه ضد آب قرار دارد، اگر بخواهید آن را در محیط های سخت تر قرار دهید، ممکن است مفید باشد.

با تمام این مزایا ، معایبی نیز دارد. حداقل فاصله ای که این سنسور می تواند اندازه گیری کند 20 سانتی متر در مقایسه با 2 سانتی متر HC-SR04 است. دلیل این امر این است که JSN SR-04T فقط یک مبدل دارد. این سنسور از مبدل مشابه برای انتقال و دریافت سیگنال استفاده می کند بنابراین برای تغییر حالت از حالت دیگر به زمان نیاز دارد. به همین دلیل سنسور JSN SR-04T نمی تواند زیر 20 سانتی متر اندازه گیری کند اما HC-SR04 می تواند اندازه گیری کند زیرا دارای فرستنده و گیرنده جداگانه است.

مشخصات و ویژگی های سنسور التراسونیک ضد آب JSN SR-04T:

  • ولتاژ کاری: 5 ولت DC
  • جریان کار ثابت: 5 میلی آمپر
  • جریان کار: 30 میلی آمپر
  • فرکانس انتشار صوتی: 40 کیلوهرتز
  • محدوده عملکرد: 25 سانتی متر تا 4.5 متر
  • طول کابل: 2.5 متر

مدار اتصال JSN SR-04T به آردوینو

شماتیک کامل مدار برای سنسور اولتراسونیک ضد آب JSN SR-04T با Arduino در زیر آورده شده است:

مدار اتصال JSN SR-04T به آردوینو

این پروژه شامل مقدار کمی سیم کشی است. هر دو ماژول با GND و 5V تغذیه می شوند ، پایه های سنسور اولتراسونیک Trigger و Echo به D2 و D3 آردوینو متصل می شوند. اتصالات LCD به طور کامل در جدول زیر آورده شده است.

LCD آردوینو
VSS GND
VDD 5V
VO پتانسیومتر
RS D12
RW GND
E D11
D4 D4
D5 D5
D6 D6
D7 D7
A 5V
K GND

قطعات مورد نیاز

قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

سخت افزار من در نهایت به این شکل بود:

راه اندازی سنسور JSN-SR-04T با آردوینو

برنامه نویسی آردوینو برای سنسور التراسونیک ضد آب

کد کامل راه انازی سنسور اولتراسونیک ضد آب JSN SR-04T با Arduino را می توانید در انتهای صفحه دانلود کنید. در اینجا قسمت های مهم کد را توضیح میدهیم.

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

طبق معمول ، کد را با درج تمام کتابخانه های مورد نیاز شروع میکنیم. در اینجا ، ما فقط از کتابخانه LiquidCrystal.h استفاده می کنیم. این کتابخانه برای کنترل LCD کاراکتری با استفاده از یک برد Arduino استفاده می شود. از این کتابخانه می توان برای سیم کشی ال سی دی در حالت 4 بیتی و 8 بیتی استفاده کرد.

#include<LiquidCrystal.h>

سپس در خط بعدی پین های آردوینو را که به LCD متصل می شوند تعریف میکنیم.

LiquidCrystal lcd(12, 11, 5, 6, 7, 8);

سپس پین Trig و echo را برای سنسور التراسونیک تعریف میکنیم. ما پایه Trig را به پایه D2 آردوینو و پایه echo را به پایه D3 آردوینو وصل کرده ایم.

#define ECHOPIN 3
#define TRIGPIN 2

در داخل تابع setup () ، پین Trig را به عنوان یک خروجی و پین echo را به عنوان ورودی تعریف میکنیم و همچنین ارتباط سریال را با نرخ 9600 برای نمایش نتایج در سریال مانیتور شروع کرده و ستون و ردیف ال سی دی را تعریف میکنیم.

void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2); 
  pinMode(ECHOPIN,INPUT_PULLUP);
  pinMode(TRIGPIN, OUTPUT);
  digitalWrite(ECHOPIN, HIGH);
}

در loop، ابتدا پین trig را به مدت 2 میکرو ثانیه در حالت کم (Low) قرار میدهیم تا از Low بودن پایه trig اطمینان حاصل کنیم. سپس پین trig را برای 15 میکروثانیه در حالت HIGH تنظیم میکنیم تا یک موج التراسونیک ارسال شود. ما از تابع pulseIn برای خواندن زمان ارسال و دریافت موج استفاده میکنیم و آن مقدار را در متغیر “duration” ذخیره خواهیم کرد. در پایان ، ما مقدار فاصله را در سریال مانیتور چاپ خواهیم کرد.

void loop() {
  digitalWrite(TRIGPIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIGPIN, HIGH);
  delayMicroseconds(15);
  digitalWrite(TRIGPIN, LOW);
  int distance = pulseIn(ECHOPIN, HIGH, 26000);
  distance=distance/58;
  Serial.print(distance);

آزمایش سنسور اولتراسونیک ضد آب JSN SR-04T

پس از آماده شدن کد و سخت افزار ، Arduino را به لپ تاپ متصل کرده و کد را بارگذاری کنید. بعد از آن ، مانیتور سریال را با نرخ باود 9600 باز کنید و چیزی را جلوی سنسور قرار دهید. فاصله محاسبه شده بر روی صفحه نمایش LCD نمایش داده می شود.

آزمایش سنسور اولتراسونیک ضد آب JSN SR-04T

موارد موجود در فایل : سورس کامل

5 (2 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

2 نظر

  1. سلام
    ممنون بابت سایت خوبتان
    ببخشید میشه بجای اردوینو نانو از مینی استفاده کنم ؟؟؟؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *