logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

ATTINY45 - Sprawdzenie poprawności układu - automatyczne podlewanie

RADMOR_MAN 09 Mar 2013 21:58 3081 6
  • #1 12038987
    RADMOR_MAN
    Poziom 17  
    Witam, jestem początkujący i buduję sobie automatyczne podlewanie do kwiatków. Szkic programu od razu mi urósł w głowie, później jednak uświadomiłem sobie, że np. odczepienie czujnika i zalewa mi dom. Wykombinowałem zatem układzik, który moim zdaniem zabezpieczy mnie przed tego typu sytuacją. Ma ktoś jakieś sugestie odnośnie błędów na schemacie, ew. uproszczenia jakiegoś fragmentu kodu? Zastanawiam się jak będzie działać PWM na tej parze driver+mosfet. Jest to raczej dosyć szybkie połączenie, więc chyba nie powinno być problemów? PWM raczej będzie konieczny, z pompką jeszcze nie testowałem układu, ale na pewno trzeba będzie ją trochę "skręcić". Użyta zostanie pompka do spryskiwaczy od samochodu. Najpierw wydawało mi się, w sumie trochę bez pomyślunku, że pobiera ona na tyle mały prąd, że wysteruję wszystko driverami, które mają ok 1A const jednak doczytałem i zorientowałem się, że to naiwne i około tych 3A trzeba przewidzieć. Pompka zostanie przytwierdzona do 5l butelki po wodzie. Elektrody wykonałem z mosiężnych łusek od nabojów myśliwskich. Testuję układ od około dwóch tygodni, pomiar działa bardzo dobrze. Dodam jeszcze prostą regulację stopnia podlewania i wysuszenia, dipswitch 6pin, 3 piny i 5 kombinacji w fajnym, szerokim zakresie na wysuszenie i tyle samo na podlanie. I w sumie attiny45 zostanie wykorzystany w 100% jak dodam regulację. Studiuję we Wrocku, mieszkam w Słupsku, więc w wakacje układ będzie zdany kompletnie na siebie. Jeśli wszystko ok z moim schematem, jutro biorę się za zaprojektowanie PCB i niedługo pochwalę się efektem ;)

    ATTINY45 - Sprawdzenie poprawności układu - automatyczne podlewanie

    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #2 12039473
    excray
    Poziom 41  
    Kolego kiedyś rozważałem taki sam projekt i podsunę Ci jeszcze kilka swoich wątpliwości:
    - sonda musi być zasilana sygnałem AC inaczej szybko zacznie korodować
    - dobrze jakby układ miał orientację w porach dnia nocy - w najprostszym przypadku czujnik oświetlenia z opóźnieniem czasowym (latem jasno się robi dość wcześnie). Tak aby pompka nie włączała się nam o 1 w nocy budząc wszystkich w pokoju.
  • #3 12039586
    RADMOR_MAN
    Poziom 17  
    Rozważałem zasilanie sygnałem AC, ale zrealizowałem to inaczej. Tryb uśpienia swoją drogą, w sumie niepotrzebny bajer, ale bądźmy oszczędni. Spójrz na budowę pętli while, tak ją skonstruowałem, że odlicza do 450, a procesor śpi 8 sekund. odczyt z sondy jest robiony jeśli zmienna odczyt przypisana do warunku w pierwszym while jest równa 1. W sumie daje to odczyt wilgotności co godzinę, napięcie jest podawane na sondę tylko raz na godzinę przez 0,1s. Z czujnikiem zmierzchu słuszna uwaga, nie pomyślałem o tym, na dłuższą metę pompka co 3-4 noc będzie męcząca. Rezygnuję zatem z regulacji stopnia podlania, powiedzmy, że jest to bardziej uniwersalny parametr niż moment rozpoczęcia podlewania, a do zwolnionego wejścia podepnę prostacko fotorezystor.
  • #4 12049151
    RADMOR_MAN
    Poziom 17  
    Wprowadziłem drobne korekty do schematu, w kodzie zrobiłem diametralny porządek, powinno się go dużo przyjemniej czytać. Kod się ładnie kompiluje jednak na tym etapie prac zostanie przetestowany dopiero ,,in vivo'', dodam, że zajmuje 1502/4096 bajtów na attiny45, wszystkie nogi wykorzystane. Uporam się trochę z uczelnią (mało elektronicznie, już pół-inżynier budownictwa na PWr) i w weekend usiądę do projektowania PCB. Ktoś by powiedział budownictwo, po co komu programowanie, wszyscy jadą na kartkach, a ja pisze skrypty w matlabie i visualu ,np. 300 długości do siłowego odczytania z a-cada, wykorzystując obwody regionów (metoda zaiste brute-force, ale konieczna w przypadku np. splajnów) skryptem w matlabie dosłownie liczy się samo i zajmuje tyle co napisanie paru sprytnych linijek. Mikrokontrolery to dla mnie super zabawa + uczę się C (na razie tylko adruino, ale już niebawem..) i układam sobie to, co stosuję w "inżynierskiej" praktyce.

    ATTINY45 - Sprawdzenie poprawności układu - automatyczne podlewanie
    Kod: text
    Zaloguj się, aby zobaczyć kod
  • #5 12057137
    bgolab
    Poziom 22  
    Walczyłem z tym problemem i dałem sobie spokój gdy uświadomiłem sobie, że w domu jest 40 doniczek na 2 kondygnacjach.

    Problem rozwiązałem skutecznie przy pomocy blumatu.
    http://blumat.pl/
  • #6 12057666
    excray
    Poziom 41  
    Ja z kolei swego czasu jak rozważałem ten projekt trafiłem na kule nawadniające i też zrezygnowałem. Niestety dzisiaj wszystko można taniej i lepiej kupić aniżeli samemu robić.
  • #7 12057942
    RADMOR_MAN
    Poziom 17  
    No cóż, mogę jedynie zdobyć się na krótki wywód o następującej treści skoro odbiegamy od tematu. Kiedyś dzieci bawiły się na podwórku, jeździły na rowerach, ludzie robili sami kiełbasy, bimber, byli kreatywni, inżynierowie liczyli bez kalkulatorów i wszystko stało. Teraz wszyscy siedzą przed kompami, garbaci i bez emocji, jemy spleśniałą kiełbasę, nic nam się nie chce, inżynier nie zna tabliczki mnożenia, hale się walą. Ja tam "Π∑r**ΓΣ" to i jeszcze coś mi się chce pomimo tego, że nikomu nie opłaca. Kupiłem dzisiaj pompkę i uruchomiłem, wygląda to dobrze. Próbuję trochę zmodyfikować algortym programu, ale coś robię nielogicznie, nawet przy kompilacji rozmiar programu spada 3-krotnie. Chcę zrobić w ten sposób, że jeśli w poprzednim program wykryje, że jeśli w poprzednim "przejściu" była noc, a w obecnym mamy już dzień i dodatkowo kwiatek wymaga podlania to zanim podleje - zaczeka kilka godzin zanim wszyscy wstaną (czekanie realizuję pętlą for, żeby nie dawać długiego delay'a - nie wiem, czy daje to jakieś wymierne efekty?)

    Kod: text
    Zaloguj się, aby zobaczyć kod
REKLAMA