วันอังคารที่ 12 กรกฎาคม พ.ศ. 2559

การเชื่อมต่อ NETPIE.io ด้วย ESP8266 เบื้องต้น

ในบทความนี้ เราจะมาทดลองการเชือมต่อ ESP8266 กับ NETPIE.io โดยใช้ Arduino IDE

        NETPIE.io คือ Cloud Platform รูปแบบหนึ่งที่ให้บริการ platform as a service เพื่ออำนวยความสะดวกให้นักพัฒนา สามารถพัฒนาให้อุปกรณ์ตัวเองเชื่อมต่อและแลกเปลี่ยนข้อมูลกันได้ในแบบ Internet of Thing (IoT)
        เมื่อนำ NETPIE library ไปเชื่อมกับอุปกรณ์ NETPIE จะทำหน้าที่ในการเชื่อมต่อและประมวลผลโดยใช้ software microgear library ทำให้อุปกรณ์ต่างๆเชื่อมต่อเข้าด้วยกัน
     
 ขั้นตอนการเริ่มต้นใช้งาน
         ในตอนนี้เราจะมาทดสอบตัว ESP8266 กันว่าสามารถเชื่อมต่อ NETPIE ได้มั้ย สิ่งที่เราต้องเตรียมคือ
      1) ESP8266 เช่น Node MCU หรือ Espresso lite v2.0
      2) FTDI ใช้สำหรับอัพโหลดโค้ด
      3) Arduino IDE

เมื่อมีทุกอย่างพร้อมแล้วก็เริ่มสมัครใช้บริการ NETPIE.io ได้เลย (https://netpie.io/)

หลังจากที่เราสมัครเรียบร้อย ให้เรา login แล้วเข้า application


เมื่อเข้ามาแล้วจะเจอหน้านี้


Application คือ Application ID ที่เราสร้างไว้

Things คือ อุปกรณ์ที่เราเคยเชื่อมต่อไว้กับ Application ID ที่เราสร้างไว้ Things ในสามารถเป็นทั้ง ESP8266 (ที่ติดตั้งกับเครื่องใช้ไฟฟ้าต่างๆ) หรือ HTML5 หรือ Mobile Application ก็ได้

ในการที่เราจะเชื่อมกันกับ NETPIE.io ได้นั้น เราจำเป็นต้องสร้าง Application ของเราเอง ซึ่งสามารถทำได้ด้วยการ กด + ที่ Application จะมีหน้าต่างปรากฏขึ้น ให้เราทำการกำหนด Application ID


เมื่อเราสร้าง Application ID แล้วจะปรากฏหน้านี้ขึ้น


ในขั้นตอนต่อไปให้เราทำการสร้าง Application Key และ Application Secret ซึ่งทั้งสองค่านี้จะ unique ไม่ซ้ำกับใคร โดยในการสร้างให้กด + ที่ Application Key จะมีหน้าต่างปรากฏขึ้น


ในช่องแรกคือชื่อ อุปกรณ์ หรือ gear หรือ ALIAS
ช่องถัดมาคือเลือกประเภทของ Key ซึ่งมีสองประเภท

  • Device Key เป็น key ที่ไม่มีวันหมดอายุ ใช้กับอะไรก็ได้
  • Session Key เป็น key ที่ไว้ใช้สำหรับ html5 มีอายุขัยการใช้งาน 

การ key นั้นให้เลือกตามความต้องการของเราได้เลยครับ อย่างในตัวอย่างผมจะเลือก Device Key


ในตัวอย่างผมตั้งชื่อ ALIAS ว่า NetpieAlias1 ถ้าเราคลิกที่ตัวนี้จะปรากฏ Key และ Secret ให้ดู


ซึ่งค่าต่างๆเหล่ามีไว้ใช้เชื่อมต่อ Things ต่างๆของเรากับ NETPIE.io Cloud Service ในรูปแบบของการ Authentication ซึ่งค่าต่างๆเหล่านี้จะมีความเป็น unique ที่จะไม่ซ้ำใครเลย

***ข้อมูลต่างๆทั้ง App ID, App Key และ App Secret ห้ามนำไปเปิดเผยให้ใครโดยเด็ดขาดเพื่อความปลอดภัยในข้อมูล เพราะอาจมีผู้ประสงค์ร้ายนำไปใช้ได้

ซึ่งในตัวอย่างตอนนี้จะมีค่าต่างๆดังนี้

  • App ID = NETPIEBasic
  • App Key = jlIoBeurGfr6ddH
  • App Secret = qqXdMEoTMSKrzx3jRxl2EEls
  • Alias = NetpieAlias1
ค่าเหล่านี้จะถูกใช้เวลาเราเขียนโค้ดต่างๆทั้งในฝั่ง ESP8266, HTML5 หรือ Mobile Application

เมื่อเราเตรียมค่าต่างๆพร้อมแล้ว เรามาดูในส่วนของฝั่ง Arduino IDE

ก่อนที่เราจะใช้ NETPIE.io เราจำเป็นต้องที่มี Library ของ Microgear สำหรับ Arduino ก่อนจาก https://github.com/netpieio แล้วเลือก microgear-esp8266-arduino



หลังจากคลิกเข้าไปให้เลือก Clone or download ต่อด้วย Download ZIP


จากนั้นให้เราแตกไฟล์ microgear-esp8266-arduino-master ไปไว้ในตำแหน่ง libraries ของโปรแกรม Arduino IDE เช่น C:\Users\OS\Documents\Arduino\libraries

หลังจากติดตั้ง microgear library เสร็จแล้ว เรามาลองเชื่อมต่อ ESP8266 กับ NETPIE.io กันเลย

ให้เราทำการนำ FTDI เชื่อมต่อกันกับ USB และ ESP8266 แล้วเปิด Arduino IDE

จากนั้นให้เข้า Files > Examples > ESP8266 Microgear > Basic

โค้ดที่โชว์ขึ้นมาคือโค้ดสำหรับทดลองต่อ NETPIE.io ให้เราใส่ค่าต่างๆตามรูปดังนี้

ให้เราทำการใส่ข้อมูลต่างๆตามนี้


 จากนั้นให้เรากด verify เพื่อตรวจความถูกต้องของโค้ดเรา จากนั้นกด upload เพื่ออัพโค้ดไปยัง ESP8266

เมื่อเราอัพโหลดเสร็จ ให้เปิด Serial Monitor ของ ESP8266

ถ้าขึ้นว่า Connect to NETPIE หมายความเราสามารถนำ ESP8266 เชื่อมกับ NETPIE ได้สำเร็จ

**กรณีไม่สำเร็จเช่น ESP8266 ทำการ reset ตัวเองอัตโนมัติ อาจจะเกิดจาก port ที่ใช้อยู่ไม่สามารถเชื่อมต่อกับได้หรือใส่ค่าต่างๆไม่ถูกต้อง

ไม่มีความคิดเห็น:

แสดงความคิดเห็น