Popularny post int Napisano Czerwiec 28, 2022 Popularny post Udostępnij Napisano Czerwiec 28, 2022 (edytowany) Cześć! Zbudowałem automatyczny włącznik światła nad drzwiami wejściowymi do mieszkania, oparty na serwie sterowanym przez ATTiny. Włącznik światła znajduje się w mieszkaniu. Szukanie kluczy bez światła było dość uciążliwe. Wstępnie myślałem o instalacji PIR, ale nie chcę by światło włączali mi mieszkańcy przechodzący klatką schodową, dlatego ostatecznie użyłem kontaktrona zainstalowanego na klamce. Budowa: Kontaktron otwiera się przy naciśnięciu klamki i otwarciu drzwi. Na ścianie nad włącznikiem wisi (na razie bez obudowy) układ sterowania, a przy włączniku zamocowałem serwo, po pierwsze po to, by nie dłubać przy napięciu 230V, a po drugie, by nadal używać włącznika manualnie. Działanie: W stanie spoczynku prąd płynie jedynie przez rezystor 50k. Otwarcie kontaktrona lub wciśnięcie jednego z przycisków powoduje podanie zasilania, na ATTiny i na serwo. I tu zaczyna się magia: na wstępie mikrokontroler zapewnia sobie zasilanie na czas pracy przez ten sam tranzystor, którym został zasilony wstępnie. Następnie sprawdza w jaki sposób został uruchomiony (przyciski i kontaktron są podłączone do wejść). Przyciski realizują funkcje On i Off. On: ustawia serwo w pozycji włączenia, czeka 0.5s, ustawia w pozycji środkowej i czeka 0.5s Off: ustawia serwo w pozycji wyłączenia, czeka 0.5s, ustawia w pozycji środkowej i czeka 0.5s Po wykonaniu sekwencji następuje odcięcie zasilania. Uruchomienie przez kontaktron realizuje procedurę: Czekaj 3s, wykonaj funkcję On, czekaj aż kontaktron zostanie zwarty, odczekaj 10s, wykonaj funkcję Off, wyłącz zasilanie. Sterowanie serwem realizuje się nie ciągłym sygnałem PWM, a pojedynczym impulsem odpowiedniej długości. Trochę o zasilaniu: Mikrokontroler ma podłączone +5V na stałe, a masę przez tranzystor NPN wstępnie zatkany rezystorem ściągającym bazę do masy. Aby go włączyć należy podać na bazę tranzystora stan wysoki. Jeden z pinów ATTiny jest podpięty pod tę bazę, aby po uruchomieniu sam mógł podtrzymać otwarcie tranzystora. Przyciski podają stan wysoki na wybrane wejścia mikrokontrolera i poprzez diody na bazę NPN'a. Diody są po to by stan wysoki nie cofał się z jednego przycisku na drugi i nie informował błędnie mikrokontrolera o tym, że wszystkie przyciski są wciśnięte. W efekcie po naciśnięciu przycisku ATTiny się uruchamia, podaje stan wysoki na bazę NPN'a zapewniając sobie zasilanie i sprawdza po wejściach którym przyciskiem został obudzony. Po wykonaniu zadania podaje na bazę NPN'a stan niski odcinając sobie zasilanie. Trochę inaczej wygląda sprawa kontaktrona. Tu użyłem tranzystora MOSFET, bo jest sterowany napięciem, a nie prądem. Bramka jest podłączona do +5V przez rezystor 50k i do masy przez kontaktron. Gdy ten jest zamknięty, MOSFET też. Po otwarciu kontaktrona na bramce pojawia się wyższy potencjał i otwiera MOSFET'a, a ten tak jak przyciski podaje stan wysoki na wybrane wejście mikrokontrolera i jednocześnie przez diodę na bazę NPN'a. W stanie spoczynku przez rezystor 50k płynie prąd. Gdybym tu użył typowego NPN'a sterowanego prądem, a nie napięciem, rezystor musiałby mieć znacznie mniejszy opór by zapewnić prąd włączenia, więc w stanie spoczynku układ czerpałby więcej energii. Uff, przebrnąłem... Ostatecznie układ działa tak: Podchodzę do drzwi i naciskam klamkę. Po 3 sekundach włącza się światło. Teraz mam 10 sekund na otwarcie drzwi kluczem (zwykle wystarcza). Po otwarciu drzwi odliczanie 10 sekund zostaje zresetowane, więc światło świeci tak długo, jak długo drzwi są otwarte. Po ich zamknięciu odliczanie startuje ponownie i światło gaśnie po 10 sekundach. Podsumowanie: Układ działa od kilku tygodni i nie doczekał się jeszcze ostatecznej wersji i obudowy. W tym czasie usunąłem kilka drobnych problemów. Pierwszym było sterowanie serwem, które nie zawsze działało. Nie wiem z czego dokładnie problem wynikał, ale postanowiłem wysyłać na serwo nie jeden impuls, a serię 5 impulsów imitującą ciągły sygnał PWM. Problem zniknął. Drugim problemem było zasilanie serwa. Za każdym razem gdy chciało wykonać ruch resetowało mi mikrokontroler. Nie umiałem tego spadku napięcia niczym pokonać, więc zbudowałem osobny układ zasilania z 7805 włączany tranzystorem. Nadal testuję, później pomyślę o obudowie i estetyczniejszym montażu elementów. Pozdrawiam! 🙂 Edytowano Czerwiec 28, 2022 przez int 4 Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 29, 2022 Udostępnij Czerwiec 29, 2022 @int opis projektu został właśnie zatwierdzony, więc jest już widoczny publicznie 🙂 1 Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Czerwiec 29, 2022 Udostępnij Czerwiec 29, 2022 Gdzieś na instructables widziałem bardzo fajny projekt - serwo ukryte wewnątrz wyłącznika. Niestety - jakoś nie mogę tego teraz znaleźć, ale może warto poszukać? Cytuj Link do komentarza Share on other sites More sharing options...
int Czerwiec 29, 2022 Autor tematu Udostępnij Czerwiec 29, 2022 @ethanak Na to nie wpadłem, pogrzebię w internetach, może coś trafię.🙂 Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Zakrzewiaczek Czerwiec 30, 2022 Udostępnij Czerwiec 30, 2022 (edytowany) A może serwo sterujące światłem zastąpić przekaźnikiem? Jest to o wiele prostrze, mniej awaryjne, a samo pisanie kodu opiera się tylko na podawaniu stanu wysokiego i niskiego na pin sterujący przekaźnikiem. Pozdrawiam wszystkich 😉 Edytowano Czerwiec 30, 2022 przez Zakrzewiaczek Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Czerwiec 30, 2022 Udostępnij Czerwiec 30, 2022 (edytowany) To lepiej przekaźnikiem bistabilnym dwucewkowym. Tyle, że wtedy tracisz wyłacznik. Edytowano Czerwiec 30, 2022 przez ethanak Cytuj Link do komentarza Share on other sites More sharing options...
int Czerwiec 30, 2022 Autor tematu Udostępnij Czerwiec 30, 2022 @Zakrzewiaczek @ethanak W tym rzecz, że chciałem zachować podstawową funkcjonalność włącznika. Z przekaźnikiem rzeczywiście byłoby prościej, ale straciłbym sam włącznik. Teraz myślę nad instalacją wewnątrz pary miniaturowych siłowników, które potrafiłyby ustawić włącznik w odpowiedniej pozycji nie odbierając moźliwości sterowania manualnego. Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Czerwiec 30, 2022 Udostępnij Czerwiec 30, 2022 Wystarczy pojedyncze serwo. W pozycji neutralnej pozwala na ręczne przełączenie. Subminiaturowe serwo zmieści się w puszce razem z wyłącznikiem, tylko trzeba trochę pokombinować. Cytuj Link do komentarza Share on other sites More sharing options...
int Czerwiec 30, 2022 Autor tematu Udostępnij Czerwiec 30, 2022 @ethanak W zasadzie racja. Na zewnątrz też mam tylko jedno działające na takiej właśnie zasadzie. Poszukam jeszcze takich ultramałych serw. Cytuj Link do komentarza Share on other sites More sharing options...
ethanak Czerwiec 30, 2022 Udostępnij Czerwiec 30, 2022 PowerHD HD-1440A albo 1370A Cytuj Link do komentarza Share on other sites More sharing options...
int Czerwiec 30, 2022 Autor tematu Udostępnij Czerwiec 30, 2022 @ethanak Dzięki wielkie, już mam kilka pomysłów jak to zamontować. 🙂 Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!