คำอธิบาย
เซ็นเซอร์นี้รายงานระยะห่างระหว่างมันกับวัตถุทึบที่ใกล้ที่สุด (ช่วง 50 มม. - 1 ม.) โดยจะคำนวณระยะทางโดยใช้เวลาที่คลื่นอัลตราโซนิกกระเด็นออกจากวัตถุและกลับสู่เซ็นเซอร์
เซ็นเซอร์วัดระยะทำงานอย่างไร: การฟังระยะทาง
เซ็นเซอร์วัดระยะใช้หลักการเดียวกันกับอุปกรณ์โซนาร์ในการวัดเสียง โดยจะส่งพัลส์อัลตราซาวนด์เล็กๆ ออกไปพร้อมกับตัวส่งสัญญาณที่ด้านหนึ่งของเซนเซอร์ จากนั้นจะจับเวลาว่าต้องใช้เวลานานเท่าใดจึงจะได้ยินเสียงสะท้อนกลับไปยังเครื่องรับที่อีกด้านหนึ่งของเซนเซอร์ เซ็นเซอร์จะคำนวณระยะทางตามระยะเวลาที่พัลส์เสียงใช้ในการเดินทางไปกลับ เซ็นเซอร์วัดระยะจะทำการคำนวณตามความเร็วของเสียงเพื่อบอกสมองของหุ่นยนต์ว่าวัตถุที่ใกล้ที่สุดอยู่ไกลแค่ไหน
หากพื้นผิวไม่เรียบเหมือนผนังโค้งหรือลูกบอล คลื่นอัลตราโซนิกจะไม่สะท้อนออกจากทุกส่วนเท่ากันหรือพร้อมกัน พื้นผิวที่ใกล้ที่สุดที่มีขนาดใหญ่พอที่จะสะท้อนกลับปริมาณคลื่นที่ตรวจพบได้จะเป็นตัวกำหนดระยะห่างที่ตรวจพบของวัตถุ
การใช้งานทั่วไปของเซ็นเซอร์วัดระยะ:
เซ็นเซอร์นี้สามารถตรวจจับได้ว่ามีวัตถุอยู่ด้านหน้าหรือไม่
เซ็นเซอร์นี้สามารถวัดระยะห่างระหว่างมันกับวัตถุได้
- หุ่นยนต์สามารถใช้เซ็นเซอร์นี้เพื่อขับเคลื่อนให้ห่างจากวัตถุในระยะหนึ่งได้
- หุ่นยนต์สามารถใช้เซ็นเซอร์นี้เพื่อขับเคลื่อนวัตถุโดยไม่ต้องสัมผัสมัน
- ค่าที่ได้จากเซ็นเซอร์นี้สามารถใช้เพื่อปรับความเร็วของหุ่นยนต์ โดยขึ้นอยู่กับว่าหุ่นยนต์อยู่ใกล้หรือไกลจากวัตถุหรือพื้นผิว
การใช้เซ็นเซอร์วัดระยะกับหุ่นยนต์แข่งขัน
- หุ่นยนต์สามารถใช้เซ็นเซอร์วัดระยะเพื่อเริ่มต้นลำดับพฤติกรรมเมื่ออยู่ในตำแหน่งที่ถูกต้อง ตัวอย่างเช่น หุ่นยนต์สามารถขับเคลื่อนไปข้างหน้าจนกระทั่งตรวจพบว่ามันอยู่ห่างจากกำแพง 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 มม. ถึง 1,000 มม. หรือ 1 นิ้วถึง 40 นิ้ว บล็อก (ระยะห่างจาก) คือบล็อกนักข่าวที่ใช้ภายในบล็อกที่มีช่องว่างเป็นวงกลม
ในตัวอย่างนี้ บล็อก (ระยะห่างจาก) ใช้กับบล็อก [พิมพ์] เพื่อแสดงระยะห่างระหว่างเซ็นเซอร์ระยะห่างกับวัตถุบนหน้าจอ Brain บล็อก (ระยะทางจาก) จะแสดงภายในบล็อก <Less than> ซึ่งอยู่ภายในบล็อก {Wait until} ซึ่งจะทำให้หุ่นยนต์เคลื่อนที่จนกระทั่ง Distance Sensor ตรวจพบวัตถุที่อยู่ห่างออกไปน้อยกว่า 50 มิลลิเมตร แล้วจึงหยุดขับเคลื่อน สิ่งนี้แสดงในวิดีโอแรกด้านบน
การเข้ารหัสเซ็นเซอร์ระยะทางใน Python
หมายเหตุ:หากต้องการเขียนโค้ดเซ็นเซอร์วัดระยะ VEX IQ (รุ่นที่ 1) ใน Python จะต้องเชื่อมต่อกับสมอง VEX IQ (รุ่นที่ 2) VEX IQ (รุ่นที่ 1) Brain ไม่รองรับ Python
คำสั่ง รายงานค่าบูลีนว่าเป็นจริงหรือเท็จเกี่ยวกับสวิตช์กันชน
คำสั่ง Distance.is_object_detected จะรายงาน 'true' หากตรวจพบวัตถุ และ 'false' หากตรวจไม่พบวัตถุ
หมายเหตุ:ชื่อของเซ็นเซอร์วัดระยะที่ปรากฏในคำสั่งสอดคล้องกับชื่อที่กำหนดในการกำหนดค่า
ในตัวอย่างนี้ ลูปWhile ที่มีเงื่อนไข ไม่ใช่ ถูกใช้กับคำสั่ง Distance.is_object_detected เพื่อให้หุ่นยนต์ขับเคลื่อนไปข้างหน้าจนกระทั่งเซ็นเซอร์ Distance ตรวจพบวัตถุ เมื่อเซ็นเซอร์ตรวจพบวัตถุ หุ่นยนต์จะหยุดขับเคลื่อน ดังที่แสดงในภาพด้านบน
คำสั่ง Distance.distance รายงานระยะห่างของวัตถุที่ใกล้ที่สุดจากเซ็นเซอร์ระยะทาง รายงานช่วงตั้งแต่24 มม. ถึง 1,000 มม. หรือ 1 นิ้วถึง 40 นิ้ว
ในตัวอย่างนี้ ลูป While ที่มีเงื่อนไข ไม่ใช่ ถูกใช้กับคำสั่ง Distance.is_object_detected เพื่อทำให้หุ่นยนต์ขับเคลื่อนไปข้างหน้าจนกระทั่ง Distance Sensor ตรวจพบวัตถุ เมื่อเซ็นเซอร์ตรวจจับวัตถุ หุ่นยนต์จะหยุดขับขี่
ในตัวอย่างนี้ คำสั่ง Distance.distance ใช้กับคำสั่ง Brain.screen.print เพื่อแสดงระยะห่างระหว่างเซ็นเซอร์วัดระยะห่างกับวัตถุบนหน้าจอ Brain คำสั่ง Distance.distance จะแสดงภายในลูป While ด้วยเงื่อนไข ไม่ใช่ ซึ่งจะทำให้หุ่นยนต์เคลื่อนที่จนกระทั่งเซ็นเซอร์ Distance ตรวจพบวัตถุที่อยู่ห่างออกไปน้อยกว่า 50 มิลลิเมตร แล้วจึงหยุดขับเคลื่อน สิ่งนี้แสดงในวิดีโอแรกด้านบน