วุฒิชัย แม้นรัมย์

การควบคุมหุ่นยนต์ IPST เดินหน้าและถอยหลัง

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

คำสั่งที่นักเรียนต้องจำให้ได้

“เลข 1 หมายความว่า เป็นมอเตอร์ตัวที่ 1 ขับด้วยกำลังไฟ 50 ค่ากำลังไฟยิ่งมีค่ามาก มอเตอร์ก็จะทำงานเร็วมาก ขับได้สูงสุดที่ค่า 100”

“เลข 2 หมายความว่า เป็นมอเตอร์ตัวที่ 2 ขับด้วยกำลังไฟ 50 แต่มี – อยู่ข้างหน้านั้นหมายความว่ามอเตอร์จะหมุนกลับทิศ ค่ากำลังไฟยิ่งมีค่าติดลบมาก มอเตอร์ก็จะทำงานเร็วมาก ขับได้สูงสุดที่ค่า -100”

“หมายความว่าขับมอเตอร์นาน 1 วินาที ข้อควรจำคือ 1000 จะเท่ากับ 1 วินาที”

“หมายความว่าสั่งให้มอเตอร์ทั้ง 2 ข้างหยุดทำงานพร้อมกัน” เราสามารถสั่งให้มันหยุดข้างใดก็ข้างหนึ่งก็ได้นะครับ ตัวอย่างเช่น

– motor_stop(1) ; หมายความว่าสั่งให้มอเตอร์ตัวที่ 1 หยุดการทำงาน

– motor_stop(2) ; หมายความว่าสั่งให้มอเตอร์ตัวที่ 2 หยุดการทำงาน

ตัวอย่างโค้ดการขับมอเตอร์เดินหน้าและถอยหลัง

 

#include <ipst.h>
void setup()
{
  setTextSize(3);     
  glcd (0,0,"ok"); // จอ lcd ให้แสดงข้อความว่า ok
  }
void loop()
{
  if (sw_OK()) // ถ้ากดปุ่ม ok คำสั่งจะทำงาน
  {
  motor(1,50);  // ขับมอเตอร์ข้างที่ 1 ด้วยกำลังไฟ 50 (มากสุดคือ 100) 
  motor(2,50);  // ขับมอเตอร์ข้างที่ 2 ด้วยกำลังไฟ 50 (มากสุดคือ 100)
  delay(5000);  // เวลา 1000 เท่ากับ 1 วินาที (มอเตอร์ทำงาน 5 วินาที)
  motor(1,-50); // ขับมอเตอร์ถอยหลังข้างที่ 1 ด้วยกำลังไฟ -50 (มากสุดคือ -100)
  motor(2,-50); // ขับมอเตอร์ถอยหลังข้างที่ 2 ด้วยกำลังไฟ -50 (มากสุดคือ -100)
  delay(5000);  // เวลา 1000 เท่ากับ 1 วินาที (มอเตอร์ทำงาน 5 วินาที)
  motor_stop(ALL); // สั่งให้มอเตอร์ทั้งสองหยุดทำงานพร้อมกัน
  }
}

กดย้อนกลับเพื่อเข้าไปยังหน้าหลักของวิชาการเขียนโปรแกรมควบคุมหุ่นยนต์ IPST –>click