🔧 โปรเจคไมโครบิต Micro:bit V2.2 + IOBIT V2.0 ตรวจจับน้ำฝน ควบคุมบานประตูอัตโนมัติ
🔧 1. อุปกรณ์ที่ใช้
- Micro:bit V2.2 – บอร์ดไมโครคอนโทรลเลอร์สำหรับการเรียนรู้ IoT และระบบอัตโนมัติ

- IOBIT V2.0 – บอร์ดขยายขา I/O สำหรับ Micro:bit เพื่อเชื่อมต่ออุปกรณ์ภายนอกได้สะดวก

- Rain Sensor Module – โมดูลตรวจจับน้ำฝน เชื่อมต่อที่ขา P0

- Servo Motor MG90S จำนวน 2 ตัว
- Servo1: ขา P1 (ควบคุมบานซ้ายของหลังคา)
- Servo2: ขา P2 (ควบคุมบานขวาของหลังคา)

- รางถ่าน 4 ก้อน AA (6V) – ใช้เป็นแหล่งจ่ายไฟ

- ไม้บัลซ่า (Balsa Wood) – ใช้ทำบานประตู/หลังคา เนื่องจากมีน้ำหนักเบา

💡 แนะนำ Micro:bit V2.2 + IOBIT V2.0
บอร์ด BBC micro:bit V2.2 เป็นบอร์ดไมโครคอนโทรลเลอร์ขนาดเล็กที่ออกแบบมาเพื่อการเรียนรู้ด้านวิทยาการคอมพิวเตอร์ อิเล็กทรอนิกส์ และ IoT เหมาะสำหรับผู้เริ่มต้นจนถึงระดับพัฒนาโปรเจกต์จริง
เมื่อนำมาใช้งานร่วมกับ บอร์ดขยาย IOBIT V2.0 จะช่วยให้การเชื่อมต่อเซนเซอร์ มอเตอร์ และโมดูลต่าง ๆ สะดวกยิ่งขึ้น พร้อมขยายขา I/O ให้เข้าถึงได้ง่ายขึ้น
⚙️ คุณสมบัติเด่นของ Micro:bit V2.2
- ไมโครคอนโทรลเลอร์รุ่นใหม่
- ใช้ชิป Nordic nRF52833 (ARM Cortex-M4, 64 MHz, RAM 128KB, Flash 512KB)
- รองรับ Bluetooth 5.1 และพลังงานต่ำ (BLE)
- ไมโครโฟนและลำโพงในตัว
- ตรวจจับเสียงรอบข้าง หรือสั่งงานด้วยเสียง
- มีลำโพงขนาดเล็กสำหรับเล่นเสียงเตือนหรือดนตรี
- ปุ่มกด 2 ปุ่ม (A และ B)
- ใช้สำหรับควบคุมหรือป้อนคำสั่งจากผู้ใช้
- เซนเซอร์ครบในตัว
- เซนเซอร์วัดอุณหภูมิ
- เซนเซอร์วัดความเร่ง (Accelerometer)
- เข็มทิศดิจิทัล (Magnetometer)
- จอแสดงผล LED 5×5
- ใช้แสดงตัวอักษร ไอคอน หรือกราฟิกขนาดเล็ก
- พอร์ตขา I/O 25 ขา
- รองรับสัญญาณดิจิทัล, อนาล็อก, PWM และ I2C/SPI/UART
- เชื่อมต่อผ่าน USB Type-C และ Edge Connector 25 พิน
- ใช้งานสะดวกและทนทานกว่าเวอร์ชันเดิม
⚙️ คุณสมบัติของบอร์ดขยาย IOBIT V2.0
- ออกแบบมาเฉพาะสำหรับ Micro:bit V2.x
- เสียบต่อได้โดยตรง ไม่ต้องต่อสายจัมเปอร์ยุ่งยาก
- มีระบบป้องกันการใส่กลับด้าน
- ขยายขา I/O ครบทุกพอร์ต
- มีช่องต่อแบบ Grove, Pin Header และ Screw Terminal
- รองรับทั้งสัญญาณดิจิทัลและอนาล็อก เช่น P0, P1, P2
- พอร์ตต่ออุปกรณ์เสริม
- ช่องต่อเซอร์โวมอเตอร์, มอเตอร์ DC, เซนเซอร์, จอ LCD, หรือโมดูล IoT
- มีแหล่งจ่ายไฟแยก
- รองรับไฟจาก USB หรือแบตเตอรี่ภายนอก (เช่น 5V หรือ 7–12V)
- ออกแบบเพื่อการทดลองและการเรียนรู้
- มีปุ่ม Reset, LED แสดงสถานะ, และพื้นที่ต่อวงจรเพิ่มเติม
🌟 ข้อดีของการใช้ Micro:bit V2.2 ร่วมกับ IOBIT V2.0
- ใช้งานง่ายสำหรับผู้เริ่มต้น
- เสียบแล้วใช้ได้เลย ไม่ต้องบัดกรี
- โปรแกรมด้วย MakeCode, Python หรือ C++ ได้ทันที
- ต่ออุปกรณ์เสริมได้หลากหลาย
- เซนเซอร์ตรวจจับแสง, น้ำฝน, อุณหภูมิ, เสียง, หรือมอเตอร์ต่าง ๆ
- เรียนรู้การเขียนโปรแกรมเชิงตรรกะ
- เหมาะสำหรับนักเรียน ครู และผู้สนใจ IoT
- เห็นผลลัพธ์ได้ทันทีผ่านไฟ LED หรือเสียงจากลำโพง
- รองรับการพัฒนาโปรเจกต์จริง
- สามารถต่อยอดเป็นระบบ IoT, หุ่นยนต์, ระบบตรวจจับ หรือระบบควบคุมอัตโนมัติ
- ปลอดภัยและทนทาน
- มีวงจรป้องกันแรงดันเกินและการลัดวงจร
- เหมาะกับการใช้งานในห้องเรียนหรือกิจกรรม STEM
🧠 หลักการทำงาน
โปรเจกต์นี้เป็นระบบอัตโนมัติที่ใช้ บอร์ดไมโครบิต (Micro:bit V2.2) ร่วมกับ บอร์ดขยายขา IOBIT V2.0 เพื่อควบคุมการเปิด-ปิดของ บานประตูหรือหลังคาอัตโนมัติ ตามสภาพอากาศ
- โมดูลตรวจจับฝน (Rain Sensor Module) จะตรวจจับการมีน้ำฝน โดยส่งค่า แรงดันไฟฟ้าแบบอนาล็อก (Analog) มายังขา P0 ของไมโครบิต
- เมื่อมีน้ำฝน เซนเซอร์จะให้ค่าแรงดันต่ำลง
→ ไมโครบิตตรวจพบว่าฝนตก
→ สั่งให้ เซอร์โวมอเตอร์ MG90S จำนวน 2 ตัว (ต่อที่ขา P1 และ P2)
ทำการ ปิดบานประตูหรือหลังคา อัตโนมัติ - เมื่อฝนหยุดตก เซนเซอร์จะให้ค่าแรงดันสูงขึ้น
→ ระบบสั่งให้ บานประตูเปิดกลับขึ้นมา
ระบบนี้ใช้พลังงานจาก รางถ่านขนาด AA 4 ก้อน (6V) ซึ่งเพียงพอสำหรับขับเคลื่อนไมโครบิตและเซอร์โวทั้งสองตัว
บานประตูทำจาก ไม้บัลซ่า ซึ่งมีน้ำหนักเบา เหมาะกับการหมุนด้วยเซอร์โว MG90S
⚙️ การเชื่อมต่อวงจร
| อุปกรณ์ | ขาเชื่อมต่อบน IOBIT V2.0 | รายละเอียด |
|---|---|---|
| โมดูลตรวจจับฝน | P0 | อ่านค่าอนาล็อกจากเซนเซอร์ |
| เซอร์โวมอเตอร์ MG90S (บานที่ 1) | P1 | ควบคุมการเปิด-ปิดบานที่ 1 |
| เซอร์โวมอเตอร์ MG90S (บานที่ 2) | P2 | ควบคุมการเปิด-ปิดบานที่ 2 |
| รางถ่าน AA 4 ก้อน | ช่องต่อพลังงาน | จ่ายไฟให้ระบบทั้งหมด |






💡 การเขียนโปรแกรมด้วย MakeCode
สามารถเขียนโปรแกรมได้ง่าย ๆ ด้วย Microsoft MakeCode for micro:bit
ตัวอย่างโค้ดหลักการทำงาน (บล็อก):

- เริ่มต้น กำหนดมุมเปิด-ปิดของเซอร์โว เช่น
- เปิด = 0 องศา
- ปิด = 90 องศา
- วนลูปตลอดเวลา เพื่ออ่านค่าฝนจากขา P0
- หากค่าอนาล็อกมากกว่า 10 → ถือว่าฝนตก → สั่งเซอร์โวหมุนปิด
- หากค่าต่ำกว่า 10 → ฝนหยุด → สั่งเซอร์โวเปิด
ตัวอย่างโค้ดใน MakeCode (แบบ JavaScript):
let rainValue = 0
pins.servoWritePin(AnalogPin.P1, 90)
pins.servoWritePin(AnalogPin.P2, 90)
basic.forever(function () {
rainValue = pins.analogReadPin(AnalogPin.P0)
if (rainValue > 10) {
pins.servoWritePin(AnalogPin.P1, 180)
pins.servoWritePin(AnalogPin.P2, 0)
basic.showIcon(IconNames.Umbrella)
} else {
pins.servoWritePin(AnalogPin.P1, 90)
pins.servoWritePin(AnalogPin.P2, 90)
basic.showIcon(IconNames.Happy)
}
basic.pause(100)
})
✅ ข้อดีของโปรเจกต์นี้
- ใช้งานง่ายและปลอดภัย – เหมาะกับการเรียนรู้ระบบอัตโนมัติและ IoT เบื้องต้น
- สามารถขยายต่อยอดได้ – เพิ่มเซนเซอร์แสง, เซนเซอร์อุณหภูมิ, หรือต่อเข้าระบบแจ้งเตือนผ่าน IoT
- ประหยัดพลังงาน – ใช้เพียงถ่าน AA 4 ก้อน
- เหมาะกับงานทดลองจริง – สามารถใช้กับโมเดลบ้านหรือโรงเรือนปลูกพืช
- ฝึกการประยุกต์ใช้งานไมโครบิตและเซอร์โวมอเตอร์ อย่างเป็นระบบ
🚀 แนวทางการพัฒนาต่อ
- ✅ เพิ่มเซนเซอร์แสง (LDR) เพื่อให้บานเปิดเฉพาะเมื่อมีแสงและฝนไม่ตก
- ✅ ต่อโมดูล Bluetooth หรือ Wi-Fi (ผ่าน micro:bit radio หรือ IoT board) เพื่อควบคุมผ่านมือถือ
- ✅ บันทึกข้อมูลฝนตกเป็นกราฟ เพื่อศึกษาสภาพอากาศรายวัน
- ✅ เพิ่มระบบหน่วงเวลา ป้องกันการสั่งเปิด-ปิดซ้ำเมื่อฝนหยุดชั่วคราว
- ✅ ออกแบบบานประตูด้วยวัสดุน้ำหนักเบา เช่น ไม้บัลซ่า หรือพลาสติกบาง เพื่อให้เซอร์โวทำงานได้ดีขึ้น
🔋 แหล่งจ่ายไฟและข้อควรระวัง
- ใช้รางถ่าน AA 4 ก้อน (6V) สำหรับจ่ายไฟให้ทั้งบอร์ดและเซอร์โว
- หากเซอร์โวหมุนไม่เต็มที่ ให้แยกจ่ายไฟ เซอร์โวกับไมโครบิต เพื่อป้องกันแรงดันตก
- ตรวจสอบขั้วต่อสัญญาณของ MG90S (สัญญาณ-ไฟบวก-กราวด์) ให้ถูกต้องเสมอ
🏡 สรุป
โปรเจกต์ “ไมโครบิตตรวจจับฝน ควบคุมบานประตูอัตโนมัติ”
เป็นตัวอย่างที่ดีของการใช้ไมโครบิตกับระบบ Smart Farm / Smart Home
ที่ผสมผสาน การตรวจจับสภาพอากาศ + การควบคุมมอเตอร์แบบอัตโนมัติ
ใช้งานง่าย เหมาะสำหรับทั้งนักเรียนและผู้สนใจอิเล็กทรอนิกส์