กลับไปหน้ารวมไฟล์
contactless-doorbell-ultrasonic-sr04-arduino.md

การส่งสัญญาณที่ถูกสุขอนามัย: กระดิ่งประตู Ultrasonic ไร้สัมผัส

ปุ่มกดกระดิ่งประตูแบบดั้งเดิมเป็นแหล่งแพร่เชื้อชีวภาพที่สัมผัสกับพนักงานส่งของหลายร้อยคนที่มีโอกาสติดเชื้ออยู่ตลอดเวลา Contactless Doorbell นี้จะขจัดปัญหานี้ได้อย่างสมบูรณ์! โปรเจกต์นี้ใช้ HC-SR04 ultrasonic sonar matrix ที่แข็งแรงเพื่อสร้างสนามคลื่นเสียงกั้นแบบบริสุทธิ์ได้ทันที ผู้มาเยือนเพียงแค่โบกมือของตนเองอย่างปลอดภัยที่ระยะ 5 เซนติเมตรจากกล่องหุ่นยนต์ Arduino จะตรวจจับการยุบตัวของคลื่นเสียงที่ล่าช้า และสั่งให้ piezoelectric buzzer ภายในขนาดใหญ่ หรือ House Chime 220V คุณภาพสูงทำงานทันทีเพื่อแจ้งเตือนผู้อยู่อาศัยได้อย่างสมบูรณ์แบบ!

obstacle_avoiding_robot_front_1772681550494.png

การออกแบบ Sonar Execution Array ที่ยิงเร็ว!

หาก Arduino ตรวจสอบ ultrasonic sensor เร็วเกินไปโดยไม่มี delay จะทำให้เกิด "Acoustic Interference" ping ที่ส่งออกไปจะชนกลับเข้ากับ ping เก่าที่ลอยอยู่ในอากาศทันที ทำให้เกิด NaN error ที่น่ากลัว!

  1. คุณต้องใช้ delay(50) อย่างชัดเจนระหว่าง sonar ping เพื่อให้คลื่นเสียงในอากาศสลายไป!
  2. ฟังก์ชัน pulseIn() จะคำนวณทางคณิตศาสตร์ว่าการเดินทางของคลื่นเสียงทั้งหมดใช้เวลาไปกี่ Microseconds อย่างแม่นยำ
// Generating the exact 40KHz Ultrasonic Ping!
digitalWrite(TRIG_PIN, LOW); delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);

long rawDuration = pulseIn(ECHO_PIN, HIGH);
int distance_cm = rawDuration * 0.034 / 2; // Divide into strict Centimeters!

// The Hand Detection Logic Sequence!
if (distance_cm > 0 && distance_cm < 10) { 
  // An object is solidly hovering < 10cm away!
  Serial.println("GUEST AWAITING!");
  
  // Blast the Chime!
  digitalWrite(BUZZER_PIN, HIGH);
  delay(1500); // Hold the doorbell tone for exactly 1.5 Seconds!
  digitalWrite(BUZZER_PIN, LOW);
  
  // Massive 4-Second Lockout constraint!
  // Prevents the doorbell from fiercely buzzing infinitely if they leave their hand!
  delay(4000); 
}

การรวม Solenoid ของ House Chime แบบกายภาพ!

piezo buzzer ขนาดเล็ก 5V ไม่สามารถได้ยินไปทั่วบ้านขนาดใหญ่สามชั้นได้

  • คุณต้องเชื่อมต่อ Arduino เข้ากับ 18V AC Mechanical Box ที่มีอยู่เดิมให้สมบูรณ์!
  • Arduino ใช้ 5V Relay Module เพื่อลัดวงจรสายกระดิ่งประตู 18V AC แบบดั้งเดิมทั้งสองเส้น!
  • เมื่อ Ultrasonic sensor ตรวจจับได้ Relay จะคลิก closed อย่างสมบูรณ์เป็นเวลา 500ms เพื่อสั่งให้ House Chime Solenoid โลหะหนักส่งเสียง "DING DONG" ไปทั่วทั้งบริเวณ!

อุปกรณ์ประกอบทางสถาปัตยกรรม

  • Arduino Uno/Nano (ทำงานได้อย่างไร้ที่ติเป็นเวลาหลายทศวรรษในการติดตามระยะใกล้)
  • HC-SR04 Ultrasonic Distance Module (สร้างรูปลักษณ์ "Robot Face" ที่โดดเด่น ซึ่งมักพบเห็นได้ในการติดตั้งแบบ cyberpunk)
  • Active 5V Buzzer (ให้เสียงความถี่สูงทันทีโดยไม่จำเป็นต้องใช้ tone() timer ที่ซับซ้อน) หรือ 5V Optically Isolated Relay Module (สำหรับการรวมเข้ากับ AC Chime หนักที่มีอยู่เดิมโดยตรง)
  • กล่องหุ้มกันฝนที่พิมพ์ 3D แบบกำหนดเอง (ควรมีรูที่แม่นยำเพียงสองรูสำหรับ Ultrasonic microphone เพื่อกำจัดช่องทางการซึมผ่านของน้ำฝนได้อย่างสมบูรณ์!)

ข้อมูล Frontmatter ดั้งเดิม

title: "Contactless Doorbell"
description: "Acoustic switch substitution! Entirely remove the physical mechanical push-button transmission vector, commanding explosive active buzzer arrays dynamically using HC-SR04 sonar proximity thresholds natively."
category: "Home Automation"
difficulty: "Beginner"