Spisu treści:
- Krok 1: Zbieranie komponentów
- Krok 2: Montaż obwodu
- Krok 3: Instalacja i ustawienie zegara
- Krok 4: Kodowanie
- Krok 5: Prototyp kartonu (opcjonalnie)
Wideo: Budzik Sunrise z Arduino: 9 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Zima może być smutna. Budzisz się, jest ciemno i musisz wstać z łóżka. Ostatnią rzeczą, którą chcesz usłyszeć, jest ryczący dźwięk budzika. Mieszkam w Londynie i rano ciężko mi się obudzić. Tęsknię też za wstawaniem do naturalnego światła.
W tym samouczku zbudujemy budzik o wschodzie słońca. To budzik, jak każdy inny, ponieważ możesz ustawić godzinę i minutę, kiedy chcesz się obudzić, ale z dodatkową korzyścią, jaką jest użycie światła do rozjaśnienia sypialni przez okres czasu, jak wschód słońca, aby obudzić cię bardziej naturalnie.
Lampy Sunrise istnieją na rynku, ale mogą być drogie (szybkie wyszukiwanie na Amazon zwraca produkty w zakresie 100 funtów), kruche i dość klinicznie wyglądające. Zamierzamy zrobić coś dużo tańszego i dużo ładniejszego.
Wszystkie części zostaną wymienione w następnym kroku. Kod można pobrać z mojego repozytorium Github Gold-Sunrise-clock. Wszystkie schematy i pliki kompilacji dla sprawy są dostępne do pobrania w tym samouczku.
Chodźmy:)
Jeśli napotkasz problemy lub chcesz się przywitać, napisz do mnie [email protected] lub śledź mnie na Instagramie @celinechappert.
Krok 1: Zbieranie komponentów
Na początek użyjemy zegara jako wejścia i ultrajasnej diody LED jako wyjścia, aby symulować nasz wschód słońca.
Do zbudowania obwodu będziemy potrzebować:
- zegar. Będziemy używać RTC DS3231 (5 GBP)
- MOSFET do kontroli jasności światła (9 funtów)
- superjasna dioda LED (1 £)
- bateria 9V do zasilania diody (£3)
- płytka stykowa ułatwiająca montaż (£3)
- Arduino Uno (20 £)
- przycisk (opcjonalnie - tylko do celów demonstracyjnych)
Całkowita cena = 41 £
Jeśli masz już w domu Arduino, płytkę stykową i baterię 9V, cały projekt będzie kosztował mniej niż 15 funtów.
Do wykonania akrylowej obudowy potrzebne będą:
- 2 arkusze arkuszy akrylowych Perspex 0,3 mm, 1 arkusz na kolor na słońce i etui.
- dostęp do wycinarki laserowej.
Mam szczęście, że miałam dostęp do warsztatu mojej szkoły, więc te koszty zostały w większości pokryte. Kupiłem dodatkowy arkusz akrylu, ponieważ mój projekt wymagał pomarańczowego odcienia słońca, co kosztowało 14 GBP za arkusz (Perspex jest drogi!).
Krok 2: Montaż obwodu
Możesz odwołać się do czarno-białego szkicu mojego obwodu (przepraszam za bałagan) oraz do schematu przedstawiającego Arduino (zrobione z Fritzing).
Zasadniczo tutaj jest podział tego, co jest połączone z czym:
Zegar:
(-) łączy się z GND
NC oznacza „Not Connected” i nie łączy się z niczym
C/SCL łączy się z pinem A5 na Arduino
D/SDA łączy się z pinem A4 na Arduino
(+) łączy się z 5V na Arduino
MOSFET
Pin bramki przechodzi do pinu ~ 9 w Arduino Uno, ponieważ jest to PWM
Spustowy pin przechodzi na ujemną stronę diody LED
Pin źródłowy idzie do GND na Arduino
PROWADZONY
Strona ujemna jest podłączona do bolca spustowego na MOSFET
Strona dodatnia jest podłączona do 5 V na płytce stykowej
Bateria 9V
(+) do (+) na płytce prototypowej, to samo z (-).
Arduino Uno
Pamiętaj, aby podłączyć 5V do (+) na płytce stykowej, a GND do (-). Pamiętaj, aby połączyć (-) po jednej stronie płytki stykowej z (-) po drugiej stronie.
Następnie ustawimy nasz zegar za pomocą biblioteki DS3231.
Krok 3: Instalacja i ustawienie zegara
Bibliotekę, której używam do uruchomienia tego zegara, można znaleźć w Rinky-Dink Electronics (zrzuty ekranu powyżej). Kliknij łącze i upewnij się, że jesteś na stronie DS3231. Pobierz plik zip, zapisz go i umieść w folderze /libraries Arduino.
Teraz, aby ustawić prawidłowy czas na zegarze, otwórz Arduino i przejdź do Przykłady/DS3231/Arduino/DS3231_Serial_Easy.
Odkomentuj trzy wiersze kodu (zaznaczone na pomarańczowo na zrzucie ekranu), sprawdź czas i umieść ten właściwy czas w tych trzech wierszach kodu w formacie wojskowym.
Naciśnij Prześlij.
Teraz możesz odkomentować te trzy wiersze i ponownie nacisnąć Prześlij.
Otwórz monitor seryjny i sprawdź, czy Twój czas jest prawidłowy.
Nasz zegar jest ustawiony! Mamy swój obwód, teraz zacznijmy kodować. Ponownie repozytorium jest dostępne na Github.
Krok 4: Kodowanie
Pobierz kod i upewnij się, że biblioteka dla DS3231 jest poprawnie zainstalowana.
Najpierw chcemy zdefiniować nasze ustawienia.
fadeTime to czas, przez jaki światło zgaśnie od 0 do maksymalnej jasności w minutach. setHour/setMin odpowiadają czasowi, w którym chcemy się obudzić (uwaga: jest to format wojskowy, więc wymagany jest czas 24h). Pin 9 w Arduino definiujemy również jako nasze WYJŚCIE.
W setup() upewnij się, że numer SerialBegin (tutaj 96000 bodów) odpowiada numerowi Serial Monitor.
W loop() instrukcja if sprawdza, czy czas się obudzić. Kod działa w pętli, sprawdzając za każdym razem, czy wartości godziny i minuty zwracane przez zegar odpowiadają naszym zmiennym setHour/setMin. W takim przypadku instrukcja if zwraca funkcję active().
Funkcja active() składa się z dwóch części. Najpierw zaczynamy stopniowo przyciemniać światło: funkcje opóźnienia są tutaj, aby zapobiec zbyt szybkiemu rozjaśnianiu się diody LED we „wczesnych” etapach FadeTime. Następnie pętla for kontroluje prędkość, z jaką światło powinno stawać się coraz jaśniejsze w zależności od czasu zanikania. Na koniec wyłączamy światło, przekazując wartość 0 do naszej diody LED w funkcji analogWrite().
Powyższy film przedstawia układ pracujący w jednej z prototypowych akrylowych obudów.
Krok 5: Prototyp kartonu (opcjonalnie)
Przed tym projektem nigdy nie pracowałem z wycinarką laserową. Wykonanie tekturowego prototypu umożliwiło mi zapoznanie się z maszyną podczas testowania, jak dobrze wygląda obiekt (rozmiar, wygląd itp.) w rzeczywistej przestrzeni. Plany spraw do pobrania.
Zalecana:
Inteligentny budzik: inteligentny budzik z Raspberry Pi: 10 kroków (ze zdjęciami)
Inteligentny budzik: inteligentny budzik z Raspberry Pi: Czy kiedykolwiek chciałeś mieć inteligentny zegar? Jeśli tak, to jest to rozwiązanie dla Ciebie! Zrobiłem Inteligentny Budzik, jest to zegar, w którym możesz zmienić godzinę alarmu zgodnie ze stroną internetową. Gdy alarm się włączy, rozlegnie się dźwięk (brzęczyk) i 2 światła będą
Budzik binarny Arduino DIY: 14 kroków (ze zdjęciami)
DIY Arduino binarny budzik: to znowu klasyczny zegar binarny! Ale tym razem z jeszcze większą funkcjonalnością! W tej instrukcji pokażę, jak zbudować budzik binarny z Arduino, który może pokazywać nie tylko godzinę, ale także datę, miesiąc, nawet z zegarem i zabawą z budzikiem
Budzik Sunrise z wyświetlaczem LCD i aplikacją Bluetooth: 8 kroków
Budzik Sunrise z wyświetlaczem LCD i aplikacją Bluetooth: Zima może być smutna. Budzisz się, jest ciemno i musisz wstać z łóżka. Ostatnią rzeczą, którą chcesz usłyszeć, jest denerwujący dźwięk budzika. Jeśli tak jak ja masz problem z budzeniem się rano, ten budzik jest właśnie tym, czego potrzebujesz.W
Budzik LED Sunrise: 5 kroków (ze zdjęciami)
Budzik LED Sunrise: Problemy ze wstawaniem rano? Nienawidzisz ostrego, przeszywającego dźwięku alarmu? Czy wolałbyś sam zrobić coś, co prawdopodobnie mógłbyś kupić za mniej pieniędzy i czasu? W takim razie sprawdź ten budzik LED Sunrise! Alarmy wschodu są zaprojektowane tak, aby
Budzik LED Sunrise z konfigurowalnym alarmem utworu: 7 kroków (ze zdjęciami)
Budzik LED Sunrise z konfigurowalnym alarmem piosenki: moja motywacja Tej zimy moja dziewczyna miała wiele problemów z budzeniem się rano i wydawała się cierpieć na SAD (sezonowe zaburzenie afektywne). Zauważam nawet, o ile trudniej jest obudzić się zimą, skoro słońce nie wstało