ที่ผมสร้าง Blog นี้ขึ้นมาเพราะว่าในวิชาการโปรเเกรมหุ่นยนต์นี้เพื่อที่จะบันทึกเหตุการณ์ต่างๆที่เกิดขึ้นในห้องเรียน เช่นการทำงานของหุ่นยนต์ คำสั่งที่เราป้อนให้หุ่นยนต์ ขั้นตอนการป้อนข้อมูลของหุ่นยนต์ โดยเฉพาะข้อผิดพลาดของหุ่นยนต์เเละข้อเเก้ไข้ที่เราทำ
เมื่อจบวิชานี้ผมอยากจะเขียนคำสั่งให้หุ่นยนต์เคลื่อนที่ได้อย่างสมบูรณ์เเบบ
วันพุธที่ 19 กันยายน พ.ศ. 2550
Censor สะท้อนเเสง
' {$STAMP BS2sx}
' {$PBASIC 2.5}
ADC VAR Word
R VAR Word
I VAR Word
X VAR Word
PAUSE 1000
HIGH 10
GOSUB pim
GOSUB RD_ADC
IF (ADC > 50) THEN
GOSUB Motor_OFF
ENDIF
RD_ADC: LOW 10 : PAUSE 2: HIGH 10
SEROUT 10,240, [1]
SERIN 10,240,250,Error, [ADC.BYTE0,ADC.BYTE1]
RETURN
Error: DEBUG "Error Reading",CR
RETURN
pim: HIGH 13: LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
Motor_OFF: LOW 13 : LOW 12 : LOW 15 : LOW 14 : RETURN
นี้คือโค้ดของหัวข้อเราน่ะครับ
เราจะมีการเเข่งกันให้หุ่นยนต์ของพวกเราวิ่งเข้าหากำเเพงเเล้วหยุด ใครใกล้ที่สุดก็เอาไปเรย 100%
' {$PBASIC 2.5}
ADC VAR Word
R VAR Word
I VAR Word
X VAR Word
PAUSE 1000
HIGH 10
GOSUB pim
GOSUB RD_ADC
IF (ADC > 50) THEN
GOSUB Motor_OFF
ENDIF
RD_ADC: LOW 10 : PAUSE 2: HIGH 10
SEROUT 10,240, [1]
SERIN 10,240,250,Error, [ADC.BYTE0,ADC.BYTE1]
RETURN
Error: DEBUG "Error Reading",CR
RETURN
pim: HIGH 13: LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
Motor_OFF: LOW 13 : LOW 12 : LOW 15 : LOW 14 : RETURN
นี้คือโค้ดของหัวข้อเราน่ะครับ
เราจะมีการเเข่งกันให้หุ่นยนต์ของพวกเราวิ่งเข้าหากำเเพงเเล้วหยุด ใครใกล้ที่สุดก็เอาไปเรย 100%
Touch Switch เขาวงกต

เราก็ได้มาถึงการใช้ Touch Switch
ด้านบนก็คือเขาวงกตของเรา
เราก็ได้เขียนโค้ดให้หุ่นยนต์ของเราเข้าไปในเขาวงกตเเล้วออกมาอย่างปลอดภัย
' {$STAMP BS2sx}
' {$PBASIC 2.5}
yo VAR Word
yo1 VAR Word
yo2 VAR Word
yo3 VAR Word
PAUSE 1000
main:
yo = 0
yo1 = 0
yo2 = 0
yo3 = 0
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo = yo + 1
ENDIF
LOOP UNTIL (yo = 2)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Left : PAUSE 300
yo1 = yo1 + 1
ENDIF
LOOP UNTIL (yo1 = 1)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo2 = yo2 + 1
ENDIF
LOOP UNTIL (yo2 = 1)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo3= yo3 + 1
ENDIF
LOOP UNTIL (yo3 = 1)
GOSUB Motor_Off
Forward: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
T_right: LOW 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
T_Left : HIGH 13: HIGH 12 : LOW 15 : HIGH 14 : RETURN
Motor_Off: LOW 13 :LOW 12 : LOW 15 :LOW 14
' {$PBASIC 2.5}
yo VAR Word
yo1 VAR Word
yo2 VAR Word
yo3 VAR Word
PAUSE 1000
main:
yo = 0
yo1 = 0
yo2 = 0
yo3 = 0
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo = yo + 1
ENDIF
LOOP UNTIL (yo = 2)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Left : PAUSE 300
yo1 = yo1 + 1
ENDIF
LOOP UNTIL (yo1 = 1)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo2 = yo2 + 1
ENDIF
LOOP UNTIL (yo2 = 1)
DO
GOSUB Forward
IF (IN1 = 0) OR (IN6 = 0) THEN
GOSUB Backward : PAUSE 400
GOSUB T_Right : PAUSE 300
yo3= yo3 + 1
ENDIF
LOOP UNTIL (yo3 = 1)
GOSUB Motor_Off
Forward: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
T_right: LOW 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
T_Left : HIGH 13: HIGH 12 : LOW 15 : HIGH 14 : RETURN
Motor_Off: LOW 13 :LOW 12 : LOW 15 :LOW 14
ส่วนนี้ก็คือโค้ดของเราน่ะ
ข้อสอบ

เอาล่ะถึงเวลาทำข้อสอบกันเเล้วเล่นไม่ได้เเล้วอิอิ
รูปเเม็พอยู่ด้านบนน่ะจ๊ะ
ส่วนโค้ดอยู่ด้านล่างครับ
' {$STAMP BS2sx}
' {$PBASIC 2.5}
PAUSE 2000
GOSUB T_Left : PAUSE 300
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwardb : PAUSE 50
GOSUB Forward : PAUSE 850
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwardb : PAUSE 1800
GOSUB S_Right : PAUSE 500
GOSUB Motor_OFF
T_Left: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
T_Right: LOW 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
S_Right : LOW 13: HIGH 12: HIGH 15: LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
' {$PBASIC 2.5}
PAUSE 2000
GOSUB T_Left : PAUSE 300
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Left : PAUSE 56
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwardb : PAUSE 50
GOSUB Forward : PAUSE 850
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwardb : PAUSE 1800
GOSUB S_Right : PAUSE 500
GOSUB Motor_OFF
T_Left: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
T_Right: LOW 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
S_Right : LOW 13: HIGH 12: HIGH 15: LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
เอาล่ะถึงเเม้มันจะคลาดเคลื่อนไปบ้างเเต่เราก็ได้ตั้ง 80% เเน่ะ
การโปรเเกรมหุ่นยนต์3
มาพบกานอีกครั้งกับกระผมพิสิฏฐ์กรน่ะจ๊ะ^^
เอาล่ะน้าคราวเนี้ยอ่าอาจารย์สั่งให้พวกเราใฃ้โค้ดจาก การโปรเเกรมหุ่นยนต์2 ที่ผมโพสต์ไป ทำ LOOP ขึ้นมา
เนื่องจากความปังยาน้อยของกระผมทำให้ใช้เวลากว่า 3 อาทิตย์ กว่าจาสำเร็จเเต่ไม่ใฃ่เเค่ปังยาน้อยเเต่เพราะงานที่ทับถมกันมาเรื่อยๆด้วยน่ะอย่าเข้าใจผิด
เเต่ในที่สุดผมก็ทำเสร็จเเล้วผมจะสาธิตให้ดูล่ะกาน
' {$STAMP BS2sx}' {$PBASIC 2.5}
yo VAR Word
GOSUB Forward : PAUSE 900
yo = 0
DO
GOSUB T_Right: PAUSE 56
GOSUB Fowarda : PAUSE 28
yo= yo + 1
LOOP UNTIL (yo = 86)
GOSUB Fowardb : 900
GOSUB Motor_OFF
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
T_Right: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
ก่อนอื่นก็ต้องประกาศก่อนว่าเราจาใช้อายายผมใช้ yo เพราะเป็นคนในกลุ่มของผมเเหะๆ
เเล้วเราก็ต้องบอกด้วยว่า yo เท่ากับ 0 หลังจากนั้นก็บอกว่า yo= yo + 1 เเล้วสุดท้ายก็บอกว่า LOOP กี่ครั้ง โดนใช้คำสั่ง
LOOP UNTIL (yo = ??)
จบไปเเล้วกับการทำ LOOP
เอาล่ะน้าคราวเนี้ยอ่าอาจารย์สั่งให้พวกเราใฃ้โค้ดจาก การโปรเเกรมหุ่นยนต์2 ที่ผมโพสต์ไป ทำ LOOP ขึ้นมา
เนื่องจากความปังยาน้อยของกระผมทำให้ใช้เวลากว่า 3 อาทิตย์ กว่าจาสำเร็จเเต่ไม่ใฃ่เเค่ปังยาน้อยเเต่เพราะงานที่ทับถมกันมาเรื่อยๆด้วยน่ะอย่าเข้าใจผิด
เเต่ในที่สุดผมก็ทำเสร็จเเล้วผมจะสาธิตให้ดูล่ะกาน
' {$STAMP BS2sx}' {$PBASIC 2.5}
yo VAR Word
GOSUB Forward : PAUSE 900
yo = 0
DO
GOSUB T_Right: PAUSE 56
GOSUB Fowarda : PAUSE 28
yo= yo + 1
LOOP UNTIL (yo = 86)
GOSUB Fowardb : 900
GOSUB Motor_OFF
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
T_Right: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
ก่อนอื่นก็ต้องประกาศก่อนว่าเราจาใช้อายายผมใช้ yo เพราะเป็นคนในกลุ่มของผมเเหะๆ
เเล้วเราก็ต้องบอกด้วยว่า yo เท่ากับ 0 หลังจากนั้นก็บอกว่า yo= yo + 1 เเล้วสุดท้ายก็บอกว่า LOOP กี่ครั้ง โดนใช้คำสั่ง
LOOP UNTIL (yo = ??)
จบไปเเล้วกับการทำ LOOP
การโปรเเกรมหุ่นยนต์2
กลับมาพบกันอีกเเร้วอาทิตย์ที่ 2 เเล้ว น้อ มาคราวนี้เราก็ได้สั่งให้หุ่นยนต์เดินเป็นรูปตัวยูกลับหัวน่ะค้าบบบบบ~~
นี้คือโค้ดที่กระผมภูมิใจนำเสนอก้าบบบบบบ
' {$STAMP BS2sx}
' {$PBASIC 2.5}
GOSUB Forward : PAUSE 900
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwardb : PAUSE 900
GOSUB Motor_Off
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
T_Right: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
เเหะๆยาวเหยียดซะขนาดนี้เราขอสรุปให้ฟังสั้นล่ะกานน่ะ ^^
ที่เราต้องเขียนยาวซะขนาดนี้เพื่อที่จะทำให้หุ่นยนต์ของเราเลี้ยวได้อย่างเต็มประสิทธิภาพพพพพ
ปัญหาของเราในคราวนี้ก็คงเป็นการทำให้มันเลี้ยวเป็นตัวยูให้สำมะเร็จอ่าน่ะนอกน้านก็ชิวชิว
นี้คือโค้ดที่กระผมภูมิใจนำเสนอก้าบบบบบบ
' {$STAMP BS2sx}
' {$PBASIC 2.5}
GOSUB Forward : PAUSE 900
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB T_Right : PAUSE 56
GOSUB Forwarda : PAUSE 28
GOSUB Forwardb : PAUSE 900
GOSUB Motor_Off
Forward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
T_Right: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURN
Forwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Forwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
Motor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14
เเหะๆยาวเหยียดซะขนาดนี้เราขอสรุปให้ฟังสั้นล่ะกานน่ะ ^^
ที่เราต้องเขียนยาวซะขนาดนี้เพื่อที่จะทำให้หุ่นยนต์ของเราเลี้ยวได้อย่างเต็มประสิทธิภาพพพพพ
ปัญหาของเราในคราวนี้ก็คงเป็นการทำให้มันเลี้ยวเป็นตัวยูให้สำมะเร็จอ่าน่ะนอกน้านก็ชิวชิว
โปรเเกรมหุ่นยนต์ 1
วันนี้ผมได้เขียนโปรเเกรมให้หุ่นยนต์ของเราเดินตรงไปหนึ่งช่องเเล้วถอยหลังกลับมาที่เดิมครับ
' {$STAMP BS2sx}'
{$PBASIC 2.5}
PAUSE 1000
Main: GOSUB Forward : PAUSE 1177
GOSUB Backward : PAUSE 1177
GOTO Main
Forward: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURNT_Left: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
T_Right: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
จากโค้ดด้านบนผมได้สั่งให้หุ่นยนต์เดินตรงไปหนึ่งช่องเเล้ว Pause ของมันก็คือ 1177 หลังจากที่ได้ปรับปรุงมาหลาบรอบ -*-
พอเรารู้เเล้วว่า Pause ของมันเท่าไร คราวนี้ก็หมูหมูเเว้วววว ^^ เราก็จัดการใส่ตัวคำสั่งเข้าไปให้หุ่นยนต์พร้อมกับโค้ดที่เราค้นหามาด้วยความภาคภูมิใจ
เเค่นี้ก็เรียบร้อย เอิ้กๆ
' {$STAMP BS2sx}'
{$PBASIC 2.5}
PAUSE 1000
Main: GOSUB Forward : PAUSE 1177
GOSUB Backward : PAUSE 1177
GOTO Main
Forward: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURNT_Left: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
Backward: HIGH 12 : LOW 13 : HIGH 14 : LOW 15 : RETURN
T_Right: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 : RETURN
จากโค้ดด้านบนผมได้สั่งให้หุ่นยนต์เดินตรงไปหนึ่งช่องเเล้ว Pause ของมันก็คือ 1177 หลังจากที่ได้ปรับปรุงมาหลาบรอบ -*-
พอเรารู้เเล้วว่า Pause ของมันเท่าไร คราวนี้ก็หมูหมูเเว้วววว ^^ เราก็จัดการใส่ตัวคำสั่งเข้าไปให้หุ่นยนต์พร้อมกับโค้ดที่เราค้นหามาด้วยความภาคภูมิใจ
เเค่นี้ก็เรียบร้อย เอิ้กๆ
สมัครสมาชิก:
ความคิดเห็น (Atom)