Elektroda.pl
Elektroda.pl
X
Mitronik
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Mikroprocesorowa Trawiarka PCB

barti879 27 Lut 2014 18:27 25281 70
  • Mikroprocesorowa Trawiarka PCB

    Witam!
    Jakiś czas temu rozpocząłem naukę pisania programów na mikrokontrolery AVR w języku C++. Przeczytałem wiele tutoriali, poradników, itp., aż w końcu doszedłem do pisania własnych, prostych programów. Po kilku takich „pseudoprogramach” zdecydowałem, że teraz czas napisać coś bardziej rozbudowanego, a za razem przydatnego ;) Już od dawna w warsztacie brakowało mi trawiarki do płytek PCB, więc dlaczego nie? Rozpoczęły się prace…


    Założenia
    Przed przystąpieniem do budowy miałem kilka założeń dotyczących konstrukcji. Po pierwsze wszystko miało być wykonane własnoręcznie, w jak najprostszy sposób i technikami „warsztatowymi”. Trawiarka miała być również mało skomplikowana, ale co najważniejsze funkcjonalna.


    Zabieramy się do budowy
    Pierwszym elementem, który powstał był oczywiście program ;) Powstawał był modułowo, tzn. najpierw napisałem fragment obsługi LCD, potem DS’a, następnie termostatu, itd… Na końcu wszystkie elementy kodu poskładałem w spójną całość. Podkreślam, że jest to mój pierwszy tak rozbudowany program. Pewnie wielu z Was napisało by go dużo lepiej, a na pewno prościej.

    Tak prezentuje się kod. Jest w nim dużo komentarzy, ale jako, że jestem początkujący pomagały mi one w eliminowaniu błędów (choć pewnie nie udało się wyeliminować wszystkich). Biblioteki odczytu z DS'a oraz wyświetlania na LCD zapożyczyłem ze strony http://radzio.dxp.pl ;)

    Kod: cpp
    Zaloguj się, aby zobaczyć kod



    Podczas pisanie programu powstał również kod do "pseudodebouncingu" (tak go nazwałem :D) klawiszy. Wykorzystuje on timer i przerwania w trybie CTC. W przerwaniu co ok. 175ms (dobrane doświadczalnie) sprawdzane jest czy któryś z przycisków jest wciśnięty i w razie wystąpienie niskiego stanu na którymś z portów (klawisz wciśnięty) ustawiana jest odpowiednia flaga. Tak wygląda program dla ATmega 8:
    Kod: c
    Zaloguj się, aby zobaczyć kod








    Prototyp układu powstał oczywiście na płytce stykowej. Gdy był już w pełni sprawdzony i działający przeniosłem go na PCB. Płytkę zaprojektowałem w Eagle’u, wytrawiłem termotransferem i pocynowałem stopem Lichtenberga (tak na marginesie – bardzo polecam ten sposób cynowania ;) ).

    Mikroprocesorowa Trawiarka PCBMikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB


    Sercem sterownika jest mikrokontroler Atmega8 pracująca na wewnętrznym oscylatorze 1MHz. Układ ten steruje również poprzez optotriak MOC3041 oraz triak BT138 grzałką oraz napowietrzaczem. Rolę czujnika temperatury pełni DS18b20 produkcji Dallasa. Za wyświetlanie odpowiedzialny jest wyświetlacz LCD 16x2 ze sterownikiem HD44780. Układ zasilany jest z ładowarki od telefonu (akurat miałem w domu). Grzałka ma moc 100W i podgrzewa roztwór do 40 stopni w około 12-15 min. Czujnik zabezpieczyłem poprzez włożenie go w rurkę termokurczliwą, zalanie silikonem i zaciśnięcie koszulki. Operację tę powtórzyłem po zaschnięciu pierwszej warstwy, więc wytrawiacz raczej sobie z nim nie poradzi. Powietrze jest rozprowadzane przez kurtynę napowietrzającą (dostępna w każdym sklepie akwarystycznym).

    Czas kleić akwarium… Powstało ono z 4mm tafli szkła (ciętej oczywiście nożem w warsztacie - tak jak mówiły założenia). Cięcie szkła nie należy do prostych rzeczy ale doszedłem już do wprawy. Przycięte elementy posklejałem silikonem. Akwarium ma wymiary 28cm x24cm x2cm i mieści troszkę powyżej litra płynu. Napowietrzacz i grzałkę miałem już z poprzedniego podejścia do budowy trawiarki – niestety było to tylko akwarium z grzałką i napowietrzaniem bez żadnego sterowania, które niezbyt spełniało swoją rolę. Mając te elementy przyszedł czas na obudowę. Wykonałem ją z blachy ocynkowanej oraz kawałka jakiejś wodoodpornej sklejki. Blacha gięta sposobem „na dwa profile” ;D Po prostu wkłada się ją między dwa profile i delikatnie dogina gumowym młotkiem. Następnie obudowa została powiercona, wyszlifowana i pomalowana kilkoma warstwami białego i bezbarwnego spray’u. Moim zdaniem jak na domowe warunki uzyskałem całkiem zadowalając efekt. Gdy wszystko wyschło zamontowałem akwarium i płytki z elektroniką. Ostatnim krokiem było zalaminowanie oraz naklejenie panelu przedniego – to już koniec budowy!


    Zdjęcia z budowy

    Mikroprocesorowa Trawiarka PCBMikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB

    UWAGA! W układzie występują napięcia (230V) niebezpieczne dla życia lub zdrowia!



    Opis działania
    Po włączeniu zasilania wyświetla się napis powitalny. Po 3 sekundach naszym oczom ukazuje się menu ustawień. Możemy tu ustawić temperaturę procesu trawienia (w zakresie od 30 do 60 stopni), tryb mieszania (automatyczny, ciągły lub wyłączony) oraz czas przerw w mieszaniu. Temperatura trawienia nie jest zapisywana do EEPROM a jej początkowa wartość to 40 stopni, co jest w 99% temperaturą, której potrzebuję. Histereza jest programowo ustawiona na +/-1 stopień. Po kliknięciu przycisku włączającego proces na ekranie wyświetlana jest aktualna oraz ustawiona temperatura. Po jego ponownym kliknięciu przechodzimy z powrotem do trybu ustawień. Diody sygnalizują aktualny stan grzałki i napowietrzacza.


    Podsumowanie
    Urządzenie, które wykonałem nie jest skomplikowane, jednak w 100% spełnia swoje zadanie. Podczas jego budowy nauczyłem się wielu rzeczy. Teraz już pisanie programów staje się coraz prostsze, szyby nie stawiają takich oporów, a prostoliniowe cięcie blachy nie jest trudne!

    Koszty jakie poniosłem przy budowie to około 50-60 zł. Większość elementów miałem – musiałem kupić tylko spray’e oraz kilka układów elektronicznych. Reszta potrzebnych rzeczy leżała gdzieś w zaciszu szuflandii :D

    Jestem bardzo zadowolony z pracy trawiarki. Bardzo ułatwia i umila wykonywanie płytek drukowanych. Polecam każdemu elektronikowi zbudowanie podobnej konstrukcji!


    Na koniec kilka zdjęć finalnego wyglądu oraz filmik z działania.

    Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB Mikroprocesorowa Trawiarka PCB



    Link



    W załączniku znajdują się pliki potrzebne do zbudowania trawiarki mojego projektu (program, wzory płytek PCB, itp)


    Pozdrawiam i czekam na opinie z Waszej strony ;)

    Bartek

    Wsad zmieniony na najnowszy.

    Załączniki:

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz pendrive 32GB.
  • Mitronik
  • #2 27 Lut 2014 20:55
    ralf13526
    Poziom 14  

    Niezła ta wytrawiarka , plus za obudowe mało kto potrafi zrobic tak dobrą obudowe. W jaki sposób docinałes otwór na wyswietlacz? a tą naklejke jak zrobiłeś?

  • #3 27 Lut 2014 21:06
    barti879
    Poziom 18  

    Otwór wycinany był multiszlifierką z założoną tarczą do cięcia metalu, a potem wygładzony pilnikiem. Panel przedni wydrukowałem na drukarce, zalaminowałem i przykleiłem do obudowy ;)

  • Mitronik
  • #4 27 Lut 2014 21:38
    adrian1201
    Poziom 29  

    Zanużenie tej grzałeczki wiadomo jakiej produkcji ,nie wiem czy to dobry pomysł?

  • #5 27 Lut 2014 21:44
    barti879
    Poziom 18  

    Cytat:
    Zanużenie tej grzałeczki wiadomo jakiej produkcji ,nie wiem czy to dobry pomysł?


    Moim zdaniem nie powinno się z nią nic stać, bo nie zostawiam wytrawiacza w pojemniku, tylko po trawieniu przelewam go do słoika. Po drugie to nie widziałem jeszcze konstrukcji trawiarki, w której grzałka nie byłaby zanurzona w roztworze trawiącym.

  • #6 27 Lut 2014 21:50
    malina555
    Poziom 14  

    Pytanie "za 100pkt." do kolegi barti879 odnoście za laminowanego papieru:
    Czy w miejscu gdzie jest wyświetlacz również jest folia ??? Jeśli tak to w jaki sposób kolega to zrobił ??? Bo podczas laminowania ten klej foli w moim przypadku przykleja się oczywiście do kawałka tekturki (podkładam żeby dobrze przycisnęło wydruk bo mam oddalone od siebie wałki bo przerabiałem laminator pod termotransfer pcb), którą podkładam sobie pod wydruk w czasie laminowania a jak próbowałem podłożyć drugą warstwę folii to pozalaminowaniu pojawiły się plamy kleju między warstwami :/

  • #7 27 Lut 2014 22:02
    barti879
    Poziom 18  

    W miejscu na wyświetlacz jest oczywiście folia - dla ochrony. Ja swój frontpanel laminowałem w punkcie ksero, bo niestety nie dysponuję własnym laminatorem i tam nie mieli problemu z plamami kleju. Niestety mieli z czym innym przez co laminowałem wszystko 3-krotnie :/ Najlepiej będzie jak też podejdziesz do takiego punktu. To nie jest drogie (płaciłem bodajże 2,5zł za sztukę ).

  • #8 28 Lut 2014 07:43
    adrian1201
    Poziom 29  

    Nie chodzi mi żeby nie zanurzać grzałki (na każdej jest kreska z poziomem do którego ma być zalana) bo jak puści ta marnej jakości guma to roztwór dostanie się do grzałki do środka a to może okazać się nie zbyt bezpieczne.U mnie wysokość akwarium dobrana do wysokości grzałki ,płyn zalewam do kreski poziomu grzałki i jest ok.

  • #9 28 Lut 2014 08:01
    el_koral
    Poziom 10  

    Bardzo fajne wykonanie. Mam tylko jedno pytanie odnośnie obudowy bo nie widać tego na zdjęciach. Czy metalowe części obudowy są podłączone do przewodu ochronnego?

  • #10 28 Lut 2014 08:35
    barti879
    Poziom 18  

    Co do kreski na grzalce to w moim przypadku podpisana jest ona jako minimalne zanurzenie. Tez myslałem nad pionowym ustawieniem grzałki ale zrezygnowałem z tego, ponieważ nie zawsze wlewam roztworu do pełna.

    Przewód ochronny jest oczywiście podłączony do metalowej obudowy :)

  • #11 28 Lut 2014 09:44
    aneuro
    Poziom 16  

    Tyle zachodu i zaawansowanego sterowania aż mikroprocesorem, podczas gdy takie urządzenie to załącza się jednym przyciskiem włącz i wyłacz, bo przecież temperaturę można zwykłym montażowym potencjometrem ustawić i nie ma zwykle potrzeby ani czasu bawić się w jej wyciskanie przyciskami-wolę pokrętło potencjometru przekręcić w razie czego.
    To samo z bąblami powietrza.
    Ostatecznie jak już to wystarczą 2a ADC na ewentualną zmianę parametrów i odczyt potencjometrów w mikroprocesorze+ 3ci na pomiar temperatury zwykłym NTC + 2a piny na wyjściowe PWM.
    Jednym słowem ATTiny85 w DIP8 zasilany z sieci 230VAC przez mini trafo 2W załatwia sprawę definitywnie, bo jak nie będzie w gniazdku 230VAC to i tak nic nie wytrawimy tym urządzeniem.

    barti879 napisał:

    Układ zasilany jest z ładowarki od telefonu (akurat miałem w domu).

    Sprawdzałeś czy ta chińska ładowarka ma separację galwaniczną wyjścia od sieci 230VAC?

    barti879 napisał:
    Moim zdaniem nie powinno się z nią nic stać, bo nie zostawiam wytrawiacza w pojemniku, tylko po trawieniu przelewam go do słoika.

    To to juz w ogóle kompletnie nie praktyczne-bawić się z przelewanim tego paskudztwa co chwilę.
    barti879 napisał:

    Po drugie to nie widziałem jeszcze konstrukcji trawiarki, w której grzałka nie byłaby zanurzona w roztworze trawiącym.

    Proszę bardzo -zaleta jest taka, że jak w gniazdku nie ma 230VAC, to.... stawiamy na kuchence gazowej i... też możemy wytrawić nasze prototypwe płytki, bo przecież finalny produkt i tak maszyny w fabryce płytek robią to teraz, bo komu by się chciało wiele razy robić to samo ;)
    Mikroprocesorowa Trawiarka PCB

    BTW Grzałka 0.5kW. Jak włącza się pompka z bąbelkami powietrza, to znaczy że roztwór ma już odpowiednią temperaturę i można wkładać płytki.
    Diody do sygnalizacji grzania, pompki i zasilania 230VAC.
    Ot i cała filozofia trawienia :arrow:

  • #12 28 Lut 2014 10:08
    barti879
    Poziom 18  

    Może i masz rację, co do tej "trawiarki" ze zdjęcia. Można wszystko podgrzewać na kuchence, bez sterowników i innych rzeczy. Równie dobrze otwory możemy wiercić cały czas wiertarkami ręcznymi... Ale jeśli można to zrobić w bardziej wygodny i prosty sposób to dlaczego z niego nie skorzystać? Przecież cała technika idzie do przodu i wszystko się unowocześnia. Druga sprawa jest taka, że dzięki tej trawiarce naprawdę dużo się nauczyłem i dało mi to duuużo satysfakcji.

  • #13 28 Lut 2014 12:12
    MasMas
    Poziom 16  

    Bardzo estetyczna konstrukcja. Obudowa z blachy również fajnie wyszła (a nie myślał kolega o PCV (pvc)? Dużo łatwiej obrabiać).


    Za to zawsze, przy prawie każdej wytrawiarce na elektrodzie, znajdzie sie jakiś "cwaniak", który będzie krytykował sens wytrawiarki, mówiąc, że to "niepotrzebne, zbędne, przerost formy, po co to jak można prościej" itd.
    I oczywiście zawsze będzie jeszcze pokazywał zdjęcie swojej obskurnej, partyzanckiej "wytrawiarki" która to jest super niezawodna i nawet bez 230 zadziała (serio? takie macie przerwy w dostawie, że to jest zaleta?).

    Otóż są osoby, które cenią sobie porządnie wyglądające i działające urządzenia i nie mają ochoty cały czas męczyć się z jakimiś partyzanckimi rozwiązaniami i lubią zrobić rzeczy porządnie. Po to są wytrawiaki. Więc jeśli komuś wystarcza "pudełko w pudełku" do trawienia, to proszę bardzo. Ale niech nie narzeka, że ktoś umie zrobić to profesjonalnie w domu.

  • #14 28 Lut 2014 12:34
    ZBIQ
    Poziom 17  

    Ja powiem z własnej praktyki.
    Sam zbudowałem bardzo podobne urządzenie (do znalezienia na forum) i powiem, że to jest przesada.
    Wystarczą włącznik do bąbli i najprostszy termostat do grzałki (z histerezą kilku stopni).

    Ale konstrukcja niczego sobie :).

    Pozdrawiam.

  • #15 28 Lut 2014 12:49
    aneuro
    Poziom 16  

    MasMas napisał:
    Więc jeśli komuś wystarcza "pudełko w pudełku" do trawienia, to proszę bardzo.

    Chyba nie przeczytałeś uważnie. Autor tego wątku nie widział rozwiązania wytrawiarki, gdzie grzałka nie jest zanurzona w roztworze, więc mu pokazałem :D

    To że akurat na tym zdjęciu jest zwykła ruska grzałka do herbaty i sterowanie temperaturą... termostatem od ogrzewania podłogowego, co za różnica?

    Miejmy nadzieję, że dał radiatory na te swoje triaki, bo jak ktoś kiedyś zapomni i podłaczy silniejszą grzałkę to zrobi się trochu gorąco w tej super szczelnej obudowie ;)
    Jakoś trochu mało miejsca na sensowne założenie radiatora i nie ma go do czego przykręcić, bo tuż przy triakach są wyprowadzenia obciążeń 230VAC.

    Tak na marginesie, na tym super profesjonalnym filmie z działania tej wytrawiarki, to mieszanie takie średnie.
    Lepiej sprawdza mi się sitko z podiurawionym wężykiem od spodu, bo bąbelki w wielu miejscach wychodzą z tego a nie jak tutaj w kilku miejscach tylko.

    Oczywiście pomijam, to że mieszanie dodatkowo jeszcze jest na silniku od wycieraczek jest zrobione i co 4sekundy ok. 1/4 pojemności tego zbiornika jest konkretnie wymieszana.

    To, że coś ładnie wygląda, nie znaczy że funkcjonalnie jest dopracowane i odporne na awarie ;)
    W moich wytrawiarkach w roztworze z trawionymi płytkami nie ma niczego poza tworzywami sztucznymi, a całość można zwyczajnie zamknąć po zakończeniu wytrawiania, a nie bawić się w jakieś przelewanie do słoików, bo to przecież nie jest hodowla złotych rybek, tylko w warsztacie ma stać po okapem z wentylatorem odprowadzającym szkodliwe opary z pomieszczenia.

  • #16 28 Lut 2014 12:55
    marcinko_k
    Poziom 11  

    Możesz wrzucić listę elementów ;)
    Ogólnie projekt jak dla mnie genialny prosto, tanio i solidnie.
    Możesz podać wymiary swego akwarium do trawienia.

    Chodzi mi najbardziej o C2 i R2 :)
    Jakim napięciem zasilasz układ?
    Było by fajnie jak byś opisał wyjścia led :)

  • #17 28 Lut 2014 14:52
    tehaceole

    Poziom 28  

    Wykonanie zewnętrzne bardzo mi się podoba. Urządzenie prezentuje się estetycznie i sprawia wrażenie fabrycznego. Przyczepię się tylko do softu:
    - czy aby na pewno jest to Kolego C++ a nie C...? :),
    - zamiast

    Kod: c
    Zaloguj się, aby zobaczyć kod
    w iluś tam linijkach kodu zdefiniuj sobie makro
    Kod: c
    Zaloguj się, aby zobaczyć kod
    a w kodzie żyj wtedy
    Kod: c
    Zaloguj się, aby zobaczyć kod
    - w ten sposób, gdy będziesz chciał coś zmienić w pinologii to zmieniasz jedynie w jednym miejscu a nie w kilkudziesięciu rozsianych po różnych częściach programu,
    - dobrze, że stosujesz debouncing klawiszy, ale w Twoim wykonaniu nie tędy droga. Patrz uwaga poniżej,

    edit: teraz dopiero dopatrzyłem, że to nie debouncing a samopowtarzanie. Złe podejście! Patrz uwaga niżej.

    - w następnych programach postaraj się wprowadzić inne techniki opóźniania niż delay_ms.
    Poczytaj o tym, bo warto od razu przejść na taki "wyższy poziom" niż brnąć w ślepą uliczkę z blokowaniem programu przez zbędne delaye.

    Podsumowując: gratuluję udanego projektu i życzę kolejnych fajnych konstrukcji. :)

  • #18 28 Lut 2014 15:09
    konrad123456
    Poziom 15  

    Projekt wytrawiarki niczego sobie mi się bardzo podoba .
    Czemu jak zmieniasz temperaturę wszystko wyłącza sie ... Przecież grzałka mogła by dalej grzać no chyba że zejdziemy ustawianą temperaturą poniżej temperatury aktualnej w akwarium.

  • #19 28 Lut 2014 16:19
    kaka0204
    Poziom 28  

    tehaceole napisał:
    - w następnych programach postaraj się wprowadzić inne techniki opóźniania niż delay_ms.
    Poczytaj o tym, bo warto od razu przejść na taki "wyższy poziom" niż brnąć w ślepą uliczkę z blokowaniem programu przez zbędne delaye.


    Nawiązując do tego co kolega napisał, to poczytaj o timerach programowych. Dzięki nim będziesz miał opóźnienie bez blokowania programu, ew. możesz zrobić jakąś pętlę for i tam wpisywać wstawkę z asemblera "NOP" ileś razy.
    Pozdrawiam.

  • #20 28 Lut 2014 18:21
    barti879
    Poziom 18  

    marcinko_k napisał:
    Możesz wrzucić listę elementów ;)
    Ogólnie projekt jak dla mnie genialny prosto, tanio i solidnie.
    Możesz podać wymiary swego akwarium do trawienia.

    Spis elementów do samego układu (bez gniazd, włączników, itp. na obudowie):
    ATmega8
    LCD 2x16 ze sterownikiem HD44780
    optotriak MOC3041 x2
    triak BT138 x2
    DS18b20
    potencjometr montażowy 10k
    rezystor 220Ω x2
    rezystor 4k7
    rezystor 10k
    kondensator 100nF
    złącza ARK x2
    listwa wtyków goldpin
    listwa gniazd goldpin
    podstawka DIL8 x2
    podstawka DIL28
    switch x4
    dioda LED 5mm x3

    Do tego oczywiście trochę przewodów, itp.

    Układ zasilam z ładowarki do telefonu (tak jak pisałem w artykule).



    konrad123456 napisał:
    Projekt wytrawiarki niczego sobie mi się bardzo podoba .
    Czemu jak zmieniasz temperaturę wszystko wyłącza sie ... Przecież grzałka mogła by dalej grzać no chyba że zejdziemy ustawianą temperaturą poniżej temperatury aktualnej w akwarium.


    Przycisk włącz/wyłącz ma właśnie takie zadanie. Domyślnie jest on używany do włączenia i wyłączenia procesu trawienia, a nie jak na filmiku do zmiany temperatury bądź innych parametrów (choć może być tak używany).




    Kolego tehaceole i kaka0204 . Dziękuje za pomocne rady, na pewno z nich w przyszłości skorzystam ;) Tak jak pisałem w artykule, jest to mój pierwszy tak rozbudowany program i na pewno ma wiele błędów (m.in. te o których pisaliście). Człowiek najlepiej uczy się na własnych błędach, więc Wasze rady na pewno mi pomogą przy pisaniu kolejnych programów.

  • #21 28 Lut 2014 19:11
    aneuro
    Poziom 16  

    tehaceole napisał:
    Poczytaj o tym, bo warto od razu przejść na taki "wyższy poziom" niż brnąć w ślepą uliczkę z blokowaniem programu przez zbędne delaye.

    W sumie czy aby przypadkiem migająca dioda w tempie 1s ze zmiennym wypełnieniem na jakimkolwiek timer to nie jest program z tych w rodzaju "Hello AVR!" :D
    Brakuje mi ewidentnie tutaj jakiegokolwiek ISR'a ;)

    Cytat:

    // Clock click @ 1ms (1000 Hz) for F_CPU 1,4,8 MHz
    ISR(TIMER1_OVF_vect) {

    // Time in miliseconds
    time_ms++;
    clock_ms++;
    clock_pwm_ms++;
    ...
    // Another clock second
    if(clock_ms>=CLOCK_TIMER_HZ) {
    clock_s++;
    clock_ms= 0;
    }
    ...
    }


    Kolega wskoczył od razu na głębokie wody, no ale obsługa przerwań to podstawa, żeby coś sensownego zrobić bez komplikowania bez sensu kodu programu na mikrokontrolerach.

    W sumie jest tutaj jakiś timer inicjalizowany, no ale nieco jakieś karkołomne konstrukcje w stylu:
    Cytat:
    if(TCNT1 >=15625)
    {
    TCNT1=0; //zeruj timer
    licznik_czasu++; //dodaj jeden do licznika czasu
    }


    Program jest do przepisania od nowa generalnie ;)

  • #22 28 Lut 2014 19:46
    kaka0204
    Poziom 28  

    aneuro napisał:
    Brakuje mi ewidentnie tutaj jakiegokolwiek ISR'a

    Przyjrzałem się teraz dokładniej programowi i mi tutaj brakuje nawet globalnego zezwolenie na przerwania :D

    Kod: c
    Zaloguj się, aby zobaczyć kod

  • #23 28 Lut 2014 19:55
    marcinko_k
    Poziom 11  

    barti879 napisał:
    Układ zasilam z ładowarki do telefonu (tak jak pisałem w artykule).

    Różne ładowarki = różne napięcia :)

  • #24 28 Lut 2014 20:27
    barti879
    Poziom 18  

    aneuro napisał:
    Program jest do przepisania od nowa generalnie

    Pewnie masz rację co do jego "karkołomności" i wielu zawartych błędów ale przecież każdy nowicjusz je popełnia. Jak już wspominałem jest to mój pierwszy w pełni funkcjonalny kod i jestem dumny, że w ogóle działa. W kolejnych będę starał się uniknąć wspomnianych błędów i każdy następny popracować nad ich poprawnością ;)


    kaka0204 napisał:
    Przyjrzałem się teraz dokładniej programowi i mi tutaj brakuje nawet globalnego zezwolenie na przerwania

    Nie ma globalnego zezwolenia na przerwania, ponieważ nie zostały one wykorzystane. Timera użyłem tylko ako licznik impulsów, wiec nie ma tutaj żadnych przerwań.


    marcinko_k napisał:

    barti879 napisał:
    Układ zasilam z ładowarki do telefonu (tak jak pisałem w artykule).

    Różne ładowarki = różne napięcia


    Ładowarki do telefonu z reguły mają 5V - takim też napięciem zasilam mój układ.

  • #25 28 Lut 2014 20:42
    Freddy
    Poziom 43  

    marcinko_k napisał:
    barti879 napisał:
    Układ zasilam z ładowarki do telefonu (tak jak pisałem w artykule).

    Różne ładowarki = różne napięcia :)

    Ładowarki do telefonu o wielu wielu lat mają 5V.
    aneuro napisał:
    ...Sprawdzałeś czy ta chińska ładowarka ma separację galwaniczną wyjścia od sieci 230VAC? ...

    Nikt, a zwłaszcza autor nie pisał, że to chińska ładowarka. Poza tym nie widziałem jeszcze na oczy ładowarki do telefonu bez separacji od napięcia sieci 230V.

  • #26 28 Lut 2014 21:23
    marcinko_k
    Poziom 11  

    Mikroprocesorowa Trawiarka PCB
    Może mi ktoś powiedzieć czego mój B327 zrobił się czarny i nie trawi, jakiś wogóle dziwny bo innego nie mieli, firmy no name ;)


    Edit: Płytki do trawiareczki gotowe ;)
    Mikroprocesorowa Trawiarka PCB

    Edit: Udostępnisz przedni panel do druku ;)

  • #27 28 Lut 2014 23:27
    robnon01
    Poziom 11  

    marcinko_k napisał:
    Może mi ktoś powiedzieć czego mój B327 zrobił się czarny i nie trawi, jakiś wogóle dziwny bo innego nie mieli, firmy no name :wink:

    Możliwe, że wszedł w reakcję z naczyniem w którym go podgrzewałeś.

  • #28 28 Lut 2014 23:30
    marcinko_k
    Poziom 11  

    robnon01 napisał:
    marcinko_k napisał:
    Może mi ktoś powiedzieć czego mój B327 zrobił się czarny i nie trawi, jakiś wogóle dziwny bo innego nie mieli, firmy no name :wink:

    Możliwe, że wszedł w reakcję z naczyniem w którym go podgrzewałeś.

    Sprawa bardzo dziwna bo zawsze w tym samym i dziś dopiero taka sytuacja pierwszy raz :)

    Edit : I jak da radę opisać złącze led i przycisków :)

  • #29 01 Mar 2014 00:03
    Karol966
    Poziom 30  

    Nie powinno się projektować płytek w taki sposób, że ścieżki układa się pod kątem 90' (o ile mi wiadomo, dąży się do jak najkrótszych połączeń).

    Izolacja galwaniczna (optotriaki) jest po to, aby zabezpieczyć od siebie nawzajem obwody o różnych poziomach napięć. Stosowanie optotriaków bez zachowania minimalnych odległości między ścieżkami jest średnio sensowne. Na płytce
    Mikroprocesorowa Trawiarka PCB
    widać, że między ścieżką od jednej z katod triaka a masą cyfrówki jest, hmm, na oko mniej niż 1mm ;)

    Co do programowania, jeśli ktokolwiek obawia się tak timerów + przerwań to niech naprawdę się przełamie. Z resztą co tu strasznego? Wujek google ma na wszystko odpowiedzi (prawie na wszystko ;) ). Gdy już raz nauczy się stosować banalnej metody chociażby odczytu klawiszy co zadany czas lub odświeżania ekranu to już nigdy więcej nie skorzystasz z czegoś takiego jak _delay_ms(x) gdzieś w programie ;)

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Wytrawiarka wygląda na starannie wykonaną, mam jednak wrażenie, że jest "toporna".

  • #30 01 Mar 2014 08:53
    barti879
    Poziom 18  

    marcinko_k napisał:
    Edit : I jak da radę opisać złącze led i przycisków

    Mogę opisać je jako wyjścia ATmegi i jest to odpowiednio:
    PC5 - dioda sygnalizująca mieszanie
    PC4 - dioda sygnalizująca grzanie
    PC3 - przycisk -
    PC2 - przycisk +
    PC1 - przycisk "dalej"
    PC0 - przycisk włącz/wyłącz


    Karol966 napisał:
    Wytrawiarka wygląda na starannie wykonaną, mam jednak wrażenie, że jest "toporna".

    W swoich konstrukcjach zazwyczaj biorę wszystko na wyrost i pewnie dlatego takie wrażenie. Z własnego doświadczenia wiem, że lepiej dać coś bardziej wytrzymałego, niż potem poprawiać - taki zboczenie "zawodowe" ;D