最近公司有一款產品正在開發(fā),由於產品要燒機測試,測試滿載功能。
在燒機時如果有產品過載,必須要發(fā)出警報功能知會檢驗人員。
原本可以在每個燒機制具上增加幾個電子元件來做,但是成本比較高
最後想到,由於每個燒機治具都有一個LED燈(電源指示燈)
那何不如採用光敏電阻來做一個對應的治具哩!?!?
由於我還是個Arduino的新手...原本還在苦惱程式碼該怎麼寫
結果進到Cooper Maa的教學網誌直接就看到一篇剛剛好~不多也不少的教學範例
我直接在警示迴路並聯(lián)了一顆小蜂鳴器,在光敏電阻迴路多串了幾顆光敏電阻來對應一次要燒機多個產品。
迴路如下
然後將下列機碼寫入Arduino
int photocellPin = 2; // 光敏電阻 (photocell) 接在 anallog pin 2
int photocellVal = 0; // photocell variable
int minLight = 200; // 最小光線門檻值(這個要看光敏電阻讀取的阻值去設定)
int ledPin = 9;
int ledState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// 讀取光敏電阻並輸出到 Serial Port
photocellVal = analogRead(photocellPin);
Serial.println(photocellVal);
// 光線不足時打開 LED
if (photocellVal < minLight && ledState == 0) {
digitalWrite(ledPin, HIGH); // turn on LED
ledState = 1;
}
// 光線充足時關掉 LED
if (photocellVal > minLight && ledState == 1) {
digitalWrite(ledPin, LOW); // turn off LED
ledState = 0;
}
// 警示燈 & 蜂鳴器叫的頻率(每秒一聲)
delay(1000);
}
寫入上述的機碼後就完成了
最後要驗證一下光敏電阻的阻值(讀取值)
要打開Serial Monitor去看值~(預設200,剛好可以符合我手上光敏電阻的需求)
最後就~~OK啦!
只要燒機治具沒有通電~治具上的LED沒亮,就會用LED(燈光)以及蜂鳴器(聲音)來示警。
上面這影片只是測試用滴,沒接上蜂鳴器,動作都一樣,接上蜂鳴器後就會跟著LED燈叫
|