รีวิว: ชุดหุ่นยนต์ BocoBot ขับเคลื่อนด้วยบอร์ดขยาย Robo Pico กับ Raspberry Pi Pico W

ชุดหุ่นยนต์  BocoBot เป็นชุดหุ่นยนต์เพื่อการเรียนรู้ที่ขับเคลื่อนด้วยบอร์ดขยาย Robo Pico กับ Raspberry Pi Pico W มีวิดีโอในการติดตั้งและโค้ดตัวอย่าง 5 ภารกิจ ไม่ว่าจะเป็นการเคลื่อนที่ไปทิศทางต่างๆ การเคลื่อนที่หลบหลีกสิ่งกีดขวางด้วยเซนเซอร์ Ultrasonic การเคลื่อนที่แบบตรวจจับแสง การเดินตามเส้น และการเคลื่อนที่ด้วย Web Browse ผ่านการเชื่อมต่อแบบ WiFi  และยังสามารถเพิ่มเติมโมดูลต่างๆเข้าไปได้อีกและสร้างสรรค์ผลงานได้ตามจินตนาการอีกด้วย

Robo Pico Robot Car BocoBot

อุปกรณ์ในชุด BocoBot

  • บอร์ดขยาย Robo Pico จำนวน 1 ชิ้น
  • แผงเซนเซอร์ Maker Line จำนวน 1 ชิ้น
  • แผ่นฐานพลาสติก จำนวน 2 แผ่น
  • TT มอเตอร์ 6 โวลต์ จำนวน 2 ชิ้น
  • ล้อหุ่นยนต์ จำนวน 2 ล้อ
  • ตัวยึดมอเตอร์ จำนวน 2 ชิ้น
  • เสารองพลาสติก จำนวน 4 ชิ้น
  • ล้อประคอง จำนวน 1 ชิ้น
  • เซนเซอร์อ่านค่าแสง จำนวน 1 ชิ้น
  • เซนเซอร์อัลตร้าโซนิกส์ HC-SR04 จำนวน 1 ชิ้น
  • สายแปลงสัญญาณ  Grove  เป็น Pin ตัวเมีย จำนวน 3 ชุด
  • ชุดน๊อตสกรู จำนวน 1 ชุด
  • ไขควงแฉกจำนวน 1 ชุด

Robo Pico Robot Car Part

บอร์ดขยาย Robo Pico  ออกแบบมาเพื่อใช้งานกับบอร์ด Raspberry Pi Pico และ Pico W มาพร้อมด้วยการเชื่อมต่อได้หลากหลาย สามารถเชื่อมต่อมอเตอร์ไฟฟ้ากระแสตรงได้ 2 ช่องพร้อมทั้งมีปุ่มทดสอบการทำงานมอเตอร์ได้อีกด้วย มีช่องต่อเซอร์โวมอเตอร์ได้ 4 ช่อง มีลำโพงเสียงแบบ Piezo พร้อมด้วยสวิตซ์เปิด-ปิดเสียงเมื่อไม่ต้องการใช้งาน มีปุ่มกดสวิตซ์รับสัญญาณ Input จำนวน  2 ปุ่ม มีไฟ Led แสดงสถานะพอร์ต GPIO ทั้ง 13 พอร์ต มีไฟ LED แบบ RGB จำนวน 2 ดวง มีช่องต่อสัญญาณแบบ Grove 4 pins จำนวน 7 ช่อง ซึ่งสามารถเชื่อมต่อขยายบอร์ด Raspberry Pi Pico และ Pico W ได้อย่างครบเครื่องเลยทีเดียว

Robo Pico Features Label

บอร์ดขยาย ROBO PICO มีขนาด 88 มม x 72 มม มีรูยึดมี  2 ขนาดเพื่อความสะดวกในการใช้งาน คือ

  1. ขนาดรู 3 มม ระยะของรู 82 มม x 58 มม
  2. ขนาดรู 4.8 มม ระยะของรู 80 มม x 48 มม

ROBO PICO dimension1

ส่วนประกอบและจุดเชื่อมต่อบอร์ดขยาย ROBO PICO

  • มีไฟแสดงสถานะ GPIO  13  pins
  • มีไฟ LED แบบ RGB 2 ดวง
  • มีปุ่มกด Reset และ ปุ่มกดรับค่า Input 2 ปุ่ม

Robo Pico Key Features 3

  • มีพอร์ตรับสัญญาณภายนอกเป็น Connector แบบ Grove 4 pins จำนวน 7 พอร์ต รับสัญญาณได้แบบ I2C, GPIO, UART, ANALOG
  • มีพอร์ตรับสัญญาณภายนอกเป็น Connector แบบ Maker Port 4 pins จำนวน 1 พอร์ต รองรับ QWIIC StemmaQT I2C
  • มี Pin ขยายขา แบบ Pin headers รองรับ Raspberry Pi Pico ทุกเวอร์ชั่น

Robo Pico Key Features 2

  • รับไฟได้ 3-6 โวลต์ สามารถใช้แบตเตอรี่แบบ Li-Po 1 Cell  ชาร์จไฟได้ด้วย USB หรือไฟจากภายนอกได้เช่น ถ่าน ​AA,AAA จำนวน 4 ก้อน
  • มีสวิตซ์เปิด-ปิด
  • สามารถขับมอเตอร์ไฟฟ้ากระแสตรงได้ 2 ช่อง พร้อมไฟแสดงสถานะการสั่งงาน
  • สามารถขับเซอร์โวมอเตอร์ได้ 4 ช่อง

Robo Pico Key Features

การรับไฟของบอร์ด Robo Pico

  1. รับไฟจาก USB 5 โวลต์ สามารถเสียบได้ที่ Pico/Pico W
  2. รับไฟจากแบตเตอรี่แบบ Li-Po 1 Cell 3.7 โวลต์
  3. รับไฟจากภายนอกได้เช่น ถ่าน ​AA, AAA (1.5 โวลต์)  4 ก้อน (6 โวลต์)

Robo Pico Power

Robo Pico ใช้งานร่วมกับบอร์ด Raspberry Pi Pico / Pico W ได้ทั้ง 2 เวอร์ชั่น และยังสามารถใช้ไฟเลี้ยงจะพอร์ต USB ของ Raspberry Pi Pico ในการทำงานได้อีกด้วย
Robo Pico Dimension 1 (dragged)Robo Pico Works With Raspberry Pi Pico and Pico w

การเชื่อมต่อมอเตอร์ไฟฟ้ากระแสตรงและเซอร์โวมอเตอร์

  • สามารถขับมอเตอร์ไฟฟ้ากระแสตรงได้ 2 ช่อง พร้อมไฟแสดงสถานะการสั่งงานหมุนทั้งไป-กลับ
  • สามารถขับเซอร์โวมอเตอร์ 6 โวลต์ ได้ 4 ช่องสัญญาณพร้อมกัน

Robo Pico Control DC Motors and Servos

วิดีโอการประกอบหุ่นยนต์ BocoBot

การติดตั้งโปรแกรม Thonny IDE

โดยการทดสอบกับบอร์ด Raspberry Pi Pico จะใช้  Thonny เป็น Python IDE ระดับสำหรับเริ่มต้น ซึ่งออกแบบมาเหมาะสำหรับการเรียนรู้และการสอนการเขียนโปรแกรม พัฒนาโดย Tartu University ในเอสโตเนีย สามารถโหลดและติดตั้งโปรแกรมได้ที่ Link นี้

Robo Pico Raspberry Pi Pico Thonny

เปิด Thonny ขึ้นมา จากนั้นคลิกเมนู “Run” เลือก “Configure interperter”

Robo Pico Raspberry Pi Pico Config Thonny IDE

ในตัวเลือก “Interperter”

  1. คลิกเลือก “CircuitPython(generic)”
  2. คลิก “OK” จากนั้นก็ทำการตั้งค่าเสร็จสิ้น

Robo Pico Raspberry Pi Pico Interpreter

การติดตั้งเฟิร์มแวร์ Circuit Python

Raspberry Pi Pico รองรับการเขียนภาษา C,  C++, MicroPython, CircuitPython

CircuitPython เป็นภาษาโปรแกรมที่ออกแบบมาเพื่อลดความซับซ้อนของการเรียนรู้ โดย CircuitPython เป็นวิธีที่ง่ายที่สุดในการเขียนโปรแกรมไมโครคอนโทรลเลอร์ สามารถดาวน์โหลด firmware .UF2 ได้ที่ Link นี้

Robo Pico Raspberry Pi Pico Firmware

การติดตั้งไลบรารี่

ในการเขียนโปรแกรมควบคุมอุปกรณ์โมดูลรวมถึงเซนเซอร์ต่างๆ ด้วย CircuitPython จะต้องใช้ไฟล์ไลบรารี่  สามารถดาวน์โหลดไฟล์ไลบรารี่ ของหุ่นยนต์ BocoBot ได้โดย Link นี้และทำการคัดลอกไฟล์ไปไว้ในไดเร็กทอรี “lib” ของไดร์ “CIRCUITPY”

BocoBot Robo Pico Library

วิดีโอการติดตั้งโปรแกรมและไลบรารี่

การเขียนโปรแกรมควบคุมมอเตอร์ให้หุ่นยนต์เคลื่อนที่

การทดสอบสั่งการมอเตอร์ทั้ง 2 ล้อ การเชื่อมต่อของบอร์ดขยาย Robo Pico มอเตอร์ซ้ายจะใช้ทั้งหมด 2 พอร์ต คือ GPIO8, GPIO9 มอเตอร์ขวาจะใช้ทั้งหมด 2 พอร์ต คือ GPIO10, GPIO11 โดยใช้ความถี่ PWM ทั้ง 2 มอเตอร์ ในการเคลื่อนที่เราสร้างฟังก์ชั่นให้ง่ายขึ้นโดยใช้คำสั่ง Robot_Movement(speedL, speedR)

การเขียนโปรแกรมหุ่นยนต์หลบหลีกสิ่งกีดขวาง

การทดสอบหุ่นยนต์หลบหลีกสิ่งกีดขวาง ใช้เซนเซอร์ Ultrasonic HCSR04 ในการตรวจจับวัตถุ โดยการเชื่อมต่อกับบอร์ดขยายใช้ Trigger Pin = GPIO16 , Echo Pin = GPIO17 โดยเซนเซอร์จะส่งค่าเป็น เซนติเมตร ในการทดสอบเขียนโปรแกรมสร้างเงื่อนไขว่าถ้าเซนเซอร์จับวัตถุได้น้อยกว่า 10 เซนติเมตรให้หุ่นยนต์เลี้ยวซ้ายเป็นเวลา 1 วินาที หากไม่เจอสิ่งกีดขวางให้หุ่นยนต์เดินหน้าไปเรื่อยๆ วนซ้ำไปเรื่อยๆ

การเขียนโปรแกรมหุ่นยนต์วิ่งตามแสงไฟ

การทดสอบหุ่นยนต์วิ่งตามแสงไฟ ด้วยเซนเซอร์อ่านค่าแสง (Light Sensor Module) การอ่านค่าแสงแบบ Analog โดยการเชื่อมต่อกับบอร์ดขยายใช้พอร์ต 3v3  = Vcc, GND , A0 = GPIO27 โดยเซนเซอร์จะส่งค่าอยู่ระหว่าง 0-30000 ในการทดสอบเขียนโปรแกรมสร้างเงื่อนไขว่าถ้าเซนเซอร์จับค่าความสว่างได้น้อยกว่า 15000 หุ่นยนต์จะเดินหน้า หากเซนเซอร์ไม่เจอความสว่างหุ่นยนต์จะเลี้ยวซ้ายไปเรื่อยๆ

การเขียนโปรแกรมหุ่นยนต์วิ่งตามเส้น

การทดสอบหุ่นยนต์วิ่งตามเส้น ด้วยเซนเซอร์จับเส้นแบบ 5 เซนเซอร์ (Maker Line) การอ่านค่าแสงแบบ Analog โดยการเชื่อมต่อกับบอร์ดขยายใช้พอร์ต 3v3  = Vcc,  GND , A0 = GPIO26 โดยเซนเซอร์จะส่งค่าแรงดันอยู่ระหว่าง 0V – 3.3V ในการทดสอบเขียนโปรแกรมสร้างเงื่อนไขว่าถ้าเซนเซอร์ตรวจจับเส้นได้ในกรณีต่างๆให้หุ่นยนต์เคลื่อนที่ไปตามเส้นด้วยความเร็วที่แตกต่างกัน

การเขียนโปรแกรมควบคุมหุ่นยนต์ผ่านการสื่อสารแบบ WiFi

การทดสอบหุ่นยนต์ควบคุมด้วย Web Browser เป็นการสื่อสารผ่าน WiFi โดยใช้บอร์ด Raspberry Pi Pico ร่วมกับบอร์ดขยาย Robo Pico มีการเขียนโปรแกรมปุ่มคำสั่งด้วยภาษา HTML ลงไปในโค้ด และมีการเชื่อมต่อผ่าน IP Adrress ของ Pi Pico เชื่อมต่อกับ SmartPhone หรือ คอมพิวเตอร์ผ่าน Web Browser ได้  โดยโค้ดตัวอย่างจะเป็นการใช้คำสั่ง เดินหน้า ถอย หลัง เลี้ยวซ้าย เลี้ยวขวา และ หยุดหุ่นยนต์ ซึ่งเป็นคำสั่งพื้นฐานในการเคลื่อนที่

Robo Pico Control Your Robot Car Through WiFi

วิดีโอการทดสอบ

สรุป

BocoBot เป็นชุดหุ่นยนต์เพื่อการเรียนรู้ที่ขับเคลื่อนด้วยบอร์ดขยาย Robo Pico กับ Raspberry Pi Pico W สามารถสร้างโปรเจคพื้นฐานได้ถึง 5 ภารกิจ ไม่ว่าจะเป็นการเคลื่อนที่ไปทิศทางต่างๆ การเคลื่อนที่หลบหลีกสิ่งกีดขวางด้วยเซนเซอร์ Ultrasonic การเคลื่อนที่แบบตรวจจับแสง การเดินตามเส้น และการเคลื่อนที่ด้วย Web Browser ด้วยการเชื่อมต่อแบบ WiFi และยังสามารถเพิ่มเติมโมดูลต่างๆเข้าไปได้อีกและสร้างสรรค์ผลงานได้ตามจินตนาการ ด้วยบอร์ดขยาย Robo Pico  ออกแบบมาเพื่อใช้งานกับบอร์ด Raspberry Pi Pico และ Pico W มาพร้อมด้วยการเชื่อมต่อได้หลากหลาย สามารถเชื่อมต่อมอเตอร์ไฟฟ้ากระแสตรงได้ 2 ช่องพร้อมทั้งมีปุ่มทดสอบการทำงานมอเตอร์ได้อีกด้วย มีช่องต่อเซอร์โวมอเตอร์ได้ 4 ช่อง มีลำโพงเสียงแบบ Piezo พร้อมด้วยสวิตซ์เปิด-ปิดเสียงเมื่อไม่ต้องการใช้งาน มีปุ่มกดสวิตซ์รับสัญญาณ Input จำนวน  2 ปุ่ม มีไฟ Led แสดงสถานะพอร์ต GPIO ทั้ง 13 พอร์ต มีไฟ LED แบบ RGB จำนวน 2 ดวง มีช่องต่อสัญญาณแบบ Grove 4 pins จำนวน 7 ช่อง ซึ่งสามารถเชื่อมต่อขยายบอร์ด Raspberry Pi Pico และ Pico W ได้อย่างครบเครื่องเลยทีเดียว เหมาะผู้ที่สนใจการเรียนรู้ที่จะสร้างหุ่นยนต์เริ่มต้นเป็นของตนเอง อีกทั้งยังสามารถนำไปใช้ในการเรียนการสอนในห้องเรียนได้อีกด้วย

ผมต้องขอขอบคุณบริษัท Cytron ที่ส่งชุดหุ่นยนต์ BocoBot มาทดสอบ ตอนนี้ชุดหุ่นยนต์ยังไม่มีขายในประเทศไทยสามารถหาซื้อบอร์ด Robo Pico ในราคาเริ่มต้นที่  499 บาท, Robo Pico + Raspberry Pi Pico ราคา 753 บาท,  Robo Pico + Raspberry Pi Pico W ราคา 863 บาท ที่ร้านค้าออนไลน์ Cytron Thailand

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
โฆษณา