Trawiarka do Płytek


8.77778
Ocena: None Średnia: 8.8 (18 głosujących)

Trawiarka do płytek drukowanych jest najpotrzebniejszym narzędziem w warsztacie każdego elektronika. W większości przypadków do wykonania całkiem dobrych płytek drukowanych wystarczy wytrawiacz w słoiku, jednak w pewnym momencie podczas wykonywania upragnionego hobby przychodzi czas na zrobienie czegoś więcej. Jeśli zechcemy kontrolować bardziej dokładnie proces trawienia płytki, a w szczególności temperaturę roztworu trawiącego, koniecznym stanie się wykonanie jakiegoś prostego sterownika. Opisywany układ jest właśnie takim prostym sterownikiem temperatury z możliwością ustawienia temperatury zadanej. Sama płytka sterownika powstała kilka lat temu i była projektowana jeszcze pod mikrokontroler AT89C4051. W obecnych czasach lepiej było zastąpić wspomniany mikrokontroler czymś bardziej wygodnym. Wybór padł na ATtiny2313 ze względu na brak konieczności przerabiania istniejącej już płytki. Tak powstał sterownik trawiarki z wyświetlaczem LCD 2x8 znaków i z czujnikiem temperatury DS18B20. Elementem wykonawczym jest tutaj triak, a samo sterowanie grzałki odbywa się w sposób proporcjonalny poprzez cykliczne włączanie i wyłączanie grzałki z małą częstotliwością. Stosunek czasu działania do przerwy zależy od różnicy między temperaturą ustawioną a tą jaka panuje w pojemniku. Ze względu na brak miejsca w mikrokontrolerze nie ma zapisu ustawień do pamięci EEPROM. Jak się okazało nie jest żadną wadą gdyż praca w 99% przypadków i tak jest z typowym ustawieniem 40 stopni.

Nową wersję tego projektu można znaleźć na stronie: http://mirley.net

Działanie:


Schemat ideowy układu znajduje się na rysunku poniżej:

Sercem układu jest mikrokontroler U1 (ATTiny2313) działający na rezonatorze wewnętrznym o częstotliwości 8MHz. Buzzer alarmowy B1 jest włączany za pomocą tranzystora T3 (BC556). R1 (3,3k) podciąga bazę tranzystora do +5V, natomiast R2 (3,3k) ogranicza prąd jego bazy. Do wizualizacji działania układu wykorzystywany jest niewielki wyświetlacz LCD W1 (8x2). Potencjometr P1 (10k) reguluje jego kontrast, a rezystor R5 (510R) ogranicza prąd struktur LED podświetlających wyświetlacz. Złącze GP3 służy do podłączenia czujnika temperatury DS18B20, a rezystor R6 (4,7k) umożliwia poprawną jego pracę. Jako złącze klawiatury wykorzystuje się złącze Gp2. Obwód wykonawczy zrealizowany jest na triaku Tr1 (BT138-600E) oraz optotriaku OPT1 (MOC3042) zapewniającym izolację optyczną od napięcia sieci. Rezystor R4 (220R) ogranicza prąd bramki triaka, natomiast R3 (330R) ogranicza prąd diody optotriaka. Obwód zasilania zbudowany jest klasycznie za pomocą stabilizatora U2 (7805) i dwóch kondensatorów C5 (22uF) i C4 (47uF).

Budowa:


Układ z powodzeniem można zbudować w oparciu o płytkę drukowaną dostępną tutaj. Rysunek w odbiciu lustrzanym dostępny jest tutaj. Płytka na zdjęciach może się nieznacznie różnić od tej w projekcie, gdyż jak już wspomniałem jest to stary projekt, a na potrzeby publikacji został trochę zmodernizowany. Montaż dobrze jest zacząć od wlutowania trzech zworek, oznaczonych kolorem czerwonym. W drugiej kolejności należy przylutować rezystory i podstawki pod procesor i pod optotriaka. Stabilizator oraz triak powinny być zamontowane na leżąco, chyba że wymiary obudowy pozwolą na montaż pionowy. Wyświetlacz LCD powinien być zamontowany z wykorzystaniem gniazd szufladkowych na goldpiny aby można było go łatwo wyjąć. Szczególnie że regulacja kontrastu wyświetlacza znajduje się pod nim. Kolejność pozostałych elementów jest dowolna. Układ może być zasilany napięciem stałym z przedziału 7-12V. W układzie modelowym został zastosowany zasilacz 12V/1.2A w postaci przetwornicy impulsowej. Kilka minut czasu należy poświęcić czujnikowi temperatury. Należy pamiętać, że będzie on umieszczony w wytrawiaczu więc bardzo ważne jest zabezpieczenie jego nóżek przed strawieniem. Oprócz nałożenia cienkich koszulek termokurczliwych na każdą jego nóżkę, cały czujnik dobrze jest zalać poxipolem lub innym klejem tego typu. Pomocą w konstrukcji może okazać się schemat montażowy dostępny tutaj.

Na rysunku poniżej przedstawiony został schemat podłączeń sterownika z grzałką i pompką:

Wykaz Elementów:

1x Złącze Śrubowe ARK2(podwójne)
2x 3,3k
1x 4,7k
1x 220R
1x 330R
1x 510R
1x Potencjometr Montażowy 10k
1x 22uF Elektrolit
1x 47uF Elektrolit
1x BC556
1x Stabilizator 7805
1x Mikrokontroler ATTINY2313 + Podstawka
1x BT138-600E
1x DS18B20
1x MOC3042
1x Buzzer z Generatorem 5V
1x LCD 8x2

Programowanie:


Kod Źródłowy do sterownika trawiarki został napisany w BASCOM AVR firmy MCS Electronics (http://www.mcselec.com/). Program przedstawiony jest poniżej:

'************* Konfiguracja uC *****************
'***********************************************
$regfile = "attiny2313.dat"
$crystal = 8000000
Config Portb = &B11111111 : Portb = &B11111111
Config Portd = &B11000111 : Portd = &B11111111
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.3 , Db7 = Portb.2 , E = Portb.7 , Rs = Portb.6       
Config Lcd = 16 * 2
Cls
Cursor Off Noblink
Config 1wire = Pind.2
Config Timer0 = Timer , Prescale = 256
Enable Timer0 : On Timer0 Prztimer0
 
Grzalka Alias Portd.6
Sw1 Alias Pind.3
Sw2 Alias Pind.4
Buzz Alias Portd.0
 
Config Watchdog = 2048
Enable Interrupts
'********** Konfiguracja uC Koniec  ************
 
'******************  Zmienne *******************
'***********************************************
Dim Dziel(2) As Byte
Dim Flaga_1s As Bit , Flaga_100ms As Bit
 
Dim Hb As Byte , Hw As Word                                 'globalne uniwersalne zmienne pomocnicze
Dim N As Byte                                               'pomocnicza
 
Dim Tt As Word                                              'zmienna pomocnicza do wyświetlania liczb typu xx.x na lCD
Dim Tm As Word , Tu As Word
Dim Tdif As Integer
Dim Pomiar_odczyt As Bit
Dim Ster_licz As Byte
Dim Ster As Byte
'*************  Zmienne Koniec  ****************
'************ Warunki Poczatkowe ***************
'***********************************************
Tu = 400
Start Watchdog
'*******  Warunki Poczatkowe Koniec  ***********
'**************  Petla glowna ******************
'***********************************************
Do
 '***********************************************   co 100ms
  If Flaga_100ms = 1 Then
    Flaga_100ms = 0
    Gosub Przyciski
    Gosub Wysw_lcd
  End If
  '***********************************************
  '***********************************************   co 1s
  If Flaga_1s = 1 Then
    Flaga_1s = 0
    Reset Watchdog
    Gosub Temperatura
    Gosub Sterowanie
  End If
  '***********************************************
Loop
End
'*********** Petla glowna Koniec **************
'************ Przerwanie timer 0 ***************
'***********************************************
Prztimer0:
 Timer0 = 131
  Incr Dziel(1)
  If Dziel(1) = 25 Then                                     'liczy 25 przerwań czyli 100ms i ustawia flage
    Dziel(1) = 0
    Set Flaga_100ms
    Incr Dziel(2)
    If Dziel(2) = 10 Then                                   'liczy 10 razy po 25 przerwań czyli 1s
      Dziel(2) = 0
      Set Flaga_1s
    End If
  End If
Return
'******** Przerwanie timer 0 Koniec ************
Temperatura:
  Pomiar_odczyt = Not Pomiar_odczyt
  Disable Interrupts
  1wreset
  If Pomiar_odczyt = 1 Then
    1wwrite &HCC
    1wwrite &H44
  Else
    1wwrite &HCC
    1wwrite &HBE
    Tm = 1wread(2)
    Tm = Tm * 10
    Tm = Tm / 16
  End If
  Enable Interrupts
Return
'***********************************************
'*****************  Sterowanie    **************
Sterowanie:
  Tdif = Tu - Tm
  Tdif = Tdif + 7
  If Tdif <= 0 Then
    Ster = 0
  Else
    Ster = Tdif
    If Ster > 50 Then Ster = 50
  End If
 
  Incr Ster_licz
  If Ster_licz = 50 Then Ster_licz = 0
  If Ster_licz < Ster Then Reset Grzalka Else Set Grzalka
 
  If Tm >= 600 Then
    Set Grzalka
    Toggle Buzz
  Else
    Buzz = 1
  End If
 
Return
'***********************************************
'*****************  Przyciski     **************
Przyciski:
  If Sw1 = 0 And Tu <= 600 Then Incr Tu
  If Sw2 = 0 And Tu >= 250 Then Decr Tu
Return
'***********************************************
Wysw_lcd:
  Locate 1 , 1
  Tt = Tm
  Gosub Showt
 
  Locate 2 , 1
  Tt = Tu
  Gosub Showt
 
  Locate 2 , 7
  If Ster < 10 Then Lcd " "
  Lcd Ster
Return
 
 
Showt:
 Hw = Tt / 10
 Lcd Hw ; "."
 Hw = Tt Mod 10
 Lcd Hw
Return

Na początku programu zostaje zdefiniowana częstotliwość pracy mikrokontrolera, która w tym przypadku wynosi 8MHz (oscylator wewnętrzny). Po konfiguracji wyprowadzeń, magistrali 1-Wire, wyświetlacza LCD i watchdoga, zostaje ustawiona zmienna Tu = 400, co odzwierciedla temperaturę ustawioną na 40.0 stopni.

W pętli głównej Do Loop program kręci się cały czas czekając na ustawienie się jednej z flag bitowych. Następuje to co 100ms i co 1s nadając rytm pracy programu. Co 100ms program skacze do procedur obsługi przycisków i wyświetlacza, natomiast co 1s następuje reset licznika watchdog'a, skok do pomiaru temperatury oraz wywoływanie procedury sterowania triakiem w zależności od temperatury.

Flagi bitowe ustawiane są w obsłudze przerwania timera 0, który zajmuje się tylko tym. Wstępny podział timera ustawiony jest na 256, a za każdym przerwaniem do timera ładowana jest wartość początkowa 131. Przerwanie występuje zatem z częstotliwością: 8MHz/256/(256-131)=250Hz czyli z okresem 4ms. Kilka zmiennych dzielników zapewnia dalszy podział częstotliwości i ustawianie flag co 100ms i 1s.

Procedura odczytu temperatury działa w dwóch fazach zależnych od stanu zmiennej bitowej Pomiar_odczyt. W pierwszej fazie następuje wysyłanie polecenia konwersji temperatury do czujnika DS18B20 a w drugiej fazie następuje odczyt dwóch bajtów temperatury i odpowiednie ich przeliczenie do zmiennej Tm, zachowując precyzję 0.1 stopnia (Wartość w zmiennej to temperatura pomnożona przez 10).

Procedura sterowania odpowiada za stan logiczny na wyjściu triaka. Na początku liczona jest różnica między temperaturą ustawioną a mierzoną i na tej podstawie obliczana jest zmienna Ster (0-50), która odzwierciedla wypełnienie przebiegu podawanego na triaka. Każde wywołanie procedury sterowania zwiększa wartość zmiennej Ster_licz, cyklicznie w zakresie od 0 do 50. W każdej sekundzie zmienna Ster porównywana jest z Ster_licz i na tej podstawie ustawiany jest stan logiczny do sterowania triakiem. Jak zmienna Ster ma wartość np. 30 to grzałka będzie włączona na czas 30s a na pozostałe 20s wyłączona. Okres sterowania wynosi 50s. procedura sterowania odpowiada także za alarm temperaturowy. Gdy temperatura przekroczy 60 stopni, grzałka zostanie bezwzględnie wyłączona i odezwie się sygnał dźwiękowy.

Obsługa klawiatury jest tutaj bardzo uproszczona, gdyż jakiekolwiek procedury usuwania drgań styków nie zmieściły się w programie mikrokontrolera. Długi czas między kolejnymi odczytami klawiatury, w dużej mierze eliminuje szkodliwe efekty związane z drganiem styku.

Procedura wyświetlająca jest także bardzo uproszczona. W pierwszej linijce wyświetlacza pokazywana jest temperatura mierzona, natomiast w drugiej wyświetla się temperatura ustawiona i aktualna wartość zmiennej Ster, co pozwala na kontrolowanie stanu pracy sterownika.

Ustawienia fusebitów znajdują się na rysunku poniżej:

W bascomie wystarczy zmienić w fabrycznych ustawieniach mikrokontrolera tylko bit CKDIV, który powinien być równy 1 (dzielenie częstotliwości wyłączone).

Pojemnik Trawiarki - Uwagi:


Konstrukcja samego pojemnika trawiarki nie jest trudna ale bardzo pracochłonna. Nie będę tutaj przedstawiał planów mojego pojemnika gdyż można sobie wykonać pojemnik o różnych rozmiarach i grubości w zależności od potrzeb. Wymiary mojego pojemnika pozwalają zmieścić w środku płytkę o rozmiarach zbliżonych do A4, a grubość jest równa 3cm. Całość została wykonana z plexi o grubości 6mm. Przy projektowaniu pojemnika należy zwrócić uwagę na na to iż bąbelki powietrza przyczyniają się do wychlapywania wytrawiacza na zewnątrz, więc wysokość dobrze jest odpowiednio zwiekszyć. Wysokość ma także znaczenie przy przenoszeniu trawiarki. Jeśli wytrawiacz nalany jest prawie do pełna to łatwo jest wylać go na siebie podczas nawet lekkiego przechylenia trawiarki. Pojemnik dobrze jest wyposażyć w pokrywkę, znacznie poprawi to izolację cieplną trawiarki a jednocześnie będzie stanowiła dodatkowe zabezpieczenie przed wychlapywaniem. Do klejenia wykorzystałem rozpuszczone w acetonie kawałki tej samej plexi. Na dole pojemnika został rozmieszczony wężyk o średnicy około 6mm z małymi dziurkami wykonanymi rozgrzaną igłą. Zapewnia to dobre mieszanie roztworu trawiącego dzięki bąbelkom powietrza. Z boku wewnątrz pojemnika zostały wklejone uchwyty na grzałkę, która została umieszczona w pozycji pionowej. Jest to typowa grzałka akwariowa bez termostatu o mocy 300W. Dzięki pompce akwariowej temperatura w całym pojemniku jest jednakowa mimo takiego ułożenia grzałki. Po drugiej stronie pojemnika znajduje się czujnik temperatury w specjalnie wklejonym uchwycie z plexi. Cały pojemnik został przyklejony do większej płyty z plexi i obok niego powstała obudowa na elektronikę, wykonana także z tego samego materiału. Najbardziej pomocne przy projekcie i wykonaniu własnego pojemnika okażą się w tym przypadku zdjęcia umieszczone u dołu strony. Wymiary pojemnika oraz moc grzałki należy dobrać według własnego uznania.

Obsługa:


Działanie sterownika trawiarki jest bardzo proste. Jest to typowy sterownik proporcjonalny, steruje mocą grzałki proporcjonalnie do różnicy miedzy temperaturą w pojemniku a wartością ustawioną. Jeśli temperatura jest większa od ustawionej o określony offset to grzałka jest całkowicie wyłączona, w przeciwnym wypadku moc grzałki w % wyraża się następującą zależnością:

$P[\%] = 2* (Temp. ustawiona - Temp. mierzona + Temp. offset)$

Przy czym gdy wartość wyliczona z tego wzoru przekracza 100 to naturalnie moc jest zawsze równa 100%. Regulacja mocy realizowana jest przez cykliczne włączanie i wyłączanie grzałki. Wypełnienie przebiegu odzwierciedla jednoznacznie procent mocy grzałki, więc w istocie powyższy wzór określa czas włączenia grzałki wyrażony w jednostkach 0.5s, przy całkowitym okresie równym 50s. Sterownik posiada sygnał alarmowy, który na sztywno został ustawiony na 60 stopni, podobnie jak offset temperatury, który z doświadczenia został ustawiony na 0.7 stopnia.

Ze względu na brak miejsca w programie, sterownik nie posiada żadnego menu pozwalającego dostroić parametry, nie osiada także zapisywania ustawionej temperatury do pamięci EEPROM. Za pomocą dwóch przycisków można dostroić temperaturę ustawioną, a po włączeniu wynosi ona zawsze 40 stopni, co jest optymalne z punktu widzenia nadsiarczanu sodu używanego jako roztworu trawiącego.

Zdjęcia Projektu:

ZałącznikWielkość
Schemat48.47 KB
Płytka12.44 KB
Płytka (odbicie lustrzane)12.35 KB
Płytka (6 na stronie)61.59 KB
Montowanie14.99 KB
Opis30.76 KB
Soldermaska31.71 KB
Kod Źródłowy3.83 KB
Program po kompilacji (BIN)2 KB
Program po kompilacji (HEX)5.64 KB



Portret użytkownika kriss

tak i pokazuje się temp tylko

tak i pokazuje się temp tylko zaraz pojawiają się kwadraciki na wyświetlaczu i zaraz znika wszystko i znów pojawia się temp.i tak w kółko. wygląda na to że reset mikrokontrolera jest cały czas aktywny nie wiem co jest powodem tego??

Portret użytkownika mirley

Re: fusebity

Już chyba wiem co jest..... daj jakiś zrzut tego jak ustawiłeś fusebity, w programie pracuje watchdog i resetuje flagę co 1s. Jeśli flaga nie zostanie zresetowana, bo np program się zwiesił to następuje reset procka. Jeśli fusy są źle ustawione to timer źle liczy i flaga nie resetuje się jak powinna. Druga przyczyna to zmiany w programie ale myślę że tego nie robiłeś.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Kriss

Fuseoto link do ustawień

Fuseoto link do ustawień fusebitów. Nie przeprowadzałem żadnych zmian w programie. Co do opcji watchdog w fusebitach i po zaznaczeniu jak i odznaczeniu tej opcji dalej jest taki sam efekt :(

Portret użytkownika White

@ matrix0606, Przy okazji

@ matrix0606,
Przy okazji

Tak wygląda oklejona wytrawiarka.

-

Co cie nie zabije to cie wzmocni.
(Nie dotyczy kondensatora 230V)

Portret użytkownika matrix

Re: Przy okazji

Quote:
@ matrix0606,
Przy okazji

Tak wygląda oklejona wytrawiarka.


Dzięki serdeczne. Nie myślałeś żeby zrobić wyższą tą wytrawiarkę? Żeby grzałka stała w pionie. Już się powoli zabieram za realizację. Elementy już są, muszę wytrawić laminat pod układ i zabieram się za składanie całości. Pytanie dodatkowe:
Ile czasu trawi płytkę w tej trawiarce? Bo ja ręcznie to trawię ze 40 minut.

Portret użytkownika White

Ja w ogóle dałem ciała.Jak

Ja w ogóle dałem ciała.Jak robiłem wytrawiarkę to najpierw ją złożyłem kierowałem się tym żeby wchodziła jedna paczka środka trawiącego czyli 1L + zapas wiec wyszło ok 1,3L.Ale dopiero później rozglądałem się za grzałkami i okazał się zonk bo wszystkie były za długie.Także grzałeczka stoi sobie na skos.Nagrzewam jakieś 10 min do 40*C.A trawienie w zależności jak świeży jest środek płytka wielkości na zdjęciu to 10-15min.Nigdy tak do końca całego procesu nie mierzyłem ale wszystko idzie szybko i sprawnie.Raz miałem wytrawiacz który był ponad rok rozpuszczony wytrawił kilkanaście płytek i dal rade coprawda musiałem mu dodać ekstra 10*C więcej niż zwykle i trwało to jakieś 20min.

-

Co cie nie zabije to cie wzmocni.
(Nie dotyczy kondensatora 230V)

Portret użytkownika mirley

Re: Kriss

Nie mówiłem że masz watchdog w fusach odznaczać. Tylko dzielnik zegara. Nie używałeś nigdy jakiegoś normalnego programu do programowania, np burn-o-mat, który ma całą tabelkę z fusami.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Kriss

Fuse

Napisałem że czy włączę watchdoga czy wyłączę efekt jest taki sam. Co do programu do programowania mój programator elnec 51prog obsługuje właśnie taki, więc właściwie wybór mam narzucony. Może zrobię usbasp i wtedy pobawię się tym programem który polecasz.

Portret użytkownika XXX

409,5st

Witam mam problem z napisem na wyswitlaczu a bardziej z temp. gorna wartosc pokazuje mi 409,5 st czemu pozdrawiam

Portret użytkownika mirley

Re: Temperatura

A bascom nie obsługuje twojego programatora? przynajmniej tam wiem że ustawiane fusy działają.

-----

Brak czujnika to z obliczeń wynika temperatura 409,5.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika XXX

ale jesli podlączam czujnik i

ale jesli podlączam czujnik i wg schematu wszystko i to ten ds18b20 i nadal jest to czemu mi pokazuje

Portret użytkownika rybaczenko

klej

jak kleiłem tym klejem http://www.hobbysta.pl/images/pelny/Revell/rev39608.jpg mówiłem do modeli każdy sklep ma taki akurat ten jest firmowy i dobry przy klejeniu rozpuszcza plexe jak rozpuszczalnik http://www.hobbysta.pl/klej-contacta-igla-do-plastiku-125-p-981.html oczywiscie nie jest to silikon i przy nierównościach może powstać wyciek wiec trzeba się starać przy cieciu ja tak miałem mały wyciek lecz po wyschcnieciu poprawiłem klejem tym samym małe dziurki zakleji oczywiście ale jak będą wielkie jak krater to niestety . mozna później tak jak kolega white poprawic tym silikonem akwarystycznym i chyba sobie tak zrobię.Ale jak na razie moja trawiareczka nie cieknie

-

ROOKIE

Portret użytkownika mirley

Re: DS

Czujnik jest źle podłączony, lub brak rezystora 4,7k przy jego nóżce sygnałowej do +5V. Mogą też być źle ustwione fusy w procesorze ale raczej pomimo tego też powinno działać

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika XXX

Rezystor mam przy nóżce

Rezystor mam przy nóżce sygnał mi wychodzi na 5V a jak mam ten czujnik podłączyć bo juz nie wiem. Podłączam tak jak ty i mi nie chce działać, a chyba juz w komentarzach tlumaczyles jak ustawiac fusy to wiec sprobuje pozdrawiam

Portret użytkownika rybaczenko

re: czujnik

dobrze popatrz na wyprowadzenia w karcie katologowej gdzie jest plus a gdzie minus możne źle podlaczyles kabelki ci się pomyliły jak aj podłączałem kabelkami to dałem czerwony do plusa czarny do minusa itp.i na płytce tez popatrz gdzie jest masa a gdzie plus. pozdrawiam.ps. takie błędy się zdążają od roztargnienia

-

ROOKIE

Portret użytkownika XXX

Panowie proszę o pomoc z tym

Panowie proszę o pomoc z tym czujnikiem, prosze napiszcie mi jak go podłączyć wszystko wg tego projektu robie mam napiecie 5V na wyjściu, lutuje podłączam i nic

Portret użytkownika mirley

Re: czujnik

Przeciez tu nie ma żadnej filozofii.... czujnik ma 3 nóżki. Gdy obrócisz go tak żeby widzieć prawidłowo napis "DS18B20" to od lewej masz GND,DQ,VDD. Patrzysz na schemat wyżej i masz GND do GND, DQ do PD2 oraz VDD do +5V

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika XXX

no i własnie tak podłączam i

no i własnie tak podłączam i niedziała mi mam temperature 409.5

Portret użytkownika mirley

Re: Czujnik

A sprawdzałeś czy masz styk między nóżką czujnika a pinem procka? Nie może to nie działać

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika zibi

problem

co moze byc powodem ze na wyswietlaczu sa same kratki tylko jeden rzad

Portret użytkownika mirley

Re: Trawiarka

Wyświetlacz nie styka, jest zwarcie lub nadtrawiona ścieżka. Pokręć też kontrastem

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika zibi

Dalej nic

sprawdzilem wszystko i dalej nic caly czas kwadraty

Portret użytkownika mirley

LCD

Co to masz za LCD? taki sam jak mój?

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika zibi

wyswietlacz

wyswietlacz mam taki http://lispol.com/p/2257/Wyświetlacz%20LCD%202x8%20znaków naprawde niemam juz pomyslow co jest nie tak

Portret użytkownika mirley

Re: Trawiarka

Wyświetlacz masz taki sam jak ja więc to nie jest problemem. Sprawdź czy RW wyświetlacza jest na pewno zwarty do masy i czy jest zasilanie na wyświetlaczu. Poza tym nie widzę innego problemu jak zwarcie albo brak podłaczenia.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika ivan

Zasilacz

Witam

Przymierzam się do budowy tego urządzenia i zbieram elementy wg mnie została grzałka zasilacz i wytrawienie. Mam pytanie jaki zasilacz ? Na Twojej trawiarce widać go na środku. Jaki mógłbym kupić żeby działał ewnt zrobić ? Proszę o poradę wytrawianie wiem że na 100g b327 mogę użyć 0.25l lub 0.5 ile mam trawić tą płytkę po czym poznam że gotowe ?

Pozdrawiam

Piękna strona dużo wartościowych rzeczy

Portret użytkownika mirley

Re: Zasilacz

najlepiej kupić zasilacz wtyczkowy 12V lub 9V jeśli jesteś początkujący

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika y

Zmiana parametrów i procka

Witam, mam potrzebę zmienić temperaturę na zakres 70-95 stopni (sądzę, że wystarczy mi stały wpis jednej wartości, czyli przyciski i LCD odpadają, to samo buzzer, a samą wartość optymalnie dobiorę organoleptycznie). Czy wystarczy zmienić standardową wartość z 400 np. na 700? Gdybyś wskazał mi fragmenty kodu, jakie muszę zostawić. Chciałbym mieć jedynie 2 LED-y (ew. jeden dwukolorowy) do sygnalizacji etapu grzania i etapu osiągnięcia zadanej temperatury.
Czy tak okrojony kod termostatu ma szanse zmieścić się w pamięci Attiny13? Gdzieś już nawet widziałem podobny kod na Attiny13, ale tam był zastosowany analogowy czujnik temperatury, a na samodzielne przeróbki tych procedur jeszcze jestem za cienki. Katalogowo czujnik Dallas'a pracuje do 125 stopni, czy bezwładność grzałki o mocy 350W (tu nie będzie wody, grzałka grzeje elementy metalowe) nie spowoduje chwilowego wzrostu temperatury powyżej 125 stopni i czy w takich warunkach nie ma zagrożenia dla samego czujnika? Pozdrawiam.

Portret użytkownika y

Uproszczenie tego termostatu

Chciałbym wykonać prostszą wersję tego termostatu, bez LCD, przycisków, buzzera, itd. Po prostu czujnik od Dallasa, temperatura zdefiniowana na stałe w kodzie (tu muszę dobrać doświadczalnie optymalną dla moich potrzeb z zakresu 70-95 stopni Celsjusza). Pytania: które części kodu trzeba zostawić? Czy tak odchudzony projekt mógłby się zmieścić w Attiny13? Jako wskaźnik posłużyłyby dwie diody LED (lub jedna, dwukolorowa), oznaczając fazę grzania i fazę osiągnięcia zadanej temperatury. Pozdrawiam.

Portret użytkownika y

Czytając pinologię Attiny13 i kody Kolegów napisałem coś takiego

$regfile = "attiny13.dat"                                   'etykietka mikrokontrolera
$crystal = 9200000                                          'standardowy zegar wewnetrzny
 
'Nie pamietam, ktore porty w Attiny13 trzeba raczej zostawic, zeby umozliwic programowanie ISP.
 
Config Portb.1 = Output                                     'LED Green - temperatura osiagnieta
Config Portb.4 = Output                                     'LED Red - grzalka wlaczona
Config Portb.3 = Output                                     'optotriak MOC3041, potem triak i grzalka
Config 1wire = Portb.5                                      'termometr, DS18B20
 
 
Dim I1 As Integer
Dim Temp As Integer
 
Declare Sub Pomiar_temperatury
Declare Sub Termostat
 
 
'------ Start programu ----------
 
' Na poczatek uklad scieci obiema diodami na powitanie - gdyby brakowalo pamieci w procku, wyrzucic !
 
Portb.4 = 0                                                 'obie diody LED zapalone przez ok. sekunde
Portb.1 = 0
Waitms 1000
Portb.4 = 1                                                 'obie diody LED wygaszone
Portb.1 = 1
 
' Teraz do pracy
 
Do
 
Pomiar_temperatury
 
Termostat
 
Loop
 
Return
 
'------Pomiar_temperatury -------
 
Pomiar_temperatury:
 
1wreset
1wwrite &HCC
1wwrite &H44
 
Waitms 750                                                  'podobno ten czujnik musi miec okolo 700ms na podanie odczytu
 
1wreset
1wwrite &HCC
1wwrite &HBE
 
I1 = 1wread(2)
 
  I1 = I1 * 10                                              'jeszcze nie rozgryzlem tych przeliczen, ale widze je w kilku zrodlach
  I1 = I1 / 16
  Temp = I1 / 10
 
Return
 
'------ Termostat -------
Termostat:
 
If Temp < 70 Then                                           'czy 70 stopni podajemy jako 70, czy jako 700 ?
      Wait 1
      Portb.3 = 0                                           'wyjasnic, czy stan 0 oznacza port uruchamiajacy optotriak, czy odwrotnie
      Portb.4 = 0                                           'czerwona dioda LED sygnalizuje grzanie
      Portb.1 = 1                                           'zielona dioda LED zgaszona
 
   Else
      Portb.3 = 1
      Portb.4 = 1                                           'czerwona dioda LED zgaszona
      Portb.1 = 0                                           'zielona dioda LED sygnalizuje osiagniecie zadanej temperatury
End If
 
Return
'------ Koniec programu ------

Proszę o wskazanie błędów i ew. propozycje korekt. Jak widać, są podpięte dwa LED-y (czerowny: grzanie, zielony: gotowość), czujnik Dallasa i wyjście na optotriak (teoretycznie MOC3041, ale chciałbym spróbować z MOC3020, bo taki mam na stanie, chyba powinien pociągnąć, ma wysterować triak TM1661S (Sanken, 600V/16A - takie akurat mam), a triak uruchamia grzałkę o mocy 350W. Jakiej można się tu spodziewać histerezy (zakresu temperatur między załączeniami i wyłączeniami grzałki)? Powyższy program skompilował mi się bez problemu i zajmuje 71% pamięci Attiny13. Pozdrawiam.

Portret użytkownika Łukasz

A ja tak z innej beczki ..

Czy na tym schemacie podłaczenie diody led na 230v jest własciwe ? wydajemi sie ze takie podłaczenie diody spowoduje ze dioda w jednej połówce sinusoidy ulega przebiciu. Prąd w trakcie przebicia jest ograniczony do wartości, mam nadzieję bezpiecznej, za pomocą opornika. W kierunku przewodzenia dioda świeci.Ale czy dioda LED zasilana napięciem pulsującym (np. prostownik jednopołówkowy) będzie miała obniżonej żywotność ? może dodanie diody bedzie lepszym pomysłem .

Portret użytkownika mirley

RE: dioda z sieci

Teoretycznie napięcie w sieci powinno przebić diodę, w praktyce tak się nie dzieje. Wystarczy szeregowy rezystor ograniczający. Dla bezpieczeństwa dodaj drugą diodę, tym razem zwykłą krzemową w odwrotnej polaryzacji równolegle do LED a nie w szeregu. W szeregu nic to nie zmieni dla działania układu.

Prąd pulsujący nie ma wpływu na żywotność diody.... przecież w 90% wypadków diody steruje się PWM, który właśnie polega na podawaniu na diode przebiegu zmiennego, tyle że prostokątnego

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika rybaczenko

termostat

Witam co trzeba aby z tego projektu zrobic szybki termostat

-

ROOKIE

Portret użytkownika mirley

RE: Trawiarka

To jest termostat tylko o trochę lepszej charakterystyce regulacji

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika rybaczenko

termostat

wiem ze termostat ale chcialbym sie pozbyc zmiennej ster i licz gdyż nie chce aby sie tak włączała jak to w projekcie tylko cyklicznie np: temperatura ma 100 stopni wyłącza grzałkę po spadku do okolo 90, 80 stopni znów ja włączy do 100 stopni . Grzałka będzie sterować cos innego i nie może zbyt długo się nagrzewać max.czas wlaczenia grzalki to około 5 może 10 sekund tak tak sekund można to przerobic ?

-

ROOKIE

Portret użytkownika mirley

Re: Trawiarka

Co by się nie dało..... spróbuj zmodyfikowac procedurę sterującą:

Sterowanie:
  Tdif = Tu - 100  '10 stopni histerezy
 
  If Tm < Tdif then Reset Grzalka
  if Tm >= Tu then Set Grzalka
 
  If Tm >= 1050 Then   'alarm przy 105 stopni
    Set Grzalka
    Toggle Buzz
  Else
    Buzz = 1
  End If
 
Return

jeszcze w przyciskach:

 If Sw1 = 0 And Tu <= 1000 Then Incr Tu
 If Sw2 = 0 And Tu >= 500 Then Decr Tu

teraz powinno działać z histereza 10 stopni. Jak ustawisz 80 to grzałka się przy 80 wyłączy a załaczy przy 70

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika esc

Która wersja wydruki do

Która wersja wydruku do metody żelazkowej, lustrzane czy zwykłe bo nigdy nie pamiętam

Portret użytkownika mirley

Re: Trawiarka

Lustrzana jest do rysowania markerem

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika esc

Dzięki bardzo postaram się

Dzięki bardzo postaram się zapamiętac na przyszłość :)

Portret użytkownika Marek

Jak podłączyć grzałkę??

Może mi ktoś powiedzieć tak łopatologicznie jak mam połączyć grzałkę do tego? I gdzie mam podłączyć napięcie 230V?

Portret użytkownika mirley

RE: Grzałka

Na wyjściu ARK2 na płytce są dwie anody triaka wyprowadzone. Potraktuj triaka jak wyłacznik i podłącz go w szereg z grzałką. Faza do jednej anody triaka, do drugiej anody grzałka i drugi koniec grzałki do zera.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Marek

Dzięki śliczne:) A mam

Dzięki śliczne:) A mam jeszcze takie pytanie. Co ta dioda sygnalizuje co jest podłączona razem z grzałką do triaka? To ze grzałka jest włączona czy to że rozwór osiągnął już wymaganą temp(grzałka wyłaczona).

Portret użytkownika mirley

Re: Dioda

Sygnalizuje włączoną grzałkę.. aktualna temperatura roztworu jest na wyświetlaczu

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika matrix

Małe pytanko

Mirku, w czym projektujesz płytki? Jeśli w eagle'u to czy jest opcja udostępniania całego projektu w formacie eagle?

Portret użytkownika mirley

Re: Trawiarka

Nie udostępniam plików źródłowych do moich projektów ani plików gerbera itp

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika matrix

Re: Trawiarka

Nie chodzi o to że nie potrafię sobie narysować Twoich projektów. Skoro udostępniasz schemat to myślałem że zapodaasz też pliki eagle'a? Nie jest dla mnie kłopotem narysowanie sobie tego tylko chodzi o fakt że zaoszczędziło by mi to czasu.

Portret użytkownika andrelius

Wyświetlanie

Witam :)

Świetny projekt i świetna stronka - gratulacje. Mam kilka pytań:
* Czy można pozbyć się tego zera wyświetlanego na końcu w drugiej linii ?
http://mirley.firlej.org/files/STTR_foto04.jpg
* Czy można również zrobić aby wyświetlanie było takie np:
| Temp. 42,2'C |
| Set 40,0'C |
1234567890123456(numery znaków dla wyświetlacza 2x16 znaków)
Jestem laikiem w programowaniu (kiedyś w technikum na pracowni mała styczność z Assemblerem i C) i nie wiem jak zrobić takową modyfikację... :-(
* Jaka jest pętla histerezy tego układu ?
* Jaką wydajność prądową powinien mieć zasilacz wydajność prądową (ile wynosi pobór prądu przez sam sterownik, zapewne nie za dużo ;-D) ?
* Czy wyświetlacz LCD można śmiało połączyć przewodami żeby można było go umieścić na przednim panelu obudowy ?

Z góry dziękuję za odpowiedź. Pozdrawiam
Andrzej

Portret użytkownika matrix

Re: Wyświetlanie Temp i Set

Za wyświetlanie tego zera odpowiada prawdopodobnie ten fragment:

Wysw_lcd:
bla bla bla
bla bla bla
 
  Locate 2 , 7               'zaremuj tą linię
  If Ster < 10 Then Lcd " "  'i tą
  Lcd Ster                   'i tą
Return

Co do wyświetlania Temp itd to wystarczy poniższe:

Wysw_lcd:
  Locate 1 , 1
  Tt = Tm
  Gosub Showt
 
  Locate 2 , 1
  Tt = Tu
  Gosub Showt
 
  Locate 2 , 7
  If Ster < 10 Then Lcd " "
  Lcd Ster
Return

zmienić na:
Wysw_lcd:

  Locate 1 , 1
  lcd "Temp:"
  locate 1 , 6
  Tt = Tm
  Gosub Showt
 
  Locate 2 , 1
  lcd "Set:"
  locate 2 , 5
  Tt = Tu
  Gosub Showt
 
  Locate 2 , 7
  If Ster < 10 Then Lcd " "
  Lcd Ster
Return

Będziesz miał już Temp i Set. Musisz dorzucić sobie znak stopni i literkę C.

Portret użytkownika matiss98

Problem przy programowaniu

Witam
Mam taki problem przy programowanie mikrokontrolera ATtiny2313 przez
Programator na USB (USBasp)w programie bascom wyskakuje mi błąd "detected micro attiny2313 does not match the selected micro at90s2313".
Jestem początkującym
Proszę o pomoc

Portret użytkownika matrix

Re: Mam taki problem

matiss98 wrote:
wyskakuje nastepujscy blad "detected micro attiny2313 does not match the selected micro at90s2313"

Najprawdopodobniej programator nie widzi procesora docelowego.