[ZX-SERVO16i] with Hex Crawler

ตัวอย่างการนำบอร์ด ZX-SERVO16i เพื่อไปใช้งานควบคุมเซอร์โวมอเตอร์หลาย ๆ ตัว ทั้งในโหมดการเคลื่อนที่ปกติ และ RAMP (การค่อย ๆ เคลื่อนที่ไปยังตำแหน่งเป้าหมาย)

Hex Crawler

Hex Crawler

หุ่นยนต์เคลื่อนที่ 6 ขาตัวนี้ ต้องบอกว่าเป็นการขุดออกมาจากกรุ เป็นของบริษัท Pallalax ปัจจุบันเลิกจำหน่ายไปแล้ว ใช้เซอร์โวมอเตอร์ทั้งหมด 12 ตัว แต่ละขาจะมีเซอร์โวมอเตอร์ทำหน้าที่ ก้าว และ ยก

Servo For Hex Craler

แบตเตอรี่ที่ใช้

  เนื่องจากเซอร์โวมอเตอร์มาตรฐานส่วนใหญ่ ใช้แรงดันอยู่ในช่วงประมาณ 6V ในที่นี้จึงเลือกใช้แบตลิโพขนาด 7.4V ส่วนกระแสก็ขึ้นอยู่กับว่าต้องการใช้งานได้นานแค่ไหน เอาเล็ก ๆ หน่อย 1,100 mAh ก็เพียงพอ

Batt for Hex Crawler

รูปแบบการเคลื่อนที่ ของ Hex Crawler

  รูปแบบการเคลื่อนที่ จะใช้วิธีการก้าวทีละขา ส่วนขาที่เหลือค่อย ๆ พาตัวหุ่นยนต์ขยับไปด้านหน้าอย่างช้า ๆ ด้วยคำสั่ง RAMP

ตัวอย่างโปรแกรม

 

การทำงานของโปรแกรม

     1. เพื่อให้สะดวก จึงกำหนดตำแหน่งขาของเซอร์โวมอเตอร์ ให้ตรงกับความเข้าใจ คือ M1-M6 คือตำแหน่งเซอร์โวที่ใช้ก้าวขา U1-U6 คือตำแหน่งเซอร์โวมอเตอร์ที่ใช้ยกขา  โดยใช้คำสั่ง define

     2. ตรวจสอบระยะการก้าวขา และการยก โดยเก็บเป็นค่าดังนี้

          mCCW คือ ค่าการการก้าวไปทวนเข็มมากที่สุด

          mCW คือ ค่าการการก้าวไปตามเข็มมากที่สุด

          uUp คือ ค่าของการยกขาสูงสุด

          uDown คือค่าการเอาขาลงต่ำสุด

     3. กำหนดค่าเริ่มต้นในการติดต่อกับเซอร์โวมอเตอร์ โดยเรียกผ่านฟังก์ชั่น ZX-SERVO_Init()

     4. กำหนดให้เซอร์โวทั้งหมดอยู่ที่ท่าเตรียม เมื่อเรียบร้อยแสดงข้อความ “Servo Init”

     5.วนลูปยกขาขึ้น ก้าวขาทีละขาไปด้านหน้า  จากนั้นเมื่อวางขาลงให้เลื่อนช้า ๆ ไปด้านหลัง

ผลลัพธ์

Facebook Comments