Lab 3: Working with multiple IoT devices

ในการทดลองนี้ให้นึกถึงสถานการณ์ที่เรามีเซ็นเซอร์ตรวจวัดอุณหภูมิติดตั้งกับ NodeMCU อยู่ตำแหน่งหนึ่ง และอีกสถานที่หนึ่งเราได้ทำการติดตั้ง NodeMCU + Relay เพื่อบังคับการทำงานของเครื่องปรับอากาศ โดยที่ทั้งสองตัวได้ส่งข้อมูลและควบคมได้ผ่าน NETPIE อยู่ล่วงหน้าแล้ว

[{"id":"1e1f868a.217409","type":"microgear","z":"e17f78c2.122d58","name":"LM35 Temp Sensor","appid":"","key":"","secret":"","alias":"","topics":"/#","active":true,"retain":"false","retainType":"bool","x":210,"y":460,"wires":[["c4144e81.ff8d5"]]},{"id":"c4144e81.ff8d5","type":"switch","z":"e17f78c2.122d58","name":"Check Temperature","property":"payload","propertyType":"msg","rules":[{"t":"gt","v":"30","vt":"num"},{"t":"lt","v":"22","vt":"str"}],"checkall":"true","outputs":2,"x":430,"y":460,"wires":[["b545b5a1.0ddd68"],["716703da.beb37c"]]},{"id":"7d4ef313.9694cc","type":"microgear","z":"e17f78c2.122d58","name":"Air Con Switch","appid":"","key":"","secret":"","alias":"","topics":"/#","active":true,"retain":"false","retainType":"bool","x":840,"y":460,"wires":[[]]},{"id":"b545b5a1.0ddd68","type":"change","z":"e17f78c2.122d58","name":"Turn ON","rules":[{"t":"set","p":"payload","pt":"msg","to":"1","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":620,"y":420,"wires":[["7d4ef313.9694cc"]]},{"id":"716703da.beb37c","type":"change","z":"e17f78c2.122d58","name":"Turn OFF","rules":[{"t":"set","p":"payload","pt":"msg","to":"2","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":620,"y":500,"wires":[["7d4ef313.9694cc"]]}]

Exported Flow

รูปภาพที่ 54 แสดง Exported Flow Lab 3

เริ่มต้นจากโหนด microgear ด้านซ้ายสุดของภาพชื่อ LM35 Temp Sensor ซึ่งทำหน้าที่รับข้อมูลอุณหภูมิเป็นตัวเลขในหน่วยCelsiusเข้าไปที่โหนด Switch ซึ่งได้ทำการตั้งค่าภายในโหนดดังต่อไปนี้

รูปภาพที่ 55 แสดงการตั้งค่าในโหนด Check Temperature

ในภาพ หากข้อมูลจากโหนด microgear ตัวเลขมากกว่า 30 องศา ให้ส่งตัวเลขอุณหภูมิไปยังช่องทางที่ 1 ส่วนเงื่อนไขถัดมา หาก อุณหภูมิน้อยกว่า 22 องศา ให้ส่งตัวเลขอุณหภูมิไปยังช่องทางที่ 2

รูปภาพที่ 56 แสดงเส้นทางการเดินของข้อมูลของโหนด Check Temperature

ภาพแสดงส่วนประกอบของโหนด Switch สำหรับใช้ในการตรวจสอบอุณหภูมิ

รูปภาพที่ 57 แสดงการตั้งค่าโหนด Turn ON และ Turn OFF

สำหรับโหนด Turn ON และ Turn OFF จะใช้โหนด Change เพื่อแปลงค่าของแต่ละช่องให้เป็นข้อความที่ Relay เข้าใจ เช่นในกรณีนี้ คือ ถ้าข้อมูลวิ่งมาที่ Turn ON ให้เปลี่ยน Payload เป็น 1 และสำหรับ Turn OFF จะเปลี่ยน Payload ให้เป็น 0

สุดท้ายแล้ว ที่แปลงเป็นตัว Trigger ที่ตัว Relay รับได้ก็จะถูกโหนด microgear ส่งไปที่ NETPIE

รูปภาพที่ 58 แสดงการลากโหนดเพื่อส่งคำสั่งไปยัง microgear

สาเหตุที่ตัวอย่างเป็นลักษณะนี้ นั่นก็เพราะว่า ผู้ใช้อุปกรณ์ IoT ส่วนใหญ่จะมีอุปกรณ์ที่แตกต่างกัน และอยู่ในสถานที่ที่แตกต่างกัน อย่างในตัวอย่างได้แสดงให้เห็นโหนด microgear สองตัว ที่มาจาก NodeMCU (อุปกรณ์) คนละตัวกัน เพราะฉะนั้นการที่ได้นำข้อมูลจากอุปกรณ์หนึ่งมาใช้ควบคุมอุปกรณ์หนึ่งเป็นเรื่องที่ “NodePIE/NodeRED” เข้ามาเป็นตัวกลางในการช่วยประสานงาน แน่นอนว่า ดังในตัวอย่าง เราหลีกเลี่ยงการแฟลชรอมใหม่โดยให้ตัว Node เปลี่ยนข้อมูลอุณหภูมิให้เข้าไปสั่งงาน Relay

results matching ""

    No results matching ""