The GY-302 เป็นโมดูลเซนเซอร์วัดความเข้มแสงที่ใช้เซนเซอร์ BH1750 ให้การวัดความเข้มแสงเป็นหน่วยลักซ์ (lux) อย่างแม่นยำ เหมาะสำหรับการใช้งานเช่น ระบบไฟอัจฉริยะ การติดตามสภาพอากาศ และการถ่ายภาพ คำแนะนำนี้อธิบายวิธีการตั้งค่าและใช้งาน GY-302 กับ Raspberry Pi.
สิ่งที่คุณจะต้องมี
- Raspberry Pi (ทุกรุ่นที่รองรับ GPIO เช่น Pi 3, Pi 4)
- โมดูลเซนเซอร์แสง GY-302
- เบรดบอร์ดและสาย Jumper
- คอมพิวเตอร์ที่สามารถเข้า SSH ไปยัง Raspberry Pi หรือแป้นพิมพ์และจอภาพเชื่อมต่อกับ Pi
- Python ติดตั้งบน Raspberry Pi
ขั้นตอนที่ 1: การเชื่อมต่อ GY-302 กับ Raspberry Pi
โมดูล GY-302 สื่อสารกับ Raspberry Pi โดยใช้โปรโตคอล I2C.
การเชื่อมต่อ (โหมด I2C)
| GY-302 ขา | ขาของ Raspberry Pi |
|---|---|
| VCC | 3.3V (Pin 1) |
| GND | GND (Pin 6) |
| SDA | SDA (Pin 3, GPIO2) |
| SCL | SCL (Pin 5, GPIO3) |
ขั้นตอนที่ 2: เปิดใช้งานอินเทอร์เฟซ I2C บน Raspberry Pi
- เปิดเครื่องมือกำหนดค่าของ Raspberry Pi:
sudo raspi-config - ไปที่ Interface Options > I2C และเปิดใช้งาน
- รีบูต Raspberry Pi:
sudo reboot
ขั้นตอนที่ 3: ติดตั้งไลบรารีที่จำเป็น
- อัปเดต Raspberry Pi ของคุณ:
sudo apt update && sudo apt upgrade -y - ติดตั้งเครื่องมือ I2C และไลบรารี Python:
sudo apt install -y i2c-tools python3-smbus python3-pip - ตรวจสอบว่า GY-302 ถูกตรวจพบบนบัส I2C:
คุณควรเห็นที่อยู่ของอุปกรณ์ (โดยปกติคือsudo i2cdetect -y 10x23) ในผลลัพธ์.
ขั้นตอนที่ 4: การอ่านข้อมูลจาก GY-302
สคริปต์ Python ต่อไปนี้สาธิตวิธีการอ่านค่าความเข้มแสง (lux) จาก GY-302.
ตัวอย่างโค้ด Python
import smbus2
import time
# กำหนดที่อยู่ I2C และคำสั่ง
BH1750_ADDRESS = 0x23
CONTINUOUS_HIGH_RES_MODE = 0x10
# เริ่มต้นบัส I2C
bus = smbus2.SMBus(1)
def read_light():
data = bus.read_i2c_block_data(BH1750_ADDRESS, CONTINUOUS_HIGH_RES_MODE, 2)
lux = (data[0] << 8) | data[1]
return lux / 1.2
try:
while True:
light_level = read_light()
print(f"ความเข้มแสง: {light_level:.2f} lux")
time.sleep(1)
except KeyboardInterrupt:
print("ออกจากโปรแกรม...")
ขั้นตอนที่ 5: การใช้งานของ GY-302
- ระบบไฟอัจฉริยะ: ปรับระดับแสงตามความเข้มแสงโดยรอบ.
- การติดตามสภาพอากาศ: วัดความเข้มแสงเป็นส่วนหนึ่งของสถานีอากาศ.
- การถ่ายภาพ: ใช้ควบคุมการเปิดรับแสงในระบบกล้อง.
- โครงการ IoT: นำข้อมูลความเข้มแสงไปรวมเข้ากับระบบอัตโนมัติ.
การแก้ไขปัญหา
-
อุปกรณ์ไม่ถูกตรวจพบ:
- ตรวจสอบการเชื่อมต่อ SDA และ SCL.
- ตรวจสอบให้แน่ใจว่าอินเทอร์เฟซ I2C ถูกเปิดใช้งานบน Raspberry Pi.
-
การอ่านค่าไม่แม่นยำ:
- ตรวจสอบการรบกวนจากแหล่งแสงภายนอก.
- ตรวจสอบการเชื่อมต่อและทิศทางของเซนเซอร์ให้ถูกต้อง.
-
ข้อผิดพลาด I2C:
- ตรวจสอบว่าไม่มีอุปกรณ์อื่นที่ขัดแย้งบนบัส I2C.
บทสรุป
โมดูลเซนเซอร์แสง GY-302 ให้วิธีที่เรียบง่ายและมีประสิทธิภาพในการวัดความเข้มแสงด้วย Raspberry Pi โดยปฏิบัติตามคำแนะนำนี้ คุณสามารถตั้งค่าเซนเซอร์และนำไปใช้งานในหลากหลายแอปพลิเคชัน ตั้งแต่ระบบสมาร์ทโฮมไปจนถึงโครงการ IoT ลองทดลองในสถานการณ์ต่างๆ เพื่อสำรวจศักยภาพทั้งหมดของมัน!



1 ความคิดเห็น
Could you tell me where I can find instructions to use the GY-302 light sensor module with module ESP32 DEV, please?