قياس المسافة باستخدام جهاز استشعار الموجات فوق الصوتية | Ultrasonic Sensor HC-SR04| ولوحة Arduino - DIY Channel3

DIY Channel3

Arduino│ESP8266│ESP32│Drone│Robot

قياس المسافة باستخدام جهاز استشعار الموجات فوق الصوتية | Ultrasonic Sensor HC-SR04| ولوحة Arduino

مشاركة هذا

 



جهاز استشعار الموجات فوق الصوتية HC-SR04 هو جهاز استشعار يمكنه قياس المسافة. تصدر الموجات فوق الصوتية عند 40.000 هرتز (40 كيلو هرتز) والتي تنتقل عبر الهواء وإذا كان هناك شيء أو عائق على طريقه فسوف يرتد مرة أخرى إلى الوحدة. بالنظر إلى وقت السفر وسرعة الصوت ، يمكنك حساب المسافة.



دبوس التكوين الخاص بـ HC-SR04 هو VCC (1) و TRIG (2) و ECHO (3) و GND (4). جهد إمداد VCC هو + 5 فولت ويمكنك توصيل دبوس TRIG و ECHO بأي إدخال / إخراج رقمي في لوحة Arduino.

من أجل إنشاء الموجات فوق الصوتية ، نحتاج إلى ضبط Trigger Pin على حالة عالية لمدة 10 s. سيؤدي ذلك إلى إرسال دفقة صوتية من 8 دورات والتي ستنتقل بسرعة الصوت وسيتم استقبالها في Echo Pin. سيخرج Echo Pin الوقت بالميكروثانية التي تقطعها الموجة الصوتية.
 

على سبيل المثال ، إذا كان الكائن على بعد 20 سم من المستشعر ، وكانت سرعة الصوت 340 م / ث أو 0.034 سم / ث ، فستحتاج الموجة الصوتية إلى الانتقال حوالي 588 ميكروثانية. لكن ما ستحصل عليه من دبوس Echo سيكون ضعف هذا الرقم لأن الموجة الصوتية تحتاج إلى الانتقال للأمام والارتداد للخلف. لذا من أجل الحصول على المسافة بالسنتيمتر ، نحتاج إلى ضرب قيمة وقت السفر المستلمة من دبوس الصدى في 0.034 وقسمتها على 2.



المكونات الاساسية :

-  Arduino UNO R3
-  Ultrasonic Sensor HC-SR04
- Breadboard
- Jumper wires

++ مخطط الرسم البياني :


++ الكود البرمجي هنا :


#define echoPin 2 // attach pin D2 Arduino to pin Echo of HC-SR04
#define trigPin 3 //attach pin D3 Arduino to pin Trig of HC-SR04

// defines variables
long duration; // variable for the duration of sound wave travel
int distance; // variable for the distance measurement

void setup() {
  pinMode(trigPin, OUTPUT); // Sets the trigPin as an OUTPUT
  pinMode(echoPin, INPUT); // Sets the echoPin as an INPUT
  Serial.begin(9600); // // Serial Communication is starting with 9600 of baudrate speed
  Serial.println("Ultrasonic Sensor HC-SR04 Test"); // print some text in Serial Monitor
  Serial.println("with Arduino UNO R3");
}
void loop() {
  // Clears the trigPin condition
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Sets the trigPin HIGH (ACTIVE) for 10 microseconds
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  // Reads the echoPin, returns the sound wave travel time in microseconds
  duration = pulseIn(echoPin, HIGH);
  // Calculating the distance
  distance = duration * 0.034 / 2; // Speed of sound wave divided by 2 (go and back)
  // Displays the distance on the Serial Monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");
}
#arduino #raspberrypi #electronics #arduinoproject #robotics #technology #engineering #arduinouno #robot #iot #diy #electrical #maker #programming #electronic #microcontroller #arduinoprojects #tech #esp #pcb #arduinomega #d #electricalengineering #robotica #diyelectronics #project #coding #arduinofun #sensor

No comments:

Post a Comment