flowchart LR
subgraph student["นักเรียน: Arduino"]
S["เซนเซอร์แสง A0"] --> B["UNO R4 WiFi"]
B --> A["หลอดไฟ LED"]
end
subgraph teacher["ผู้สอน: คอมพิวเตอร์ของผู้สอน"]
G["gateway<br/>กฎ + โหมด"]
T["Gemma<br/>แปลข้อความเป็นคำสั่ง"]
C["หน้าแชต"]
end
B -- "Wi-Fi: ค่าแสง" --> G
G -- "LED_ON / LED_OFF" --> B
C -- "ข้อความ" --> G
G <--> T
N["นักเรียนเปิดหน้าแชต<br/>ในเบราว์เซอร์"] --> C
AIoT for Beginners
สร้างโคมไฟอัจฉริยะ (smart lamp) ด้วย Arduino UNO R4 WiFi ที่เปิด-ปิดตามความสว่าง และควบคุมผ่านหน้าแชต
ภาพรวม
โคมไฟอัจฉริยะที่ทุกคนสร้างในกิจกรรมนี้
- วัดความสว่าง ของห้องด้วยเซนเซอร์ที่ต่อกับบอร์ด Arduino UNO R4 WiFi
- เปิดไฟเองเมื่อมืด และปิดเมื่อสว่างพอ (โหมดอัตโนมัติ)
- ตรวจสอบและควบคุมผ่านหน้าแชต เช่น พิมพ์ว่า “เปิดไฟ” “ปิดไฟ” หรือ “ตอนนี้สว่างเท่าไร”
- มี AI (Gemma) ช่วยแปลข้อความที่พิมพ์เป็นคำสั่ง ส่วนการสั่งหลอดไฟเป็นหน้าที่ของกฎที่ตรวจสอบได้
นักเรียน เขียนและอัปโหลดโค้ด Arduino ต่อวงจร แล้วใช้หน้าแชตผ่านเบราว์เซอร์ ไม่ต้องติดตั้ง Python
ผู้สอน เปิด gateway, หน้าแชต และ Gemma บนคอมพิวเตอร์เครื่องเดียว เนื้อหาส่วนนี้มีป้าย “ส่วนของผู้สอน” กำกับ
สำหรับนักเรียน
| ลำดับ | เรื่อง | หน้า |
|---|---|---|
| 0 | ติดตั้ง Arduino Cloud Agent และใช้ Cloud Editor อัปโหลดโค้ด (พร้อมวิธีแก้ปัญหา) | เตรียมเครื่องมือ |
| 1 | เซนเซอร์และแอคชูเอเตอร์: แนวคิดพื้นฐาน | แนวคิด |
| 2 | ต่อวงจร อ่านค่าแสง ทำไฟกลางคืน แล้วเชื่อม Wi-Fi | สร้างโคมไฟ |
| 2b | ไม่มีบอร์ด? จำลองขั้นที่ 1–4 ในเบราว์เซอร์ด้วย Wokwi | ไม่มีบอร์ด? ใช้ Wokwi |
| 3 | สั่งและตรวจสอบโคมไฟผ่านหน้าแชต + ลองเขียน system prompt ของตัวเอง | ใช้หน้าแชต |
| 4 | ปรับแก้โค้ด Arduino ให้ใช้งานได้ดีขึ้น | ปรับแก้โค้ด |
ที่ต้องมี: บอร์ด Arduino UNO R4 WiFi + สาย USB, เซนเซอร์แสงแบบ analog (เช่น Grove Light Sensor, LDR + ตัวต้านทาน 10 kΩ หรือ potentiometer จำลองแสง), LED ภายนอก + ตัวต้านทาน 220 Ω (ขั้นสุดท้าย), Arduino Cloud Editor (หรือ Arduino IDE 2) พร้อมไลบรารี ArduinoJson v7
ข้อมูลที่ขอจากผู้สอน: ชื่อและรหัส Wi-Fi 2.4 GHz, รหัสบอร์ดของคุณ (desk-01 …), และที่อยู่หน้าแชต
ห้ามต่อหลอดไฟบ้านหรืออุปกรณ์ไฟฟ้าแรงสูงกับบอร์ดโดยตรง
สำหรับผู้สอน
| เรื่อง | หน้า |
|---|---|
| ติดตั้งและเปิดระบบทั้งหมดด้วยไม่กี่คำสั่ง | เตรียมระบบ |
| กฎของโคมไฟ สัญญา API ตัวจำลองบอร์ด | Gateway |
| เปิด Gemma (CPU/Colab) ให้แปลข้อความเป็นคำสั่ง | AI |
| ช่องโหว่ของระบบที่จะสอนรอบหน้า | ความปลอดภัย |
เริ่มเร็ว (ต้องมี Python 3.10 ขึ้นไป):
pip install streamlit
python -m gateway.server --lan
streamlit run chatbot/app.pyกิจกรรมของคอร์สอบรม
การนำชุดกิจกรรมนี้ไปอบรมที่ต่างๆ ดูกิจกรรมของคอร์สอบรม
โครงสร้าง repo
aiot-for-beginners/
├── devices/ Arduino 4 ขั้น (นักเรียน) + ตัวจำลองบอร์ด (ผู้สอน)
├── gateway/ gateway (ผู้สอน)
├── chatbot/ หน้าแชต (ผู้สอนเปิด นักเรียนใช้ผ่านเบราว์เซอร์)
├── ai/ Gemma และ notebook (ผู้สอน)
└── content/ ต้นฉบับเอกสารนี้ (Quarto)
ส่วนแนวคิดเรื่องเซนเซอร์และแอคชูเอเตอร์แปลและเรียบเรียงจาก IoT For Beginners ของ Microsoft (MIT License) ดูแหล่งอ้างอิง