การเลือกบอร์ดพัฒนาตัวแรกของคุณ

A neutral selection of several different development board types

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

เริ่มต้นด้วยสิ่งที่คุณต้องการสร้าง

ก่อนเปรียบเทียบสเปก จะเป็นประโยชน์หากอธิบายโปรเจกต์เป็นประโยคเดียว: "ฉันต้องการบันทึกอุณหภูมิและความชื้นลงในกราฟที่ตรวจสอบได้จากโทรศัพท์" หรือ "ฉันต้องการสร้างหุ่นยนต์ขนาดเล็กที่หลบสิ่งกีดขวางได้" บอร์ดที่เหมาะกับโปรเจกต์เซนเซอร์ที่เชื่อมต่อ Wi-Fi มักไม่ใช่ตัวเลือกที่ถูกต้องสำหรับหุ่นยนต์ที่ใช้แบตเตอรี่ แม้ว่าทั้งสองจะเป็นโปรเจกต์แรกที่เหมาะสมพอ ๆ กันก็ตาม จำประโยคนั้นไว้ขณะที่คุณอ่านคู่มือนี้ต่อไป — มันจะตอบคำถามส่วนใหญ่ด้านล่างได้ด้วยตัวมันเอง

คุณมีประสบการณ์การเขียนโปรแกรมมากแค่ไหน?

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

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

คุณต้องใช้ Wi-Fi หรือ Bluetooth หรือไม่?

คำถามเดียวนี้จะตัดตัวเลือกที่มีอยู่ออกไปได้จำนวนมากทันที หากโปรเจกต์ของคุณต้องส่งข้อมูลไปยังโทรศัพท์ บริการคลาวด์ หรืออุปกรณ์อื่นแบบไร้สาย ให้มองหาบอร์ดที่มี Wi-Fi และ/หรือ Bluetooth ในตัวโดยเฉพาะ — การพยายามเพิ่มการเชื่อมต่อไร้สายเข้าไปในบอร์ดที่ไม่มีมันอยู่แล้ว จะเพิ่มต้นทุน ความซับซ้อน และจุดที่อาจเกิดปัญหา ซึ่งวิทยุในตัวจะช่วยหลีกเลี่ยงได้ทั้งหมด

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

คุณต้องการขา GPIO กี่ขาจริง ๆ?

เป็นเรื่องง่ายที่จะสันนิษฐานว่า "ยิ่งมีขามากยิ่งดี" แต่ขาที่เพิ่มขึ้นบนบอร์ดที่ใหญ่กว่ามักมาพร้อมขนาดที่ใหญ่ขึ้น ต้นทุนที่สูงขึ้น และบางครั้งการใช้พลังงานที่สูงขึ้น นับดูว่าโปรเจกต์ของคุณต้องการอะไรจริง ๆ: จะมีเซนเซอร์ ปุ่มกด ไฟ LED หรือการเชื่อมต่อมอเตอร์กี่ตัวที่จะถูกต่อเข้าจริง ๆ? เผื่อพื้นที่เล็กน้อยสำหรับการเปลี่ยนแปลงในอนาคต และใช้ตัวเลขนั้น — ไม่ใช่จำนวนขาที่มากที่สุดที่หาได้ — เป็นตัวชี้นำการเลือกของคุณ

อินพุตแอนะล็อกสำคัญกว่าที่คุณคิด

ไม่ใช่ทุกบอร์ดที่มีจำนวน (หรือคุณภาพ) ของอินพุต ADC (Analog-to-Digital Converter) เท่ากัน และเซนเซอร์ทั่วไปจำนวนไม่น้อย — โพเทนชิโอมิเตอร์ เซนเซอร์อุณหภูมิแบบแอนะล็อก เซนเซอร์แสง เซนเซอร์แก๊สบางชนิด — ต้องการอินพุตแบบนี้อย่างน้อยหนึ่งช่อง หากโปรเจกต์ของคุณเกี่ยวข้องกับการอ่านสัญญาณที่แปรผันต่อเนื่อง แทนที่จะเป็นสถานะเปิด/ปิดง่าย ๆ ให้ตรวจสอบจำนวนอินพุตแอนะล็อกก่อนที่จะสันนิษฐานว่าบอร์ดใดก็ได้จะใช้งานได้

USB และอินเทอร์เฟซการโปรแกรม

บอร์ดสมัยใหม่ส่วนใหญ่โปรแกรมผ่าน USB แต่รายละเอียดแตกต่างกันไป: บางรุ่นใช้พอร์ต USB-C หรือ micro-USB มาตรฐานพร้อมชิป USB-to-serial ในตัว ในขณะที่บางรุ่นต้องใช้ตัวโปรแกรมเมอร์หรือดีบักเกอร์แยกต่างหาก สำหรับโปรเจกต์แรก บอร์ดที่มีการเชื่อมต่อ USB แบบตรงและเรียบง่ายมักจะเป็นจุดเริ่มต้นที่ง่ายกว่าเสมอ — ช่วยหลีกเลี่ยงฮาร์ดแวร์เพิ่มเติมที่ต้องซื้อและตั้งค่าก่อนที่คุณจะเขียนโค้ดบรรทัดแรกด้วยซ้ำ

การรองรับไลบรารีและคอมมูนิตี้

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

ข้อกำหนดด้านพลังงาน

หากโปรเจกต์ของคุณจะทำงานด้วยแบตเตอรี่ การใช้พลังงานจะกลายเป็นปัจจัยสำคัญอันดับต้น ไม่ใช่เรื่องที่คิดทีหลัง บอร์ดแต่ละรุ่นมีการใช้พลังงานทั้งขณะว่างและขณะทำงานที่แตกต่างกันอย่างมาก และคุณสมบัติอย่างวิทยุ Wi-Fi ในตัวหรือตัวควบคุมแรงดันไฟบนบอร์ด สามารถส่งผลต่ออายุแบตเตอรี่ได้อย่างมีนัยสำคัญ หากโปรเจกต์ใช้ไฟจากปลั๊ก — เสียบผ่าน USB หรือแหล่งจ่ายไฟภายนอก — การใช้พลังงานจะสำคัญน้อยลงมาก และคุณสามารถให้ความสำคัญกับปัจจัยอื่นแทนได้

การจับคู่ความซับซ้อนของบอร์ดกับความซับซ้อนของโปรเจกต์

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

รายการตรวจสอบสุดท้าย

ก่อนซื้อ ลองทบทวนคำถามเหล่านี้อีกครั้ง:

  • ฉันต้องใช้ Wi-Fi หรือ Bluetooth หรือโปรเจกต์ทำงานแบบภายในเครื่องทั้งหมด?
  • โปรเจกต์ต้องการขา GPIO และขาแอนะล็อกกี่ขาจริง ๆ?
  • ต้องทำงานด้วยแบตเตอรี่หรือไม่ และถ้าใช่ นานแค่ไหน?
  • มีการรองรับไลบรารีที่ดีสำหรับเซนเซอร์และโมดูลที่ฉันวางแผนจะใช้หรือไม่?
  • บอร์ดโปรแกรมผ่าน USB แบบง่าย หรือต้องใช้ฮาร์ดแวร์เพิ่มเติม?

การตอบคำถามเหล่านี้อย่างตรงไปตรงมา โดยอิงจากโปรเจกต์จริง ไม่ใช่บอร์ดที่ดูน่าประทับใจที่สุด คือวิธีที่ดีที่สุดวิธีเดียวที่จะทำให้แน่ใจว่าบอร์ดพัฒนาตัวแรกของคุณเป็นบอร์ดที่ดีสำหรับการเรียนรู้ — ไม่ใช่แค่บอร์ดที่ดีสำหรับการครอบครอง เมื่อคุณพร้อมที่จะเปรียบเทียบตัวเลือกเคียงข้างกัน การเลือกดูตามคลาสของบอร์ดและตัวควบคุมจะทำให้การเทียบตัวเลือกที่ใกล้เคียงกันง่ายขึ้น แทนที่จะเปรียบเทียบบอร์ดที่ไม่เกี่ยวข้องกันทีละคุณสมบัติ หากคุณยังไม่แน่ใจว่าอินเทอร์เฟซการสื่อสารอย่าง I2C, SPI และ UART มีผลต่อความสามารถของบอร์ดอย่างไร ควรอ่านคู่มือของเราเกี่ยวกับสามอินเทอร์เฟซนี้ก่อนตัดสินใจเลือกบอร์ด

เนื้อหาที่เกี่ยวข้อง

A controller board wired to three sensor modules using different connection groupings คู่มือ ทำความเข้าใจ I2C, SPI และ UART Boards & Controllers category ช้อป บอร์ดและตัวควบคุม