光敏電阻

用光敏電阻來感測周遭的光線強弱。

光敏電阻 (Photocell) 的電阻值,會隨著周遭光線的強弱而改變。光線強時,電阻值小;光線弱時,電阻值大。因電阻值的改變,Arduino 感受到的電壓就不同。

以下的影片,搭配一個 LED,來顯示光敏電阻所感測到的光線強弱。當手遮住光敏電阻時,LED 隨著變暗。當手沒有摭住光敏電阻時,LED 隨著變亮。

序列埠監視器所顯示的值,為 Arduino 感受到的電壓值改變 (0-1023)。光線暗時,電壓值變小。光線亮時,電壓值變大。

材料和接線圖

  • Arduino Uno x1
  • 光敏電阻 x1 (Photo cell , 5MM ,亮阻8-20KΩ ,暗阻1MΩ)
  • LED x1
  • 電阻 220 歐姆 x1 (接 LED)
  • 電阻 4.7k 歐姆 x1 (接 光敏電阻)
  • 電線數條

光敏電阻一腳接 Arduino 5V,另一腳接 4.7k 歐姆電阻。電阻另一頭接 Arduino GND。

LED 長腳接 Arduino pin 9,短腳接 220歐姆電阻,電阻另一頭接 Arduino GND。

程式

複製貼上下列程式於 Arduino IDE中,點擊 ”工具”,確認開發板是 Arduino/Genuino Uno, 序列埠 Port COM已接上。再點擊 ”上傳”,大功告成。

創客點子

  • 把光敏電阻當作 LED 的開關。當周圍光線暗到一個程度時,LED亮起來;反之,LED 關閉。
  • 把本練習的LED 換成蜂鳴器 (Buzzer)。蜂鳴器響聲頻率的高低,依照周遭光線亮暗而改變。