Skocz do zawartości

dulo

Użytkownicy
  • Zawartość

    2
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    1

dulo wygrał w ostatnim dniu 15 lipca

dulo ma najbardziej lubianą zawartość!

Reputacja

11 Dobra

O dulo

  • Ranga
    1/10

Informacje

  • Płeć
    Kobieta
  • Lokalizacja
    Gdańsk

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Cześć! To mój pierwszy post, a także pierwszy projekt jaki zrealizowałam przy pomocy Arduino. Zastanawiałam się czy w ogóle wrzucać swój banalny projekt ale może przyda się komuś kto tak jak ja dopiero zaczyna działać w temacie Arduino. Za pare dni wyjeżdżam, a że nie chciałam zostawiać głównie pomidorów na pastwę losu albo znajomych postanowiłam więc zbudować system podlewania. Czasu było mało ale chyba się udało. Po drodze miałam dwie koncepcje, jedna zakładała podlewanie o konkretnej godzinie, a druga podlewanie kiedy się ściemni. Ostatecznie zdecydowałam się na użycie RTC ale wrzucę oba warianty. Możliwe, że po przyjeździe będę kontynuować prace i dodawać kolejne elementy jak wyświetlacz z odczytem parametrów (temp, wilgotność) itd. Mam nadzieję, że o niczym nie zapomniałam i post jest poprawny . Elementy projektu: Arduino UNO Pompa do wody 12V Zasilacz 12V Koszyk na baterie + 6x AA Moduł przekaźnika 1-kanałowego 5V Zegar czasu rzeczywistego (RTC) DS3231 (koncepcja 1) Fotorezystor + opornik (koncepcja 2) Wężyki fi6 i fi4 Trójniki i czwórniki do wężyków Koncepcja z fotorezystorem: const int pumpPin = 8; // Zdefiniowanie pinów przekaźnika pompy i fotorezystora const int lightPin = A0; const long onTime = 30 * 1000; // Czas działania pompy 30s const int dayResistance = 150; // Wartość graniczna z fotorezystora dla dnia const int nightResistance = 80; // Wartość graniczna z fotorezystora dla nocy int lightReading = 0; boolean isDay = true; void setup() { Serial.begin(9600); pinMode(pumpPin,OUTPUT); // Wyjście na moduł przekaźnika digitalWrite(pumpPin, HIGH); } void loop() { int lightReading = analogRead(lightPin); // Odczytanie realnej wartości z fotorezystora Serial.println(lightReading); // Wyświetlenie wartości w konsoli if (isDay and lightReading < nightResistance) { digitalWrite(pumpPin, LOW); delay(onTime); digitalWrite(pumpPin, HIGH); isDay=false; } if (!isDay and lightReading > dayResistance) { isDay = true; } } Koncepcja z RTC: #include <DS3231.h> int pumpPin = 8; DS3231 rtc(SDA, SCL); Time t; const int OnHour = 11; const int OnMin = 00; const int OnSec = 0; const int OffHour = 11; const int OffMin = 00; const int OffSec = 45; void setup() { Serial.begin(9600); rtc.begin(); pinMode(pumpPin, OUTPUT); digitalWrite(pumpPin, HIGH); } void loop() { t = rtc.getTime(); // Odczytanie czasu Serial.print(t.hour); // Wyświetlenie w konsoli Serial.print(":"); Serial.print(t.min); Serial.print(":"); Serial.print(t.sec); Serial.println(" "); delay (1000); if(t.hour == OnHour && t.min == OnMin && t.sec == OnSec){ digitalWrite(pumpPin,LOW); Serial.println("POMPA WŁĄCZONA"); } else if(t.hour == OffHour && t.min == OffMin && t.sec == OffSec){ digitalWrite(pumpPin,HIGH); Serial.println("POMPA WYŁĄCZONA"); } }
  2. Cześć, jestem Ola, studiuję mechanikę i budowę maszyn II st. w Gdańsku. Muszę przyznać, że nigdy nie byłam dobra z elektroniki ale przyszła pora na zmiany. Obecnie pracuję nad polewaczką do balkonowego ogródka z pomocą Arduino i kursów na Forbocie
×
×
  • Utwórz nowe...