一、什麼是BH1750光照感測器
BH1750是一種數字式光照度感測器,可以測量環境中的光照強度。它可以輸出數字信號,使得它的使用變得更加方便。它主要是由光敏晶體管和運放電路構成,它可以檢測到光的強度,然後將其轉化為電信號輸出。
二、BH1750光照感測器的工作原理
BH1750是利用光電元件(感測器)產生電荷,通過運放電路將電荷放大,經過A/D轉換得到數字處理,輸出信號表示光線的強度。感測器中的電阻量的變化是由光照強度引起的,在一個恆定電流下,輸出的電壓也會隨著光照強度的變化而變化。因此,我們可以通過檢測輸出的電壓來測量光照強度。
三、BH1750光照感測器的特點
BH1750感測器是數字光照度感測器,具有以下特點:
- 數字輸出:感測器輸出的電信號是數字信號,省去了進行模擬信號轉換的麻煩。
- 高精度:BH1750在整個測量範圍內的精度都非常高,可以達到1 lx的解析度。
- 低功耗:BH1750感測器具有非常低的功耗,一般為1.2μA,這使得它非常適合電池供電的場景。
- 可編程:BH1750感測器允許我們在測量範圍和測量速率方面進行編程,以滿足需要。
四、BH1750光照感測器的應用示例
以下是BH1750感測器的應用示例,通過Arduino UNO測量環境中的光照強度:
#include <Wire.h> const int addr = 0x23; int val = 0; void setup() { Wire.begin(); Serial.begin(9600); } void loop() { Wire.beginTransmission(addr); Wire.write(0x10); Wire.endTransmission(); delay(200); Wire.requestFrom(addr, 2); if (2 <= Wire.available()) { val = Wire.read(); val <<= 8; val |= Wire.read(); val /= 1.2; } Serial.print("Light:"); Serial.print(val); Serial.println("[lx]"); }
五、BH1750光照感測器的接線方法
BH1750感測器有3個引腳:
- Vcc:供電電壓,一般為3~5V。
- GND:接地。
- SCL/SDA:I2C高速串列介麵線。
接線方法如下:
- Vcc接Arduino的5V電源口。
- GND接Arduino的GND引腳。
- SCL接Arduino的A5(SCL)引腳。
- SDA接Arduino的A4(SDA)引腳。
六、總結
BH1750是一種數字式光照度感測器,可以測量環境中的光照強度。它具有數字輸出、高精度、低功耗和可編程等特點。在實際應用中,我們可以通過使用BH1750感測器,結合Arduino等硬體平台,開發出各種有用的項目。
原創文章,作者:IAZZV,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/371422.html