วันพฤหัสบดีที่ 10 มีนาคม พ.ศ. 2559

[IOT] สอนสร้าง "Smart Home" ด้วย NodeMCU V2 [Part 5]

สวัสดีครับ ในที่สุดก็มาถึง Part 5 แล้วครับ 555+

ขอโทษที่ Part นี้ออกช้า เพราะพอดีผมมีธุระนิดหน่อย เลยไม่มีเวลาเขียนครับ
สำหรับ Part นี้ก็ เราก็จะมาการใช้ NETPIE กันจริงๆจังๆแล้วครับ จบ Part นี้ไป
อุปกรณ์ของเราก็จะสามารถสั่งงานผ่านเว็บได้แล้วครับ ที่เหลือก็แค่เอาไปประกอบ
เข้ากับตัวถังสวิชต์และเดินระบบสายไฟกันนิดหน่อยครับ ^_^ ถ้าพร้อมแล้วก็ ลุยกันเลยครับ

CHAPTER 3 : เริ่มต้นใช้งาน NETPIE

หลังจากที่เราได้ทำความรู้จักกับ NETPIE ตามที่ผมเกริ่นนำไปใน Part 1 ไปแล้วนะครับ 
ทีนี้เราก็จะมาเริ่มใช้งานกันเลย ถ้าพร้อมแล้วก็ เข้าไปที่เว็บนี้เลยครับ



STEP 1: สมัครสมาชิคเว็บ NETPIE


พอเราเข้าไปที่เว็บ NETPIE ก็จะเจอหน้าแรกของเว็บครับ ให้กดที่ปุ่ม SIGN UP FREE ด้านบนเลยครับ


จากนั้นจะมาที่หน้าการสมัครครับ ก็ให้กรอกข้อมูลของเราลงไปครับ


หลังจากใส่ข้อมูลเรียบร้อยและกด SIGN UP แล้ว จะขึ้นแบบนี้ที่ด้านบนครับ


เพียงเท่านี้การสมัครสมาชิคก็เสร็จสิ้นแล้วครับ สามารถไปล๊อกอินเข้าระบบกันได้เลย

รหัสผ่าน จะถูกส่งมาทาง SMS เข้าโทรศัพท์เรา 
ตามเบอร์โทรที่เรากรอกไปตอนสมัครนะครับ

ต่อไปก็ กดที่ LOG IN ข้างบนครับ


กรอก Username และ Password (ที่เราได้รับทาง SMS) เข้าไป
แล้วกด LOGIN ครับผม


เท่านี้ก็ล๊อกอินเข้ามาในระบบแล้วครับ ^_^ พร้อมสำหรับขั้นตอนต่อไป


STEP 2: แอพพลิเคชั่น เกียร์ และคีย์

ที่นี้ก็จะมาถึง การสร้าง Application (แอพพลิเคชั่น) กันนะครับ Application ที่เราจะสร้างในตอนนี้ 
ไม่ใช่ App แบบในโทรศัพท์แบบพวก Facebook, Camera 360, B612 อะไรแบบนี้นะครับ
แต่เป็น สิ่งที่เหมือนเป็นตัวแทนของระบบของเรา ครับ (เช่น "ระบบสมาร์ทโฮมในบ้านของเซเรฟ") 
ในระบบของเราก็จะสามารถ เพิ่มอุปกรณ์เข้าไปได้ โดยอุปกรณ์ของเรานั้นจะถูกเรียกว่า Gear
(ซึ่งอุปกรณ์ที่ว่านั้นก็อย่างเช่น ตัว NodeMCU ที่เรากำลังจะทำเป็นตัวควบคุมสวิชต์ไฟอยู่ตอนนี้ 
หรือพวกบอร์ดอื่นๆที่มีการต่อเซนเซอร์สำหรับส่งข้อมูลค่าต่างๆ เช่นอุณหภูมิและความชื้น เป็นต้นครับ) 
ใน  Application หนึ่งอาจจะมีหลายๆ อุปกรณ์ (หลายๆ Gear ก็ได้) และแต่ละ Gear ภายในระบบเดียวกัน
(ภายใน Application เดียวกัน) ก็จะสามารถสื่อสารกันเองระหว่างอุปกรณ์ได้ครับผม

ซึ่ง NETPIE เปิดให้เราสามารถใช้งานฟรีได้ถึง 
100 อุปกรณ์เลยครับ!!!
 (ขอขอบคุณ NECTEC และ สวทช. อีกครั้งครับสำหรับโอกาสดีๆแบบนี้)

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

สรุปคำศัพท์สำคัญ:

APPLICATION = ตัวแทนของระบบที่มีอุปกรณ์ซึ่งติดต่อกันแบบ IoT ของเราครับ
GEAR = อุปกรณ์ที่อยู่ในระบบของเราครับ เช่นอุปกรณ์ NodeMCU V2 ตัวที่เรากำลังทำอยู่
KEY = รหัสที่ใช้ในการระบุตัวตน(คล้ายๆรหัสประจำตัว) ของอุปกรณ์ (ของ Gear แต่ละตัว) 

อธิบายแบบนี้ไปก็คงอาจจะไม่เข้าใจมาก TT เอาเป็นว่า มาสร้างกันเลยแล้วกันนะครับ

ขั้นแรกก็ กดที่ APPLICATION ตรงนี้เลยครับ


ต่อไปเราก็จะมาที่หน้า APPLICATION MANAGEMENT (การจัดการแอพพลิเคชัน) ครับ 
ก็จะแสดงข้อมูลจำนวน Application ที่เราสร้างไว้ และจำนวนอุปกรณ์ (Gear) ในระบบของเราครับ
(ตอนนี้ยังไม่มีอะไรซักอย่างครับ 555+) ก็ให้เริ่มสร้าง Application โดยกดตรงปุ่ม [+] ตามในภาพครับ


ใส่ชื่อ Application ของเราครับ เช่นในที่นี้ของผมตั้งเป็น ZerefSmartHome ครับ


จากนั้นเราก็จะได้ Application ของเราแล้วครับ โดยที่ชื่อที่เราตั้งเข้าไป จะเป็น APP ID
ของ Application เรานะครับ (จะได้นำไปใส่ในโค้ดครับ) ทีนี้ต่อไปเราก็จะมาสร้าง Key กันครับ
กดที่ปุ่ม [+] ตามในรูปเลยครับ


จากนั้นก็จะปรากฏหน้าต่างสำหรับการสร้าง Key ขึ้นมาครับ ก็ให้ทำการตั้งชื่อให้อุปกรณ์ของเราครับ
เช่นของผม ตั้งชื่อเป็น SmartNode1 (ประมาณว่ากล่องสวิชต์เปิดปิดไฟของเราชื่อ SmartNode ตัวที่ 1)
แล้วก็ทำการเลือก Type ให้เป็น Session Key จากนั้นก็กด CREATE เลยครับ


จากนั้นเราก็จะได้ Key สำหรับไว้ให้อุปกรณ์ของเราเอาไปใช้ในการสื่อสารแล้วครับ


ทีนี้ก็ให้กดที่ Key ที่สร้างไว้นะครับ ก็จะปรากฏข้อมูล Key ขึ้นมาครับ
หากจะเปลี่ยนชื่อของอุปกรณ์ ก็พิพม์ชื่อใหม่ด้านบน แล้วก็กดปุ่ม RENAME ครับ


ข้อมูลที่เราจะนำไปใช้ก็จะมี Key กับ Secret นะครับ ก็อบไปไว้ในไฟล์ Notepad 
แล้วเซฟไว้ก่อนเลยก็ได้ครับ เวลาจะนำมาใช้จะได้ง่าย
ทีนี้ต่อไปก็จะมาว่ากันเรื่องของโค้ดแล้วครับ ^_^

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

STEP 3: การเตรียม Code ฝั่ง Arduino

ทีนี้ก็จะกลับมาว่ากันที่เรื่องของโค้ด และ Arduino กันนะครับ โดยโค้ดทั้งหมดของเรานั้น
จะมีความคล้ายคลึงกับโปรเจค IoT ที่ NETPIE ได้ทำไว้แล้ว นั่นคือ Project SMART PLUG ครับ
โดยเราจะใช้โค้ดทั้งหมดของโปรเจคนี้กับอุปกรณ์ของเราครับผม ซึ่งสามารถเข้าไปดูได้ที่ลิงค์นี้ครับ


ซึ่งจะเห็นได้ว่า มีโค้ดอยู่ 2 ชุดครับ โดยจะมีโค้ดฝั่ง Arduino และโค้ดฝั่ง HTML5 ครับ

โค้ดฝั่ง Arduino: เป็นโค้ดที่จะถูกโหลดลงไปในอุปกรณ์ครับ จะเป็นโค้ดที่ทำหน้าที่ส่ง/รับ 
คำสั่งและสั่งให้อุปกรณ์ทำงานครับ (จะมีการใช้คำสั่งจาก Part 4 ในโค้ดนี้ครับ)

โค้ดฝั่ง HTML5: สำหรับโค้ดนี้ จะเป็นโค้ดที่ใช้ในการสร้างไฟล์เว็บเพจ เพื่อใช้เป็นส่วนติดต่อ (อินเตอร์เฟส) กับเราครับ คือจะเป็นโค้ดสำหรับหน้าเว็บที่จะมีสวิชต์ให้เราเอานิ้วจิ้มบนจอมือถือ
เพื่อส่งคำสั่งไปหา NodeMCU แล้วให้โค้ดฝั่ง Arduino รับไปสั่งการรีเลย์นั่นเองครับ

Microgear Library (สำหรับ Arduino)

ในโค้ดของ NETPIE นั้นจะมีการ Include Library ซึ่งจะเป็นการเพิ่มคำสั่งพิเศษเฉพาะของ NETPIE
เข้าไปเพื่อให้ Arduio สามารถใช้คำสั่งพิเศษเฉพาะของ NETPIE ได้ครับ ดังนั้นเราจึงต้องทำการติดตั้ง
Library ของ Microgear ก่อนครับ


เข้าไปแล้วกดที่ Download ZIP ตรงนี้นะครับ


เมื่อดาวน์โหลดเสร็จแล้วก็ทำการเปิดไฟล์ แล้วทำการแตกเอาโฟลเดอร์ 
microgear-esp8266-arduino-master ไปวางไว้ในโฟล์เดอร์ Libraries ของ Arduino เลยครับ


เพียงเท่านี้ก็เสร็จสิ้นแล้วนะครับ กับการติดตั้ง Microgear Library ของ Arduino ครับ






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

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