22 Temmuz 2024 Pazartesi
Arduino ProjeleriHobi Devreleri

Bluetooth ve Arduino ile RGB Led Renk Kontrolü

1.2kviews

Bu devrede, Bluetooth ve Arduino ile RGB Led Renk kontrolü yapacağız. LED ışık şeridi, Android Uygulaması aracılığıyla kablosuz olarak kontrol edilebilir. Alınan verilerle RGB şeridinin hangi renginin etkinleştirileceğine karar vermektedir.

Bu çalışmada, Arduino ile 12v RGB LED Şeridin nasıl bağlanacağını ve Android Uygulaması aracılığıyla Bluetooth üzerinden çeşitli renkleri kablosuz olarak kontrol etmek için Arduino Kartının RGB LED Şeritli nasıl programlanacağını öğreneceğiz.

Bu devre ile Noel, Partiler, Evlilik veya diğer etkinliklerde iç veya dış mekan dekorasyonu için mükemmel bir seçimdir. Işık, seçiminize göre renkleri ve hızı otomatik ve periyodik olarak değiştirecektir. Sadece RGB (Kırmızı, Yeşil, Mavi) değil, aynı zamanda 16 renkli bir ışık değiştiriciye sahiptir. Harika led mood aydınlatmanızı oluşturabilirisiniz.

SMD5050 tipi 12V RGB LED Şerit piyasada çok popülerdir. 12V, 1.5A DC Güç Kaynağında çalışır. RGB, Beyaz, Sıcak Beyaz, Kırmızı, Yeşil, Mavi, Sarı vb. Renkler üretebilir. Parça başına toplam 60 LED vardır.

RGB LED Şerit, kırmızı, yeşil ve mavi renkte 3 küçük boyutlu LED’e sahip SMD5050’YE sahiptir. Aşırı voltaj nedeniyle LED’in hasar görmesini önlemek için 3 LED’in tamamında 3 direnç bulunur.

Her 3 SMD 5050’den sonra kesme işaretlerine sahiptir ve sökülebilir. 3M çift taraflı yapıştırıcıya sahiptir ve arkada, büyük bir ısı dağılımına sahip çift taraflı bakır iletken PCB’ye sahiptir.

4 Teli vardır. İlki, pozitif 12V girişi olan beyazdır. Diğer 3 kablo kırmızı, yeşil ve mavi sinyal kablolarıdır. Çok çeşitli renkler oluşturmak için bu 3 temel rengin her birine az çok parlaklık vermeliyiz. Bunu yapmak için bu renk pinlerine bir PWM sinyali uygulamalıyız. Beyaz pim zaten pozitif bir 12V voltajına bağlıysa, devreyi kapatmak için RGB çıkış pimleri toprağa doğru modüle edilmelidir.

RGB LED Şerit için Akım / Güç Gereksinimleri


Arduino’daki sorun, dijital çıkışlarının 200ma’dan fazla güç sağlayabilmesi ve bu şeridin tam parlaklıkta 1a’dan fazla çekebilmesidir. Bunun için Arduino PWM sinyali ile LED şerit arasına bir şeyler koymamız gerekiyor. Bunu yapmak için  yüksek güçlü BJT kullanmak ya da MOSFET ile yapmak gibi iki seçeneğimiz var.

Akım tüketimini RGB LED Şerit ile farklı koşullarda test ettim. Tam parlaklığa parladığında, akım 1a’dan fazla gider. Bu nedenle, 12V, 1.5A veya daha yüksek akım değerine sahip bir adapter kullanılması önerilir.

Bluetooth ve Arduino ile RGB LED Şerit Renk Kontrolü için Devre

Şimdi SMD5050 LED Şeridin Bluetooth ve Arduino ile arayüzlenmesi hakkında bilgi verelim. Her renk çizgisi için 1 mosfet’e ihtiyacımız var ve maksimum akımı idare edecek şekilde derecelendirilmeleri gerekiyor. Her kanal için metre başına yaklaşık 330mA, 5 metrelik bir şerit için kanal başına 1,66 A’dır.

Bir IRF540N N Kanal MOSFET kullandım. IRF2807, IRF530, IRFZ44N gibi N Kanallı mosfet’lerin TIP120, TIP121, TIP122 gibi herhangi bir NPN transistörünü kullanabilirsiniz uygulamanıza bağlı olarak transistörleri değiştirebilirsiniz. Bu transistörler arasındaki fark, farklı bir toplayıcı-yayıcı akım derecesine sahip olmalarıdır. Örneğin, büyük bir RGB LED şerit uzunluğu kullanıyorsanız, bunları sürmek için Tahliye Akımı (Id): 28 Amper olan IRF540 gibi yüksek akımlı transistörlere ihtiyacınız olacaktır.

Önce HC-05 / HC-06 Bluetooth Modülünü Arduino’ya bağlayın. Vcc’sini 5v’a ve gnd’yi gnd’ye bağlayın. Ayrıca TX pimini Rx o Arduino’ya ve rx’i Arduino’nun Tx’ine bağlayın. TX / RX Pimleri 3,3V tolere edilebilir, bu nedenle bu kurulumu uzun süre kullanacaksanız, kontrol için bir voltaj bölücü ağı oluşturmanız gerekir.

IRF540N MOSFET ve RGB LED Şeridini yukarıdaki Devre Şemasında gösterildiği gibi bağlayın. Bir kapı pimi olan IRF540N’NİN 1. Pimini RGB pimi için sırasıyla D6, D5, D3 olarak Arduino PWM Pimine bağlayın. Bir Tahliye Pimi olan IRF540N mosfet’in 2. pimi RGB LED Pinlerine bağlanır. Ve 3. pim olan IRF540N’NİN Kaynak Pimi gnd’ye bağlanır. IRF540n burada bir anahtar olarak çalışıyor. DC Adaptörü veya 12V Trafo doğrultucu Devresi gibi harici güç kaynağından 12V DC sağlamanız gerekir.

Kaynak Kodu / Program
RGB LED Şeridin Arduino ile Renk Efekti ile Arayüzlenmesi için Kaynak Kodu aşağıda verilmiştir. Bunun için herhangi bir kütüphaneye gerek yok. Kodu Arduino kartına yükleyebilirsiniz. Unutmayın, kodu Arduino’ya yüklerken bu TX / RX pinlerinin bağlantısını kesin, aksi takdirde kod yüklenmez ve bir hata açılır.

int color=0;
 
//define the RGB pind
int red = 6;
int green = 5;
int blue = 7;
 
char received;
 
void setup()  { 
  Serial.begin(9600);     //Start the serial comunication for the bluetooth module
  pinMode(red, OUTPUT);   //Red color pwm pin defined as output
  pinMode(green, OUTPUT); //Green color pwm pin defined as output
  pinMode(blue, OUTPUT);  //Blue color pwm pin defined as output
  
  //Give first value of the PWM 0, we start with the RGB LEDs off
  analogWrite(red,0);
  analogWrite(green,0);
  analogWrite(blue,0);
 
 } 
 
void loop()  { 
  
  if(Serial.available()>0){
    // read the bluetoot data and store it
    color = Serial.read();
    char Rec = char(color);
    if (Rec != '0')
    {
    Serial.println(Rec); //This is to visualise the received character on the serial monitor
    }  
  }
 
  //LEDs off
  if (color == 'n')
  {
    analogWrite(red,0);
    analogWrite(green,0);
    analogWrite(blue,0);
  }
  //White
  if (color == 'w')
  {
    analogWrite(red,255);
    analogWrite(green,255);
    analogWrite(blue,255);
  }
  //Red
  if (color == 'r')
  {
    analogWrite(red,255);
    analogWrite(green,0);
    analogWrite(blue,0);
  }
  //Green
  if (color == 'g')
  {
    analogWrite(red,0);
    analogWrite(green,255);
    analogWrite(blue,0);
  }
  //Blue
  if (color == 'b')
  {
    analogWrite(red,0);
    analogWrite(green,0);
    analogWrite(blue,255);
  }
  //Orange
  if (color == 'o')
  {
    analogWrite(red,255);
    analogWrite(green,153);
    analogWrite(blue,0);
  }
  //Violet
  if (color == 'v')
  {
    analogWrite(red,102);
    analogWrite(green,0);
    analogWrite(blue,153);
  }
  //Cyan
  if (color == 'c')
  {
    analogWrite(red,0);
    analogWrite(green,255);
    analogWrite(blue,255);
  }
  //Yellow 
  if (color == 'y')
  {
    analogWrite(red,255);
    analogWrite(green,204);
    analogWrite(blue,0);
  }  
}

RGB LED Şerit Kontrolü Android Uygulaması
LED rengi, aşağıda verilen Android Uygulaması kullanılarak bluetooth üzerinden kablosuz olarak kontrol edilebilir. Android Uygulaması MIT App Inventor kullanılarak tasarlanmıştır.

Android uygulamayı indirmek için LedStrip 1.0

 

Android uygulamasını aşağıdaki bağlantıdan indirin ve akıllı telefonunuza yükleyin. Uygulamayı başlatmadan önce cihazı senkronize etmemiz gerekiyor. Akıllı telefonunuzdaki Bluetooth ayarlarını açın. Cihazları arayın ve bulunduğunda hx06’yı seçin. Şifre 1234 veya 0000 olmalıdır. Şimdi senkronize olduk. Uygulamayı açın, Bluetooth simgesini tıklayın ve bu listeden HC06 cihazını seçin. Şimdi sadece renginizi seçin ve büyüyü gözlemleyin.

Sonuçlar
Kod yüklendikten ve 12V beslemesi açıldıktan sonra, LED Rengini kontrol etmek için Android Uygulamasına ihtiyacınız olacaktır.

Kaynak: how2electronics.com

Leave a Response

ekurt
Tecrübelerini ve bildiklerini kendine saklamayan, iyi bir eğitimci olmaya çalışan Mühendis...