(2 głosujących)
Działanie:Schemat ideowy sterownika podnoszenia rusztu przedstawia poniższy rysunek: Sercem układu jest mikrokontroler U1 (AT89C2051) wraz z kondensatorami C3 (33pF), C4 (33pF) i rezonatorem kwarcowym X1 (12MHz). Kondensator C1 (470uF) filtruje napięcie zasilające a C2 (4,7uF) pracuje w obwodzie resetu procesora. Złącze GP (goldpin) służy do podłączenia czujników krańcowych zamontowanych na części mechanicznej, natomiast SW (goldpin) do podpięcia klawiatury. Tranzystor T1 (BC557) wraz z rezystorami R1 (3,3k) i R2 (3,3k) sterują pracą brzęczyka z generatorem BUZZER. Przekaźnik zmiany kierunku obrotów P1 (AZ822) sterowany jest przez tranzystor T3 (BC557) i rezystory R5 (3,3k) i R6 (3,3k). Tranzystor T2 (BC557) i rezystory R3 (3,3k) i R4 (3,3k) włączają przekaźnik P2 (JRC21F), który ma za zadanie uruchomić silnik. Diody D1 (1N4007) i D2 (1N4007) zabezpieczają tranzystory przed przepięciami mogącymi pojawić się na cewkach przekaźników. Złącze IN (Ark) służy do podłączenia napięcia zasilającego silnik a OUT (ARK) do uzwojenia silnika. Zasilanie sterownika o wartości 5V podpinamy do złącza zas. Na rysunku poniżej przedstawiony jest schemat ideowy płytki z czujnikami krańcowymi: Budowa:Sterownik można zbudować w oparciu o płytkę drukowaną dostępną tutaj. Płytka w odbiciu lustrarzanym dostępna jest tutaj. Montaż rozpoczynamy od wlutowania dwóch zwór. Kolejność pozostałych elementów nie jest ważna. Diodę D2 należy przylutować od strony druku. Pod mikrokontroler U1 bezwzględnie konieczna jest podstawka, gdyż w przeciwnym razie nie będzie można go zaprogramować. Zamiast złącz ARK można z powodzeniem wlutować przewody bezpośrednio w płytkę. Pomocą przy budowie może okazać się schemat montażowy dostępny tutaj. Płytkę czujników krańcowych można wykonać w oparciu o rysunek dostępny tutaj. Obraz w odbiciu lustrzanym dostępny jest tutaj. Płytka czujników zawiera tylko dwa przełączniki krańcowe (dodatkowy styk alarmowy na wypadek uszkodzenia pierwszego) i złącze do przylutowania przewodów. Kolejoność montażu jest dowolna. Do współpracy ze sterownikiem konieczne są dwa takie moduły. Pomocą w montażu może okazać się dostępny tutaj schemat montażowy. Na rysunku poniżej przedstawiony jest schemat blokowy połączeń: Część Mechaniczna:Konstrukcja mechaniczna przedstawiona jest na zdjęciach u dołu strony. Składa się ona z kawałka blachy będącej podstawą i przyspawanych do niej blach kontowych (kontowniki do budowania konstrukcji drewnianych). Do jednego z kontowników przykręcony jest silnik z przekładnią a do jego osi za pomocą gwintowanej tulejki (szeroka nakrętka do łączenia prętów budowlanych) przymocowany jest kawałek gwintowanego pręta o średnicy 10mm. Tulejka, pręt i wał silnika są przewiercone i skręcone za pomocą śrub 3mm. Zapewnia to bezproblemowe przeniesienie momentu obrotowego. Na gwintowany pręd nakręcona jest jeszcze jedna tulejka (nakrętka) do której przyspawany jest kawałek blachy, stanowiący wózek z bloczkami. Przez bloczki (skręcone z różnej wielkości podkładek) przerzucone są stalowe linki ciągnące prowadnice rusztu. Przesunięcie wózka o 1cm powoduje zmianę długości linek o 2cm. Konstrukcja może wydawać się skomplikowana ale taki układ mechaniczny sprawia że ruszt nie opada na dół po wyłączeniu silnika, a dzięki przekładni "śrubowej" możliwe jest zastosowanie silnika o niewielkiej mocy (np. 24V/10W ok. 100obr/min). Poniższy rysunek przedstawia budowę układu mechanicznego: Wykaz Elementów:3x Złącze ARK2 (nie są konieczne) 2x Listwa Gold Pin 1x4 1x Przekaźnik JRC21F 1x Przekaźnik AZ822 6x 3,3k 2x 33pF 1x Rezonator Kwarcowy 12MHz Programowanie:Mikrokontroler do sterownika został zaprogramowany w wersji demo programu BASCOM 8051 firmy MCS Electronics (http://www.mcselec.com/). Program przedstawiony jest poniżej: '**************************** 'Konfiguracja '**************************** $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 '**************************** 'Zmienne '**************************** Dim Licznik As Byte Dim Licznik2 As Byte Dim Licznik_sygnal As Byte Dim N As Byte Dim Flaga As Bit Dim Flaga2 As Bit Dim Licz_sw(5) As Byte Dim Ruch As Byte '0=stop 1= gora 2=dol 3=gora max 4=dol max Dim Kierunek As Bit Dim Sstart As Bit Dim Sygnal As Bit Dim Sygnal_e As Bit '**************************** 'Nazwy Wyprowadzeń '**************************** Sw_down Alias P1.7 Sw_stop Alias P1.6 Sw_up Alias P1.5 Edge_max Alias P3.2 Edge_max_e Alias P3.3 Edge_min Alias P3.4 Edge_min_e Alias P3.5 P_start Alias P1.4 P_kierunek Alias P1.3 Buzzer Alias P1.2 '**************************** 'Wartosci Poczatkowe '**************************** P1 = 255 P3 = 255 Set Flaga2 Reset Sygnal Buzzer = 0 Waitms 100 Buzzer = 1 Waitms 100 Buzzer = 0 Waitms 100 Buzzer = 1 '**************************** 'Petla glowna '**************************** Do If Sygnal_e = 1 Then For N = 1 To 10 Buzzer = 0 Waitms 100 Buzzer = 1 Waitms 100 Next N Sygnal_e = 0 Flaga2 = 1 End If If Flaga = 1 And Flaga2 = 1 Then 'co 10ms Reset Flaga If Sygnal = 1 Then Buzzer = 0 Incr Licznik_sygnal If Licznik_sygnal = 20 Then Licznik_sygnal = 0 Buzzer = 1 Sygnal = 0 End If End If If Sw_up = 0 And Sw_stop = 1 And Sw_down = 1 Then 'up Incr Licz_sw(1) If Licz_sw(1) = 255 Then Licz_sw(1) = 253 Licznik2 = 0 Ruch = 1 End If Else Licz_sw(1) = 240 End If If Sw_down = 0 And Sw_stop = 1 And Sw_up = 1then 'down Incr Licz_sw(2) If Licz_sw(2) = 255 Then Licz_sw(2) = 253 Licznik2 = 0 Ruch = 2 End If Else Licz_sw(2) = 240 End If If Sw_down = 1 And Sw_stop = 0 And Sw_up = 1 Then 'stop Incr Licz_sw(3) If Licz_sw(3) = 255 Then Licz_sw(3) = 253 Ruch = 0 End If Else Licz_sw(3) = 240 End If If Sw_up = 0 And Sw_stop = 0 And Sw_down = 1 Then 'up max Incr Licz_sw(4) If Licz_sw(4) = 255 Then Licz_sw(4) = 253 Ruch = 3 End If Else Licz_sw(4) = 240 End If If Sw_down = 0 And Sw_stop = 0 And Sw_up = 1 Then 'down max Incr Licz_sw(5) If Licz_sw(5) = 255 Then Licz_sw(5) = 253 Ruch = 4 End If Else Licz_sw(5) = 240 End If Select Case Ruch Case 0: Kierunek = 1 Sstart = 1 Case 1: Kierunek = 1 Sstart = 0 Incr Licznik2 If Licznik2 = 5 Then Licznik2 = 0 Ruch = 0 End If Gosub E_max Case 2: Kierunek = 0 Sstart = 0 Incr Licznik2 If Licznik2 = 5 Then Licznik2 = 0 Ruch = 0 End If Gosub E_min Case 3: Kierunek = 1 Sstart = 0 Gosub E_max Case 4: Kierunek = 0 Sstart = 0 Gosub E_min End Select If P_kierunek <> Kierunek Then P_kierunek = Kierunek If P_start <> Sstart Then P_start = Sstart End If Loop End '**************************** 'Przerwanie timer0 co 250us '**************************** Przerwanie0: Incr Licznik If Licznik = 40 Then Licznik = 0 Set Flaga End If Return '**************************** 'Inne Etykiety '**************************** E_max: If Edge_max = 0 Then Ruch = 0 Kierunek = 1 Sstart = 1 Set Sygnal End If If Edge_max_e = 0 Then Ruch = 0 Kierunek = 1 Sstart = 1 Flaga2 = 0 Set Sygnal_e End If Return E_min: If Edge_min = 0 Then Ruch = 0 Kierunek = 1 Sstart = 1 Set Sygnal End If If Edge_min_e = 0 Then Ruch = 0 Kierunek = 1 Sstart = 1 Flaga2 = 0 Set Sygnal_e End If Return '**************************** Zdjęcia Projektu:
|
|||||||||||||||||||||||||||||||
Witam
witam chciałbym wykonać sobie taki układ lecz z oddzielną klawiaturą przy grilu czy jest taka możliwość??
jeśli tak to jak to zrobić
albo jeszcze lepiej gdyby ruszt można było podnosić na pilota:)
Re: Ruszt
Klawiaturę możesz dać w dowolne miejsce, to poprostu 3 najzwyklejsze przyciski. Odnośnie sterowania na pilota to dało by radę to wykonać ale to całkowita przeróbka programu albo przynajmniej znacznaj jego części, teraz brak mi czasu aby to wykonać.
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.
Dlacyego sa po dwa przyciski
Dlacyego sa po dwa przyciski krańcowe - dodatkowe zabezpieczenie gdyby pierwszy nie zadziałał
Re: Podnoszenie rusztu grilowego
Dokładnie tak, pierwsze krańcówki działają przy normalnej pracy, dalsze dwie jeśli zostaną zwarte to procesor nie pozwoli ruszyć rusztem w którąkolwiek stronę, bo znaczy to że jest awaria krańcówek. Aby dało się dalej korzystać z urządzenia wymagana jest ręczna ingerencja w mechanizm
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.
Zmiana procesora na ATTiny2313
Witam chciałem wykorzystać sterowanie do bramy wjazdowej i mam parę pytań.1:czy jest możliwe wykorzystanie ATTiny2313 i jak bardzo trzeba zmienić program.2:czy trzeba zmieniać coś na płytce drukowanej.3:czy po jednokrotnym naciśnięciu przycisku układ działa do momentu wyłączenia przez wyłącznik krańcowy.
Re: Ruszt grilowy
1. Da się zrobić to na ATTINY2313
2. Nic nie trzeba zmieniać na płytce
3. Po jednokrotnym naciśnięciu "strzałek" układ działa tylko na chwilę, po naciśnięciu na stop + strzałka działa do krańcówki
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.
Zmiana procesora na ATTiny2313
Dzięki za odpowiedz.Mirek co oprócz nazw wyprowadzeń i nazwy procesora trzeba zmienić w programie.Czytałem różne tematy i było coś wspomniane o konfiguracji timera ale nie jestem pewien.Jak byś mógł wskazać które fragmenty kodu trzeba zmienić aby działało z Attiny2313 oraz po naciśnięciu przycisku układ pracował do wyłączenia go przez krańcówki bez konieczności naciskania dwóch przycisków.Wim że jesteś zajęty poważniejszymi rzeczami ale jak byś znalazł chwilę był bym wdzięczny.
Re: Podnoszenie grila
Wcale to nie jest takie proste do zrobienia.. musisz:
1. Napisać całą konfigurację procesora (lepiej wklej z jakiegoś mojego projektu z attiny i pozmieniaj), ustawiając typ wyprowadzeń (wejścia/wyjścia)
2. Konfiguracja timera jest inna, musisz tak dobrać ustawienia aby zmienna flaga była ustawiana co ten sam odcinek czasu co w programie dla 2051.
3. Zamieniać nazwy pinów
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.
Zmiana procesora na ATTiny2313
Mirek dzięki za odpowiedz płytkę mam już wykonaną teraz pozmieniam program tak jak napisałeś i będę testował