• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Problem ze sterowaniem przekaźnikiem w termostacie
#1
Witam
Na początku chcę się przyznać że niedawno rozpocząłem przygodę z Arnuino i dlatego może dla niektórych moje pytanie wyda się błahe Shy ale ja z tym już trzeci dzień siedzę i nie mogę dalej ruszyć. Dlatego proszę pomocy. Sad
Urządzenie ma działać w następujący sposób :
po podaniu masy na piny A0,A1,A3 i temperatura musi mieć mniej niż 10 stopni powinna zaświecić się dioda i załączyć przekaźnik 
Kod:
float temperatura; //Utworzenie zmiennej przechowującej temperaturę
int LM35 = A2;     //Czujnik podłączony do analogowego pinu 2
int reading = 0;
int pin_drzwi1 = A0;
int pin_drzwi2 = A1;
int pin_czujka = A3;
int pin_przekaznik = 13;
int pin_dioda = 12;
int pin_wolny = 10;
int pin_celsjusz = 11;
int nastaw = 10; // ustaw temperature

void setup()
{
 Serial.begin(9600);
 pinMode(pin_drzwi1, INPUT);
 digitalWrite(pin_drzwi1, HIGH);
 pinMode(pin_drzwi2, INPUT);
 digitalWrite(pin_drzwi2, HIGH);
 pinMode(pin_czujka, INPUT);
 digitalWrite(pin_czujka, HIGH);
 pinMode(pin_wolny, INPUT);
 digitalWrite(pin_wolny, HIGH);
 pinMode(pin_przekaznik, OUTPUT);
 digitalWrite(pin_przekaznik, HIGH);
 pinMode(pin_dioda, OUTPUT);
 digitalWrite(pin_dioda, HIGH);
 pinMode(pin_dioda, OUTPUT);
 digitalWrite(pin_dioda, HIGH);
 pinMode(pin_celsjusz, OUTPUT);
 digitalWrite(pin_celsjusz, HIGH);



}
void loop()
{
 reading = analogRead(LM35);
 temperatura = analogRead(LM35); //Odczytanie napięcia z czujnika temperatury
 temperatura = temperatura * 0.38828125; //Wyznaczenie temperatury

 Serial.print("Temperatura: ");
 Serial.println(temperatura);


 if (LM35 > (nastaw))
 {
   digitalWrite(pin_celsjusz, LOW);



   int drzwi1 = digitalRead(pin_drzwi1); //odczytujemy stan przycisku
   if (drzwi1 == LOW) { //jesli przycisk nie jest wcisniety

     int drzwi2 = digitalRead(pin_drzwi2); //odczytujemy stan przycisku
     if (drzwi2 == LOW) { //jesli przycisk nie jest wcisniety


       int czujka = digitalRead(pin_czujka); //odczytujemy stan przycisku
       if (czujka == LOW) { //jesli przycisk nie jest wcisniety



         digitalWrite(pin_przekaznik, LOW); //dioda ma byc zgaszona
         digitalWrite(pin_dioda, LOW); //dioda ma byc zgaszona



         int wolny = digitalRead(pin_wolny); //odczytujemy stan przycisku
         if (wolny == HIGH) { //jesli przycisk nie jest wcisniety

           digitalWrite(pin_przekaznik, HIGH); //dioda ma byc zgaszona
           digitalWrite(pin_dioda, HIGH); //dioda ma byc zgaszona
         }



       }
     }
   }
 }

}

Proszę pomocy Huh
 
Odpowiedź
  


Wiadomości w tym wątku
Problem ze sterowaniem przekaźnikiem w termostacie - przez mlamla - 31-12-2017, 12:53

Skocz do:


Przeglądający: 1 gości