實驗說明:
- 火焰傳感器(即紅外接收三極管)是機器人專門用來搜尋火源的傳感器,本傳感器對火焰特別靈敏。
- 火焰傳感器利用紅外線對火焰非常敏感的特點,使用特製的紅外線接收管來檢測火焰,然後把火焰的亮度轉化為高低變化的電平信號,輸入到中央處理器,中央處理器根據信號的變化做出相應的程式處理。
材料:
- Arduino Uno R3
- USB 傳輸線
- 火焰感測器
- 蜂鳴器
- 麵包板
- 麵包板跳線
接線說明:
程式:
int Buzzer = 13;
int isFlamePin = 7;
int isFlame = HIGH;
void setup() {
pinMode(Buzzer, OUTPUT);
pinMode(isFlamePin, INPUT);
Serial.begin(9600);
}
void loop() {
isFlame = digitalRead(isFlamePin);
if (isFlame== LOW)
{
Serial.println("FLAME, FLAME, FLAME");
digitalWrite(Buzzer, HIGH);
}
else
{
Serial.println("no flame");
digitalWrite(Buzzer, LOW);
}
}
程式說明:
- 第 1 列定義數位接口13Pin,連接蜂鳴器。
- 第 2 列定義數位接口7Pin ,連接火焰感測器DO。
- 第 3 列暫存來自傳感器的變量數值。
- 第 6 列定義數位接口13Pin為輸出。
- 第 7 列定義數位接口7Pin為輸入。
- 第 8 列設置鮑率每秒9600。
- 第 13 列讀取火焰傳感器的數位訊號值並賦值給isFlame。
- 第 14~23當檢測到火源訊號時,蜂鳴器發報警;否則保持蜂鳴器不工作
檢測到火源訊號時,蜂鳴器發報警聲響;否則保持蜂鳴器不工作