Arduino光敏電阻使用教學,偵測亮度控制LED開關。

arduino光敏電阻

其他控制LED相關文章:

材料

材料名稱蝦皮連結
1.【傑森創工】170孔 迷你 彩色 麵包板 六色 白黑藍黃綠紅 Arduino (顏色隨機出貨)
2.【傑森創工】20個 1/4W 10KΩ 電阻DIP 插板電阻 碳膜電阻,1%電阻 8051 Arduino
3.【傑森創工】5mm 超高亮度LED 白光 10個一組 可用於Arduino 單晶片 汽機車 無人機
4.【傑森創工】光敏電阻 光電開關 Arduino 單晶片 8051
5.【傑森創工】Arduino Uno R3 開發板 原廠晶片 *限時特惠 附USB線
6.【傑森創工】杜邦線 公對母 20cm 10條 12股銅絲含膠殼 彩色線 (整排40條4單位) Arduino 專用

光敏電阻介紹

光敏電阻:

如同字面上的意思,會隨著環境的光亮程度,改變自身的電阻值。

而光敏電阻特性是隨著光越強,阻值越小; 反之,光越弱,阻值越大。

光敏電阻特性影片:

那我們如何使用光敏電阻呢?

Arduino讀取的是電壓值,所以我們要利用分壓電路來讀取電壓。

假設在強光時,光敏電阻阻值為1kΩ。

從中間擷取到的電壓則為4.55V。

假設在弱光時,光敏電阻阻值為20kΩ。

從中間擷取到的電壓則為1.67V。

從上面電路即可實現,當光越強,電壓越高,反之光越弱,電壓越低。

電路連接

電路連接示意圖
實際電路連接

延伸閱讀: 三用電錶使用教學,檢查電路必備工具!!

arduino程式

const int P_resistor = A0; //讀取光敏電阻腳位
const int LED_pin = 2; //LED腳位
int light=0; //光敏電阻數值


void setup() {  
  pinMode(P_resistor, INPUT); 
  pinMode(LED_pin, OUTPUT); 
  Serial.begin(9600); 
}

void loop() {
  light=analogRead(P_resistor); //將讀取到的數值存入light
  Serial.println(light); //在Serial port顯示light數值
  
  //這裡以light基準為650,light基準的條件會依個別光敏電阻特性修改。
  if(light<650){
    digitalWrite(LED_pin, HIGH); //LED打開
  }
  else
    digitalWrite(LED_pin, LOW); //LED關閉
    
  delay(10);  

}

影片: 光敏電阻控制LED開關

在〈Arduino光敏電阻使用教學,偵測亮度控制LED開關。〉中有 2 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *