ตัวอย่างการเขียนโปรแกรมอย่างง่าย
|
|
'{$STAMP BS2sx} '{$PBASIC 2.5} SO CON 14 BUSY VAR IN15 BAUD CON 16624 L_DIFFUSE CON 0 R_DIFFUSE CON 13 L_VALUE VAR WORD R_VALUE VAR WORD DEVIATION CON 500 DECISION CON 220 ERROR VAR WORD
I VAR BYTE L VAR BYTE R VAR BYTE
MAIN: HIGH L_DIFFUSE
REDIRECT_L: L=0:R=1
DRV: SEROUT SO,BAUD,[L,R] WAIT_BUSY: IF BUSY=1 THEN WAIT_BUSY
CALIBRATE: HIGH L_DIFFUSE
|
|
//***************************************************** // หลักการทำงานของโปรแกรมหุ่นยนต์เดินตามเส้น //***************************************************** โปรแกรมหุ่นยนต์เดินตามเส้นจะมีอุปกรณ์ที่สำคัญคือ diffuse หลักการทำงานของ diffuse คือการส่องแสงสีแดงออกไปแล้วรอให้แสงสะท้อนกลับมา ค่าที่แสงสะท้อนกลับมานั้นสีขาว กับสีดำจะไม่เท่ากัน เพราะแต่ละสีมีการดูดซับและสะท้อนแสงไม่เท่ากัน สีขาวจะมีค่าทอ่านได้ ต่ำกว่า สีดำ เราจะสั่งให้เดินตามเส้นสีขาวพื้นสีดำ (โดยติดตัว diffuse คร่่อมเส้น) ก็คือถ้าค่าที่สะท้อนกลับมามีค่าน้อยกว่าค่า dicition ที่กำหนดไว้ ให้หุ่นยนต์เลี้ยวหาเส้น กล่าวคือถ้า diffuse ด้านขวารับค่าแสงสะท้อนมาน้อยกว่าค่าที่กำหนด ให้หุ่นยนต์เลี้ยวซ้ายเพื่อกลับเข้าหาเส้น ในทางกลับกัน ถ้าdiffuse ด้านซ้ายรับค่าแสงสะท้อนมาน้อยกว่าค่าที่กำหนด ให้หุ่นยนต์เลี้ยวขวาเพื่อกลับเข้าหาเส้น หลักการติด diffuse สามารถติดได้สองแบบคือ แบบคร่อมเส้น (สามารถเช็คเส้นที่ตัดขวางกันหรือทางแยกได้) และติดในเส้น สามารถดูรายละเอียดได้ในหัวข้อ Video Room |