Skip to main content

บทที่ 4: การเข้ารหัสเซนเซอร์วัตถุ

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

ในบทเรียนนี้ คุณจะ:

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

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

ดิสก์สีเขียวบนสายพานลำเลียงขาออกและใต้เซ็นเซอร์วัตถุ

การแก้ไขโครงการ

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

เปิดโครงการหน่วย 4 บทเรียน 2 กิจกรรมของคุณใน VEXcode EXP หรือสร้างโครงการใหม่ตามที่แสดงที่นี่

เปลี่ยนชื่อโครงการหน่วยที่ 4 บทที่

กองบล็อก 3 อันจากโครงการหน่วยที่ 4 บทที่ 2 สแต็กแรกอ่านว่า เมื่อเริ่มต้น ให้หมุนสายพานลำเลียงขาเข้า 1 รอ 7 วินาที แล้วจึงหยุดสายพานลำเลียงขาเข้า 1 ขั้นต่อไป ให้หมุนสายพานลำเลียงขนส่ง 2 ไปข้างหน้า รอ 4 วินาที แล้วจึงหยุดสายพานลำเลียงขนส่ง 2 สุดท้าย ให้หมุนสายพานลำเลียงทางออก 4 ขาออก รอ 2 วินาที แล้วจึงหยุดสายพานลำเลียงทางออก 4 กองต่อไปอ่านว่า เมื่อกดกันชนเสาสัญญาณ 6 ให้ตั้งแขน 10 เพื่อหยุดการควบคุม โครงการสุดท้ายอ่านว่า เมื่อการควบคุมแขน 10 หยุด ให้ตั้งเสาสัญญาณ 6 ให้เป็นสีเขียวและปิด จากนั้นจึงตั้งเสาสัญญาณ 6 ให้เป็นสีแดงและกะพริบ สุดท้าย ให้หยุดสายพานลำเลียงทางเข้า 1 หยุดสายพานลำเลียงขนส่ง 2 แล้วจึงหยุดสายพานลำเลียงทางออก 4

กำหนดค่า Object Sensor ใน VEXcode โดยเปิดหน้าต่างอุปกรณ์และเลือกเพิ่มอุปกรณ์

หน้าต่างอุปกรณ์เปิดอยู่และปุ่มเพิ่มอุปกรณ์ถูกเน้นไว้

เลือก 3 สายเพื่อเปิดรายการอุปกรณ์ 3 สาย

ตัวเลือกอุปกรณ์ในหน้าต่างอุปกรณ์ โดยมีไอคอน 3 สายเรียกออกมาเป็นสีแดง

จากนั้นเลือก เซนเซอร์วัตถุ

ตัวเลือกอุปกรณ์สาย 3 ตัวในหน้าต่างอุปกรณ์ โดยมีไอคอนเซ็นเซอร์วัตถุแสดงเป็นสีแดง

เลือกพอร์ต Aจากนั้นเลือกเสร็จสิ้นเพื่อสิ้นสุดการกำหนดค่า

หมายเหตุ:ตรวจสอบให้แน่ใจว่าเซนเซอร์วัตถุเสียบอยู่ที่พอร์ต A บนสมอง

หน้าต่างอุปกรณ์ที่มีพอร์ต A เน้นไว้สำหรับเซ็นเซอร์วัตถุ

ลบสองบล็อคสุดท้ายในโครงการ ซึ่งรวมถึงบล็อกWaitและบล็อกStopสำหรับ Exit Conveyor ตามที่แสดงในวิดีโอนี้

ไฟล์วีดีโอ

เพิ่มบล็อกรอจนกว่าจะถึงให้กับโครงการ

บล็อกรอจนกว่าจะถึงคือบล็อกที่รอให้เงื่อนไขบูลีนรายงานว่าเป็นจริง ก่อนที่จะย้ายไปยังบล็อกถัดไปในสแต็ก

การดำเนินการต่อของสแต็ก VEXcode EXP โดยมีการเพิ่มบล็อกว่างลงไปที่ตอนท้าย สแต็กจะอ่านว่า เมื่อเริ่มต้น ให้หมุนสายพานลำเลียงขาเข้า 1 รอ 7 วินาที แล้วจึงหยุดสายพานลำเลียงขาเข้า 1 ขั้นต่อไป ให้หมุนสายพานลำเลียงขนส่ง 2 ไปข้างหน้า รอ 5 วินาที แล้วจึงหยุดสายพานลำเลียงขนส่ง 2 สุดท้ายให้หมุนสายพานลำเลียงทางออกที่ 4 ออก แล้วรอจนกว่า

ตัวดำเนินการเปรียบเทียบ

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

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

เพิ่มบล็อก ที่มากกว่าลงในช่องว่างหกเหลี่ยมของบล็อกรอจนกว่าจะถึง

บล็อก Wait Until ที่เพิ่งเพิ่มเข้ามา โดยมีพารามิเตอร์บูลีนใหม่เป็น 0 ที่มากกว่า 50

เพิ่มบล็อก Reflectivityในช่องเปิดแรกของบล็อกที่มากกว่า

ตอนนี้บล็อกรอจนกว่าจะมีบล็อกการสะท้อนของเซนเซอร์วัตถุที่เพิ่มเข้าไปในบล็อกที่มากกว่า ตอนนี้ทั้งบล็อกรวมกันอ่านว่า รอจนกว่าเซ็นเซอร์วัตถุ A จะมีค่าการสะท้อนแสงเป็น % มากกว่า 50

บล็อกที่มากกว่าจะเปรียบเทียบค่าแรกกับค่าที่สอง ขณะนี้บล็อก ที่มากกว่าในโครงการกำลังเปรียบเทียบเปอร์เซ็นต์การสะท้อนแสงที่รายงานโดย Object Sensor กับพารามิเตอร์ '50' ก่อนที่จะประกาศค่าบูลีนเป็นTrueหรือFalse 

บล็อกรอจนกว่าจะมีการเน้นค่าที่มากกว่า ตอนนี้ทั้งบล็อกรวมกันอ่านว่า รอจนกว่าเซ็นเซอร์วัตถุ A จะมีค่าการสะท้อนแสงเป็น % มากกว่า 50

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

เปลี่ยนพารามิเตอร์ที่สองของบล็อกที่มากกว่าเป็น '9' 

ตัวเลขนี้ขึ้นอยู่กับค่าที่เก็บรวบรวมไว้ในกิจกรรมบทเรียนก่อนหน้านี้ ค่าการสะท้อนแสงรายงานเป็น 10% เมื่อดิสก์สีเขียวอยู่ใต้เซ็นเซอร์วัตถุ ดังนั้นค่าใดๆ ก็ตามที่ มากกว่า9% ควรรายงานเป็นจริง

บล็อก Wait Until ค่าที่มากกว่าจะถูกเน้นและเปลี่ยนจาก 50 เป็น 9 ตอนนี้ทั้งบล็อกรวมกันอ่านว่า รอจนกว่าเซ็นเซอร์วัตถุ A จะมีค่าการสะท้อนแสงเป็น % มากกว่า 9

เพิ่มบล็อกStopลงที่ส่วนท้ายของโครงการ ตรวจสอบให้แน่ใจว่าพารามิเตอร์ถูกตั้งค่าเป็น 'ExitConveyor4'

ดำเนินการต่อจากสแต็ก VEXcode EXP โดยมีการเพิ่มปุ่ม Stop Motor ลงที่ส่วนท้ายที่เขียนว่า Stop exit belt 4 สแต็กจะอ่านว่า เมื่อเริ่มต้น ให้หมุนสายพานลำเลียงขาเข้า 1 รอ 7 วินาที แล้วจึงหยุดสายพานลำเลียงขาเข้า 1 ขั้นต่อไป ให้หมุนสายพานลำเลียงขนส่ง 2 ไปข้างหน้า รอ 5 วินาที แล้วจึงหยุดสายพานลำเลียงขนส่ง 2 สุดท้าย ให้หมุนสายพานลำเลียงทางออก 4 ขาเข้า รอจนกว่าค่าการสะท้อนแสงของเซ็นเซอร์วัตถุ A เป็นเปอร์เซ็นต์มากกว่า 9 แล้วจึงหยุดสายพานลำเลียงทางออก 4

ตรวจสอบให้แน่ใจว่า Brain เชื่อมต่อกับ VEXcode แล้วและดาวน์โหลดโครงการ

แถบเครื่องมือ VEXcode EXP พร้อมไอคอนดาวน์โหลดที่แสดงอยู่ในกล่องสีแดง ระหว่างไอคอน Brain และ Run

อ่านโค้ดและคาดการณ์ว่าสายพานลำเลียงจะทำงานอย่างไรเมื่อดำเนินโครงการ 

บันทึกการคาดการณ์ของคุณลงในสมุดบันทึกวิศวกรรมของคุณ

สแต็ก VEXcode EXP ที่เพิ่งเพิ่มบล็อค Stop Motor เข้าไป สแต็กทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้หมุนสายพานลำเลียงขาเข้า 1 รอ 7 วินาที แล้วจึงหยุดสายพานลำเลียงขาเข้า 1 ขั้นต่อไป ให้หมุนสายพานลำเลียงขนส่ง 2 ไปข้างหน้า รอ 5 วินาที แล้วจึงหยุดสายพานลำเลียงขนส่ง 2 สุดท้าย ให้หมุนสายพานลำเลียงทางออก 4 ขาออก รอจนกว่าค่าการสะท้อนแสงของเซ็นเซอร์วัตถุ A เป็นเปอร์เซ็นต์มากกว่า 9 แล้วจึงหยุดสายพานลำเลียงทางออก 4

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

สังเกตพฤติกรรมของสายพานลำเลียงในขณะดำเนินโครงการ

EXP Brain พร้อมปุ่มเครื่องหมายถูกเพชรที่ปรากฏในกล่องสีแดงเพื่อเริ่มโครงการบทเรียนที่ 4 หน่วยที่ 4

กดปุ่ม X บน Brain เพื่อหยุดโครงการเมื่อสายพานลำเลียงเคลื่อนที่เสร็จสิ้น บันทึกการสังเกตของคุณลงในสมุดบันทึกวิศวกรรมของคุณ

สายพานลำเลียงเคลื่อนที่ไปตามที่คุณคาดการณ์ไว้หรือไม่? ดิสก์สีเขียวได้ถูกย้ายไปยัง Exit Conveyor ตามที่ต้องการแล้วหรือยัง? ทำไมหรือทำไมไม่?

EXP Brain พร้อมปุ่มเพชร X ที่แสดงอยู่ในกล่องสีแดงเพื่อสิ้นสุดโครงการ

การทบทวนโครงการ

มาทบทวนขั้นตอนของโครงการนี้ที่หยุด Exit Conveyor เมื่อ Object Sensor ตรวจพบดิสก์สีเขียว การรอจนกว่าบล็อกที่จะหยุดโครงการไม่ให้เดินหน้าต่อไปจนกว่าจะมีการรายงานเงื่อนไขภายในว่าเป็น TRUE 

ไดอะแกรมที่แสดงภาพการไหลของตรรกะในโครงการ VEXcode EXP ลูกศรระบุให้รอจนกว่าบล็อกจะเริ่มต้น จากนั้นลูกศรแบบเป็นรอบจะระบุว่าบล็อกจะรอจนกว่าเงื่อนไขจะเป็นจริง เฉพาะเมื่อเซ็นเซอร์วัตถุ A มีค่าการสะท้อนแสงเป็นเปอร์เซ็นต์มากกว่า 9 บล็อกถัดไปจึงจะทำงาน

เนื่องจากบล็อกSpinเป็นบล็อกที่ไม่รอ จึงทำให้ CTE Workcell สามารถหมุนมอเตอร์สายพานลำเลียงต่อไปได้ในขณะที่ตรวจสอบค่าจาก Object Sensor และสภาวะของการสะท้อนแสงที่มากกว่า 9% หลังจากเงื่อนไขในบล็อกรอจนกว่าจะรายงานว่าเป็นTRUE โปรเจ็กต์จะย้ายไปยังบล็อกถัดไปในสแต็ก โดยหยุดมอเตอร์ Exit Conveyor

เพื่อเป็นข้อมูลของคุณ

สามารถใช้ชุดบล็อกอื่นๆ ร่วมกันในโครงการเพื่อหยุด Exit Conveyor เมื่อมีวัตถุอยู่ใต้เซ็นเซอร์วัตถุ สามารถใช้บล็อกเกณฑ์การตรวจจับชุดในตอนเริ่มต้นของโครงการเพื่อตั้งค่าเกณฑ์ เช่นเดียวกับบล็อกชุดที่มากกว่าในโครงการที่สร้างขึ้นด้านบน 

บล็อก VEXcode EXP กำหนดเกณฑ์การตรวจจับที่อ่านว่า 'ตั้งค่าเกณฑ์การตรวจจับเซ็นเซอร์วัตถุ A เป็น 50%'

เมื่อกำหนดเกณฑ์แล้ว สามารถใช้บล็อกบูลีนตรวจจับวัตถุในบล็อกใดๆ ที่มีช่องว่างหกเหลี่ยมได้ บล็อกนี้จะรายงานว่าเป็น TRUE เมื่อเกณฑ์การตรวจจับที่กำหนดโดยบล็อกตั้งค่าเกณฑ์การตรวจจับสำเร็จ หรือเป็น FALSE เมื่อเปอร์เซ็นต์การสะท้อนแสงต่ำกว่าเกณฑ์ดังกล่าว

VEXcode EXP ตรวจจับบล็อกวัตถุที่อ่านว่า 'เซ็นเซอร์วัตถุ A ตรวจจับวัตถุหรือไม่?'

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

เวอร์ชันทางเลือกของสแต็ก VEXcode EXP พร้อมบล็อกบูลีนรอจนกว่าจะถูกเปลี่ยนเป็นระบบเกณฑ์การตรวจจับ ตอนนี้สแต็กทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้ตั้งค่าเกณฑ์การตรวจจับเซ็นเซอร์วัตถุ A เป็น 9% ต่อไปนี้ ให้หมุนสายพานลำเลียงขาเข้า 1 รอ 7 วินาที แล้วจึงหยุดสายพานลำเลียงขาเข้า 1 ขั้นต่อไป ให้หมุนสายพานลำเลียงขนส่ง 2 ไปข้างหน้า รอ 5 วินาที แล้วจึงหยุดสายพานลำเลียงขนส่ง 2 ต่อไปนี้ ให้หมุนสายพานลำเลียงทางออก 4 ขาเข้า รอจนกระทั่งเซ็นเซอร์วัตถุ A ตรวจจับวัตถุ แล้วจึงหยุดสายพานลำเลียงทางออก 4

ตรวจสอบความเข้าใจของคุณ

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

ตรวจสอบคำถามความเข้าใจของคุณ > (Google Doc / .docx / .pdf )


เลือก ถัดไป > เพื่อดำเนินการต่อไปยังกิจกรรมการรวบรวมทุกอย่างเข้าด้วยกัน