Skip to main content

บทที่ 1: เซนเซอร์ตรวจจับดวงตา

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

ผลการเรียนรู้

  • ระบุว่าหุ่นยนต์ VR มีเซ็นเซอร์ตาสองตัวตัวหนึ่งหันหน้าไปข้างหน้าและอีกตัวหันหน้าลง
  • ระบุว่าเซ็นเซอร์ตรวจจับดวงตาสามารถตรวจจับได้ว่ามีวัตถุอยู่หรือไม่และสีของวัตถุนั้น (สีแดง, สีเขียว, สีฟ้า, ไม่มี)
  • ระบุว่าคำสั่ง front_eye.near_object และ down_eye.near_object ส่งกลับค่าบูลีน ซึ่งรายงานค่า True เมื่อ Front Eye Sensor หรือ Down Eye Sensor อยู่ใกล้กับวัตถุ และค่า False เมื่อไม่อยู่ใกล้กับวัตถุ
  • ระบุว่าคำสั่ง front_eye.detect และ down_eye.detect ส่งคืนค่าบูลีน ซึ่งรายงานค่า True เมื่อ Front Eye Sensor หรือ Down Eye Sensor ตรวจพบสีที่เลือก และค่า False เมื่อตรวจพบสีที่ต่างจากสีที่เลือก
  • อธิบายว่าทำไมโครงการจึงใช้เซ็นเซอร์ตาด้านหน้าหรือด้านล่าง Describe why a project would use the Front or Down Eye Sensor.

เซ็นเซอร์ตรวจจับดวงตา

เซ็นเซอร์ตรวจจับดวงตาสามารถตรวจจับได้ว่ามีวัตถุอยู่หรือไม่และถ้ามีให้ตรวจจับสีของวัตถุ (สีแดง, สีเขียว, สีฟ้า, ไม่มี) สิ่งนี้สามารถใช้เพื่อตรวจจับวัตถุเช่นดิสก์สี บนสนามเด็กเล่น

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

มุมมองด้านหน้าของหุ่นยนต์ VR ที่มีเซ็นเซอร์ตรวจจับดวงตาที่กึ่งกลางด้านหน้าของหุ่นยนต์ชี้ไปที่ลูกศรที่ติดฉลากเซ็นเซอร์ดวงตาด้านหน้า เซ็นเซอร์ตรวจจับดวงตาอีกตัวหนึ่งถูกเรียกออกมาที่กึ่งกลางด้านล่างของหุ่นยนต์ที่มีป้ายกำกับว่า Down Eye

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับเซ็นเซอร์ตาและการใช้งานทั่วไปสำหรับเซ็นเซอร์ตาใน โครงการ VEXcode VR Python โปรด ดูบทความนี้

ในหน่วยนี้คุณจะใช้เซ็นเซอร์ตรวจจับดวงตาด้านหน้าเพื่อตรวจจับวัตถุด้านหน้าของหุ่นยนต์ VR และสี เช่นเดียวกับเซ็นเซอร์อื่นๆที่คุณได้เรียนรู้ในหน่วยก่อนหน้านี้ข้อมูลจาก Eye Sensor สามารถใช้ในโครงการเพื่อตัดสินใจ VR Robot ได้ 

เซ็นเซอร์ตรวจจับดวงตาใกล้กับคำสั่งวัตถุ

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

คำสั่ง near_object รายงานว่าเซ็นเซอร์ตาอยู่ใกล้กับวัตถุเพียงพอที่จะตรวจจับสี (แดง เขียว น้ำเงิน ไม่มีสี) หรือไม่ Each Eye Sensor on the VR Robot has its own near_object command that will return Boolean values of True or False, depending on whether an object is detected by the sensor.

front_eye.near_object ()
down_eye.near_object ()
  • คำสั่ง front_eye.near_object และ down_eye.near_object รายงาน เป็นจริง เมื่อเซ็นเซอร์ตาด้านหน้าหรือเซ็นเซอร์ตาด้านล่างอยู่ใกล้กับวัตถุเพียงพอที่จะตรวจจับสีของวัตถุนั้นได้
  • คำสั่ง front_eye.near_object และ down_eye.near_object จะรายงานว่า เป็นเท็จ หากเซ็นเซอร์ตรวจจับตาด้านหน้า หรือเซ็นเซอร์ตรวจจับตาด้านล่าง ไม่อยู่ใกล้กับวัตถุมากพอที่จะตรวจจับสีได้

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

คำสั่งตรวจจับเซนเซอร์ตา

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

ตั้งค่าพารามิเตอร์เป็นสีที่จะตรวจพบ คำสั่ง ตรวจจับ สามารถยอมรับสี 'แดง', 'น้ำเงิน', 'เขียว' หรือ 'ไม่มี' สีที่ตรวจจับได้ พารามิเตอร์ 'ไม่มี' ใช้เพื่อรายงานสีใดๆที่ไม่ใช่สีแดงสีน้ำเงินหรือสีเขียว

front_eye.detect (RED)
front_eye.detect (BLUE)
front_eye.detect (GREEN)
front_eye.detect (NONE)

down_eye.detect (RED)
down_eye.detect (BLUE)
down_eye.detect (GREEN)
down_eye.detect (NONE)
  • คำสั่ง front_eye.detect และ down_eye.detect จะรายงาน True เมื่อเซ็นเซอร์ Front Eye หรือ Down Eye ตรวจจับสีเฉพาะในพารามิเตอร์
  • คำสั่ง front_eye.detect และ down_eye.detect จะรายงาน False เมื่อเซ็นเซอร์ Front หรือ Down Eye ไม่ตรวจจับสีที่ระบุในพารามิเตอร์

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

เลือกปุ่ม ถัดไป เพื่อดำเนินการกับบทเรียนส่วนที่เหลือนี้ต่อไป