Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Atmega8][Bascom] Sterownik terrarium, poprawnosc układu

Dinop 19 Dec 2010 20:41 5852 9
Renex
  • #1
    Dinop
    Level 14  
    Witam
    Ze względu na to, że od niedawna posiadam terrarium zamieszkane przez ptasznika biało-kolanowego, postanowiłem zrobić sterownik terrarium kontrolujący temperaturę, wilgotność, oświetlenie i wentylacje. Jestem początkującym elektronikiem i jest to mój drugi układ na mikro kontrolerze w związku z tym mam kilka pytań odnośnie poprawności zaprojektowanego przeze mnie układu. Układ składa się z modułu sterującego oraz modułu wykonawczego z zasilaczem. Cały zestaw zasilany jest przez trafo toroidalne 105VA z odprowadzeniami 0-12-15-20V(takie miałem na stanie). Układ ma sterować dwoma żarówkami 15W 230V AC(dzień/noc), ultradźwiękowym generatorem mgły 1A 20V AC, grzałką rezystorową ok 50W(jeszcze nie zdecydowałem jakiej mocy będzie) 12V AC, łańcuchem białych diod led do oświetlania dziennego w cieple dni 15V DC, dwoma wentylatorami 12V DC(jeden od podawania mgły, drugi od grzałki) i dodatkowym złączem zwiernym do wykorzystania w przyszłości. Płytki zaprojektowałem w eagle.
    [Atmega8][Bascom] Sterownik terrarium, poprawnosc układu [Atmega8][Bascom] Sterownik terrarium, poprawnosc układu
    Mam pytanie czy płytki wykonane są prawidłowo? Czy wartości elementów są poprawne? Jak wykonać zegar na atmega88-20pu? Wiem ze atmega ma wewnętrzny RTC, jednak nie wiem jak go użyć. Znalazłem schemat zegarka na atmega 8 z użyciem rezonatora 33768Hz nie wiem tylko czy uda mi się taki zdobyć i jak napisać do niego program. Czy ten kwarc jest konieczny czy można wstawić 8MHz lub zostawić wejścia puste? Sterownik będzie wyposażony tylko czujnik DS18B20 i zegar i na ich podstawie będzie sterował wyjściami. Program mam już wstępnie napisany jednak mam problem z implementacją zegara. Układ będzie podtrzymywany przez ogniwo z baterii laptopowej o napięciu 4,1V w razie zaniku napięcia. Elementy których użyłem w projekcie płytki w większości posiadam w domu dlatego się na nie zdecydowałem.
    Jutro postaram sie wkleić kod programu w bascom jak trochę go dopracuję.
    Pozdrawiam
  • Renex
  • Helpful post
    #2
    mirekk36
    Level 42  
    Panie kolego ty przede wszystkim jak chcesz się dowiedzieć czy jest OK to pokaż schemat a nie same płytki.

    Chociaż coś mi się wydaje, po sposobie "MALOWANIA" że schematu nawet chyba nie zrobiłeś o zgrozo ;)

    Użyłem słowa "malowania" - bo po pierwsze widać, że ty to hmmm rysowałeś prawie jak w Panicie windowsowym za pomocą kresek w Eagle.

    Proponuję ci jednak utworzyć schemat i z niego utworzyć PCB, będziesz miał takie żółte linijki łączące, po których ładnie można prowadzić i trasować ścieżki. Toż to jest PODSTAWA przy tworzeniu PCB za pomocą takich programów. Nawet nie wiesz chyba jeszcze jak to ułatwia życie. A ty tymczasem używasz nie tego narzędzia = bo tylko tego do rysowania zwykłą keską i malujesz ścieżki narażając się na popełnienie miliona błędów.

    Ale nawet malując tą KRECHĄ można było (po kliknięciu prawym klawiszem myszki) zastosować łamania na zakrętach pod kątem 45st . A ty wszystko na kwadratowo pod kątem 90st ;) .... I jak widzę te ścieżki przy triakach (230V!!!!) to tylko się modlę żeby nie powstała u ciebie "kula ognista" przy próbie uruchamiania takiego układu. Toż można spokojnie bez zwiększania gabarytów płytki poodsuwać od siebie te ścieżki stosując zakręty tak jak się należy 45stopniowe.

    Masz więc już 2 babole. Bo pierwszy wynika z tego że nawet nie widać na pierwszy rzut oka czy gdzieś nie ma przerw. Toż ty malowałeś te ścieżki tylko do początku do obrysu PADÓW !!! zamiast chociaż do środka.

    Myślę że gdybyś pokazał schemat bo od tego ZAWSZE zaczyna się pracę to można byłoby ci podpowiedzieć jeszcze kilka innych kwestii gdzie zrobiłeś babole bo tak to nawet tego nie widać dobrze ale można się domyślać.
  • Renex
  • #3
    Dinop
    Level 14  
    Zacząłem całą robotę od rysowania schematu, ale po kilku próbach zrobienia z niego płytki poddałem się i stwierdziłem że taka płytkę mogę wykonać samemu. Schematu modułu wykonawczego nie mam ale postaram się zrobić. Tymczasem załączam schemat układu wykonawczego. [Atmega8][Bascom] Sterownik terrarium, poprawnosc układu
    Nad płytką z triakami jeszcze popracuję dziękuję za podpowiedzi.
  • Helpful post
    #4
    mirekk36
    Level 42  
    No i tak jak mówiłem, błędy już na etapie projektu (schematu):

    (pomijam już to że schemat jest narysowany okropnie - linie połączeń przełażą przez elementy, a pod wyświetlaczem LCD to już masakra - nawet nie wiadomo co tam się dzieje) - no ale rozumiem, że to początki - jednak zaobserwuj inne schematy i zobacz na czym polega ich rysowanie ok?

    1. Brak kondensatorów filtrujących przy zasilaniu procesora - a w układzie masz przekaźniki więc możesz się SROGO przejechać.

    2. nie wiadomo jak zasilasz przekaźniki - a na tym też możesz się przejechać

    3. Brak podłączenia zasilania do nogi AVCC - wprawdzie WYJĄTKOWO w przypadku m8 nie ma to znaczenia - jednak generalnie to MASAKRA takie pomijanie zasilania na AVCC czy też podawanie na jedną nogę VCC jeśli procek posiada ich kilka np w obudowach TQFP

    4. Zdecydowanie za duży kondensator elektrolityczny na wejściu stabilizatora 7805 (o zgrozo myślałem na początku że tak dałeś jakiś tranzystor) ale po opisie widać że to stabilizator - a przecież w EAGLE masz 7805 .... wystarczy użyć szukajki w EAGL'u

    5. Po co taka zwykła dioda prostownicza 1N4xxx od baterii - toż masz na niej duży i niepotrzebny spadek napięcia - daj jakąś diodę shottky od razu spadek zejdzie ;)

    6. Na wejście stabilizatora podajesz aż 15V ???? toż będzie się on GRZAŁ jak ..... pii... pii... piii.... [cenzura] ;) Postaraj się o napięcie rzędu 8-9V najlepiej - no góra 12V - chociaż już i przy 12V będzie potrzebny radiatorek - no chyba że chcesz stabilizator użyć jako grzałkę do terrarium ? może to i dobry wtedy pomysł ;)
  • #5
    Zbyszek_64
    Level 24  
    Zamiast eksprymentować ze sterownikiem ,którego budowa i testowanie może zająć Ci dużo czasu proponuję wykonać gotowy projekt sterownika akwariowego "Skalar".Do twojego terarium napewno możesz go wykorzystać.Może jedynie być problem z wilgotnością ,ale można spróbować sterować nawilżacz przaz układ dwóch niezależnych timerów.Przy minimalnej wiedzy na temat programowania można wykonać go bez problemu.Osobiście wykonałem dwie sztuki tego sterownika i każdy po niewielkich przeróbkach służy mi do obsługi różnych obiektów.
  • #6
    Dinop
    Level 14  
    Ad.1 Kondensatory są za stabilizatorem. Czy to nie wystarczy?
    Ad.2 Przekaźniki zasilane są przez tranzystory BC516 z osobnego stabilizatora 7812.
    Ad.3 O tym nie wiedziałem. Poprawie.
    Ad.4 Jaki powinien być kondensator? Szukajka w eagle nie znajduje nic po wpisaniu 7805 dlatego jest to co jest.
    Ad.5 Jak uda mi się znaleźć w domu diodę shottky to ja wymienię.
    Ad.6 Stabilizator jest zasilany z 15V dlatego, że chciałem zrobić wszystko na jednym transformatorze, a odnoga 12V wykorzystana jest na grzałkę więc mogą być spore wahania napięcia, dlatego użyłem 15V. Pomyślę jeszcze nad innym rozwiązaniem.

    Do Zbyszek_64 zastanawiałem się też nad takim rozwiązaniem jedank postanowiłem zrobić swój własny układ, który się wcale tak bardzo od "skalara" nie różni. Jest jego prostszą wersją dostosowana do moich potrzeb.
  • Helpful post
    #7
    mirekk36
    Level 42  
    Ad.1 - gdyby miało wystarczyć to bym nie pisał. Ale tu nie chodzi nawet o to że mają być dwa dodatkowe. Tzn para, jeden elektrolit rzędu 10-47uF a drugi ceramik 100nF - NAJWAŻNIEJSZE jest to że MUSZĄ być umieszczone (ta para) jak NAJBLIŻEJ nóg procesora. Zresztą taką parę daje się do KAŻDEGEO scalaka na PCB ;) a 7805 też jest scalakiem i obowiązują go te same zasady czyli także jak najbliżej nóg. No jedna zasada inna na wejściu elektrolit może być większy 100-220uF powiedzmy

    Ad2. no to już lepiej ;)

    Ad4. no pisałem że kondek na wejsciu stabilizatora to max 220uF. Szukajka w EAGLE na pewno znajduje, tylko daj pan gwiazkę na końcu tego co szukasz czyli tak: 7805*. A jak chcesz zakończyć czy ukryć efekty wyszukiwania to pozostawiasz puste pole i klikasz SZUKAJ ;)

    ad6. - no pomyśl , pomyśl - bo przy 15V będzie parzył ;)

    Dodano po 1 [minuty]:

    a przy okazji - zdecydowanie uważam że 100x lepiej samemu sobie zbudować coś takiego niż kupować gotowca. Już nie tylko dla własnej satysfakcji, ale dlatego żeby się poduczyć i wciągnąć w to jakże przyjemne hobby. Gdyby tak kupować tylko gotowce to po co byłoby np to forum? ;)
  • #8
    Dinop
    Level 14  
    Wprowadziłem w projekcie sporo zmian, napisałem program, zrobiłem kompletny schemat i wytrawiłem nowe płytki. Mam jednak problem z programem. Po wgraniu go do procesora program poprawnie się uruchamia i na wyświetlaczy wszystko działa dobrze. Jednak układ dziwnie steruje wyjściami. W momencie kiedy wyjście powinno być wyłączone na wyświetlaczu przy znaku wyjścia nie ma strzałki i wyjście jest rzeczywiście wyłączone(np. żarówka podłączona przez triak się nie świeci), jednak jak wzrośnie temperatura i wyjście powinno się załączyć i pozostać załączone (na wyświetlaczu pojawia się znak strzałki i zostaje tam do momentu aż wyjście może zostać wyłączone) żarówka podłączona na wyjściu zamiast świecić miga. Udało mi się jedynie ustalić że żarówka zapala się i gaśnie co drugie okrążenie pętli programu. Polecenie SET działa tak samo jak TOGGLE. Dzieje się tak samo na wszystkich wyjściach.

    Załączam kod programu i schemat i proszę o pomoc w rozwiązaniu problemu.
  • #9
    bald22
    Level 13  
    Witam. Udało się zaradzić problemom. Też chciałbym skorzystać z tego kodu ponieważ planuję zakup gekona. Proszę o działający kod jeśli taki już jest. Dziękuje.
  • #10
    Dinop
    Level 14  
    Witam

    U mnie sterownik na poprawionym programie działa już od dawna. W załączniku przesyłam wszystkie pliki powiązane z terrarium. Mam nadzieję, że jakoś to pomoże.
    Attachments: