2014年5月10日 星期六
[Arduino] 簡易的門窗警報裝置 – Simple Alarm Gadget
我們可以利用蜂鳴器(簡介看這裡),以及兩顆 LED,製作出一套簡易的門窗警報裝置,可以達到類似汽車警報器的效果。
先來看一下整體的運作效果:
當兩條線分開的時候,蜂鳴器會發出高低聲響同時紅綠 LED 會不停閃動,直到兩條線貼合回為止,LED 燈會呈現綠燈。可以把兩條線分別裝置到門與門框上,當門打開時會就發出警報,當作簡單的防盜裝置。
Step 1. 準備材料:
蜂鳴器 x1
紅色 LED x1
綠色 LED x1
220 ohm 電阻 x3
Step 2. 接線:
最右側的電路,兩端相接的時候會是 5V,分開的時候會時 0V,是最基本的開關裝置。
Step 3. Sketch & 解說:
//設定開關 pin、蜂鳴器 pin 、紅綠 LED pin
const int switchPin = 2;
const int piezoPin = 4;
const int redLed = 7;
const int greenLed = 8;
// 設定 pinMode,只有開關裝置為 INPUT
void setup(){
pinMode(switchPin,INPUT);
pinMode(piezoPin,OUTPUT);
pinMode(redLed,OUTPUT);
pinMode(greenLed,OUTPUT);
}
// 設計一個警保裝置,當右側的開關連接時,綠色 LED 會發光
// 表示目前為安全狀態
// 當右側段開時,蜂鳴器會發出警報聲,同時紅綠 LED 燈會不同交錯發光
void loop(){
// 讀取開關狀態開 = 0V/關=5V
int switchState = digitalRead(switchPin);
// 當兩線接在一起時,開關狀態 = 5V (HIGH),使綠色 LED 燈亮起
if (switchState == HIGH){
digitalWrite(greenLed,HIGH);
}
// 當兩線分開時,開關狀態 0V (LOW),LED 閃爍+蜂鳴器發聲
else if (switchState == LOW){
tone(piezoPin,650,230);
delay(230);
noTone(piezoPin);
blinkLed(); // 呼叫閃爍 LED function
tone(piezoPin,1550,100);
delay(100);
noTone(piezoPin);
}
}
// 紅綠 LED 交錯閃爍的 function
void blinkLed(){
digitalWrite(greenLed,LOW);
digitalWrite(redLed,HIGH);
delay(100);
digitalWrite(greenLed,HIGH);
digitalWrite(redLed,LOW);
delay(100);
}
That’s it, have fun!
訂閱:
張貼留言 (Atom)
如果蜂鳴器聲音太小要麼改善?
回覆刪除