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

ไอคอนกล่องเครื่องมือครู กล่องเครื่องมือครู - โครงร่าง กิจกรรม

  • การสำรวจนี้จะแนะนำให้นักเรียนรู้จักการเขียนโปรแกรมพฤติกรรมซ้ำๆโดยใช้ลูปซ้ำหรือตลอดไป

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

Clawbot V5 พร้อมแล้ว!

การสำรวจนี้จะให้เครื่องมือเพื่อให้คุณสามารถเริ่มสร้างโปรเจกต์เจ๋งๆที่ใช้ลูป

  • คำแนะนำ VEXcode V5 Python ที่จะใช้ในการสำรวจนี้:
    • drivetrain.drive_for (ไปข้างหน้า, 300, MM)
    • drivetrain.turn_for (ขวา 90 องศา)
    • claw_motor.spin_for (ย้อนกลับ, 70, องศา)
    • arm_motor.spin_for (ไปข้างหน้า 360 องศา)
    • bumper_b.pressing ()
    • ในขณะที่จริง: 
    • สำหรับ REPEAT_COUNT ในช่วง (4): 
    • รอ (5 วินาที)

คุณสามารถใช้ข้อมูลความช่วยเหลือภายใน VEXcode V5 เพื่อเรียนรู้เกี่ยวกับ คำสั่ง Python แต่ละคำสั่ง 

ภาพแสดงพื้นที่ทำงาน VEXcode V5 พร้อมบันทึกวิธีใช้สำหรับคำสั่ง Drive ที่เปิดอยู่

ไอคอนเคล็ดลับสำหรับครู เคล็ดลับสำหรับครู

หากนี่เป็นครั้งแรกที่นักเรียนใช้ VEXcode V5 พวกเขาสามารถอ่านบทความที่หลากหลายใน ไลบรารี vex

รูปภาพของส่วน VEXcode V5 ของไลบรารี vex

ไอคอนเคล็ดลับสำหรับครู เคล็ดลับสำหรับครู - การใช้การเติมข้อความอัตโนมัติ

การกรอกข้อมูลอัตโนมัติเป็นคุณลักษณะใน VEXcode V5 ที่คาดการณ์ส่วนที่เหลือของคำสั่งที่คุณกำลังพิมพ์ ในขณะที่นักเรียนกำลังทำงานใน VEXcode V5 กระตุ้นให้พวกเขาใช้คุณลักษณะการเติมข้อความอัตโนมัติเพื่อช่วยในการใช้ไวยากรณ์ Python คุณอาจสังเกตเห็นฟังก์ชันเติมข้อความอัตโนมัติเมื่อคุณเริ่มพิมพ์คำแนะนำ ใช้ปุ่ม "ขึ้น" และ "ลง" เพื่อเลือกชื่อที่คุณต้องการจากนั้นกด "Tab" หรือ (Enter/Return) บนแป้นพิมพ์ของคุณเพื่อทำการเลือก สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้การกรอกข้อมูลอัตโนมัติโปรดดูบทความ Python

รูปภาพของฟีเจอร์การเติมข้อความอัตโนมัติในโปรเจกต์ Python

ตรวจสอบให้แน่ใจว่าคุณมีฮาร์ดแวร์ที่จำเป็นโน้ตบุ๊ควิศวกรรมและ VEXcode V5 ดาวน์โหลดและพร้อมใช้งาน

วัสดุที่ต้องใช้:
จำนวน วัสดุที่จำเป็น
1

ชุดเริ่มต้นห้องเรียน VEX V5 (พร้อมเฟิร์มแวร์ล่าสุด)

1

VEXcode V5 (เวอร์ชันล่าสุด, Windows, macOS)

1

สมุดบันทึกวิศวกรรม

1

เทมเพลต Clawbot (Drivetrain 2 - motor, No Gyro) ตัวอย่างโครงการ

ขั้นตอนที่ 1:  มาเริ่มเขียนโปรแกรมด้วยลูป

  • ก่อนที่คุณจะเริ่มโปรเจกต์ให้เลือกโปรเจกต์เทมเพลตที่ถูกต้อง โครงการตัวอย่างเทมเพลต Clawbot (Drivetrain 2 - motor, No Gyro) ประกอบด้วยการกำหนดค่ามอเตอร์ของ Clawbot หากไม่ได้ใช้เทมเพลตหุ่นยนต์ของคุณจะไม่สามารถเรียกใช้โปรเจกต์ได้อย่างถูกต้อง
  • เลือก  ไฟล์และ เปิดตัวอย่าง

    ภาพแสดงเมนูไฟล์ที่เปิดใน VEXcode V5 แสดงตัวเลือกเปิดตัวอย่าง

     

  • เลื่อนดู ตัวอย่าง โปรเจกต์ต่างๆ โปรเจกต์เหล่านี้แสดงให้เห็นถึงการกระทำที่หลากหลายที่ Clawbot ของคุณสามารถทำได้ เลือกและเปิดโป รเจกต์ตัวอย่าง Clawbot (Drivetrain 2 - motor, No Gyro)

    ภาพแสดงตัวอย่างโครงการที่มีกล่องสีแดงรอบๆแม่แบบโครงการ Speedbot (Drivetrain 2 - motor, No Gyro)

     

  • ตั้งชื่อโปรเจกต์ RepeatingActions

    ภาพแสดงชื่อโครงการการทำซ้ำใน VEXcode V5

  • พิมพ์รหัสต่อไปนี้:

    # การนำเข้าไลบรารี
    จากการนำเข้า vex *
    
    # เริ่มรหัสโครงการ
    # ไดรฟ์ไปข้างหน้า 300 มม. หมุน 90 องศา
    
    สำหรับการทำซ้ำ 4 ครั้งสำหรับ repeat_count ใน
        ช่วง (4): drivetrain.drive_for (FORWARD, 300,
        MM) drivetrain.turn_for (RIGHT, 90, DEGREES)
        รอ (5, SECONDS)

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

  1. คาดการณ์ว่าโปรเจกต์นี้จะให้ Clawbot ทำอะไร อธิบายมากกว่าความจริงที่ว่าโปรเจกต์ซ้ำแล้วซ้ำอีก

    มันเกิดอะไรขึ้นซ้ำแล้วซ้ำอีก? Clawbot กำลังทำอะไรอยู่?

  2. เขียนคำทำนายของคุณแต่อย่าแบ่งโครงการระยะสั้นออกเป็นมากกว่าสองส่วน

ไอคอนกล่องเครื่องมือครู กล่องเครื่องมือครู - คำตอบ

  1. โปรเจกต์นี้จะมีหุ่นยนต์: ขับไปข้างหน้า 300 มิลลิเมตรเลี้ยวขวา 90 องศาจากนั้นรอ 5 วินาที 4 ครั้งเพื่อให้ได้สี่เหลี่ยมจัตุรัส แทนที่จะใช้ 3 คำแนะนำเดียวกัน 4 ครั้งคำ แนะนำการ ทำซ้ำจะลดปริมาณลงเหลือเพียง 1 ครั้ง  คำแนะนำการ ทำซ้ำจะทำซ้ำการกระทำของการขับรถไปข้างหน้าแล้วเลี้ยว

  2. คำทำนายอาจเป็น "คลอว์บอทเคลื่อนไหวเป็นสี่เหลี่ยมจัตุรัส" นี่จะเป็นวิธีที่สั้นที่สุดในการจับภาพการเคลื่อนไหวซ้ำๆของ Clawbot ในขณะที่ขาดบริบทใดๆ

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

  • บันทึกดาวน์โหลดและเรียกใช้ โครงการการดำเนินการซ้ำ

    ภาพหน้าจอที่แสดงชื่อโครงการการกระทำซ้ำใน VEXcode V5

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

ขั้นตอนที่ 2: เรียกใช้โครงการและสังเกตหุ่นยนต์

การเปรียบเทียบตัวอย่างรหัส Python สองตัวสำหรับหุ่นยนต์ vex ข้อมูลโค้ดด้านบนใช้อินพุตเซ็นเซอร์เพื่อกำหนดเวลาที่จะหมุนโดยมีการวนซ้ำสักพักเพื่อตรวจสอบว่ากดสวิตช์กันชนหรือไม่หากกดหุ่นยนต์จะหมุนไปทางขวา 90 องศามิฉะนั้นจะเคลื่อนที่ไปข้างหน้า ข้อมูลโค้ดด้านล่างใช้ระยะทางคงที่เพื่อกำหนดเวลาที่จะหมุนโดยมี for loop ที่ขับเคลื่อนหุ่นยนต์ไปข้างหน้า 300 มม. หมุนขวา 90 องศาและรอ 5 วินาทีทำซ้ำลำดับนี้สี่ครั้ง

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

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

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

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

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

ไอคอนขยายการเรียนรู้ของคุณ ขยายการเรียนรู้ของท่าน

หากต้องการสำรวจเพิ่มเติมว่าท่านจะใช้ลูปที่มีเงื่อนไขได้อย่างไรให้นักเรียนสร้างโครงการเครื่องกวาดพื้นใน VEXcode V5

  • เริ่มต้นด้วยการให้นักเรียน ติดตั้งและเดินสายสวิตช์กันชน
  • ขอให้นักเรียนเปิดโครงการ  ตัวอย่าง Clawbot Template (Drivetrain 2 - motor, No Gyro)

     

  • ให้นักเรียน กำหนดค่าสวิตช์กันชน 3 สายใน VEXcodeV5 เลือกอุปกรณ์ 3 สายที่คุณใช้เพื่อ กันชนและเลือกพอร์ตไปที่ Bภาพการกำหนดค่าอุปกรณ์ใน VEXcode V5 พร้อมตัวเลือกกันชนที่ไฮไลต์ภาพของการกำหนดค่าอุปกรณ์สำหรับสวิตช์กันชนที่มีพอร์ต B ที่ไฮไลต์
     
  • ให้นักเรียนตั้งชื่อโครงการว่าเครื่องกวาดพื้น

  • ขอให้นักเรียนสร้างโครงการต่อไปนี้

    # Library import
    from vex import *
    
    import random
    
    # Begin project code
    while True:
        while (not bumper_b.pressing ()): drivetrain.drive
            (FORWARD)
            wait (5, msec)
        
        drivetrain.stop ()
    
        # The random.randomint () method return a random integer number between the specified range
        # pass the min and max values of the range to the parameters
        drivetrain.turn_for (RIGHT, (90+random.randint (0, 90)), DEGREES)
        wait (5, MSEC)

หากนักเรียนต้องการความช่วยเหลือเกี่ยวกับคำแนะนำให้ดู ข้อมูล ความช่วยเหลือ

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

ควรทราบว่ามีการใช้ โครงสร้าง ตลอดไปเพราะโครงการนี้จะตรวจสอบอย่างต่อเนื่องเพื่อดูว่ามีการกดสวิทช์กันชนหรือไม่

ขั้นตอนที่ 3: การท้าทายลูปที่สอง!

แผนภาพแสดงทางเดินสี่เหลี่ยมสีเขียวที่มีลูกศรแสดงทิศทางการเคลื่อนที่รอบสี่เหลี่ยม A diagram showing a green square pathway with arrow indicating the direction of movement around the square. ลูกศรสีส้มเพิ่มเติมนอกจุดสี่เหลี่ยมในทิศทางที่แตกต่างกันซึ่งสอดคล้องกับการเลี้ยวและการเคลื่อนไหวที่จำเป็นในการเดินตามทางเดิน

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

ภาพแสดงชื่อโครงการ Squared Loops ในแถบเครื่องมือใน VEXcode V5

ในสมุดบันทึกวิศวกรรมของคุณให้วางแผนสิ่งต่อไปนี้:

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

ไอคอนกล่องเครื่องมือครู กล่องเครื่องมือครู - การ แก้ปัญหา

ต่อไปนี้เป็นทางออกที่เป็นไปได้สำหรับการท้าทายลูปที่สอง:

# Library import
from vex import *

# Begin project code
for repeat_count in range (4): drivetrain.drive_for
    (FORWARD, 300, MM) claw_motor.spin_for
    (REVERSE, 70, DEGREES) arm_motor.spin_for
    (FORWARD, 360, DEGREES)
    claw_motor.spin_for (FORWARD, 70, DEGREES)
    arm_motor.spin_for (REVERSE, 360, DEGREES)
    drivetrain.turn_for (RIGHT, 90, DEGREES)
    wait (5, MSEC)

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