... การเรียนเบื้องต้น...เกี่ยวกับ Basic Stamp ...

 

SEROUT SO,BAUD,[ 128,"M",0,128,"S",40 ]
128 - ใช้เป็นค่าเริ่มต้น สำหรับการส่งข้อมูล

M [ 0...4] - ตั้งโหมดการทำงานของมอเตอร์(default=0)

โหมด 0 - ขับแบบฮาล์ฟสเต็ป
โหมด 1 - ขับแบบ 1 เฟส
โหมด 2 - ขับแบบ 2 เฟส
โหมด 3 - ขับแบบฮาล์ฟสเต็ป มีการชดเชยแบบควอเตอร์สเต็ป
โหมด 4 - ขับแบบฮาล์ฟสเต็ป มีการชดเชยแบบไมโครสเต็ป ( คำสั่ง S ไม่มีผลในโหมดนี้ )

S [ 0.. 255 ] - ตั้งค่าเวลาหน่วงของการทำงานแต่ละสเต็ปหรือใช้ ปรับความเร็วในโหมด 0 - 3


MAIN : L=120 : R=120

จากคำสั่ง MAIN สั่งให้หุ่นยนต์เดิน 120 สเต็ปทั้งซ้ายและขวา L คือสเต็ปมอเตอร์ข้างซ้าย R คือสเต็ปมอเตอร์ข้างขวา โดยสั่งให้เดินพร้อมๆกัน ผลลัพธ์ที่ได้คือ หุ่นยนต์เคลื่อนที่ไปข้างหน้า 120 สเต็ป

MAIN : L= -110 : R= -110

จากคำสั่ง MAIN สั่งให้หุ่นยนต์เดิน -110 สเต็ปทั้งซ้ายและขวา ผลลัพธ์ที่ได้คือ หุ่นยนต์เคลื่อนที่ไปข้างหลัง 110 สเต็ป

MAIN : L= 0 : R= 110

จากคำสั่ง MAIN สั่งให้หุ่นยนต์เดิน โดยสั่งให้ล้อข้างซ้ายหยุด [L = 0] เดินเฉพาะล้อข้างขวา ผลลัพธ์ที่ได้คือ หุ่นยนต์จะเลี้ยวไปทางซ้าย 90 องศา

MAIN : L=-110 : R= 0

จากคำสั่ง MAIN สั่งให้หุ่นยนต์เดิน โดยสั่งให้ล้อข้างขวาหยุด [R = 0] เดินเฉพาะล้อข้างซ้าย ผลลัพธ์ที่ได้คือ หุ่นยนต์จะเลี้ยวไปทางขวา 90 องศา

MAIN : L= 0 : R= 55

จากคำสั่ง MAIN สั่งให้หุ่นยนต์เดิน โดยสั่งให้ล้อข้างซ้ายหยุด [L = 0] เดินเฉพาะล้อข้างขวา ผลลัพธ์ที่ได้คือ หุ่นยนต์จะเลี้ยวไปทางซ้าย 45 องศา

MAIN : L= 55: R= 0

ผลลัพธ์ที่ได้ หุ่นยนต์จะเดินไปทิศทางใด ? <<..เฉลย..>>

แล้วถ้า L = -55 : R = 0 หุ่นยนต์จะเดินไปทิศทางใด ? <<..เฉลย ..>>


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

MAIN : L=120 : R=120
GOSUB DRV : PAUSE 1000

L=100 : R=100

GOSUB DRV : PAUSE 1000

จากคำสั่งข้างต้น หุ่นยนต์จะเดินเป็นระยะทาง 220 สเต็ป เป็นต้น

 

... TOP ...