วันเสาร์ที่ 25 มิถุนายน พ.ศ. 2559

[IoT] NETPIE Freeboard [Part3]

NETPIE Freeboard สำหรับผู้เริ่มต้น
How-to Guide for NETPIE Freeboard's beginners 

PART3: "อุณหภูมิ" "ความชื้น" และ "ความเข้มแสง" 

(ตัวอย่างการส่งค่าเซนเซอร์ ผ่าน NETPIE)



ทักทาย...


      ครับหลังจาก Part ที่แล้วเราได้ลองเปิดปิดหลอดไฟ (LED) ผ่าน NETPIE กันแล้ว ซึ่งนั่นเป็น

รูปแบบของการส่งข้อมูลสถานะ "เปิด" หรือ "ปิด" ระหว่าง Freeboard ของเรากับอุปกรณ์ (Things) นั้น 

คาดว่าหลังจากได้ทดลองลงมือทำดูจริงๆแล้วคงทำให้เข้าใจระบบการทำงาน ของ NETPIE Freeboard

กันมากขึ้นแล้วนะครับ และใน Part นี้จะเป็นการทดลอง ส่งค่า "อุณหภูมิ" และ "ความชื้น" นะครับ 

ขอเรียกการทดลองนี้ว่า "SmartSensor" แล้วกันนะครับ ถ้าพร้อมแล้วก็ เริ่มกันเลยครับ ^_^

     



STEP1: เตรียมอุปกรณ์ 


สำหรับอุปกรณ์ที่ต้องเตรียมก็มีดังนี้นะครับ...

1.เช่นเคยครับ กับ บอร์ดไมโครคอนโทรลเลอร์ NodeMCU V.2 (ESP-12E)



2.ตามด้วยโปรโตบอร์ดครับ เพื่อให้การต่ออะไรๆง่ายขึ้น



3. โมดูล DHT11 หรือ DHT22 แบบเป็นโมดูลสำเร็จรูป 
หรือแบบที่เป็นเฉพาะเซนเซอร์ก็ได้ครับ (แค่อันเดียวก็พอนะครับ)



4. ตัวต้านทานแบบปรับค่าได้ตามแสง (LDR) ครับ 1 ตัว



5. และสุดท้าย คือ ตัวต้านทาน ค่า 10k (10 กิโลโอห์ม) ครับ
รหัสสี: น้ำตาล ดำ ส้ม ตามด้วยเงินหรือทอง ครับ
เตรียมไว้ซัก 2 ตัวนะครับ



STEP2: การต่อวงจร


     สำหรับการต่อวงจร ก็จะมี 2 แบบนะครับ ถ้าใช้ DHT แบบที่เป็นเซนเซอร์เปล่าๆ ก็จะมีการ
ต่อวงจรที่ต่างไป คือจะต้องต่อตัวต้านทาน 10k คร่อมระหว่างขา Vcc และขา Signal ด้วยครับ
ซึ่งในตัวอย่างนี้ผมเลือกใช้ DHT22 มาต่อให้ดูเป็นตัวอย่างนะครับ

การต่อวงจรแบบที่ 1 : ใช้ DHT22 แบบที่เป็นเซนเซอร์เปล่าๆ





การต่อวงจรแบบที่ 2 : ใช้ DHT22 แบบที่เป็นโมดูล


หมายเหตุ: LDR นั้นมีหลายขนาดและหลายเสป็คนะครับ 
ตัวต้านทานที่ต่อกับ LDR อาจปรับเปลี่ยนได้ตามความเหมาะสมครับผม

STEP3: ติดตั้งไลบรารี่สำหรับเซนเซอร์ DHT แบบต่างๆ


เนื่องจากในบทความนี้มีการใช้เซนเซอร์วัดอุณหภูมิและความชื้น
DHT22 (หรือ DHT11) ซึ่งจะมีการ include ไฟล์ DHT.h ซึ่งเป็น Library
ของ DHT Sensor สำหรับ Arduino ซึ่งขั้นตอนการติดตั้งก็จะมีดังนี้ครับ


ขั้นแรกก็ให้ เปิดโปรแกรม Arduino ขึ้นมาครับผม 
แล้วกดที่ Sketch > Include Library > Manage Libraries




จากนั้นจะขึ้นหน้าต่าง Library Manager ขึ้นมาครับก็ให้ทำตามนี้เลย
ของผมเลือกใช้ Library ของ Adafruit ตัวนี้นะครับ




เมื่อติดตั้งเรียบร้อยแล้วก็จะเป็นแบบนี้ครับ ก็ทำการกด Close เพื่อปิดหน้าต่างไปได้เลย




สำหรับใครที่ยังไม่ได้เตรียม Software สำหรับการใช้งาน Arduino และ NodeMCU V2
ตามไปดูขั้นตอนและวิธีการเซ็ทอัพโปรแกรมต่างๆที่ลิงค์นี้นะครับที่ลิ้งค์นี้นะครับ 

STEP4: อัพโหลดโปรแกรม


ก่อนอื่นก็ให้สร้าง Key สำหรับอุปกรณ์นี้บน NETPIE ก่อนนะครับ 
เช่นของผมสร้างไว้ภายใน AppID ชื่อ ZerefSmartHome โดยสร้างเป็น
Device Key ชื่อว่า SmartSensor ครับ สำหรับการใช้งาน NETPIE และการสร้าง
Key อย่างละเอียดนั้นให้ตามดูจากบทความก่อนหน้านี้ใน >>> Smart Home Part 5


สำหรับโค้ดโปรแกรมที่จะอัพโหลดก็จะเป็นแบบนี้นะครับ
ก่อนอัพโหลดก็ให้ทำการแก้ในส่วนของ APPID, KEY, และ SERCRET
โดยใส่ค่าตามที่ได้จากการสร้างไว้บน NETPIE นะครับ



เมื่ออัพโหลดแล้ว บอร์ดจะทำงาน ให้ทำการเปิด Serial Monitor ขึ้นมา
เพื่อดูสถานะการทำงานของบอร์ดนะครับ โดยทำการคลิ๊กที่ Tools > Serial Monitor
หากมีปัญหาในขั้นตอนการเชื่อมต่อหรือยังไงเราจะสามารถเห็นได้จากที่นี่ครับ


เท่านี้ก็เรียบร้อยครับสำหรับการอัพโหลดโค้ดโปรแกรมลงบอร์ด 
ต่อไปเราจะไปดูฝั่งของ Freeboard กันต่อเลยนะครับ


STEP5: รับข้อมูลบน NETPIE Freeboard


ก่อนอื่นก็ให้เปิด Freeboard ขึ้นมาครับ สำหรับอันนี้จะเป็น Freeboard ที่ต่อเนื่องมาจาก
บทความใน Part 1 และ 2 นะครับ (มีการสร้าง Datasource และมี Widgets ต่อเนื่องมาจากตอนที่แล้ว)




ก่อนอื่นผมก็จะทำการกดปุ่ม ADD PANE เพื่อเพิ่มแผงใหม่ขึ้นมานะครับ
สามารถลากแผงไปมาได้ตามใจชอบเลยครับ โดยการคลิ๊กตรงขอบบนแล้วลากได้ครับ




หลังจากลากมาวางแล้ว ก็จะทำการเพิ่ม Widget แบบ Gauge ครับ โดยจะมีค่าต่างๆ ดังนี้ครับ




สำหรับการใส่ช่องในค่า VALUE ให้คลิ๊กตามลำดับนี้นะครับ




ตรงนี้จะเห็นข้อมูลที่ chat มาจาก SmartSensor นะครับ ตอนนี้เราทำ Gauge 
สำหรับแสดงค่าอุณหภูมิอยู่ ก็ให้เลือก SmartSensor/Temperature ได้เลยครับ




จากนั้นกดที่ SAVE เพื่อบันทึกครับ 




จากนั้นเราก็จะได้ Gauge สำหรับแสดงอุณหภูมิแบบนี้ครับผม




จากนั้นก็ทำตามขั้นตอนเดิม เพื่อสร้างอีก Gauge นึง มาเพื่อแสดงค่าความชื้นครับ




โดยความชื้นนั้น จะมีหน่วยเป็น %RH ครับผม 




และทำเหมือนเดิมอีกครั้งนึง เพื่อสร้าง Gauge สำหรับแสดงค่าความเข้มแสงครับ
ตรงช่อง VALUE ก็ให้เลือกเป็น SmartSensor/LightLevel ครับ และจะมีการแก้ตรงช่อง
MAXIMUM เป็น 10 ครับ เพราะค่าความเข้มแสงที่ SmartSensor ส่งมา จะมีค่าเป็น 0 ถึง 10 ครับ




จากนั้นพอกด Save ไปอีกทีก็จะได้ครบแล้วครับ แต่การจัดเรียงยังดูวุ่นวายอยู่




ซึ่งพอคลิ๊ก-ลาก-วางไปมานิดหน่อย ก็จะออกมาดูสวยงามแล้วครับ




แล้วจากนั้น แต่ละแผง ยังสามารถตั้งชื่อ Title ได้นะครับ โดยทำแบบนี้ครับ




แล้วก็สามารถตั้งชื่อให้กับแผง แล้วกด Save ได้เลยครับ 
(ส่วน Column จะเป็นการกำหนดความกว้างของแผงนะครับ ลองปรับดูได้ครับผม)




พอตั้งชื่อให้กับทุกแผงแล้วก็จะออกมาสวยงามและดูชัดเจนแบบนี้เลยครับ




ก็เป็นอันเสร็จแล้วนะครับกับการสร้างอุปกรณ์ SmartSensor เพื่อแสดงข้อมูลอุณหภูมิ
ความชื้น และความเข้มแสง ผ่าน NETPIE Freeboard หวังว่าทั้งมือเก่าและมือใหม่ทุกท่าน
ที่ติดตามบทความนี้จะนำไปประยุกต์ใช้ต่อไปได้ในอนาคตได้นะครับ สำหรับ part นี้จะจบลงเพียงเท่านี้
ส่วนจะมี part ใหม่ต่อไปนั้น ต้องคิดตามกันต่อไปนะครับ 555+ สำหรับวันนี้ สวัสดีครับ





14 ความคิดเห็น:

  1. ความคิดเห็นนี้ถูกผู้เขียนลบ

    ตอบลบ
  2. มี Fsx ซะด้วย สงสัยจะบิน แล้วเขียนบทความด้วย อิอิ ขอบคุณมากๆเลยครับ

    ตอบลบ
  3. ขอบคุณครับที่ให้ความรู้

    ตอบลบ
  4. รันแล้วติด DHT 22 ทำไงครับ

    ตอบลบ
  5. มันบอก "DHT22" was not declared in this scope
    เลยตรวจไม่ผ่าน แก้โปรแกรมให้ด้วยครับ

    ตอบลบ
  6. ทำไมตอนกด serial monitor ขึ้น...................................

    ตอบลบ
  7. สอบถามหน่อยครับ NETPIE Freeboard ตรงที่ Datasource จะ add เลือกTypeเป็น NETPIE Microgear แล้วจะไม่เห็นแต่ไม่เห็น ช่อง microgear reference และช่อง driver alias เป็นเพราะอะไรครับ

    ตอบลบ
  8. ออ.. ทราบแล้วครับ NETPIE Freeboard เปลี่ยนเป็น เวอร์ชั่นใหม่

    ตอบลบ
  9. ไม่ระบุชื่อ27 กรกฎาคม 2560 เวลา 14:19

    ไม่ทราบว่าเราจะต้องเขียน code ยังไงหรอครับ analogRead รึป่าวครับ ขอความกรุณรด้วยครับ

    ตอบลบ
  10. ขอบคุณมากๆ ครับ ที่แบ่งปันครับ

    ตอบลบ
  11. มีวิธีที่ให้ Netpie ส่งค่าทีรับมาจาก node อัติโนมัติไหมครับ node1 - > netpie -> node2

    ตอบลบ
  12. If you're looking to lose weight then you certainly need to get on this totally brand new custom keto meal plan.

    To create this keto diet service, certified nutritionists, personal trainers, and top chefs joined together to develop keto meal plans that are effective, decent, economically-efficient, and delicious.

    From their first launch in early 2019, 1000's of people have already remodeled their figure and health with the benefits a good keto meal plan can give.

    Speaking of benefits: clicking this link, you'll discover eight scientifically-certified ones provided by the keto meal plan.

    ตอบลบ
  13. The RTP of casino slots is 96.55% - JeTHub
    The RTP 남양주 출장안마 of 영천 출장안마 casino 대전광역 출장마사지 slots is 96.55%. 대구광역 출장안마 to the RTP of casino slots and casino table games by 제천 출장마사지 using them.

    ตอบลบ