Skip to main content
พอร์ทัลครู

เล่น

ส่วนที่ 1 - ทีละขั้นตอน

  1. สั่งให้สั่งให้นักเรียนสร้างสิ่งต่างๆ จากสิ่งที่เรียนรู้ในห้องปฏิบัติการ 2 เพื่อให้ Code Base รวบรวมและคัดแยกตัวอย่างหินจากดาวอังคารไปยังพื้นที่อื่น ตัวอย่างใหม่จะถูกแสดงโดยดิสก์สีน้ำเงิน พวกเขาจะเพิ่มโครงการ Lab 2 ของตนเพื่อเขียนโค้ดหุ่นยนต์เพื่อจัดเรียงดิสก์ตามสี
    • แสดงให้นักเรียนเห็นการตั้งค่าภาคสนามโดยมีพื้นที่การจัดเรียงที่ทำเครื่องหมายว่า 'R, G, B'  พวกเขาจะต้องวางดิสก์สีน้ำเงินลงในพื้นที่การจัดเรียงสีน้ำเงิน

    มุมมองจากด้านบนของสนาม GO พร้อมดิสก์สีน้ำเงินที่มุมซ้ายบนและสี่เหลี่ยมจัตุรัส 3 อันที่อยู่ติดกันในแนวนอนที่มุมขวาล่าง ซึ่งมีป้ายชื่ออักษร R, G และ B ตัวอักษรระบุช่องว่างที่จะวางดิสก์สีที่สอดคล้องกัน
    การตั้งค่าภาคสนาม
    • นักเรียนจะสร้างโครงการนี้ร่วมกับคุณ จากนั้นจึงทดสอบบนพื้นผิวดาวอังคาร (สนาม) แอนิเมชั่นด้านล่างนี้แสดงให้เห็นว่า Code Base จะเคลื่อนไหวอย่างไรเมื่อเริ่มต้นโปรเจ็กต์นี้
    ไฟล์วีดีโอ
  2. แบบจำลอง แบบจำลองสำหรับนักเรียนในการสร้างโครงการใน VEXcode GO และทดสอบโครงการของพวกเขาในภาคสนาม
    • หากจำเป็น ให้เริ่มต้นด้วยการแสดงให้ผู้เรียนเห็นวิธีการเชื่อมต่อ Brain บน Code Base เข้ากับอุปกรณ์ใน VEXcode GO เนื่องจากขั้นตอนการเชื่อมต่อจะแตกต่างกันไปตามอุปกรณ์ต่างๆ, see the Connecting articles of the VEXcode GO VEX Library สำหรับขั้นตอนเฉพาะในการเชื่อมต่อ VEX GO Brain กับคอมพิวเตอร์หรือแท็บเล็ตของคุณ.
    • พวกเขายังต้องกำหนดค่า VEXCode GO สำหรับ Code Base ด้วย If necessary, model the steps from the Configure a Code Base VEX Library article and ensure students can see the Drivetrain blocks in the Toolbox.
    • เมื่อเชื่อมต่อแล้ว ให้ให้เด็กนักเรียนเปิดโครงการ เรียงลำดับสีแดง 1 จากห้องปฏิบัติการ 2 คุณจะสร้างโครงการนี้ร่วมกันเพื่อให้ Code Base จัดเรียง Blue Disk  
    • จากนั้น แสดงวิธีการจำลองบล็อก [If then] และเพิ่มสิ่งนี้ลงในตอนท้ายของโปรเจ็กต์ให้กับนักเรียน กดบล็อก [If then] ค้างไว้ จากนั้นเลือก 'Duplicate' จากเมนูบริบท For more information on how to use the context menu to duplicate blocks, see the Using the Context Menu in VEXcode GO VEX Library article.

      แผนภาพแสดงขั้นตอนที่ผู้ใช้สามารถดำเนินการเพื่อจำลองบล็อก If Then ทั้งหมดในโปรเจ็กต์บล็อกของเรา ขั้นแรก ให้คลิกขวาที่บล็อก แล้วคลิกตัวเลือก "ทำซ้ำ" ในเมนูบริบท การกระทำดังกล่าวจะทำซ้ำบล็อกและบล็อกอื่นๆ ด้านล่างในสแต็ก และผู้ใช้สามารถเพิ่มบล็อก If Then ที่สองนี้ไว้ใต้บล็อกแรกได้ ตอนนี้โครงการทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้รวบรวมดิสก์ไดรฟ์ไปข้างหน้า 400 มม. แล้วจ่ายพลังงานให้แม่เหล็กเพื่อเพิ่มพลัง จากนั้นเลี้ยวขวา 180 องศา และขับไปข้างหน้าประมาณ 400 มม. ในการจัดเรียงดิสก์ ให้เลี้ยวซ้าย 90 องศา และหากตรวจพบสีแดง ให้ขับไปข้างหน้า 100 มม. และจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 100 มม. และเลี้ยวซ้าย 90 องศา บล็อก If Then ทั้งหมดนี้และบล็อกภายในจะทำซ้ำด้านล่างบล็อกแรก
      ทำซ้ำบล็อค [If then]
    • แสดงให้นักเรียนเห็นถึงวิธีการเปลี่ยนพารามิเตอร์ในบล็อก <Detects color> ให้เป็น "สีน้ำเงิน" เพื่อให้ลำดับ [If then] นี้จะสั่งให้ Code Base เรียงลำดับดิสก์สีน้ำเงิน

      โครงการต่อยอดจากบล็อก VEXcode GO ตอนนี้มีการเปลี่ยนพารามิเตอร์ของบล็อก If Then ที่สองเพื่อตรวจจับสีน้ำเงินแทนสีแดง ตอนนี้โครงการทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้รวบรวมดิสก์ไดรฟ์ไปข้างหน้า 400 มม. แล้วจ่ายพลังงานให้แม่เหล็กเพื่อเพิ่มพลัง จากนั้นเลี้ยวขวา 180 องศา และขับไปข้างหน้าประมาณ 400 มม. ในการจัดเรียงดิสก์ ให้เลี้ยวซ้าย 90 องศา และหากตรวจพบสีแดง ให้ขับไปข้างหน้า 100 มม. และจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 100 มม. และเลี้ยวซ้าย 90 องศา ปิดบล็อก If Then แรกแล้วทำซ้ำด้านล่างโดยเปลี่ยนพารามิเตอร์สีจากสีแดงเป็นสีน้ำเงิน

    • จากนั้น เปลี่ยนพารามิเตอร์ระยะห่างใน [Drive for] บล็อกเป็น 350 มม. เป็น ให้ Code Base ขับไปและกลับจากพื้นที่การเรียงลำดับสีน้ำเงินบน Field

    โครงการต่อเนื่องจากบล็อก VEXcode GO ตอนนี้มีบล็อก Drive For สองบล็อกในบล็อก If Then ที่สอง โดยระยะห่างของบล็อกที่สองเปลี่ยนจาก 100 มม. เป็น 350 มม. ตอนนี้โครงการทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้รวบรวมดิสก์ไดรฟ์ไปข้างหน้า 400 มม. แล้วจ่ายพลังงานให้แม่เหล็กเพื่อเพิ่มพลัง จากนั้นเลี้ยวขวา 180 องศา และขับไปข้างหน้าประมาณ 400 มม. ในการจัดเรียงดิสก์ ให้เลี้ยวซ้าย 90 องศา และหากตรวจพบสีแดง ให้ขับไปข้างหน้า 100 มม. และจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 100 มม. และเลี้ยวซ้าย 90 องศา ปิดบล็อก If Then แรกแล้วเริ่มบล็อกใหม่ หากตาตรวจพบสีน้ำเงิน ให้ขับไปข้างหน้า 350 มม. แล้วจ่ายพลังงานให้แม่เหล็กลดลง ในที่สุดและยังอยู่ในบล็อก If Then ให้ขับถอยหลัง 350 มม. และเลี้ยวซ้าย 90 องศา

    โปรเจ็กต์ VEXcode GO blocks ชื่อว่า 'Sort Blue' เสร็จสมบูรณ์แล้ว โครงการนี้เหมือนกับในขั้นตอนสุดท้าย โครงการทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้รวบรวมดิสก์ไดรฟ์ไปข้างหน้า 400 มม. แล้วจึงจ่ายพลังงานให้แม่เหล็กเพื่อเพิ่มพลัง จากนั้นเลี้ยวขวา 180 องศา และขับไปข้างหน้าประมาณ 400 มม. ในการจัดเรียงดิสก์ ให้เลี้ยวซ้าย 90 องศา และหากตรวจพบสีแดง ให้ขับไปข้างหน้า 100 มม. และจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 100 มม. และเลี้ยวซ้าย 90 องศา ปิดบล็อก If Then แรกแล้วเริ่มบล็อกใหม่ หากตาตรวจพบสีน้ำเงิน ให้ขับไปข้างหน้า 350 มม. แล้วจ่ายพลังงานให้แม่เหล็กลดลง ในที่สุดและยังอยู่ในบล็อก If Then ให้ขับถอยหลัง 350 มม. และเลี้ยวซ้าย 90 องศา
    เรียงสีน้ำเงิน โปรเจกต์

    แบบจำลองสำหรับให้นักเรียนทดสอบโครงการของตนในภาคสนาม

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

    มุมมองจากด้านบนของสนาม GO พร้อมดิสก์สีน้ำเงินที่มุมซ้ายบนและสี่เหลี่ยมจัตุรัส 3 อันที่อยู่ติดกันในแนวนอนที่มุมขวาล่าง ซึ่งมีป้ายชื่ออักษร R, G และ B ตัวอักษรระบุช่องว่างที่จะวางดิสก์สีที่สอดคล้องกัน หุ่นยนต์จะถูกวางไว้ในตำแหน่งเริ่มต้นใกล้มุมล่างซ้าย โดยอยู่ด้านล่างโดยตรงและหันไปทางแผ่นดิสก์สีน้ำเงิน
     ตั้งค่าเพื่อทดสอบ
    • เมื่อฐานโค้ดพร้อมแล้ว ให้เลือก "เริ่ม" ใน VEXcode GO เพื่อทดสอบโครงการ  ชมขณะที่ Code Base ขับเคลื่อนไปรวบรวม Blue Disk กลับไปยัง Mars Base แล้วส่งมอบไปยังพื้นที่คัดแยกสีน้ำเงิน

    แถบเครื่องมือ VEXcode GO พร้อมปุ่ม Start ที่แสดงอยู่ในกล่องสีแดง ระหว่างไอคอน Brain และ Step
     เลือก 'เริ่ม' เพื่อทดสอบโครงการ
    • นักเรียนจะต้องเลือกปุ่ม 'หยุด' ในแถบเครื่องมือ VEXcode GO เพื่อหยุดโครงการ
    • สำหรับนักเรียนที่ทำเสร็จก่อนเวลาและต้องการความท้าทายเพิ่มเติม ให้วางดิสก์สีแดงไว้บนสนามในตำแหน่งเดียวกัน จากนั้นจึงเริ่มโครงการของพวกเขา ฐานโค้ดจะส่งดิสก์สีแดงไปที่พื้นที่การจัดเรียงสีแดงหรือไม่? จะเกิดอะไรขึ้นถ้าพวกเขาลองโครงการของพวกเขาด้วย Green Disk? ลองดูสิ!
  3. อำนวยความสะดวกอำนวยความสะดวกในการสนทนากับนักเรียนในขณะที่พวกเขาทดสอบโครงการของพวกเขา
    • ฐานโค้ดจะต้องเคลื่อนที่เพื่อรวบรวมดิสก์อย่างไร? คุณช่วยแสดงมือให้ฉันดูหน่อยได้ไหม? 
    • Code Base จำเป็นต้องเปลี่ยนหรือไม่? ไกลแค่ไหน? ไปทางไหน?
    • ฐานโค้ดจะเคลื่อนไหวอย่างไรเพื่อส่งมอบดิสก์ไปยังพื้นที่การเรียงลำดับ  จะหันไปทางไหน? ต้องขับรถไปไกลแค่ไหนถึงจะถึงพื้นที่คัดแยก?
    • ฐานโค้ดจะทราบได้อย่างไรว่าดิสก์เป็นสีน้ำเงินหรือเป็นสีอื่น? 
    • บล็อคใดที่ใช้เพื่อให้ Code Base ตรวจจับสีของดิสก์?
    • จะเกิดอะไรขึ้นถ้า Code Base ตรวจพบสีแดง? Code Base จะส่ง Red Disk ไปที่ตำแหน่งเดียวกับ Blue Disk หรือไม่? ทำไมจะไม่ได้ล่ะ?

    เน้นที่แนวคิด ไม่ใช่ความแม่นยำ

    • เป้าหมายของห้องปฏิบัติการนี้คือการมุ่งเน้นไปที่แนวคิดการใช้แม่เหล็กไฟฟ้าในโครงการ หากนักเรียนจัดตำแหน่งหุ่นยนต์ของตนผิดเล็กน้อยหรือดิสก์ไม่ได้อยู่ในตำแหน่งที่ถูกต้องเมื่อขับไปหา ให้แจ้งให้พวกเขาทราบว่าสามารถขยับดิสก์เล็กน้อยเพื่อให้แน่ใจว่าแม่เหล็กไฟฟ้าจะรับดิสก์ได้
    • นอกจากนี้ ให้แจ้งนักเรียนด้วยว่าการดันดิสก์เข้าไปในพื้นที่การจัดเรียงนั้นเป็นเรื่องปกติ หากดิสก์นั้นอยู่ในช่องพื้นที่การจัดเรียงเป็นส่วนใหญ่ แต่ไม่ได้อยู่ในช่องทั้งหมด 
  4. เตือนเตือนนักเรียนให้ตรวจสอบพารามิเตอร์ในบล็อก [ไดรฟ์สำหรับ] เพื่อให้แน่ใจว่าโปรเจ็กต์มีระยะทางที่ถูกต้องตามที่จำเป็นในการรวบรวม จากนั้นจึงจัดเรียงดิสก์

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

    • คุณเคยทำผิดพลาดอะไรบ้างที่ทำให้คุณได้เรียนรู้อะไรบางอย่าง?
    • คุณได้เรียนรู้อะไรจากความผิดพลาดนี้? มันช่วยคุณได้อย่างไรเมื่อต้องเขียนโค้ดฐานครั้งต่อไป?
    • ส่วนใดของแล็บที่ยุ่งยากหรือทำให้คุณต้องคิดหนัก?
  5. ถามถามนักเรียนว่าพวกเขาจะใช้เงื่อนไข [ถ้าแล้ว] เพื่อเข้ารหัส Perseverance Rover เพื่อแยกตัวอย่างหินของดาวอังคารออกเป็นสองประเภทได้อย่างไร คือ หินที่แสดงสัญญาณของสิ่งมีชีวิตโบราณ และหินที่ไม่แสดงสัญญาณดังกล่าว

พักเบรกกลางเกม & อภิปรายเป็นกลุ่ม

ทันทีที่กลุ่ม แต่ละกลุ่มทดสอบโครงการของตนเพื่อให้ Code Base รวบรวมและจัดส่ง Blue Disk ไปยังพื้นที่การคัดแยกให้มารวมตัวกันเพื่อพูดคุยสั้นๆ

พูดคุยถึงสิ่งที่เกิดขึ้นในโครงการเมื่อฐานโค้ดตัดสินใจตามเงื่อนไขที่สร้างขึ้นด้วยบล็อค [If then] แสดงแอนิเมชั่นด้านล่าง หรือโครงการ Sort Blue ที่กำลังทำงานอยู่ใน VEXcode GO ดึงความสนใจของนักเรียนไปที่ฟีเจอร์ไฮไลท์ และวิธีที่ไฮไลท์ข้าม บล็อก [If then] แรกเนื่องจากเงื่อนไข (เซ็นเซอร์ตาตรวจจับสีแดง) เป็นเท็จ ไฮไลท์จะแสดงให้เห็นวิธีที่โปรเจ็กต์ เคลื่อนไปยังบล็อก [If then] ถัดไป เนื่องจากเซ็นเซอร์ตรวจจับสีน้ำเงิน เงื่อนไขจึงเป็นจริง และบล็อกภายในบล็อก [If then] 'C' จะทำงาน ให้แน่ใจว่านักเรียนเข้าใจว่าบล็อกภายในบล็อก [If then] จะทำงานเฉพาะเมื่อเงื่อนไขเป็นจริงเท่านั้น

ไฟล์วีดีโอ
  • เหตุใดบล็อกหนึ่ง [If then] จึงถูก “ข้าม” เกิดอะไรขึ้นแทน?
  • จะเกิดอะไรขึ้นในโปรเจ็กต์ของเราเมื่อเงื่อนไขของบล็อก [If then] เป็น False? บล็อกภายในบล็อก [If then] 'C' ทำงานหรือไม่? 
  • จะเกิดอะไรขึ้นถ้าเงื่อนไขของบล็อค [If then] เป็น True?
  • จะเกิดอะไรขึ้นถ้าเราให้ Code Base รวบรวม Green Disk? บล็อค [If then] ใดบล็อคหนึ่งจะทำงานหรือไม่? ทำไม
  • จะเกิดอะไรขึ้นถ้า ต้องการให้ Code Base จัดเรียง Green Disk จะทำอย่างไร เราจะต้องเพิ่มอะไรให้กับโครงการของเรา?

หมายเหตุ: หากคุณต้องการให้การไหลของโครงการช้าลงอีก ให้ดำเนินการตามโครงการอย่างค่อยเป็นค่อยไปโดยใช้คุณลักษณะการค่อยเป็นค่อยไป และหารือว่าเหตุใดจึง "ข้าม" บล็อก [If then] แรก สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้คุณลักษณะ Project Stepping โปรดดูบทช่วยสอน Stepping Through Blocks ใน VEXcode GO

ตอนที่ 2 - ทีละขั้นตอน

  1. สั่งให้สั่งให้นักเรียนนำสิ่งที่เรียนรู้ใน Play ส่วนที่ 1 ไปใช้และเพิ่มลงในโปรเจ็กต์ของตนเพื่อให้ Code Base รวบรวมและจัดเรียงดิสก์สีเขียว พวกเขาจะต้องเปลี่ยนแปลงพารามิเตอร์ในโปรเจ็กต์ของตนเพื่อให้ฐานโค้ดส่งมอบดิสก์ไปยังพื้นที่การเรียงลำดับสีเขียว

    เมื่อพวกเขาจัดเรียงดิสก์สีเขียวสำเร็จแล้ว พวกเขาจะทำการทดลองกับดิสก์ทั้งสามแผ่น พวกเขาสามารถให้ฐานรหัสรวบรวมและจัดส่งดิสก์ทั้งสามแผ่นไปยังพื้นที่การจัดเรียงที่เหมาะสมได้หรือไม่

    • แสดงการตั้งค่า Field ใหม่ให้กับนักเรียนและแจ้งระยะทางการขับรถไปยังพื้นที่การจัดเรียงสีเขียวเพื่อให้พวกเขาสามารถเน้นที่โค้ดสำหรับโครงการนี้ได้ ฐานโค้ดจะต้องขับเคลื่อน 250 มิลลิเมตร (มม.) (~10 นิ้ว (นิ้ว)) จากฐานดาวอังคารไปและกลับจากพื้นที่คัดแยกสีเขียว

    มุมมองจากด้านบนของสนาม GO พร้อมดิสก์สีเขียวที่มุมซ้ายบนและสี่เหลี่ยม 3 อันที่อยู่ติดกันในแนวนอนที่มุมขวาล่าง ซึ่งมีป้ายชื่ออักษร R, G และ B ตัวอักษรระบุช่องว่างที่จะวางดิสก์สีที่สอดคล้องกัน
    การเล่นส่วนที่ 2 การตั้งค่าสนาม
    • แอนิเมชั่นต่อไปนี้แสดงให้เห็นวิธีที่เป็นไปได้หนึ่งวิธีที่ฐานโค้ดสามารถเคลื่อนที่เพื่อรวบรวมและจัดเรียงดิสก์สีเขียวได้
    ไฟล์วีดีโอ
  2. โมเดลโมเดลสำหรับนักเรียนที่จะเริ่มต้นโปรเจ็กต์ใน VEXcode GO

    หากจำเป็น เป็นแบบอย่างให้กับนักเรียนในการทดสอบโครงการของตนในภาคสนาม

    • แสดงวิธีการตั้งค่าการทดสอบโดยวางฐานโค้ดไว้ที่ฐานดาวอังคาร

    มุมมองจากด้านบนของสนาม GO พร้อมดิสก์สีเขียวที่มุมซ้ายบนและสี่เหลี่ยม 3 อันที่อยู่ติดกันในแนวนอนที่มุมขวาล่าง ซึ่งมีป้ายชื่ออักษร R, G และ B ตัวอักษรระบุช่องว่างที่จะวางดิสก์สีที่สอดคล้องกัน หุ่นยนต์จะถูกวางไว้ในตำแหน่งเริ่มต้นใกล้มุมล่างซ้าย โดยอยู่ด้านล่างโดยตรงและหันไปทางแผ่นดิสก์สีเขียว
    ตั้งค่าเพื่อทดสอบ
    • เมื่อมีฐานโค้ดแล้ว ให้เลือก "เริ่ม" ใน VEXcode GO เพื่อทดสอบโครงการ 
    • นักเรียนจะต้องเลือกปุ่ม 'หยุด' ในแถบเครื่องมือ VEXcode GO เพื่อหยุดโครงการ

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

    • พวกเขาควรวางดิสก์แล้วเริ่มโครงการของพวกเขา ฐานโค้ดส่งไปยังพื้นที่การจัดเรียงที่ถูกต้องหรือไม่?
    • เมื่อฐานโค้ดจัดเรียงดิสก์สำเร็จแล้ว ก็สามารถลองอีกครั้งกับดิสก์อื่นได้ สามารถจัดทั้งสามอย่างได้ไหม? ลองเริ่มด้วยดิสก์สีน้ำเงิน จากนั้นเป็นดิสก์สีเขียว และสุดท้ายเป็นดิสก์สีแดง
       
  3. อำนวยความสะดวกอำนวยความสะดวกในการสนทนากับนักเรียนในขณะที่พวกเขาสร้างและทดสอบโครงการของพวกเขาด้วยคำถามเช่น:
    • คุณต้องเพิ่มอะไรในโปรเจ็กต์ของคุณเพื่อให้ Code Base ตรวจจับ Green Disk ได้? 
    • คุณต้องเปลี่ยนพารามิเตอร์ใดบ้างเพื่อให้ Code Base ลบดิสก์ออกจากพื้นที่การเรียงลำดับใหม่
    • Code Base ตรวจจับสีของดิสก์ได้อย่างไร  ฐานโค้ดรู้ได้อย่างไรว่าจะต้องส่งมอบดิสก์ที่ไหน

    เตรียมนักเรียนสำหรับการลองผิดลองถูกซึ่งถือเป็นส่วนสำคัญของความท้าทายนี้ You may want to use the Problem-solving Cycle graphic from the Background page as a visual aide to establish a structure for the problem-solving process with your students.

    แผนภาพวงจรการแก้ปัญหาของนักเรียน ลูกศรแสดงว่าวัฏจักรเกิดขึ้นซ้ำๆ วงจรเริ่มต้นด้วย "อธิบายปัญหา" จากนั้น "ระบุเมื่อและที่ที่ปัญหาเริ่มต้น" จากนั้น "แก้ไขและทดสอบการแก้ไข" และสุดท้ายคือ "ไตร่ตรอง" ก่อนที่จะทำซ้ำ
     การแก้ปัญหาของนักเรียน รอบที่

    มีหลายวิธีแก้ไขสำหรับความท้าทายนี้ ต่อไปนี้เป็นตัวอย่างหนึ่ง

    ตัวอย่างโครงการบล็อก VEXcode GO ซึ่งเป็นภาคต่อของโครงการ Sort Blue และตอนนี้สามารถส่งมอบดิสก์สีเขียวได้แล้วด้วย โครงการนี้เหมือนกับในขั้นตอนสุดท้าย โครงการทั้งหมดอ่านว่า เมื่อเริ่มต้น ให้รวบรวมดิสก์ไดรฟ์ไปข้างหน้า 400 มม. แล้วจึงจ่ายพลังงานให้แม่เหล็กเพื่อเพิ่มพลัง จากนั้นเลี้ยวขวา 180 องศา และขับไปข้างหน้าประมาณ 400 มม. ในการจัดเรียงดิสก์ ให้เลี้ยวซ้าย 90 องศา และหากตรวจพบสีแดง ให้ขับไปข้างหน้า 100 มม. และจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 100 มม. และเลี้ยวซ้าย 90 องศา ปิดบล็อก If Then แรกแล้วเริ่มบล็อกใหม่ หากตาตรวจพบสีน้ำเงิน ให้ขับไปข้างหน้า 350 มม. แล้วจ่ายพลังงานให้แม่เหล็กลดลง ถัดไป และยังคงอยู่ในบล็อก If Then ให้ขับถอยหลัง 350 มม. และเลี้ยวซ้าย 90 องศา ปิดบล็อก If Then ที่สองแล้วเริ่มบล็อกใหม่ หากตาตรวจพบสีเขียว ให้ขับไปข้างหน้า 250 มม. แล้วจ่ายพลังงานให้แม่เหล็กลดลง ในที่สุดและยังอยู่ในบล็อก If Then ให้ขับถอยหลัง 250 มม. และเลี้ยวซ้าย 90 องศา
    จัดเรียงทั้งหมด โครงการ

    เน้นที่แนวคิด ไม่ใช่ความแม่นยำ

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

    หากนักเรียนต้องการการสนับสนุนเพิ่มเติมในการเชื่อมโยงพฤติกรรมของ Code Base เข้ากับคำสั่งแบบบล็อกในโครงการของตน ให้ใช้คุณลักษณะ Project Stepping เพื่อช่วยให้นักเรียนดำเนินการโครงการทีละบล็อก เพื่อดูว่าแต่ละบล็อกได้รับการดำเนินการในโครงการของตนอย่างไร สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้คุณลักษณะ Project Stepping โปรดดูบทช่วยสอน Stepping Through Blocks ใน VEXcode GO

    ไอคอนสำหรับบทช่วยสอน Stepping Through Blocks ใน VEXcode GO
    บทช่วยสอนการก้าวผ่านบล็อกใน VEXcode GO
  4. เตือนเตือนนักเรียนให้ตรวจสอบลำดับ (หรือบล็อก) ของบล็อกและพารามิเตอร์ของบล็อกในโปรเจ็กต์ของพวกเขาก่อนที่จะทดสอบในสนาม
    • แล้วฐานโค้ดจะต้องเคลื่อนที่ไปเก็บรวบรวมและจัดเรียงดิสก์อย่างไร? คุณช่วยแสดงมือให้ฉันดูหน่อยได้ไหม? 
    • Code Base จำเป็นต้องเปลี่ยนหรือไม่? ไกลแค่ไหน? ไปทางไหน?
    • ภายในบล็อก [If then] แต่ละบล็อกมีบล็อกอะไรบ้าง? สิ่งเหล่านี้จะขับเคลื่อนฐานโค้ดไปยังพื้นที่การเรียงลำดับที่ถูกต้องหรือไม่
    • พื้นที่คัดแยกอยู่ไกลออกไปใช่ไหม? คุณจะเปลี่ยนพารามิเตอร์ในบล็อก [Drive for] เพื่อให้ Code Base ขับเคลื่อนไปยังพื้นที่การเรียงลำดับที่ถูกต้อง (250 มม. ไปยังพื้นที่การเรียงลำดับสีเขียว) ได้อย่างไร
    • บล็อก <Detects color> ถูกตั้งค่าเป็น 'สีเขียว' (สีของดิสก์) หรือไม่?

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

    • คุณเคยทำผิดพลาดอะไรบ้างที่ทำให้คุณได้เรียนรู้อะไรบางอย่าง? คุณได้เรียนรู้อะไรจากความผิดพลาดนี้? มันช่วยคุณได้อย่างไรเมื่อต้องเขียนโค้ดฐานครั้งต่อไป?
    • คุณเปลี่ยนแปลงอะไรในโครงการของคุณเพื่อให้ทำงานได้ดีขึ้น?
    • คุณทำการเปลี่ยนแปลงอะไรที่ทำให้โครงการของคุณประสบความสำเร็จน้อยลง? คุณแก้ไขปัญหายังไง?
    • คุณได้เรียนรู้อะไรบ้างจากห้องแล็บอื่นๆ ที่คุณใช้ช่วยเหลือคุณในห้องแล็บนี้?
  5. ถามขอให้เด็กนักเรียนคิดว่าโครงการของพวกเขามีการเปลี่ยนแปลงอย่างไรจากห้องปฏิบัติการ 2 ไปเป็นห้องปฏิบัติการ 3
    • โครงการของคุณเปลี่ยนแปลงอย่างไรบ้างตั้งแต่ Lab 2 จนถึงปัจจุบัน?  คุณเพิ่มอะไรเข้าไป? การเปลี่ยนแปลงนี้ส่งผลต่อพฤติกรรมของ Code Base อย่างไร?
    • Code Base ใน Lab 2 สามารถทำอะไรได้บ้าง? ตอนนี้มันสามารถทำอะไรได้บ้าง? คุณได้เพิ่มอะไรให้กับโครงการของคุณเพื่อทำให้สิ่งนี้เกิดขึ้น?