- Arduino Solar Tracker için Gerekli Bileşenler:
- Tek eksenli bir güneş takip cihazı nasıl çalışır?
- Arduino kullanarak dönen bir güneş paneli nasıl yapılır:
- Devre Şeması ve Açıklaması:
- Arduino kodunu kullanan tek eksenli güneş izleyici:
Bu yazıda, ışığı algılamak için iki LDR (Işığa bağlı direnç) ve güneş panelini güneş ışığı yönünde otomatik olarak döndürmek için bir servo motor kullanacağımız Arduino kullanarak bir Güneş Takip Güneş Paneli yapacağız.. Bu projenin avantajı, Güneş panellerinin her zaman güneş ışığını takip edeceği ve her zaman şarj olmak için her zaman güneşe bakacak olması ve beslemeye maksimum gücü sağlayabilmesidir. Prototipin yapımı çok kolaydır. Aşağıda nasıl çalıştığına ve prototipin nasıl yapıldığına dair tam bir açıklama bulacaksınız.
Arduino Solar Tracker için Gerekli Bileşenler:
Aşağıdakiler, Arduino kullanarak bir güneş takip sistemi kurmak için gereken bileşenlerdir, bileşenlerin çoğu yerel mağazanızda bulunmalıdır.
- Servo Motor (sg90)
- Güneş paneli
- Arduino Uno
- LDR'nin X 2 (Işık Bağımlı Direnç)
- 10K direnç X 2
- Akü (6 - 12V)
Tek eksenli bir güneş takip cihazı nasıl çalışır?
Bu projede, LDR'ler ışık dedektörü olarak çalışıyor. Ayrıntılara girmeden önce, LDR'nin nasıl çalıştığını anlamamız gerekecek. Foto direnç olarak da bilinen LDR (Light Dependent Resistor) ışığa duyarlı cihazdır. Üzerine ışık düştüğünde direnci azalır ve bu yüzden sıklıkla Karanlık veya Açık Dedektör Devresinde kullanılır. Burada LDR'ye dayalı çeşitli devreleri kontrol edin.
İki LDR, güneş panelinin iki tarafına yerleştirilir ve Servo Motor, güneş panelini döndürmek için kullanılır. Servo, güneş panelini direnci düşük olan LDR'ye, yani ışığın düştüğü LDR'ye doğru hareket ettirecek, böylece ışığı takip etmeye devam edecektir. Ve her iki LDR'ye de bir miktar ışık düşerse, servo dönmeyecektir. Servo, güneş panelini, her iki LDR'nin aynı direnç araçlarına sahip olacağı ve her iki dirence de aynı miktarda ışığın düşeceği pozisyonda hareket ettirmeye çalışacak ve LDR'den birinin direnci değişecekse, daha düşük dirence doğru dönecektir. LDR. Gösteri Kontrol video Bu madde sonunda.
Arduino kullanarak dönen bir güneş paneli nasıl yapılır:
Prototipi yapmak için aşağıdaki adımları izlemeniz gerekecek:
Aşama 1:
Öncelikle küçük bir karton parçası alın ve bir ucunda delik açın. Daha sonra servo ile sabitlemek için vidayı içine yerleştireceğiz.
Adım 2:
Şimdi iki küçük karton parçasını birbirine yapıştırıcı veya sıcak tabanca yardımıyla V şeklinde sabitleyin ve üzerine güneş paneli yerleştirin.
Aşama 3:
Sonra V şeklinin alt tarafını, ilk adımda bir delik açtığınız küçük karton parçasının diğer ucuna takın.
4. Adım:
Şimdi vidayı kartonda açtığınız deliğe yerleştirin ve delikten servo içerisine yerleştirin. Vida satın aldığınızda servo motorla birlikte gelir.
Adım 5:
Şimdi servoyu başka bir karton parçasının üzerine yerleştirin. Kartonun boyutu, üzerine bir Arduino Uno, bir breadboard ve bir pil yerleştirebileceğiniz kadar büyük olmalıdır.
6. Adım:
Tutkal yardımıyla güneş panelinin iki tarafındaki LDR'leri takın. Telleri LDR'lerin bacaklarıyla lehimlediğinizden emin olun. Bunları daha sonra dirençlere bağlamanız gerekecek.
7. Adım:
Şimdi Arduino'yu, pili ve devre tahtasını kartonun üzerine yerleştirin ve aşağıdaki Devre şeması ve Açıklama bölümünde açıklandığı gibi bağlantıyı yapın. Nihai prototip aşağıda gösterilmiştir.
Devre Şeması ve Açıklaması:
Güneş takip arduino projesi için eksiksiz devre şeması aşağıda gösterilmiştir. Gördüğünüz gibi devre çok basit ve küçük bir devre tahtası yardımıyla kolayca kurulabilir.
Bu Arduino Solar Panel Tracker'da, Arduino 9V pil ile çalıştırılır ve diğer tüm parçalar Arduino tarafından çalıştırılır. Arduino'nun önerdiği giriş voltajı 7 ila 12 volt arasındadır, ancak sınır olan 6 ila 20 volt aralığında güç sağlayabilirsiniz. Önerilen giriş voltajı dahilinde güç sağlamaya çalışın. Bu yüzden pilin pozitif kablosunu Arduino'nun Vin'ine ve pilin negatif kablosunu Arduino'nun toprağına bağlayın.
Ardından, servoyu Arduino ya bağlayın. Servonun pozitif kablosunu Arduino'nun 5V'una ve topraklama kablosunu Arduino'nun topraklamasına bağlayın ve ardından Servo'nun sinyal kablosunu Arduino'nun dijital pin 9'a bağlayın. Servo, güneş panelinin hareket etmesine yardımcı olacaktır.
Şimdi LDR'leri Arduino'ya bağlayın. LDR'nin bir ucunu 10k direncin bir ucuna bağlayın ve ayrıca bu ucu Arduino'nun A0'ına bağlayın ve bu direncin diğer ucunu toprağa ve LDR'nin diğer ucunu 5V'ye bağlayın. Benzer şekilde, ikinci LDR'nin bir ucunu diğer 10k direncin bir ucuna bağlayın ve bu ucu Arduino'nun A1'ine bağlayın ve bu direncin diğer ucunu toprağa bağlayın ve LDR'nin diğer ucunu 5V'a bağlayın. Arduino.
Arduino kodunu kullanan tek eksenli güneş izleyici:
Bu Arduino tabanlı Solar Panel Tracker için kod kolay ve yorumlarla iyi açıklanmıştır. Öncelikle servo motor kütüphanesini ekleyeceğiz. Ardından, servo motorun başlangıç konumu için değişkeni başlatacağız. Bundan sonra, LDR sensörlerinden ve Servo'dan okunacak değişkenleri başlatacağız.
#Dahil etmek
sg90.atach (servopin) komutu, Arduino'nun 9 numaralı pininden Servo okuyacaktır. Ardından sensörlerden değerleri okuyup güneş panelini ona göre hareket ettirebilmemiz için LDR pinlerini giriş pinleri olarak ayarlıyoruz. Daha sonra servo motoru, servo için başlangıç konumu olan 90 dereceye ayarladık.
void setup () {sg90.attach (servopin); // servoyu pin 9 pinMode (LDR1, INPUT) üzerine bağlar; // LDR pinini input pinMode (LDR2, INPUT) yapmak; sg90.write (initial_position); // Servoyu 90 derece gecikmeyle hareket ettirin (2000); // 2 saniyelik bir gecikme sağlar}
Daha sonra LDR'lerden değerleri okuyacağız ve R1 ve R2'de kaydedeceğiz. Ardından servoyu uygun şekilde hareket ettirmek için iki LDR arasındaki farkı yaratacağız. Aralarındaki fark sıfır olursa, bu, her iki LDR'ye de aynı miktarda ışığın düştüğü anlamına gelir, böylece güneş paneli hareket etmez. Hata adında bir değişken kullandık ve değeri 5, bu değişkenin kullanımı, iki LDR arasındaki fark 5'in altında olursa servo hareket etmeyecek. Bunu yapmazsak servo dönmeye devam edecek. Fark, hata değerinden (5) büyükse, servo, güneş panelini ışığın düştüğü LDR yönünde hareket ettirecektir. Aşağıdaki Tam Kodu ve tanıtım videosunu kontrol edin.
int R1 = analogRead (LDR1); // LDR'den değer okuma 1 int R2 = analogRead (LDR2); // LDR'den değer okuma 2 int diff1 = abs (R1 - R2); // LDR'nin int diff2 = abs (R2 - R1) arasındaki farkı hesaplamak; eğer ((fark1 <= hata) - (diff2 <= hata)) {// eğer fark hata altındaysa hiçbir şey yapmayın} başka bir şey {if (R1> R2) {ilk_pozisyon = - ilk_konum; // Servoyu 0 dereceye taşıyın} if (R1 <R2) {initial_position = ++ initial_position; // Servoyu 180 dereceye doğru hareket ettirin}}
Böylece, bir ayçiçeği gibi otomatik olarak ışığa doğru hareket edecek basit bir Güneş Paneli İzleyicisi oluşturabilirsiniz. Burada ağırlığı azaltmak için düşük güçlü güneş panelini kullandık, yüksek güçlü veya ağır güneş paneli kullanmayı planlıyorsanız buna göre Servo motoru seçmeniz gerekir.