23
แแแแแแแแแแแแ GoGo Board แแแแแแแแแ แแ.แแแแแแแ แแแแแแแแแแแแแแแแแแ แแแแแแแแแแแแแแแแแแแแแแแแแแ แแแแแแแแแแแแแแแแแ แแแแแแแแแแแแแแแแแแแแ

มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

แนะนำ�ก�รใช GoGo Board เบองตนดร.อ�นนท สหพทกษเกยรต

ภ�ควช�วศวกรรมคอมพวเตอร คณะวศวกรรมศ�สตรมห�วทย�ลยเชยงใหม

Page 2: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

สวนประกอบของ GoGo Board

อปกรณทจำ�เปน

แหลงจายไฟGoGo Board ใชไฟไดจ�กสองแหลงคอ ถ�น AA จำ�นวน 6 กอน ซงจะบรรจอยในลงถ�นด�นใต หรอจะเสยบไฟจ�กหมอแปลงไฟกระแสตรงทมแรงดนระหว�ง 9-

12 โวลท

การตอพวงกบคอมพวเตอรGoGo Board ตดตอกบคอมพวเตอรผ�นท�งพอรทอนกรม ถ�คอมพวเตอรมพอรทดงกล�วอย กส�ม�รถนำ�ส�ยอนกรม (บ�งทรจกกนในชอ ส�ย Serial หรอ DB-9)

ตอเข�กบ GoGo Board ไดโดยตรง แตเครองคอมพวเตอรพกพ�

-2-

Page 3: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

สวนใหญจะไมมพอรทน ดงนนจะตองใชอปกรณทเรยกว� USB to

Serial Adapter เพอเสยบส�ยเข�กบพอรท USB ของคอมพวเตอรแทน

เรมตนใชง�น GoGo Board

โปรแกรม GoGo Monitor

โปรแกรมนเปนโปรแกรมหลกทใชในก�รตรวจสอบก�รทำ�ง�นของ GoGo Board โดยส�ม�รถด�วนโหลดโปรแกรมนไดฟรท http://www.gogoboard.org เมอตดตงและใชง�นโปรแกรมจะพบหน�ต�งดงรปตอไปน

ก�รทจะเรมใชง�น GoGo Board ไดนนเร�จะตองทร�บหม�ยเลขพอรทสอส�ร (COM port)

ทใชกอน แลวจงกดปม เชอมตอ หม�ยเลขนจะมค�ต�งกนไป ห�กไมทร�บว�จะใช“ ”ค�ใดใหเข�ไปดหม�ยเลขพอรทสอส�รของเครองทมไดท�ง Device Manager ของ Windows โดยพมพคำ�สง devmgmt.msc ในหน�ต�ง Run

-3-

Page 4: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

เมอทดลองจนเชอมตอกบ GoGo Board ไดแลวกจะเข�ถงหน�ต�งควบคมหลกของโปรแกรมดงภ�พ

-4-

Page 5: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

-5-

Page 6: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

แผงควบคมหลกของโปรแกรม GoGo Monitor แบงออกเปน 3 สวนใหญดวยกนคอ

1. สวนการควบคมทวไป สวนนใชทดสอบก�รเชอมตอกบ – GoGo Board เชนสงเสยง สงให – GoGo Board สงเสยงรองสนๆเปด LED, ปด LED – สงเปด และ ปด ไฟแสดงสถ�นก�รณทำ�ง�นบน GoGo Board

PING – จะตรวจสอบรนของ GoGo Board ทใชง�นอย

2. สวนควบคมมอรเตอร – GoGo Board มพอรทเสยบมอรเตอรทงหมด 4 ชอง โดยแตละชองมชอว� A, B, C, D ต�มลำ�ดบ ห�กตองก�รควบคมก�รทำ�ง�นของมอรเตอรใดกใหเลอกมอรเตอรนนโดยก�รทำ�เครองหม�ยในชองด�นข�งชอของมอรเตอรนนๆ โดยส�ม�รถเลอกมอรเตอรไดหล�ยตวพรอมกน เมอเลอกมอรเตอรทตองก�รแลวกส�ม�รถสงง�นต�งๆ ไดดงนเปด, ปด สงเปดและปดพอรทนนๆ–เบรก คอก�รใสแรงต�นก�รหมนเพอใหมอรเตอรอยนง–ปลอย คอก�รตดไฟเฉยๆ มอรเตอรส�ม�รถหมนฟรได–กำ�ลง คอก�รตงค�ว�มอรเตอรจะหมดดวยกำ�ลงสงตำ�เพยงใด โดย – 7 คอกำ�ลงสงสดท�งน, ท�งนน คอก�รกำ�หนดทศท�งก�รหมนของมอรเตอร –กลบทศ คอก�รกลบทศก�รหมนของมอรเตอร–

3. เซนเซอร – GoGo Board มพอรทเซนเซอรทงหมด 8 ชอง เรยกชอว� เซนเซอร 1 ถง เซนเซอร 8 โดย GoGo Board จะสงค�ของเซนเซอรเหล�นม�ยงโปรแกรม GoGo Monitor อย�งตอเนองทนทหลงจ�กกดปม เรม“ ”

ปกตแลวห�กไมมเซนเซอรตอเชอมอยค�ทอ�นไดจะมค�เท�กบ 1023 ซงเปนค�สงสด ค�ทไดนจะเปลยนไปเมอมเซนเซอรเสยบอย

-6-

Page 7: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

คำ�สงควบคม GoGo Board จ�ก

Micro Worldsคำาสงเกยวกบเซนเซอร

sensor1sensor2sensor3sensor4sensor5sensor6sensor7sensor8

อ�นค�จะเซนเซอรทกำ�หนด ค�ทไดจะอยระหว�ง 0-1023 ค�ทไดนแสดงใหเหนค�คว�มต�นท�นระหว�งส�ยทงสองเสนของเซนเซอร

ค� 1023 เปนค�ปกตทจะไดเมอไมมเซนเซอรเสยบอย ซงหม�ยถงค�คว�มต�นท�นสงทสด (ไมมกระแสไฟวงผ�นระหว�งส�ยสองเสนไดเลย)

ค� 0 เปนค�ทจะไดเมอไมมคว�มต�นท�นระหว�งส�ยทงสองเสนเลย เชน เมอส�ยแตะกน

ตวอยาง show sensor1

จะแสดงค�เซนเซอร 1 ออกม�

if sensor1 < 100[ fd 100]

สงใหเต�เดนหน� 100 ก�วถ�เซนเซอรมค�นอยกว� 100

waituntil [sensor2 > 500]

โปรแกรมจะหยดรอจนกว�ค�เซนเซอร 2 จะม�กกว� 500

คำาสงควบคมมอรเตอร

ttattbttcttd

ยอม�จ�ก Talk To ใชกำ�หนดว�เร�จะสงง�นมอรเตอรพอรทใด

TalkToPort [Port-list]

ใชเมอตองก�รสงง�นมอรเตอรม�กกว�หนงตวพรอมๆ กน

Port-list ประกอบไปดวยชอของพอรทมอรเตอรทตองก�ร

ตวอยาง TalkToPort [a b c]

จะเลอกมอรเตอร A, B, และ C

-7-

Page 8: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

On เปดมอรเตอรทเลอกไวใหหมน

Off ปดมอรเตอร

หม�ยเหต คำ�สงนจรงๆ แลว รวมคำ�สง – Break และ Coast เข�ดวยกน คอ คำ�สง Off จะสงเบรกกอนเปนเวล�สนๆ แลวต�มดวย Coast เพอตดไฟ และประหยดพลงง�น

Coast ปดมอรเตอรโดยไมเบรก คอตดไฟเฉยๆ มอรเตอรอ�จไมหยดหมนในทนท

Break ปดมอรเตอรโดยก�รเบรก คอ จะมแรงฝนไมใหมอรเตอรหมน ซงอ�จทำ�ใหมอรเตอรหยดหมนไดเรว แตวธนกจะกนไฟม�ก จงไมควรทงมอรเตอรไวในสถ�นะนน�นๆ

OnFor Duration Turns on the active port for a Duration of time. Duration is in tenth of a second.

ตวอยาง ttaonwait 10off

จะเปดมอรเตอรพอรท A ไว 1 วน�ทแลวปด ซงทำ�ง�นเหมอนกนกบคำ�สงตอไปน

ttaonfor 10

Thisway Thatway

ใชกำ�หนดทศท�งก�รหมนของมอรเตอร โดย Thisway กบ Thatway อ�จหม�ยถงก�รหมนต�มเขมหรอทวนเขมน�ฬก�กไดแลวแตทศท�งก�รเสยบมอรเตอรลงบน GoGo Board

Rd ใชกลบทศก�รหมนของมอรเตอร

SetPower Power ใชกำ�หนดระดบกำ�ลงของมอรเตอร

Power มค�ระหว�ง 0 ถง 7 โดย 7 คอกำ�ลงสงสดในคณะท 0 เหมอนก�รปดมอรเตอรนนเอง

ตวอยาง TalkToMotor [a b c d]setpower 4

จะตงค�กำ�ลงของมอรเตอรทกตวตงแต A-D ใหมค�เท�กบ 4

-8-

Page 9: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

คำ�สงควบคม GoGo Board จ�ก

GoGo Monitorมอรเตอร

GoGo Board มมอรเตอรสตวชอว� A, B, C, และ D ก�รใชง�นมอรเตอรนนจะเรมตนดวยก�รเลอกมอรเตอร (ใชคำ�สง a, b, ab, ฯลฯ) แลวบอกมนว�ตองก�รใหทำ�อะไร (เชน, on (เปด), off(ปด), rd (กลบทศ) ฯลฯ)

a, เลอกสงง�นมอรเตอร A

b, เลอกสงง�นมอรเตอร B

c, เลอกสงง�นมอรเตอร C

d, เลอกสงง�นมอรเตอร D

ส�ม�รถผสมอกษรเพอเลอกมอรเตอรหล�ยตว เชน

ab, เลอกสงง�นมอรเตอร AB

acd เลอกสงง�นมอรเตอร A C และ D

on เปดมอรเตอรทเลอกไว

off ปดมอรเตอรทเลอกไว

onfor ระยะเวล� เปดมอรเตอรไวเปนเวล�หนง, "ระยะเวล�" เปนตวกำ�หนดว�มอรเตอรจะถกเปดไวเปนเวล�น�นเท�ใด หนวยของเวล�คอ หนงในสบของวน�ท ยกตวอย�งเชน onfor 10 จะเปดมอรเตอรไวเปนเวล�หนงวน�ท

thisway กำ�หนดทศท�งก�รหมนของมอรเตอรใหเปน "ท�งน" (ซงจะเปนท�งไหนนนขนอยกบก�รตอมอรเตอร) ไฟสถ�นะเมอมอรเตอรหมน "ท�งน" จะเปนสเขยว

thatway กำ�หนดทศท�งก�รหมนของมอรเตอรใหเปน "ท�งนน" (ซงจะเปนท�งตรงกนข�มกบ "ท�งน") ไฟสถ�นะเมอมอรเตอรหมน "ท�งนน" จะเปนสแดง

rd กลบทศก�รหมน ไมว�มอรเตอรจะหมนท�งใด คำ�สงนจะกลบทศก�รหมนนนใหเปนท�งตรงข�ม

setpower ระดบ ตงค�กำ�ลงของมอรเตอร: ค� "ระดบ" มชวงอยระหว�ง 0 (ไมกำ�ลงเลย มอรเตอรจะหยด) ไปจนถง 7 (เตมกำ�ลง) ค�ระดบกำ�ลงปกตของมอรเตอรคอ 7

-9-

Page 10: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

เวลา

ดวยคำ�สง wait เร�ส�ม�รถบอกให GoGo Board อยเฉยๆ ใหเวล�ผ�นไประยะหนง ในขณะท GoGo Board อยเฉยๆ น มอรเตอรจะถกเปดทงไวกได เชน

ab, on wait 20 off

จะเปดมอรเตอร A และ B ไวเปนเวล� 2 วน�ท คำ�สงนใหผลเหมอนกนกบ:

ab, onfor 20

นอกจ�กนในตว GoGo Board ยงมน�ฬก�ทเดนอยตลอดเวล�แมในขณะท GoGo Board กำ�ลงทำ�ง�นอย�งอนอย มคำ�สงสองคำ�สงทใชง�นน�ฬก�นคอ resett ซงจะทำ�ใหน�ฬก�เรมนบจ�กศนยใหม และ timer ซงจะแจงค�น�ฬก�ปจจบน (เปนค�ตวเลขค�หนง)

ต�ร�งตอไปนสรปก�รใชง�นคำ�สง wait, timer, และ resett

wait ระยะเวล� หยดอยเฉยๆ เปนเวล�เท�กบค� "ระยะเวล�" ทกำ�หนด หนวยของเวล�คอ หนงในสบวน�ท ตวอย�งเชน wait 10 จะทำ�ให GoGo Board อยเฉยๆ เปนเวล�หนงวน�ท.

timer แจงค�น�ฬก� หนวยของเวล�จะนบทกๆ 0.1 วน�ท ดงนนถ� timer = 20, แสดงว�น�ฬก�เรมนบม�เปนเวล�สองวน�ท

resett บอกใหน�ฬก�เรมนบจ�กศนยใหม

-10-

Page 11: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

เซนเซอร

GoGo Board มเซนเซอรอย 8 พอรทดวยกน ชอว� sensor1-8 มอปกรณหล�ยชนดทส�ม�รถใชง�นกบเซนเซอรนได เชน

อปกรณทมสถ�นะเปด/ปด เชนปม หรอ สวตชชนดต�งๆ เซนเซอรทเปลยนแปลงค�คว�มต�นท�นของตวเอง เชน เซนเซอรแสง หรอ เซนเซอรอณหภม อปกรณอเลคทรอนคสใดๆ ทผลตคว�มต�งศกด ระหว�ง 0 ถง 5 โวลต

คำ�สงทใชอ�นค�เซนเซอรมอยสองแบบดวยกน แบบแรกเรยกว� switch ซงจะสงค�จรงหรอเทจกลบม�เท�นน (ใชกบเซนเซอรทมสองสถ�นะคอเปดหรอปด) แบบทสองคอ sensor ซงจะสงค�ตวเลขระหว�ง 0 ถง 1023 ออกม� โดยค�ทไดจะขนอยกบเซนเซอรทใช

Switch1 Switch2 Switch3 Switch4 Switch5 Switch6 Switch7 Switch8

ถ�สวทชทตออยกบเซนเซอร 1-8 ถกกดอย คำ�สงนจะร�ยง�นค� "จรง" ออกม� ถ�ไมเชนนนกจะร�ยง�นค� "เทจ"

Sensor1 Sensor2 Sensor3 Sensor4 Sensor5 Sensor6 Sensor7 Sensor8

ร�ยง�นค�เซนเซอร 1-8 โดยค�นจะอยระหว�ง 0 ถง 1023

คำาสงโครงสราง

ภ�ษ� Logo มคำ�สงโครงสร�งชดเลกๆ ทมประโยชนม�ก คำ�สงเหล�นประกอบไปดวยคำ�สงทใชในก�ร วนรอบ, ทดสอบเงอนไข, รอแบบมเงอนไข, และคำ�สงจบก�รทำ�ง�นของโปรแกรม

ภาพรวม

คำ�สงโครงสร�งทมใน ภ�ษ� Logo ถกสรปไวในต�ร�งตอไปน

repeat ครง [คำ�สง] วนทำ� "คำ�สง" เปนจำ�นวนครงเท�กบ "ครง" ค� "ครง" อ�จเปนค�คงท,ค�จ�กก�รคำ�นวน, หรอตวแปรกได

forever [คำ�สง] วนทำ� "คำ�สง" ไปแบบไมมทสนสด

if เงอนไข [คำ�สง] ถ� "เงอนไข" เปนจรง จะทำ� "คำ�สง" เงอนไขทมค�เปน 0 ถอว�มค�เปน

-11-

Page 12: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

เทจ ค�อนทไมใช 0 จะถอว�มค�เปน จรงifelse condition[คำ�สง-1] [คำ�สง-2]

ถ� "เงอนไข" เปนจรง จะทำ� "คำ�สง-1" ถ�ไมเชนนน จะทำ� "คำ�สง-2"

waituntil [เงอนไข] โปรแกรมจะรอและไมทำ�คำ�สงถดไปจนกระทง "เงอนไข" เปนจรง โปรดสงเกตว�เงอนไขจะตองอยในวงเลบเหลยม ไมเหมอนกบคำ�สง if และ ifelse ทเงอนไขไมตองอยในวงเลบใดๆ

stop หยดก�รทำ�ง�นของ procedure ปจจบน และ กลบไปทำ�คำ�สงถดไปใน procedure แม (procedure ทเรยกใชง�น procedure ปจจบน)

output ค� หยดก�รทำ�ง�นของ procedure ปจจบน และ สง "ค�" กลบไปยง procedure แม

ตวอยาง

procedure ตอไปนจะทำ�ใหมอรเตอร A หมนกลบไปกลบม� 10 ครง

to flippy repeat 10 [a, onfor 10 rd]end

สองตวอย�งตอไปนแสดงใหเหนวธทจะทำ�ใหมอรเตอร A หมนกลบไปกลบม�เรอยๆ ไมมวนสนสด

to flippy-forever-1 forever [a, onfor 10 rd]end

procedure ตอไปนทำ�ก�รเปดมอรเตอร A แลวรอจดกว�สวทช 2 ถกกด แลวจงปดมอรเตอร

to on-wait-off a, on waituntil [switch2] offend

procedure ตอไปนจะทำ�ก�รอ�นค�สวทช 2 อยเรอยๆ ถ�สวทชถกกดมอรเตอร A จะหมนไป "ท�งน" แตถ�สวทชไมถกกดมอรเตอรจะหมนไป "ท�งนน"

to switch-controls-direction a, on forever [ ifelse switch2 [thisway][thatway] ]end

ระบบตวเลข

-12-

Page 13: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

GoGo Board ใชระบบตวเลขขน�ด 16 บท ซงหม�ยคว�มว�ค�ตวเลขทส�ม�รถใชง�นไดจะอยระหว�ง -32768 ถง +32767.

ก�รใชง�นเครองหม�ยท�งเลขคณตจะตองมก�รเวนวรรคทงสองด�นเสมอ นนคอก�รเขยน 3+4 เปนรปแบบทผด รปแบบทถกคอ 3 + 4 (มวรรคกอนหน�และหลงเครองหม�ยบวก).

ภ�ษ� Logo ไมไดใชระบบลำ�ดบคว�มสำ�คญของเครองหม�ยคณตศ�สตรทเปนม�ตรฐ�นทวไป แตจะถอเอ�ต�มลำ�ดบก�รเขยนเรยงจ�กซ�ยไปขว� ดงนน

3 + 4 * 5

จะมค�เท�กบ 35 เพร�ะ ภ�ษ� Logo จะทำ� 3 + 4 แลวคณผลลพทดวย 5. (ซงต�งจ�กม�ตรฐ�นก�รประมวลผลในภ�ษ�คอมพวเตอรทวไป ซงจะถอว� * สำ�คญกว� + ดงนนผลลพททจะไดจะเปน 4*5 แลวบวกดวย 3)

วงเลบเปนวธก�รทใชในก�รกำ�หนดลำ�ดบกอนหนงใหกบก�รคำ�นวน เชน

(3 + (4 * 5))

ค�ทไดคอ 23.

ต�ร�งตอไปนแสดงเครองหม�ยท�งคณตศ�สตรทงหมดทมใน ภ�ษ� Logo

+ บวก (แบบ infix)- ลบ (แบบ infix)

* คณ (แบบ infix)/ ห�ร (แบบ infix)% ห�รเอ�เศษ (เชน 5 % 3 จะเท�กบ 2)

and ตรรกะ "และ" ใชทงกบก�รห�ท�งท�งตรรกศ�สตร (จรงหรอเทจ) และ bitwise operation

or ตรรกะ "หรอ"

not ตรรกะ "ไม"

random ใชสมค�ตวเลข ค�ทไดจะอยระหว�ง -32768 ถง +32768. ถ�ตองก�รลดชวงของค�ลง ใหใชก�รห�รเอ�เศษ (%) เชน (random % 100) จะไดค�สมตงแต 0 ถง 99

 

-13-

Page 14: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

Procedures และการรบ-สงคา (input-output)

คำาจำากดความ

ก�รสร�ง procedure จะเรมดวยคำ�สง to ต�มดวยชอ procedure ต�มดวยชดคำ�สงทเปนใจคว�มของ procedure แลวจบดวยคำ�สง end ตวอย�งตอไปน เปนก�รสร�ง procedure ชอว� flash ซงทำ�ก�รเปดและปดมอรเตอร A สบครง

to flash repeat 10 [a, onfor 5 wait 5]end

การรบคา (Inputs)

เร�ส�ม�รถกำ�หนด Procedures ใหทำ�ก�รรบค�ได ซงค�ดงกล�วจะกล�ยเปนตวแปรของ procedure นนๆ (local variable) ก�รกำ�หนดก�รรบค�จะทำ�โดยก�รใชเครองหม�ย colon (:) ตวอย�งตอไปนเปนก�รสร�ง procedure ชอ flash ซงมก�รรบค�หนงค� (ชอว� n) ค�ทรบเข�ม�นถกใชในก�รกำ�หนดจำ�นวนครงก�รวนรอบของคำ�สง repeat

to flash :n repeat :n [a, onfor 5 wait 5]end

เมอเรยกใช procedure นจะตองต�มดวยค�ตวเลขหนงค�เสมอ เชน flash 5, flash 10, flash 20, ฯลฯ

procedure ส�ม�รถรบค�กค�กได ภ�ษ� Logo ไมไดจำ�กดไว แตในท�งปฎบตบรม�ณหนวยคว�มจำ�ทเหลออยของ GoGo Board จะเปนตวจำ�กด

การสงคา (Outputs)

Procedure ส�ม�รถสงค�กลบไดโดยใชคำ�สง output เมอ procedure เรยกใชคำ�สงดงกล�วแลว มนจะจบก�รทำ�ง�นทนท ตวอย�งตอไปนแสดง procedure ชอ detect ซงจะสงค� 0, 1, หรอ 2 ขนอยกบค�ของเซนเซอร 1

to detect make “temp sensor1 if :temp < 300 [output 1] if :temp < 500 [output 2] output 3end

ในตวอย�งนมก�รสร�งตวแปรชอ temp ซงถกใชในก�รเกบค�ของเซนเซอร 1 ถ�ค�เซนเซอรนนอยกว� 300 procedure จะสงค� 1 แตถ�ค�เซนเซอรม�กกว� 300 คำ�สงถดไปจะทำ�ง�น ซงจะทดสอบว�ถ�ค�

-14-

Page 15: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

ดงกล�วนอยกว� 500 procedure จะสงค� 2 ท�ยทสดถ�ค�เซนเซอรไมนอยกว� 500 procedure จะสงค� 3

ขอควรระวง ถ�ตดสนใจใชคำ�สง output แลว จะตองตรวจสอบใหแนใจเสมอว� procedure นนจะมก�รสงค�ไมว�ในกรณใดๆ (นนคอ procedure จะสงค�บ�งไมสงค�บ�งไมได) ก�รทำ�ง�นของ GoGo Board จะลมเหลวทนทถ� procedure นนจบก�รทำ�ง�นโดยไมมก�รสงค�

 

ตวแปร

ก�รสร�งตวแปร Global จะทำ�โดยใชคำ�สง make “ชอตวแปร เชน

Make “cats 0make “dogs 1

จะสร�งตวแปรสองตวชอ cats และ dogs และกำ�หนดค�ใหเปน 0 และ 1 ต�มลำ�ดบ

จะสงเกตไดว�เวล�เร�จะเขยนค�ลงในตวแปรเร�จะใสเครองหม�ยคำ�พดนำ�หน�ชอตวแปรเสมอ แตถ�ตองก�รอ�นค�จ�กตวแปรจะใชเครองหม�ย : แทน เชน

If :cats > 0 [ a, on ]

จะทดสอบว�ค�ในตวแปร cats ม�กกว� 0 หรอไม ถ�ใชกจะเปดมอรเตอร A

Make “cats :cats + 1

จะเพมค�ตวแปร cats ขน 1

ตวแปรจะถกจดเกบในหนวยคว�มจำ� RAM ซงจะตองมไฟเลยงอยเสมอ ดงนนค�ตวแปรจะสญห�ยถ�ปด GoGo Board

 

-15-

Page 16: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

การบนทกและเรยกคนขอมล (Data Recording and Playback)

ภ�ษ� Logo ม global array ขน�ด 8000 ชอง อยหนงตวซงส�ม�รถใชง�นกบคำ�สงตอไปนได

setdp ตำ�แหนง ตงค�ตวชตำ�แหนง

record ค� บนทก "ค�" ลงไปในตำ�แหนงปจจบน และเลอนตวชใหไปอยในตำ�แหนงถดไป

recall เรยกคนค�ในตำ�แหนงปจจบน และเลอนตวชใหไปอยในตำ�แหนงถดไป

ตวอย�ง procedure ชอ take-data ตอไปนจะบนทกค�เซนเซอร A ทกๆ หนงวน�ท

to take-data setdp 0 repeat 1000 [record sensor1 wait 10]end

เมอมก�รบนทกขอมลแลว ส�ม�รถใช GoGo Monitor ในก�รดงขอมลม�เกบไวในรปแบบของไฟล CSV (Comma Separated Values) เพอนำ�ไปประมวลผลโดยใชโปรแกรมอนๆ เชน Excel ตอไป

หม�ยเหต ภ�ษ� Logo ไมมก�รตรวจสอบว�ก�รบนทกขอมลเกนขอบเขตหรอไม (ม�กกว� 8000) ซงอ�จสงผลใหเกดคว�มผดพล�ดกบขอมลหรอโปรแกรมสวนอน

 

 

-16-

Page 17: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

การสอสารขอมลทางชองสญญาณอนกรม (Serial Port)

ภาพรวม

GoGo Board ส�ม�รถสงและรบขอมลห�กนผ�นท�งชองสญญ�ณอนกรมไดโดยใชคำ�สง send และ serial ต�มลำ�ดบ คำ�สง serial จะร�ยง�นค�ทไดรบล�สด นอกจ�กนยงมคำ�สง newserial? ซงจะร�ยง�นค�จรงถ� GoGo Board ไดรบรบมลตวใหมเข�ม�แตยงไมไดถกนำ�ไปใช

ลองพจ�รณ�ตวอย�งตอไปน procedure ชอ sender จะทำ�ก�รสงขอมลไปยงคอมพวเตอร, โดยค�ทสงจะเปนค�สมระหว�ง 0 ถง 2

to sender forever [ send random % 3 beep wait 30]end

คำ�สง random % 3 จะสร�งค� 0, 1, หรอ 2 ซงเปนผลจ�กก�รใชเครองหม�ย "ห�รเอ�เศษ" ค�ทไดจะถกสงโดยคำ�สง send หลงจ�กนน กจะสงเสยง beeps และรอ 3 วน�ทกอนทจะวนสร�งและสงค�ออกไปอกครง

ในตวอย�งทสอง Procedure ชอ doit จะทำ�ก�รรบค�ท Computer แลวจะเปดมอรเตอร A, มอรเตอร B หรอทงค ขนอยกบค�ทมนไดรบ

to doit forever [ waituntil [newserial?] if serial = 0 [a, onfor 10] if serial = 1 [b, onfor 10] if serial = 2 [ab, onfor 10] ]end

หมายเหต

GoGo Board ใชค� 128 ถง 134 สำ�หรบก�รทำ�ง�นระดบตำ�ระหว�ง GoGo Board ดงนนพย�ย�มอย�สงค�ตวเลขเหล�น ค�เหล�นอ�จทำ�ใหหนวยคว�มจำ�ของ GoGo Board บ�งตว (ตวทเปดอยแตไมไดทำ�ง�นอะไร) ถกเขยนทบและสงผลเสยห�ยได

ปมบนตว GoGo Board

-17-

Page 18: มอร์เตอร์ - Learning Inventions Laboratory Board... · Web viewGoGo Board ต ดต อก บคอมพ วเตอร ผ านทางพอร ทอน

เมอกดปมในขณะท GoGo Board ไมไดทำ�ง�นอะไร จะทำ�ใหมนเรมตนประมวลผล procedure แรกทเขยนไวในหน�จอของ ภ�ษ� Logo

ถ�กดปมในขณะท GoGo Board กำ�ลงทำ�ง�นจะสงผลใหมนหยดก�รทำ�ง�นปจจบนทนท

-18-