Spisu treści:

555 Timer do emisji sygnału w celu przerwania Atmega328: 7 kroków
555 Timer do emisji sygnału w celu przerwania Atmega328: 7 kroków

Wideo: 555 Timer do emisji sygnału w celu przerwania Atmega328: 7 kroków

Wideo: 555 Timer do emisji sygnału w celu przerwania Atmega328: 7 kroków
Wideo: Generator Colpittsa (1) 2024, Listopad
Anonim
555 Timer do emisji sygnału w celu przerwania Atmega328
555 Timer do emisji sygnału w celu przerwania Atmega328

Głównym celem tego obwodu jest oszczędność energii. Nie będę więc mówić o arduino, ponieważ sama płyta ma niepotrzebne obciążenie dla produktu końcowego. Świetnie się rozwija. Ale niezbyt dobre dla końcowych projektów działających na bateriach. Użyję jednego do mojego POC, ale aby zaoszczędzić energię, korzystanie z samodzielnego Atmega328 da lepsze wyniki

Zrobiłem stację pogodową (TOBE), która będzie ładować równolegle parę akumulatorów 3,7 V za pomocą panelu słonecznego. Moja pierwsza wersja poszła bardzo dobrze, dziękuję. Ale miałem problem. Zużycie baterii było większe niż szybkość ładowania panelu słonecznego. Nie wchodzę tutaj w liczby. Ale po chwili zauważyłem, że poziom baterii powoli spada. Pomijając fakt, że pochodzę z Kanady i słońce nie jest tu towarem. Następnie użyłem biblioteki, aby uśpić Atmega328 na 8 sekund (są inne ramy czasowe, ale 8 sekund to więcej), a potem wróciłem do pracy. Użycie jest bardzo proste i działa tak, jak powinno. Ale 8 sekund mi nie wystarczyło.

To dlatego, że moja stacja pogodowa ma 3 elementy.

  • Zegar czasu rzeczywistego
  • DHT11
  • Wyświetlacz Oled

Zegar pokazuje się na wyświetlaczu z dokładnością do minuty. Temperatura i wilgotność nie są czymś, co musimy aktualizować tak często. Musiałem więc wymyślić coś, co pozwoliłoby mi poprawić interwał i chciałem się przy tym dobrze bawić.

Zbudowałem sprawdzoną koncepcję, aby mieć timer 555 w trybie astabilnym, aby obudzić Atmega328 za pomocą zewnętrznych przerwań. To właśnie zamierzam tutaj pokazać

Kieszonkowe dzieci

Do tego Instruktażowego będziemy potrzebować następujących materiałów:

  • Płytka Arduino
  • Układ czasowy 555
  • 2 rezystory (1M omów, 220 omów)
  • 1 spolaryzowany kondensator (100uF)
  • Przewody połączeniowe
  • Czujnik DHT11
  • Deska do krojenia chleba

Krok 1: Najpierw układ

Najpierw układ
Najpierw układ

Zacznijmy od układu na tablicy prototypowej. Używam czujnika DHT, aby wskazać inny sposób oszczędzania energii w twoich projektach. Jak widać, urządzenie jest zasilane przez pin Arduino. Który będzie NISKI, gdy Arduino śpi, oszczędzając jeszcze więcej energii. Możesz to zrobić z dowolnym urządzeniem, które wymaga mniej niż 40mA do działania.

Krok 2: Wyjaśnienie dotyczące obwodu

Nie będę zagłębiać się w działanie timera 555, ponieważ jest tam wiele samouczków wyjaśniających jego operacje i kilka trybów. Używamy timera 555 w trybie astabilnym. Oznacza to, że na wysokim poziomie ładuje kondensator do 2/3 V przez taki czas, jak określa rezystor 1, a następnie rozładowuje go na tyle, ile określają rezystory 2. W rzeczywistości nie potrzebujemy zbyt wiele czasu na sygnał rozładowania, więc możesz użyć rezystora 220 Ohm. Użycie kombinacji rezystorów 1M omów i 220 omów zapewni opóźnienie około 1 minuty. Zabawa z pierwszym rezystorem i kondensatorem da różne czasy.

Krok 3: Szkic

Krok 4: Wyjaśnienie szkicu

Celem tego szkicu jest odczytanie Wilgotności i Temperatury i pójście spać, aż dostanie impulsu, aby się obudzić i przeczytać ponownie.

W tym celu ustawiam pin przerwania jako INPUT_PULLUP (więcej o pullupach w innym odcinku). I ta szpilka będzie miała dołączoną przerwę za każdym razem, gdy praca zostanie zakończona.

Gdy nadejdzie sygnał przerwania, kod zostanie uruchomiony ponownie i ponownie uśpiony. I tak dalej.

Krok 5: Niektóre liczby

Niektóre liczby
Niektóre liczby
Niektóre liczby
Niektóre liczby

W przypadku tego POC pomiary wykonałem w około 3 sekundy. Następnie urządzenie spało przez około 1 minutę.

Używając precyzyjnego miernika 0,001 AMP do pomiaru prądu, widziałem 0,023-0,029 AMP przez czas pracy (~3 sekundy) i 0,000 podczas snu (~1 min). Oczywiście nie jest to odczyt zerowy, ponieważ mamy uruchomiony 555. Ale nie poszedłem do Microamps. W każdym razie oszczędność jest znaczna

Krok 6: Schemat i PCB

Schemat i PCB
Schemat i PCB
Schemat i PCB
Schemat i PCB
Schemat i PCB
Schemat i PCB

Dla tych z Was, którzy chcą w tym celu zbudować płytkę drukowaną, oto link do niej:

Znajdziesz tam projekt i schemat, który można wysłać do dowolnego dostawcy PCB.

Jest też folder o nazwie print_version dla tych, którzy lubią wytrawiać PCB w domu, tak jak ja.

Krok 7: Aplikacje

Zastosowania tego są ogromne. Za każdym razem, gdy potrzebujesz zewnętrznego sygnału przychodzącego z określoną szybkością, możesz użyć tego obwodu. Używam do usypiania mojej stacji pogodowej i jeden z modułów uśpi się wraz z Atmega328.

Aby uzyskać skuteczne wyniki w oszczędzaniu energii, powinieneś rozważyć posiadanie samodzielnego Atmega328. Projektuję płytkę z taką możliwością i niedługo będę mógł podpiąć w tej koncepcji dowolny projekt Atmega328.

Jeśli masz dobre pomysły na wdrożenie rozwiązań oszczędzających energię, jak najbardziej, daj mi znać, ponieważ naprawdę interesuję się projektami dotyczącymi baterii i paneli słonecznych

Dziękuję za przeczytanie i do zobaczenia następnym razem z kolejnymi projektami.

Zalecana: