บทความ Arduino [ตอนที่ 3: Case Study#1]
ทำโปรเจคเครื่องวัดอุณหภูมิแบบง่ายๆ
เเนะนำบทความ Arduino จาก ThaiEasyElec:
1. บทความ Arduino คืออะไร? ตอนที่1 แนะนำเพื่อนใหม่ที่ชื่อ Arduino >> คลิกอ่าน!
2. บทความ Arduino คืออะไร? ตอนที่2 มาทำความรู้จักกับ Arduino รุ่นต่างๆกัน >> คลิกอ่าน!
3. บทความ Arduino [ตอนที่ 3: Case Study#1 ทำโปรเจคเครื่องวัดอุณหภูมิแบบง่ายๆ] >> คลิกอ่าน!
4. บทความ Arduino [ตอนที่ 3: Case Study#2 ทำโปรเจคเครื่องวัดอุณหภูมิ + LCD TFT + SD Card] >> คลิกอ่าน!
Case Study#1
รายละเอียดโปรเจคเบื้องต้น: ต้องการใช้บอร์ด Arduino ในการทำโปรเจคเครื่องวัดอุณหภูมิ โดยกำหนดอุณหภูมิที่เครื่องสามารถวัดได้อยู่ระหว่าง 0 ถึง 45 องศา โดยแสดงค่าอุณหภูมิที่วัดได้ผ่านทางจอ LCD และมี LED 1 ดวงใช้แสดงสถานะ
คำถาม: ด้วย Scope งานดังกล่าว เราควรเลือกใช้บอร์ด Arduino รุ่นไหนในการทำโปรเจค?

หลักการพิจารณา:
1. ด้วย Scope งาน ดังที่กล่าวข้างต้น ผู้ทำโปรเจคจะต้องสามารถมองภาพรวมของโปรเจคให้ออก และทราบถึงอุปกรณ์ที่เราต้องใช้ในการทำโปรเจคนี้ เพื่อพิจารณาต่อไปว่า จะเลือกใช้บอร์ด Arduino รุ่นใด ที่จะสามารถรองรับจำนวน Pin I/O ของอุปกรณ์ต่างๆ ที่จะมาเชื่อมต่อกับบอร์ด Arduino (จำนวน Pin I/O ที่ต้องใช้งาน)
1. เซ็นเซอร์วัดอุณหภูมิ ในโปรเจคนี้เลือกเป็น IC เบอร์ DS1820
2. จอ LCD ในโปรเจคนี้เลือกเป็น LCD แบบ 16×2
3. LED 1 ดวง
4. บอร์ด Arduino ทำหน้าที่รับค่าอุณหภูมิที่วัดได้จาก Sensor และประมวลผลสั่งให้ LCD และ LED แสดงผล (ยังไม่ได้เลือกว่าเป็นบอร์ด Arduino รุ่นใด)
2. ต่อจากนั้นเราจะรู้ว่า วงจรที่จะต่อกับบอร์ดเป็นอย่างไร จะต้องใช้ I/O เท่าไหร่ ในตัวอย่างนี้จะเห็นได้ว่า
– จอ LCD 16×2 มีรูปแบบการต่อ 2 แบบคือ 8 bit และ 4 bit สมมุติเลือกแบบ 4 bit interface ซึ่งใช้ I/O ทั้งหมด 7 ขา ดังภาพ

– เซ็นเซอร์เบอร์ DS1820 มีการต่อแบบ 1 – wire ซึ่งเลือกใช้ I/O ใดก็ได้ 1 ขา ดังภาพ
– LED ใช้จำนวน Pin I/O 1 ขา ดังภาพ

3. จากข้อ2. พบว่าจำนวน Pin I/O ที่ใช้ต่อเชื่อมกับบอร์ด Arduino มีทั้งหมด 9 ขา (Pin I/O) ซึ่งถ้าพิจารณาจากตารางเปรียบเทียบ Arduino รุ่นต่างๆ ในบทความ ตอนที่2 มาทำความรู้จักกับ Arduino รุ่นต่างๆกัน จะพบว่า ผู้ใช้งานสามารถเลือกบอร์ด Arduino รุ่นใดก็ได้ เนื่องจากทุกรุ่นสามารถรองรับจำนวน Pin I/O ที่ต้องใช้งานได้ ทั้งนี้จะมีปัจจัยอื่นๆ ที่จะต้องพิจารณาเพิ่มเติม อาทิเช่น ความเร็วในการประมวลผล (พิจารณาเรื่อง Processor), ระดับราคาของบอร์ด Arduino แต่ละรุ่น หรือคุณสมบัติอื่นๆ ที่ต้องมีเผื่อไว้ กรณีที่ต้องการต่อยอดพัฒนาโปรเจคต่อไป