Şimdi Ara

Su Soğutma Sistemi sorusu

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
9
Cevap
1
Favori
443
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • bir projem için kullandığım suyun 25-40 derece arasında olmasını istiyorum. sıcaklık 40 derece olduğunda sistem devreye girip soğutmaya başlayıp bu işlem sıcaklık 25 e düşene kadar devam edecek. suyun boşalması alt switche gelince, doldurmasıda üst switche gelince duracak. şöyle bir kod yazdım ama çalışmıyor. sanırım döngülerde bir sorun var. yardımcı olabilirseniz sevinirim.

     
    int selenoid_dol = 2;
    int selenoid_bos = 3;
    int seviye_ust = 4;
    int seviye_alt = 5;



    void setup()
    {
    Serial.begin(9600);
    pinMode(selenoid_dol, OUTPUT);
    pinMode(selenoid_bos, OUTPUT);
    pinMode(seviye_ust, INPUT);
    pinMode(seviye_alt, INPUT);
    digitalWrite(selenoid_dol, LOW);
    digitalWrite(selenoid_bos, LOW);
    }

    void loop()
    {
    int sensor=analogRead(A0);
    float sicaklik=sensor*(500.0/1023.0);
    Serial.println(sicaklik);
    delay(1000);
    if(sicaklik >= 40)
    {
    while(sicaklik>25)
    {
    while(seviye_alt==HIGH)
    {
    digitalWrite(selenoid_bos, HIGH);
    digitalWrite(selenoid_dol, LOW);;
    }
    if(seviye_alt==LOW)
    {
    while(seviye_ust=LOW)
    {
    digitalWrite(selenoid_dol, HIGH);
    digitalWrite(selenoid_bos, LOW);
    }
    }
    }
    }
    }








  • Suyu sadece doldurup boşaltarak mı soğutuyoruz?
  • Hocam soğuk suyu kuyudan çekiyorum. devridaim deki soğutma suyu ısınınca suyu boşaltıyorum

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Merhaba;

    tam olarak çalışmayan kısım neresi?

    bir de sıcaklık değişkenin float olarak tanımladığınız için sıcaklık değerlerini 40.0 ve 25.0 olarak dener misiniz?@AjanGevrek



    < Bu mesaj bu kişi tarafından değiştirildi erenpullukcu -- 11 Temmuz 2015; 14:08:58 >
  • erenpullukcu kullanıcısına yanıt
    while(seviye_alt==HIGH) kısmından itibaren çalışmayı durduruyor
  • AjanGevrek kullanıcısına yanıt
    Merhaba;

    aşağıdaki kodu deneyebilir misiniz?

     

    int selenoid_bos = 2;
    int selenoid_dol = 3;
    int seviye_1 = 4;
    int seviye_2 = 5;
    int seviye_ust = 0;
    int seviye_alt = 0;

    void setup()
    {
    Serial.begin(9600);
    pinMode(selenoid_dol, OUTPUT);
    pinMode(selenoid_bos, OUTPUT);

    pinMode(seviye_ust, INPUT);
    pinMode(seviye_alt, INPUT);
    digitalWrite(selenoid_dol, LOW);
    digitalWrite(selenoid_bos, LOW);

    }

    void loop()
    {

    seviye_alt=digitalRead(seviye_2);
    seviye_ust=digitalRead(seviye_1);

    int sensor=analogRead(A0);
    float sicaklik=sensor*(500.0/1023.0);
    Serial.print("Sicaklik= ");
    Serial.println(sicaklik);
    Serial.print("seviye_alt= ");
    Serial.println(seviye_alt);
    Serial.print("seviye_ust= ");
    Serial.println(seviye_ust);
    delay(500);
    if(sicaklik >= 40.0) //sicaklik 40.0 üstündeyse
    {

    digitalWrite(selenoid_bos, HIGH); // sicak suyu bosalt
    digitalWrite(selenoid_dol, HIGH); //soguk suyu doldur
    }
    if(sicaklik<25.0){ //sıcaklık 25.0 altındaysa
    if(seviye_alt==0) //su alt switchi geçince
    {digitalWrite(selenoid_bos, LOW); //boşaltmayı durdur
    if(seviye_ust==1) //su üst switche gelince
    {digitalWrite(selenoid_dol, LOW);} //doldurmayı durdur

    }
    }
    }





  • erenpullukcu kullanıcısına yanıt
    hocam yaptığınız döngüde 40 dereceyi geçince 1 kere boşaltıp doldurma yapıcak ve bunları aynı anda olacak. doldurma ile boşaltmanın hem gücü aynı olmadığı için ya su taşabilir ya da motor yanabilir. ayrıca 40 dereceyi geçtiğinde 25 dereceye düşmesini istiyorum. o yüzden while kullandım. bir de seviyeyi if veya for döngüsü içinde okutmayı düşünüyorum. döngüye girdikten sonra inputtan okuma yapmıyor. emeğiniz için teşekkürler
  • Yapay Zeka’dan İlgili Konular
    Isıtma/Soğutma Sistemi Tavsiyesi
    10 yıl önce açıldı
    Daha Fazla Göster
  • AjanGevrek kullanıcısına yanıt
    1 kere yapılacaksa for döngüsü daha mantıklı gibi duruyor.

    sizin yapmak istediğiniz boşalttıktan sonra mı doldurmak yoksa boşalırken aynı anda doldurmak mı?

    while döngüleri bana nedense zor geliyor. while döngüsünden çıkmak zorluyor beni :)
  • erenpullukcu kullanıcısına yanıt
    önce boşaltıp sonra dolduracağım. while döngüsü en çok giriş alırken zorluyor beni
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.