القطع المطلوبة

  • أردوينو UNO مع كابل USB
  • لوحة تجارب (Breadboard)
  • حساس حركة PIR
  • صفارة (Buzzer)
  • ليد (LED)
  • مقاومتان 220Ω (للصفارة والليد)
  • أسلاك توصيل

مخطط التوصيل

مخطط التوصيل: حساس الحركة على المنفذ 2، والصفارة على المنفذ 3 والليد على المنفذ 4 مع مقاومتين 220Ω

حساس الحركة: OUT إلى المنفذ 2. الصفارة على المنفذ 3 والليد على المنفذ 4، ومع كلٍّ منهما مقاومة 220Ω.

الكود

كود الإنذار في المحاكاة: الصفارة والليد يعملان ما دامت هناك حركة. الوميض تحدٍّ في آخر الفيديو (في ملخص الدرس)

int pir = 2;
int buzzer = 3;
int led = 4;

void setup() {
  pinMode(pir, INPUT);
  pinMode(buzzer, OUTPUT);
  pinMode(led, OUTPUT);
}

void loop() {
  if (digitalRead(pir) == HIGH) {
    tone(buzzer, 1000);
    digitalWrite(led, HIGH);
  }
  else {
    noTone(buzzer);
    digitalWrite(led, LOW);
  }
}

⚡ ملخص الدرس

💡 في Tinkercad نبني الإنذار: الـ PIR على المنفذ 2، والصفارة على 3، والليد على 4، فيعملان ما دامت هناك حركة.

🎯 أهم النقاط

  • الصفارة في Tinkercad سلبية (Piezo)، فنشغّلها بالدالة tone على المنفذ 3. ومع الصفارة والليد مقاومتان 220Ω.
  • digitalRead(pir) == HIGH تعني أن هناك حركة: tone والليد HIGH، وبدون حركة noTone والليد LOW.
  • في الفيديو (3:28) لم يضئ الليد أولًا لأن طرفه الثاني لم يكن موصولًا بـ GND؛ افحص هذا أولًا إذا لم يعمل الليد.

📖 مصطلحات

tone · تشغيل الصفارةnoTone · إيقاف الصفارةif / else · الشرط

⚠️ انتبه

  • حساس Tinkercad غير حساس الطقم: طرفه الأوسط Power. مرّر المؤشر فوق كل طرف: Power إلى 5V، و Ground إلى GND، و Signal إلى المنفذ 2.
  • حرّك الدائرة الخضراء أمام الحساس أثناء المحاكاة لتصنع حركة.

✏️ تصحيح (الدقيقة 1:38): الصفارة السلبية لا تحتاج منفذ PWM: tone تصنع التردد بنفسها على أي منفذ رقمي، والمنفذ 3 مجرد اختيار.

🧪 جرّب بنفسك: التحدي في آخر الفيديو: اطلب من الذكاء الاصطناعي أن يجعل الصفارة والليد يعملان ويتوقفان كل 200 مللي ثانية أثناء الحركة، وافهم كل سطر قبل أن تجربه.