GPS Tabanlı Çift Eksen Arduino Güneş Takip Sistemi

GPS Tabanlı Çift Eksen Arduino Güneş Takip Sisteminin Geliştirilmesi

Merhaba arkadaşlar bu yazımızda GPS Tabanlı Güneşi Çift Eksende Takip Edebilen Arduino mikrodenetleyicisi kullanan Arduino Güneş Takip Sistemi geliştireceğiz. Piyasada veya internette araştırdığımızda geliştirilen güneş takip sistemlerinin hemen hemen hepsi LDR (Işığa duyarlı direnç) ile yapılmış projelerdir. Kısmen de olsa LDR‘li sistemler güneşi takip etmektedir ancak sistem duyarlılığı yüksek değildir. Burada duyarlılıktan bahis olan sistem kararlılığıdır. Bir sistem dış ortam değişkenlerinden ne kadar az etkileniyor ve sistemsel güneş açı değerlerinin hata değer sapmaları ne kadar az ise o kadar duyarlı ve kararlıdır diyebiliriz.

Sistemin kararlılığını etkileyen 2 unsurdan bahsettik. Bunlar;

  • Sistem Takibinde Güneş Açı Sapma Değerleri
  • Dış Ortam Değişkenlerinden (Rüzgar-Bulutlanma-Yağmur vb.) Etkilenme Oranı

Eğer sizde güneş takip projenizde daha kararlı bir takip mekanizması elde etmek istiyorsanız GPS sensörü kullanmanız gerekmektedir. GPS kullanan güneş takip sistemleri LDR kullanan takip sistemlerine göre literatürde de kanıtlandığı üzere daha kararlı bir çalışma göstermektedirler. Bu şekilde yazımıza giriş yaptıktan sonra ilk olarak LDR nedir ? onu açıklayalım sonrasında LDR ve GPS takip arasındaki avantaj ve dezavantajları inceleyeceğiz.

arduino-gunes-takip-sistemi

Arduino Güneş Takip Sistemi

LDR Nedir ?

LDR, “Light Dependent Resistor” kelimesinin kısaltmasıdır. Türkçe’de “Işığa Bağımlı Direnç” olarak da adlandırılır. LDR, ışık şiddetine bağlı olarak direncini değiştiren bir elektronik bileşendir. Bu özellik, LDR’nin belirli bir ışık düzeyine tepki vermesini sağlar.

LDR’ler genellikle fotoğraf detektörleri, otomatik ışık kontrol sistemleri, güneş panelleri ve ışık sensörleri gibi uygulamalarda kullanılır. Işığa bağlı olarak direncin değişimine duyarlı olmaları, çeşitli ışık koşullarına göre sistemlerin çalışma şeklini ayarlamak için kullanılabilir.

LDR Çalışma Prensibi

LDR’nin çalışma prensibi, yarı iletken malzeme içermesidir. Işık şiddeti arttıkça yarı iletken malzeme daha fazla iletken hale gelir ve bu da direncin azalmasına neden olur. Tersine, azalan ışık şiddeti, yarı iletkenin daha az iletken olmasına ve direncin artmasına yol açar. Bu özellik, LDR’nin belirli bir ışık seviyesine tepki vermesini ve çevresel ışık koşullarına duyarlı bir şekilde çalışmasını sağlar.

ldr-nedir

LDR Nedir ?

Özet geçmek gerekirse LDR yarı iletken malzemeden yapılmış olup ışığa göre direnci değişmektedir. Peki bu LDR ile güneş takibi nasıl yapılıyor ? diyebilirsiniz. Şöyle güneş takibi için temel olarak güneşin yön tayinini yapmak gerekmektedir. Bu yön tayini doğu-batı ve yukarı-aşağı olarak yapılabilmektedir.

Örneğin sizin bir cihazınız var ve bu cihaz yani güneş takip cihazı bir noktada (referans) duruyor. Bu noktaya göre güneş hareket ettikçe sizin cihazınızda hareket etmek zorundadır. İşte bu güneşin konumunu belirlemek için sistemde LDR kullanılmaktadır. PVC veya güneş geçirmeyen 4 bölmeli bir düzlem üzerine yerleştirilen 4 adet LDR ile bu iş yapılmaktadır. Bu LDR’lar üzerlerine düşen güneş ışığına göre dirençleri değişmekte ve en çok ışığı alan tarafın direnci azalıp üzerinden daha fazla akım geçmektedir.

İşte bir mikrodenetleyici ile bu akım değerleri ölçülerek en fazla akım çeken ya da üzerine en fazla güneş ışığı düşen LDR tarafına doğru sistem dönerek güneşi takip etmiş olmaktadır. LDR ile bu kadar açıklama yeter asıl konumuz olan GPS’e dönelim.

GPS Modülü Nedir ?

GPS Modülüne geçmeden ilk olarak GPS Nedir ? sorusuna yanıt vermek daha sağlıklı olacaktır. GPS, “Global Positioning System” (Küresel Konumlandırma Sistemi) kelimelerinin kısaltmasıdır. GPS, dünya genelindeki konum bilgilerini belirlemek ve kullanıcılara konumlarını doğrulukla belirtme imkanı sağlayan bir uydu tabanlı konumlandırma sistemidir.

GPS modülü ise küçük bir elektronik cihazdır ve GPS (Global Positioning System) sinyallerini alarak konum bilgisi sağlar. GPS modülleri genellikle bir GPS alıcısı, anten, mikrodenetleyici ve diğer destekleyici bileşenleri içerir. Bu modüller, kullanıcıların konumlarını belirlemelerine ve izlemelerine olanak tanır.

arduino-gps

Arduino Güneş Takip Sistemi

GPS modülleri, çeşitli uygulamalarda kullanılır, örneğin:

  1. Navigasyon Sistemleri: Araç navigasyon sistemleri, gemi navigasyon sistemleri ve diğer taşıma araçları için kullanılır. GPS modülü, kullanıcılara hedef konumlarına doğrudan yönlendirme sağlar.
  2. Harita ve Konum Hizmetleri: Akıllı telefonlar, tabletler ve bilgisayarlar gibi cihazlarda kullanılan harita uygulamalarında GPS modülleri kullanılır. Bu sayede kullanıcılar, konumlarını belirleyebilir, çevrelerini keşfeder ve hedef yerlere yönlendirme alabilirler.
  3. Spor ve Aktivite İzleme Cihazları: Koşu, bisiklet, yürüyüş gibi aktivitelerde kullanılan spor izleme cihazları, GPS modüllerini kullanarak kullanıcının güzergahını ve performansını izler.
  4. Uydu Haberleşme Cihazları: Uzak ve izlenmesi zor bölgelerde konumu belirlemek amacıyla kullanılabilir.

GPS modülleri, genellikle seri iletişim protokollerini (örneğin, UART) kullanarak mikrodenetleyicilere veya diğer cihazlara konum bilgilerini ileten verileri sağlar. Bu modüller, genellikle küçük boyutlu, enerji verimli ve uygun maliyetlidir, bu nedenle birçok cihaz ve uygulama tarafından tercih edilir. GPS Modülü ile daha fazla bilgi almak isterseniz “Arduino GPS Modülü Kullanımı (GY-NEO6MV2)” adlı yazımızı incelemenizi öneririm.

GPS Tabanlı ve LDR’li Güneş Takip Sistem Karşılaştırılması

  • GPS Tabanlı güneş takip sistemleri daha kararlıdır.
  • GPS Tabanlı sistemler kör (astronomik) takip yaparken LDR sistemler açık (Güneşe bağlı) takip yapmaktadır.
  • GPS takip sistemi çevre koşullarından (yağmur, bulut vb.) etkilenmez iken LDR sistemler etkilenmektedir.
  • GPS modülü daha kesin ve modüler bir cihaz iken LDR stabil olmayan ve çabuk bozulabilen yarı iletken bir malzemedir.

Yukarıdaki maddeler incelendiğinde büyük bir fark ile GPS sistemlerinin üstün olduğu görülmektedir. Ancak GPS Modülü LDR göre daha maliyetli ve yazılım konusunda da bir tık daha zor olmaktadır. Ancak alınan sonuca göre bu maliyet ve yazılım zorluğu kabul edilebilir olmaktadır.

Biz Arduino Güneş Takip Sistemi projelerimizde GPS Modülü kullanmayı tercih ediyoruz. Şu ana kadar hem prototip hem de sanayi ölçekli parabolik oluk kolektör ve parabolik çanak kolektörlerimizde astronomik takip yaptık bu nedenle bütün projelerimizde GPS Modülü kullandık.

İster yaz aylarında ister kış herhangi bir bulutlu veya yağmurlu havada sistem kendisini bozmadan güneş bile olmasa yine takip eksenini bozmamıştır. Ancak müşterilerimizin istekleri doğrultusunda hazırlamış olduğumuz LDR prototipleri güneş kaybolduğunda takip eksenlerini terketmekte ve büyük sapma açıları yapmaktadır. Her ne kadar bu sapmaları yazılımsal olarak LDR ölçüm veya karşılaştırma eşikleri üzerinden düzeltiriz diye düşünülse de akademik literatürde kanıtlandığı üzere astronomik takibe göre performansları çok düşük kalmaktadır. Siz de bu ve bunun gibi projelerde destek almak isterseniz Proje Hizmeti sayfasından bize ulaşabilirsiniz.

cıft-eksen-gunes-takip-sistemi

Çift Eksen Parabolik Çanak Güneş Takip Sistemi

Arduino Güneş Takip Sistemi Güneş Açılarının Hesaplanması

GPS Tabanlı güneş takibin yapılabilmesi için ilk olarak güneş açılarının hesaplanması gerekmektedir. Güneşin takip edilebilmesi için temel olarak 2 açının bilinmesi gerekmektedir. Bunlar ;

  • Azimut Açısı
  • Güneş Yükseklik Açısı

Yukarıdaki açıları hesaplamak için bazı yardımcı açıları hesaplamak gerekmektedir. Bunlar;

  • Deklinasyon Açısı
  • Saat Açısı
  • Enlem ve Boylam Açısı
  • Zenit Açısı

Bu açıların ne olduğu ve hesaplanması için kullanılan amprik formülleri önceki yazımız olan “Güneş Açıları Nelerdir ? Nasıl Hesaplanır ?” ‘da açıkladık incelemenizde fayda var diye düşünüyorum. Bahsi geçen yazımızda Enlem ve Boylam açılarının formülleri hariç diğerlerini verdik. Bunun nedeni enlem ve boylam açılarının GPS Sensörü üzerinden çekilecek olmasıdır. Enlem ve boylam açılarının herhangi bir formülü bulunmamaktadır.

Arduino ile Güneş Açı Formüllerini Hesaplama

İlk olarak yapmamız gereken Arduino IDE Programı bilgisayarımızda kurulu değilse kurmaktır. Arduino IDE, Arduino mikrodenetleyici kartına program yazmak ve yüklemek için gerekli olan ve tamamen ücretsiz, açık kaynak kodlu bir programdır. Eğer Arduino IDE Programı PC’nizde kurulu değil ve nasıl yapılacağını bilmiyor iseniz “Arduino IDE Nedir ? Nasıl İndirilir ? Kurulumu ve Kullanımı” adlı yazımızı inceleyebilirsiniz.

Sonrasında aşağıda bulunan kodlar ile Arduino Güneş Takip Sistemi güneş açı hesaplarını yapabilirsiniz.


sa = 15 x ((((gps.time.hour() + 3) %24)+ (gps.time.minute()/ 60.0 )) - 12) ;
dec = 23.45 x sin(radians((0.986301) x (n - 81)));
elevation = (asin(  (  sin(radians(dec)) x sin(radians(gps.location.lat()))  ) + (  cos(radians(dec)) x cos(radians(gps.location.lat())) x cos(radians(sa))   )   )) x 57.2957795 ;
azi = asin((cos(radians(dec)) x sin(radians(sa))) / cos(radians(elevation))) x 57.2957795 ;
zenith = 90 – elevation

Yukarıdaki kodları satır satır inceleyelim. “SA” değikeni bizim saat açımız olmakla birlikte azimut açısını hesaplamakta kullandığımız yardımcı güneş açılarımızdandır. gps.time hour() değişkeni 0 meridyenine göre (UTC 0) saati temsil eder. Bu saat değerini Türkiye’e göre ayarlamak için UTC+3 ‘e yani +3 değeri ekliyoruz. gps.time.minute () ise yine 0 meridyenine göre yerel dakikadır. Bu değişken değerleri GPS Sensörüne (modülü) ait arduino kütüphanesinin değişkenleridir ve daha hızlı veri çekmek için kullanılmaktadır.

“DEC” Değişkeni deklinasyon açısını ifade etmekte ve n ise julian gününü ifade etmektedir. Güneş açıları nedir yazımızda anlattığımız gibi julian day Ocak 1’den başlayarak yılın kaçıncı gününde olduğumuzu göstermektedir. “ELEVATION” Değeri güneş yükseklik açısını, “AZİ” ise Azimut açısını ifade etmektedir.

Arduino ile GPS Modülü Kullanımı

Enlem, Boylam ve gerçek zamanlı tarih ve saat verilerini çekebilmek için GPS modülü ile arduino mikrodenetleyicisinin bağlantılarının gerçekleştirilmesi gerekmektedir. Bu bağlantıların nasıl gerçekleştiği aşağıdaki videoda gösterilmiştir. GPS Modülüne ait TinyGPS++ Kütüphanesi kurulumu ve gerekli kodlar ise “Arduino GPS Modülü Kullanımı (GY-NEO6MV2)” yazımızda verilmiştir.

Arduino Güneş Takip Sistemi Sonuç

Sonuç olarak artık Arduino Güneş Takip Sistemi yapabilmek için gerekli güneş açıları elinizde bulunmaktadır. Şimdi sırada bu açılar ile eksenleri güneşe doğru çevirmek var. Burada birçok yöntem bulunmakta. Hangi motorları (AC-DC) kullanacaksınız ? Hangi sürücüleri kullanacaksınız ? Sürücüler kullanacağınız motora göre değişecektir. Örneğin AC motorlar için Değişken frekanslı sürücüler (VFD) veya DC Motorlar için DC motor sürücüleri gibi. VFD Sürücüler ile daha fazla bilgiye sahip olmak için “VFD (Değişken Frekanslı Sürücü) Nedir?” adlı yazımızı inceleyebilirsiniz.

Arduino Güneş Takip Sisteminde tabi ki her değişen parça ve modüle göre arduinoda kullanacağımız yazılımda da değişiklikler meydana gelecektir. Bu parçalara göre yazılımsal değişiklikleri yapmak size kalmış. Bu konuda sorularınız var ise aşağıda bulunan yorum kısmında sorularınızı sorabilirsiniz. En kısa sürede sizlerin sorularınızı cevaplayacağımızdan emin olabilirsiniz. Arduino Güneş Takip Sistemi projeleriniz için yardım ve danışmanlık almak isterseniz Proje Hizmeti sayfamızdan bize ulaşabilirsiniz. Ayrıca TemirLabs Youtube sayfamız üzerinden Arduino Proje videolarımızı da izleyebilirsiniz.

Değerli takipçilerimiz, sizlerle bilişim dünyasında harika bir yolculuk yaşıyoruz. Bilgiyi paylaşma, öğrenme ve keşfetme tutkusunu birlikte yaşıyoruz. Siz de bu heyecanlı serüvenimize katılmak ve bizi desteklemek isterseniz, bizi sosyal medyada takip etmeyi unutmayın! “Arduino Güneş Takip Sistemi” gibi içeriklerimize ulaşmak için Elektronik sayfamızı ziyaret edebilirsiniz.

Yorum Bırakın