Posts Tagged competition

สิ่งที่ได้จาก TESA TopGun Rally

รูปภาพ จากการแข่งขันมาแล้วครับผม

หลังจากแข่งจบไปแล้ว ผมก็มาทบทวนว่า ผมได้อะไรจากรายการนี้บ้าง

1. ได้รู้จักคนเยอะขึ้นครับ ได้เจอหน้าค่าตาคนที่เรียนวิศวะสาขาใกล้เคียงกันในมหาลัยอื่นๆ รุ่นเดียวกันบ้าง รุ่นน้องบ้าง ได้เพื่อนใหม่ ได้รู้จักน้องๆจากเกษตรฯนอกเหนือจากที่เจอในโรโบคัพ ได้รู้จักทีมจากลาดกระบังที่ผมหันไปถามบ่อยมาก หะหะ ได้รู้จักทีมจากธรรมศาสตร์ ที่นั่งอยู่ด้านหน้าครับ

2. ได้แตะ PIC เป็นครั้งที่ 2 ในชีวิตครับผม ได้เข้าใจการเขียนโปรแกรมบน PIC มากขึ้น รู้จัก Input Capture รู้จักการเขียน Interrupt Driven บน PIC  อ่าน datasheet คล่องขึ้น รู้ว่าอะไรควรจะหาตรงไหนใน datasheet รู้จัก FreeRTOS และพอจะใช้มันได้
ข้อนี้เป็นจุดประสงค์ส่วนตัวของผมอย่างนึงที่ลงรายการนี้ เพราะรู้สึกตอนทำแล็บในภาคนั้น ไม่ได้ใช้พวก microcontroller มากนักเลยอยากรู้จักให้มากกว่านี้น่ะครับ

3. และก็ได้รู้ตัวว่า ผมเอง ไม่ได้ชอบพวก microcontroller หรืออาจจะรวมไปถึง embedded system มากนัก แต่ก็ไม่ได้เกลียดนะครับ ถ้าจะให้ทำ ก็ทำได้ แต่ไม่ได้ชอบมากมาย ขนาดถวิลหาน่ะครับ

4. ได้รู้จักคำว่า embedded system มากขึ้น พอจะมองเห็นภาพมากขึ้นว่า embedded system สำคัญอย่างไร

5. ระหว่างแข่งได้คุยกับพี่ TA (ที่คุยไปคุยมา ปี 4 เท่ากันนี่หว่า) เค้าเรียนภาควิชา ระบบควบคุมและเครื่องวัดครับ ถามเค้าถึงหลักสูตร ก็ได้รู้ว่า ภาคเค้าเรียน ทั้ง อิเล็กทรอนิคส์ ไมโครคอนโทลเลอร์ แล้วก็พวก ทฤษฎีการควบคุมทั้งหลาย (PID อะไรแบบนี้) สถิตินิดหน่อย ครับ การเรียนเป็นแบบสั่งงานให้ปฏิบัติ ฟังแล้วก็ดูตรงดีครับ เรียนจบคงทำงานเป็นชิ้นเป็นอันออกมาได้เลย

มีสิ่งที่ได้ ก็มีสิ่งที่เสียครับ

1. เสียเวลาไปมากพอสมควรกับรายการนี้ครับ จะว่าไม่คุ้ม ก็อาจจะได้ จริงๆรายการนี้ เค้าค้างกันน่ะครับ แต่พวกผมเลือกทีจะไปกลับเนื่องด้วยภาระงานส่วนตัว ก็เลยเสียเวลาเดินทางไปกลับด้วย เสียตังค์ค่าแท็กซี่ ด้วยอีก

2. เหนื่อยครับ การแข่งขัน ติดต่อกัน 5 วันเป็นอะไรที่เหนื่อยพอสมควร และมีเวลาบีบให้ส่งงาน รวมทั้งรายงานด้วย ก็เหนื่อยครับ ตื่นเช้า เลิกเย็น อีกทั้งพวกผมเดินทางด้วย กลับบ้านก็ ทำงานส่วนตัวต่อ ก็เหนื่อยเบิ้ลๆ ไปอีก

ถ้าจะให้แนะนำ การจะลงรายการนี้ ควรจะมีเวลาว่างพอสมควรครับ และควรจะไปค้างอย่างยิ่ง
คงจะทำให้แข่งขันสนุกมากขึ้น รู้จักคนมากขึ้นล่ะครับ และควรจะเตรียมพร้อม เตรียมความรู้
เกี่ยวกับโจทย์ไปด้วยครับ เรียนรู้ PIC ไปด้วย อย่าหวังว่าเค้าจะสอนอะไรให้เลยครับ
สมาชิกในทีมก็น่าจะจัดทีมคร่าวๆ ดังนี้ Programmer 2-3 คน SE 1-2 คน ไฟฟ้า 1 คน
กำลังดีครับ

ปล. มีคนถามมาเยอะ ว่า มี ผู้หญิง ไปแข่งเยอะมั้ย ตอบตรงนี้เลยว่า ชาย 95% ครับ
ถ้าจะมีก็พวก staff จาก KMUTT เองแหละครับ

Tags: , ,

TESA TopGun Rally 2008 – วันสุดท้าย

วันสุดท้ายครับ วันที่ 6

งานเริ่ม 10.00 น. เลยไม่ต้องตื่นเช้ามาก ไปถึงเค้าเข้าห้องประชุมกันหมดแล้วครับ
ไม่นาน งานก็เริ่ม กล่าวถึงความเป้นมาต่างๆครับ สาเหตุที่ชื่อการแข่งว่า TopGun
ก็เพราะ หนังเรื่อง TopGun ครับ ไม่ใช่แต่ก็ใกล้เคียง ผศ.ดร.อภิเนตร ทีเ่ป็นปธ. TESA
บอกว่า TopGun เป็นโรงเรียนสอนขึบเครื่องบินของอเมริกา ที่จะคัดคนที่เก่งสุดยอด
มาเรียนด้วยกัน แข่งด้วยกัน เพื่อคัด “The best of the best..” (เค้าเน้นประโยคนี้มาก)

เค้าก็เลยเอาโมเดลนี้มาใช้ครับ โดยบอกว่าคนเข้าแข่ง(เช่นพวกผม) เป็น The best ของแต่
ละมหาวิทยาลัยครับ(ซึ่งจริงๆ พวกผมไม่ใช่่) มาประชันกันแล้วก็คัดเพื่อหา The best of
the best embedded system developer ครับ โอ้ว

ครับ แล้วก้ให้ sponsor ต่างๆ ของงานขึ้นมาพูดครับ ทั้ง NECTEC ,มูลนิธิวิจัยเทคโนโลยีสารสนเทศ
Toyota Tsusho , WD Digital บลาๆ ครับ และแล้วก็ประกาศผลครับ

ผมมั่นใจว่า เกษตรได้ ที่หนึ่งแน่ๆ แต่ว่าลำดับรองลงมาคือที่ไหน อันนี้ต้อลุ้นครับ สำหรับทีมผม
ผมไม่ค่อยหวังอะไรครับ เพราะ วันแรกๆทำไม่ได้เลยครับ มาได้ส่งเป็นเรื่องเป็นราว
สองวันสุดท้าย ก็เลยไม่น่าจะได้อะไร

พอเริ่มประกาศ รางวัลชมเชยเป็น ลาดกระบัง ผมก็รู้แล้วครับ ว่าไม่ได้อะไร เพราะทีมลาดกระบังทำได้ดีกว่าเราแน่ๆ

สรุปผลก็คือ 1. ม.เกษตร 2.พระจอมเกล้าพระนครเหนือ 3. ม.บูรพา 4.ลาดกระบัง(ขอเขียนย่อนะ)
(พึ่งไปเจอผลคะแนน 4 วันแรกมาครับ คะแนนทีมเราก็ไม่เลวร้ายนี่หว่า  ดูคะแนนที่นี่)

ยินดีด้วยกับทุกทีมครับ หลังจากนั้น ก็มีมอบเกียรติบัตรให้กับทุกทีม แล้วก็แยกย้ายกันถ่ายรูปครับ

หลังจบงาน มีอาจารย์ที่่เป็นกรรมการหลายคน เข้ามาถามครับ ว่า “จุฬาฯพลาดตรงไหนเหรอ”
คนแรกๆที่มาคุยด้วยก็เป็นพี่วิศวะไฟฟ้า ครับ รุ่น 80 ครับ เป็น 1 ในกรรมการด้วย
หลายท่านเข้ามาถามว่า พลาดตรงไหน อยุ่ภาคไร อะไรทำนองนี้ ครับ พูดไปก็เหมือนแก้ตัวครับ
แต่ก็บอกไปตามตรงครับ ว่า ไม่ค่อยรู้เรื่อง PIC ครับ ใช้ไม่ค่อยเป็น แล้วก็
นึกว่าในการแข่งขันจะมีสอนให้ เลยกะมาเรียนครับ ไม่ได้เตรียมตัวอะไรเลย

ดูสีหน้าอาจารย์หลายท่าน ก็มองเหมือนกับว่า พวกผมแก้ตัวล่ะครับ แต่มันก็เป็นเรื่องจริงๆ
บางท่านก็ว่าไม่เป็นไรๆ บางท่านก็ว่ามันต้องเตรียมตัวสิ คุณเป็น The best ของมหาลัย (อันนี้อาจารย์อภิเนตร เลยครับ) ก็คุยๆไปครับผม
ตัวอาจารย์อภิเนตรเอง ก็บอกให้ปีหน้าไปเทรนน้องๆ ขึ้นมาแข่งซะ ไรทำนองนี้ ก็เข้าใจนะครับ
ว่าอาจารย์ท่านมอง รายการ TopGun เป้นรายการใหญ่และสำคัญมาก คัด The best of the best

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

ทีมพวกเราพยายามเท่าที่จะทำได้แล้ว จากที่ไม่ค่อยเป็น ทำมาได้ถึงแค่นี้ ส่วนตัวก็พอใจสำหรับ
ผมแล้วล่ะครับ

Tags: , ,

TESA TopGun Rally 2008 – วันที่ 4 และ 5

วันที่ 4

หลังจาก วันที่ 3 ผมเฟลพอสมควรครับ
มาวันนี้ หัวข้อคือ Software Development Process มีอ.จาก ธรรมศาสตร์ มาพูดครับ
ขอโทษจริงๆที่จำชื่อไม่ได้ แต่พูดโอเคเลยครับ พูดเรื่องการพัฒนาซอฟต์แวร์โดยเน้นไปที่
Embedded System น่ะครับ นั่งฟังๆไป มันก็เหมือน SE

อ. ยังบอกว่า วันนี้เราอาจจะไม่ได้ใช้ MPLAB เลย จะใช้แต่ Word และ Powerpoint
ทั้งห้อง ฮือฮา เล็กน้อยๆ 555+ ผมเองก็ช็อกครับ วันนี้จะไม่มีเขียนโค้ด
วันนี้เป็นเรื่องของ SE ทั้งวันเลย ตอนเช้าอ. ท่านก็สอนไปเรื่อยๆ ครับ ผมก็ฟังๆไปเรื่อยๆครับ
พร้อมทั้งเล่นเน็ตอะไรไปด้วย จีโนมเองยังติดใจ UART ที่ทำไม่ได้เมื่อวาน เลยลองอีกครั้ง
โดยใช้ Template FreeRTOS Project ที่เค้าให้ตอน pre-trainning (แต่พวกผมไม่รู้) พึ่ง
ได้จากกลุ่มอื่นตอนเลิกเมื่อวันก่อนครับ พอทำๆไป โค้ดเดิม UART มันเวิร์กเฉยเลย หะหะ? เป็นงั้นไป

ช่วยไม่ได้ครับ ผมเลยมีความหวังว่า โค้ดของผมเองที่แก้ต่อจาก Demo project แบบเดียวกับ
จีโนม พอเปลี่ยนมาใช้ Template project อันนี้ จะเวิร์กให้เจ็บใจเล่นเเหมือนกัน
แต่ก็ลองไมไ่ด้ครับ เพราะเค้าไม่แจก เครื่องยนต์จำลองให้ เพราะวันนี้ งานคือ SE

ตอนบ่าย ก็เริ่มทำงานครับ! ทำ SE เอกสารให้กับงานของเมื่อวาน ผมให้ยิ้งกับเอกทำไปครับ
ส่วนผมจะแก้โค้ดของเมื่อวานให้ใช้ได้เพราะ คิดว่า วันสุดท้ายต้องใช้ ก็ทำกันไปครับ
เอกสาร SE ที่ว่าไมไ่ด้ แบบเต็มๆหรอกครับ? มีประมาณ Requirement , Data flow diagram
State transition matrix ของระบบ? อะไรทำนองนี้ครับ

แล้วก็ต้องออกไปพรีเซนท์ ตอนเย็น หน้าห้อง ทีมละ 5 นาที ครับ เวลาน้อยมากเลยครับ
ตอนแรกก็นั่งชิวกันไปหน่อย ตอนใกล้จะหมดเวลา เลยลนๆ รีบทำกันเล็กน้อย
แล้วก็จับฉลากได้ออกไปพรีเซนท์เป็นกลุ่มที่ 3 ครับ

ด้วยเวลา เพียง 5 นาที ก็พุดไรได้ไม่เยอะ รีบๆ พูดตรงเฉพาะส่วนที่สำคัญ พอหมดเวลา ซึ่งผม
ปิดท้าย กรรมบอกหมด ผมก็หยุดทันที ขอบคุณครับ เอาเป็นว่า ออกมาโอเคล่ะครับ เนื้อหามี
รักษาเวลาพอได้ ก็ผ่านไปครับ หลังจากนั้นก็นั่งเล่นเน็ต ฟังกลุ่มอื่นพูดไป แล้วกลับบ้าน

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

วันที่ 5

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

เป็นอันว่า ผมพอใจ กราฟก็ดูด้วยตา ก็น่าจะถูกพอสมควร แต่ไม่ได้ calibrate หรือปรับแต่ง
ให้ละเอียดเป๊ะๆ เลย เพราะ ขี้ีเกียจครับ ตอนนั้นรู้สึกเหนื่อยๆ ได้แค่นี้ก็พอใจแล้ว ประกอบกับใช้
logic analyzer วัดแม่นๆไม่เป็นด้วย

ตอนนั้นผมนิ่งชิวครับ รู้สึกพอใจกับตัวเองพอสมควร ที่จากเขียน PIC ไม่ค่อยจะเป็น Input Capture
คืออะไร เขียน Interrupt Driven ยังไง ใช้ FreeRTOS ยังไง อ่าน Datasheet ไม่คล่อง
ถึงตอนนี้ทำได้กราฟออกมาใกล้เคียง ผมก็โอเค ก็เลยนั่งรอเวลาส่งครับ

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

พอถึงเวลาส่ง ก็ส่งครับ โชว์ให้เหล่ากรรมการดู (เป็นครั้งแรกหลังจากแข่งมาหลายวันที่มีงาน
โชว์ให้กรรมการดู) ค่าก็ไม่ตรงมาก แค่ใกล้เคียงครับ ผิดพลาดไปเป็น 100 us เลย เค้ารับได้แค่
10 us หะหะ กรรมการบอกให้วัดเวลาให้หน่อย ผมก็บอก “ทำยังไงครับ อาจารย์” หะหะ
ใช้ไม่เป็นนี่หว่า อ. เค้าก็เลยกดๆๆ ใช้ให้ดู พึ่งรุ้ว่า logic analyzer ทำอะไรแบบนี้ได้ด้วย หะหะ

ก็เป็นอันว่าส่งเสร็จครับ ถูกมากแค่ไหน ไม่ทราบ แต่ผมพอใจ
รอกลุ่มอื่นส่งเรื่อยๆครับ

หลังจากนั้น ก้มี งานเลี้ยง Farewell Party ครับ เป็นโต๊ะจีน ทีมเราได้นั่งกับม.บูรพาครับ
ก็คุยกันนิดหน่อย แล้วก็กินๆ บนเวทีก็เล่นเกมส์ ร้องคาราโอเกะกันไปครับ เฮฮาพอสมควร
น้องเกษตรคนนึง ร้องเพลงคู่กับ Staff ฮามาก

แล้วจู่ๆ บนเวทีก็ถามว่า “ใครมาจากจุฬาฯบ้างครับ” เอาแล้วไง? “มีคนอยากให้ขึ้นมาร้องเพลงครับ”
เหมือนโดนแก้แค้นหน่อยๆ หะหะ คนรีเควสก็เดาได้เลยครับ พี่จัดงานที่ไปเทลาะวันแรก หะหะ
ทุกโต๊ะหันมามองหมด ก็เลยออกไปครับ

ผมออกไปกับไอเอก ไปยืนร้องเพลงบนเวที ม.เชียงใหม่ก็โดนทำนองเดียวกัน 55
ร้องเสียงเพี้ยนค่อนข้างมากกก อายนิดหน่อย ไปร้องเพลง “ปาฏิหารย์ ของ กบ ทรงสิทธิ์” (ผมเลือกเอง)
เพลงที่ไม่เข้ากับงานเลย 55+ คนก่อนหน้านี้ ล้วนแต่ร้องเพลงสนุกๆ เพลงสมัยใหม่
แต่ผมร้องเพลงเก่า แถมทำนองช้าๆ เนิบๆ 55+(แต่ชอบนี่หว่า) ตอนร้องบนเวทีนี่
ทั้งลานเงียบสงัด เห้นแบบนั้นเลยคิดได้ว่า เค้าอาจจะไม่รุ้จักเพลงนี้ก็ได้ 55+

ก็ด้น ร้องขำๆ มั่วๆ จนจบไป :P ไม่คิดมากครับ ไม่คิดมาก

กว่าจะได้กลับบ้าน ก็ 4-5 ทุ่มแล้วล่ะครับ

วันรุ่งขึ้นจะประกาศผลแล้ว!! ไม่ได้หวังอะไรมาก

Tags: , ,

TESA TopGun Rally 2008 – วันที่ 2 และ 3

วันที่ 2

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

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

ตอนบ่าย มีพี่(เหมือน TA) ส่งเฉลยของเมื่อเช้ามาให้ครับ พร้อมกับโจทย์รอบบ่าย
โจทย์คราวนี้ทำ ต่อจากของเดิมครับ โดยต้องสร้างสัญญาณ จุดระเบิด(Ignition Pulse) ออกมา
ตามตำแหน่ง หรือองศาที่ต้องการครับ

โจทย์เข้าใจได้ไม่ยาก แต่ปัญหาคือ การเขียน Interrupt Driven กับ Timer Function ครับ
ก็แบบเดิมครับ คือใช้มันไม่เป็น config bits ต่างๆไม่เป็นเลยครับ อ.กับพี่ หน้าห้องก็อธิบายแต่
โจทย์ครับ? ก็เลยต้องนั่งอ่าน Datasheet เอง กับอาศัยดู โค้ดเฉลยพี่ต้องเช้า แกะๆเอาครับผม

เค้าให้โจทย์มาบ่ายโมง ให้ส่ง บ่ายสอง โอ้ววว ผมคิดใจว่าไม่น่าจะทำอยู่แล้ว
การทำงานก็ต่างคนต่างทำเลยครับ ใครทำได้ ก็เอาของคนนั้นส่ง? ผลัดกันเบิร์น เพราะ dsPIC มีบอร์ดเดียว

ช่วงบ่ายนี้ อ.ประภาส กลับ อ.นัทที มาเยี่ยมด้วยครับ มาถามว่าแข่งเป็นยังไงบ้าง ทำได้มั้ย
ก็ตอบไปตามความจริงครับ ว่า config PIC ไม่เป้น อ.ก็ อืมๆๆ อ. ไม่ได้ว่าอะไรครับ อารมณ์ดี
บอกจะสอนให้เลยด้วย (ถ้าเค้ายอมให้สอน) หะหะ

อ.กลับไป ผมก็ทำต่อ ครับ จนในที่สุด จนในที่สุด ทำออกมาจนได้ครับ!!! ตอน 4 โมง
ซึ่งมันส่งไม่ทันแล้วหละครับ แต่ก็อารมณ์ดีครับ เพราะทำได้ด้วยตัวเอง แถมพอจะเข้าใจ
การใช้ Interrupt Driven? เข้าใจการใช้ Timer คุ้นเคยกับ MPLAB IDE ด้วยครับ

ตอนที่เสร็จ กรรมการก็กำลังตรวจกลุ่มที่ทำได้อยู่ครับ มีอยู่ 4-5 กลุ่มเห็นจะได้

ก็ทำเสร็จ ปั่นรายงานส่ง แล้วก็กลับบ้านตอน หกโมงกว่าๆครับ อารมณดีนิดหน่อยครับ

วันที่ 3

วันนี้ เอกกับยิ้งติดธุระมาไม่ได้ครับ เลยเหลือ ผม จีโนม และน้องโมทย์นั่งอยู่สามคน
ตามกำหนดการ วันนี้เป็นเรื่อง ของ FreeRTOS ครับ เป็น Real-time OS ที่ใช้กับหลาย platform
มาก ที่มันเท่ห์คือ ตัว OS มีไฟล์ C หลักๆแค่ 3 ไฟล์เท่านั้น!! เท่ห์มั้ยล่ะครับ หลังจากศึกษาดู
ก็ดูเหมือนว่า มันคือการ ทำ scheduling บนไมโครคอนโทรลเลอร์ + Simple Memory Management Library + Synchronization ครับผม เข้าใจไม่ยาก ถ้าเรียน OS มาดี

ช่วงเช้า อ. เค้าสอนเรื่อง? Real-time OS ครับ ซึ่งถ้าฟังจริงๆ เค้าก็คือสอนวิชา OS แหละครับผม
ซึ่งเรียนมาหมดแล้ว ผมไม่หวังว่าเค้าจะสอนใช้ FreeRTOS (ดูจาก 2 วันที่ผ่านมา) ผมเลยใช้เวลาช่วงเช้า นั่งอ่าน Doc ของ FreeRTOS ซึ่งมีไม่เยอะมากและเข้าใจง่ายดีครับ

ตอนบ่าย ก็กะแล้วครับ มาถึงโยนโจทย์ให้ทำเลย ส่ง 4 โมงเย็น งานคราวนี้เป็นเรื่องเป็นราวมากครับ
มีแบ่ง Task(อีกชื่อของ Process) เป็น 3 task ครับ ผมก็แบ่งงานกับจีโนม กับน้องโมทย์? ทำคนละ
Task ผมรับหน้าที่ทำ ส่วนที่เอาของเมื่อวานมาแปลงเป็น Task ทำงานบน FreeRTOS ครับ
จีโนมรับส่ง cmd กับ UART น้องโมทย์ทำ A2D รับค่า

ก็ใช้เวลา นั่งแกะ นั่งแงะ นั่งย้าย โดยอิงจาก Demo Project จากเว็บ FreeRTOS ครับ
ผมไม่เข้าใจเหมือนกันว่าทำไม แ่ต่ demo ของเค้า ไฟล์เยอะมากก ไม่ simple เลยซํกนิด
ผมลบๆ เพิ่มๆ พยายามคอมไพล์ให้ได้ ปัญหาอีกอย่างคือ demo มันสร้างบน dsPic คนละเบอร์
มีปัญหากับ header file ด้วยครับ

นั่งมั่วอยู่นานมากครับ จนคอมไพล์ผ่าน port โปรแกรมเมื่อวานไปลง ทดลองรัน มันไม่เวิร์กครับ
เกิดไรขึ้นไม่รู้ กราฟผิดไป อยาก 0 ก็ 0 อยาก 1 ก็ 1 แต่เป็น pattern นะครับ
นั่ง debug อยู่นานมาก ผมกับ จีโนม สลับกัน burn เลย จีโนมก็เจอปัญหา UART ส่งอะไรออก
มาไม่รู้ครับ

นั่งมั่วจนหมดเวลา ส่งโปรเจค demo เปล่าๆ นั่นแหละครับ ไป ทั้ง 3 คนทำไม่สำเร็จซํกคน
ปวดหัวมากครับ จีโนมก็ปวดหัวเพราะอดนอนมา มี ทำเสร็จ อยุ่ 3-4 ทีมครับ ตอนกรรมการ
เดินมาที่ทีมเรา ผมก็บอกไปว่าทำได้แค่เท่าเมื่อวาน เค้าก็อืมๆ แล้วเดินผ่านไปเลย

Fail ครับ Fail จริงๆ รายงานก็ไม่รู้จะเขียนไร หลักการ ทฤษฎี เข้าใจหมด แต่รัน FreeRTOS
ไม่ได้ เซ็งเลยครับ หลังจากไปคุยกับทีมอื่นๆ ว่าเค้าทำยังไง ถามไปถามมา
เค้าบอกมันมี Pre-Trainning เรื่อง FreeRTOS ก่อนหน้านี้ด้วย!!
ซึ่งทีมผมไม่รู้ (อาจจะเพราะสมัครช้า) นั่นแหละครับ แถม trainning เข้ามี blank project ง่าย
มาด้วย หึหึ หึหึ เซ็งเพิ่มขึ้นอีกเล็กน้อย เลยขอ copy มาครับ เผื่อสำหรับวันรุ่งขึ้น

ก็จบไปอีกวันครับ กลับบ้านแบบเฟลๆ

Tags: , ,

TESA TopGun Rally 2008 – วันแรก

ยุ่งมาราธอนครับ ยังไม่ได้ปิดเทอมเลย สอบเสร็จ ก็สอบ IBMSD ทำ senior project ช่วยงานจัดแข่งฟันดาบ CUOPEN ไปโชว์หุ่นยนตร์ที่ฟิวเจอร์พาร์ครังสิต สอบ ITPE ออกจากบ้านทุกวันเลยครับ

ตอนนี้ก็อยู่ที่ พระจอมเกล้าธนบุรีครับ มาแข่งขันรายการ TESA TopGun Rally 2008 ชื่อไม่ค่อยบอกอะไร
แต่มันเป็นงานแข่งขัน Embedded System ครับผม ลักษณะการแข่งเป็น ตอนเช้าสอน ตอนบ่ายมีโจทย์ให้ทำ ทำเสร็จ ส่งโค้ด กับรายงาน เก็บคะแนนเป็นวันๆไปครับ

คนเข้าแข่งก็มีประมาณ 20 ทีม จากมหาวิทยาลัยทั่วประเทศเลยครับ
ทีมผม ก็ประกอบด้วย ผม จีโนม ยิ้ง น้องโมทย์ และก็ เอก

บอกว่า Embedded แต่จริงๆ คือมานั่งเขียน dsPIC ที่ไม่ได้แตะมานานมากกก หลังจากแล็บปีสอง :P
ลืมหมดแล้วครับ MPLAB กลับมาอีกครั้ง

ก่อนมาแข่งก็เตรียมของยาว 1 หน้ากระดาษ เหนื่อยพอสมควรเลย เค้าให้เตรียมของเยอะมาก
บางอย่างก็พึ่งรู้จัก หะหะ

วันแรก (20 ต.ค.)

วันนี้มาถึงตอนเช้าเค้าก็สอนเรื่องเครื่องยนต์ครับ งานหลักของงานนี้คือ เขียน PIC ให้รับสัญญาณจากรถยนตร์จำลอง ที่สร้างสัญญาณเซนเซอร์ต่างๆของเครื่องยนต์ออกมาครับ เรารับสัญญาณมา
ก็ต้องปล่อยสัญญาน จุดระเบิด(Ignition) และสัญญาณ ฉีดน้ำมัน (Injection) คือไปครับ

ถ้ายังจำได้ ดูด ฉีด จุด อัด ไรนั่นแหละครับ ถ้าเราคุมการฉีดและจุดได้ดี เราก็จะได้ประสิทธิภาพมากก
และประหยัดน้ำมัน สิ่งที่ต้องดูก็หลายอย่าง ตำแหน่งลูกสูบ ออกซิเจน อะไรทำนองนี้ครับ

หลังจากสอนเสร็จ เค้าก็ให้คน NECTEC มาพูดเรื่องที่เค้าทำอยู่ แล้วตอนบ่ายเค้าก็แจกโจทย์เลยครับ
เฮ้ย!! ไหนบอกจะสอน นั่นแหละครับ PIC ลืมหมดแล้ว ที่เค้าสอนคือ ใช้เครื่องยนต์จำลองของเค้านั่นแหละ ก็เลยต้องมั่วๆๆ PIC เอาเอง จน เบิร์นได้ ทำ LED วิ่งได้

แต่โจทย์มันเป็นการจับเวลาคำนวน RPM ของเครื่องยนตร์จากสัญญาณที่เข้ามา  เป็นโจทย์ที่ถ้าเขียนด้วย verilog แล้ว น่าจะง่ายมากก แต่นี่เขียนบน PIC ครับ แล้วก็อย่างที่รู้กัน PIC มันมี
Function เยอะพอสมควร ไม่เคยอ่าน datasheet ก็มึนได้เลยครับ จะจับเวลาต้องใช้ Timer Interrupt จะจับสัญญาณต้องใช้ Input Capture การจะใช้ก็ต้อง config bits อยู่หลายตัวครับ
นั่นแหละครับ ความยาก

วันแรก นั่งมั่วกันถึงบ่ายสาม เค้าก็สลับไปเป็นพิธีเิปิด มีดร.สุเมธ ตันติเวชกุล มาพูดเรื่องพลังงานทดแทน

แล้วก็กลับมาทำกันต่อครับ ประมาณหกโมง เค้าก็ส่งกัน แต่กลุ่มผมยังทำไม่ได้ครับ สุดท้ายก็เลยส่งอะไรไปไม่รู้ให้เค้าไป….

การส่งงาน ใช้ส่งผ่าน email หาเค้า แล้วเค้าก็เปิด inbox ออกจอให้ดูกันเลย ว่าใครส่งมาแล้วบ้าง
แถมหมดเวลา ยังกดดัน ให้ส่งอีก หึหึ นั่นแหละครับ

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

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

ทำเอาอารมณ์เสียพอสมควร หงุดหงิด กลับบ้าน ถึงบ้านก็สลบทันที เพราะเหนื่อยมาก

Tags: , ,

ตกรอบ RFID Contest

ตกรอบอย่างเป็นทางการแล้วครับ สำหรับรายการ National RFID Innovation Challenge
2007
แต่เรียกไปเรียกมา เค้าก็ใช้คำว่า RFID Contest แทน

จริงๆ พอจะรู้ว่าตัวเองตกรอบตั้งแต่ วันพรีเซนท์แล้วล่ะครับ กรรมการ บอกประมาณว่า
งานผมน้อยเกินไป ไม่เท่าที่เค้าคิด หรือ คาดหวังเอาไว้ แถมถามคำถามเกี่ยวกับตัวเทคโนโลยี
RFID ทีมเราก็ตอบไม่ได้อีกต่างหาก เลยโดยเรื่องไม่ยอมศึกษาเทคโนโลยีอีก โดนอีกหลายเรื่อง
เหมือนกันครับ

มีกรรมการท่านนึง เค้าบอกว่า “จากพรีเซนท์รอบที่แล้ว ผมเชียร์ทีมคุณอยู่นะ แต่รอบนี้ทำออกมาแบบนี้ ผมก็ช่วยไม่ได้ ให้คะแนนคุณได้แค่นี้นะครับ” เค้าถามทีมผมว่า ที่ทำมานี่ คิดว่ากี่
เปอร์เซนท์ พวกผมก็ตอบไปว่า 60% ซึ่งก็ถ้าเทียบจากที่คิดวาดฝันเอาไว้ ก็ประมาณนี้ล่ะมั้ง แต่ถ้าเทียบกับ spec ที่ใส่ไปในรายงาน คงซัก 80% ได้ล่ะครับ แต่จริงๆ รอบนี้ มันควรจะส่งแบบ 90%-100% น่ะสิ หึหึ

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

เริ่มแรกที่คิดจะส่งรายการนี้ เพราะอยากเล่นเครื่องครับ อยากรู้ว่ามันทำงานยังไง เจ๋งแค่ไหน
รายการนี้บอกเค้าจะสนับสนุนเครื่องอ่านให้มาลองเล่นดู ก็เลยคิดโปรเจคส่งไป

แล้วก็ ได้เครื่องอ่านมาเล่น และก็ได้สัมนาเรื่อง RFID นิดหน่อยจากบริษัทผู้สนับสนุนเครื่อง
บอกตรงๆว่า ไม่เป็นไปตามที่คิดครับ RFID ส่วนตัวรู้สึกยังมีข้อจำกัดอยู่หลายอย่างทีเดียว
เช่นเรื่อง ระยะอ่าน เรื่องสภาพแวดล้อม ราคาของเครื่องอ่านกับ tag ความแพร่หลาย

เห็นข้อจำกัดเหล่านี้แล้ว รู้สึกความเจ๋งของ RFID มันลดลงในสายตาผม
รู้สึกไม่ต่างอะไรกับ barcode เลย แค่มันอ่านด้วยคลื่นวิทยุเฉยๆ
ที่ยังพอจะเอามาทำประโยชน์ได้คือ มันเก้บข้อมุลไว้บน tag ได้ด้วย แต่โปรเจคผมไม่ได้ใช้
ประโยชน์ตรงนี้เลยอะดิ (ตรงนี้กรรมการก็ถาม ว่า โปรเจคคุณต่างจากใช้ barcode แทนตรงไหน)

อย่างเครื่องแรกที่ผมได้ลองมาเล่น ก้มีข้อจำกัดที่ระยะอ่านแค่ 20 เซนต์(ตาม spec)( อ่านจริง
อีกเรื่อง) แถมยังอ่านได้ทีละ tag ซะด้วย(อันนี้ผมผิดหวังจริงๆ) ถ้าเอา tag หลายๆอันมาจ่อ
มันอาจจะอ่านมั่วๆได้ ซึ่งจริงๆ ไอเครื่องที่อ่านได้หลายๆอันมันก็มีครับ เรื่องนี้ขึ้นอยุ่กับ tag
ขึ้นกับเครื่องอ่าน ขึ้นกับความถี่ ซึ่งไม่ใช่เครื่องที่ผมได้มา นึกว่าเหมือนกันหมดซะอีก

นอกจากนี้ ที่ผิดหวังอีกนิด คือ นึกว่าจะได้ลงไปเขียนติดต่อกับ hardware ตรงๆ
แต่ปรากฏว่า เครื่องอ่านมันแถม libraly c# มาให้เสร้จสรรพ เป็น method มาเลย เหอๆ
แค่เอามาใช้ ไม่ได้ยาก ไม่ต้องติดต่อเองใดๆทั้งสิ้นเลยครับ หึหึ

เจอแบบนี้ พวกผมเลยมอง RFID ทั้งหมด เป็นกล่องดำเลยอะ เป็นอะไรซํกอย่างที่โยน
ID ของสินค้าเข้ามาในโปรแกรม ที่เหลือก็เป็นหน้าที่ของโปรแกรมผมแล้ว ว่าจะทำงานอะไร
ไม่ยุ่งกับ RFID อีก

จากที่ผ่าน พรีเซนท์มาสองรอบ รุ้สึกได้ว่า รายการนี้เค้าเน้น ที่จะเผยแพร่เทคโนโลยี
RFID มากๆ พยายามจะทำให้มันออกมาให้เห็นจริง ให้เห็นว่าทำประโยชน์ได้จริง
มันต้องไม่ใช่แค่เครื่องที่เก่งกว่าบาร์โค้ดนิดหน่อย(อันนี้ พอเจอข้อจำกัดหลายๆอย่าง
เท่าที่ผมคิดออก ก็กลายเป้นเครื่องแทนบาร์โค้ดอยู่ดีแฮะ -_-”)
เพราะตอนพรีเซนท์ กรรมการมักจะถามความรู้เรื่อง RFID หยั่งกะสอบอยู่อะครับ
คุณใช้ความถี่อะไร เก็บข้อมูลใช้มาตรฐานไหน ระยะอ่านกี่เมตร tag มีชนิดไหนบ้าง

จริงๆก็เคยไปโหลดมาอ่านครับ แต่ก็แค่อ่านผ่านไม่ได้สนใจจำอะไร

นั่นแหละครับ เลยตกรอบตามผลกรรมที่ทำ 555

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

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

โอกาสดีๆ คงมีมาอีกสินะครับ

Tags: , , ,