1. Anasayfa
  2. Arduino

Arduino Potansiyometre Kullanımı

Arduino Potansiyometre Kullanımı
Arduino Potansiyometre Kullanımı
0

Bu yazımızda Arduino Potansiyometre kullanımı ele alacaz ve potansiyometre ne olduğunu inceleyecez. Lafı uzatmadan yazımıza başlayalım.

Potansiyometre Nedir ?

Arduino potansiyometre kullanımı yazımıza başlamadan öncelikle potansiyometre kompanentini açıklayalım. Potansiyometre, bir diğer ismi de reosta olan bu devre elemanı, dışarıdan yapılan fiziki müdahale sonucunda değeri değişen dirençlere potansiyometre ismi verilmektedir. Potansiyometreler sayesinde devrelere verilen akımın sınırlanması yada bölünerek verilmesi sağlanmaktadır.

potansiyometre min
Potansiyometre

Potansiyometreler oldukça sık kullanılan devre elemanlarıdır ve oldukça çok çeşide sahiptirler. Arduino ile ilgili projelerimizde ise genellikle lineer potansiyometre ve sürgülü (slider) potansiyometreler kullanılmaktadır.

Surgulu Potansiyometre
Sürgülü Potansiyometre

Potansiyometreler direnç yapısı ile çalışır ve başlangıç noktasından bitiş noktasına kadar farklı dirençlik özellikler gösterirler. Örneğin bağlamış olduğunuz bir ledin potansiyometre sayesinde ışık seviyesini düşürebilir yada alçaltabilirsiniz.

direnc min
Direnç

Potansiyometreler Arduino ile yapılan bir çok projede yer almaktadır. Ekranın parlaklığını ayarlama, ledin parlaklığını ayarlama, sürgülü potansiyometre ile araç pedalı yapımı vb. bir çok projede kullanılmaktadır ve oldukça uygun fiyatlıdır.

Potansiyometre sdf
Potansiyometre

Potansiyometreler hakkında fikir sahibi olduğumuza göre şimdi ise potansiyometreler ile ilgili projelere başlayalım.

Proje 1

Bu projemizde potansiyometre üzerinden gelen değerleri serial ekranda görecez ve bu değerlerin potansiyometrenin üzerinde yapılan fiziki hareketlerle nasıl değiştiğini saptayacaz. Lafı uzatmadan malzemeleri listeleyelim.

Bu proje için gerekli  malzemeleri listelediğimize göre şimdi ise projemizin kod satırlarını oluşturalım.

//omerfarukyildiz.com
int pmetre=A1; //Potansiyometrenin Anolog 1 pininde oldugunu tanımlıyoruz. 
int deger=0; //Deger adında bir degişken tanımlıyoruz ve bu degeri 0 sayısına eşitliyoruz. 
void setup() {
  Serial.begin(9600); //Seri haberleşme Aktif hale getiriyoruz. 
}
void loop() {
  deger = analogRead(pmetre); //Deger adlı degişkeni potansiyometreden gelen degerlere tanımlıyoruz.
  Serial.print("Potansiyometreden gelen deger: "); // Serial ekrana Potansiyometreden gelen deger: yazısını yazdırıyoruz. 
  Serial.println(deger); //Deger degişkenini serial ekrana yazdırıyoruz. 
  delay(100); //Yukarıdaki işlemleri 100 milisaniyede bir tekrar etmesini sağlıyoruz. 
}

Bu projede analog pin1 den gelen potansiyometre değerini tanımladık ve ardından deger adında bir değişken tanımladık. Bunun ardından ise serial haberleşmeyi aktif hale getirdik. Bunun ardından tanımladığımız pini deger değişkenine tanımladık ve bunları serial ekrana yazdırdık. Bu işlemler ise 100 milisaniyede bir şekilde sürekli olarak tekrar edecektedir. Şimdi ise devre şemasını oluşturalım.

Proje 1 Semasi
Proje 1 Şeması

Bu şekilde projemizin şemasını tamamlamanız halinde ise potansiyometreden gelen degerler serial ekrana 100 milisaniyede bir şekilde düşecektir. Ekran çıktısı şü şekilde olur.

Ekran Alintisi
Proje 1 Ekran Alıntısı

Şimdi ise ikinci projemize geçelim.

Proje 2

Bu projemizde ise potansiyometrede yapacağımız fiziki degişliklerle birlikte ledlerin yanmasını sağlayan devre yapacaz. Lafı uzatamadan malzemelerin listesini listeleyelim.

Malzemeleri listeledigimize göre şimdi ise kod satırlarını oluşturalım.

//omerfarukyildiz.com
int pmetre=A1; //Potansiyometrenin Anolog 1 pininde oldugunu tanımlıyoruz. 
int deger=0; //Deger adında bir degişken tanımlıyoruz ve bu degeri 0 sayısına eşitliyoruz. 
int kirmizi=8;
int sari=9;
int yesil=10;
void setup() {
  Serial.begin(9600); //Seri haberleşme Aktif hale getiriyoruz. 
}
void loop() {
  deger = analogRead(pmetre); //Deger adlı degişkeni potansiyometreden gelen degerlere tanımlıyoruz.
  Serial.print("Potansiyometreden gelen deger: "); // Serial ekrana Potansiyometreden gelen deger: yazısını yazdırıyoruz. 
  Serial.println(deger); //Deger degişkenini serial ekrana yazdırıyoruz. 
if(deger<255){  //Deger deger 255 sayısından küçükse yesil led yanacak diger ledler yanmayacaktır.
digitalWrite(yesil,HIGH);
digitalWrite(sari,LOW);
digitalWrite(kirmizi,LOW);
 delay(100);
  }
  else if(deger<510){  //Deger deger 510 sayısından kucukse sari led yanacak diger ledler yanmayacaktır.
digitalWrite(yesil,LOW);
digitalWrite(sari,HIGH);
digitalWrite(kirmizi,LOW);
 delay(100);
    }
else if(deger<760){  //Deger deger 760 sayısından kucukse kırmızı led yanacak diger ledler yanmayacaktır.
digitalWrite(yesil,LOW);
digitalWrite(sari,LOW);
digitalWrite(kirmizi,HIGH);
 delay(100);
  }
  else if(deger<1024){  //Deger deger 1024 sayısından kucukse butun ledler yanacaktir.
digitalWrite(yesil,HIGH);
digitalWrite(sari,HIGH);
digitalWrite(kirmizi,HIGH);
 delay(100);
    }
 else{  //Deger yukarıdaki işlemlerin hiçbirisi sağlanmaz ise butun ledler kapatılacaktır. 
digitalWrite(yesil,LOW);
digitalWrite(sari,LOW);
digitalWrite(kirmizi,LOW);
 delay(100);
  }  
  delay(100); //Yukarıdaki işlemleri 100 milisaniyede bir tekrar etmesini sağlıyoruz. 
}

Yukarıda kod satırlarında ise proje 1 de kod satırlarını aynısı bulunmakta ve buna ek olarak ledleri ekledik. Bu ledleri ise potansiyometreden gelen değerlere göre önce yeşil sonra sarı daha sonra kırmızı ve en son seviyeye gelince ise bütün ledler yanacaktır. Şimdi ise devre şemasını oluşturalım.

Proje 2 Semasi
Proje 2 Şeması

Devre şemasını oluşturmamızın ardından potansiyometreyi döndürmemiz ile ledlerin renkleri değişeceğini göreceksiniz. Yazımız burada son bulmuştur ve bizi takipte kalın.

  • 4
    alk_
    Alkış
  • 1
    be_endi
    Beğendi
  • 1
    be_enmedi_
    Beğenmedi
  • 1
    g_l_c_k
    Gülücük
  • 4
    a_k
    Aşk
  • 0
    d_nme
    Düşünme
  • 2
    haval_
    Havalı

Ben Ömer Faruk. Konya'da Yönetim Bilişim Sistemlerinde öğrenim görmekteyim. Yazılım ve Arduino ilgi duymaktayım.

Yazarın Profili
İlginizi Çekebilir

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir