Posted on Leave a comment

Arduino Nano คืออะไร

หลังจากทำความรู้จัก Microcontroller น่าสนใจ ATmega328 กันไปแล้ว คราวนี้เราจะมาดูตัวอย่างการนำมาใช้งานกันบ้าง อย่างที่อาจรู้กันมาก่อนหน้านี้แล้วว่า microcontroller เป็น chip ตัวหนึ่ง มีขามากมาย แต่มันยังใช้ไม่ได้ ต้องนำมาต่อร่วมกับอุปกรณ์อย่างอื่น เพื่อช่วยกันทำงาน ในที่นี้จะยกตัวอย่างการนำมาใช้งานในการทำบอร์ดที่ใช้ในการพัฒนา (Development Board) หรือ บอร์ดควบคุม (Controller Board) โดย Development Board ที่ได้รับความนิยมมากตัวหนึ่งคือ Arduino Nano ซึ่งพัฒนาโดย บริษัท Arduino ประเทศอิตาลี แล้วที่ได้รับความนิยมอย่างมากก็น่าจะเป็นเพราะ เค้าทำเป็น Open Hardware คือเปิดเผยรายละเอียดในการทำ Board นี้ และยอมให้คนอื่นทำตามได้ จึงมีหลายบริษัททำตามโดยพยายามทำให้ต้นทุนต่ำออกมามากมาย (Arduino Nano Clone) ทำให้คนทั่วไปสามารถเข้าถึงอุปกรณ์ชนิดนี้ได้ง่ายขึ้น และมีการทำอุปกรณ์มารองรับกับ Arduino Nano ออกมามากมาย ทำให้มีตัวอย่างให้เรียนรู้มากมายใน internet โดยการที่เค้าทำแบบนี้ก็เป็นความตั้งใจที่จะให้คนทั่วไปสามารถเข้าถึงเทคโนโลยีเหล่านี้ได้ง่าย ซึ่งก็ต้องชื่นชมแนวคิดนี้อย่างมาก ทำให้ประชากรโลกที่มีรายได้ไม่มาก มีโอกาสที่จะเข้าถึงความรู้และเทคโนโลยีเหล่านี้ได้ง่ายขึ้น ใครที่อยากใช้ Arduino Nano Clone จากแหล่งผลิตที่เราเข้าถึงได้ ก็ไม่ต้องตะขิดตะขวงใจว่าเราจะไปสนับสนุนใครให้ละเมิดใครหรือเปล่า อย่างไรก็ตาม หากใครมีกำลังพอก็อยากให้ช่วยสนับสนุนสินค้าของ Arduino กันด้วยนะครับ จะได้เป็นกำลังให้กับบริษัทดี ๆ ช่วยกันทำงานเพื่อสังคมต่อไป

เรามาดูกันว่า บอร์ด Arduino Nano นั้นประกอบด้วยอะไรบ้าง

รูปด้านบน(ซ้าย) และรูปด้านล่าง(ขวา) ของ Arduino Nano

จากรูปจะเห็นว่าบนบอร์ดนั้นมีอุปกรณ์อยู่หลายตัวโดยขอแนะนำตัวสำคัญ ๆ ดังนี้

อุปกรณ์ที่อยู่ด้านบนของบอร์ด Arduino Nano เรียงจากบนลงล่าง

  • USB (micro) Port เชื่อมต่อกับ computer หรือแหล่งจ่ายไฟให้กับ board
  • ATmega328 นี่คือ microcontroller ที่เราพูดถึงก่อนหน้านี้นี่เอง
  • Crystal ทำหน้าที่กำเนิดสัญญาณให้ microcontroller ทำงานได้ตามจังหวะของสัญญาณ
  • Switch ทำหน้าที่ reset ตัว microcontroller
  • LED แสดงสถานการณ์ทำงาน เรียงจากซ้ายไปขวา
    • L: เมื่อมีการใช้งานขา D13 ของ Board
    • ON: เมื่อมีไฟจ่ายให้กับ microcontroller 
    • Rx: เมื่อมีการใช้งานขา Rx (D0) ของ Board ซึ่งเป็นขารับข้อมูลของ UART 
    • Tx: เมื่อมีการใช้งานขา Tx (D1) ของ Board ซึ่งเป็นขาส่งข้อมูลของ UART
  • ICSP (In Circuit Serial Programmer) ทำหน้าที่เป็นจุดเชื่อมต่อกับเครื่อง Programmer สำหรับการโปรแกรม microcontroller (ในกรณีที่ไม่ใช้ หรือไม่มี Bootloader)

อุปกรณ์ที่อยู่ด้านล่างของบอร์ด Arduino Nano เรียงจากบนลงล่าง

  • USB to UART ทำหน้าที่เปลี่ยนสัญญาณกลับไปมาระหว่าง USB (ซึ่งเป็นสัญญาณมาจาก computer) และ UART(ซึ่งเป็นสัญญาณจาก microcontroller) ทำให้ computer และ microcontroller สามารถสื่อสารกันได้
  • Voltage Regulator ทำหน้าที่แปลงไฟที่ส่งเข้ามาที่ขา Vin ของ board ให้เป็น 5V ก่อนที่จะส่งให้ microcontroller และอุปกรณ์อื่น ๆ

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

นอกจาก hardware ที่มองเห็นและจับต้องได้แล้ว Arduino Nano ยังมาพร้อมกับ Bootloader ที่ช่วยให้เราโปรแกรม ATmega328 โดยใช้แค่สาย USB เพื่อความสะดวกอีกด้วย

และทั้งหมดนี้ก็คือส่วนประกอบของ controller board ซึ่ง controller หรือ development board ทั่ว ๆ ไปก็จะมีองค์ประกอบพื้นฐานดังที่กล่าวมา หรืออาจน้อยกว่านี้ได้บ้างในกรณีที่ microcontroller บางตัวได้ใส่ความสามารถเหล่านี้รวมเข้าไปอยู่ในตัวของมัน เช่น microcontroller บางตัวก็รวมตัวกำเนิดสัญญาณนาฬิกาเข้าไว้ในตัว ทำให้ไม่จำเป็นต้องใช้ crystal หรือตัวกำเนิดสัญญาณภายนอก หรือ microcontroller บางตัวได้รวมตัวแปลงสัญญาณ USB ไว้ในตัวแล้ว ก็ไม่จำเป็นต้องต่อภายนอกอีก 

หวังว่าท่านผู้อ่านจะได้ไอเดียว่ามีอะไรอยู่บน Development board บ้าง ลองสังเกต Development board อื่นๆ ดูนะครับว่ามีอะไรบ้าง เหมือนหรือแตกต่างจากตัวนี้อย่างไรบ้าง

ใส่ความเห็น