การควบคุมนิวแมติกส์โดยใช้ปุ่มบนคอนโทรลเลอร์ของคุณ

การควบคุมนิวแมติกส์ด้วยคอนโทรลเลอร์ V5 ของคุณจำเป็นต้องมีโปรเจ็กต์ที่ปรับแต่งเอง บทความนี้จะอธิบายวิธีสร้างโปรเจ็กต์ VEXcode V5


การกำหนดค่าโครงการของคุณ

แถบเครื่องมือ VEXcode V5 โดยมีไอคอนอุปกรณ์ถูกไฮไลต์อยู่ระหว่างไอคอนโปรแกรมดูโค้ดและไอคอนคอนโซลตรวจสอบ

เลือกปุ่มอุปกรณ์เพื่อเปิดหน้าต่างอุปกรณ์

แสดงเมนูอุปกรณ์ของ VEXcode V5 โดยมีปุ่ม "เพิ่มอุปกรณ์" ปรากฏอยู่

เลือก 'เพิ่มอุปกรณ์'

เมนูอุปกรณ์ VEXcode V5 หลังจากเลือกปุ่ม "เพิ่มอุปกรณ์" แล้ว ตัวเลือก Controller ถูกไฮไลต์ไว้

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

คุณจะต้องเพิ่มอุปกรณ์คอนโทรลเลอร์

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าอุปกรณ์ตัวควบคุม โปรดดูบทความ การกำหนดค่าตัวควบคุม V5 ใน VEXcode V5 จากไลบรารี VEX

ตัวเลือก VEXcode V5 แบบ 3 สาย ตามที่แสดงในเมนู เพิ่มอุปกรณ์ตัวเลือก Digital Out ของ VEXcode V5 จากอุปกรณ์ 3 สาย ตามที่เห็นในเมนู เพิ่มอุปกรณ์

 

คุณจะต้องเพิ่มอุปกรณ์ 3-Wire Digital out ด้วย

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าอุปกรณ์ Digital Out โปรดดูบทความ การกำหนดค่าอุปกรณ์ Digital In และ Digital Out แบบ 3 สายใน VEXcode V5 จาก VEX Library


ควบคุมกระบอกลมของคุณด้วยปุ่มควบคุมสองปุ่ม

มีสองวิธีที่ผู้ขับนิยมใช้กันทั่วไปในการควบคุมนิวแมติกส์บนหุ่นยนต์ 

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

โปรเจ็กต์ VEXcode V5 Blocks ที่มีข้อความว่า "เมื่อเริ่มต้น ให้ตั้งค่า DigitalOutA เป็นค่าต่ำ"

จากกล่องเครื่องมือการตรวจจับ ให้เพิ่มบล็อกดิจิทัลเอาท์ที่ตั้งค่าไว้ให้กับบล็อก [เมื่อเริ่มต้น]

บล็อก [set digital out] ควรตั้งค่าไว้ที่ 'ต่ำ' เพื่อให้แน่ใจว่ากระบอกนิวแมติกของคุณจะเริ่มโครงการหดกลับจนสุด

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าเมื่อกดปุ่ม L1 บน Controller1 ปุ่มในเมนูแบบดรอปดาวน์ถูกไฮไลต์เพื่อแสดงว่าสามารถเลือกปุ่มนี้เพื่อเลือกตัวเลือกเพิ่มเติมได้

จากกล่องเครื่องมือเหตุการณ์ให้เพิ่มบล็อก [เมื่อกดปุ่มตัวควบคุม]

เลือกปุ่มควบคุมที่คุณต้องการใช้เพื่อขยายกระบอกสูบนิวแมติก

ตัวอย่างนี้ใช้ปุ่ม L1

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านข้อความว่า "เมื่อกดปุ่ม L1 ของ Controller1 ให้ตั้งค่า DigitalOutA เป็นค่าสูง" เมนูแบบดรอปดาวน์เอาต์พุตดิจิทัลถูกไฮไลต์เพื่อแสดงว่าสามารถเลือกและเปลี่ยนแปลงได้

เพิ่มบล็อก [set DigitalOut]

เลือก 'สูง' สำหรับการตั้งค่าสัญญาณออกดิจิทัล

สิ่งนี้จะทำให้กระบอกนิวแมติกยืดออกเมื่อกดปุ่ม L1 บนคอนโทรลเลอร์

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าเมื่อกดปุ่ม L2 บน Controller1 ปุ่มในเมนูแบบดรอปดาวน์ถูกไฮไลต์เพื่อแสดงว่าสามารถเลือกปุ่มนี้เพื่อเลือกตัวเลือกเพิ่มเติมได้

จากกล่องเครื่องมือเหตุการณ์ให้เพิ่มบล็อก [เมื่อกดปุ่มตัวควบคุม] อีกบล็อก

เลือกปุ่มควบคุมที่คุณต้องการใช้เพื่อดึงกระบอกนิวแมติกกลับ

ตัวอย่างนี้ใช้ปุ่ม L2

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านข้อความว่า "เมื่อกดปุ่ม L2 ของ Controller1 ให้ตั้งค่า DigitalOutA เป็นค่าต่ำ"

เพิ่มบล็อก [set DigitalOut]

ปล่อยให้เป็น 'ต่ำ' สำหรับการตั้งค่าสัญญาณออกดิจิทัล

ซึ่งจะทำให้กระบอกนิวแมติกหดกลับเมื่อกดปุ่ม L2 บนตัวควบคุม

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการบันทึก การดาวน์โหลด และการรันโครงการ VEXcode V5 โปรดดูส่วน เปิดและบันทึกบล็อกโครงการ ของไลบรารี VEX


ควบคุมกระบอกลมของคุณด้วยปุ่มควบคุมเพียงปุ่มเดียว

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

โปรเจ็กต์ VEXcode V5 Blocks ที่มีข้อความว่า "เมื่อเริ่มต้น ให้ตั้งค่า DigitalOutA เป็นค่าต่ำ"

จากกล่องเครื่องมือการตรวจจับ ให้เพิ่มบล็อกดิจิทัลเอาท์ที่ตั้งค่าไว้ให้กับบล็อก [เมื่อเริ่มต้น]

บล็อก [set digital out] ควรตั้งค่าไว้ที่ 'ต่ำ' เพื่อให้แน่ใจว่ากระบอกนิวแมติกของคุณจะเริ่มโครงการหดกลับจนสุด

VEXcode V5 พร้อมเมนู "สร้างตัวแปรใหม่" ที่เปิดอยู่ เพื่อสร้างตัวแปรบูลีนใหม่

จากกล่องเครื่องมือตัวแปร ให้เลือกสร้างบูลีน

สำหรับตัวอย่างนี้ เราจะเรียกบูลีน: digitaloutON

โปรเจ็กต์ VEXcode V5 Blocks ที่มีข้อความว่า "เมื่อเริ่มต้นระบบ ให้ตั้งค่า DigitalOutA เป็น low จากนั้นตั้งค่า digitaloutON เป็น true"

เพิ่มบล็อก [set digitaloutON]

ปล่อยให้บูลีนตั้งค่าเป็น <true>

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าเมื่อกดปุ่ม L1 บน Controller1 ปุ่มในเมนูแบบดรอปดาวน์ถูกไฮไลต์เพื่อแสดงว่าสามารถเลือกปุ่มนี้เพื่อเลือกตัวเลือกเพิ่มเติมได้

จากกล่องเครื่องมือเหตุการณ์ให้เพิ่มบล็อก {when Controller button pressed}

เลือกปุ่มควบคุมที่คุณต้องการใช้เพื่อขยายกระบอกสูบนิวแมติก

ตัวอย่างนี้ใช้ปุ่ม L1

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าเมื่อกดปุ่ม L1 บน Controller1 ถ้าช่องว่างเป็นค่าว่าง ให้แสดงค่าอื่น ๆ

จากกล่องเครื่องมือควบคุมให้เพิ่มบล็อก [ถ้าเป็นเช่นนั้น]

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าว่า เมื่อกดปุ่ม L1 บน Controller1 ถ้า digitaloutON แล้ว มิฉะนั้น...

เพิ่ม <digitaloutON> Boolean ไปที่ if

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าว่า เมื่อกดปุ่ม L1 บน Controller1 ถ้า digitaloutON ให้ตั้งค่า DigitalOutA เป็นค่าสูง มิเช่นนั้น...

เพิ่มบล็อก [set DigitalOut] ไปที่ส่วน 'จากนั้น' ของบล็อก C

เปลี่ยนบล็อก [set DigitalOut] เป็น 'สูง'

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าว่า เมื่อกดปุ่ม L1 บน Controller1 ถ้า DigitalOutA เป็น ON ให้ตั้งค่า DigitalOutA เป็น High มิเช่นนั้นให้ตั้งค่า DigitalOutA เป็น Low

เพิ่มบล็อก [set DigitalOut] ไปที่ส่วน 'else' ของบล็อก C

ปล่อยให้บล็อก [set DigitalOut] เป็น 'ต่ำ'

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าว่า เมื่อกดปุ่ม L1 ของ Controller1 ถ้า digitaloutON ให้ตั้งค่า DigitalOutA เป็น high และตั้งค่า digitaloutON เป็น false มิเช่นนั้นให้ตั้งค่า DigitalOutA เป็น low

เพิ่มบล็อก [set digitaloutON]

เปลี่ยนบูลีนเป็น <false>

สิ่งนี้จะเปลี่ยนบูลีน ดังนั้นในครั้งต่อไปที่กดปุ่ม L1 เงื่อนไขจะไปที่ 'else' ของบล็อก C ควบคุม

โปรเจ็กต์ VEXcode V5 Blocks ที่อ่านค่าว่า เมื่อกดปุ่ม L1 ของ Controller1 ถ้า digitaloutON ถูกตั้งค่าเป็น high ให้ตั้งค่า digitalOutA เป็น high และตั้งค่า digitaloutON เป็น false มิเช่นนั้น ให้ตั้งค่า DigitalOutA เป็น low และตั้งค่า digitaloutON เป็น true

เพิ่มบล็อก [set digitaloutON] อื่น

ปล่อยให้บูลีนเป็น <true>

สิ่งนี้จะเปลี่ยนบูลีน ดังนั้นในครั้งต่อไปที่กดปุ่ม L1 เงื่อนไขจะไปที่ 'จากนั้น' ของบล็อก C ควบคุม

โปรเจ็กต์ VEXcode V5 Blocks ที่เพิ่มบล็อก Wait ซึ่งมีข้อความว่า "เมื่อกดปุ่ม L1 ของ Controller1 ถ้า digitaloutON ให้ตั้งค่า DigitalOutA เป็น high ตั้งค่า digitaloutON เป็น false แล้วรอ 0.1 วินาที" หรืออีกวิธีหนึ่ง ให้ตั้งค่า DigitalOutA เป็น low ตั้งค่า digitaloutON เป็น true แล้วรอ 0.1 วินาที

จากกล่องเครื่องมือควบคุมให้เพิ่มบล็อก [รอ] ไปยังทั้งสองส่วนของบล็อก C [ถ้าเป็นเช่นนั้น]

เปลี่ยนค่าเป็น (0.1) วินาทีในแต่ละบล็อก [รอ]

ซึ่งจะช่วยให้สภาวะต่างๆ ตรวจจับการกดปุ่มได้เป็นระยะเวลาสั้นๆ

ปุ่มจะขยายกระบอกนิวแมติกเมื่อกด จากนั้นจะหดกระบอกนิวแมติกเมื่อกดอีกครั้ง

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการบันทึก การดาวน์โหลด และการรันโครงการ VEXcode V5 โปรดดูส่วน เปิดและบันทึกบล็อกโครงการ ของไลบรารี VEX

ตัวอย่างภาพขนาดย่อของโปรเจ็กต์เทมเพลตการแข่งขัน VEXcode V5

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

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

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

หมายเหตุ: พอร์ต 3-Wire บน V5 Robot Brain จะเปลี่ยนกลับไปเป็นพอร์ต Digital in เมื่อโปรเจ็กต์หยุดลง ซึ่งอาจทำให้กระบอกนิวแมติกยืดออกได้ หากมีแรงดันอากาศตกค้างเพียงพอ เพื่อหลีกเลี่ยงปัญหานี้ ให้ปล่อยแรงดันอากาศโดยการเปลี่ยน Finger Valve ไปที่ตำแหน่งปิด หรือกดแกนของ Schrader Tyre Valve ก่อนหยุดโปรเจ็กต์

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: