برای اندازه گیری فاصله ، از روش ها مختلفی استفاده می شود . یکی از این روش ها موسوم به سونار است . در این روش از محاسبه زمان بازتاب امواج صوتی و همچنین پدیده دوپلر (تغییر فرکانس امواج صوتی بر اساس فاصله از منبع صوت) جهت اندازه گیری فاصله استفاده می شود . این ماژول می تواند حداکثر تا فاصله 4 متر را با دقت 5 میلیمتری اندازه بگیرد . از این ماژول می توان در سیستم های اندازه گیری فاصله استفاده کرد. جهت راه اندازی این ماژول نیازی به هیچ المان خارجی نیست و می توان آن را مستقیما به MCU متصل کرد .

 

پین های ماژول US-015 :

این ماژول دارای 4 پین به صورت زیر می باشد :

1- VCC پین تغذیه ماژول است .

2- Trig این پین جهت فعال سازی و ارسال امواج توسط ماژول می باشد .

3- Echo این پین هنگام دریافت پژواک تغییر وضعیت می دهد .

4- gnd پین زمین ماژول می باشد .

 

 

مشخصات :

  • ولتاژ کاری 5 ولت
  • عملکرد به صورت آلتراسونیک
  • جریان مصرفی در حالت آماده به کار کمتر از 3mA
  • رنج اندازه گیری فاصله از 2 سانتی متر تا 4 متر
  • دقت اندازه گیری 5mm
  • زاویه انتشار 15 درجه
  • تاخیر انتشار 10us

 

 

 

راه اندازی ماژول US-015 توسط آردوینو :

این ماژول دارای چهار پین است که دو پین آن تغذیه و پین های دیگر Echo و Trig است . برای اندازه گیری فاصله باید پین Trig را به مدت 10 میکرو ثانیه 1 شود ، در این حالت پین Echo از 0 به 1 تغییر حالت می دهد و تا دریافت پژواک در حالت 1 باقی می ماند و می توان با اندازه گیری زمان یک بودن پین Echo فاصله تا جسم را محاسبه کرد .

در مثال زیر با استفاده از آردوینو ابتدا پین Trig به مدت 10us یک می شود و سپس مدت زمان یک بودن پین Echo اندازه گیری می شود . با استفاده از سرعت صوت در هوا می توان مقدار فاصله را بر حسب سانتیمتر به دست آورد .

 

#define trigPin 11

#define echoPin 12

#define led 11

#define led2 10




void setup() {

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

pinMode(led, OUTPUT);

pinMode(led2, OUTPUT);

}

void loop() {

long duration, distance;

digitalWrite(trigPin, LOW);  // Added this line

delayMicroseconds(2); // Added this line

digitalWrite(trigPin, HIGH);

//  delayMicroseconds(1000); - Removed this line

delayMicroseconds(10); // Added this line

digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);

distance = (duration/2) / 29.1;

if (distance < 4) {  // This is where the LED On/Off happens

digitalWrite(led,HIGH); // When the Red condition is met, the Green LED should turn off

digitalWrite(led2,LOW);

}

else {

digitalWrite(led,LOW);

digitalWrite(led2,HIGH);

}

if (distance >= 200 || distance <= 0){

Serial.println("Out of range");

}

else {

Serial.print(distance);

Serial.println(" cm");

}

delay(500); {

 

Tags:
About Author: USER_4