บล็อกเฉพาะสำหรับหุ่นยนต์#
การแนะนำ#
หุ่นยนต์ 123 ประกอบด้วยระบบขับเคลื่อน ไฟ LED ลำโพง เซ็นเซอร์ดวงตา และเซ็นเซอร์ไจโร
บล็อก VR มาตรฐานของ VEXcode ทั้งหมดสามารถใช้งานได้ใน 123 Playspace Playground
ด้านล่างนี้คือรายการบล็อกเฉพาะสำหรับหุ่นยนต์ที่มีให้เลือกใช้งานทั้งหมด:
ระบบขับเคลื่อน - เคลื่อนที่และหมุนหุ่นยนต์
การกระทำ
drive - เคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังตลอดไป
ขับจนกว่า - เคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังจนกว่าจะตรวจพบวัตถุ การชน หรือเส้น
ขับไปข้างหน้า - เคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังตามระยะทางที่กำหนด
เลี้ยว - หมุนหุ่นยนต์ไปทางซ้ายหรือขวาตลอดไป
หมุน - หมุนหุ่นยนต์ไปทางซ้ายหรือขวาตามจำนวนองศาที่กำหนด
หมุนตามทิศทาง - หมุนหุ่นยนต์ให้หันหน้าไปยังทิศทางที่กำหนดตั้งแต่ -359 ถึง 359 องศา หุ่นยนต์จะหมุนไปในทิศทางที่สั้นที่สุดเพื่อไปยังทิศทางเป้าหมาย
หยุดขับ - หยุดการเคลื่อนที่ของหุ่นยนต์
การตั้งค่า
set drive timeout - ตั้งค่าจำนวนวินาทีที่หุ่นยนต์จะพยายามทำการเคลื่อนไหวให้เสร็จสิ้น
ตั้งค่าทิศทางการขับเคลื่อน - เปลี่ยนทิศทางปัจจุบันของหุ่นยนต์เป็นทิศทางใหม่
ค่านิยม
การขับเคลื่อนเสร็จสิ้น - รายงานว่าหุ่นยนต์เคลื่อนที่เสร็จแล้วหรือไม่
ทิศทางการขับเคลื่อน - รายงานทิศทางปัจจุบันของหุ่นยนต์ตั้งแต่ 0 ถึง 359 องศา
เสียง - เล่นเสียงในตัวผ่านลำโพงของหุ่นยนต์ 123
เล่นเสียง - เล่นเอฟเฟกต์เสียงในตัวของหุ่นยนต์หนึ่งรายการ
LED - ควบคุมไฟ LED ตรงกลางของหุ่นยนต์ 123
glow - ตั้งค่าสีของไฟ LED
การกระทำ - สั่งให้หุ่นยนต์ 123 ทำงานตามพฤติกรรมที่ตั้งไว้ล่วงหน้า
act - แสดงอารมณ์ต่างๆ ออกมา
การตรวจวัด - อ่านค่าจากเซ็นเซอร์ของหุ่นยนต์ 123
ไจโร
ตรวจพบการชน — รายงานว่าหุ่นยนต์ตรวจพบการชนอย่างกะทันหันหรือไม่
ดวงตา
ตาตรวจพบวัตถุ – รายงานว่าเซ็นเซอร์ตาตรวจพบวัตถุภายในระยะหรือไม่
ตาตรวจจับสี – รายงานว่าเซ็นเซอร์ตาตรวจจับสีที่ระบุหรือไม่
สีตา – รายงานสีที่ตรวจพบโดยเซ็นเซอร์ตา
วัตถุที่สว่างมาก – รายงานว่าวัตถุที่ตรวจพบสะท้อนแสงมากหรือไม่
ความสว่างของดวงตา – รายงานความสว่างที่ตรวจพบโดยเซ็นเซอร์ดวงตา
ระบบขับเคลื่อน#
หุ่นยนต์ 123 มีระบบขับเคลื่อนสองล้อที่ช่วยให้มันเคลื่อนที่และเลี้ยวได้ ชุดควบคุมระบบขับเคลื่อนจะควบคุมการเคลื่อนที่ของหุ่นยนต์
ระบบขับเคลื่อนสามารถวัดระยะทางได้สองวิธี คือ ขั้น และ มม. (มิลลิเมตร) หนึ่ง ขั้น เท่ากับหนึ่งช่องสี่เหลี่ยมบนสนาม 123
การกระทำ#
ขับ#
บล็อก ขับเคลื่อน จะเคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังอย่างไม่มีที่สิ้นสุด หุ่นยนต์จะเคลื่อนที่ต่อไปจนกว่าจะได้รับคำสั่งอื่น เช่น การเลี้ยวหรือการหยุด
ขับ [ไปข้างหน้า v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ทิศทาง |
ทิศทางการเคลื่อนที่ของหุ่นยนต์: ไปข้างหน้า หรือ ถอยหลัง |
ตัวอย่าง
เมื่อเริ่มต้น
[Drive for 2 seconds.]
ขับ [ไปข้างหน้า v]
รอ (2) วินาที
หยุดขับ
ขับรถจนถึง#
บล็อกคำสั่ง ขับจนกว่า จะเคลื่อนหุ่นยนต์ไปข้างหน้าจนกว่าเซ็นเซอร์ตรวจจับวัตถุ การชน หรือเส้น
ขับเคลื่อนไปข้างหน้าจนถึง [วัตถุ v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เงื่อนไข |
เงื่อนไขที่ทำให้หุ่นยนต์หยุดทำงาน:
|
ตัวอย่าง
เมื่อเริ่มต้น
[Reverse after a crash.]
ขับเคลื่อนไปข้างหน้าจนถึง [ชน v]
ขับ [ถอยหลัง v] เป็น (1) [ก้าว v]
ขับเพื่อ#
บล็อก ขับเคลื่อน จะเคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังตามระยะทางที่กำหนด โครงการจะรอจนกว่าหุ่นยนต์จะหยุดเคลื่อนที่ก่อนที่บล็อกถัดไปในลำดับจะเริ่มทำงาน
ขับ [ไปข้างหน้า v] เป็น (1) [ก้าว v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ทิศทาง |
ทิศทางการเคลื่อนที่ของหุ่นยนต์: ไปข้างหน้า หรือ ถอยหลัง |
ระยะทาง |
ระยะทางที่หุ่นยนต์ขับเคลื่อนไปได้ ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้ |
หน่วย |
หน่วยวัดระยะทาง: ก้าว หรือ มิลลิเมตร |
ตัวอย่าง
เมื่อเริ่มต้น
[Drive back and forth.]
ขับ [ไปข้างหน้า v] เป็น (3) [ก้าว v]
ขับ [ถอยหลัง v] เป็น (3) [ก้าว v]
เปลี่ยน#
บล็อก หมุน จะหมุนหุ่นยนต์ไปทางซ้ายหรือขวาอย่างไม่มีที่สิ้นสุด หุ่นยนต์จะหมุนต่อไปเรื่อยๆ จนกว่าจะได้รับคำสั่งอื่น เช่น การขับเคลื่อนหรือการหยุด
เลี้ยว [ขวา v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ทิศทาง |
ทิศทางที่หุ่นยนต์หมุน: ซ้าย หรือ ขวา |
ตัวอย่าง
เมื่อเริ่มต้น
[Turn for 2 seconds.]
เลี้ยว [ขวา v]
รอ (2) วินาที
หยุดขับ
เลี้ยวเพื่อ#
บล็อกคำสั่ง หมุน จะหมุนหุ่นยนต์ไปทางซ้ายหรือขวาตามจำนวนองศาที่กำหนด การหมุนจะสัมพันธ์กับตำแหน่งปัจจุบันของหุ่นยนต์ โครงการจะรอจนกว่าหุ่นยนต์จะหมุนเสร็จก่อนที่บล็อกถัดไปในลำดับจะเริ่มทำงาน
เลี้ยว [ขวา v] เป็น (90) องศา
พารามิเตอร์ |
คำอธิบาย |
|---|---|
ทิศทาง |
ทิศทางที่หุ่นยนต์หมุน: ซ้าย หรือ ขวา |
มุม |
จำนวนองศาที่หุ่นยนต์หมุน ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้ |
ตัวอย่าง
เมื่อเริ่มต้น
[Turn left, then turn around to the right.]
เลี้ยว [ซ้าย v] เป็น (90) องศา
เลี้ยว [ขวา v] เป็น (180) องศา
หันไปที่หัวข้อ#
ทิศทาง (Heading) คือทิศทางที่หุ่นยนต์หันหน้าไป โดยวัดเป็นองศา บล็อกคำสั่ง turn to heading จะหมุนหุ่นยนต์ให้หันหน้าไปในทิศทางที่กำหนด ตั้งแต่ -359 ถึง 359 องศา หุ่นยนต์จะหมุนไปในทิศทางที่สั้นที่สุดเพื่อไปยังทิศทางเป้าหมาย
ทิศทางเริ่มต้นของหุ่นยนต์คือ 0 องศา
เลี้ยวไปทิศทาง (90) องศา
พารามิเตอร์ |
คำอธิบาย |
|---|---|
หัวข้อ |
ทิศทางที่หุ่นยนต์ควรหันหน้าไป (หน่วยเป็นองศา) สามารถเป็นจำนวนเต็มหรือทศนิยมตั้งแต่ -359 ถึง 359 ได้ |
ตัวอย่าง
เมื่อเริ่มต้น
[Turn to face the cardinal directions.]
เลี้ยวไปทิศทาง (90) องศา
รอ (2) วินาที
เลี้ยวไปทิศทาง (180) องศา
รอ (2) วินาที
เลี้ยวไปทิศทาง (270) องศา
รอ (2) วินาที
เลี้ยวไปทิศทาง (0) องศา
รอ (2) วินาที
หยุดขับรถ#
บล็อก หยุดการเคลื่อนที่ จะหยุดการเคลื่อนที่ของหุ่นยนต์
หยุดขับ
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Stop driving after 4 seconds.]
ขับ [ไปข้างหน้า v]
รอ [4] วินาที
หยุดขับ
การตั้งค่า#
ตั้งค่าหมดเวลาไดรฟ์#
บล็อก set drive timeout ใน Stack จะกำหนดจำนวนวินาทีที่หุ่นยนต์จะพยายามทำการเคลื่อนไหวให้เสร็จสิ้น หากหุ่นยนต์ไม่สามารถทำการเคลื่อนไหวให้เสร็จภายในเวลาที่กำหนด มันจะหยุดพยายามและไปยังบล็อกถัดไปใน Stack ซึ่งจะช่วยป้องกันไม่ให้หุ่นยนต์ติดอยู่กับการเคลื่อนไหวใดๆ
ตั้งหมดเวลาขับเป็น (1) วินาที
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เวลา |
จำนวนวินาทีที่หุ่นยนต์สามารถพยายามทำท่าทางให้เสร็จสิ้นได้ ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้ |
ตัวอย่าง
เมื่อเริ่มต้น
[Turn right after driving for 1 second.]
ตั้งหมดเวลาขับเป็น (1) วินาที
ขับ [ไปข้างหน้า v] เป็น (1000) [มม. v]
เลี้ยว [ขวา v] เป็น (90) องศา
ตั้งทิศทางการขับเคลื่อน#
ทิศทางการขับเคลื่อนคือทิศทางที่หุ่นยนต์หันหน้าไป โดยวัดเป็นองศา บล็อกคำสั่ง set drive heading จะเปลี่ยนทิศทางการขับเคลื่อนปัจจุบันของหุ่นยนต์เป็นค่าทิศทางใหม่
ตัวอย่างเช่น หากหุ่นยนต์หันไปทางขวา การตั้งค่าทิศทางเป็น 0 องศา จะทำให้ตำแหน่งที่หันไปทางขวานั้นกลายเป็น 0 องศาใหม่ จากนั้นหุ่นยนต์สามารถหันไปตำแหน่งอื่น ๆ ได้โดยอิงจากทิศทางใหม่นั้น
ตั้งทิศทางขับเป็น (0) องศา
พารามิเตอร์ |
คำอธิบาย |
|---|---|
หัวข้อ |
ค่าทิศทาง (หน่วยเป็นองศา) ที่จะตั้งค่าให้กับหุ่นยนต์ ค่านี้สามารถเป็นจำนวนเต็มหรือทศนิยมตั้งแต่ -359 ถึง 359 ได้ |
ตัวอย่าง
เมื่อเริ่มต้น
[Face the new 0 degree heading.]
ตั้งทิศทางขับเป็น (90) องศา
เลี้ยวไปทิศทาง (0) องศา
ค่านิยม#
การขับรถเสร็จสิ้นแล้ว#
บล็อก Boolean drive is done จะรายงานว่าหุ่นยนต์เคลื่อนที่เสร็จแล้วหรือไม่ สามารถใช้ข้อมูลนี้ในการควบคุมจังหวะเวลาของพฤติกรรมอื่นๆ โดยอิงจากการเคลื่อนที่ของหุ่นยนต์ได้
จริง — หุ่นยนต์เคลื่อนไหวเสร็จแล้ว
ไม่จริง — หุ่นยนต์ยังคงเคลื่อนที่อยู่
บล็อกนี้ทำงานร่วมกับบล็อกระบบขับเคลื่อนต่อไปนี้: ขับไปข้างหน้า, ขับไปจนถึง, เลี้ยวไปข้างหน้า, และ เลี้ยวไปตามทิศทาง
<ขับเสร็จแล้ว?>
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Glow blue after a crash.]
ขับเคลื่อนไปข้างหน้าจนถึง [ชน v]
ทำตลอดไป
ถ้า <ขับเสร็จแล้ว?> แล้ว
เรืองแสง [น้ำเงิน v]
มิฉะนั้น
เรืองแสง [เขียว v]
ทิศทางการขับขี่#
ทิศทางการเคลื่อนที่ของหุ่นยนต์วัดเป็นองศา บล็อกรายงานทิศทางการเคลื่อนที่ (Drive Heading Reporter Block) จะรายงานทิศทางการเคลื่อนที่ปัจจุบันของหุ่นยนต์ตั้งแต่ 0 ถึง 359 องศา
ทิศทางเริ่มต้นของหุ่นยนต์คือ 0 องศา
(ทิศทางขับในองศา)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Display the heading after turning.]
เลี้ยว [ขวา v] เป็น (450) องศา
พิมพ์ (ทิศทางขับในองศา) ▶
เสียง#
เล่นเสียง#
บล็อก เล่นเสียง จะเล่นเสียงหนึ่งในเสียงที่ติดตั้งมากับหุ่นยนต์
เล่นเสียง [แตรรถ v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เสียง |
หนึ่งในเสียงสำเร็จรูปที่แสดงด้านล่างนี้ |
ชื่อเสียง |
เล่นเสียง |
|---|---|
บีบแตร |
|
ออด |
|
ชน |
|
สุ่ม |
เล่นเสียงแบบสุ่มจาก 3 เสียงข้างต้น |
ตัวอย่าง
เมื่อเริ่มต้น :: hat events
[Play the doorbell sound.]
เล่นเสียง [กริ่งประตู v]
นำ#
เรืองแสง#
บล็อก เรืองแสง จะกำหนดสีของแสง LED
เรืองแสง [เขียว v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
สี |
ตั้งค่าสีของไฟ LED:
|
ตัวอย่าง
เมื่อเริ่มต้น :: hat events
[Blink the LED light forever.]
ทำตลอดไป
เรืองแสง [เขียว v]
รอ [0.5] วินาที
เรืองแสง [ปิด v]
รอ [0.5] วินาที
การกระทำ#
กระทำ#
บล็อก act ใช้สำหรับแสดงอารมณ์เศร้า สุข หรือบ้าคลั่ง โดยให้หุ่นยนต์ 123 ทำตามลำดับการขับเคลื่อน การเลี้ยว และการส่งเสียง
แสดงอารมณ์ [เศร้า v]
พารามิเตอร์ |
คำอธิบาย |
|---|---|
อารมณ์ |
อารมณ์ที่จะแสดงออกมา
|
เมื่อเริ่มต้น :: hat events
[Act out a happy behavior.]
แสดงอารมณ์ [มีความสุข v]
การรับรู้#
หุ่นยนต์ 123 เสมือนยังสามารถเข้าถึงบล็อกการตรวจจับมาตรฐาน สมอง และ ระบบขับเคลื่อน ได้อีกด้วย
ไจโร#
หุ่นยนต์ 123 ใช้เซ็นเซอร์ไจโรสโคปในการตรวจจับแรงกระแทกฉับพลัน เช่น การชนกำแพงหรือวัตถุ
ตรวจพบการชน#
บล็อก Boolean detected crash จะรายงานว่าหุ่นยนต์ตรวจพบการกระแทกอย่างกะทันหันหรือไม่ เช่น การชนกำแพงหรือวัตถุอย่างแรงจนทำให้การเคลื่อนที่ของหุ่นยนต์เปลี่ยนไปอย่างรวดเร็ว
จริง — ตรวจพบการขัดข้อง
เท็จ — ไม่พบการขัดข้องใดๆ
<ตรวจพบการชน?>
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Back up after a crash.]
ขับ [ไปข้างหน้า v]
รอจนกว่า <ตรวจพบการชน?>
ขับ [ถอยหลัง v] เป็น (200) [มม. v]
ดวงตา#
ดวงตาพบวัตถุชิ้นหนึ่ง#
บล็อก Boolean ดวงตาตรวจพบวัตถุ จะรายงานว่าเซ็นเซอร์ดวงตาตรวจพบวัตถุในระยะหรือไม่
จริง — เซ็นเซอร์ตรวจจับดวงตาตรวจพบวัตถุ
เท็จ — เซ็นเซอร์ดวงตาไม่ตรวจจับวัตถุใดๆ
<ตาพบวัตถุ?>
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Stop driving after detecting an object.]
ตั้งไฟตา [เปิด v]
ขับ [ไปข้างหน้า v]
รอ (0.1) วินาที
รอจนกว่า <ตาพบวัตถุ?>
หยุดขับ
ดวงตาตรวจจับสี#
บล็อก Boolean ดวงตาตรวจจับสี จะรายงานว่าเซ็นเซอร์ดวงตาตรวจจับสีที่ระบุหรือไม่ โดยพิจารณาจากค่าเฉดสีที่ตรวจพบ
จริง – เซ็นเซอร์ดวงตาตรวจจับสีที่ระบุได้
เท็จ – เซ็นเซอร์ดวงตาไม่ตรวจพบสีที่ระบุ
เพื่อตรวจสอบค่าเฉดสีที่ตรวจจับได้โดยเซ็นเซอร์ตาอย่างแม่นยำ ให้ใช้บล็อกรายงาน eye hue
<ตาตรวจจับ [แดง v]?>
พารามิเตอร์ |
คำอธิบาย |
|---|---|
สี |
สีที่ต้องการตรวจจับ:
|
ตัวอย่าง
เมื่อเริ่มต้น
[Stop driving after detecting a green object.]
ตั้งไฟตา [เปิด v]
ขับ [ไปข้างหน้า v]
รอ (0.1) วินาที
รอจนกว่า <ตาตรวจจับ [เขียว v]?>
หยุดขับ
สีตา#
ส่วนรายงานค่าสีตาจะแสดงค่าสีที่ตรวจจับได้โดยเซ็นเซอร์ตาเป็นตัวเลขตั้งแต่ 0 ถึง 359 องศา
เฉดสี คือวิธีการอธิบายสีโดยใช้ตัวเลขรอบวงล้อสี

(เฉดสีตาในองศา)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Display if an object is pink.]
ทำตลอดไป
ล้างทุกแถว
ถ้า <[290] [math_less_than v] (เฉดสีตาในองศา) [math_less_than v] [350]> แล้ว
พิมพ์ [Pink!] ▶
รอ (0.1) วินาที
มิฉะนั้น
พิมพ์ [Not pink!] ▶
รอ (0.1) วินาที
วัตถุที่สว่างตา#
บล็อก Boolean eye bright object จะรายงานว่าวัตถุที่เซ็นเซอร์ตาตรวจพบนั้นสว่างหรือไม่
วัตถุจะถือว่าสว่างเมื่อสะท้อนความสว่างกลับไปยังเซ็นเซอร์ตรวจจับดวงตามากกว่า 70%
จริง — วัตถุที่ตรวจพบสะท้อนความสว่างมากกว่า 70%
เท็จ — วัตถุที่ตรวจพบมีความสว่าง 70% หรือน้อยกว่า
สามารถใช้ขั้นตอนนี้ก่อนตรวจสอบสี เพื่อให้แน่ใจว่าวัตถุสะท้อนแสงเพียงพอสำหรับเซ็นเซอร์ตรวจจับสีให้สามารถตรวจจับสีได้อย่างแม่นยำ
<ตาพบวัตถุสว่าง?>
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Display whether a detected object is bright.]
ตั้งกำลังไฟตาเป็น (100) %
ขับ [ไปข้างหน้า v]
รอจนกว่า <ตาพบวัตถุ?>
รอ (0.1) วินาที
ถ้า <ตาพบวัตถุสว่าง?> แล้ว
พิมพ์ [Bright object!] ▶
มิฉะนั้น
พิมพ์ [Object not bright.] ▶
ความสว่างของดวงตา#
ส่วนรายงาน ความสว่างของดวงตา จะรายงานปริมาณแสงที่สะท้อนกลับไปยังเซ็นเซอร์ดวงตาเป็นเปอร์เซ็นต์ตั้งแต่ 0% ถึง 100%
เปอร์เซ็นต์ที่สูงขึ้นหมายความว่ามีแสงสะท้อนกลับไปยังเซ็นเซอร์ตรวจจับดวงตามากขึ้น เปอร์เซ็นต์ที่ต่ำลงหมายความว่ามีแสงสะท้อนกลับน้อยลง
(ความสว่างตาใน %)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
บล็อกนี้ไม่มีพารามิเตอร์ |
ตัวอย่าง
เมื่อเริ่มต้น
[Display whether a detected object is bright.]
ตั้งกำลังไฟตาเป็น (100) %
ขับ [ไปข้างหน้า v]
รอจนกว่า <ตาพบวัตถุ?>
รอ (0.1) วินาที
ถ้า <(ความสว่างตาใน %) [math_less_than v] [70]> แล้ว
พิมพ์ [Object not bright.] ▶
มิฉะนั้น
พิมพ์ [Bright object!] ▶