ระบบล็อคประตูด้วยบัตร RFID สองใบ และคุมผ่าน Bluetooth (เฟี้ยวๆ เลยน้อง)
ล็อคกุญแจแบบเดิมๆ มันกระจอกไปน้อง ใครก็งัดได้ มาลองเจอ RFID Two-Card Door Lock หน่อยเป็นไง ระบบนี้มี Digital Fail-safe ป้องกันไว้อีกชั้น โปรเจกต์นี้เราจะใช้ Arduino Mega 2560 เป็นสมองกลคุมระบบความปลอดภัยแบบ Dual-input: มีทั้ง MFRC522 RFID Reader ไว้แตะบัตรหน้างาน และ HC-05 Bluetooth Module ไว้สั่งเปิดผ่านสมองกลบนมือถือแบบหล่อๆ ถ้าไม่มี Digital "Keys" ที่ถูกต้อง ก็อย่าหวังว่าจะดึงสลักประตูสุดโหดของเราออกได้ จัดไปวัยรุ่น!
ระบบเช็คบัตรสองใบ (Two-Card Authentication Logic)
ฟีเจอร์ "บัตรสองใบ" นี่แหละทีเด็ด เหมือนตู้เซฟธนาคารเลยน้อง:
- Sequential Scans: เราเขียน Code สั่งให้ Arduino รอรับการแตะบัตร 2 ใบที่ "ต่างกัน" ภายในเวลาที่กำหนด (เช่น 5 วินาที) ระบบ "Dual-Key" แบบนี้ช่วยให้มั่นใจว่า ถ้าทำบัตรหายไปใบเดียว บ้านก็ยังปลอดภัย ไม่โดนใครแอบเนียนเข้าแน่นอน
- Whitelist Management: โปรเจกต์นี้ใช้ Library MFRC522.h มาอ่านค่า UID (รหัสเฉพาะตัว) ของ RFID Tag แต่ละใบ แล้วเอาไปเทียบกับ Whitelist ที่เราเขียนดักไว้ใน Code หรือเก็บลง EEPROM ถ้าใบแรกผ่าน Arduino จะขึ้นสถานะ "Partial Success" เพื่อรอเช็คใบที่สองต่อ
- Visual Indication: มี LED (Red/Green) หรือ Buzzer ไว้ส่งเสียงเตือนตอนแตะบัตร จะได้รู้ว่าผ่านหรือไม่ผ่าน ไม่ต้องยืนงงหน้าประตูนะน้อง
ภาคกำลังขับเคลื่อน: L298N และ DC Motors
งานนี้เราไม่ใช้ Solenoid กิ๊กก๊อกนะพี่บอกเลย เราใช้ DC Motor แรงบิดสูง ขับด้วย Module L298N Dual H-Bridge:
- Reversible Direction: เจ้า L298N มันยอมให้ Arduino สั่งกลับทางหมุนมอเตอร์ได้ จะสั่ง Unlock (เปิด) หรือ Lock (ปิด) ก็จัดไป
- Current Isolation: มอเตอร์พวกนี้มันตัวสร้างสัญญาณรบกวน (Noise) และไฟย้อนกลับ (Back-EMF) เลยนะน้อง ตัว L298N จะช่วยแยกภาคกำลังออกมา ไม่ให้ Arduino Mega สุดรักของเราต้องรับภาระกระแสสูงๆ จนบอร์ดพัง ห้ามช็อตนะตัวนี้!
- Variable Torque: เราใช้ PWM (Pulse Width Modulation) คุมความเร็วมอเตอร์ได้ จะให้ประตูปิดนิ่มๆ หรือปิดแบบแน่นปึ้กก็จูนเอาตามใจชอบเลย
สั่งงานไร้สาย: The Bluetooth Bridge
เพื่อความหล่อเท่ เรามี HC-05 Bluetooth Module ไว้เป็นทางลัด (Override) แค่ใช้แอป "Serial Bluetooth Terminal" ในมือถือ ส่งรหัสลับ (เช่น "OPEN_SESAME") มาหา Arduino มันก็จะสั่ง L298N ให้ปลดล็อคทันที เข้าบ้านได้แบบไม่ต้องพกบัตรให้หนักกระเป๋า สู้งานนะน้อง!
การต่อสายสำหรับ Mega 2560
ที่เราเลือกใช้ Arduino Mega เพราะ Pin มันเยอะสะใจ โดยเฉพาะพวก SPI และ Serial Pins:
- SPI Pins: ตัว MFRC522 ต้องใช้ Pin 50 (MISO), 51 (MOSI), 52 (SCK), และ 53 (SDA/SS) เสียบให้ถูกรูล่ะ
- Serial1: ตัว HC-05 ให้ต่อเข้ากับ Hardware Serial ช่องที่ 2 (TX1/RX1) ของ Mega ข้อดีคือมันจะไม่ไปตีกับช่อง USB เวลาเราต่อคอมฯ Debug งาน ทำให้ระบบเสถียรกว่าเยอะ
schmatics

* -----------------------------------------------------------------------------------------
* MFRC522 [Arduino](https://s.shopee.co.th/7fUgFAWSki) Arduino Arduino Arduino Arduino
* Reader/PCD Uno/101 Mega Nano v3 Leonardo/Micro Pro Micro
* Signal Pin Pin Pin Pin Pin Pin
* -----------------------------------------------------------------------------------------
* RST/Reset RST 9 5 D9 RESET/ICSP-5 RST
* SPI SS SDA(SS) 10 53 D10 10 10
* SPI MOSI MOSI 11 / ICSP-4 51 D11 ICSP-4 16
* SPI MISO MISO 12 / ICSP-1 50 D12 ICSP-1 14
* SPI SCK SCK 13 / ICSP-3 52 D13 ICSP-3 15
*/