Arduino
OKUDUĞUNUZ KONU
Arduino Alev Sensörü Uygulaması
9

Arduino Alev Sensörü Uygulaması

Yazar : Murat Duran1 Ağustos 2015

Bu projemizde arduino ile alev sensörü uygulaması yapacağız.Genellikle yangın alarm sistemleri duman algılamaya dayalıdır.Ama bu sensör ile alev çıktığında da algılayabilir bir proje olacak.Ayrıca yangın söndüren robotlarda kullanılan bir sensör çeşididir.Sensörün kalitesine göre değişen özellikleri mevcuttur.Ortalama 760 nm ~ 1100 nm ışık dalga boyunda doğru çalışırlar.Yaklaşık 60° köşesindeki yangın varlığını algılayabilirler.Çalışma sıcaklığı -25 ~ +85 °C dir.

Uygulamamızda Kullanılacak Malzemeler
1- Arduino UNO
2- UV Alev Sensörü
3- Buzzer
4- Breadboard
5- Çakmak

Öncelikle arduino ile UV Alev Sensörü bağlantısını yapalım.Sensörümüzde 4 adet çıkış mevcut , (VCC +) , (GND -) , (Dijital) , (Analog) biz değerlerimizi analogtan okuyacağız.Bu yüzden dijital pini bota bırakıyoruz.

VCC + = Arduino’da 5 volt çıkışına bağlanyın
GND – = Arduino ‘da GND çıkışına bağlayın
Analog = Arduino ‘da A0 çıkışına bağlayın

Daha sonra buzzer bağlantımızı yapalım.Buzzer bağlantımızda (GND -) çıkışını arduino’da GND ye bağlayın ve buzzerin (VCC +) çıkışını dijital 10 çıkışına bağlayın.Projemiz bu kadar takıldığınız yer olursa yorum yaparak sorabilirsiniz.

const int sensorPin= 0;
const int pinSpeaker= 10;
int smoke_level;

void setup() {
Serial.begin(115200); //sets the baud rate for data transfer in bits/second
pinMode(sensorPin, INPUT);//the smoke sensor will be an input to the arduino
pinMode(pinSpeaker, OUTPUT);//the buzzer serves an output in the circuit
}

void loop() {
smoke_level= analogRead(sensorPin); //arduino reads the value from the smoke sensor
Serial.println(smoke_level);//prints just for debugging purposes, to see what values the sensor is picking up
if(smoke_level < 500){ //if smoke level is greater than 500, the buzzer will go off
playTone(300, 160); delay(150); } } void playTone(long duration, int freq) { duration *= 1000; int period = (1.0 / freq) * 1000000; long elapsed_time = 0; while (elapsed_time < duration) { digitalWrite(pinSpeaker,HIGH); delayMicroseconds(period / 2); digitalWrite(pinSpeaker, LOW); delayMicroseconds(period / 2); elapsed_time += (period); } }
SİZCE NASIL OLMUŞ?
Beğendim
51%
İlginç
18%
Eh İşte
8%
Anlamadım
12%
Kötü
4%
Berbat
8%
YAZAR HAKKINDA
Murat Duran
Murat Duran
Açık kaynak donanım ve yazılım geliştiricisiyim , mekanik ve robotik sistemler üzerinde çalışmalar yapmaktayım.Ayrıca bir start-up firması olan Proje Hocam 'ın kurucuyum.
9 YORUMLAR
  • Eda baysal
    11 Ağustos 2015 at 21:35

    alev sensörünü nerede bulurum acaba sizin market bölümünüzü gezdim ama sensörler bölümünde bulamadım.birde pahalı bişeymi bu sensör.bu yangın alarmı sistemini yapmayı düşünüyoruz arkadaşlarla

  • Murat Duran
    11 Ağustos 2015 at 21:41

    şuan market bölümüz de bu ürün mevcut değil.ileride bu ürünün satışını başlatacağız.internetten temin edebilirsiniz.gittigidiyor da mevcut sanırım

  • İbrahim KILIÇ
    11 Eylül 2015 at 12:46

    Emeğinize sağlık program çalışıyor,

  • fatih yurt
    22 Mart 2016 at 10:14

    baser sürekli ötüyo sorun neden kaynaklanıyo olabilir?

    • toprak genc
      22 Ocak 2017 at 19:25

      kodu aşağıdaki gibi değiştirince sorunsuz çalışıyor.
      —————————–

      const int sensorPin= 0;
      const int pinSpeaker= 10;
      int smoke_level;

      void setup() {
      Serial.begin(9600); //sets the baud rate for data transfer in bits/second
      pinMode(sensorPin, INPUT);//the smoke sensor will be an input to the arduino
      pinMode(pinSpeaker, OUTPUT);//the buzzer serves an output in the circuit
      }

      void loop() {
      smoke_level= analogRead(sensorPin); //arduino reads the value from the smoke sensor
      Serial.println(smoke_level);//prints just for debugging purposes, to see what values the sensor is picking up
      if(smoke_level < 35){ //if smoke level is greater than 500, the buzzer will go off
      playTone(300, 160); delay(150); } } void playTone(long duration, int freq) { duration *= 1000; int period = (1.0 / freq) * 1000000; long elapsed_time = 0; while (elapsed_time < duration) { digitalWrite(pinSpeaker,HIGH); delayMicroseconds(period / 2); digitalWrite(pinSpeaker, LOW); delayMicroseconds(period / 2); elapsed_time += (period); } }

  • Gökhan durukan
    16 Mayıs 2016 at 22:47

    Bağlantılar doğru olmasına rağmen sensörün değer okumasında problem var.

  • ramazan şimşir
    23 Mayıs 2016 at 15:42

    abi buna 7 segment display nasıl kurulur kodu nasıldır

  • bentherock
    15 Nisan 2017 at 14:33

    Ya Sunun Kpalı Seması Yok mu ?

  • Semih Tuna
    6 Mayıs 2017 at 17:25

    Merhabalar ben buzzer yerine servo motor taksam hangi kodları yazman lazım.

YORUM YAP