บล็อกเฉพาะสำหรับหุ่นยนต์#

การแนะนำ#

หุ่นยนต์ฮีโร่ โมบี้ ประกอบด้วยชุดมอเตอร์ เซ็นเซอร์แสง เซ็นเซอร์การหมุน และเซ็นเซอร์ระบบระบุตำแหน่งในเกม (GPS)

บล็อก VEXcode VR มาตรฐานทั้งหมดสามารถใช้งานได้ใน V5 21-22 Tipping Point Playground

ด้านล่างนี้คือรายการบล็อกเฉพาะสำหรับหุ่นยนต์ที่มีให้เลือกใช้งานทั้งหมด:

ระบบขับเคลื่อน – ทำให้หุ่นยนต์เคลื่อนที่และหมุนได้

การเคลื่อนไหว – ควบคุมและติดตามมอเตอร์ของหุ่นยนต์

การรับรู้ – ใช้ประโยชน์จากเซ็นเซอร์ต่างๆ ของหุ่นยนต์

ตัวอย่างในหน้านี้ใช้ตำแหน่งเริ่มต้นเริ่มต้นของ Playground ตามค่าเริ่มต้น

ระบบขับเคลื่อน#

ระบบขับเคลื่อนควบคุมการเคลื่อนที่และการเลี้ยวของหุ่นยนต์ VR ระบบขับเคลื่อนสามารถเคลื่อนที่ไปข้างหน้าหรือถอยหลัง เลี้ยวซ้ายหรือขวา เลี้ยวตามทิศทางต่างๆ และติดตามการหมุนของมันได้

การกระทำ#

ขับ#

บล็อก ขับเคลื่อน จะเคลื่อนหุ่นยนต์ไปข้างหน้าหรือถอยหลังอย่างไม่มีที่สิ้นสุด หุ่นยนต์จะเคลื่อนที่ต่อไปจนกว่าจะได้รับคำสั่งอื่น เช่น การเลี้ยวหรือการหยุด

ขับ [ไปข้างหน้า v]

พารามิเตอร์

คำอธิบาย

ทิศทาง

ทิศทางการเคลื่อนที่ของหุ่นยนต์: ไปข้างหน้า หรือ ถอยหลัง

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Drive forward, then stop.]
ขับ [ไปข้างหน้า v]
รอ (2) วินาที
หยุดขับ

ขับเพื่อ#

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

ขับ [ไปข้างหน้า v] เป็น (200) [มม. v] ▶

พารามิเตอร์

คำอธิบาย

ทิศทาง

ทิศทางการเคลื่อนที่ของหุ่นยนต์: ไปข้างหน้า หรือ ถอยหลัง

ระยะทาง

ระยะทางที่หุ่นยนต์ขับเคลื่อนไปได้ ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้

หน่วย

หน่วยวัดระยะทาง: มม. (มิลลิเมตร) หรือ นิ้ว

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Drive forward.]
ขับ [ไปข้างหน้า v] เป็น (500) [มม. v] ▶

เปลี่ยน#

บล็อก หมุน จะหมุนหุ่นยนต์ไปทางซ้ายหรือขวาอย่างไม่มีที่สิ้นสุด หุ่นยนต์จะหมุนต่อไปเรื่อยๆ จนกว่าจะได้รับคำสั่งอื่น เช่น การขับเคลื่อนหรือการหยุด

เลี้ยว [ขวา v]

พารามิเตอร์

คำอธิบาย

ทิศทาง

ทิศทางที่หุ่นยนต์หมุน: ซ้าย หรือ ขวา

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn right, then stop.]
เลี้ยว [ขวา v]
รอ (2) วินาที
หยุดขับ

เลี้ยวเพื่อ#

บล็อกคำสั่ง หมุน จะหมุนหุ่นยนต์ไปทางซ้ายหรือขวาตามจำนวนองศาที่กำหนด การหมุนจะสัมพันธ์กับตำแหน่งปัจจุบันของหุ่นยนต์ โครงการจะรอจนกว่าหุ่นยนต์จะหมุนเสร็จก่อนที่บล็อกถัดไปในลำดับจะเริ่มทำงาน

เลี้ยว [ขวา v] เป็น (90) องศา ▶

พารามิเตอร์

คำอธิบาย

ทิศทาง

ทิศทางที่หุ่นยนต์หมุน: ซ้าย หรือ ขวา

มุม

จำนวนองศาที่หุ่นยนต์หมุน ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn left, then turn around to the right.]
เลี้ยว [ซ้าย v] เป็น (90) องศา ▶
เลี้ยว [ขวา v] เป็น (180) องศา ▶

หันไปที่หัวข้อ#

ทิศทาง (Heading) คือทิศทางที่หุ่นยนต์หันหน้าไป โดยวัดเป็นองศา บล็อกคำสั่ง turn to heading จะหมุนหุ่นยนต์ให้หันหน้าไปในทิศทางที่กำหนด ตั้งแต่ -359 ถึง 359 องศา หุ่นยนต์จะหมุนไปในทิศทางที่สั้นที่สุดเพื่อไปยังทิศทางเป้าหมาย

ทิศทางเริ่มต้นคือ 0 องศา

โปรเจกต์นี้จะรอจนกว่าหุ่นยนต์จะหมุนเสร็จก่อนที่บล็อกถัดไปในลำดับจะเริ่มทำงาน

เลี้ยวไปทิศทาง (90) องศา ▶

พารามิเตอร์

คำอธิบาย

หัวข้อ

ทิศทางที่หุ่นยนต์ควรหันไปคือ ตั้งแต่ -359 ถึง 359 องศา

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn to face the cardinal directions.]
เลี้ยวไปทิศทาง (90) องศา ▶
รอ (2) วินาที
เลี้ยวไปทิศทาง (180) องศา ▶
รอ (2) วินาที
เลี้ยวไปทิศทาง (270) องศา ▶
รอ (2) วินาที
เลี้ยวไปทิศทาง (0) องศา ▶
รอ (2) วินาที

หมุนเพื่อหมุน#

บล็อก หมุน จะหมุนหุ่นยนต์ให้ไปในทิศทางการหมุนที่กำหนดไว้

การหมุนคือจำนวนองศาที่หุ่นยนต์หมุนไป ในตอนเริ่มต้นโครงการ ค่าการหมุนจะถูกตั้งไว้ที่ 0 องศา นอกจากนี้ยังสามารถตั้งค่าการหมุนได้โดยใช้บล็อก set drive rotation

ค่าการหมุนเป็นค่าสัมบูรณ์ ซึ่งหมายความว่าทิศทางการเลี้ยวขึ้นอยู่กับการหมุนปัจจุบันของหุ่นยนต์ การเลี้ยวขวาจะเพิ่มการหมุน และการเลี้ยวซ้ายจะลดการหมุน

ตัวอย่างเช่น ถ้าหุ่นยนต์เริ่มต้นที่ 0 องศา และคุณหมุนเป็น 720 องศา มันจะเลี้ยวขวา 2 ครั้ง จากนั้นถ้าคุณหมุนเป็น 360 องศา มันจะเลี้ยวซ้าย 1 ครั้ง เพราะ 360 น้อยกว่า 720

โปรเจกต์นี้จะรอจนกว่าหุ่นยนต์จะหมุนเสร็จก่อนที่บล็อกถัดไปในลำดับจะเริ่มทำงาน

เลี้ยวไปการหมุน (90) องศา ▶

พารามิเตอร์

คำอธิบาย

การหมุน

ค่ามุมการหมุน (หน่วยเป็นองศา) ที่หุ่นยนต์จะหมุนไป ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn left, then spin in a circle clockwise and face right.]
เลี้ยวไปการหมุน (-90) องศา ▶
รอ (2) วินาที
เลี้ยวไปการหมุน (450) องศา ▶

หยุดขับรถ#

บล็อก หยุดการเคลื่อนที่ จะหยุดการเคลื่อนที่ของหุ่นยนต์

หยุดขับ

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Drive forward, then stop.]
ขับ [ไปข้างหน้า v]
รอ [4] วินาที
หยุดขับ

การตั้งค่า#

ตั้งค่าความเร็วในการขับเคลื่อน#

บล็อก set drive velocity จะบอกหุ่นยนต์ว่าควรขับเคลื่อนด้วยความเร็วเท่าใด เปอร์เซ็นต์ที่สูงขึ้นจะทำให้หุ่นยนต์ขับเคลื่อนเร็วขึ้น และเปอร์เซ็นต์ที่ต่ำลงจะทำให้หุ่นยนต์ขับเคลื่อนช้าลง

ทุกโครงการเริ่มต้นด้วยการที่หุ่นยนต์ขับเคลื่อนด้วยความเร็ว 50% เป็นค่าเริ่มต้น

หมายเหตุ: ความเร็วที่สูงขึ้นจะทำให้หุ่นยนต์ขับเคลื่อนได้เร็วขึ้น แต่ความแม่นยำอาจลดลง ความเร็วที่ต่ำลงจะทำให้หุ่นยนต์ขับเคลื่อนได้ช้าลง แต่ความแม่นยำอาจเพิ่มขึ้น

ตั้งความเร็วขับเป็น (50) [% v]

พารามิเตอร์

คำอธิบาย

ความเร็ว

ความเร็วในการขับขี่สามารถปรับได้ตั้งแต่ 0% ถึง 100%

หน่วย

หน่วยความเร็ว: %

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Drive forward at the default velocity.]
ขับ [ไปข้างหน้า v] เป็น (100) [มม. v] ▶
รอ (1) วินาที
[Move slower.]
ตั้งความเร็วขับเป็น (20) [% v]
ขับ [ไปข้างหน้า v] เป็น (100) [มม. v] ▶
รอ (1) วินาที
[Move faster.]
ตั้งความเร็วขับเป็น (100) [% v]
ขับ [ไปข้างหน้า v] เป็น (100) [มม. v] ▶
รอ (1) วินาที

ตั้งความเร็วในการเลี้ยว#

บล็อก set turn velocity จะบอกหุ่นยนต์ว่าควรเลี้ยวเร็วแค่ไหน เปอร์เซ็นต์ที่สูงขึ้นจะทำให้หุ่นยนต์เลี้ยวเร็วขึ้น และเปอร์เซ็นต์ที่ต่ำลงจะทำให้หุ่นยนต์เลี้ยวช้าลง

ทุกโครงการเริ่มต้นด้วยการที่หุ่นยนต์หมุนด้วยความเร็ว 50% เป็นค่าเริ่มต้น

หมายเหตุ: ความเร็วที่สูงขึ้นจะทำให้หุ่นยนต์เลี้ยวได้เร็วขึ้น แต่ความแม่นยำอาจลดลง ความเร็วที่ต่ำลงจะทำให้หุ่นยนต์เลี้ยวได้ช้าลง แต่ความแม่นยำอาจเพิ่มขึ้น

ตั้งความเร็วเลี้ยวเป็น (50) [% v]

พารามิเตอร์

คำอธิบาย

ความเร็ว

ความเร็วในการหมุนตั้งแต่ 0% ถึง 100%

หน่วย

หน่วยความเร็ว: %

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn at default velocity.]
เลี้ยว [ขวา v] เป็น (100) องศา ▶
รอ (1) วินาที
[Turn slower.]
ตั้งความเร็วเลี้ยวเป็น (20)%
เลี้ยว [ขวา v] เป็น (100) องศา ▶
รอ (1) วินาที
[Turn faster.]
ตั้งความเร็วเลี้ยวเป็น (100)%
เลี้ยว [ขวา v] เป็น (100) องศา ▶
รอ (1) วินาที

ตั้งทิศทางการขับเคลื่อน#

ทิศทางการขับเคลื่อนคือทิศทางที่หุ่นยนต์หันหน้าไป โดยวัดเป็นองศา บล็อกคำสั่ง set drive heading จะเปลี่ยนทิศทางการขับเคลื่อนปัจจุบันของหุ่นยนต์เป็นค่าทิศทางใหม่

ตัวอย่างเช่น หากหุ่นยนต์หันไปทางขวา การตั้งค่าทิศทางเป็น 0 องศา จะทำให้ตำแหน่งที่หันไปทางขวานั้นกลายเป็น 0 องศาใหม่ จากนั้นหุ่นยนต์สามารถหันไปตำแหน่งอื่น ๆ ได้โดยอิงจากทิศทางใหม่นั้น

ตั้งทิศทางขับเป็น (0) องศา

พารามิเตอร์

คำอธิบาย

หัวข้อ

ค่าทิศทาง (หน่วยเป็นองศา) ที่จะตั้งค่าให้กับหุ่นยนต์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Turn to the left.]
ตั้งทิศทางขับเป็น (90) องศา
เลี้ยวไปทิศทาง (0) องศา ▶

ตั้งค่าการหมุนของไดรฟ์#

การหมุนคือจำนวนรอบที่หุ่นยนต์หมุน โดยวัดเป็นองศา ในตอนเริ่มต้นโครงการ ค่าการหมุนจะถูกตั้งไว้ที่ 0 องศา บล็อกคำสั่ง set drive rotation จะเปลี่ยนค่าการหมุนปัจจุบันของหุ่นยนต์เป็นค่าใหม่

ตัวอย่างเช่น หากหุ่นยนต์หมุนไปทางขวาครบสองรอบ ค่าการหมุนของมันจะเป็น 720 องศา การตั้งค่าการหมุนเป็น 0 องศาจะรีเซ็ตค่าการหมุนจาก 720 เป็น 0 องศา จากนั้นหุ่นยนต์สามารถหมุนได้ตามค่าการหมุนใหม่นั้น

ตั้งการหมุนขับเป็น (0) องศา

พารามิเตอร์

คำอธิบาย

การหมุน

ค่าการหมุน (หน่วยเป็นองศา) ที่จะตั้งค่าให้กับหุ่นยนต์ ค่านี้สามารถเป็นจำนวนเต็มหรือทศนิยมก็ได้

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Spin counterclockwise two times.]
ตั้งการหมุนขับเป็น (720) องศา
เลี้ยวไปการหมุน (0) องศา ▶

ตั้งค่าหมดเวลาไดรฟ์#

บล็อก set drive timeout ใน Stack จะกำหนดจำนวนวินาทีที่หุ่นยนต์จะพยายามทำการเคลื่อนไหวให้เสร็จสิ้น หากหุ่นยนต์ไม่สามารถทำการเคลื่อนไหวให้เสร็จภายในเวลาที่กำหนด มันจะหยุดพยายามและไปยังบล็อกถัดไปใน Stack ซึ่งจะช่วยป้องกันไม่ให้หุ่นยนต์ติดอยู่กับการเคลื่อนไหวใดๆ

ตั้งหมดเวลาขับเป็น (1) วินาที

พารามิเตอร์

คำอธิบาย

เวลา

จำนวนวินาทีที่หุ่นยนต์สามารถพยายามทำท่าทางให้เสร็จสิ้นได้ ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้

ตัวอย่าง

เมื่อเริ่มการทำงาน ระบบจะจำกัดเวลาในการขับเคลื่อนไว้ที่ 1 วินาที จากนั้นจะหมุน 90 องศา#
เมื่อเริ่มต้น :: hat events
[Drive forward for 1 second, then turn.]
ตั้งหมดเวลาขับเป็น (1) วินาที
ขับ [ไปข้างหน้า v] เป็น (25) [นิ้ว v] ▶
เลี้ยว [ขวา v] เป็น (90) องศา ▶

ค่านิยม#

การขับรถเสร็จสิ้นแล้ว#

บล็อก Boolean drive is done จะรายงานว่าหุ่นยนต์เคลื่อนที่เสร็จแล้วหรือไม่ สามารถใช้ข้อมูลนี้ในการควบคุมจังหวะเวลาของพฤติกรรมอื่นๆ โดยอิงจากการเคลื่อนที่ของหุ่นยนต์ได้

  • จริง — หุ่นยนต์เคลื่อนไหวเสร็จแล้ว

  • ไม่จริง — หุ่นยนต์ยังคงเคลื่อนที่อยู่

บล็อกนี้ทำงานร่วมกับบล็อกระบบขับเคลื่อนที่มีพารามิเตอร์ และอย่ารอ

<ขับเสร็จแล้ว?>

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Start spinning when the drive is complete.]
ขับ [ไปข้างหน้า v] เป็น (200) [มม. v] ◀ และไม่รอ
รอจนกว่า <ขับเสร็จแล้ว?>
เลี้ยว [ขวา v] เป็น (360) องศา ▶

ไดรฟ์กำลังเคลื่อนที่#

บล็อก Boolean กำลังเคลื่อนที่ จะรายงานว่าหุ่นยนต์กำลังเคลื่อนที่หรือไม่ ซึ่งสามารถนำไปใช้ควบคุมจังหวะเวลาของพฤติกรรมอื่นๆ โดยอิงจากการเคลื่อนที่ของหุ่นยนต์ได้

  • จริง — หุ่นยนต์กำลังเคลื่อนที่

  • เท็จ — หุ่นยนต์ไม่ได้เคลื่อนที่

บล็อกนี้ทำงานร่วมกับบล็อกระบบขับเคลื่อนที่มีพารามิเตอร์ และอย่ารอ

<กำลังขับอยู่?>

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Print that the robot is moving while it is still driving.]
ขับ [ไปข้างหน้า v] เป็น (200) [มม. v] ◀ และไม่รอ
ในขณะที่ <กำลังขับอยู่?>
พิมพ์ [Still Moving...] ▶
รอ (0.1) วินาที
ล้างหน้าจอ
fine
พิมพ์ [Done!] ▶

ทิศทางการขับขี่#

ทิศทางการเคลื่อนที่ของหุ่นยนต์นั้นวัดเป็นองศา บล็อกรายงานทิศทางการเคลื่อนที่ (Drive Heading Reporter Block) จะรายงานทิศทางการเคลื่อนที่ตั้งแต่ 0 ถึง 359.99 องศา

ทิศทางเริ่มต้นของหุ่นยนต์คือ 0 องศา

(ทิศทางขับในองศา)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Display the heading after turning.]
เลี้ยว [ขวา v] เป็น (450) องศา ▶
พิมพ์ (ทิศทางขับในองศา) บนหน้าจอ ◀ และตั้งเคอร์เซอร์ไปแถวถัดไป

การหมุนของไดรฟ์#

การหมุนคือจำนวนรอบที่หุ่นยนต์หมุนไป โดยวัดเป็นองศา ในตอนเริ่มต้นโครงการ ค่าการหมุนจะถูกตั้งไว้ที่ 0 องศา บล็อกรายงานการหมุนของมอเตอร์ขับเคลื่อน (drive rotation reporter block) จะรายงานค่าการหมุนปัจจุบันของหุ่นยนต์

การเลี้ยวขวาจะเพิ่มมุมการหมุน และการเลี้ยวซ้ายจะลดมุมการหมุน ตัวอย่างเช่น การเลี้ยวขวาครบสองรอบจะแสดงค่าการหมุน 720 องศา

(การหมุนขับในองศา)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Display the rotation after turning.]
เลี้ยว [ขวา v] เป็น (450) องศา ▶
พิมพ์ (การหมุนขับในองศา) บนหน้าจอ ◀ และตั้งเคอร์เซอร์ไปแถวถัดไป

ความเร็วในการขับเคลื่อน#

บล็อกรายงานความเร็วในการขับเคลื่อนจะรายงานว่าหุ่นยนต์กำลังขับเคลื่อนด้วยความเร็วเท่าใด

(ความเร็วขับใน [% v])

พารามิเตอร์

คำอธิบาย

หน่วย

หน่วยความเร็ว: %

ตัวอย่าง

เมื่อเริ่มต้น :: hat events
[Display the velocity after driving.]
ขับ [ไปข้างหน้า v] เป็น (200) [มม. v] ▶
พิมพ์ (ความเร็วขับใน [% v]) บนหน้าจอ ◀ และตั้งเคอร์เซอร์ไปแถวถัดไป

การเคลื่อนไหว#

Moby ใช้ชุดมอเตอร์ยกเพื่อยกและลดระดับงา เพื่อให้สามารถขนย้ายและนับคะแนนห่วงและประตูเคลื่อนที่ได้

การกระทำ#

มอเตอร์หมุน#

บล็อกตัวหมุนมอเตอร์จะหมุนกลุ่มมอเตอร์ลงหรือขึ้นไปเรื่อยๆ กลุ่มมอเตอร์จะหมุนต่อไปจนกว่าจะได้รับคำสั่งอื่น เช่น หมุนไปในทิศทางอื่นหรือหยุด

หมุน [ForkMotorGroup v] [ลง v]

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์สำหรับหมุน: ForkMotorGroup

ทิศทาง

ทิศทางการหมุนของกลุ่มมอเตอร์: ลง หรือ ขึ้น

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
หมุน [ForkMotorGroup v] [ขึ้น v]
รอ (1) วินาที
หยุด [ForkMotorGroup v]

มอเตอร์หมุนสำหรับ#

บล็อก หมุนมอเตอร์สำหรับ ในชุดซ้อนจะหมุนกลุ่มมอเตอร์เป็นระยะทางที่กำหนด การหมุนนั้นสัมพันธ์กับตำแหน่งปัจจุบันของกลุ่มมอเตอร์ โครงการจะรอจนกว่ากลุ่มมอเตอร์จะหมุนเสร็จก่อนที่บล็อกถัดไปในชุดซ้อนจะเริ่มทำงาน

หมุน [ForkMotorGroup v] [ขึ้น v] เป็น (90) [องศา v] ▶

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์สำหรับหมุน: ForkMotorGroup

ทิศทาง

ทิศทางการหมุนของกลุ่มมอเตอร์: ลง หรือ ขึ้น

ระยะทาง

ระยะทางที่กลุ่มมอเตอร์หมุน องศา ใช้จำนวนเต็ม รอบ สามารถใช้ได้ทั้งจำนวนเต็มหรือทศนิยม

หน่วย

หน่วยวัดระยะทาง: องศา หรือ รอบ

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
หมุน [ForkMotorGroup v] [ขึ้น v] เป็น [1] [รอบ v] ▶

หมุนมอเตอร์ไปยังตำแหน่งที่กำหนด#

บล็อก หมุนมอเตอร์ไปยังตำแหน่ง จะหมุนกลุ่มมอเตอร์ไปยังตำแหน่งที่กำหนด

ตำแหน่งของกลุ่มมอเตอร์คือระยะที่หมุนไป โดยวัดเป็น องศา หรือ รอบ หนึ่ง รอบ เท่ากับ 360 องศา ในตอนเริ่มต้นโครงการ ตำแหน่งของกลุ่มมอเตอร์จะถูกตั้งค่าเป็น 0 องศา นอกจากนี้ยังสามารถตั้งค่าตำแหน่งของกลุ่มมอเตอร์ได้โดยใช้บล็อก set motor position

ค่าตำแหน่งเป็นค่าสัมบูรณ์ ซึ่งหมายความว่าทิศทางการหมุนขึ้นอยู่กับตำแหน่งปัจจุบันของกลุ่มมอเตอร์

ตัวอย่างเช่น ถ้ากลุ่มมอเตอร์เริ่มต้นที่ 0 องศาและหมุนไปที่ตำแหน่ง 720 องศา มันจะหมุนไปข้างหน้าสองรอบ ถ้ามันหมุนไปที่ตำแหน่ง 360 องศา มันจะหมุนถอยหลังหนึ่งรอบ เพราะ 360 น้อยกว่า 720

หมุน [ForkMotorGroup v] ไปตำแหน่ง (90) [องศา v] ▶

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์สำหรับหมุน: ForkMotorGroup

ตำแหน่ง

ค่าตำแหน่งที่กลุ่มมอเตอร์จะหมุนไป องศา ใช้จำนวนเต็ม รอบ สามารถใช้ได้ทั้งจำนวนเต็มหรือทศนิยม

หน่วย

หน่วยวัดตำแหน่ง: องศา หรือ รอบ

และอย่ารอช้า

เลือกไอคอนลูกศร ( ▶ ) เพื่อขยายบล็อกให้แสดงข้อความว่า และไม่ต้องรอ เพื่อให้บล็อกถัดไปในลำดับทำงานทันที

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
หมุน [ForkMotorGroup v] ไปตำแหน่ง [270] [องศา v] ▶

หยุดมอเตอร์#

บล็อก หยุดมอเตอร์ จะหยุดกลุ่มมอเตอร์ที่เลือกไว้

หยุด [ForkMotorGroup v]

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่ต้องการหยุด: ForkMotorGroup

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
หมุน [ForkMotorGroup v] [ขึ้น v]
รอ (1) วินาที
หยุด [ForkMotorGroup v]

การตั้งค่า#

ตั้งค่าความเร็วของมอเตอร์#

บล็อก ตั้งค่าความเร็วของมอเตอร์ จะบอกกลุ่มมอเตอร์ว่าควรหมุนเร็วแค่ไหน เปอร์เซ็นต์ที่สูงขึ้นจะทำให้กลุ่มมอเตอร์หมุนเร็วขึ้น และเปอร์เซ็นต์ที่ต่ำลงจะทำให้กลุ่มมอเตอร์หมุนช้าลง

ทุกโปรเจกต์เริ่มต้นด้วยการที่กลุ่มมอเตอร์แต่ละกลุ่มหมุนด้วยความเร็ว 50% เป็นค่าเริ่มต้น

หมายเหตุ: ความเร็วที่สูงขึ้นจะทำให้กลุ่มมอเตอร์หมุนเร็วขึ้น แต่ความแม่นยำอาจลดลง ความเร็วที่ต่ำลงจะทำให้กลุ่มมอเตอร์หมุนช้าลง แต่ความแม่นยำอาจเพิ่มขึ้น

ตั้งความเร็ว [ForkMotorGroup v] เป็น [50] [% v]

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์สำหรับตั้งค่าความเร็ว: ForkMotorGroup

ความเร็ว

ความเร็วรอบของกลุ่มมอเตอร์ เปอร์เซ็นต์ ใช้ตัวเลขจำนวนเต็มตั้งแต่ 0% ถึง 100%

หน่วย

หน่วยความเร็ว: %

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
ตั้งความเร็ว [ForkMotorGroup v] เป็น [75] [% v]
หมุน [ForkMotorGroup v] [ขึ้น v] เป็น [1] [รอบ v] ▶

ตั้งค่าเวลาหยุดทำงานของมอเตอร์#

บล็อก set motor timeout จะกำหนดเวลาที่กลุ่มมอเตอร์จะพยายามเคลื่อนไหวให้เสร็จสิ้น หากกลุ่มมอเตอร์ไม่สามารถเคลื่อนไหวให้เสร็จสิ้นภายในเวลาที่กำหนด มันจะหยุดพยายามและไปยังบล็อกถัดไปในลำดับ ซึ่งจะช่วยป้องกันไม่ให้กลุ่มมอเตอร์ติดอยู่กับการเคลื่อนไหวใดๆ

ตั้งหมดเวลา [ForkMotorGroup v] เป็น [1] วินาที

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่จะตั้งค่าหมดเวลา: ForkMotorGroup

เวลา

จำนวนวินาทีที่กลุ่มมอเตอร์สามารถพยายามทำการเคลื่อนไหวให้เสร็จสิ้นได้ ค่านี้อาจเป็นจำนวนเต็มหรือทศนิยมก็ได้

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
ตั้งหมดเวลา [ForkMotorGroup v] เป็น [2] วินาที
หมุน [ForkMotorGroup v] [ขึ้น v] เป็น [3] [รอบ v] ▶

ตำแหน่ง#

ตำแหน่งมอเตอร์#

ตำแหน่งของกลุ่มมอเตอร์คือระยะการหมุน ซึ่งวัดเป็น องศา หรือ รอบ หนึ่ง รอบ เท่ากับ 360 องศา บล็อกรายงาน ตำแหน่งมอเตอร์ จะรายงานตำแหน่งปัจจุบันของกลุ่มมอเตอร์

ในตอนเริ่มต้นโครงการ ตำแหน่งของกลุ่มมอเตอร์จะถูกตั้งไว้ที่ 0 องศา หากกลุ่มมอเตอร์หมุนไปข้างหน้าครบหนึ่งรอบ ตำแหน่งจะเปลี่ยนเป็น 360 องศา หรือ 1 รอบ หากกลุ่มมอเตอร์หมุนไปในทิศทางตรงกันข้าม ตำแหน่งจะเปลี่ยนเป็นค่าลบ

(ตำแหน่ง [ForkMotorGroup v] ใน [องศา v])

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่จะรายงานตำแหน่ง: ForkMotorGroup

หน่วย

หน่วยที่ใช้รายงานตำแหน่งมอเตอร์เป็น: องศา หรือ รอบ

ตั้งตำแหน่งมอเตอร์#

ตำแหน่งของกลุ่มมอเตอร์คือระยะการหมุน ซึ่งวัดเป็น องศา หรือ รอบ หนึ่ง รอบ เท่ากับ 360 องศา บล็อก ตั้งค่าตำแหน่งมอเตอร์ จะเปลี่ยนตำแหน่งปัจจุบันของกลุ่มมอเตอร์เป็นค่าใหม่

ตัวอย่างเช่น หากกลุ่มมอเตอร์หมุนไปที่ 180 องศา การตั้งตำแหน่งเป็น 0 องศาจะรีเซ็ตตำแหน่งนั้นจาก 180 องศาเป็น 0 องศา จากนั้นกลุ่มมอเตอร์จะสามารถหมุนไปยังตำแหน่งต่างๆ ตามค่าใหม่นั้นได้

ตั้งตำแหน่ง [ForkMotorGroup v] เป็น (0) [องศา v]

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์สำหรับตั้งตำแหน่ง: ForkMotorGroup

ตำแหน่ง

ค่าตำแหน่งที่จะตั้งสำหรับกลุ่มมอเตอร์ องศา ใช้จำนวนเต็ม รอบ สามารถใช้ได้ทั้งจำนวนเต็มหรือทศนิยม

หน่วย

หน่วยวัดตำแหน่ง: องศา หรือ รอบ

ตัวอย่าง

เมื่อเริ่มต้น
[Spin the Fork Motor Group forward and then stop.]
ตั้งตำแหน่ง [ForkMotorGroup v] เป็น [90] [องศา v]
หมุน [ForkMotorGroup v] ไปตำแหน่ง [0] [องศา v] ▶

ค่านิยม#

มอเตอร์ทำงานเสร็จแล้ว#

บล็อก Boolean motor is done จะรายงานว่ากลุ่มมอเตอร์เคลื่อนไหวเสร็จแล้วหรือไม่ สามารถใช้ข้อมูลนี้เพื่อควบคุมจังหวะเวลาของพฤติกรรมอื่นๆ โดยอิงจากการเคลื่อนไหวของกลุ่มมอเตอร์ได้

  • จริง — กลุ่มมอเตอร์หยุดเคลื่อนที่แล้ว

  • เท็จ — กลุ่มมอเตอร์ยังคงเคลื่อนที่อยู่

บล็อกนี้ทำงานร่วมกับบล็อกการเคลื่อนไหวต่อไปนี้ที่มีพารามิเตอร์ และไม่ต้องรอ: หมุนมอเตอร์เป็นเวลา และ หมุนมอเตอร์ไปยังตำแหน่ง

<[ForkMotorGroup v] เสร็จแล้ว?>

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่ใช้รายงานว่าการเคลื่อนที่เสร็จสิ้นแล้วหรือไม่: ForkMotorGroup

มอเตอร์กำลังหมุน#

บล็อก Boolean มอเตอร์กำลังหมุน จะรายงานว่ากลุ่มมอเตอร์กำลังหมุนอยู่หรือไม่ ข้อมูลนี้สามารถนำไปใช้ควบคุมจังหวะเวลาของพฤติกรรมอื่นๆ โดยอิงจากการเคลื่อนไหวของกลุ่มมอเตอร์ได้

  • จริง — กลุ่มมอเตอร์กำลังหมุนอยู่

  • เท็จ — กลุ่มมอเตอร์ไม่หมุน

บล็อกนี้ทำงานร่วมกับบล็อกการเคลื่อนไหวต่อไปนี้ที่มีพารามิเตอร์ และไม่ต้องรอ: หมุนมอเตอร์เป็นเวลา และ หมุนมอเตอร์ไปยังตำแหน่ง

<[ForkMotorGroup v] กำลังหมุน?>

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่ใช้รายงานว่ากำลังหมุนอยู่หรือไม่: ForkMotorGroup

ตัวอย่าง

เมื่อเริ่มต้น
[Take a ring onto the Forks.]
หมุน [ForkMotorGroup v] [ขึ้น v] เป็น [90] [องศา v] ◀ และไม่รอ
ในขณะที่ <[ForkMotorGroup v] กำลังหมุน?>
หมุน [ForkMotorGroup v] ไปตำแหน่ง [1000] [องศา v] ◀ และไม่รอ
fine

ความเร็วของมอเตอร์#

บล็อกรายงาน ความเร็วของมอเตอร์ จะรายงานความเร็วในการหมุนของกลุ่มมอเตอร์เป็นเปอร์เซ็นต์ ตั้งแต่ -100% ถึง 100%

(ความเร็ว [ForkMotorGroup v] ใน [% v] :: custom-motion)

พารามิเตอร์

คำอธิบาย

มอเตอร์

กลุ่มมอเตอร์ที่ใช้รายงานความเร็ว: ForkMotorGroup

หน่วย

หน่วยที่ใช้รายงานความเร็วของมอเตอร์: %

การรับรู้#

ออปติคอล#

ตรวจพบวัตถุด้วยแสง#

บล็อก Boolean ตรวจพบวัตถุด้วยระบบออปติคอล จะรายงานว่าเซ็นเซอร์ออปติคอลตรวจพบวัตถุภายในระยะหรือไม่

  • จริง — เซ็นเซอร์แสงตรวจจับวัตถุได้

  • เท็จ — เซ็นเซอร์แสงไม่ตรวจจับวัตถุใดๆ

<[Optical v] พบวัตถุ?>

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

การตรวจจับสีด้วยระบบออปติคอล#

บล็อกบูลีน การตรวจจับสีด้วยแสง จะรายงานว่าเซ็นเซอร์แสงตรวจจับสีที่ระบุหรือไม่ โดยพิจารณาจากค่าเฉดสีที่ตรวจพบ

  • จริง – เซ็นเซอร์ตรวจจับสีที่ระบุได้

  • เท็จ – เซ็นเซอร์ไม่ตรวจจับสีที่ระบุ

หมายเหตุ: เซ็นเซอร์แสงจะมองหาช่วงเฉดสีที่ตรงกับสีที่ระบุ สำหรับการตรวจจับช่วงเฉดสีที่เฉพาะเจาะจง โปรดดูที่บล็อก เฉดสีแสง

<[Optical v] ตรวจจับ [แดง v]?>

พารามิเตอร์

คำอธิบาย

สี

ควรตรวจสอบสีใด:

  • สีแดง – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 340° - 20°
  • สีเขียว – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 80° - 140°
  • สีน้ำเงิน – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 200° - 240°
  • สีเหลือง – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 40° - 60°
  • สีส้ม – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 20° - 40°
  • สีม่วง – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 240° - 280°
  • สีฟ้าอมเขียว – ค่าเฉดสีที่ตรวจพบอยู่ระหว่าง 140° - 200°

ความสว่างเชิงแสง#

ส่วนรายงาน ความสว่างเชิงแสง จะรายงานปริมาณแสงที่สะท้อนกลับไปยังเซ็นเซอร์เชิงแสง โดยแสดงเป็นเปอร์เซ็นต์ตั้งแต่ 0% ถึง 100%

เปอร์เซ็นต์ที่สูงขึ้นหมายความว่ามีแสงสะท้อนกลับไปยังเซ็นเซอร์แสงมากขึ้น เปอร์เซ็นต์ที่ต่ำลงหมายความว่ามีแสงสะท้อนกลับน้อยลง

(ความสว่าง [Optical v] ใน %)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

สีเชิงแสง#

บล็อกรายงานค่าสี Optical hue จะรายงานค่าสีที่ตรวจจับได้โดยเซ็นเซอร์แสงเป็นตัวเลขตั้งแต่ 0 ถึง 359 องศา

เฉดสี คือวิธีการอธิบายสีโดยใช้ตัวเลขรอบวงล้อสี

วงล้อสีวงกลมที่แสดงเฉดสีครบทุกเฉดพร้อมระบุค่าองศาไว้รอบขอบ โดยเพิ่มขึ้นทีละ 30 องศาจาก 0° ที่ด้านบนถึง 360°

(เฉดสี [Optical v] ในองศา)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

เมื่อออปติคอล#

บล็อก when Optical จะเรียกใช้ชุดบล็อกที่เชื่อมต่ออยู่ทุกครั้งที่เซ็นเซอร์แสงตรวจจับหรือสูญเสียวัตถุ

เมื่อ [Optical v] [ตรวจจับ v] วัตถุ

พารามิเตอร์

คำอธิบาย

สถานะ

เมื่อลำดับบล็อกที่แนบมาทำงาน: ตรวจจับ จะทำงานเมื่อตรวจพบวัตถุที่ยังไม่ถูกตรวจพบ ในขณะที่ สูญเสีย จะทำงานเมื่อไม่พบวัตถุที่ถูกตรวจพบอีกต่อไป

การหมุน#

ตั้งตำแหน่งเซ็นเซอร์การหมุน#

บล็อก ตั้งค่าตำแหน่งเซ็นเซอร์การหมุน จะตั้งค่าตำแหน่งปัจจุบันของเซ็นเซอร์การหมุนเป็นค่าในหน่วยองศา

ตั้งตำแหน่ง [Rotation v] เป็น [0] องศา

พารามิเตอร์

คำอธิบาย

ตำแหน่ง

ตำแหน่งที่จะตั้งค่าเซ็นเซอร์วัดการหมุน

มุมเซ็นเซอร์การหมุน#

บล็อก มุมเซ็นเซอร์การหมุน จะส่งคืนค่ามุมปัจจุบันของเซ็นเซอร์ ซึ่งอยู่ระหว่าง 0 ถึง 359.99 องศา

(มุม [Rotation v] ในองศา)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์

ตำแหน่งเซ็นเซอร์การหมุน#

บล็อก ตำแหน่งเซ็นเซอร์การหมุน จะส่งคืนค่าตำแหน่งการหมุนทั้งหมดในหน่วยองศาหรือจำนวนรอบ

(ตำแหน่ง [Rotation v] ใน [องศา v] :: custom-sensing)

พารามิเตอร์

คำอธิบาย

หน่วย

หน่วยการหมุน: องศา หรือ รอบ

จีเอส#

ตำแหน่ง GPS#

บล็อก ตำแหน่ง GPS จะส่งคืนค่าชดเชยตำแหน่งของจุดอ้างอิงการเลี้ยวของหุ่นยนต์จากจุดศูนย์กลางของสนามโดยใช้เซ็นเซอร์ GPS (Game Positioning System™)

(ตำแหน่ง [GPS v] [X v] ใน [มม. v])

พารามิเตอร์

คำอธิบาย

แกน

ควรรายงานแกนใด:

  • X
  • Y

หน่วย

หน่วยที่ใช้แสดงตำแหน่ง: มม. หรือ นิ้ว

ทิศทาง GPS#

บล็อก GPS heading จะส่งคืนค่าทิศทางที่หุ่นยนต์กำลังหันหน้าไป โดยอิงจากค่าที่อ่านได้จากเซ็นเซอร์ GPS (Game Positioning System™) ของ VEX GPS Field Code ตั้งแต่ 0.00 ถึง 359.99 องศา

(ทิศทาง [GPS v] ในองศา)

พารามิเตอร์

คำอธิบาย

บล็อกนี้ไม่มีพารามิเตอร์