Electronics Design

  • แรงดันไฟฟ้าที่ใช้ใน Robo Maze  6V
  • สามารถวัดระยะทางในการเคลื่อนที่ของ Robo Maze ได้
  • สามารถตรวจสอบสีที่อยู่ตามกำแพงได้
  • สามารถสื่อสารกับ คอมพิวเตอร์ด้วยระบบไร้สาย
  • Robo Maze หลบสิ่งขีดขวาง และตรวจสอบเส้นทางได้
  • แสดงผลการทำงานของ Robo Maze 
  • Robo Maze  สามารถทำงานได้อัตโนมัติ

||| HOME |||


Maze Solving Robot



Objectives

Design

Implementation

Discussions

References

Discussions

ปัญหาที่พบในการทำ Robo Maze

  • กำลังมอเตอร์น้อยเกินไป ทำให้ไม่สามารถใช้ความเร็วรอบมอเตอร์ช่วงต่ำๆ เพราะไม่สามารถทำให้หุ่นยนต์เคลื่อนที่ได้ ถ้าใช้ความเร็วรอบที่สูงเกินไปทำให้ไม่สามารถควบคุมการวัดระยะการเคลื่อนที่ได้ทำให้ช่วงในการปรับเปลี่ยนความเร็วสั้นเกินไป
    • แก้ไขปัญหานี้โดยตั้งค่า อ้างอิงและทำการคำควณหาค่าความคลาดเคลื่อนและให้เคลื่อนกลับไป
  • เมื่อเราใช้ความเร็วรอบที่สูงจะทำให้เกิดการ Slip ของล้อได้ ทำให้การอ่าน Encoder ผิดเพี้ยนไป
    •  ใช้ Ultrasonic วัดระยะห่างของกำแพงและปรับเปลี่ยนความเร็วในการเคลื่อนที
  • พื้นสนามของเขาวงกตมีความลื่นมากเกินไปทำให้  Robo Maze เกิดข้อผิดพลาดในการเคลื่อนที่
    • ปรับแต่งล้อของ Robo Maze ลักษณะล้อให้สามารถเกาะพื้นสนามให้มากขึ้น  หรือเพิ่มแรงเสียดทานให้กับ Robo Maze
  • แหล่งจ่ายไฟไม่เพียงพอให้กับ Robo Maze ทำให้เกิดความคลาดเคลื่อนของเซ็นเซอร์ได้
    • เพิ่มแหล่งไฟให้กับ Robo Maze 

 ข้อเสนอแนะ

  • เลือกใช้มอเตอร์ที่มีกำลังและประสิทธิภาพมากกว่านี้ ควรทดสอบมอเตอร์ขณะที่มีโหลด และมีช่วงการปรับความเร็วกว้างพอสมควร

การต่อ OpenCM9.04-C ควบคุม Dynamixel XL 320
  • แนะนำให้ใช้แหล่งจ่าย 12 V ของเดิมใช้แหล่งจ่าย 6  V ไม่เพียงพอ ทำให้การอ่านค่าเซ็นเซอร์ผิด
  • ควรเลือกล้อที่มีหน้าสัมผัสกับพื้นสนามมากขึ้น  และวัสดุชิ้นงานควรเป็นยาง


Electronic Implementation

  วงจรไฟฟ้าที่ใช้ใน RoboMaze จะใช้ arduino  ทั้งหมด 2 ส่วนสามารถ แบ่งออกได้ดังนี้

          ส่วนของ arduino Master จะทำหน้าที่สื่อสารกันระหว่างคอมพิวเตอร์โดยใช้ Bluetooth  เป็นตัวกลางในการสื่อสาร และจะนำข้อูลเซ็นเซอร์จาก Ultrasonic ได้จาก Arduino Sensor โดยใช้ Uart Rx-Tx จะขับเคลื่อนมอเตอร์ได้ผ่าน Drive Motor boards Shields เพื่อควบคุมมอเตอร์ มี Encoder ในการวัดระยะทางในการเคลื่อนที่ของหุ่นยนต์




Arduino Master 


             ในส่วนต่อไปคือส่วนของ Arduino Sensor ใช้ในการรับข้อมูลต่างๆ ของเซ็นเซอร์เพื่อส่งไปยัง Arduino Master โดยจะตรวจจับ สิ่งกัดขวางที่อยู่ ด้านหน้า ด้านซ้าย ด้านขวา และตรวจจับสี จัดข้อมูลเป็นชุดและส่งไปยัง Arduino Master ผ่าน Uart Rx-Tx


Arduino Sensor

               อุปกรณ์ที่ใช้ในการตรวจจับสีของวัตถุของ Robo Maze นั้นจะใช้ Pixy CMUcam5  ในการตรวจจับสีของวัตถุและส่งข้อมูลไปยังบอรฺด arduino โดยเราสามารถสื่อสารได้หลายวิธีเช่น  UART Serial , SPI , I2C


                                                   ภาพการเชื่อมต่อ Pixy CMUcam5 กับ Arduino


รายละเอียดและข้อมูลของ Pixy CMUcam5 







ข้อมูลของขา Pin ต่างๆ ของ Pixy


วิธีการเชื่อมต่อ Pixy CMUcam5 กับ Arduino

  • ติดตั้วโปรแกรม PixyMon 

  • จากนั้นเชื่อมต่อ Pixy CMUcam5 เข้ากับคอมพิวเตอร์  และเปิดโปรแกรม PixyMonขึ้นมา
  • จากนนั้น เลือก File >> Configure…
    • Data out port (กำหนดพอร์ตสำหรับใช้ในการสื่อสาร) 
      •  output data. 0=SPI, 1=I2C, 2=UART, 3=analog/digital x, 4=analog/digital y
    • I2C address  
    • UART baudrate (ถ้าใช้ UART ตั้งค่าให้เหมือนกัน)
  • ตรวจสอบการเชื่อมต่อผ่าน arduino ได้โดยใช้ Pixy Arduino Library  ใน ตัวอย่างโค๊ตชื่อ Hello World ได้

ออกแบบภาคไฟฟ้าเรียบร้อยแล้ว


ติดตั้ง Bluetooth ใช้สื่อสารกับคอมพิวเตอร์



ติดตั้ง Pixy CMUcam5 



ติดตั้ง drive motor board shields กับ Arduino


ติดตั้ง Ultrasonic sensor



Mechanics Design

  1. หุ่นยนต์มีขนาดที่สามารถวิ่งใน Maze ได้
  2. หุ่นยนต์สามารถกลับตัวอยู่กับที่ได้
  3. หุ่นยนต์สามารถแก้ใขโปรแกรมการทำงานได้ง่าย
  4. หุ่นยนต์สื่อสารไร้สายกับ PC
  5. PC สามารถสั่งให้หุ่นยนต์ทำงาน (เดินหน้า, เลี้ยว, กลับหลัง) แล้วหุ่ยนต์ส่งข้อมูล Maze กลับไปให้ PC
  6. มีแหล่งพลังงานในตัวโดยไม่ต้องลากสายไฟ
  7. ตรวจวัดลักษณะของ Maze ได้
  8. ตรวจวัดสีของ Maze ได้