(2 głosujących) Opisywane urządzenie jest prostym timerem mikroprocesorowym odliczającym czas w zakresie 1-99s (lub 1-99m po drobnej modyfikacji programu). Steruje on dowolnym odbiornikiem prądu przemiennego o maksymalnej mocy wyznaczonej jedynie przez zastosowany triak. Układ został zaprojektowany jako timer fotograficzny, przydatny w amatorskiej fotografii do włączania lampy powiększalnika na określony czas. Po modyfikacji programu może działać na przykład jako timer kuchenny itp. Do zasilania urządzenia zastosowano mini ładowarkę od telefonu komórkowego, przez co całość zmieściła się w płaskiej i niewielkiej obudowie.
Działanie:Schemat ideowy timera przedstawiony jest na rysunku poniżej: Sercem układu jest mikrokontroler U1 (AT89C2051) wraz z elementami X1 (12MHz), C1 (33pF) i C2 (33pF). Kondensator C3 ma za zadanie zresetować procesor po włączeniu zasilania. Wyświetlacz W1 (LED) podłączony jest do portu P3 mikrokontrolera przez rezystory ograniczające prąd R1 - R7 (330R). Anodami wyświetlacza sterują tranzystory T1 (BC556) i T2 (BC556) wraz z rezystorami R8 - R11 (3,3k). Do złącza Sw dołączona jest klawiatura złożona z pięciu przycisków. Ze względu na małą liczbę wyprowadzeń mikrokontrolera ostatni przycisk wykorzystuje prosty dekoder zbudowany na diodach D1 (1N4148) i D2 (1N4148). Tranzystor T3 (BC556) wraz z elementami R14 (3,3k) i R15 (3,3k) steruje pracą buzzera z generatorem B1. Obwód wykonawczy stanowi triak Tr1 (BT138-600E) oraz optotriak OPT1 (MOC3042). Rezystor R13 (330R) ogranicza prąd optotriaka. Do złącza 230V (ARK) należy dołączyć odbiornik w taki sposób jakby złącze to stanowiło zwykły wyłącznik sieciowy. Do złącza Zas (Goldpin) doprowadzamy napięcie zasilające o wartości około 7-12V. Stabilizator U2 (7805) wraz z kondensatorami C4 (47uF) i C5 (22uF) dostarczają napięcia stabilizowanego na poziomie 5V. Budowa:Urządzenie można zbudować w oparciu o płytkę drukowaną dostępną tutaj. Rysunek w odbiciu lustrzanym można pobrać tutaj. Montaż należy rozpocząć od wlutowania pięciu zworek a następnie wszystkie rezystory. Na sam koniec warto zostawić elementy największe. Pod mikrokontroler U1 bezwzględnie konieczna jest podstawka, natomiast pod wyświetlacz W1 można zastosować podstawkę DIP18 przeciętą na dwie części. Rozwiąże to problem kondensatorów wystających ponad wyświetlacz i ułatwi montaż całości w obudowie. Triak Tr1 i stabilizator U2 należy wlutować w pozycji leżącej, jak pokazuje schemat montażowy. Timer wygodnie jest zasilać z mini ładowarki do komórki ze względu na małe wymiary i niewielki ciężar. Po rozmontowaniu taka ładowarka da się upchnąć w prawie każdej obudowie. Pomocą przy budowie może się okazać schemat montażowy dostępny tutaj. Wykaz Elementów:1x Złącze śrubowe ARK2 5x uSwitch 12x12mm 1x 220R 2x 33pF 1x Rezonator Kwarcowy 12MHz Programowanie:Mikrokontroler do timera został zaprogramowany w wersji demo programu BASCOM 8051 firmy MCS Electronics (http://www.mcselec.com/). Program przedstawiony jest poniżej: $crystal = 12000000 '12MHz $regfile = "89C2051.DAT" Config Timer0 = Timer , Gate = Internal , Mode = 2 On Timer0 Przerwanie0 Load Timer0 , 250 Enable Timer0 Start Timer0 Enable Interrupts Dim Co4ms As Byte , Co1s As Byte Dim Czas As Byte , Czas_ust As Byte Dim Wysw As Byte , Wysw10 As Byte , Wysw1 As Byte Dim Sw_port As Byte , Stan_portu As Byte , Licznik_sw As Byte Dim Mux As Bit Dim Odliczanie As Bit Dim Flaga4ms As Bit Dim Flaga1s As Bit Czas_ust = 12 Odliczanie = 0 Wysw = Czas_ust Triak Alias P1.1 Buzzer Alias P1.0 '**************************** 'Petla glowna '**************************** Do If Flaga4ms = 1 Then Flaga4ms = 0 Gosub Wyswietlanie Gosub Przyciski End If If Flaga1s = 1 Then Flaga1s = 0 If Odliczanie = 1 Then Decr Czas Wysw = Czas If Czas = 0 Then Odliczanie = 0 Triak = 1 Stop Timer0 P3 = 255 Wysw = Czas_ust Buzzer = 0 Waitms 200 Buzzer = 1 Waitms 200 Buzzer = 0 Waitms 200 Buzzer = 1 Start Timer0 End If End If End If Loop End '**************************** 'Przerwanie timer0 '**************************** Przerwanie0: Incr Co4ms If Co4ms = 16 Then Co4ms = 0 '*************************************** co 4ms Set Flaga4ms Incr Co1s If Co1s = 250 Then Co1s = 0 '*************************************** co 1s Set Flaga1s End If End If Return '**************************** Wyswietlanie: Mux = Not Mux If Mux = 1 Then Set P1.6 Wysw10 = Wysw / 10 If Wysw < 10 Then Wysw10 = 10 Wysw10 = Lookup(wysw10 , Tabela) P3 = Wysw10 Reset P1.7 Else Set P1.7 Wysw1 = Wysw Mod 10 Wysw1 = Lookup(wysw1 , Tabela) P3 = Wysw1 Reset P1.6 End If Return Przyciski: Sw_port = P1 Sw_port = Sw_port Or &B11000011 If Sw_port <> 255 And Stan_portu = Sw_port Then Incr Licznik_sw If Licznik_sw = 120 Then Licznik_sw = 0 Select Case Stan_portu Case 223: '+1 If Odliczanie = 0 Then If Czas_ust < 99 Then Incr Czas_ust Else Odliczanie = 0 Triak = 1 End If Case 239: '-1 If Odliczanie = 0 Then If Czas_ust > 1 Then Decr Czas_ust Else Odliczanie = 0 Triak = 1 End If Case 247: '+10 If Odliczanie = 0 Then If Czas_ust < 90 Then Czas_ust = Czas_ust + 10 Else Odliczanie = 0 Triak = 1 End If Case 251: '-10 If Odliczanie = 0 Then If Czas_ust > 10 Then Czas_ust = Czas_ust - 10 Else Odliczanie = 0 Triak = 1 End If Case 207: 'start If Odliczanie = 0 Then Co4ms = 0 Co1s = 0 Load Timer0 , 250 Flaga4ms = 0 Flaga1s = 0 Czas = Czas_ust Odliczanie = 1 Triak = 0 Else Odliczanie = 0 Triak = 1 End If End Select Wysw = Czas_ust End If Else Stan_portu = Sw_port Licznik_sw = 80 End If Return 'Tabela do wyswietlania '******************************************************************************* Tabela: Data 65 , 207 , 82 , 70 , 204 , 100 , 96 , 79 , 64 , 68 , 255 'znak: 0 1 2 3 4 5 6 7 8 9 pusty Zdjęcia Projektu:
|
|||||||||||||||||||||||
Timer
Witam jestem ciemny w tych sprawach konstrukcyjnych, ale potrzebuję timera który by się ustawiało na np 60-120 min, załączał by urządzenie 1600w i po określonym czasie wyłączał by napięcie. musi mieć wyświetlacz który pokazywał by ile minut jescze zostało do końca.
Potrzebuje 4 może 5 takich urządzeń. czy ktoś by mi takie coś zrobił i za ile?
bardzo proszę o szybką odpowiedź wszystkich majstrów.
Re: Timer
Napisz dokładnie jak to ma działać na mojego maila (formularz kontaktowy)
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.
koszt zakupu gotowego timera
Witam
Czy można taki gotowy timer kupić i jaki jest koszt
Pozdrawiam
Re; Timer
Niestety to jest strona "Zrób to sam" dostępna jest cała dokumentacja i pomoc w realizacji ale zrobić trzeba sobie samemu
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.
programowanie USBasp
witam czy jest mozliwosc zamiany mikrokontrolera na inny ktory mozna zaprogramowac za pomoca USBasp.
np AT89S2051. mam w domu tylko taki programator i chcialbym zrobic ten timerek.
ewentualnie czy bylaby mozliwaosc nabycia juz zaprogramowanego AT89C2051.
pozdrawiam
Wojciech
Tak
Jego odpowiednikiem pod względem wyprowadzeń jest Tinny2313. Wymagana będzie niewielka kosmetyka kodu źródłowego.
"Cierpliwym być musisz, by wiedzę zgłębiać tajemną, gdyż ciemna strona mocy niszczącą i silną jest.".
Zapętlenie układu
Witam.
Składałem ten układ jakiś czas temu, ale szczerze mówiąc nie pamiętam już jak dokładnie działał, ale czy jest możliwość przerobienia (myślę, że to kwestia kilku dodatkowych linijek kodu) programu tak, aby układ działał w następujący sposób.
1. Ustawiamy czas w przedziale 1-99s
2. Naciskamy Start
3. Układ odlicza ustawiony czas
4. Po odliczeniu ustawionego czasu, podaje impuls (o czasie trwania około 0.5 - 1 sek. - tyle, żeby przekaźnik [zamiast układu z optotriakiem, chciałem wrzucić przekaźnik z cewką na 5V] zdążył przełączyć styki)
5. Układ odlicza ten sam, ustawiony czas
6. Patrz punkt 4.
7. Układ jest zapętlony, do momentu powtórnego naciśnięcia przycisku Start (w takim razie to już Start/Stop)
Buzzer mógłby zniknąć, a zamiast niego przycisk ON/OFF, uruchamiający licznik, zliczający impulsy na wyjściu P1.1 i po osiągnięciu ustalonej w programie liczby (np. 500), zatrzymywałby działanie Timera.
Całość planowałem podłączyć (przez przekaźnik) pod przycisk pilota do lustrzanki, tak aby można było złożyć film z poszczególnych, długo naświetlanych klatek - zdjęć. A żeby wyeliminować efekt przesunięcia gwiazd na niebie, potrzebna jest odpowiednio dobrana przerwa czasowa między spustem migawki)
Mam nadzieję, że te wypociny są w miarę zrozumiałe. Liczę na jakąkolwiek pomoc.
Pozdrawiam
Piotr59mb
Re: Timer
fragment odpowiedzialny za ustawianie odliczania powinien wygladać teraz tak
I w drugim miejscu..... trzeba wrzucić sekwencję włączania się
If Flaga1s = 1 Then
Flaga1s = 0
If Odliczanie = 1 Then
Decr Czas
Wysw = Czas
If Czas = 0 Then
Stop Timer0
P3 = 255
Co4ms = 0
Co1s = 0
Load Timer0 , 250
Flaga4ms = 0
Wysw = Czas_ust
Triak = 0
Buzzer = 0
Waitms 250
Buzzer = 1
Waitms 250
Waitms 250
Waitms 250
Triak = 1
Start Timer0
End If
End If
End If
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.
prąd stały
Witam, jak przerobić ten układ, aby sterował urządzeniem na prąd stały?
Re: Timer
Zamiast triaka i optotriaka trzeba dać tranzystor mosfet, albo tranzystor z przekaźnikiem.... Wszystko zależy od tego jakim napięciem stałym chcesz sterować i jaki prąd będzie płynął
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.
Sygnalizacja dzwiękowa
Witam
Ustawiając czas jaki timer ma odliczyć widzę wszystkie zmiany na wyświetlaczu. Natomiast po wcisnięciu przycisku start nie jestem pewien czy procedura odliczania już trwa.Dowiem się tego dopiero po minucie (odliczany czas w minutach).I tu moja prośba o zmianę programu tak aby przy nacisnięciu przycisku start był jednocześnie słyszalny krótki dzwięk buzera.
Przycisk start
Witam
Ustawiając czas jaki timer ma odliczyć widzę wszystkie zmiany na wyświetlaczu. Natomiast po wcisnięciu przycisku start nie jestem pewien czy procedura odliczania już trwa.Dowiem się tego dopiero po minucie (odliczany czas w minutach).I tu moja prośba o zmianę programu tak aby przy nacisnięciu przycisku start był jednocześnie słyszalny krótki dzwięk buzera.
Przycisk start
Witam
Ustawiając czas jaki timer ma odliczyć widzę wszystkie zmiany na wyświetlaczu. Natomiast po wcisnięciu przycisku start nie jestem pewien czy procedura odliczania już trwa.Dowiem się tego dopiero po minucie (odliczany czas w minutach).I tu moja prośba o zmianę programu tak aby przy nacisnięciu przycisku start był jednocześnie słyszalny krótki dzwięk buzera.
Przycisk start
witam
Ustawiając czas jaki timer ma odliczyć widzę wszystkie zmiany na wyświetlaczu. Natomiast po wciśnięciu przycisku start nie jestem pewien czy procedura odliczania już trwa.Dowiem się tego dopiero po minucie (odliczany czas w minutach).I tu moja prośba o zmianę programu tak aby przy naciśnięciu przycisku start był jednocześnie słyszalny krótki dżwięk buzera.
przycisk start
zobacz to, może Tobie lepiej podpasuje.
http://mirley.firlej.org/node/924
Co4ms = 0 Co1s =
Dodaj te 3 linijki, po kliknięciu start będzie pisk a potem dopiero start odliczania
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.
Podziękowanie
Wszystko działa dziękuję.