โจทย์การแข่งขันโจทย์การแข่งขันประกอบวงจรอิเล็กทรอนิกส์

1. โจทย์การแข่งขันประเภททีม
1.1. ผู้เข้าแข่งขันประกอบบอร์ดควบคุม YECC 2012 เพื่อให้สามารถทำงานได้อย่างถูกต้อง สมบูรณ์ และเขียนโปรแกรมควบคุมพื้นฐานตามที่กำหนดได้ (ผู้เข้าแข่งขันจะได้รับโจทย์ซอฟท์แวร์ในวันแข่งขัน)
1.2. ผู้เข้าแข่งขันแต่ละทีมประกอบวงจรอิเล็กทรอนิกส์ส่วนที่เหลือตามโครงงานรับมือภัยพิบัติ 2012 ที่แต่ละทีมได้ออกแบบและเสนอมา เพื่อให้ทำงานได้ตามวัตถุประสงค์ของโครงงาน ภายใต้งบประมาณ 2,000 บาท โดยโครงงานดังกล่าวจะต้องมีระบบรับมือภัยพิบัติ 2 ระบบ (1) ระบบตรวจจับและเตือนภัย (2) ระบบช่วยเหลือหรือระบบเยียวยา
              ระบบตรวจจับและเตือนภัย เป็นระบบที่สามารถตรวจจับภัยพิบัติและแจ้งเตือนเมื่อเกิดเหตุภัยพิบัติ ในส่วนของการตรวจจับภัยพิบัติ จะต้องมี analog sensor อย่างน้อย 1 ตัว (ชนิดของ sensor ขึ้นอยู่กับโครงงานที่ผู้เข้าร่วมแข่งขันนำเสนอ) ที่ต่อกับ ADC 10 บิตของบอร์ดประมวลผล YECC 2012 (ขา RA0) และในส่วนของการแจ้งเตือน จะต้องมีการแจ้งเตือนด้วยการส่ง SMS ไปยังเบอร์โทรศัพท์ที่กำหนด และอาจจะมีการแจ้งเตือนเพิ่มเติมในรูปแบบอื่น ๆ ตามความเหมาะสมของโครงงานที่แต่ละทีมนำเสนอ แผนผังของระบบตรวจจับและเตือนภัยแสดงดังรูป

            ระบบตรวจจับและเตือนภัยมี 2 โหมด ได้แก่ โหมดปกติ (operating mode) และโหมดตั้งค่า (config mode) โหมดปกติ คือ โหมดเริ่มต้นหลังจาก MCU มีการรีเซ็ต และเป็นโหมดที่บอร์ดควบคุมถือว่าตัวเองต่ออยู่กับ GSM Module ในโหมดนี้ระบบจะทำหน้าที่ตรวจจับภัยพิบัติ และแจ้งเตือนด้วยการส่ง SMS ผ่านระบบ GSM โดยส่งคำสั่งผ่านพอร์ตอนุกรมไปยัง GSM Module (รายละเอียดการส่งคำสั่งกับ GSM Module ศึกษาในภาคผนวก จ.1)
            โหมดตั้งค่า คือ โหมดที่กำหนดค่าต่าง ๆ ให้กับระบบ โดยในการกำหนดค่าเหล่านี้ จะต้องเป็นการตั้งค่าผ่าน PC หรือ Notebook ค่าที่จะกำหนดให้กับระบบ ประกอบด้วย ช่วงระดับของการเตือนภัย หมายเลขโทรศัพท์ที่จะแจ้งเตือน และการกำหนดว่าหมายเลขโทรศัพท์ใดบ้างที่จะได้รับการแจ้งเตือนในช่วงระดับของภัยในระดับใดบ้าง
            ในการสื่อสารระหว่างบอร์ดควบคุมกับ PC หรือกับ GSM Module ผ่านพอร์ตอนุกรม ให้กำหนดพารามิเตอร์ ดังนี้
                        Bits per second (Baud rate)         9600
                        Data bits                                     8
                        Parity                                       None
                        Stop bits                                     1
                        Flow control                              None
            หมายเหตุ: ในการทดลองทำโครงงานก่อนแข่งและในระหว่างการแข่งขัน ผู้เข้าแข่งขันจะไม่ได้รับ GSM Module จริง แต่ผู้เข้าแข่งขันสามารถจำลองการทำงานของ GSM Module ได้ด้วยโปรแกรมสื่อสารผ่านพอร์ตอนุกรม เช่น Hyper Terminal หรือ docklight ผ่านทาง PC ตามลำดับรูปแบบการรับส่งคำสั่งในภาคผนวก จ. ภายหลังจากทำโครงงานเสร็จเรียบร้อยแล้ว ผู้เข้าแข่งขันสามารถขอยืมใช้ GSM Module ในการทดสอบได้ และในการตรวจผลงาน คณะกรรมการจะตรวจให้คะแนนโดยดูผลลัพธ์จากการใช้ GSM Module


            วิธีการเข้าสู่โหมดตั้งค่า มีขั้นตอนดังนี้
            1. ต่อ PC เข้ากับบอร์ดควบคุม YECC 2012 ผ่านทางพอร์ตอนุกรม
            2. PC ส่งคำสั่ง *** ตามด้วย enter (carriage return + line feed) ให้แก่บอร์ดควบคุม
            บอร์ดควบคุมที่อยู่ในโหมดปกติ เมื่อได้รับข้อความ ***<enter> จากพอร์ตอนุกรม จะเปลี่ยนไปอยู่ในโหมดตั้งค่า เมื่ออยู่ในโหมดตั้งค่า ระบบจะต้องมีคำสั่งสำหรับตั้งค่าต่าง ๆ และเรียกดูค่าที่ตั้งไว้ดังนี้2

            1. คำสั่งกำหนดค่าช่วงระดับ ADC กับระดับของภัยพิบัติ
                ADC ที่ใช้เป็น ADC 10 บิต ค่าที่อ่านได้จาก ADC จึงมีค่าตั้งแต่ 0 ถึง 1023 คำสั่งนี้เป็นคำสั่งที่กำหนดว่า ช่วงระดับค่า ADC ช่วงใด หมายถึงภัยพิบัติระดับใด โดยระบบจะต้องรองรับระดับของภัยพิบัติอย่างน้อย 4 ระดับ เช่น

 

ช่วงระดับค่า ADC

ระดับของภัยพิบัติ

0 - 255

0

256 - 511

1

512 - 767

2

768 - 1023

3

            ตัวอย่างจากตาราง ภัยพิบัติระดับ 3 หมายถึงช่วงระดับค่า ADC ตั้งแต่ 512 ถึง 767 ในการกำหนดช่วงระดับค่า ADC แต่ละช่วงจะไม่ทับซ้อน (overlap) กัน
                    รูปแบบคำสั่ง: PC ส่งคำสั่ง l<m>=<N0...N3>-<M0...M3><enter> ให้แก่บอร์ดควบคุม เพื่อกำหนดระดับของภัยพิบัติระดับที่ m เท่ากับค่าของ ADC จาก N0...N3 ถึง M0...M3
                    ตัวอย่าง: l0=0000-0255<enter> เป็นการกำหนดให้ระดับ ACD จาก 0 ถึง 255 หมายถึงภัยพิบัติระดับ 03

            2. คำสั่งเรียกดูค่าช่วงระดับ ADC กับระดับของภัยพิบัติ
                เป็นคำสั่งสำหรับเรียกดูค่าที่ได้ตั้งไว้ตามคำสั่งที่ 1
                รูปแบบคำสั่ง: PC ส่งคำสั่ง l<m>?<enter> ให้แก่บอร์ดควบคุม เพื่อเรียกดูว่า           ภัยพิบัติระดับ m ตรงกับช่วงของค่า ADC ช่วงใด เมื่อบอร์ดควบคุมได้รับคำสั่งดังกล่าวแล้ว จะต้องตอบกลับด้วย l<m>=<N0...N3>-<M0...M3><enter>
                ตัวอย่าง: PC ถามบอร์ดควบคุมว่าภัยพิบัติระดับ 2 ตรงกับช่วงของค่า ADC ช่วงใดด้วยคำสั่ง l<2>?<enter>
                บอร์ดควบคุมตอบกลับ l<2>=0512-0767<enter> หมายความว่า ที่ภัยพิบัติระดับ 2 ช่วงของค่า ADC มีค่าตั้งแต่ 512 ถึง 767

            3. คำสั่งสำหรับตั้งค่าหมายเลขโทรศัพท์มือถือ
                ระบบจะต้องสามารถบันทึกหมายเลขโทรศัพท์มือถือได้ 10 หมายเลข
                รูปแบบคำสั่ง: PC ส่งคำสั่ง p<n>=<N0...N9><enter> ให้แก่บอร์ดควบคุมเพื่อกำหนดให้เบอร์โทรศัพท์ลำดับที่ n ได้แก่หมายเลข N0...N9
                ตัวอย่าง: p<0>=0815631338<enter> เป็นการกำหนดให้หมายเลข 0815631338 อยู่ในบัญชีหมายเลขโทรศัพท์ลำดับแรก (ลำดับที่ 0)

            4. คำสั่งสำหรับเรียกดูค่าหมายเลขโทรศัพท์มือถือ
                เป็นคำสั่งที่ PC ถามบอร์ดควบคุมเพื่อเรียกดูหมายเลขโทรศัพท์มือถือตามที่ได้ตั้งไว้จากคำสั่งที่ 3
                รูปแบบคำสั่ง: PC ส่งคำสั่ง p<n>?<enter> ให้แก่บอร์ดควบคุมเพื่อถามว่าหมายเลขโทรศัพท์ลำดับที่ n คือหมายเลขอะไร หลังจากบอร์ดควบคุมได้รับคำสั่งดังกล่าวแล้วจะต้องตอบกลับด้วย p<n>=<N0...N9><enter>
                ตัวอย่าง: PC ถามบอร์ดควบคุมด้วยคำสั่ง p<0>?<enter>
                บอร์ดควบคุมตอบกลับ p<0>=0815631338<enter>

            5. คำสั่งสำหรับกำหนดหมายเลขโทรศัพท์กับค่าระดับของภัยพิบัติ
                เป็นคำสั่งที่กำหนดว่า ที่ภัยพิบัติระดับใดจะต้องส่ง SMS ไปยังหมายเลขโทรศัพท์หมายเลขใดบ้าง
                รูปแบบคำสั่ง: PC ส่งคำสั่ง sl<m>p<n>[,p<n>...]<enter> ให้แก่บอร์ดควบคุมเพื่อกำหนดว่า ที่ภัยพิบัติระดับ m จะต้องแจ้งเตือนหมายเลขโทรศัพท์จากบัญชีหมายเลขโทรศัพท์ (ที่กำหนดจากคำสั่งที่ 3) p<n> หมายเลขใดบ้าง กรณีที่มีการแจ้งเตือนมากกว่าหนึ่งหมายเลข ให้คั่นระหว่างหมายเลขด้วยเครื่องหมาย comma
                ตัวอย่าง: sl1p0,p3,p2,p1<enter> เป็นการกำหนดหมายเลขโทรศัพท์ลำดับที่ 0 ถึง 3 ในบัญชีหมายเลขโทรศัพท์เป็นเบอร์ที่จะต้องได้รับ SMS แจ้งเตือนเมื่อเกิดภัยพิบัติระดับที่ 1
            ค่าต่าง ๆ ทั้งหมดที่ตั้งผ่าน PC จะต้องเก็บไว้ในหน่วยความจำ EEPROM
            วิธีการออกจากโหมดตั้งค่าเพื่อกลับเข้าสู่โหมดปกติ สามารถทำได้ 2 วิธี (1) การรีเซ็ต และ (2) ได้รับคำสั่ง ###<enter> จาก PC

              ระบบช่วยเหลือหรือระบบเยียวยา นอกจากระบบตรวจจับและเตือนภัยแล้ว โครงงานของผู้เข้าร่วมแข่งขันจะต้องเลือกทำอีก 1 ระบบ ระหว่างระบบช่วยเหลือกับระบบเยียวยา

1.3. เขียนรายงานสรุปผลโครงงาน
1.4. นำเสนอผลงานและตอบคำถามจากคณะกรรมการ มีเวลากลุ่มละ 15 นาที (นำเสนอและ     ข้อซักถามจากกรรมการ)

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