ภาพรวม
M-Vision Cam คือกล้องอัจฉริยะที่เขียนโปรแกรมควบคุมได้ โดยรวมเซนเซอร์จดจำภาพเข้ากับไมโครคอนโทรลเลอร์ไว้ในตัวเดียว สามารถประมวลผลภาพพื้นฐานแบบ Edge ได้ด้วยตัวเอง และใช้พลังงานต่ำ เขียนโปรแกรมด้วย OpenMV IDE และ MicroPython เพื่อสั่งงานได้หลายรูปแบบ เช่น การติดตามสี การตรวจจับวัตถุ การจดจำ AprilTag และการจำแนกภาพอย่างง่าย
M-Vision Cam รองรับการสื่อสารแบบ UART จึงแลกเปลี่ยนข้อมูลกับคอนโทรลเลอร์หลัก เช่น MATRIX Mini R4 ได้อย่างง่ายดาย และส่งผลการจดจำภาพแบบเรียลไทม์ ทำให้ Mini R4 สั่งงานตามข้อมูลภาพได้ เช่น ขับเคลื่อนเพื่อติดตามเป้าหมาย หรือตัดสินใจโดยอัตโนมัติ ด้วยพลังประมวลผลในตัวกล้อง จึงเป็นจุดเริ่มต้นที่ดีสำหรับการเรียนรู้ AI Edge Computing และงานด้านการมองเห็นของเครื่องจักร (Machine Vision) และถูกใช้อย่างแพร่หลายในการศึกษา โครงงานสายประดิษฐ์ และการแข่งขันหุ่นยนต์
โครงสร้างและส่วนประกอบสำคัญ

ส่วนประกอบหลัก
- เลนส์กล้อง (Camera Lens): อยู่ด้านหน้าของโมดูล ใช้จับภาพ
- ปุ่มรีเซ็ต (Reset Button): กดเพื่อเริ่มโปรแกรม MicroPython ที่กำลังทำงานบนกล้องใหม่
- RGB LED: LED หลายสีที่เขียนโปรแกรมได้ ใช้แสดงสถานะการทำงาน หรือใช้งานอื่นตามที่ผู้ใช้กำหนด
- LED ไฟเสริม (Fill Light LEDs): LED ที่อยู่สองข้างของเลนส์ ให้แสงสว่างเมื่อแสงโดยรอบน้อย
- ปุ่ม DFU (Device Firmware Upgrade): ใช้ร่วมกับพอร์ต USB-C เพื่อให้โมดูลเข้าสู่โหมดอัปเดตเฟิร์มแวร์
- พอร์ต USB-C: ใช้เชื่อมต่อกับคอมพิวเตอร์เพื่อเขียนโปรแกรม ส่งภาพ อัปเดตเฟิร์มแวร์ หรือจ่ายไฟให้โมดูล
- พอร์ต UART: สื่อสารแบบอนุกรม ใช้แลกเปลี่ยนข้อมูลกับ MATRIX Mini R4 หรือไมโครคอนโทรลเลอร์ตัวอื่น
คุณสมบัติ
M-Vision Cam คือโมดูลเลนส์อัจฉริยะที่ประมวลผลภาพได้ในตัว วิเคราะห์ภาพและส่งผลลัพธ์ได้โดยไม่ต้องพึ่งคอมพิวเตอร์ภายนอก คุณสมบัติหลักมีดังนี้
การประมวลผลภาพ
- M-Vision ทำงานจดจำภาพได้หลายรูปแบบ เช่น
- ตรวจจับและติดตามบล็อกสี: ค้นหาและติดตามสีที่กำหนด
- ตรวจจับเส้น: ระบุและติดตามเส้นหรือขอบบนพื้น
- จดจำรูปทรง: ตรวจจับรูปทรงทั่วไป เช่น วงกลมและสี่เหลี่ยม
- จดจำ AprilTag: อ่านรหัส ID ของแท็กภาพได้อย่างแม่นยำ
- ตรวจจับใบหน้าอย่างง่าย
- สแกน QR Code
สภาพแวดล้อมการเขียนโปรแกรม
- MicroPython: เขียนโปรแกรมกล้องด้วยไวยากรณ์ Python ที่กระชับและเรียนรู้ง่าย
- OpenMV IDE: เขียนโปรแกรม ดูภาพจากกล้องแบบพรีวิว และปรับค่าพารามิเตอร์แบบเรียลไทม์บนคอมพิวเตอร์
- การรันโปรแกรมหลัก: ตั้งชื่อโปรแกรมหลักว่า main.py แล้วโหลดลงกล้อง โปรแกรมจะทำงานอัตโนมัติหลังเปิดเครื่อง
การส่งข้อมูลและการสื่อสาร
- การสื่อสารแบบ UART: ส่งผลการจดจำ (เช่น พิกัดหรือ ID ของแท็ก) ไปยังบอร์ดควบคุมหลัก
- USB Virtual Serial Port (VCP): เมื่อเชื่อมต่อกับคอมพิวเตอร์ สามารถส่งข้อมูลหรือดีบักผ่าน USB ได้
การตั้งค่าภาพที่ปรับได้
รองรับการตั้งค่าการจับภาพอย่างยืดหยุ่น เพื่อให้เหมาะกับการใช้งานและสถานการณ์ที่หลากหลาย
- การสลับความละเอียด: รองรับ 320×240 (QVGA) และ 160×120 (QQVGA)
- การสลับรูปแบบพิกเซล: เลือกภาพสี (RGB565) หรือภาพขาวดำระดับเทาได้
- การพลิกภาพ: รองรับการกลับภาพแนวนอนและแนวตั้ง (ใช้ set_vflip() และ set_hmirror())
- การตั้งค่าพารามิเตอร์ด้วยตนเอง: เช่น ค่าแสง (Exposure) ค่าเกน (Gain) และไวต์บาลานซ์ (White Balance)
ทั้งนี้ขึ้นอยู่กับเซนเซอร์และเฟิร์มแวร์ที่รองรับ
อุปกรณ์เสริมบนบอร์ด
- ไฟแสดงสถานะ RGB: กำหนดสีและการกะพริบได้เอง ใช้แสดงสถานะโปรแกรมหรือช่วยดีบัก
- LED ไฟเสริม: ให้แสงสว่างในที่มืด ปรับความสว่างอัตโนมัติได้ด้วย fill_light.py
- ปุ่มรีเซ็ต: เริ่มโปรแกรมหลักใหม่
- ปุ่ม DFU: เข้าสู่โหมดอัปเดตเฟิร์มแวร์
ตัวอย่างการใช้งาน
การใช้งานพื้นฐาน: ติดตามและวิ่งตามอัตโนมัติ
- รถติดตามสี: ตรวจจับตำแหน่งของบล็อกสีที่ผู้ใช้กำหนด แล้วขับรถเข้าหาบล็อกนั้นโดยอัตโนมัติ
- หุ่นยนต์เดินตามเส้น: ระบุเส้นสีดำและขับรถไปตามเส้น
- การหลบสิ่งกีดขวาง: ใช้การตรวจจับบล็อกสีหรือขอบ เพื่อหาตำแหน่งของสิ่งกีดขวาง
การใช้งานขั้นสูง: การระบุ การโต้ตอบ และการจำแนก
- การคัดแยกสีอัตโนมัติ: ระบุวัตถุที่มีสีต่างกัน แล้วดันไปยังพื้นที่ที่แตกต่างกัน
- การระบุตำแหน่งแม่นยำด้วย AprilTag: ใช้แท็กภาพช่วยให้หุ่นยนต์นำทาง เข้าสถานี หรือทำภารกิจให้สำเร็จ
- เริ่มคำสั่งด้วย QR Code: อ่าน QR Code เพื่อทำงานเฉพาะอย่าง เช่น เล่นเสียงหรือขยับกลไก
- การโต้ตอบด้วยการตรวจจับใบหน้า: เปิดมอเตอร์ เสียง หรือข้อความบนหน้าจอเมื่อเจอใบหน้า
การใช้งานพิเศษ: ระบบโต้ตอบและ AI Edge Computing
- ติดตามและยิงเป้าหมายอัตโนมัติ: เมื่อกล้องตรวจพบเป้าหมาย จะสั่งกลไกเซอร์โวให้ติดตามและยิงเป้าหมาย
- อุปกรณ์สัตว์เลี้ยงแบบโต้ตอบ: ติดตามวัตถุที่กำหนด (เช่น ลูกบอลของเล่น) แล้วเปิดเครื่องให้อาหารหรือส่งเสียงอัตโนมัติ
- ส่วนเชื่อมต่อโมเดล AI (ขั้นสูง): M-Vision Cam รองรับ TensorFlow Lite for Microcontrollers ผู้ใช้ที่มีประสบการณ์สามารถนำโมเดลที่ฝึกเองไปใช้กับงานจำแนกหรือจดจำภาพได้
คุณลักษณะทางไฟฟ้าและการจัดวางขา (Pinout)
ข้อมูลจำเพาะฮาร์ดแวร์ของ M-Vision Cam

คำอธิบายศัพท์
1 MByte = 8 Mbit
*เซนเซอร์ภาพ: เซนเซอร์แต่ละรุ่นอาจแตกต่างกันในด้านประสิทธิภาพในที่แสงน้อย ช่วงไดนามิก (Dynamic Range)
และชนิดของชัตเตอร์ (โกลบอลชัตเตอร์ / โรลลิงชัตเตอร์) เป็นต้น
คำอธิบายขาและการเดินสาย
