บทที่ 3: การใช้เซ็นเซอร์และแม่เหล็กไฟฟ้าเพื่อหยิบดิสก์
การใช้เซ็นเซอร์ดวงตาลงกับแม่เหล็กไฟฟ้า
บทเรียนนี้จะใช้รายงานข้อเสนอแนะของเซ็นเซอร์เพื่อแก้ปัญหาความท้าทายเดียวกันกับบทเรียนที่ 2 หุ่นยนต์ VR จะหยิบและย้ายดิสก์สีน้ำเงินอันแรกไปยังเป้าหมายสีน้ำเงิน
- เริ่มโครงการใหม่ และเลือก Disk Mover Playground เมื่อได้รับแจ้ง

-
ตั้งชื่อ โครงการUnit8Lesson3

-
เพิ่มสี่ ความคิดเห็นในโครงการ เพิ่มความคิดเห็นสำหรับแต่ละขั้นตอนที่จำเป็นสำหรับหุ่นยนต์ VR เพื่อขับไปยังดิสก์แรกรับและส่งกลับไปยังเป้าหมายสีน้ำเงิน
def main (): #1. ไดรฟ์ไปยังดิสก์แรก #2 หยิบดิสก์ตัวแรกขึ้นมา #3 ขับไปสู่เป้าหมาย #4 วางดิสก์ลงในเป้าหมาย -
ลากหรือพิมพ์ลูปสัก พักที่ ไม่มี เงื่อนไขลงในพื้นที่ทำงานใต้ความคิดเห็นแรกเพื่อให้โปรเจกต์ของคุณมีลักษณะดังนี้:
def main (): #1. ไดรฟ์ไปยังดิสก์แรก ในขณะที่ไม่มีเงื่อนไข: รอ (5, มิลลิวินาที) #2 หยิบดิสก์ตัวแรกขึ้นมา #3 ขับไปสู่เป้าหมาย #4 วางดิสก์ลงในเป้าหมาย -
คำสั่ง down_eye.near_object จะรายงานค่า True เมื่อเซนเซอร์ Down Eye บนหุ่นยนต์ VR ตรวจพบดิสก์ที่มีสีบน Disk Mover Playground ดิสก์อยู่บนพื้นของสนามเด็กเล่นและไม่สามารถตรวจจับได้โดยเซ็นเซอร์ตรวจจับตาหน้า ดังนั้น เซ็นเซอร์ตรวจจับตาล่างจะตรวจจับดิสก์ ลากหรือพิมพ์คำสั่ง down_eye.near_object เป็นเงื่อนไขของลูป while ดังนั้นส่วนแรกของโปรเจ็กต์ของคุณจึงมีลักษณะดังนี้:
def main (): #1. ไดรฟ์ไปยังดิสก์แรก ในขณะที่ไม่ใช่ down_eye.near_object (): เดี๋ยวก่อน (5, มิลลิวินาที) -
คำสั่งภายใน ลูปขณะ ที่ จะทำงานเมื่อหุ่นยนต์ VR ตรวจไม่พบวัตถุ ในการเข้าถึงหนึ่งในดิสก์หุ่นยนต์ VR จะต้องขับเคลื่อนไปข้างหน้าจนกว่าจะตรวจพบดิสก์

-
ลากหรือพิมพ์คำสั่ง ไดรฟ์ ภายในลูป ในขณะที่ เพื่อให้ส่วนความคิดเห็นแรกของโปรเจ็กต์มีลักษณะดังนี้:
#1. ไดรฟ์ไปยังดิสก์แรก ในขณะที่ไม่ใช่ down_eye.near_object (): drivetrain.drive (ไปข้างหน้า) รอ (5, มิลลิวินาที) -
เมื่อตรวจพบดิสก์หุ่นยนต์ VR จะต้องหยุดขับเพื่อรับดิสก์ ลากหรือพิมพ์คำสั่ง หยุด นอกลูป ขณะที่ เพื่อให้ส่วนความคิดเห็นแรกของโปรเจ็กต์มีลักษณะดังนี้:
#1. ไดรฟ์ไปยังดิสก์แรก ในขณะที่ไม่ใช่ down_eye.near_object (): drivetrain.drive (FORWARD) wait (5, msec ) drivetrain.stop () - สังเกตว่าคำสั่ง drive และ wait จะมีการเยื้องเข้าไปภายใต้ส่วนหัวของ loop while ซึ่งหมายความว่าคำสั่งต่างๆ อยู่ภายใน loop เส้นสีเทายังสามารถช่วยระบุว่าคำสั่งใดที่อยู่เยื้องอย่างถูกต้องและอยู่ภายในลูป คำสั่ง หยุด อยู่ในแนวเดียวกับส่วนหัวของลูป ซึ่งหมายความว่าคำสั่ง หยุด จะอยู่ภายนอกลูป ตรวจสอบให้แน่ใจว่าคำสั่งถูกเยื้องอย่างถูกต้องหรือโครงการอาจไม่ทำงานตามที่คาดไว้
-
ตอนนี้ ให้สั่งให้ VR Robot หยิบดิสก์โดยใช้ Electromagnet โดยลากหรือพิมพ์คำสั่ง energize หลังจากความคิดเห็นที่สอง ดังนั้นส่วนที่สองของโปรเจกต์จะมีลักษณะดังนี้:
#2. หยิบแผ่นดิสก์แรก magnet.energize (BOOST) - เปิดหน้าต่างสนามเด็กเล่น หากยังไม่ได้เปิด ตรวจสอบให้แน่ใจว่า Disk Mover Playground เปิดขึ้นและดำเนินโครงการ
-
หุ่นยนต์ VR ขับเคลื่อนไปข้างหน้าจนกว่าดิสก์สีน้ำเงินตัวแรกจะถูกตรวจพบโดยเซ็นเซอร์ดวงตาลงหยุดการขับขี่และให้พลังงานแม่เหล็กไฟฟ้าเพื่อรับดิสก์

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

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