การหรี่ไฟ หรือควบคุมแสงสว่างของหลอดไฟหรืออุปกรณ์ไฟฟ้าอื่นๆ แบบไร้สายผ่านโทรศัพท์มือถือด้วยแอพแอนดรอยด์ (App Android) เพื่อเป็นการประหยัดพลังงาน และความสะดวกในการควบคุม ซึ่งจะทำให้หลอดไฟกินไฟน้อยลง นอกจากนั้นยังช่วยทำให้ยืดอายุหลอดไฟได้ยาวนานขึ้น เพราะไม่ต้องทำงานเต็มกำลังความสว่าง 100% ตลอดเวลา
และในบทความนี้ ได้เลือกใช้แหล่งจ่ายไฟ 12 โวลท์ จากแบตเตอรี่ลิเธียม หรือ ถ่านชาร์จ 18650 จำนวน 3 ก้อน ถ่านชาร์จ 18650 ก็คืออีกหนึ่งประเภทของถ่านไฟฉาย ที่สามารถใช้งานได้ในระยะยาวโดยการชาร์จไฟซ้ำ ซึ่งตัวเลข 18650 นี้ คือขนาดมาตรฐานของถ่านชาร์จชนิดนี้ โดยมีขนาดเส้นผ่าศูนย์กลาง 18 มิลลิเมตร ความยาว 65.0 มิลลิเมตร โดยถ่านชาร์จ 18650 ผลิตจาก ลิเธียม-ไอออน (Lithium-Ion) แบบเดียวกับแบตเตอรี่ของ สมาร์ทโฟน หรือ คล้ายๆแบตเตอรี่ที่ใช้กับรถไฟฟ้า EV จึงทำให้สามาถนำไปใช้ได้ทุกๆสถานที่ แม้จะไม่มีกระแสไฟฟ้าจากไฟบ้าน
อุปกรณ์ที่ใช้
10- ถ่านชาร์จ 18650 NCR18650B จำนวน 3 ก้อน
12- เสารองแผ่นพีซีบีโลหะแบบเหลี่ยม 8 mm
14- Jumper (F2F) 20cm Female to Female
15- หลอดไฟ แอลอีดี 5 วัตต์ 12 โวลท์
การควบคุมการหรี่ไฟด้วยแอปมือถือผ่านบลูทูธมีประโยชน์หลายประการ ได้แก่:
- ความสะดวกสบาย: สามารถปรับความสว่างของไฟได้จากทุกที่ในบ้าน โดยไม่ต้องเดินไปที่สวิตช์ไฟ
- การประหยัดพลังงาน: สามารถปรับแสงไฟให้เหมาะสมกับการใช้งาน เช่น ปรับแสงน้อยลงเมื่อดูทีวีหรือปรับแสงสว่างเมื่ออ่านหนังสือ ซึ่งช่วยประหยัดพลังงานไฟฟ้า
- ความยืดหยุ่น: สามารถ ปรับแสงให้เหมาะสมกับบรรยากาศที่ต้องการ
- การใช้งานง่าย: แอปมือถือที่ใช้งานร่วมกับบลูทูธมักมีอินเตอร์เฟซที่ใช้งานง่าย และสามารถควบคุมไฟได้เพียงปลายนิ้วสัมผัส
- การรวมเข้ากับระบบสมาร์ทโฮม: สามารถรวมการควบคุมไฟเข้ากับระบบสมาร์ทโฮมอื่น ๆ เพื่อเพิ่มความสะดวกและประสิทธิภาพในการบริหารจัดการบ้าน
การควบคุมการหรี่ไฟด้วยแอปมือถือผ่านบลูทูธไม่เพียงแค่เพิ่มความสะดวกสบาย แต่ยังช่วยให้ผู้ใช้ประหยัดพลังงานและเพิ่มความปลอดภัยในบ้านอีกด้วย
หลักการทำงานของระบบ
Bluetooth HC-06 เป็นโมดูลบลูทูธที่ใช้ในการสื่อสารแบบไร้สายระหว่างอุปกรณ์อิเล็กทรอนิกส์ โดยเฉพาะอย่างยิ่งในโปรเจกต์ที่ใช้ Arduino หรือไมโครคอนโทรลเลอร์อื่น ๆ
คุณสมบัติหลัก:
- โมดูลบลูทูธ: HC-06 เป็นโมดูลที่ใช้สื่อสารผ่าน Bluetooth
- การเชื่อมต่อ: ใช้สำหรับการสื่อสารแบบอนุกรม (Serial Communication)
- ระยะการเชื่อมต่อ: ประมาณ 10 เมตร (ในสภาพแวดล้อมที่ไม่มีสิ่งกีดขวาง)
- แรงดันไฟฟ้า: 3.3V หรือ 5V
- การใช้งาน: ใช้ในการควบคุมอุปกรณ์หรือการรับส่งข้อมูลระหว่างอุปกรณ์อิเล็กทรอนิกส์กับสมาร์ทโฟน คอมพิวเตอร์ หรืออุปกรณ์อื่น ๆ ที่รองรับ Bluetooth
หลักการทำงานของโมดูลบลูทูธ HC-06 กับ Arduino ประกอบด้วยขั้นตอนต่างๆ ดังนี้:
องค์ประกอบ
- โมดูลบลูทูธ HC-06
- โมดูล HC-06 เป็นโมดูลบลูทูธแบบ slave ที่สามารถรับข้อมูลจากอุปกรณ์ที่เป็น master (เช่น สมาร์ทโฟน) และส่งข้อมูลนั้นไปยัง Arduino
- โมดูล HC-06 เป็นโมดูลบลูทูธแบบ slave ที่สามารถรับข้อมูลจากอุปกรณ์ที่เป็น master (เช่น สมาร์ทโฟน) และส่งข้อมูลนั้นไปยัง Arduino
- Arduino
- ใช้ในการรับข้อมูลจาก HC-06 และประมวลผลข้อมูลนั้นเพื่อทำการควบคุมอุปกรณ์ต่างๆ เช่น หลอดไฟ, มอเตอร์ หรืออุปกรณ์อื่นๆ
- ใช้ในการรับข้อมูลจาก HC-06 และประมวลผลข้อมูลนั้นเพื่อทำการควบคุมอุปกรณ์ต่างๆ เช่น หลอดไฟ, มอเตอร์ หรืออุปกรณ์อื่นๆ
Arduino เป็นแพลตฟอร์มอิเล็กทรอนิกส์แบบโอเพนซอร์สที่ใช้ในการสร้างและพัฒนาโปรเจกต์อิเล็กทรอนิกส์ต่าง ๆ แพลตฟอร์มนี้ประกอบด้วยฮาร์ดแวร์ (บอร์ดไมโครคอนโทรลเลอร์) และซอฟต์แวร์ (Arduino IDE) ที่ใช้ในการเขียนและอัปโหลดโค้ดลงบนบอร์ด
บอร์ด Arduino มีหลากหลายรุ่น แต่ทุกรุ่นมีความสามารถในการเชื่อมต่อกับเซนเซอร์และอุปกรณ์อื่น ๆ เพื่อรับข้อมูลและควบคุมอุปกรณ์ต่าง ๆ โดยการเขียนโปรแกรมด้วยภาษา C++
Arduino เป็นที่นิยมใช้ในงานต่าง ๆ เช่น โปรเจกต์ DIY ระบบอัตโนมัติบ้าน หุ่นยนต์ การทดลองทางวิทยาศาสตร์ และการศึกษาในด้านอิเล็กทรอนิกส์และการเขียนโปรแกรม
หลักการหรี่ไฟ
การหรี่ไฟด้วยเทคนิค Pulse Width Modulation (PWM) กับ Arduino เป็นการควบคุมความสว่างของหลอดไฟ (หรืออุปกรณ์อื่นๆ) โดยการปรับค่า Duty Cycle ของสัญญาณ PWM
การทำงานของ PWM
PWM เป็นเทคนิคที่ใช้สัญญาณดิจิตอลในการสร้างสัญญาณแบบอนาล็อก โดยการเปลี่ยนแปลงระยะเวลาที่สัญญาณอยู่ในสถานะ “สูง” (ON) และ “ต่ำ” (OFF) ในหนึ่งรอบของสัญญาณ (Period)
- Duty Cycle: คืออัตราส่วนระหว่างเวลาที่สัญญาณอยู่ในสถานะสูง (ON) กับเวลาทั้งหมดของหนึ่งรอบสัญญาณ PWM โดยคิดเป็นเปอร์เซ็นต์
- Duty Cycle 0% หมายถึงสัญญาณอยู่ในสถานะต่ำตลอดเวลา
- Duty Cycle 100% หมายถึงสัญญาณอยู่ในสถานะสูงตลอดเวลา
- Duty Cycle 50% หมายถึงสัญญาณอยู่ในสถานะสูงครึ่งหนึ่งของเวลาและต่ำครึ่งหนึ่งของเวลา
การสร้าง Arduino หรี่ไฟ ผ่านบลูทูธ ด้วย แอปมือถือ
1.ประกอบอุปกรณ์และเชื่อมต่อวงจร
- ยึด เสารองแผ่นพีซีบีโลหะแบบเหลี่ยม 8 mm เข้ากับ แผ่นอะคริลิคใส
- ยึด Arduino UNO R3 เข้ากับ เสารองแผ่นพีซีบีโลหะแบบเหลี่ยม 8 mm
- เสียบ Sensor Shield เข้ากับ บอร์ด Arduino UNO R3
เชื่อมต่อรางถ่าน 18650 + สวิตช์ + แจ๊กขั้วถ่าน เข้ากับ 12VDC input ของ บอร์ด Arduino UNO R3
- ใช้กาวร้อน ยึด รางถ่าน 18650 3 ก้อน เข้ากับ แผ่นอะคริลิคใส
- เชื่อมต่อวงจร สวิตช์ + แจ๊กขั้วถ่าน เข้ากับ 12VDC input ของ บอร์ด Arduino UNO R3
- ที่รางถ่าน ใส่ถ่าน 18650 จำนวน 3 ก้อน แล้วทดสอบเปิดสวิตช์ ต้องมีไฟเข้าที่บอร์ด Arduino UNO
- ใช้ Jumper (F2F) เชื่อมต่อสาย Sensor Shield กับ Bluetooth HC-06
- เมื่อเปิดการทำงาน ที่ Bluetooth HC-06 ต้องมีไฟ LED สีแดง กระพริบ
- เชื่อมต่อทรานซิสเตอร์และหลอดไฟ
ทดสอบ- การหรีไฟ
ติดตั้งโปรแกรม Arduino IDE และทดสอบตามลิงค์ด้านล่าง
เปิดโปรแกรม Arduino IDE เขียนโค้ดและอัพโหลดโค้ดดังนี้
int PWM_Pin = 9;
void setup() {
pinMode(PWM_Pin, OUTPUT);
}
void loop() {
analogWrite(PWM_Pin, 0);
delay(1000);
analogWrite(PWM_Pin, 64);
delay(1000);
analogWrite(PWM_Pin, 127);
delay(1000);
analogWrite(PWM_Pin, 191);
delay(1000);
analogWrite(PWM_Pin, 255);
delay(1000);
}
คลิป- ทดสอบ – การหรีไฟ
อัพโหลดโค้ด Arduino หรี่ไฟ ผ่านบลูทูธ ด้วย แอปมือถือ
เปิดโปรแกรม Arduino IDE เขียนโค้ดและอัพโหลดโค้ดดังนี้
#include <SoftwareSerial.h>
SoftwareSerial mySerial(4, 5); // TX, RX
char data = 0;
int PWM_Pin = 9;
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
pinMode(PWM_Pin, OUTPUT);
}
void loop() {
if (mySerial.available() > 0) {
data = mySerial.read();
Serial.print(data);
Serial.print("\n");
if (data == '0')
analogWrite(PWM_Pin, 0);
if (data == '1')
analogWrite(PWM_Pin, 28);
if (data == '2')
analogWrite(PWM_Pin, 56);
if (data == '3')
analogWrite(PWM_Pin, 84);
if (data == '4')
analogWrite(PWM_Pin, 112);
if (data == '5')
analogWrite(PWM_Pin, 140);
if (data == '6')
analogWrite(PWM_Pin, 168);
if (data == '7')
analogWrite(PWM_Pin, 196);
if (data == '8')
analogWrite(PWM_Pin, 224);
if (data == '9')
analogWrite(PWM_Pin, 253);
}
}
https://lungmaker.com/code/arduino-dimmer-v2014.ino
เปิดการเชื่อมต่อ Bluetooth
ที่สมาร์ทโฟน ระบบปฏิบัติการ แอนดรอยด์ (Android) เปิดการเชื่อมต่อ Bluetooth ควรเห็นอุปกรณ์ที่สามารถเชื่อมต่อชื่อ HC-06
เลือกจับคู่กับ HC-06 ใส่ PIN รหัสผ่านเป็น 1234 -> จับคู่
แสดงการจับคู่สำเร็จ
ติดตั้งแอพชื่อ BlueDuino (Arduino Joystick)
ใช้สมาร์ทโฟนดาวน์ ระบบปฏิบัติการแอนดรอยด์ (Android) ดาวน์โหลดและติดตั้งแอพชื่อ BlueDuino (Arduino Joystick) จาก Google Play Store
เลือกที่ Connection to Device
เลือก HC-06
เลือก Dimmer Light
เลือกไปที่รูปเฟือง ขวามือด้านบน
เลือกไปที่ Dimmer Light Values
แก้ Value 1024 เป็น 9
เลือก Save Change
จะเห็น MAX Value เป็น เลข 9 แสดงว่า แอปเราพร้อมใช้งานแล้ว