ส่วนที่ 1: แนะนำ
เป้าหมายหลัก:
- เขียนโปรแกรมเชื่อมต่อสมองกลฝังตัว (เช่น บอร์ด ESP32) เพื่ออ่านค่าจากเซนเซอร์ต่างๆ
- ส่งข้อมูล ที่อ่านได้จากเซนเซอร์ (เช่น อุณหภูมิ, ความชื้น) ขึ้นไปเก็บไว้บน ระบบคลาวด์คอมพิวติ้ง (Cloud Computing)
- เขียนแอปพลิเคชัน (บนมือถือหรือเว็บ) เพื่อ “ควบคุม” การทำงานของอุปกรณ์ หรือ “แสดงผล” ข้อมูลที่ส่งขึ้นไปบนคลาวด์
กฎความปลอดภัย:
เราทำงานกับอุปกรณ์อิเล็กทรอนิกส์และไฟฟ้า ให้ระมัดระวังเรื่องการต่อวงจรผิดขั้ว, การลัดวงจร, และการใช้เครื่องมือต่างๆ บอร์ดที่เราใช้ (ESP32) ค่อนข้างบอบบาง ถ้าต่อไฟผิด อาจเสียหายถาวรได้
ส่วนที่ 2: IoT คืออะไร? (What is Internet of Things?)
1. ความหมายของ IoT
- IoT (Internet of Things) แปลตรงตัวคือ “อินเทอร์เน็ตของสรรพสิ่ง”
- นิยามง่ายๆ คือ: การที่ “สิ่งของ” หรือ “อุปกรณ์” ต่างๆ (เช่น หลอดไฟ, แอร์, ประตู, ถังขยะ, เครื่องวัด) ถูกเชื่อมต่อเข้ากับเครือข่ายอินเทอร์เน็ต
- ในอดีต อินเทอร์เน็ตมีไว้สำหรับ “คน” คุยกับ “คน” (ผ่านคอมพิวเตอร์, มือถือ)
- แต่ IoT คือยุคที่ “สิ่งของ” คุยกับ “คน” หรือ “สิ่งของ” คุยกันเอง ผ่านอินเทอร์เน็ต
- เปรียบเทียบ: IoT เหมือนการ “ติดสมอง” (Microcontroller) และ “ติดระบบสื่อสาร” (Wi-Fi/Internet) ให้กับสิ่งของที่ปกติมัน “โง่” (ทำงานเองไม่ได้) เพื่อให้มัน “ฉลาด” ขึ้น สามารถรับรู้ (Sense) และสื่อสาร (Communicate) ได้
2. ทำไม IoT ถึงสำคัญ? (Why IoT?)
ประโยชน์หลักของ IoT มี 3 ด้าน:
- ความสะดวกสบาย (Comfort/Convenience): สั่งงานทุกอย่างได้จากระยะไกล เช่น สั่งเปิดแอร์ก่อนถึงบ้าน, สั่งเปิดไฟหน้าบ้านผ่านมือถือ
- ประสิทธิภาพและการประหยัด (Efficiency & Economy): ทำให้ระบบทำงานอัตโนมัติ ช่วยประหยัดพลังงานหรือต้นทุน เช่น ระบบรดน้ำต้นไม้อัตโนมัติ (รดเฉพาะเมื่อดินแห้ง), ระบบปิดไฟอัตโนมัติ (ปิดเมื่อไม่มีคนอยู่)
- การวิเคราะห์ข้อมูล (Data Analytics): เมื่อเรารู้ข้อมูล Real-time (เช่น อุณหภูมิ, การใช้ไฟ) เราสามารถนำข้อมูลนั้นมาวิเคราะห์เพื่อพัฒนาหรือปรับปรุงกระบวนการต่างๆ ได้
ส่วนที่ 3: สถาปัตยกรรม 4 ส่วนของ IoT (4 Components of IoT)
ไม่ว่าระบบ IoT จะซับซ้อนแค่ไหน โดยพื้นฐานจะมี 4 องค์ประกอบนี้เสมอ:
1. Things (อุปกรณ์) นี่คือส่วนที่จับต้องได้ทางกายภาพ ทำหน้าที่ “รับรู้” (Sense) และ “กระทำ” (Act) ในโลกจริง ประกอบด้วย:
- Microcontroller (สมองกล): ตัวประมวลผลหลัก
- ในวิชานี้ เราจะใช้บอร์ด ESP32
- เหตุผล: ESP32 เป็นบอร์ดที่เก่งมาก เพราะมี Wi-Fi และ Bluetooth อยู่ในตัว จบในบอร์ดเดียว ราคาถูก เหมาะกับงาน IoT ที่สุด
- Sensors (เซนเซอร์): ทำหน้าที่ “รับรู้” (เหมือน หู, ตา, ผิวหนัง)
- ตัวอย่าง: DHT11 (วัดอุณหภูมิ/ความชื้น), LDR (วัดแสง), Soil Moisture (วัดความชื้นดิน)
- Actuators (แอคชูเอเตอร์): ทำหน้าที่ “กระทำ” (เหมือน แขน, ขา)
- ตัวอย่าง: Relay (สั่งเปิด-ปิดไฟ), Motor (สั่งหมุนปั๊มน้ำ), LED (แสดงผล)
2. Gateway (เกตเวย์ / ประตูเชื่อมต่อ)
- ทำหน้าที่เป็น “ประตู” ให้ ‘Things’ (ESP32) ของเรา ส่งข้อมูลออกไปสู่โลกอินเทอร์เน็ต
- อุปกรณ์ที่เราคุ้นเคยและใช้เป็น Gateway ในวิชานี้ก็คือ Router Wi-Fi ที่บ้านหรือที่วิทยาลัย
3. Cloud (คลาวด์คอมพิวติ้ง)
- เมื่อข้อมูล (เช่น ค่าอุณหภูมิ) ถูกส่งผ่าน Router ไปแล้ว… มันจะถูกส่งไปที่ “Cloud”
- ในโลกของ IoT “Cloud” ไม่ได้หมายถึงที่เก็บไฟล์ แต่หมายถึง “Server ตัวกลาง” ที่ทำหน้าที่รับ-ส่ง และประมวลผลข้อมูล
- ในวิชานี้ เราจะเรียนรู้โปรโตคอล (ภาษา) มาตรฐานอุตสาหกรรมที่ชื่อว่า MQTT (Message Queuing Telemetry Transport)
- MQTT ทำงานโดยมีตัวกลางที่เรียกว่า “Broker” (นายหน้า) ทำหน้าที่เหมือน “บุรุษไปรษณีย์” คอยรับ-ส่งข้อความ (Message) ระหว่างอุปกรณ์ของเรา
- (เราจะใช้ Broker สาธารณะที่ฟรี เช่น
broker.hivemq.com)
4. Application (แอปพลิเคชัน)
- ส่วนสุดท้าย คือ “ส่วนติดต่อผู้ใช้” (User Interface) ที่ทำให้คนอย่างเราสามารถ “ดู” ข้อมูล หรือ “สั่งงาน” ระบบได้
- เราจะเรียนรู้การสร้าง Application 2 รูปแบบ:
- Web Dashboard (หน้าเว็บแสดงผล): เราจะใช้เครื่องมือที่ชื่อว่า Node-RED ซึ่งเป็นเครื่องมือสร้างระบบ IoT แบบลากวาง (Visual) เพื่อสร้าง “กราฟ” หรือ “เกจวัด” ไว้ดูข้อมูลบนคอมพิวเตอร์
- Mobile Application (แอปมือถือ): เราจะใช้แอปฟรีบนมือถือ (เช่น MQTT Dash) เพื่อสร้าง “ปุ่ม” หรือ “สไลเดอร์” สำหรับสั่งงานและควบคุมอุปกรณ์ของเราจากที่ไหนก็ได้
ส่วนที่ 4: สรุปและเตรียมความพร้อมสู่ภาคปฏิบัติ
- สรุปภาพรวมการทำงานของ IoT (แบบ MQTT): (1) Things (ESP32+Sensor) “Publish” (ส่ง) ข้อมูล -> ผ่าน (2) Gateway (Router) -> ไปที่ (3) Cloud (MQTT Broker) -> (4) Application (Node-RED และ แอป MQTT Dash) “Subscribe” (รับ) ข้อมูลไปแสดงผล หรือ “Publish” (ส่ง) คำสั่งกลับมา
- (การเชื่อมโยงสู่ภาคปฏิบัติ:
- ในชั่วโมงปฏิบัติต่อไป เราจะมาเริ่มกันที่ส่วนที่ 1 คือ “Things”
- เราจะมา “ปลุกชีพ” บอร์ด ESP32 ของเรา
- งานแรกคือ: ติดตั้งโปรแกรม Arduino IDE และทดลองเขียนโปรแกรมแรก เพื่อสั่งให้ไฟ LED บนบอร์ด “กะพริบ” (Blink) และ “พูดคุย” (Serial Print) ทักทายเรา… นี่คือ Lab 1 ของเราครับ
