大家好我是阿俊 這次要講到 利用光敏電阻 來控制開關 之前新手實作(光控開關)有講過利用光敏電阻的Data傳入Arduino 讓他依程式設定 來達成LED開關 但僅限於小電壓的LED 假如我要用12V的裝置 Arduino 肯定沒辦法讓裝置驅動 畢竟輸出電壓 最大只有5V 如果要實現用Arduino 驅動大電源裝置時 只能使用 外接電源和繼電器 來達成 先來實例影片吧~
大家有沒有看到影片中的燈光閃爍 聲音聽起來很像 摩托車打方向燈的聲音 沒錯 那就是繼電器 在市面上 有許多種規格 其功能 就是 利用小的電壓來驅動大的電壓 這次我要使用光敏電阻和繼電器的電路來達成所謂的光感開關 在現今的應用非常廣如 汽車進隧道自動亮大燈 路燈天色暗自動開啟等..許多種應用 先來看這次的實作影片吧~~~
準備材料
5V SPDT 繼電器 x1
1.2K歐姆 1K歐姆 各一個
1N4004 x1 整流二極體 (假設沒1N4004 可以用大一些規格來使用如1N4007)
2n2222 NPN 電晶體 x 1
光敏電阻 x1
12V變壓器OUTPUT 1A以上 x1
12v 光源裝置 x1
麵包板 x1
數條連接線 xN
Arduino x1
官方IDE編程軟體 1.X.X 以上版本
電路圖
這次的電路複雜在於 繼電器和電晶體和二極體的接法 繼電器沒差錯的話 翻到背面左邊2腳 右邊3腳 圖上對應好的話 就不會接錯 腳位(1.2)為繼電器的線圈端 腳位3為外接電源接入點 腳位5為裝置的正電端 接下來是整流二極體 注意整流二極體具有方向性(正->負) 有標籤的對應Arduino 5V 電源 再來是NPN電晶體 由左至右為C B E 端 這裡應該不太容易接錯 在B(基極)上記得串上1K歐姆電阻連接Arduino 腳位3 剩下的看圖連接應該不會出問題
程式碼
// Arduino 延伸實作 光感開關 by~ 阿俊
int Photosensitive=A1; // 光敏電阻接到模擬引腳A1
int LightData=0; // 設定光感初始值為0
int Light=3; // 定義Light腳位為3
void setup()
{
pinMode(Light,OUTPUT); //定義Light為輸出腳
Serial.begin(9600); // 設定監控視窗傳輸速度
}
void loop()
{
LightData= analogRead(Photosensitive);//光感值來源為光敏電阻所測的值
Serial.println(LightData); // 將所測出來的值顯示在監控視窗
delay(100); // 延遲0.1秒
if(LightData<25) // 假設光感值<25 執行下列程序(這邊依照監控視窗配合依照你的環境周遭來改變你的理想數值)
digitalWrite(Light, 1); // ON
else // 條件為上述式子結果為相反 則執行下列程序
digitalWrite(Light, 0); // OFF
}
結論 在這是實作中 充分了解到 同樣的程式 但不同電路 又變出不同的把戲 了解到繼電器的運用 當然 家電 像日光燈 電風扇 等 110V以上 也可以 這樣來使用 但是 注意 再連接電路實要格外的小心 確保不會短路 老實說我原本這次實驗要用控制110V的日光燈 但是我怕危險 我改用12V的小燈 哈~我是阿俊~~~這次的實做到此結束 謝謝收看~~



