การเขียนโปรแกรมด้วยเงื่อนไขใน VEXcode IQ
กล่องเครื่องมือครู
-
วัตถุประสงค์ของกิจกรรมนี้
การเขียนโปรแกรมด้วยเงื่อนไขสามารถทำได้โดยใช้ บล็อก [ถ้าเป็นเช่นนั้น] ภายในโครงการ
กิจกรรมนี้จะแนะนำให้นักเรียนรู้จักกับการเขียนโปรแกรมด้วย บล็อก [If then]
เช่นเดียวกับการใช้การตรวจจับและบล็อกตัวดำเนินการเพื่อให้หุ่นยนต์ตรวจสอบว่ากดปุ่ม Brain
Up หรือไม่ ถ้ามันถูกกดแขนของคลอว์บอตจะยกขึ้น
บทนำแรกนี้จะวางรากฐานการทำงานสำหรับการเพิ่มปฏิกิริยาของหุ่นยนต์ไปยังปุ่มอื่นๆในสมอง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ [ถ้าเป็นเช่นนั้น]
[กดปุ่มสมอง]
[รอจนกว่า] หรือ <not> บล็อกโปรดไปที่ข้อมูลความช่วยเหลือภายใน
VEXcode IQ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือช่วยเหลือในตัวนี้คลิก ที่นี่
ต่อไปนี้เป็นโครงร่างของสิ่งที่นักเรียนของท่านจะทำในกิจกรรมนี้:
- ดูวิดีโอ แนะนำ การ ใช้ลูปและ If-Then-Else Blocks
- ใช้เทมเพลต Clawbot (Drivetrain) เพื่อสร้าง โครงการ ArmUp ที่มีให้และคาดการณ์สิ่งที่โครงการทำ
- ดูผังงานเพื่อช่วยอธิบายการไหลของบล็อกในโครงการ
- ปรับแต่งคำอธิบายของพวกเขาเกี่ยวกับ สิ่งที่ โครงการ ArmUp ทำ
- แก้ไขโปรเจกต์โดย เพิ่มบล็อค [รอจนกว่า]
- หยุดและพูดคุย: นักเรียนจะทบทวนการคาดการณ์ของพวกเขาว่าโครงการจะมี Clawbot ทำอะไรเมื่อเทียบกับการสังเกตจริงของพวกเขา
จำนวน | วัสดุที่จำเป็น |
---|---|
1 |
VEX IQ Super Kit |
1 |
VEXcode IQ |
1 |
สมุดบันทึกวิศวกรรม |
1 |
เทมเพลต Clawbot (ระบบขับเคลื่อน) |
Clawbot พร้อมที่จะตัดสินใจแล้ว!
กิจกรรม
นี้จะให้เครื่องมือในการเขียนโปรแกรมหุ่นยนต์ของคุณด้วยพฤติกรรมที่มี
เงื่อนไข บล็อก
[ถ้าเป็นเช่นนั้น] เป็นจุดสนใจหลักภายในกิจกรรมแต่ยังมีการใช้บล็อค Sensing, Control และ
Operator อื่นๆด้วย
คุณสามารถใช้ข้อมูลความช่วยเหลือภายใน VEXcode IQ เพื่อเรียนรู้เกี่ยวกับบล็อก สำหรับคำแนะนำในการใช้ คุณลักษณะ ความช่วยเหลือโปรดดูบทแนะนำการใช้ความช่วยเหลือ
เคล็ดลับสำหรับครู
หากนี่เป็นครั้งแรกที่นักเรียนใช้ VEXcode IQ พวกเขายังสามารถดูบทแนะนำในแถบเครื่องมือเพื่อเรียนรู้ทักษะพื้นฐานอื่นๆ
ขั้นตอนที่ 1: มาเริ่มต้นด้วยความเข้าใจเกี่ยวกับลูปและข้อความที่มีเงื่อนไข
ก่อนที่คุณจะเริ่มเขียนโปรแกรมด้วยเงื่อนไขก่อนอื่นให้ดูวิดีโอการใช้ลูปและ If-Then-Else ใน VEXcode IQ
เริ่มต้นด้วยการดู วิดีโอ การใช้ลูปสอนใน VEXcode IQ
จากนั้นดู วิดีโอ แนะนำ If-Then-Else ใน VEXcode IQ
ขั้นตอนที่ 2: การเขียนโปรแกรมด้วยเงื่อนไข
เราต้องการที่จะสร้างโครงการที่จะยกแขนถ้าเงื่อนไขของปุ่ม Brain Up
ที่ถูกกดเป็นจริง
หากเงื่อนไขเป็นเท็จ
Arm Motor จะหยุดทำงาน มาสำรวจการสร้างโปรเจกต์ที่ใช้บล็อค [Forever] และบล็อค [If then]
แบบมีเงื่อนไขเพื่อตั้งโปรแกรมแขนกัน
- เปิด เทมเพลต Clawbot (Drivetrain)
หากต้องการความช่วยเหลือโปรดดูวิดีโอแนะนำการใช้โปรเจกต์ตัวอย่างและเทมเพลต
- สร้างโปรเจกต์ด้านล่าง
- บันทึกโปรเจกต์เป็น ArmUp
หากนักเรียนต้องการความช่วยเหลือในการบันทึกโครงการโปรดดูวิดีโอแนะนำการตั้งชื่อและบันทึกใน
VEXcode IQ
- ตรวจสอบให้แน่ใจว่าชื่อโป รเจกต์ ArmUp อยู่ในหน้าต่างตรงกลางของแถบเครื่องมือแล้ว
- คาดการณ์ว่าโครงการจะให้ Clawbot ทำอะไรในสมุดบันทึกวิศวกรรมของคุณ อธิบายทั้งพฤติกรรมของผู้ใช้และ Clawbot
- ทดสอบเพื่อดูว่าการคาดการณ์ของคุณเกี่ยวกับสิ่งที่โครงการมี Clawbot ทำนั้นถูกต้องหรือไม่
- ดาวน์โหลดโปรเจกต์ไปยัง ช่อง 1 บน Clawbot แล้วเรียกใช้
- สำหรับความช่วยเหลือในการดาวน์โหลดและเรียกใช้โครงการโปรดดูบทแนะนำใน VEXcode IQ
ที่อธิบายวิธีการดาวน์โหลดและเรียกใช้โครงการ
- ตรวจสอบคำอธิบายของคุณเกี่ยวกับโครงการและเพิ่มบันทึกเพื่อแก้ไขตามความจำเป็น
กล่องเครื่องมือครู
โครงการที่นักเรียนสร้างข้างต้นจะไม่ทำงานตามที่เป็นอยู่ บล็อก [รอจนกว่า] จะมีความจำเป็นเนื่องจากความเร็วของการไหลของโครงการ หากไม่มีโครงการจะย้ายไปยังบล็อกถัดไปก่อนที่ Arm Motor จะมีเวลาตอบสนอง ดังนั้นบล็อกจะไหลลงไปที่ บล็อก [Stop motor] และจากนั้นเริ่มกลับมาที่ด้านบนของสแต็คเนื่องจาก บล็อก [Forever] ที่ทำซ้ำบล็อกทั้งหมดที่มีอยู่ภายใน สิ่งนี้จะถูกสำรวจแล้วอธิบายให้นักเรียนฟังในขั้นตอนต่อไป
กล่องเครื่องมือครู
-
หยุดและพูดคุย
ตอนนี้นักเรียนได้ทดสอบโครงการแล้วให้ถามพวกเขาว่าการคาดการณ์ของพวกเขาเมื่อเทียบกับการสังเกตของพวกเขาเป็นอย่างไร อำนวยความสะดวกในการอภิปรายโดยถามคำถามต่อไปนี้:
-
การคาดการณ์ของคุณเหมือนกับการสังเกตของคุณหรือไม่?
-
ดูเหมือนว่าจะเกิดอะไรขึ้นในโครงการ?
-
มีการตรวจสอบเงื่อนไขของปุ่มขึ้นเพียงครั้งเดียวหรือไม่?
-
คุณคิดว่าต้องเพิ่มอะไรลงในโครงการเพื่อให้โครงการทำงานได้อย่างถูกต้อง?
ขั้นตอนที่ 3: ทำความเข้าใจกับบล็อค [รอจนกว่า]
ในขั้นตอนก่อนหน้านี้โครงการไม่สามารถยกแขนขึ้นได้สำเร็จ ดูผังงานต่อไปนี้ที่อธิบายลำดับงานของโครงการ สังเกตว่าหากกดปุ่ม Brain Up การไหลของโปรเจกต์จะเคลื่อนที่อย่างรวดเร็วจนโปรเจกต์จะย้ายไปยังบล็อกถัดไปซึ่งก็คือ บล็อก [Stop motor]
ดังนั้นโปรเจกต์จึงต้องมี บล็อก [รอจนกว่า] ที่บอกให้ Arm Motor หมุนต่อไปจนกว่าปุ่ม Brain Up จะถูกปล่อยออกมา
บล็อก [รอจนกว่า] เป็นสิ่งจำเป็นเนื่องจากความเร็วของการไหลของโครงการ หากไม่อยู่ที่นั่นโครงการจะย้ายไปยังบล็อกถัดไปก่อนที่อาร์มมอเตอร์จะมีเวลาตอบสนอง ดังนั้นบล็อกจะไหลลงไปที่บล็อก [Stop motor] และจากนั้นเริ่มกลับมาที่ด้านบนของสแต็คเนื่องจาก บล็อก [Forever] ที่ทำซ้ำบล็อกทั้งหมดที่มีอยู่ภายใน
มาสำรวจการเปลี่ยนโปรเจกต์กันโดย เพิ่มบล็อค [รอจนกว่าจะถึง] ตอนนี้ Arm Motor
จะยังคงหมุนต่อไปจนกว่าจะปล่อยปุ่ม Brain Up เมื่อปล่อยปุ่ม Brain Up
แล้วโครงการจะดำเนินการต่อไปยังบล็อกถัดไปซึ่งก็คือ บล็อก [Stop motor]
ตอนนี้
โครงการจะตรวจสอบเงื่อนไขก่อนว่ามีการกดปุ่ม Brain Up หรือไม่ หากกดปุ่ม Brain Up
(จริง) แขนจะหมุนขึ้นจนกว่าจะปล่อยปุ่ม Brain Up เมื่อปล่อยปุ่ม Brain Up
โครงการจะย้ายไปที่บล็อก [Stop motor]
ก่อนที่จะกลับไปที่ด้านบนของสแต็คเพื่อเริ่มต้นอีกครั้งเนื่องจาก บล็อก [Forever]
หากไม่ได้กดปุ่ม
Brain Up (FALSE) โครงการจะย้ายไปที่บล็อก [STOP MOTOR]
ก่อนที่จะกลับไปที่ด้านบนของสแต็คเพื่อเริ่มต้นอีกครั้งเนื่องจาก บล็อก [Forever]
และแขนจะไม่หมุน
สร้างแรงจูงใจในการอภิปราย
ถาม: เมื่อไม่ได้ใช้การรอจนกว่าบล็อกจะเกิดอะไรขึ้นเมื่อกดปุ่ม Brain
Up
ตอบ: เนื่องจากความเร็วของการไหลของโครงการโครงการจึงย้ายจากบล็อก
[Spin] ไปยัง บล็อก [Stop motor] เร็ว กว่าที่ Arm Motor สามารถตอบสนองได้
ดังนั้นแขนจึงไม่ขยับ
ถาม: วัตถุประสงค์ของการรอจนกว่าจะมีการปิดกั้นในโครงการข้างต้นคืออะไร?
ตอบ: การรอจนกว่าบล็อกจะช่วยให้แขนหมุนขึ้นต่อไปจนกว่าจะปล่อยปุ่ม
Brain Up
ถาม: ความคืบหน้าของโปรเจกต์จะเป็นอย่างไรหากเงื่อนไขของปุ่ม Brain Up
ที่ถูกกดเป็นเท็จ (ปล่อยออกมา)?
ตอบ: หากเงื่อนไขเป็นเท็จการไหลของโครงการจะไปยัง บล็อก [Stop
motor] ต่อไปก่อนที่จะกลับไปที่ด้านบนของสแต็กซ้ำตลอดไป
ขั้นตอนที่ 4: เพิ่มบล็อค [รอจนกว่า]
มาเพิ่มบล็อค [รอจนกว่า] กัน:
-
เพิ่มบล็อค [รอจนกว่า] ในโปรเจกต์ ArmUp ของคุณเพื่อให้โปรเจกต์ของคุณมีลักษณะดังต่อไปนี้:
- บันทึกโปรเจกต์เป็น ArmUp2 หากนักเรียนต้องการความช่วยเหลือในการบันทึกโครงการโปรดดูบทช่วยสอนการตั้งชื่อและการบันทึก
- ดาวน์โหลดโปรเจกต์ไปยัง สล็อต 2 บน Clawbot แล้วเรียกใช้
- สำหรับความช่วยเหลือในการดาวน์โหลดและเรียกใช้โครงการโปรดดูบทแนะนำใน
VEXcode IQ ที่อธิบายวิธีการ ดาวน์โหลดและเรียกใช้โครงการ
- ทดสอบว่าแขนจะหมุนขึ้นหรือไม่เมื่อกดปุ่ม Brain Up
- ตรวจสอบว่าเมื่อไม่ได้กดปุ่ม Brain Up (ปล่อย) ที่ Arm Motor หยุดทำงาน
- เขียนข้อสังเกตของคุณเกี่ยวกับพฤติกรรมของ Clawbot ก่อนและหลังการเพิ่ม บล็อก [รอจนกว่า] ลงในโครงการของคุณในสมุดบันทึกวิศวกรรมของคุณ
กล่องเครื่องมือครู
-
หยุดและพูดคุย
หลังจากที่นักเรียนได้ทดสอบโครงการก่อนและหลังเพิ่มการรอคอยจนกว่าบล็อกแล้วให้พูดคุยกับนักเรียนว่าสิ่งนี้ช่วยให้แขนหมุนต่อไปได้อย่างไรจนกว่าปุ่ม Brain Up จะถูกปล่อยออกมา ขอให้นักเรียนแบ่งปันข้อสังเกตจากสมุดบันทึกวิศวกรรมของพวกเขา อำนวยความสะดวกในการอภิปรายโดยถามคำถามต่อไปนี้:
-
คุณคิดว่าโปรเจกต์นี้จะได้ผลในครั้งแรกก่อนที่จะเพิ่มการรอจนกว่าจะบล็อค?
-
การทดสอบโครงการแรกช่วยให้คุณรับรู้ได้อย่างไรว่ามีบางอย่างผิดปกติกับโครงการนี้?
-
มีการตรวจสอบเงื่อนไขปุ่ม Brain Up เพียงครั้งเดียวในโครงการหรือไม่?
สมุดบันทึกวิศวกรรมของนักศึกษาสามารถได้รับการดูแลและให้ คะแนน เป็น ราย บุคคล (Google /.docx /.pdf) หรือเป็น ทีม ( Google /.docx/.pdf) ลิงก์ก่อนหน้านี้ให้รูบริกที่แตกต่างกันสำหรับแต่ละวิธี เมื่อใดก็ตามที่มีรูบริกรวมอยู่ในการวางแผนการศึกษาเป็นแนวปฏิบัติที่ดีในการอธิบายรูบริกหรืออย่างน้อยก็ให้สำเนาแก่นักเรียนก่อนที่กิจกรรมจะเริ่มต้น