Spisu treści:
- Co to jest zegar nieskończoności?
- Zacznijmy teraz…
- Krok 1: Czego potrzebujesz?
- Przygotuj swoje komponenty
- Możesz także…
- Krok 2: Złóż zegar
- Przygotuj sprawę
- Następnie część elektroniczna
- Sprawdź wszystko… dwa razy
- Krok 3: Prześlij kod
- Zaprogramujmy
- Zauważ, że…
- Krok 4: Ciesz się
- Ostatnie ustawienie…
- Animacje…
- Co jeszcze?
- Krok 5: Nowa wersja, aby zachować dokładny czas
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02
Widziałem wiele projektów Infinity Mirrors i Infinity Clocks na Instructables, więc postanowiłem zrobić swój. Może nie różni się zbytnio od innych… ale zrobiłem to sam, i tak jest !
Jeśli jeszcze tego nie wiesz:
Co to jest zegar nieskończoności?
Zegar nieskończoności wykorzystuje wielokrotne odbicia między lustrem a lustrem półodblaskowym, aby dać iluzję wielkiej głębi, podczas gdy ma tylko jeden centymetr głębokości!
Czas jest wskazywany przez diody LED, które wielokrotnie odbijają się między tymi interfejsami i dają wrażenie głębi.
Wielokrotne refleksy dają wrażenie głębi
Diody LED są adresowalne i wielokolorowe, dzięki czemu można z nich łatwo tworzyć animacje świetlne.
Chciałem, aby był interaktywny i zmieniał się, więc dodałem sterowanie smartfonem za pomocą komunikacji Bluetooth. Istnieje prawdziwa komunikacja między zegarem a smartfonem na dwa sposoby. Użytkownik może używać interfejsu HMI (Human Machine Interface) do zmiany różnych parametrów, takich jak animacje, kolory. Ale może również wysyłać bezpośrednie polecenia, na przykład, aby zmienić godzinę, a zegar odpowiada, że polecenie zostało zaakceptowane, czy nie.
Interfejs HMI został wykonany za pomocą programowalnej aplikacji na Androida, więc musiałem go tylko zaprojektować i zakodować komunikację po stronie Arduino.
Zacznijmy teraz…
Krok 1: Czego potrzebujesz?
Aby zbudować ten zegar nieskończoności, potrzebujesz tego (ceny są orientacyjne):
- Arduino nano (2 USD)
- Adresowalny pasek led, taki jak diody WS2812, 60 diod na metr (6 USD)
- Moduł bluetooth, taki jak HC-05 (3 USD)
- Deska do krojenia chleba (1,5 USD)
- Zasilanie 5V, zdolne dostarczyć 4A lub więcej
- Kilka przewodów elektrycznych
- Smartfon z systemem Android i aplikacja Bluetooth Electronics firmy KeuwlSoft
- Niektóre kawałki płyty pilśniowej średniej gęstości (MDF, jeden o grubości 3 mm i jeden o grubości 10 mm)
- Przezroczysta pleksi lub płyta z pleksiglasu (około 15 do 20 USD)
- Folie samoprzylepne do lustra i półodblaskowego lustra (od 4 do 15 USD)
- Złącza, rezystory i jedna pojemność 1000µF
- Trochę kleju i taśmy klejącej.
Schemat zasady geometrii zegara
Płyta pleksi powinna mieć grubość od 2 do 3 mm, aby podczas użytkowania pozostawała na swoim miejscu.
Powyższy diagram wyjaśnia geometrię zegara. Listwa led jest umieszczona pomiędzy dwoma lustrami. Oczywiście potrzeba 60 takich ledów na pasku. Możesz znaleźć paski ledowe z 60 diodami na metr, więc jedna z nich jest dobra. Wtedy obwód ledowego koła wynosi 1m, jego średnica to 100/PI = 31,8 cm (ok. 12,53 cala).
Przygotuj swoje komponenty
Wytnij okrąg o tej średnicy w płycie MDF o grubości 3 mm. W tym celu udałem się do lokalnego fablabu i poprosiłem o użycie wycinarki laserowej. Mogą nawet zrobić to za Ciebie, jeśli uprzejmie poprosisz i przyjdziesz z tablicą: zajmuje to tylko kilka sekund. Kiedy tam jesteś, wytnij ten sam krążek w swojej pleksiglasowej płycie.
Z płyty MDF masz teraz płytę i płytę z okrągłym otworem. Zachowaj je na później.
Aby utrzymać diody na miejscu, wytnij również w płycie MDF o grubości 1 cm cienki walec o tej samej średnicy. Grubość nie jest ważna, o ile nie jest zbyt krucha. Pasek LED zostanie umieszczony wewnątrz tego cylindra, dlatego ważne jest, aby obwód wewnętrzny był taki sam jak długość paska. Za długie lub za krótkie, a niektóre diody mogą być rozmieszczone w nieregularnych odstępach, więc bądź bardzo dokładny.
Cięcie tak grubej płyty może zająć trochę więcej czasu niż cięcie cienkiej. Zapytaj właściciela fablabu, czy jego wycinarka laserowa jest wystarczająco mocna, aby przeciąć tę grubość. Dla mnie laser musiał przejść ponad dziesięć razy dla tej części, w porównaniu do tylko dwóch dla drugiej płyty.
Możesz także…
Możliwe jest również zastosowanie przezroczystych lub kolorowych płyt pleksi zamiast MDF. Pleksiglas występuje w różnych kolorach, od czarnego przez żółty po zielony i fioletowy, więc nie wahaj się ich wypróbować.
Fablab wie, jak je ciąć, a cięcie pleksi jest bardzo „czyste” w porównaniu do drewna, które może „spalić się” (mam na myśli zmianę koloru pod wpływem energii lasera) na ścieżce lasera. Istnieje również pleksi lustrzana, która może uchronić Cię przed zakupem folii lustrzanej. Pamiętaj tylko przy cięciu, aby wysłać laser na tylną stronę lustra…
Poniżej znajdują się pliki geometrii do cięcia laserowego.
Krok 2: Złóż zegar
Aby zrobić zegar, wystarczy złożyć części zgodnie ze schematem.
Przygotuj sprawę
Najpierw przyklej folię lustrzaną na płycie MDF. To będzie dno zegara.
Po drugie, przyklej półprzezroczystą folię na krążku z pleksiglasu. To tworzy przednią szybę zegara. Płyta ta zostanie umieszczona w płycie MDF, w otworze koła: w razie potrzeby skleić klejem do drewna lub użyć gumy silikonowej.
Na koniec przygotuj diody LED. Diody LED WS2812 wykorzystują 3 podkładki połączeniowe: zasilanie, uziemienie i sterowanie. Jeśli są już podłączone 3 przewody elektryczne, po prostu ich użyj. W przeciwnym razie przylutuj 3 przewody do podkładek połączeniowych. Pamiętaj, że diody LED są urządzeniami spolaryzowanymi: oznacza to, że prąd płynie tylko w jednym kierunku. Ten kierunek jest wskazany na pasku strzałką. Następnie należy przylutować przewody na końcu paska, z którego wychodzą strzałki (nie koniec, na który wskazują strzałki).
Wklej diody LED do grubego cylindra MDF i zmontuj 3 części za pomocą kleju i/lub taśmy.
Następnie część elektroniczna
Umieść Arduino w płytce stykowej i utwórz obwód, jak pokazano powyżej. Upewnij się, że wszystkie masy (GND) są podłączone (GND z Arduino, moduł HC-05, pasek LED i zasilanie).
- Piny RX i TX modułu Bluetooth HC-05 są podłączone do pinów D3 i D2 Arduino
- Linia danych paska LED jest podłączona do pinu D12, możesz wstawić rezystor 300 Ohm pomiędzy, jeśli go masz.
Jeśli chcesz zmienić piny, zmień odpowiednio ich definicje w kodzie (linie 7 i 13 pliku ino).
Zwróć uwagę, że moduł HC-05 wymaga dzielnika napięcia dla swojego pinu RX, jak pokazano poniżej. Potrzebujesz więc jednego rezystora 1000 Ohm i jednego 2000 Ohm.
Zasilanie wykorzystywane jest zarówno do Arduino, jak i do paska LED. Najpierw podłącz kondensator 1000µF do zacisku śrubowego (domino). Możesz użyć szybkiego złącza, jeśli masz jakieś. Więcej szczegółów znajdziesz tutaj.
Ten kondensator może być również spolaryzowany: upewnij się, że nogi + i - są podłączone do + i - zasilania. Jak widać na obrazku kondensatora, nóżka - oznaczona jest dużym minusem.
Następnie ze złącza podłącz przewody elektryczne, aby połączyć pasek LED i płytkę Arduino. Jak wspomniano powyżej, wszystkie GND powinny być ze sobą połączone. Z dodatniego potencjału zasilania podłącz przewód 5V listwy i przeciągnij przewód do pinu 5V Arduino: zostaw na chwilę niepodłączony, podłączysz go na końcu.
Sprawdź wszystko… dwa razy
Sprawdź wszystkie połączenia dwukrotnie… Użyj multimetru, jeśli masz taki, aby sprawdzić ciągłość elektryczną.
Jeśli wszystko się zgadza, Twój zegar jest prawie gotowy. Nie dostarczaj go na razie.
Krok 3: Prześlij kod
Zaprogramujmy
Aby wgrać kod w Arduino nano, użyj Arduino IDE. Umieść wszystkie pliki w folderze o nazwie „Horloge_LED3_nano_BTOK” w folderze Arduino. Otwórz IDE, wybierz odpowiednie parametry (typ płyty, port COM itp.) i kliknij przycisk przesyłania.
Na smartfonie z Androidem zainstaluj aplikację Bluetooth Electronics, możesz ją łatwo znaleźć w Google Play. Pobierz plik „BluetoothElectronicsCode.txt” z tej instrukcji i zmień rozszerzenie na zip: otrzymasz archiwum zip z kodem interfejsu smartfona, który będzie działał z elektroniką Bluetooth.
Kiedy będziesz gotowy, podłącz zasilanie. Zaświecą się diody LED, moduł HC-05 również zablokuje się w poszukiwaniu połączenia. Uruchom aplikację Android i postępuj zgodnie z instrukcjami, aby sparować moduł Bluetooth ze smartfonem. Gdy wszystko będzie gotowe, uruchom HMI: jesteś gotowy do gry!
Zauważ, że…
Pierwszą diodę LED paska należy umieścić na zegarze. Jeśli go tam nie umieściłeś, możesz zmienić wartość parametru offset w kodzie (linia 65 pliku ino). Dba o to.
Kiedy przykleiłeś pasek LED do płytkiego cylindra, były 2 opcje: albo pasek obraca się zgodnie z ruchem wskazówek zegara, albo przeciwnie do ruchu wskazówek zegara. Jeśli zrobiłeś to w niewłaściwy sposób, wskazówki zegara obrócą się w złym kierunku! Bez smutków. Po prostu zmień wartość zmiennej logicznej sens_horaire na true (wiersz 77 pliku ino)
Krok 4: Ciesz się
Ostatnie ustawienie…
Teraz ustaw czas. Można to zrobić za pomocą prostych poleceń, które wpisujesz w małej konsoli w lewej dolnej części HMI.
- Hxx: ustaw godziny na xx (np. H4)
- Myy: ustaw minuty (np. M15)
- Szz: ustaw sekundy (np. S30)
Polecenia można łączyć, wstawiając między nie gwiazdkę, na przykład: H4*M15*S35
Ustawienie godzin i/lub minut spowoduje wyzerowanie sekund.
Zobaczysz wtedy, że godzina jest śledzona przez CZERWONĄ diodę LED, minuty przez ZIELONĄ diodę LED:
Jest 9:52:00!
Kolor sekund można zmienić za pomocą suwaka na HMI
Gdy przesuniesz suwak, małe kółko po prawej stronie pokazuje bieżący kolor. Gdy suwak się zatrzyma, wysyła kolor do zegara, a dioda LED sekund odpowiednio się zmienia.
Suwaki ANIMACJA i PALETA służą do wybierania i dostosowywania animacji świetlnych na zegarze. Przetestuj je i spójrz na wideo, aby zobaczyć kilka przykładów. Gdy zmienisz niektóre ustawienia w HMI, mała konsola pokazuje odpowiedź z Arduino.
Animacje…
- 0: Po prostu wyświetla czas, możesz zmienić kolor sekund za pomocą suwaka.
- 1: Kolorowe tło (możesz zmienić kolor) o zmiennej amplitudzie.
- 2: Obrotowa tęcza
- 3: Kolorowy pasek (który można zmienić), który wykonuje jeden obrót na sekundę.
- 4: Kolorowy pasek, który odbija się od drugiej ręki.
- 5: Kolorowe tło (możesz zmienić paletę) o losowej amplitudzie.
- 6: Po prostu wyświetla czas, wskazówka sekundowa zmienia amplitudę światła.
- 7: Obrotowe flagi (zmień paletę, aby zmienić flagę spośród 4 możliwych)
Flaga francuska -- jest 7:11:51
Niedawno dodano kolejną animację, która zmienia się co 15 sekund dla losowo wybranej animacji.
Przycisk MINUTY włącza i wyłącza białe diody na zegarze co 5 minut.
Jest 7:11:25
Zwróć uwagę, że wideo i zdjęcia zostały wykonane smartfonem i dlatego są słabej jakości. Kolory są znacznie jaśniejsze i dokładniejsze na zegarze niż na filmie…
Co jeszcze?
Mam nadzieję, że spodoba ci się ten zegar nieskończoności. Pozostało jeszcze wiele do zrobienia: możesz pomalować przednią płytę MDF, aby była ładniejsza, dodać kolejną taśmę led na zewnętrznej stronie cylindra, aby animowane światło rzucało się na ścianę itp.
Krok 5: Nowa wersja, aby zachować dokładny czas
Zegar Arduino nano ma tendencję do dryfowania w czasie, ponieważ nie ma dokładnego zegara. Zrobiłem inną wersję używając zegara czasu rzeczywistego (RTC), aby zachować dokładny czas.
RTC występują w różnych modelach, polecam użyć modułu DS3231, który jest bardzo dokładny (w porównaniu do DS1307). Ta nowa wersja programu korzysta z biblioteki MD-DS3231, dostępnej tutaj. Po prostu utwórz nowy folder o nazwie Horloge_LED3_nano_BT_RTC w folderze Arduino i pobierz wszystkie pliki.
Podłącz DS3231 jako urządzenie I2C, tj. SDA do A4 i SCL (lub SCK) do A5
Najpierw musisz ustawić czas RTC. Zobacz na przykład te instrukcje lub ten samouczek.
Prześlij plik Horloge_LED3_nano_BT_RTC.ino na swój Arduino nano i uruchom go. Czas jest odświeżany co 30 minut, dzięki czemu zegar pozostaje dokładny przez cały czas.
Oczywiście musisz mieć baterię na module RTC, ponieważ utrzymuje on przy życiu RTC, nawet jeśli nie jest zasilany przez Arduino, i może utrzymywać dokładny czas.
Zalecana:
Jak zrobić samochód sterowany smartfonem: 5 kroków
Jak zrobić samochód sterowany smartfonem: Wszyscy uwielbiają bawić się zdalnym samochodem obsługiwanym przez smartfon. Ten film pokazuje, jak to zrobić
ROBOT STEROWANY SMARTFONEM ZA POMOCĄ BLE 4.0 !!!: 5 kroków
ROBOT STEROWANY SMARTFONEM ZA POMOCĄ BLE 4.0 !!!: W poprzedniej instrukcji podzieliłem się z Wami, jak można używać modułu Bluetooth (w szczególności HM10 BLE v4.0) z Arduino do sterowania diodami LED za pomocą smartfona. Możesz to sprawdzić tutaj. W tej instrukcji pokażę, jak zbudować robota, który może być
Samochód RC sterowany smartfonem za pomocą Arduino: 13 kroków (ze zdjęciami)
Sterowany smartfonem samochód RC używający Arduino: Ta instrukcja pokazuje, jak zrobić robota Arduino sterowanego smartfonem. Aktualizacja 25 października 2016 r
Inteligentny wózek na zakupy sterowany smartfonem: 7 kroków
Inteligentny wózek na zakupy sterowany smartfonem: Odwiedzanie centrów handlowych może być świetną zabawą. Ale ciągnięcie koszyka na zakupy, gdy wypełniasz go rzeczami, jest czymś, co jest wręcz denerwujące. Ból przepychania go przez wąskie alejki, robienia ostrych zakrętów! Oto (rodzaj) oferta, którą możesz
Jak zrobić samochód RC sterowany smartfonem DIY: 8 kroków (ze zdjęciami)
Jak zrobić zdalnie sterowany samochód zdalnie sterowany za pomocą smartfona: Cześć, chłopaki! W tym samouczku zamierzam stworzyć sterowany smartfonem samochód RC oparty na Arduino. Ten samochód może być sterowany przez Bluetooth za pomocą dowolnego telefonu lub tabletu z Androidem. To niesamowity projekt. jest prosty w wykonaniu, łatwy do zaprogramowania, a także