a, board usb... · web viewค ายห นยนต สำหร บน กค ดน...
TRANSCRIPT
![Page 1: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/1.jpg)
แนะนำ�ก�รใช GoGo Board เบองตนดร.อ�นนท สหพทกษเกยรต
ภ�ควช�วศวกรรมคอมพวเตอร คณะวศวกรรมศ�สตรมห�วทย�ลยเชยงใหม
สนบสนนโดย
ค�ยหนยนตสำ�หรบนกคดนกประดษฐรนเย�ว
Interactive Technologies for the Inventive Minds Robotics Camp
![Page 2: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/2.jpg)
สวนประกอบของ GoGo Board
อปกรณทจำ�เปน
แหลงจายไฟGoGo Board ใชไฟไดจ�กส�มแหลงคอ 1)
ไฟจ�กส�ย USB 2) ถ�น AA จำ�นวน 6
กอน ซงจะบรรจอยในลงถ�นด�นใต หรอ 3) จะเสยบไฟจ�กหมอแปลงไฟกระแสตรงทมแรงดนระหว�ง 9-12
โวลท
การตอพวงกบคอมพวเตอรGoGo Board ตดตอกบคอมพวเตอรผ�นท�งพอรท USB
-2-
![Page 3: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/3.jpg)
เรมตนใชง�น GoGo Board
โปรแกรม GoGo Monitor
โปรแกรมนเปนโปรแกรมหลกทใชในก�รตรวจสอบก�รทำ�ง�นของ GoGo Board โดยส�ม�รถด�วนโหลดโปรแกรมนไดฟรท http://www.gogoboard.org เมอตดตงและใชง�นโปรแกรมจะพบหน�ต�งดงรปตอไปน
ก�รทจะเรมใชง�น GoGo Board ไดนนเร�จะตองทร�บหม�ยเลขพอรทสอส�ร (COM port) ทใชกอน แลวจงกดปม เชอมตอ หม�ยเลขนจะมค�ต�งกนไป ห�กไมทร�บว�จะใชค�ใดให“ ”เข�ไปดหม�ยเลขพอรทสอส�รของเครองทมไดท�ง Device Manager ของ Windows โดยพมพคำ�สง devmgmt.msc ในหน�ต�ง Run
-3-
![Page 4: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/4.jpg)
เมอทดลองจนเชอมตอกบ GoGo Board ไดแลวกจะเข�ถงหน�ต�งควบคมหลกของโปรแกรมดงภ�พ
-4-
![Page 5: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/5.jpg)
-5-
![Page 6: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/6.jpg)
-6-
ก�รควบคมทวไป – สงเสยง สงให GoGo Board สงเสยงรองสนๆ
เปด LED, ปด LED – สงเปด และ ปด ไฟแสดงสถ�นก�รณทำ�ง�น บน GoGo Board
PING – จะตรวจสอบรนของ GoGo Board ทใชง�นอย
สวนควบคมมอรเตอรGoGo Board มพอรทเสยบมอรเตอรทงหมด 4 ชอง โดยแตละ
ชองมชอว� A, B, C, D ต�มลำ�ดบ ห�กตองก�รควบคมก�รทำ�ง�นของมอรเตอรใดกใหเลอกมอรเตอรนนโดยก�รทำ�
เคร องหม�ยในชองด�นข�งชอของมอรเตอรนนๆ โดยส�ม�รถ เลอกมอรเตอรไดหล�ยตวพรอมกน เมอเลอกมอรเตอรทตองก�ร
แลวกส�ม�รถสงง�นต�งๆ ไดดงนเปด, – ปด สงเปดและปดพอรทนนๆ
–เบรก คอก�รใสแรงต�นก�รหมนเพอใหมอรเตอรอยน ง – ปลอย คอก�รตดไฟเฉยๆ มอรเตอรส�ม�รถหมนฟรได – กำ�ลง คอก�รตงค�ว�มอรเตอรจะหมดดวยกำ�ลงสงตำ�เพยงใด
โดย 7 คอกำ�ลงสงสดท�งน, – ท�งนน คอก�รกำ�หนดทศท�งก�รหมนของมอรเตอร
– กลบทศ คอก�รกลบทศก�รหมนของมอรเตอรเซนเซอรGoGo Board มพอรทเซนเซอรทงหมด 8 ชอง เรยกชอว�
เซนเซอร 1 ถง เซนเซอร 8 โดย GoGo Board จะสงค�ของ เซนเซอรเหล�นม�ยงโปรแกรม GoGo Monitor อย�งตอเนอง
“ ”ทนทหลงจ�กกดปม เร ม
ปกตแลวห�กไมมเซนเซอรตอเชอมอยค�ทอ�นไดจะมค�เท�กบ1023 ซงเปนค�สงสด ค�ทไดนจะเปลยนไปเมอมเซนเซอรเสยบอย
![Page 7: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/7.jpg)
แผงควบคมหลกของโปรแกรม 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 ซงเปนค�สงสด ค�ทไดนจะเปลยนไปเมอมเซนเซอรเสยบอย
-7-
![Page 8: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/8.jpg)
คำ�สงควบคม 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
-8-
![Page 9: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/9.jpg)
เวลา
ดวยคำ�สง 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 บอกใหน�ฬก�เรมนบจ�กศนยใหม
-9-
![Page 10: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/10.jpg)
เซนเซอร
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 ครง [คำ�สง] วนทำ� "คำ�สง" เปนจำ�นวนครงเท�กบ "ครง" ค� "ครง" อ�จเปนค�คงท,ค�จ�ก
-10-
![Page 11: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/11.jpg)
ก�รคำ�นวน, หรอตวแปรกไดforever [คำ�สง] วนทำ� "คำ�สง" ไปแบบไมมทสนสด
-11-
![Page 12: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/12.jpg)
if เงอนไข [คำ�สง] ถ� "เงอนไข" เปนจรง จะทำ� "คำ�สง" เงอนไขทมค�เปน 0 ถอว�มค�เปน เทจ ค�อนทไมใช 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]
-12-
![Page 13: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/13.jpg)
]end
ระบบตวเลข
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: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/14.jpg)
-14-
![Page 15: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/15.jpg)
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
-15-
![Page 16: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/16.jpg)
ในตวอย�งนมก�รสร�งตวแปรชอ temp ซงถกใชในก�รเกบค�ของเซนเซอร 1 ถ�ค�เซนเซอรนนอยกว� 300 procedure จะสงค� 1 แตถ�ค�เซนเซอรม�กกว� 300 คำ�สงถดไปจะทำ�ง�น ซงจะทดสอบว�ถ�ค�ดงกล�วนอยกว� 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
-16-
![Page 17: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/17.jpg)
การบนทกและเรยกคนขอมล (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) ซงอ�จสงผลใหเกดคว�มผดพล�ดกบขอมลหรอโปรแกรมสวนอน
-17-
![Page 18: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/18.jpg)
การสอสารขอมลทางชองสญญาณอนกรม (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
-18-
![Page 19: a, Board USB... · Web viewค ายห นยนต สำหร บน กค ดน กประด ษฐ ร นเยาว Interactive Technologies for the Inventive Minds](https://reader035.vdocuments.pub/reader035/viewer/2022081517/5ab0428f7f8b9a59478e672d/html5/thumbnails/19.jpg)
เมอกดปมในขณะท GoGo Board ไมไดทำ�ง�นอะไร จะทำ�ใหมนเรมตนประมวลผล procedure แรกทเขยนไวในหน�จอของ ภ�ษ� Logo
ถ�กดปมในขณะท GoGo Board กำ�ลงทำ�ง�นจะสงผลใหมนหยดก�รทำ�ง�นปจจบนทนท
การรบคาคำาสงจากรโมทอนฟราเรด
GoGo Board ส�ม�รถรบคำ�สงจ�กรโมท SONY ใดๆ ผ�นท�งตวรบสญญ�ณอนฟร�เรดบนบอรด โดยค�ทไดรบนนจะเปนค�รหสของปมบนรโมท ซงไมจำ�เปนตองตรงกบค�ตวเลขทเหนบนรโมท เชน เลข 1 บนรโมทจะมรหส = 128 เปนตน
ปมเปด/ปด บนรโมทเปนปมพเศษ ถ� GoGo Board ไดรบค�ปม เปด/ปด นมนจะทำ�ก�ร เรม/หยด โปรแกรมเหมอนกบก�รกดปม Run
คำ�สงในภ�ษ� Logo เกยวกบรโมทมดงตอไปน
newir? จะมค�เปนจรงถ� มก�รสงคำ�สงรโมทม�ยง GoGo Board
ir จะคนค�รหสของปมรโมททถกสงม�
ตวอย�งตอไปนจะเลอกทำ�คำ�สง beep ถ�มก�รกดปม “1” บนรโมท (รหส = 128) และจะกระพรบ LED ถ�มกดปม “2” (รหส 129)
to testIR forever [ waituntil [newir?] if ir = 128 [beep] if ir = 129 [ledon wait 10 ledoff] ]end
-19-