หน่วยที่ 5 EP.4: ลงมือสร้างระบบ IoT ควบคุมผ่านสมาร์ตโฟน (Coding & Dashboard)
  • By Admin
  • 46
  • 11 เม.ย. 2569

หน่วยที่ 5 EP.4: ลงมือสร้างระบบ IoT ควบคุมผ่านสมาร์ตโฟน (Coding & Dashboard)

ถึงเวลาลงมือปฏิบัติจริง (Maker Time)! เรียนรู้วิธีการสร้างระบบสมาร์ตโฮมเต็มรูปแบบ ตั้งแต่การออกแบบหน้าปัดควบคุม (Dashboard) บนแอปพลิเคชันมือถือ (IoT MQTT Panel) ทำความเข้าใจการตั้งค่ารหัสลับ

📲 หน่วยที่ 5 EP.4: ลงมือสร้างระบบ IoT ควบคุมผ่านมือถือ

Coding & Dashboard Design

เรียนทฤษฎีกันมาครบแล้ว ถึงเวลาประกอบร่างความรู้ทั้งหมดเข้าด้วยกันครับ! วันนี้เราจะมาจำลองการสร้าง "ระบบเปิด-ปิดหลอดไฟผ่านสมาร์ตโฟน" โดยใช้สมาร์ตโฟนเป็นผู้สั่งการ (Publisher) ส่งผ่านตัวกลาง (Broker) ไปยังบอร์ดสมองกล (Subscriber) เพื่อให้หลอดไฟสว่างขึ้นครับ!

📱 1. สร้างหน้าปัดสั่งการด้วยแอป "IoT MQTT Panel"

เราจะเปลี่ยนหน้าจอมือถือธรรมดา ให้กลายเป็นรีโมตสุดล้ำด้วยแอปพลิเคชัน IoT MQTT Panel (หรือแอปแนว Dashboard อื่นๆ) โดยมีขั้นตอนง่ายๆ ดังนี้:

ขั้นตอนที่ 1: เชื่อมต่อ Broker (เซิร์ฟเวอร์ตัวกลาง)

เปิดแอปขึ้นมา สิ่งแรกที่ต้องทำคือกรอก IP Address หรือ URL ของ Broker เพื่อให้มือถือรู้ว่าจะต้องส่งข้อมูลไปที่เซิร์ฟเวอร์ไหน (เช่น tcp://broker.hivemq.com)

ขั้นตอนที่ 2: สร้างวิดเจ็ต (Add Widget)

ในกรณีที่เราต้องการเปิด-ปิดไฟ ให้เราเลือกวิดเจ็ตประเภท สวิตช์ (Switch หรือ Button) นำมาวางบนหน้าจอ Dashboard

🔑 2. ถอดรหัสหัวใจ IoT: Topic และ Payload

เมื่อเราสร้างสวิตช์บนแอปแล้ว เราต้องตั้งค่า "รหัสลับ" 2 อย่าง เพื่อให้สวิตช์ตัวนี้คุยกับหลอดไฟได้ถูกดวง ไม่ไปเปิดไฟบ้านคนอื่นครับ!

  • Topic (หัวข้อ/ช่องทาง): เปรียบเสมือน "จ่าหน้าซองจดหมาย" หรือเลขห้องแชท เช่น เราตั้งชื่อ Topic ว่า home/bedroom/light1 เพื่อบอกให้รู้ว่านี่คือคำสั่งของไฟห้องนอนดวงที่ 1
  • Payload (ข้อมูลที่ส่ง): เปรียบเสมือน "ข้อความในจดหมาย" เช่น ถ้าเราปัดสวิตช์เปิด แอปจะส่ง Payload คำว่า ON (หรือเลข 1) ออกไป และถ้าปัดปิด จะส่งคำว่า OFF (หรือเลข 0) ออกไปครับ

💻 3. Coding: เขียนโปรแกรมสั่งสมองกลให้ตื่นรู้

เมื่อมือถือส่งคำสั่งออกไปแล้ว ฝั่งฮาร์ดแวร์ (เช่น บอร์ด Raspberry Pi, NodeMCU หรือ KidBright) ก็ต้องมี โปรแกรมคอมพิวเตอร์ (Coding) ฝังไว้ เพื่อบอกมันว่าต้องทำตัวอย่างไร ซึ่งหลักการเขียนโปรแกรม (เช่น ภาษา Python) จะมีตรรกะดังนี้ครับ:

1. เชื่อมต่อ Wi-Fi และ Broker ตัวเดียวกัน
2. Subscribe (ติดตาม) หัวข้อ "home/bedroom/light1"
3. วนลูปตรวจสอบข้อความ (Payload) ตลอดเวลา
4. IF (ถ้า Payload == "ON") {
    จ่ายไฟให้หลอดไฟสว่าง (Output HIGH)
  }
5. ELSE IF (ถ้า Payload == "OFF") {
    ตัดไฟหลอดไฟดับ (Output LOW)
  }

เพียงเท่านี้! ทันทีที่เรากดสวิตช์ ON บนมือถือ ข้อมูลจะวิ่งไปที่ Broker แล้วส่งต่อมาที่บอร์ดสมองกล บอร์ดอ่านโค้ดเจอคำว่า ON ก็จะสั่งจ่ายไฟให้หลอดไฟสว่างขึ้นทันที นี่แหละครับคือเวทมนตร์ของ Internet of Things!

✍️ มินิควิซ ทบทวนความรู้ EP.4

ทดสอบความเข้าใจเรื่องการสร้างระบบควบคุม IoT

ข้อที่ 1: ในการใช้งานแอปพลิเคชัน IoT MQTT Panel สิ่งแรกที่นักเรียนต้องตั้งค่าเพื่อให้แอปสามารถสื่อสารกับระบบได้คืออะไร?

ข้อที่ 2: ในระบบ MQTT คำว่า "Topic" มีหน้าที่เปรียบได้กับสิ่งใดในชีวิตประจำวัน?

ข้อที่ 3: หากนักเรียนกดสวิตช์เปิดไฟบนมือถือ แล้วแอปส่งคำว่า "ON" ออกไป คำว่า "ON" นี้เรียกอีกอย่างหนึ่งว่าอะไรตามหลักของ MQTT?

ข้อที่ 4: ในกระบวนการสั่งเปิดไฟจากมือถือ "บอร์ดสมองกล" (เช่น Raspberry Pi หรือ NodeMCU) ที่ต่ออยู่กับหลอดไฟ จะต้องทำหน้าที่อะไรเป็นหลัก?

ข้อที่ 5: เหตุใดเราจึงต้อง "เขียนโปรแกรม (Coding)" ลงไปในบอร์ดสมองกล ทั้งที่เรากดปุ่มจากในแอปมือถือได้แล้ว?

💡 พบข้อผิดพลาดหรือมีข้อเสนอแนะ?

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

✉️ ส่งอีเมลแจ้งครูพิสิฐ

แชร์ :

บทเรียนอื่น ๆ