กลับไปหน้ารวมไฟล์
coin-detector-amount-counter-arduino.md

การขัดจังหวะด้วยแสงความเร็วสูง: เครื่องคัดแยกเหรียญ

หากคุณหยอดเหรียญลงในช่องพลาสติก เหรียญจะเคลื่อนที่เร็วอย่างไม่น่าเชื่อ เครื่องตรวจจับเหรียญและเครื่องนับจำนวนเงิน นี้ละทิ้งสวิตช์เชิงกล (ซึ่งอาจทำงานผิดพลาดหรือติดขัด) โดยสิ้นเชิง และพึ่งพา IR Obstacle Avoidance Transceivers ที่ทำหน้าที่เป็นสายตรวจจับที่มองไม่เห็น คณิตศาสตร์ของ Arduino จะต้องติดตามว่าสายตรวจจับเฉพาะเส้นใดในชุดประกอบแนวตั้งขาดออก โดยเพิ่มจำนวนเงินเฉพาะลงในเมทริกซ์ที่สะสมไว้ ซึ่งจะแสดงผลแบบไดนามิกออกไปยังจอแสดงผล I2C LCD ขนาดใหญ่!

button_led_basic_interaction_1772681969235.png

การหยอดเหรียญผ่านโฟโตไดโอดหลายชุด (ระบบ "ประตู")

เขาวงกตที่พิมพ์ด้วย 3D หรือทำจากกระดาษแข็งจะบังคับเหรียญ quarters, dimes และ nickels ให้แยกออกเป็นช่องแนวตั้งที่แตกต่างกันโดยสิ้นเชิง โดยอิงจากขนาดเส้นผ่านศูนย์กลางทางกายภาพของเหรียญ!

  1. Arduino ไม่ได้คัดแยก แรงโน้มถ่วงและรูปทรง 3D คือสิ่งที่คัดแยก!
  2. Shaft 1 (Quarters) มี IR_Sensor_A
  3. Shaft 2 (Nickels) มี IR_Sensor_B
  4. การกระทำแบบ Falling: เมื่อเหรียญ quarter ตกลงผ่าน Shaft 1 มันจะปิดกั้นแสง IR ทางกายภาพเป็นเวลาเสี้ยววินาที (ขา 5V จะลดลงเป็น LOW)

การกำจัดปัญหาการลงทะเบียนเหรียญหลายครั้งซ้อนกัน

เนื่องจากเหรียญหมุนขณะตกลงมา อาจทำให้โฟโตไดโอดที่ไวต่อแสงทำงานโดยไม่ตั้งใจถึงสามครั้งในการตกเพียง 20 มิลลิวินาที ทำให้เหรียญ $0.25 หนึ่งเหรียญกลายเป็น $0.75 ไปโดยปริยาย!

  • กับดักในการทำงาน: คุณต้องใช้ algorithm Lockout Cooldown ที่มี Logic ซับซ้อน!
if (digitalRead(QuarterIRPin) == LOW && (millis() - lastQuarterTime > 200)) { 
  // มันจะลงทะเบียนก็ต่อเมื่อเหรียญ quarter สุดท้ายผ่านไปแล้วอย่างน้อย 200 มิลลิวินาที!
  totalBank += 0.25; 
  lastQuarterTime = millis(); // สำคัญอย่างยิ่ง! รีเซ็ตตัวล็อกเวลาทางกายภาพ!

  lcd.setCursor(0, 0);
  lcd.print("Total Bank: $"); 
  lcd.print(totalBank); // แสดงผลการคำนวณจำนวนเต็มใหม่แบบไดนามิก!
}
  • ด้วยการใช้ if-statements แบบต่อเนื่องที่แมปเฉพาะกับประตู IR sensor 3 ตัวที่แยกจากกัน ทำให้ Uno ทำงานเป็นกลไกการคัดแยกที่ไร้ที่ติและรวดเร็วอย่างไม่น่าเชื่อเหมือนในคาสิโน!

สถาปัตยกรรมฮาร์ดแวร์ทางการเงิน

  • Arduino Uno/Nano (ความเร็วในการประมวลผลมาตรฐานเพียงพออย่างสมบูรณ์)
  • TCRT5000 หรือ IR Obstacle Avoidance Modules ทั่วไปสามตัว (จัดวางตำแหน่งให้ตรงกันข้ามกับรางเหรียญที่ตกลงมาอย่างเคร่งครัด)
  • จอแสดงผล I2C ขนาด 16x2 มาตรฐาน (สำหรับแสดงผลข้อมูลทางการเงินแบบเรียลไทม์)
  • กลไกการคัดแยกเหรียญที่ผลิตด้วย CNC หรือพิมพ์ด้วย 3D อย่างแม่นยำ (โค้ด Uno จะไม่มีประโยชน์โดยสิ้นเชิง หากกลไกการเลื่อนไม่สามารถปรับขนาดเหรียญได้อย่างถูกต้องตามโครงสร้าง ก่อนที่เหรียญจะถึงจุดตรวจจับด้วยแสง!)

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

title: "Coin Detector and Amount Counter"
description: "High-speed kinematic sensor arrays! Execute flawless mechanical hardware debouncing logic, tracking explicitly fast-falling physical metallic disks cutting dual-IR optical gates to sort mass and velocity natively."
category: "Tools & Equipment"
difficulty: "Intermediate"