إن لم يعمل التشغيل، افتحه على YouTube ↗

مشروع 14: قياس المسافة بحسّاس الموجات فوق الصوتية HC-SR04

المصدر: YouTube Tutorial

📘 الشرح

🎯 الفكرة والهدف:
نقيس المسافة إلى جسم أمام الحسّاس بدقّة سنتيمترات ونعرضها على الشاشة التسلسلية. أساس مشاريع الروبوت وتجنّب العوائق وأنظمة الإنذار.

📘 الشرح:
• نرسل نبضة قصيرة (10 ميكروثانية) على طرف Trig.
• الحسّاس يطلق موجة فوق صوتية، وعند ارتدادها يرفع طرف Echo مدّةً تساوي زمن الرحلة.
• pulseIn(): يقيس هذا الزمن.
• المسافة = الزمن × 0.034 ÷ 2 (سرعة الصوت، ونقسم على 2 لأن الموجة ذهبت وعادت).
افتح Serial Monitor على 9600 لرؤية القيم.

🔌 طريقة التوصيل

  • VCC ← 5V
  • GND ← GND
  • Trig ← الطرف الرقمي 9
  • Echo ← الطرف الرقمي 10

🧩 المكوّنات المطلوبة

💻 الكود

const int trigPin = 9;
const int echoPin = 10;
long duration;
int distance;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH);
  distance = duration * 0.034 / 2;   // بالسنتيمتر

  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(500);
}

فيديوهات أخرى

🛠️ لطلب عمل مشروع مشابه، أو مساعدة في تنفيذه، يمكنكم التواصل معنا.
تواصل عبر واتساب
✓ تم نسخ رابط المشروع
تمت الإضافة إلى السلة