วันพุธที่ 13 กุมภาพันธ์ พ.ศ. 2551

วันพุธที่ 19 กันยายน พ.ศ. 2550

ไม่ชน


อาจารย์ให้สั่งให้หุ่นเดินไปไกลกำเเพงที่สุดเเต่ไม่ชน
โดยให้อุปกรณ์ตรวจจับเเสง
' {$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

สอบ


การสอบนี้อาจารย์ให้สั่งให้
หุ่นเดินหลบหลักดังรูป
' {$STAMP BS2sx}' {$PBASIC 2.5}PAUSE 2000
GOSUB T_Left : PAUSE 300GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Left : PAUSE 56GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwardb : PAUSE 50GOSUB Forward : PAUSE 850GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB T_Right : PAUSE 56GOSUB Forwarda : PAUSE 28GOSUB Forwardb : PAUSE 1800GOSUB S_Right : PAUSE 500 GOSUB Motor_OFF



T_Left: HIGH 13 : LOW 12 : LOW 15 : LOW 14: RETURNT_Right: LOW 13: LOW 12 : HIGH 15 : LOW 14: RETURNForward: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURNForwardb: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURNForwarda: HIGH 13: LOW 12 : HIGH 15 : LOW 14: RETURN
S_Right : LOW 13: HIGH 12: HIGH 15: LOW 14: RETURNMotor_Off: LOW 13: LOW 12 : LOW 15 : LOW 14

วันอาทิตย์ที่ 16 กันยายน พ.ศ. 2550

เขาวงกต

อาจารย์ให้สั่งให้หุ่นเดินเขาวงกตดังรูป
โดยอาจารย์ให้ใช้อุปกรณ์ตรวจจับการชน
หลัก

‘ {$STAMP BS2sx}
‘ {$PBASIC 2.5}
a var word
a=0

loop
gosub f
if ( in1=0)*or( in2=0)* do (ถ้าชนให้)
gosub bw. :pause 250
gosub tr. :pause 250 (ถอยหลังแล้วเลี้ยว)
a=a+1
loopuntil (a=2)
จากนั้นก็ให้ชนแล้วเลี้ยวซ้าย,ขวา,ขวา,ซ้าย ตามลำดับ
f: HIGH 13 : LOW 12 : HIGH 15 : LOW 14 :RETURN
r: LOW 13 : HIGH12 : HIGH 15 : LOW 14 : RETURN
l: HIGH 13 : LOW 12 : LOW 14 :HIGH15 : RETURN


*ค่าอุปกรณ์ตรวจจับการชน (ไม่ชน=1,ชน=0)

วันพฤหัสบดีที่ 9 สิงหาคม พ.ศ. 2550

โปรเเกรหุ่นยนต์ <1>


การโปรเเกรหุ่นยนต์ที่อาจารย์มอบหมายให้ทําในครั้งนี้ดูไม่คอยยากคือให้เดินตรงไปเเละวนกลับมา ซึ้งก็เเค่เขียนข้อมูลเหมือนทุกครั้ง







main gosub f. : pause.............
gosub t.l. : pause.............


f. : high ... low... high... low... <ตรงไป>

t.l. : low... high... high... low... <หมุน>

จากนั้นก็ใส่ตัวเลขว่า ตรงเเค่ไหนก็ไม่มีปัญหา จนใส่ว่าหมุนเเค่ไหน เเล้วไปทดลองดูจึงรู้ว่าหมุนเกิน

ครึ่งรอบทั้งกลุ่มเเก้กันไปเรือยๆ เกินบ้าง ขาดบ่าง นานเกือบครึ่งชม จนสําเร็จจึงรู้ว่ามันไม่ง่ายอย่างที่คิด