วันอาทิตย์ที่ 5 พฤษภาคม พ.ศ. 2556

โล่คู่กาย Ethernet Arduino Shield

โล่เครือข่ายคู่กาย ARDUINO 

(ARDUINO ETHERNET SHIELD)

 

        หลังจากที่ได้รู้จักกับ ARDUINO กันแล้ว เรามารู้จักกับโล่คู่กายของเจ้า ARDUINO กันบ้าง
ETHERNET SHIELD นี้จะใช้ประกอบกับ ARDUNIO UNO เพื่อที่จะทำให้สามารถติดต่อกับระบบเครือข่ายได้ โดยใช้ Ethernet Library ซึ่งเวอร์ชั่นล่าสุดจะมี ช่องอ่าน Micro SD Card ติดมาด้วย สามารถใช้กับ SD Library ของ ARDUINO ได้เลย
        การเชื่อมต่อกับ ETHERNET SHIELD นี้จะใช้สาย RJ45 อาจจะใช้ CAT5 หรือ CAT6 โดยสามารถใช้ DHCP ได้ แต่การเชื่อมต่อระหว่างสองจุดยังต้องใช้สาย Cross Over อยู่ เพราะไม่มีวงจร Cross Over ภายใน ความเร็วในการสื่อสารของบอร์ดนี้จะอยู่ที่ 10/50 Mbps หรือ 10/100 Mbps แล้วแต่แหล่งผลิต
 ส่วนหน้าตาของเจ้า ETHERNET SHIELD ก็จะประมาณนี้ครับ


หลังจากที่ประกอบกับ ARDUINO ก็จะประมาณนี้


        ในส่วนของ ETHERNET SHIELD นี้มีโมดูลที่สามารถรองรับ Power over Ethernet (PoE) ซึ่งสามารถใช้แหล่งจ่ายไฟของบอร์ดได้เลย นอกจากนี้ยังมีไฟแสดงผลซึ่งสามารถอธิบายได้ดังนี้
  • PWR: ไฟแสดงสัญญาณ Power  
  • LINK: ไฟแสดงสถานะการอัพโหลดและดาวโหลดข้อมูลผ่านเครือข่าย
  • FULLD: ไฟแสดงสถานะของการเชื่อมต่อแบบ Full Duplex
  • 100M:ไฟแสดงถานะเมื่อมีการเชื่อมต่อเครือข่ายได้ถึง 100 Mbps
  • RX:ไฟแสดงสถานะเมื่อ ETHERNET SHIELD มีการรับข้อมูล
  • TX:ไฟแสดงสถานะเมื่อ ETHERNET SHIELD เมื่อมีการส่งข้อมูล
  • COLL: ไฟแสดงสถานะเมื่อมี IP ชนกันของเครือข่าย
        เมื่อได้ทราบถึงองค์ประกอบคร่าวๆของ  ETHERNET SHIELD ไปแล้ว เรามาเริ่มทำการทดสอบเขียนโปรแกรมเพื่อให้สามารถติดต่อสื่อสารกันระหว่างเครือข่ายกันบ้างดีกว่า
        ผู้เขียนขอยกตัวอย่างโปรแกรมที่เขียนบนระบบปฏิบัติการ Windows ตัวอย่างเดียวนะครับ เพราะว่าในส่วนของ Code นั้นจะเหมือนกันทุกระบบปฏิบัติการ ในส่วนของการติดตั้ง ก็สามารถย้อนกลับไปดูบทความเก่าของเดือนที่แล้วได้เลย โค๊ดตัวอย่างการเขียนติดต่อ Ethernet จะอยู่ในตัวอย่างเมื่อติดตั้งโปรแกรมแล้ว โดยเข้าไปที่เมนู File -> Examples -> Ethernet จะปรากฏตัวอย่างที่สามารถใช้งาน ETHERNET SHIELD ได้ ซึ่งจะเห็นตัวอย่างดังรูป


        ในที่นี้ขอเลือกเป็น Webserver สามารถศึกษาได้จากหมายเหตุของโปรแกรม ซึ่งอธิบายค่อนข้างละเอียดในแต่ละบรรทัด ตัวอย่างประมาณนี้ครับ






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



        จากนั้น ก็ต่อสาย LAN กับ สาย POWER เข้ากับ ARDUINO ได้เลย เมื่อต่อเสร็จเรียบร้อย ระบบก็จะทำงานตามโค๊ดที่อัพโหลดเข้ามา ซึ่งหน้าตาของบอร์ดเมื่อทำงานเป็น Web Server จะประมาณนี้ครับ



        หลังจากที่ ARDUINO ทำงานแล้ว จะเห็นไฟแสดงสถานะต่างๆ บนบอร์ดติด จากนั้น เราจะทำการทดสอบ Web Server ของเราโดยใช้ Browser ซึ่งจากโค๊ดเราจะได้ IP Address ของบอร์ดเป็น 192.168.1.177 ผู้อ่านขอทดสอบด้วย Firefox ซึ่งใช้ URL ดังนี้ http://192.168.1.177 เราจะเห็นข้อความแสดงสถานะการทำงาน ของพอร์ด A0 - A5 ซึ่งเป็น Analog Input ดังแสดงในรูปดังนี้

  

        นอกจากนี้ ยังสามารถศึกษาโค๊ดต่างๆ ได้จากตัวอย่างในเมนู Examples ซึ่งมีการเขียนอธิบายในหมายเหตุของตัวโปรแกรม และเริ่มจากขั้นพื้นฐานไปถึงขั้นสูง โดยที่ไม่ต้องหาหนังสือเล่มไหนมาอ่านเลย ลองศึกษาดูนะครับ บอร์ดนี้ราคาถูกและคุ้มค่ามาก ถ้าเทียบราคากับการประยุกต์ใช้งานแล้ว พอๆกับ Raspberry Pi และ MK802 เลยทีเดียว
        ใครมีโปรเจคที่น่าสนใจก็สามารถแชร์ความรู้กันทาง gtalk หรือทางเมลล์ได้นะครับ
olekhanchai@gmail.com หรือสนใจอุปกรณ์สามารถเข้าสั่งซื้อได้ในเว็บ http://www.hobbyembshop.biz หรือสินค้าโปรโมชั่นที่ https://www.facebook.com/hobbyembedded