ควบคุม Arduino ไร้สายผ่านมือถือด้วยโมดูล Bluetooth (Bluno Bee) ง่ายนิดเดียว!

Arduino Bluetooth Control Project
ควบคุมหลอด LED ผ่านสมาร์ทโฟนด้วยบอร์ด Arduino และโมดูลบลูทูธ Bluno Bee

สวัสดีชาว Maker ทุกคนครับ! จะเกิดอะไรขึ้นถ้าคุณสามารถสั่งงาน Arduino UNO ของคุณได้โดยตรงจากสมาร์ทโฟนแบบไร้สาย ไม่ต้องต่อสายเกะกะ ไม่ต้องง้ออินเทอร์เน็ต แค่ใช้ "Bluetooth" ก็พอ?

ในบทความนี้ เราจะพาคุณเรียนรู้วิธีเชื่อมต่อ Arduino เข้ากับสมาร์ทโฟนโดยใช้โมดูล Bluetooth Low Energy (BLE) ครับ เมื่อทำตามจบแล้ว คุณจะสามารถเปิด-ปิดหลอด LED แบบไร้สายผ่านแอปพลิเคชันบนมือถือได้เลย! นี่คือก้าวแรกที่ยอดเยี่ยมมากๆ สู่โลกของ IoT (Internet of Things) แบบง่ายๆ เลยครับ

สำหรับใครที่เพิ่งเข้ามา บทความนี้ดัดแปลงมาจากบทเรียนที่ 22 ของซีรีส์ Arduino for Beginners โดยคุณ Lucas Fernando ครับ พร้อมแล้วไปลุยกันเลย!

วิดีโอสาธิตการทำโปรเจกต์ (Video Tutorial) 🎬

อุปกรณ์ที่ต้องใช้ (Components Required) 🛠️

  • บอร์ด Arduino UNO
  • DFRobot I/O expansion shield (ชิลด์ขยายขา)
  • โมดูลบลูทูธ DFRobot Bluno Bee B
  • หลอด LED สีแดง 5 mm
  • สายจัมเปอร์ (Jumper wires)

💡 Maker's Tip: โปรเจกต์นี้ใช้อุปกรณ์ชุด MindPlus Arduino Coding Kit จาก DFRobot ซึ่งออกแบบมาให้มือใหม่ต่อเล่นได้ง่ายมากๆ ครับ

หากเพื่อนๆ คนไหนกำลังมองหา บอร์ด Arduino UNO, โมดูล Bluetooth (BLE), เซนเซอร์ต่างๆ หรือ Shield ขยายขา เพื่อนำไปต่อยอดโปรเจกต์ IoT แวะมาเลือกช้อปสินค้าคุณภาพพร้อมส่งได้ที่ Globalbyte เลยครับ! ของครบ จบในที่เดียว

ทำความรู้จักโมดูล Bluno Bee 🐝

เพื่อเพิ่มฟังก์ชัน Bluetooth ให้กับ Arduino เราจะใช้โมดูล Bluno Bee ซึ่งเป็นโมดูล BLE ที่ออกแบบมาให้ใช้งานร่วมกับบอร์ด Arduino ได้อย่างลื่นไหล

ข้อดีที่สุดของมันคือ "ความง่าย" ครับ! มันสื่อสารกับ Arduino ผ่านระบบ Serial Communication ธรรมดาๆ เลย แปลว่าคุณไม่ต้องไปปวดหัวกับโปรโตคอลบลูทูธที่ซับซ้อน แค่ส่งและรับข้อมูลผ่าน Serial (RX/TX) เหมือนปกติเลยครับ ทำให้มันเป็นมิตรกับมือใหม่สุดๆ

นอกจากนี้ Bluno Bee ยังรองรับ AT commands เผื่อใครอยากตั้งชื่ออุปกรณ์หรือเปลี่ยนค่า Baud rate แต่สำหรับโปรเจกต์นี้ เราใช้ค่า Default ของโรงงานได้เลยครับ (ไม่ต้องตั้งค่า AT command ใดๆ)

Step 1: การต่อวงจรฮาร์ดแวร์ (Hardware Setup) 🔌

วันนี้เราจะมาเชื่อมต่อมือถือเข้ากับ Arduino และควบคุม LED กันครับ:

  1. เริ่มจากเสียบแผ่น I/O expansion shield ลงไปบนบอร์ด Arduino
  2. จากนั้นนำโมดูลบลูทูธ Bluno Bee เสียบลงในช่องซ็อกเก็ตบน Shield ให้เรียบร้อย
  3. ต่อหลอด LED สีแดง เข้ากับขา Digital Pin 2 ครับ
DFRobot Components
อุปกรณ์ทั้งหมดในชุด MindPlus Arduino Coding Kit
Components layout Connecting Shield
สวม I/O expansion shield ทับลงบนบอร์ด Arduino UNO
Connecting Bluno Bee
เสียบโมดูล Bluno Bee เข้ากับช่องเสียบของ Shield
Connecting LED
ต่อหลอด LED เข้าที่พอร์ต Digital Pin 2

Step 2: อัปโหลดโค้ด Arduino 💻

เมื่อต่อสายเสร็จแล้ว ให้เข้าไปโหลดไฟล์โค้ดที่ชื่อว่า control-led จาก GitHub repository ของโปรเจกต์นี้ครับ

เปิดไฟล์ด้วยโปรแกรม Arduino IDE แล้วอัปโหลดลงบอร์ดได้เลย โค้ดตัวนี้ทำงานง่ายๆ คือมันจะคอย "รอฟัง" ตัวอักษรที่ถูกส่งมาผ่าน Bluetooth Serial:

  • เมื่อได้รับตัวอักษร "A" บอร์ดจะสั่งเปิดไฟ LED
  • เมื่อได้รับตัวอักษร "B" บอร์ดจะสั่งปิดไฟ LED
Arduino Code snippet 1 Arduino Code snippet 2 Arduino Code snippet 3

Step 3: การตั้งค่าแอปบนมือถือ (Mobile App Setup) 📱

ในโฟลเดอร์ GitHub ที่โหลดมา คุณจะเจอไฟล์ 2 ตัวคือ ControlLED.apk และ ControlLED.aia

  • ไฟล์ .apk คือแอปพลิเคชัน Android ที่พร้อมให้ติดตั้งเลย
  • ไฟล์ .aia คือไฟล์โปรเจกต์ของ MIT App Inventor เผื่อใครอยากเอาไปปรับแต่งหรือแก้ UI ของแอปเองครับ

สำหรับโปรเจกต์นี้เราจะใช้ไฟล์ APK กันตรงๆ เลยครับ โอนไฟล์เข้ามือถือ Android แล้วกดติดตั้ง (อย่าลืมเปิดตั้งค่าให้ติดตั้งจากแหล่งที่ไม่รู้จักหรือ Unknown sources ด้วยนะ) เมื่อติดตั้งเสร็จ ให้เปิดแอปขึ้นมา และอย่าลืม เปิด Bluetooth และ Location (GPS) บนมือถือด้วย เพราะระบบสแกน BLE จำเป็นต้องใช้สิทธิ์เหล่านี้ครับ

MIT App Inventor Design
หน้าต่างออกแบบ UI ของแอปพลิเคชันบน MIT App Inventor
MIT App Inventor Blocks MIT App Inventor Blocks MIT App Inventor Blocks
การเขียนโปรแกรมแบบบล็อก (Block-based programming) บน MIT App Inventor

Step 4: ทดสอบระบบ (Testing the System) 🎯

ในแอปพลิเคชัน ให้กดปุ่ม Start Scan แอปจะทำการค้นหาอุปกรณ์ Bluetooth Low Energy แถวๆ นั้น หลังจากรอไม่กี่วินาที คุณจะเห็นรายชื่ออุปกรณ์โผล่ขึ้นมา

ให้มองหาอุปกรณ์ที่ชื่อว่า "BLE-Link" (นี่คือชื่อของโมดูล Bluno Bee ครับ) ให้กดเชื่อมต่อเลย ถ้าสำเร็จ สถานะในแอปจะเปลี่ยนเป็น "Connected" และคุณจะเห็นไฟสถานะ (Indicator LED) บนตัวโมดูลบลูทูธสว่างขึ้นมา

ทีนี้มาถึงจุดสนุกแล้ว! กดปุ่ม Turn On LED บนแอป หลอด LED ที่บอร์ดจะติดสว่าง และพอกด Turn Off LED หลอดก็จะดับลงครับ! 🎉

หลักการง่ายๆ คือแอปส่ง "ตัวอักษร 1 ตัว" ผ่านบลูทูธ และ Arduino ก็รับค่ามาอ่านผ่านช่องทาง Serial แล้วสั่งงาน LED แค่นั้นเองครับ ถ้าคุณกด Disconnect ออกจากแอป ปุ่มคำสั่งก็จะไม่ทำงานอีกต่อไป เพราะสัญญาณถูกตัดแล้วนั่นเอง

App Scan Screen
กด Start Scan และเลือกอุปกรณ์ BLE-Link
App Connected
เมื่อเชื่อมต่อสำเร็จจะปรากฏปุ่มควบคุม LED
Turn ON LED
กดปุ่ม Turn On LED ไฟจะติด
Turn OFF LED
กดปุ่ม Turn Off LED ไฟจะดับ
Bluetooth Disconnected

ไปต่อทางไหนดี? (What's Next?) 🚀

ตอนนี้คุณมีระบบควบคุมบลูทูธพื้นฐานแล้ว คุณสามารถนำโปรเจกต์นี้ไปต่อยอดได้สบายๆ เลยครับ แทนที่จะส่งคำสั่งจากมือถือไป Arduino อย่างเดียว ลองเปลี่ยนเป็นการ ส่งข้อมูลเซนเซอร์ จากบอร์ดกลับมาโชว์บนแอปมือถือดูสิครับ! นี่คือรากฐานของโปรเจกต์ IoT ในชีวิตจริงเลยนะ หากใครทำสำเร็จแล้วอย่าลืมนำมาแชร์กันนะครับ!

หากคุณชื่นชอบการทำโปรเจกต์สไตล์นี้ สามารถลองดู บทเรียนการใช้เซนเซอร์ DHT11 ติดตามสภาพอากาศ เพิ่มเติมได้เลยครับ

อ้างอิงและเรียบเรียงข้อมูลจาก: Globalbyteshop Blog

แหล่งที่มาบทความต้นฉบับ: Hackster.io - Bluno Bee Bluetooth Module With Arduino - Lesson #22

ดาวน์โหลดโค้ดโปรเจกต์ (GitHub): Arduino for beginners course repository

*คำเตือน: เนื้อหานี้เป็นการสรุปและเรียบเรียงจากบทความเทคโนโลยีต้นฉบับภาษาอังกฤษ ข้อมูลฉบับภาษาไทยอาจมีความคลาดเคลื่อนบางประการจากการตีความหรือย่อเนื้อหา ผู้ที่สนใจพัฒนาแอปพลิเคชันบนสมาร์ทโฟนและเชื่อมต่อบอร์ดไมโครคอนโทรลเลอร์ ควรศึกษารูปแบบการรับส่งข้อมูลผ่าน Serial เพิ่มเติม สามารถตรวจสอบโค้ดและข้อมูลต้นฉบับแบบเต็มได้ที่ เว็บไซต์ต้นฉบับ ก่อนลงมือทำโปรเจกต์

 

แท็ก


Blog posts

เข้าสู่ระบบ

ลืมรหัสผ่านใช่ไหม?

ยังไม่มีบัญชีใช่ไหม?
สร้างบัญชี