Obsah:

Nekonečné hodiny ovládané smartfónom: 5 krokov (s obrázkami)
Nekonečné hodiny ovládané smartfónom: 5 krokov (s obrázkami)

Video: Nekonečné hodiny ovládané smartfónom: 5 krokov (s obrázkami)

Video: Nekonečné hodiny ovládané smartfónom: 5 krokov (s obrázkami)
Video: 💦Blackview BV9200 ЧЕСТНЫЙ ОБЗОР ПРОТИВОУДАРНОГО 2024, November
Anonim
Image
Image
Nekonečné hodiny ovládané smartfónom
Nekonečné hodiny ovládané smartfónom
Nekonečné hodiny ovládané smartfónom
Nekonečné hodiny ovládané smartfónom

Videl som mnoho projektov Infinity Mirrors a Infinity Clocks na Instructables, a tak som sa rozhodol urobiť ten svoj. Nemusí sa to veľmi líšiť od ostatných … ale urobil som to sám, takže je to tak!

Obrázok
Obrázok

Ak to ešte neviete:

Čo sú to hodiny nekonečna?

Hodiny s nekonečnom používajú viacnásobné odrazy medzi zrkadlom a semireflexným zrkadlom, aby poskytli ilúziu veľkej hĺbky, zatiaľ čo sú hlboké iba jeden centimeter!

Čas je indikovaný diódami LED, ktoré sa mnohokrát odrážajú medzi týmito rozhraniami a vyvolávajú dojem hĺbky.

Obrázok
Obrázok

Viacnásobné reflexie pôsobia dojmom hĺbky

LED diódy sú adresovateľné a viacfarebné, takže je ľahké ich použiť na vytváranie svetelných animácií.

Chcel som, aby bol interaktívny a zmenil sa, a preto som pridal ovládanie pomocou smartfónu pomocou komunikácie Bluetooth. Medzi hodinami a smartfónom existujú skutočné dva spôsoby komunikácie. Užívateľ môže použiť HMI (Human Machine Interface) na zmenu rôznych parametrov, ako sú animácie, farby. Ale môže tiež odosielať napríklad priame príkazy na zmenu času a hodiny odpovedajú, že príkaz je prijatý alebo nie.

HMI bolo vyrobené pomocou programovateľnej aplikácie pre Android, takže som ho musel navrhnúť a kódovať komunikáciu na strane Arduino.

Obrázok
Obrázok

Začnime teraz…

Krok 1: Čo potrebujete?

Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?
Čo potrebuješ?

Na stavbu týchto nekonečných hodín potrebujete toto (ceny sú orientačné):

  • Arduino nano (2 USD)
  • Adresovateľný LED pásik, napríklad LED WS2812, 60 LED na meter (6 USD)
  • Modul bluetooth, napríklad HC-05 (3 USD)
  • Nepájivá doska (1,5 USD)
  • Napájanie 5 V, schopné dodať 4 A alebo viac
  • Niekoľko elektrických vodičov
  • Smartfón so systémom Android a aplikáciou Bluetooth Electronics od spoločnosti KeuwlSoft
  • Niektoré kusy drevovláknitých dosiek strednej hustoty (MDF, jeden s hrúbkou 3 mm a jeden s hrúbkou 10 mm)
  • Priehľadný plexisklo alebo plexisklo (približne 15 až 20 USD)
  • Zrkadlo a semi-reflexné zrkadlové lepiace fólie (od 4 do 15 USD)
  • Konektory, odpory a jedna 1000 µF kapacita
  • Trochu lepidla a lepiacej pásky.
Obrázok
Obrázok

Schéma princípu geometrie hodín

Plexi doska by mala mať hrúbku 2 až 3 mm, aby pri použití zostala pevne na svojom mieste.

Vyššie uvedený diagram vysvetľuje geometriu hodín. LED pásik je umiestnený medzi dvoma zrkadlami. Na pásik samozrejme potrebujete 60 týchto LED diód. Môžete nájsť online LED pásy so 60 LED na meter, takže jeden z nich je dobrý. Potom je obvod vedeného kruhu 1 m, jeho priemer je 100/PI = 31,8 cm (približne 12,53 palca).

Pripravte si súčiastky

Vystrihnite kruh tohto priemeru do 3 mm dosky MDF. Za týmto účelom som šiel do miestneho fablabu a požiadal som o použitie laserovej rezačky. Môžu to urobiť aj za vás, ak sa láskavo spýtate a prídete s tabuľou: trvá to len niekoľko sekúnd. Kým ste tam, nastrihajte ten istý kotúč na dosku z plexiskla.

Z dosky MDF máte teraz kotúč a dosku s kruhovým otvorom. Oba si nechajte na neskôr.

Aby LED diódy zostali na mieste, narezajte do 1 cm hrubého MDF tenký valec rovnakého priemeru. Hrúbka nie je dôležitá, pokiaľ nie je príliš krehká. LED pásik bude umiestnený vo vnútri tohto valca, takže je dôležité, aby bol vnútorný obvod rovnaký ako dĺžka pásu. Príliš dlhé alebo príliš krátke a niektoré diódy LED môžu mať nepravidelný rozstup, preto tu buďte veľmi presní.

Rezanie tak hrubého plechu môže trvať trochu dlhšie ako rezanie tenkého plechu. Opýtajte sa majiteľa fablabu, či je ich laserová rezačka dostatočne silná, aby túto hrúbku znížila. Pre mňa laser musel pre túto časť prejsť viac ako desaťkrát, v porovnaní s iba dvoma pre druhú platňu.

Môžete tiež…

Je možné tu namiesto MDF použiť aj priehľadné alebo farebné dosky z plexiskla. Plexisklo existuje v rôznych farbách, od čiernej cez žltú až po zelenú a purpurovú, preto ich neváhajte vyskúšať.

Obrázok
Obrázok

Fablab vie, ako ich rezať, a rezanie plexiskla je veľmi „čisté“v porovnaní s drevom, ktoré môže na dráhe lasera „horieť“(myslím tým zmenu farby v dôsledku energie lasera). Existuje aj zrkadlové plexisklo, ktoré vám môže ušetriť od kúpy zrkadlového filmu. Nezabudnite, že pri rezaní pošlete laser na zadnú stranu zrkadla …

Nasledujú geometrické súbory pre rezanie laserom.

Krok 2: Zostavte hodiny

Zostavte hodiny
Zostavte hodiny
Zostavte hodiny
Zostavte hodiny
Zostavte hodiny
Zostavte hodiny
Zostavte hodiny
Zostavte hodiny

Na výrobu hodín stačí zostaviť diely podľa schémy.

Pripravte si prípad

Najprv prilepte zrkadlový film na disk MDF. Bude to spodná časť hodín.

Za druhé, nalepte polopriehľadný film na disk z plexiskla. Toto tvorí predné sklo hodín. Tento disk bude vložený do dosky MDF, do kruhového otvoru: v prípade potreby ho prilepte lepidlom na drevo alebo použite silikónovú gumu.

Nakoniec pripravte LED diódy. LED diódy WS2812 používajú 3 pripojovacie podložky: napájanie, uzemnenie a príkaz. Ak sú už pripojené 3 elektrické vodiče, použite ich. V opačnom prípade spájajte 3 drôty s pripájacími podložkami. Nezabudnite, že LED diódy sú polarizované zariadenia: to znamená, že prúd tečie iba jedným smerom. Tento smer je na páse vyznačený šípkou. Potom by ste mali spájkovať drôty na konci pásu, odkiaľ pochádzajú šípky (nie koniec, na ktorý šípky smerujú).

Vložte LED diódy do hrubého valca z MDF a spojte 3 diely lepidlom a / alebo páskou.

Obrázok
Obrázok

Potom elektronická časť

Vložte Arduino na dosku a vytvorte obvod, ako je uvedené vyššie. Zaistite, aby boli zapojené všetky uzemnenia (GND) (GND z Arduina, modul HC-05, LED pásik a napájanie).

  • Kolíky RX a TX modulu Bluetooth HC-05 sú pripojené k pinom D3 a D2 Arduino
  • Dátový riadok pásky LED je pripojený k kolíku D12, medzi ktorý môžete vložiť odpor 300 ohmov, ak ho máte.

Ak chcete zmeniť piny, zmeňte zodpovedajúcim spôsobom ich definície v kóde (riadky 7 a 13 súboru ino).

Modul HC-05 vyžaduje pre svoj kolík RX delič napätia, ako je to znázornené nižšie. Potrebujete teda jeden odpor 1 000 ohmov a jeden 2 000 ohmov.

Obrázok
Obrázok

Napájanie sa používa pre Arduino aj pre LED pás. Najprv zapojte kondenzátor 1000 µF do skrutkovej svorky (domino). Ak nejaký máte, môžete použiť rýchly konektor. Tu nájdete ďalšie podrobnosti.

Obrázok
Obrázok

Tento kondenzátor môže byť tiež polarizovaný: uistite sa, že + a - nohy sú pripojené k + a - napájania. Ako je možné vidieť na obrázku kondenzátora, noha je označená veľkým znamienkom mínus.

Obrázok
Obrázok

Potom z konektora zapojte elektrické vodiče a pripojte pásik LED a dosku Arduino. Ako bolo uvedené vyššie, všetky GND by mali byť navzájom prepojené. Z pozitívneho potenciálu napájania pripojte 5V vodič pásu a nakreslite drôt k 5V kolíku Arduina: nechajte ho zatiaľ nezapojený, na konci ho zapojíte.

Skontrolujte všetko … dvakrát

Dvakrát skontrolujte všetky pripojenia … Ak máte elektrický multimeter, skontrolujte elektrickú kontinuitu.

Ak je všetko v poriadku, vaše hodiny sú takmer pripravené. Zatiaľ ho nedodávajte.

Krok 3: Nahrajte kód

Nahrajte kód
Nahrajte kód
Nahrajte kód
Nahrajte kód
Nahrajte kód
Nahrajte kód
Nahrajte kód
Nahrajte kód

Poďme programovať

Na nahranie kódu do Arduino nano použite Arduino IDE. Vložte všetky súbory do priečinka s názvom „Horloge_LED3_nano_BTOK“do priečinka Arduino. Otvorte IDE, vyberte správne parametre (typ dosky, port COM atď.) A kliknite na tlačidlo nahrávania.

Obrázok
Obrázok

Nainštalujte si do svojho smartfónu s Androidom aplikáciu Bluetooth Electronics, ktorú ľahko nájdete na Google Play. Stiahnite si súbor „BluetoothElectronicsCode.txt“z tohto návodu a zmeňte rozšírenie na zip: dostanete archív zip s kódom rozhrania smartfónu, ktorý bude fungovať s technológiou Bluetooth Electronics.

Keď ste pripravení, zapojte napájanie. LED diódy sa rozsvietia, modul HC-05 bude tiež blonk hľadať spojenie. Spustite aplikáciu pre Android a podľa pokynov spárujte modul Bluetooth so svojim smartfónom. Keď budete pripravení, spustite HMI: ste pripravení hrať!

Poznač si to…

Prvá LED dióda pásu by mala byť umiestnená na vrchu hodín. Ak ste ho tam neumiestnili, môžete zmeniť hodnotu ofsetového parametra v kóde (riadok 65 súboru ino). O to sa stará.

Keď ste LED pásik lepili dovnútra plytkého valca, existovali 2 možnosti: buď sa pásik otáča v smere hodinových ručičiek, alebo proti smeru hodinových ručičiek. Ak ste to urobili zle, ručičky hodín sa otočia nesprávnym smerom! Žiaden strach. Stačí zmeniť hodnotu booleovskej premennej sens_horaire na true (riadok 77 súboru ino)

Obrázok
Obrázok

Krok 4: Užite si to

Užite si to!
Užite si to!
Užite si to!
Užite si to!
Užite si to!
Užite si to!

Posledné nastavenie …

Teraz nastavte čas. To je možné vykonať pomocou jednoduchých príkazov, ktoré napíšete do malej konzoly v dolnej ľavej časti rozhrania HMI.

  • Hxx: nastavte hodiny na xx (napr. H4)
  • Myy: nastaviť minúty (napr.: M15)
  • Szz: nastavte sekundy (napr. S30)

Príkazy je možné reťaziť tak, že medzi ne vložíte hviezdičku, napríklad: H4*M15*S35

Nastavením hodín a / alebo minút sa sekundy vynulujú.

Potom uvidíte, že hodinu sleduje ČERVENÁ LED dióda, minúty zelená LED:

Obrázok
Obrázok

Je 9:52:00!

Farbu sekúnd je možné zmeniť pomocou posúvača na HMI

Obrázok
Obrázok

Keď posúvate posúvač, malý kruh na pravej strane zobrazuje aktuálnu farbu. Keď sa posúvač zastaví, pošle farbu na hodiny a dióda LED sekúnd sa podľa toho zmení.

Posúvače ANIMATION a PALETTE je možné použiť na výber a prispôsobenie svetelných animácií na hodinách. Otestujte ich a pozrite sa na video, kde nájdete niekoľko príkladov. Keď zmeníte niektoré nastavenia na HMI, malá konzola zobrazí odpoveď z Arduina.

Animácie…

  • 0: Zobrazuje iba čas, farbu sekúnd môžete zmeniť pomocou posúvača.
  • 1: Farebné pozadie (farbu môžete zmeniť) premenlivej amplitúdy.
  • 2: Rotujúca dúha
  • 3: Farebný pás (ktorý je možné zmeniť), ktorý robí jednu otáčku za sekundu.
  • 4: Farebný prúžok, ktorý sa odráža od second handu.
  • 5: Farebné pozadie (paletu môžete zmeniť) s náhodnou amplitúdou.
  • 6: Zobrazuje iba čas, sekundová ručička mení svoju svetelnú amplitúdu.
  • 7: Rotujúce vlajky (zmenou palety zmeníte vlajku medzi 4 možnými)
Obrázok
Obrázok

Francúzska vlajka - je 7:11:51

Nedávno bola pridaná ďalšia animácia, ktorá sa každých 15 sekúnd mení pre náhodne zvolenú animáciu.

Tlačidlo MINUTY zapína a vypína biele diódy LED každých 5 minút na hodinách.

Obrázok
Obrázok

Je 7:11:25

Všimnite si toho, že video a fotografie boli vyrobené pomocou smartfónu, a preto majú nízku kvalitu. Farby sú na hodinách oveľa jasnejšie a presnejšie, ako vyzerajú na videu …

Čo ešte?

Dúfam, že sa vám budú páčiť tieto hodiny s nekonečnom. Zostáva veľa práce: prednú dosku MDF môžete namaľovať, aby bola krajšia, pridať ďalší LED pás na vonkajšiu stranu valca, aby na stene bolo aj nejaké animované osvetlenie atď.

Obrázok
Obrázok

Krok 5: Nová verzia na zachovanie presného času

Hodiny nano Arduino majú tendenciu unášať sa v čase, pretože nemajú presné hodiny. Na zaistenie presného času som vytvoril ďalšiu verziu s použitím hodín v reálnom čase (RTC).

RTC existujú v rôznych modeloch, odporúčam použiť modul DS3231, ktorý je veľmi presný (v porovnaní s DS1307). Táto nová verzia programu používa knižnicu MD-DS3231, ktorá je k dispozícii tu. Stačí vytvoriť nový priečinok s názvom Horloge_LED3_nano_BT_RTC v priečinku Arduino a stiahnuť všetky súbory.

Pripojte DS3231 ako zariadenie I2C, tj. SDA do A4 a SCL (alebo SCK) do A5

Najprv musíte nastaviť čas RTC. Pozrite si napríklad tento návod alebo tento návod.

Nahrajte súbor Horloge_LED3_nano_BT_RTC.ino do svojho Arduino nano a spustite ho. Čas sa obnovuje každých 30 minút, takže hodiny zostávajú stále presné.

Batériu samozrejme musíte mať v module RTC, pretože udržiava RTC nažive, aj keď ju nedodáva Arduino, a dokáže udržať presný čas.

Odporúča: