Bilgisayar
OKUDUĞUNUZ KONU
Android Kontrollü Oda Lambası
33

Android Kontrollü Oda Lambası

Yazar : Yaşar Kahramaner8 Eylül 2017

Herkese merhaba bu projemizde anahtar ve android telefondan odamızın lambasını  röle ve vavien kullanarak kontrol edeceğiz. Role ve vavien kullanmamızın sebebi hem anahtardan lambamızı açıp kapatırken hemde telefondan bu işlemi gerçekleştirmemizi sağlayacak. Öncelikle vavien ve röle hakkında kısa bilgiler vermek istiyorum.

            Vavien iki yollu bir elektrik anahtarıdır. Kapalı veya Açık konumda iken A bacağını B veya C bacağına bağlar. Vavien anahtarlar karşılıklı çalışır bir odada 2 anahtar ile bir lamba kontrol etmek istediklerinde vavien anahtar kullanılır.

           Röle üzerinden akım geçtiği zaman çalışan elektromanyetik bir devre elemanıdır. Üzerinden akım geçtiği zaman ortak ucu A veya B bacağına bağlar. Vavien ve Röle birbirine benzeyen yapılardır birbirinden ayıran özellikleri vavien fiziksel bir güçle role ise elektromanyetik güçle açık kapalı işlevini görür. Projemiz için duvarda bulunan anahtarımızı Vavien anahtar ile değiştirmemiz gerekmektedir.Hadi projemize başlayalım…

KULLANACAĞIMIZ EKİPMANLAR
  • Arduino uno(isteğe göre farklı modeller kullanılabilir)
  • Vavien Anahtar
  • Tekli 5V Röle Kartı
  • Lamba
  • Bluetooth Modul (hc-05 veya hc-06)
  • Kablo
Arduino’muza Bluetooth Modulünün Bağlantısını Yapalım
  • RXT —-> TXD
  • TXD —-> RXT
  • GND —-> GND
  • VCC —-> 5V

Ardından Röle Modülünün Arduino ile Bağlantısını Yapalım
  • VCC —-> 5V
  • GND —-> GND
  • İN —->  Digital Pin 9

Ve Son Olarak Röle ve Vavien Anahtar Bağlantısını Yapalım
  • Duvardan gelen kablomuzun birini Röle Modülümüzün C girişine bağlıyoruz.
  • Duvardan gelen 2. kablomuzu Vavien anahtarımızın C girişine bağlıyoruz.
  • Vavien anahtarımızın A çıkışını Rölemizin NC girişine Bağlıyoruz
  • Vavien anahtarımızın B çıkışını Rölemizin NO girişine Bağlıyoruz

 

DEVREMİZİN SON HALİ

İsteğe göre breadboard üstünde.

#include <SoftwareSerial.h>

SoftwareSerial bluetoothModulu(0, 1);
const int ROLE = 9;

void setup()
{
  bluetoothModulu.begin(9600); /* Bluetooth haberleşmesi */
  pinMode(ROLE, OUTPUT);
}

char okunanKarakter; /* okunan verilerin kaydedileceği değişken */
void loop()
{
 while (bluetoothModulu.available() > 0) { /* Yeni veri var mı */
    okunanKarakter = bluetoothModulu.read(); /* Yeni veriyi okunanKarakter degiskenine kaydet */
    switch (okunanKarakter) { /* Okunan karaktere göre işlem yap */
      case 'a': /* gelen karakterin işlem karşılığı */
        digitalWrite(ROLE, HIGH);
        break;
      case 'b':
        digitalWrite(ROLE, LOW);
        break;
    } /* Switch sonu */
  }/* While sonu*/
}/* Loop sonu */

Sırada Android için programımızı yapalım bunun için App invertor 2 Adlı uygulamayı kullanacağım

 

 

 

 

 

Proje HOCAM |  xxkahxx | Android Uygulama APK Proje HOCAM |  xxkahxx | App İnvertor 2 Project .aia Proje HOCAM |  xxkahxx | Android Control Lamp .fzz Proje HOCAM |  xxkahxx | Android Control Lamp Breadboard .fzz

 

SİZCE NASIL OLMUŞ?
Beğendim
68%
İlginç
14%
Eh İşte
4%
Anlamadım
6%
Kötü
1%
Berbat
6%
YAZAR HAKKINDA
Yaşar Kahramaner
Yaşar Kahramaner
3 yıldır Arduino ile uğraşıyorum. 12. Sınıfta GRT6415 Adlı Robotics takımının kaptanlığını aynı zamanda makine alanını üstlendim. 4 yıldır Maker ve Robotik sistemlerle uğraşıyorum. Bu sitede yazılarımı ve projelerimi paylaşarak sizlere yararlı olmak istiyorum.
33 YORUMLAR
  • Hasan Mirzaloglu
    12 Eylül 2017 at 13:38

    Elektrikler gidip geldiği zaman role kendini sıfırlayacağı için ışık kendiliğinden açılabilir yada zaten açık ise kapalı kalabilir.

  • 12 Eylül 2017 at 21:24

    Teşekkürler, arduino projeleri genelde DC akım kontrollerine dayanıyor. Bu ve benzeri projeler daha geniş bir kitlenin ilgisini çekebilir.

  • Ekrem
    25 Eylül 2017 at 18:39

    Bu uygulamayı iPhone ile kullanabiliyomuyuz

  • Ahmet Köroğlu
    8 Ekim 2017 at 22:37

    apk sı hata verdi. nedeni dnedir. eror dio.

  • Ahmet Köroğlu
    8 Ekim 2017 at 22:38

    özelden yardımcı olurmusunuz. özelden. insta : @koroglu98 cevabınızı bekliyorum. :DDD

  • Narin
    10 Ekim 2017 at 12:47

    ışık şiddetini ayarlayarak bj projenin aynısı yapılabilir mi ? Işık sensörü lullanılarak sanırıım yapılıcak ama bi fikrim yok.. yardımcı olur musum yazılımı hakkımda ?

  • Faruk üstündag
    7 Kasım 2017 at 01:31

    Ampul 220 voltmu aca ben bi tane 5 vluk led taktım ama calısmadı neden acaba yardimci olurmusunuz?

  • Furkan Güner
    9 Kasım 2017 at 09:32

    Kablolar kaçlık olmalı lamba kaç volt olmalı cevap verirseniz sevinirim

    • Yaşar Kahramaner
      20 Aralık 2017 at 21:33

      Eğer duvardan gelen anahtara bağlayacaksanız ise evinizin elektriği 220v olduğu icin lamba da 220v ile calismasi gerekir. 0.75 vey 1 lik kablo isinizi rahatca gorur

  • serhat kaçan
    24 Kasım 2017 at 10:43

    Hocam çok teşekkürler. Herşey tamam fakat apk hata veriyor. Java ile ilgili bir hata çıkıyor.

    Düzeltebilirmisin?

  • Yaşar Kahramaner
    26 Kasım 2017 at 21:08

    Arkadaşlar linki düzeltemediğim için burdan veriyorum düzenlenmiş apk linki
    https://my.pcloud.com/publink/show?code=XZz8Iy7ZYUmou3dkbOHSjfq41V2sI7mqIGhy

  • serhat kaçan
    27 Kasım 2017 at 21:29

    Hocam teşekkürler,

    Fakat yine bir sorunum var. Error 516.Unable to write: broken pipe
    sorun nerede acaba?

  • Mehmet Emin Ünal
    11 Aralık 2017 at 15:49

    Role direk çekiyor. Çalıştırdık. Android programını (App İnvertor 2) indirdim. QR kodu istiyor. Bunu nereden bulabilirim?

  • Çağlayan DÖKME
    12 Aralık 2017 at 13:28

    Merhabalar,
    Hocam öncelikle bu güzel anlatımınız için teşekkürler. Ben aynı projeyi Kızılötesi kullanarak gerçekleştirdim. Gayet de harika çalıştı. Lakin şöyle bişey kafama takıldı. Kızılötesi kumanda ile bu lambanın parlaklığı nasıl ayarlanabilir? Röleden gelen 220VAC voltajı sanırım bizim bölmemiz gerekiyor fakat ben bu işi potansiyometre ile değil de, bir kuman da aracılığıyla kablosuz olarak yapmak istiyorum. Bu konuda bana yardımcı olabilirseniz sevinirim.
    Saygılarımla

    • Yaşar Kahramaner
      20 Aralık 2017 at 21:29

      Öncelikle teşekkürler, potansiyometre kullanmadan yapamazsiniz cunku role sadece anahtarlama yapar biraz araştırdım ama bi çözüm yolu bulamadim fakat arduino ile kontrol edilebilen 220v giriş voltajını çıkışta ayarlayabilen bir modul vb bişey varsa bana iletin gerekli programda yardımci olurum.

  • hasan ural subaşı
    14 Aralık 2017 at 11:42

    Selam. bu uygulama arduino nano ile yapılabilir mi

  • faruk üstündağ
    28 Aralık 2017 at 17:35

    1 tane daha lamba eklemek isterseniz bi tane daha 5v role alın ın grişini tanımladığınız pine bağlayın benim tanımladığım pin 10 kodlarise şöyle ;

    #include

    SoftwareSerial bluetoothModulu(0, 1);
    const int ROLE = 9;
    const int ROLE1 = 10;
    void setup()
    {
    bluetoothModulu.begin(9600); /* Bluetooth haberleşmesi */
    pinMode(ROLE, OUTPUT);
    pinMode(ROLE1, OUTPUT);
    }

    char okunanKarakter; /* okunan verilerin kaydedileceği değişken */
    void loop()
    {
    while (bluetoothModulu.available() > 0) { /* Yeni veri var mı */
    okunanKarakter = bluetoothModulu.read(); /* Yeni veriyi okunanKarakter degiskenine kaydet */
    switch (okunanKarakter) { /* Okunan karaktere göre işlem yap */
    case ‘a’: /* gelen karakterin işlem karşılığı */
    digitalWrite(ROLE, HIGH);
    break;
    case ‘b’:
    digitalWrite(ROLE, LOW);
    break;
    case ‘f’: /* gelen karakterin işlem karşılığı */
    digitalWrite(ROLE1, HIGH);
    break;
    case ‘r’:
    digitalWrite(ROLE1, LOW);
    break;
    } /* Switch sonu */
    }/* While sonu*/
    }/* Loop sonu */

  • berat
    25 Mart 2018 at 14:40

    hocam tüm kurulumları yaptım. uygulamayıda bluetooth a bagladım fakat açma kapama yapamıyorum yardımcı olabilirmisiniz?

  • Yaşar Kahramaner
    11 Nisan 2018 at 22:35

    1) Kodları arduino’ya attığınızı kontrol edin.
    2) Bluetooth un bağlı olduğunu kontrol edin.
    3) Bluetooth u programdan once telefon ayarlarından eşleştirin.
    Sorun devam ediyorsa instagram adresimden bana ulaşabiliesiniz.
    http://www.instagram.com/yasarkah

  • yilmaz koc
    4 Mayıs 2018 at 17:49

    Android telefondan devreye buleotohot la baglaniyorum ama lambaya enerji verip kesemiyorum sebebi nedir

  • ahmet kaya
    8 Ekim 2018 at 21:55

    hocam bunu odamızdaki prize yapabiliyoruz değil mi?

  • senolturan
    6 Kasım 2018 at 20:18

    hocam ben prize takmadan yapsam olurmu

  • metin kara
    11 Kasım 2018 at 11:06

    Merhaba, dediğiniz her şeyi harfiyen yapıyorum programlama kısmında sorun yok fakat telefonda bluetooth programından aç kapa yaptığımda role çekmiyor sadece arduino kartın üzerindeki tx ışığı yanıp sönüyor yeni role ve kartla da denememe rağmen aynı sıkıntıyı yaşıyorum yardımcı olursanız sevinirim teşekkürler.

  • nesrin mısır
    20 Aralık 2018 at 02:12

    iyi akşamlar aynı projeyi pille çalıştırmak için prize yapılan bağlantıları pile yapacağız değil mi yani 9v pille çalışır mı ?

  • Turgut Güneysu
    Turgut Güneysu
    26 Aralık 2018 at 11:07

    İki tane yorum sunmak istiyorum:

    1.
    HC05 Bluetooth modülü 3.6 – 6.0V arasında güçle çalıştırılabilir. Fakat bu sadece VCC pini için geçerlidir. TX ve RX pinlerinin muhakkak 3.3V aşmayacak şekilde bağlanması gerekir. TX pini zaten BT modülden 3.3V çıktığı için bir problem yaratmaz. Fakat RX pini Arduino’dan 5V ile sinyallendiğinde BT modülü bozar. Doğru bağlantı ya gerilim bölücü devre ya da 5V-3.3V voltaj dönüştürücüsü gerektirir.

    Bir sürü proje bu noktaya dikkat etmeden Arduino’ya direkt bağlantı gösteriyor. Arduino port çıkışları 5V olduğundan bu BT modül RX portunu zorlar. Kullanılan komponentlerin yapısına göre belki hemen hata olmayıp projeniz bir süre çalışabilir. Fakat buna güvenerek yanlış bir düşünceye kapılmayın: Devreniz / projeniz doğru ve sağlam değildir. Eğer elektronik ile ciddi çalışmalar yapacaksanız, baştan doğru gitmeyi öğrenin ve bunun değerini küçümsemeyin.

    2.
    Gene bir sürü projelerde SoftwareSerial kütüphanesi kullanarak Arduino’nun tek Seri İletişim port kısıtlamasını aşma yöntemi kullanılıyor. Fakat gördüğüm kadarıyla bunun uygulaması da doğru değil. SoftwareSerial Arduino’nun orijinal RX/TX, yani D0 ve D1 portlarına ek olarak başka bir sanal seri port yaratmak istediğimiz zaman kullanılır. Bu tekniği D0 ve D1 portlarına uygulamanın hiç bir manası yoktur. Aynı zamanda, bu yöntem yeni başlayanlar için bir hata kaynağı oluşturur. Çünkü kod geliştirilirken, D0/D1 USB üzerinden PC ile bağlantı için kullanılır. Arduino kod yüklemesi ve seri port mesaj yazma da bu portlar üzerinden gerçekleşir. D0/D1 Bluetooth bağlanıtısı için kullanıldığında bu iş bir karmaşıklık yaratır: Bir kere PC ile bağlantı bozulur ve program yükleme ve Seri monitör mesajlama etkilenir. BT modülleri genelde D0/D1 portlara bağlamak doğru değildir. Evet doğru kullanılırsa çalışır fakat karmaşıklık yaratır.

    Doğru yöntem BT modül RX ve TX portlarını D0/D1 harici başka iki porta bağlayıp Arduino kodundan bunu:

    SoftwareSerial benimBT(RXpin, TXpin);

    olarak ayarlamakdır.

    Ör.: D10/D11 portlarını kullacaksak: SoftwareSerial benimBT(10, 11);

    Bu şekilde uyguladığınızda, hem Arduino program yükleme ve seri port mesajlama (D0/D1) doğru çalışacaktır, hem de BT uygulamanız (D10/D11) beraber ve doğru olarak çalışacaktır. Aynı zamanda, bu şekilde bir bağlantı kurduğunuzda, BT modül girdi çıktısını da seri port üzerinden Arduino IDE seri monitörde yazıp hata ayıklamasını daha da kolay yapabilirisiniz. Şöyle:

    Arduino seri monitöre girdi/çıktı: Serial.read( ); Serial.print( );
    BT porta girdi/çıktı: benimBT.read( ); benimBT.print( );

    İyi çalışmalar.

  • Turgut Güneysu
    Turgut Güneysu
    26 Aralık 2018 at 11:36

    AI2 program hatası var galiba:

    when Ampul_buton.Click Ampul_buton.Text alanını = “OFF” olarak kontrol ediyor.
    “OFF” ise lambayı yakıyor ve butonOn çağırıyor,
    değilse lambayı söndürüyor ve butonOff çağırıyor.

    ButonOff Ampul_buton.Text alanına “Kapalı” atıyor.
    ButonOn Ampul_buton.Text alanına “Açık” atıyor.

    Bu koşullarda Ampul_buton.Text alanı yalnız “Kapalı” veya “Açık” değerlerini alır.
    Bundan dolayı da Ampul_buton.Click hiç “OFF” olamaz ve lamba yanmaz.

  • Turgut Güneysu
    Turgut Güneysu
    26 Aralık 2018 at 13:41

    @Yaşar Bey,
    Projenizin AI2 dosyasının adı “Proje HOCAM xxkahxx.aia” olarak tanımlanmış. Bu ad AppInventor dosya ad kurallarına aykırı olduğundan indirilen dosyayı AI2’ya yüklemek mümkün değil. Adını değiştirmek lazım.

    Makaledeki AI2 kodu resimleri ve indirilen AI2 kodu aynı değil. Ayrıca her ikisinde de hata var:

    when Ampul_buton.Click rutininde Ampul_buton.Text alanı = “OFF” olarak kontrol ediliyor.

    “OFF” ise lambayı yakmak için BT’den “a” mesajı yollanıyor,
    değilse lambayı söndürmek için BT’den “b” mesajı yollanıyor.

    Programın başında Ampul_buton.Text = “Click” ve program içinde hiç değişmiyor.

    Bu koşullarda Ampul_buton.Text alanı yalnız “Click” değerinde kalır.

    Bundan dolayı da Ampul_buton.Text hiç “OFF” olamaz ve lamba yanmaz.

    Bunu nasıl çalıştırıp denemesini yaptığınızı çok merak ediyorum.

    İlginize.

YORUM YAP