Robot contest 58
- เอกสารนี้เป็นเอกสารฉบับร่าง กรุณาอย่าเผยแพร่ต่อ
โครงการแข่งขันพัฒนาหุ่นยนต์ร่วมมือทำงาน
การพัฒนาหุ่นยนต์เป็นงานด้านวิศวกรรมศาสตร์ที่ต้องใช้ความรู้จากหลากหลายแขนง ทั้งในด้านไฟฟ้าอิเล็กทรอนิกส์และการควบคุมฮาร์ดแวร์ ด้านกลศาสตร์ และความรู้และความชำนาญด้านการพัฒนาซอฟต์แวร์ ด้วยเหตุนี้ ภายในประเทศจึงมีหน่วยงานหลายหน่วยงานที่ดำเนินการจัดการแข่งขันพัฒนาหุ่นยนต์ขึ้นมาในหลายรูปแบบและหลายระดับ อย่างไรก็ตาม ความต้องการนำหุ่นยนต์ไปประยุกต์ใช้ในด้านต่าง ๆ เช่น ในการกู้ภัย การรักษาความปลอดภัย หรือในด้านการให้บริการที่ซ้บซ้อน ทำให้เกิดปัญหาใหม่ ๆ ที่น่าสนใจและท้าทายในการพัฒนาและออกแบบระบบหุ่นยนต์อัตโนมัติอย่างมากมาย เช่น การพัฒนาระบบให้หุ่นยนต์ทำงานร่วมกัน การใช้งานระบบการสื่อสารไร้สาย และการใช้อุปการณ์ตรวจวัดหรือเซ็นเซอร์ในรูปแบบต่าง ๆ
ภาควิชาวิศวกรรมคอมพิวเตอร์ต้องการส่งเสริมให้เกิดความสนใจในสาขาที่สำคัญยิ่งต่อการพัฒนาประเทศและสังคมนี้ จึงได้จัดการแข่งขันพัฒนาหุ่นยนต์ขึ้นระหว่างงานบนเส้นทางวิศวกรรมประจำปี 2558 นี้ โดยมีการออกแบบเงื่อนไขให้มีการพัฒนาหุ่นยนต์ที่ทำงานร่วมกันเพื่อแก้ปัญหาตามที่ระบุ นอกจากผู้เข้าแข่งขันจะได้ฝึกหัดพัฒนาซอฟต์แวร์และปรับแต่งหุ่นยนต์แล้ว จะยังได้ประสบการณ์ในการคิดและวางแผนให้หุ่นยนต์ทำงานร่วมกันผ่านทางการสื่อสารไร้สายอีกด้วย
เนื้อหา
วัตถุประสงค์
1. เพื่อส่งเสริมและถ่ายทอดความรู้เกี่ยวกับการพัฒนาหุ่นยนต์ให้กับนักเรียนที่สนใจ
2. เพื่อสร้างความความตื่นตัวในการศึกษาด้านวิศวกรรมคอมพิวเตอร์ ในด้านที่เกี่ยวข้องกับการพัฒนาหุ่นยนต์อัตโนมัติ การตรวจจับ และการสื่อสารไร้สาย
3. เพื่อสร้างเครือข่ายผู้สนใจด้านเทคโนโลยีหุ่นยนต์ การควบคุม การทำงานร่วมกันและการสื่อสารไร้สาย
รูปแบบการแข่งขัน
ผู้เข้าแข่งขันพัฒนาหุ่นยนต์จะแข่งเป็นทีม ทีมละไม่เกิน 3 คน แต่ละทีมจะได้รับหุ่นยนต์ 2 ตัว โดยหุ่นยนต์จะมีลักษณะคล้ายรถยนต์สามล้อ มีล้อที่ควบคุมได้อิสระต่อกัน 2 ล้อ และมีล้อหน้าเพื่อการทรงตัว เพื่อปฏิบัติการแก้โจทย์ปัญหา ทีมผู้เข้าแข่งสามารถนำอุปกรณ์เซ็นเซอร์ประกอบเพิ่มเติมกับหุ่นยนต์ได้
โจทย์ปัญหาแต่ละข้อจะระบุสภาพแวดล้อมการทำงานของหุ่นยนต์ทั้งสองตัว (หรือจะเรียกว่าฉากเมื่อกล่าวต่อไป) โดยภายในฉากอาจจะมีปุ่มกด ประตูอัตโนมัติ คานที่ปรับระดับได้ พื้นที่เป็นสีและมีเส้นขีดสำหรับนำทาง ประตูและคานจะเคลื่อนที่ตามกฎเกณฑ์ที่ระบุ ซึ่งอาจจะขึ้นกับตำแหน่งและการทำงานของหุ่นยนต์ก็ได้ เช่น อาจมีเงื่อนไขว่าถ้าหุ่นยนต์ตัวหนึ่งกดปุ่มหนึ่ง ประตูบานใดบานหนึ่งจะเปิด เป็นต้น โจทย์จะระบุเป้าหมายและเกณฑ์การให้คะแนน เป้าหมายพื้นฐานจะเป็นเป้าหมายที่หุ่นยนต์ดำเนินการได้ไม่ยาก แต่จะมีระดับเพิ่มเติมของการให้คะแนนเพื่อเพิ่มความท้าทายและสนุกสนานในการแข่งขัน
ในแต่ละวันของการแข่งขัน ผู้เข้าแข่งขันจะได้รับโจทย์ในช่วงเช้า และจะมีเวลาในช่วงดังกล่าวเพื่อพัฒนาและทดสอบหุ่นยนต์ ทางผู้จัดการแข่งขันจะได้เตรียมส่วนของฉากเพื่อให้ผู้เข้าแข่งขันสามารถทดสอบหุ่นยนต์ได้ เมื่อถึงเวลาแข่งขันผู้เข้าแข่งจะต้องนำหุ่นยนต์ทั้งสองตัวเข้าไปปฏิบัติงานแก้โจทย์ในฉากจริง ระหว่างการทำงาน ถ้าหุ่นยนต์ทำงานผิดพลาด อาจมีการเปิดโอกาสให้ผู้เข้าแข่งเข้าไปปรับแก้ได้ โดยจะมีการระบุเงื่อนไขที่ชัดเจนต่อไป
ก่อนถึงวันแข่งขัน (วันที่ 7 พ.ย.) จะมีการอบรมการพัฒนาหุ่นยนต์ให้กับผู้เข้าร่วมแข่งขัน ทีมจะได้รับหุ่นยนต์ 2 ตัวที่จะใช้แข่งขันในวันจริงกลับไปเพื่อการฝึกฝนและทดลองใช้งาน
รายละเอียดเชิงเทคนิค
- จำนวนหุ่นยนต์: 2 ตัว มีลักษณะทั่วไปเหมือนกัน แต่สามารถติดอุปกรณ์เซ็นเซอร์แตกต่างกันได้
- บอร์ดควบคุมหลัก: บอร์ด Pro Micro ซึ่งใช้หน่วยประมวลผลเช่นเดียวกันกับ Arduino Micro
- ภาษาโปรแกรม: Arduino Language (มีลักษณะคล้ายภาษา C/C++)
- อุปกรณ์เซ็นเซอร์: เซ็นเซอร์ตรวจวัดแสงสะท้อนด้วยอินฟราเรด (เพื่อใช้ตามรอยเส้น), เซ็นเซอร์สี, เซ็นเซอร์ตรวจวัดความเร่ง (accelerometer), เซ็นเซอร์ตรวจสอบการกด
- อุปกรณ์ควบคุมการเคลื่อนที่: มอเตอร์ควบคุมล้อ 2 ตัว ซึ่งสามารถกำหนดความเร็วและทิศทางได้อิสระต่อกัน
- การสื่อสาร: การสื่อสารแบบ Bluetooth ที่ถูกตั้งค่าให้ต่อเชื่อมหุ่นยนต์ทั้งสองตัวเข้าด้วยกันโดยตรงเอาไว้แล้วล่วงหน้า
กำหนดการ
- รับสมัคร 26 ต.ค. - 4 พ.ย. 2558
- อบรมพื้นฐานและรับหุ่นยนต์เพื่อทดลอง 7 พ.ย. 2558
- การแข่งขันในงานบนเส้นทางวิศวกรรม 18 - 19 พ.ย. 2558
- ช่วงเช้า รับโจทย์ พัฒนาระบบ และทดสอบ
- ช่วงบ่าย นำหุ่นยนต์เข้าแข่งขัน
คุณสมบัติผู้เข้าแข่งขันและกติกาการแข่งขัน
คุณสมบัติของผู้เข้าแข่งขัน
- การแข่งขันเป็นแบบทีม ทีมละไม่เกิน 3 คน (แต่จะมีแค่ 1 คนก็ได้)
- สมาชิกแต่ละคนจะต้องเป็นนักเรียนระดับมัธยมศึกษาจากโรงเรียนเดียวกัน แต่ละโรงเรียนจะสามารถส่งได้เพียงทีมเดียวเท่านั้น โดยทีมจะต้องระบุอาจารย์ที่ปรึกษาจากโรงเรียนเพื่อรับรองความเป็นนักเรียนจากโรงเรียนนั้น ๆ หนึ่งท่าน
- ผู้เข้าแข่งขันควรมีประสบการณ์การเขียนโปรแกรมมาบ้าง (การพัฒนาซอฟต์แวร์ของระบบจะใช้ภาษา Arduino ซึ่งเป็นภาษาที่มีลักษณะคล้ายภาษา C)
กติกาการแข่งขัน
- การแข่งขันในแต่ละวันจะประกอบด้วยการพัฒนาหุ่นยนต์เพื่อทำกิจกรรมแก้ปัญหาตามที่ระบุในโจทย์
- ในแต่ละวันทีมจะได้รับโจทย์ในช่วงเช้า โจทย์จะอธิบายเงื่อนไข สนามแข่ง (หรือฉาก) และเกณฑ์การให้คะแนน ทีมจะมีเวลาจำกัดในการพัฒนาโปรแกรมและระบบควบคุมหุ่นยนต์สองตัวให้แก้ปัญหาตามที่ระบุในโจทย์ ทีมจะสามารถทดลองการทำงานของหุ่นที่สนามแข่งทดลอง ซึ่งจะเป็นส่วนของสนามแข่งจริง
- การแข่งขันจะมีในช่วงบ่าย ทุกทีมจะต้องหยุดการพัฒนาระบบของหุ่นยนต์ของทีม เพื่อร่วมการแข่งขันที่สนามแข่ง กรรมการจะจับฉลากลำดับทีมที่จะเข้าไปทดสอบระบบหุ่นยนต์ จากนั้นแต่ละทีมจะเข้าไปปฏิบัติการแก้ปัญหาโจทย์ในสนามจริง
- ในการปฏิบัติการแก้ปัญหาโจทย์อาจมีความผิดพลาดขึ้นได้ ก่อนการแข่งขันกรรมการจะระบุเงื่อนไขที่ทีมจะเข้าไปแก้ไขสถานการณ์ หรือแก้ไขระบบเพื่อเข้าทดสอบใหม่ โดยอาจจะมีการปรับคะแนนที่ทีมจะได้ถ้ามีการเข้าไปแก้ไขสถานการณ์หรือการแก้ไขโปรแกรมการทำงาน
- ทีมที่สนใจจะต้องเข้าร่วมอบรมพื้นฐานในวันที่ 7 พ.ย. 2558 เพื่อหัดใช้ไลบรารีในการควบคุมหุ่นและการสื่อสาร พร้อมทั้งรับหุ่นยนต์ 2 ตัวเพื่อนำไปทดลองพัฒนา หุ่นทั้งสองตัวจะเป็นหุ่นที่จะใช้ในการแข่งขันจริง ทีมจะสามารถปรับแต่งหุ่นยนต์ได้โดยการขยับอุปกรณ์ต่าง ๆ ไปมาบนตัวหุ่น อย่างไรก็ตาม ทีมจะต้องไม่ดัดแปลงหรือเพิ่มเติมอุปกรณ์ บอร์ดควบคุม มอเตอร์ หรือโมดูลสื่อสารไร้สายที่ตั้งค่าให้เชื่อมต่อกันเอาไว้ให้แล้วล่วงหน้า
- อาจเกิดปัญหาอื่น ๆ ที่อยู่นอกเหนือการควบคุมของทีมผู้จัดการแข่งขันได้ (เช่น ไฟดับ สนามมีปัญหา ฯลฯ) ในกรณีดังกล่าวให้ถือว่าการตัดสินผลของกรรมการเป็นที่สิ้นสุด
รางวัล
- รางวัลที่ 1 xxxxx บาทและประกาศนียบัตร
- รางวัลที่ 2 xxxxx บาทและประกาศนียบัตร
- รางวัลที่ 3 xxxxx บาทและประกาศนียบัตร