คำอธิบาย
เซ็นเซอร์นี้รายงานระยะห่างระหว่างมันกับวัตถุทึบที่ใกล้ที่สุด (ช่วง 50 มม. - 1 ม.) โดยจะคำนวณระยะทางโดยใช้เวลาที่คลื่นอัลตราโซนิกกระเด็นออกจากวัตถุและกลับสู่เซ็นเซอร์
เซ็นเซอร์วัดระยะทำงานอย่างไร: การฟังระยะทาง
เซ็นเซอร์วัดระยะทางใช้หลักการเดียวกับอุปกรณ์โซนาร์ในการวัดเสียง อุปกรณ์นี้จะส่งคลื่นอัลตราซาวนด์ขนาดเล็กออกไปโดยใช้ตัวส่งสัญญาณที่ด้านหนึ่งของเซ็นเซอร์ จากนั้นจะจับเวลาว่าใช้เวลานานเท่าใดจึงจะได้ยินเสียงสะท้อนกลับมาที่ตัวรับสัญญาณที่อีกด้านหนึ่งของเซ็นเซอร์ เซ็นเซอร์จะคำนวณระยะทางโดยพิจารณาจากระยะเวลาที่คลื่นเสียงใช้ในการเดินทางไปกลับ จากนั้นเซ็นเซอร์วัดระยะทางจะคำนวณโดยใช้ความเร็วเสียงเพื่อบอกสมองของหุ่นยนต์ว่าวัตถุที่อยู่ใกล้ที่สุดอยู่ห่างออกไปเท่าใด
หากพื้นผิวไม่เรียบ เช่น ผนังโค้งหรือลูกบอล คลื่นอัลตราโซนิกจะไม่สะท้อนจากทุกส่วนอย่างเท่าเทียมกันหรือในเวลาเดียวกัน พื้นผิวที่อยู่ใกล้ที่สุดและมีขนาดใหญ่พอที่จะสะท้อนคลื่นกลับมาได้ในปริมาณที่ตรวจจับได้ จะเป็นตัวกำหนดระยะทางที่ตรวจจับได้ของวัตถุ
การใช้งานทั่วไปของเซ็นเซอร์วัดระยะ:
เซ็นเซอร์นี้สามารถตรวจจับได้ว่ามีวัตถุอยู่ด้านหน้าหรือไม่
เซ็นเซอร์นี้สามารถวัดระยะห่างระหว่างมันกับวัตถุได้
- หุ่นยนต์สามารถใช้เซ็นเซอร์นี้เพื่อขับเคลื่อนให้ห่างจากวัตถุในระยะหนึ่งได้ ชมภาพเคลื่อนไหวด้านล่างเพื่อดูการเปลี่ยนแปลงค่าระยะทางขณะที่หุ่นยนต์ขับเคลื่อนจนระยะทางต่ำกว่า 160 มม.
- หุ่นยนต์สามารถใช้เซ็นเซอร์นี้เพื่อขับเคลื่อนวัตถุโดยไม่ต้องสัมผัสมัน ดูภาพเคลื่อนไหวนี้เพื่อดูหุ่นยนต์สองตัวที่ใช้เซ็นเซอร์ระยะห่างเพื่อประสานการขับขี่
- ค่าที่ได้จากเซ็นเซอร์นี้สามารถใช้เพื่อปรับความเร็วของหุ่นยนต์ โดยขึ้นอยู่กับว่าหุ่นยนต์อยู่ใกล้หรือไกลจากวัตถุหรือพื้นผิว ดูแอนิเมชันนี้เพื่อดูหุ่นยนต์ปรับตามระยะห่างจากผนัง
การใช้เซ็นเซอร์วัดระยะกับหุ่นยนต์แข่งขัน
- หุ่นยนต์สามารถใช้เซ็นเซอร์วัดระยะเพื่อเริ่มต้นลำดับพฤติกรรมเมื่ออยู่ในตำแหน่งที่ถูกต้อง ตัวอย่างเช่น หุ่นยนต์สามารถขับเคลื่อนไปข้างหน้าจนกระทั่งตรวจพบว่ามันอยู่ห่างจากกำแพง 150 มม. จากนั้นหมุน 90 องศา แล้วปล่อยวัตถุเข้าไปในโซนให้คะแนน
- เซ็นเซอร์วัดระยะสามารถใช้เพื่อกระตุ้นการกระทำของหุ่นยนต์ เช่น การเก็บชิ้นส่วนเกม เมื่อตรวจพบวัตถุภายในระยะ
- หุ่นยนต์สามารถใช้ Distance Sensor เพื่อขับเคลื่อนไปยังวัตถุหรือพื้นผิวจนกว่าจะอยู่ในระยะที่กำหนดโดยไม่ต้องสัมผัส สามารถใช้เพื่อให้แน่ใจว่าหุ่นยนต์จะไม่กระแทกชิ้นส่วนเกม
- หุ่นยนต์สามารถใช้เซ็นเซอร์วัดระยะเพื่อขับออกจากวัตถุหรือพื้นผิวจนกว่าจะถึงระยะทางที่กำหนด ซึ่งสามารถใช้เพื่อหลีกเลี่ยงการชนกับหุ่นยนต์ตัวอื่นในสนาม
การใช้เซ็นเซอร์วัดระยะทางใน VEXcode IQ
การเพิ่มเซ็นเซอร์วัดระยะเป็นอุปกรณ์ใน VEXcode IQ
หากต้องการเขียนโค้ดเซ็นเซอร์วัดระยะทางใน VEXcode IQ คุณต้องกำหนดค่าเซ็นเซอร์วัดระยะทางก่อน ดูบทความนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดค่าเซ็นเซอร์ใน VEXcode IQ
เมื่อกำหนดค่าเซ็นเซอร์แล้ว คำสั่งจะปรากฏในกล่องเครื่องมือที่คุณสามารถใช้ในโครงการของคุณ
การเข้ารหัสเซ็นเซอร์วัดระยะในบล็อก
บล็อก <Object found> คือบล็อกผู้รายงานบูลีนที่รายงานเงื่อนไขว่าเป็นจริงหรือเท็จ บล็อกบูลีน เช่น บล็อก <Object found> จะพอดีกับบล็อกที่มีอินพุตหกเหลี่ยม (หกด้าน) สำหรับบล็อกอื่นๆ
บล็อกบูลีน <Object found> จะรายงานว่า 'จริง' หากเซ็นเซอร์ตรวจพบวัตถุ และ 'เท็จ' หากเซ็นเซอร์ไม่ตรวจจับ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับบล็อกบูลีน โปรดไปที่บทความ Help หรือบทความ Block Shapes and Meaning
ในตัวอย่างนี้ บล็อก <Object found> ใช้กับบล็อก [รอจนกระทั่ง] เพื่อทำให้หุ่นยนต์ขับเคลื่อนไปข้างหน้าจนกระทั่งเซ็นเซอร์ระยะตรวจพบวัตถุ เมื่อเซ็นเซอร์ตรวจพบวัตถุ หุ่นยนต์จะหยุดขับเคลื่อน ดังที่แสดงในภาพด้านบน
บล็อก (ระยะห่างจาก) รายงานระยะห่างของวัตถุที่ใกล้ที่สุดจากเซ็นเซอร์ระยะห่าง รายงานระบุว่ามีช่วงตั้งแต่ 24 มม. ถึง 1000 มม. หรือ 1 นิ้ว ถึง 40 นิ้ว บล็อก (ระยะห่างจาก) เป็นบล็อกรายงานที่ใช้ภายในบล็อกที่มีช่องว่างเป็นวงกลม
ในตัวอย่างนี้ บล็อก (ระยะห่างจาก) ใช้กับบล็อก [พิมพ์] เพื่อแสดงระยะห่างระหว่างเซ็นเซอร์ระยะห่างกับวัตถุบนหน้าจอ Brain บล็อก (ระยะทางจาก) จะแสดงภายในบล็อก <Less than> ซึ่งอยู่ภายในบล็อก {Wait until} ซึ่งจะทำให้หุ่นยนต์เคลื่อนที่จนกระทั่ง Distance Sensor ตรวจพบวัตถุที่อยู่ห่างออกไปน้อยกว่า 50 มิลลิเมตร แล้วจึงหยุดขับเคลื่อน สิ่งนี้แสดงในวิดีโอแรกด้านบน
การเข้ารหัสเซ็นเซอร์ระยะทางใน Python
:ในการเขียนโค้ดเซ็นเซอร์วัดระยะทาง VEX IQ (รุ่นที่ 1) ด้วย Python จะต้องเชื่อมต่อกับ VEX IQ (รุ่นที่ 2) Brain ก่อน ชิปประมวลผลกราฟิก VEX IQ (รุ่นที่ 1) ไม่รองรับภาษา Python
distance_7.is_object_detected()คำสั่ง Distance.is_object_detected จะรายงาน 'true' หากตรวจพบวัตถุ และ 'false' หากตรวจไม่พบวัตถุ
หมายเหตุ:ชื่อของเซ็นเซอร์วัดระยะที่ปรากฏในคำสั่งสอดคล้องกับชื่อที่กำหนดในการกำหนดค่า
|
| ในตัวอย่างนี้ ลู Whileมีเงื่อนไข not จะถูกใช้ หุ่นยนต์ขับเคลื่อนไปข้างหน้าจนกว่าเซ็นเซอร์ระยะทางจะตรวจพบวัตถุ เมื่อเซ็นเซอร์ตรวจจับวัตถุได้ หุ่นยนต์จะหยุดขับเคลื่อน ดังแสดงในโค้ด Python ด้านบน |
ระยะทาง_7.ระยะทาง(มม.)คำสั่ง Distance.distance รายงานระยะห่างของวัตถุที่ใกล้ที่สุดจากเซ็นเซอร์ระยะทาง รายงานระบุว่ามีช่วงตั้งแต่ 24 มม. ถึง 1000 มม. หรือ 1 นิ้ว ถึง 40 นิ้ว
|
|
ในตัวอย่างนี้ ลู While มีเงื่อนไข not จะถูกใช้กับคำสั่ง distance.is_object_detected เพื่อให้หุ่นยนต์ขับเคลื่อนไปข้างหน้าจนกว่าเซ็นเซอร์ ระยะทางจะตรวจพบวัตถุ เมื่อเซ็นเซอร์ตรวจจับวัตถุได้ หุ่นยนต์จะหยุดขับเคลื่อน ในตัวอย่างนี้ คำสั่ง distance.distance ถูกใช้ร่วมกับคำสั่ง brain.screen.print แสดงระยะห่างระหว่างเซ็นเซอร์วัดระยะทางกับวัตถุบนหน้าจอ Brain คำสั่ง distance.distance ยังแสดงอยู่ภายในลูป While ที่มีเงื่อนไข not ด้วย การทำงานนี้จะทำให้หุ่นยนต์ขับเคลื่อนต่อไปจนกว่าเซ็นเซอร์วัดระยะทางจะตรวจพบวัตถุที่อยู่ห่างออกไปน้อยกว่า 50 มิลลิเมตร จากนั้นจึงหยุดขับเคลื่อน ดังที่แสดงในวิดีโอแรกด้านบน |