🌟 เกี่ยวกับโปรเจกต์
ในโปรเจกต์นี้ เราจะมาควบคุมหุ่นยนต์ง่ายๆ ด้วยคำสั่งเสียงกัน โดยใช้บอร์ด XIAO nRF52840 Sense ที่มีไมโครโฟนในตัวเลย งานนี้เราจะใช้ไลบรารี micro_speech และคำสั่งที่ได้รับก็จะแสดงผลบนหน้าจอ [OLED](https://s.shopee.co.th/5fjbrJWyFb) ให้ดูกันชัดๆ
📷 รูปภาพประกอบ

🎯 ฟีเจอร์เด็ด
- รับคำสั่งเสียงได้ 4 แบบ
- โชว์คำสั่งที่ได้รับทั้งหมดบนหน้าจอ OLED
🧰 เริ่มต้นกันเลย
เราจะใช้ XIAO nRF52840 Sense เป็นสมองหลักของงาน แล้วก็เพิ่มหน้าจอ OLED เพื่อแสดงผลคำสั่งที่ได้รับมา แถมด้วยโมดูลขับมอเตอร์ DRV8833 Dual Motor Driver Module ที่จะช่วยให้เราควบคุม DC Motors ตามคำสั่งเสียงที่สั่งไปได้อย่างแม่นยำ
- XIAO nRF52840 Sense
- DRV8833 Dual Motor Driver
- Oled 0.96 SSD1306
🔌 วงจรและการต่อสาย
ต่อสายตามตารางและแผนภาพวงจรด้านล่างนี้เลยน้องๆ
- การต่อระหว่าง XIAO nRF52840 กับ DRV8833
อย่าลืมต่อขา STBY ไปที่ VCC ด้วยนะ
- แผนภาพวงจรทั้งหมด

⚙️ ติดตั้งไลบรารี
ก่อนอัปโหลดโค้ด ต้องติดตั้งไลบรารีที่จำเป็นใน [Arduino](https://s.shopee.co.th/7fUgFAWSki) IDE ก่อน ตามขั้นตอนนี้เลย:
- ไปที่ Sketch > Include Library > Manage Libraries
- ค้นหา Adafruit SSD1306
- ติดตั้งไลบรารีนั้น
- จากนั้นค้นหา "GFX" แล้วติดตั้งด้วยเหมือนกัน
👀 วิธีใช้งาน
หลังจากทำทุกขั้นตอนเสร็จ หุ่นยนต์จะเคลื่อนที่ตามคำสั่งเสียงที่ได้รับ และคำสั่งนั้นๆ ก็จะปรากฏบนหน้าจอให้เห็นด้วย หล่อเท่เลยงานนี้!
รายละเอียดเทคนิคเพิ่มเติม
Edge-AI Acoustic Control
โปรเจกต์ขั้นสูงนี้ใช้ประโยชน์จากไมโครโฟนแบบ PDM ในตัวและความสามารถ Neural Network ของ XIAO nRF52840 Sense เพื่อสร้างหุ่นยนต์ที่เชื่อฟังคำสั่งเสียง
- TinyML Speech Recognition: ใช้เฟรมเวิร์ค Edge Impulse เพื่อรัน Neural Network ที่ถูกปรับให้เหมาะสมบนโปรเซสเซอร์ ARM Cortex-M4F ของ nRF52840 หุ่นยนต์สามารถจดจำคำสำคัญเฉพาะ เช่น "Forward," "Stop," และ "Left" ได้โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต
- BLE Telemetry Pipeline: ส่งสตรีมข้อมูลความมั่นใจในการจดจำและระดับแบตเตอรี่ไปยังแอปบนสมาร์ทโฟนผ่าน Bluetooth-LE พร้อมกัน ทำให้มีแดชบอร์ดแสดง "กระบวนการคิด" ของ AI แบบเรียลไทม์
ประสิทธิภาพ
- Zero-Latency Response: ปรับให้การประมวลผล (inference) ใช้เวลาน้อยกว่า 100ms เพื่อให้หุ่นยนต์ตอบสนองต่อเสียงผู้ใช้ได้ทันใจและใช้งานง่ายสุดๆ