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

ตัวควบคุมและลูป

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

ต่อไปนี้แสดงโครงการตัวอย่างการควบคุมรถถังจาก VEXcode V5 ใน ขณะที่ True infinite loop ในโครงการนี้จะตรวจสอบตำแหน่งของ Axes 2 และ 3 ตลอดไปเพื่อตั้งค่าความเร็วของมอเตอร์

# Library import
from vex import *

# Begin project code
# Main Controller loop to set motors to controller axis position
while
    True: left_motor.set_velocity (controller_1.axis3.position (), PERCENT)
    right_motor.set_velocity (controller_1.axis2.position (), PERCENT) left_motor.spin
    (FORWARD) right_motor.spin
    (FORWARD)
    wait (5, MSEC)

ลูปมีความสำคัญแม้สำหรับการเขียนโปรแกรมอัตโนมัติโดยไม่มีตัวควบคุม ลูปช่วยลดความซับซ้อนและจัดระเบียบคำสั่งซ้ำๆภายในโครงการ

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

หากต้องการขยายกิจกรรมนี้ขอให้นักเรียนสำรวจความแตกต่างระหว่างการควบคุมอาร์เคดและการควบคุมรถถัง นักเรียนสามารถทำตามโครงการตัวอย่างที่พบใน VEXcode V5รูปภาพของเมนูไฟล์ที่เปิดใน VEXcode V5 พร้อมตัวอย่างแบบเปิดที่ไฮไลต์

มีสี่โครงการตัวอย่าง: อาร์เคดซ้ายอาร์เคดขวาอาร์เคดแยกและการควบคุมรถถัง ภาพเมนูโครงการตัวอย่างที่มีการไฮไลต์โครงการดังกล่าวข้างต้น

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

หากต้องการเชื่อมโยงกิจกรรมนี้กับคณิตศาสตร์ให้ใช้โครงการอาร์เคดซ้าย/ขวา (หนึ่งจอยสติ๊ก) และโครงการอาร์เคด/รถถังแยก (ทั้งสองจอยสติ๊ก) ด้านบนเพื่อหารือเกี่ยวกับบทบาทของแกน X และ Y ภายในโครงการ