INHOUDSOPGAWE:

Smartphone -beheerde oneindige klok: 5 stappe (met foto's)
Smartphone -beheerde oneindige klok: 5 stappe (met foto's)

Video: Smartphone -beheerde oneindige klok: 5 stappe (met foto's)

Video: Smartphone -beheerde oneindige klok: 5 stappe (met foto's)
Video: Hoe vapen er écht uitziet… 😅 2024, November
Anonim
Image
Image
Smartphone -beheerde oneindige klok
Smartphone -beheerde oneindige klok
Smartphone -beheerde oneindige klok
Smartphone -beheerde oneindige klok

Ek het baie projekte van Infinity Mirrors en Infinity Clocks op Instructables gesien, so ek het besluit om myne te maak. Dit verskil miskien nie baie van die ander nie … maar ek het dit self gedoen, so dit is!

Beeld
Beeld

As u dit nog nie weet nie:

Wat is 'n oneindige klok?

'N Oneindige klok gebruik veelvuldige weerkaatsings tussen 'n spieël en 'n semi-reflekterende spieël om die illusie van groot diepte te gee terwyl dit slegs een sentimeter diep is!

Die tyd word aangedui deur LED's wat baie keer tussen hierdie koppelvlakke weerspieël en hierdie indruk van diepte gee.

Beeld
Beeld

Verskeie refleksies gee die indruk van diepte

Die LED's is aanspreekbaar en veelkleurig, so dit is maklik om dit te gebruik om ligte animasies te maak.

Ek wou dit interaktief en veranderlik maak, en ek het 'n slimfoonbediening bygevoeg met behulp van Bluetooth -kommunikasie. Daar is 'n werklike kommunikasie tussen die klok en die slimfoon op twee maniere. Die gebruiker kan die HMI (Human Machine Interface) gebruik om die verskillende parameters, soos animasies, kleure, te verander. Maar sy kan ook direkte opdragte stuur, byvoorbeeld om die tyd te verander, en die klok antwoord om te sê dat die opdrag aanvaar word of nie.

Die HMI is gedoen met 'n programmeerbare Android -app, so ek moes dit net ontwerp en die kommunikasie aan die Arduino -kant kodeer.

Beeld
Beeld

Kom ons begin nou …

Stap 1: Wat het u nodig?

Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?
Wat het jy nodig?

Hier is wat u nodig het om hierdie oneindige klok te bou (pryse is indicatief):

  • 'N Arduino -nano (2 USD)
  • 'N Geadresseerde ledstrook, soos WS2812 leds, 60 leds per meter (6 USD)
  • 'N Bluetooth-module, soos die HC-05 (3 USD)
  • 'N Broodplank (1,5 USD)
  • 'N 5V -toevoer wat 4A of meer kan lewer
  • 'N Paar elektriese drade
  • 'N Slimfoon met Android en die Bluetooth Electronics -program van KeuwlSoft
  • Sommige stukke veselplaat van medium digtheid (MDF, een 3 mm dik en een 10 mm dik)
  • 'N Deursigtige pleksiglas- of perspexbord (ongeveer 15 tot 20 dollar)
  • Spieël en halfweerkaatsende spieëlkleeffilms (van 4 tot 15 USD)
  • Verbindings, weerstande en een kapasiteit van 1000µF
  • 'N Paar gom en kleeflint.
Beeld
Beeld

Diagram van beginsel van die klok se meetkunde

Die plexi -plaat moet 2 tot 3 mm dik wees, sodat dit stewig op sy plek bly wanneer dit gebruik word.

Die diagram hierbo verduidelik die meetkunde van die klok. Die geleide strook word tussen die twee spieëls geplaas. U het natuurlik 60 van die LED's op die strook nodig. U kan aanlyn LED -stroke met 60 leds per meter vind, dus een daarvan is goed. Dan is die omtrek van die geleide sirkel 1 m, die deursnee daarvan is 100/PI = 31,8 cm (ongeveer 12,53 duim).

Berei u komponente voor

Sny 'n sirkel van hierdie deursnee in die 3 mm MDF -bord. Om dit te doen, het ek na die plaaslike fablab gegaan en gevra om die lasersnyer te gebruik. Hulle kan dit selfs vir u doen as u vriendelik vra en saam met die bord kom: dit neem slegs 'n paar sekondes. Sny dieselfde skyf in u plexiglasplaat terwyl u daar is.

Vanaf die MDF -plaat het u nou 'n skyf en die bord met die sirkelvormige gat. Hou albei vir later.

Om die LED's op hul plek te hou, sny ook 'n dun silinder met dieselfde deursnee in die 1 cm dik MDF. Die dikte is nie belangrik nie, solank dit nie te broos is nie. Die LED -strook word in hierdie silinder geplaas, daarom is dit belangrik dat die binneste omtrek dieselfde is as die lengte van die strook. Te lank of te kort, en sommige LED's kan onreëlmatig gespasieer wees, dus wees baie akkuraat hier.

Om so 'n dik bord te sny, kan 'n bietjie langer neem as om die dun te sny. Vra die fablab -eienaar of hul lasersnyer sterk genoeg is om die dikte te sny. Vir my moes die laser meer as tien keer vir daardie deel slaag, in vergelyking met slegs twee vir die ander plaat.

Jy kan ook…

Dit is ook moontlik om deursigtige of gekleurde plexiglasborde hier te gebruik in plaas van MDF. Plexiglas bestaan in verskillende kleure, van swart tot geel tot groen en pers, moet asseblief nie huiwer om dit te probeer nie.

Beeld
Beeld

Die fablab weet hoe om dit te sny, en die sny van plexiglas is baie "skoon" in vergelyking met hout wat op die laserpad kan "brand" (ek bedoel van kleur verander as gevolg van die laser -energie). Daar bestaan ook spieëlglas, wat u kan bespaar om die spieëlfilm te koop. Onthou net dat u die laser aan die agterkant van die spieël moet stuur terwyl u dit sny …

Hieronder is die meetkunde lêers vir die lasersnit.

Stap 2: Monteer die horlosie

Monteer die klok
Monteer die klok
Monteer die klok
Monteer die klok
Monteer die klok
Monteer die klok
Monteer die klok
Monteer die klok

Om die horlosie te maak, hoef u net die dele volgens die skema saam te stel.

Berei die saak voor

Plak eers die spieëlfilm op die MDF -skyf vas. Dit sal die onderkant van die klok wees.

Plak tweedens die halfdeursigtige film op die pleksiglasskyf. Dit vorm die voorste glas van die horlosie. Hierdie skyf word in die MDF -plaat, in die sirkelgat geplaas: plak dit met houtgom indien nodig, of gebruik silikoonrubber.

Berei laastens die LED's voor. WS2812 LED's gebruik 3 verbindingsblokkies: spanningsvoorsiening, grond en bevel. As daar reeds 3 elektriese drade is, gebruik dit net. Andersins, soldeer 3 drade na die verbindingsblokkies. Onthou dat LED's gepolariseerde toestelle is: dit beteken dat die stroom slegs in een rigting vloei. Hierdie rigting word op die strook aangedui met 'n pyltjie. Vervolgens moet u die drade aan die einde van die strook soldeer waarvandaan die pyle kom (nie die punt waarna die pyle wys nie).

Plak die LED's in die dik MDF -silinder vas en monteer die 3 dele met gom en / of band.

Beeld
Beeld

Dan die elektroniese deel

Plaas die Arduino in die broodbord en skep die kring soos hierbo getoon. Maak seker dat alle gronde (GND) verbind is (GND van Arduino, HC-05-module, LED-strook en toevoer).

  • Die RX- en TX-penne van die HC-05 Bluetooth-module is gekoppel aan die penne D3 en D2 van die Arduino
  • Die data lyn van die LED strook is gekoppel aan die pen D12, u kan 'n weerstand van 300 Ohm tussenin plaas as u een het.

As u die penne wil verander, verander die definisies daarvan in die kode dienooreenkomstig (reëls 7 en 13 van die ino -lêer).

Let daarop dat die HC-05-module 'n spanningsverdeler vir sy RX-pen benodig, soos hieronder getoon. U benodig dus een 1000 ohm en een 2000 ohm weerstande.

Beeld
Beeld

Die toevoer word gebruik vir beide die Arduino en die LED -strook. Koppel eers die 1000µF -kondensator in 'n skroefaansluiting (domino). U kan 'n vinnige aansluiting gebruik as u dit het. Sien hier vir meer besonderhede.

Beeld
Beeld

Hierdie kondensator kan ook gepolariseer word: maak seker dat die + en - pote verbind is met die + en - van die toevoer. Soos op die beeld van die kapasitor gesien kan word, is die - been gemerk met 'n groot minusteken.

Beeld
Beeld

Koppel dan die elektriese drade uit die aansluiting om die LED -strook en die Arduino -bord aan te sluit. Soos hierbo gesê, moet alle GND met mekaar verbind word. Koppel die 5V -draad van die strook uit die positiewe potensiaal van die toevoer en trek 'n draad na die 5V -pen van die Arduino: laat dit vir eers onaangeraak wees, u sal dit aan die einde verbind.

Kontroleer alles … twee keer

Kontroleer alle verbindings twee keer … Gebruik 'n multimeter as u een het om die elektriese kontinuïteit te kontroleer.

As alles reg is, is u horlosie amper gereed. Moet dit nie vir eers verskaf nie.

Stap 3: Laai die kode op

Laai die kode op
Laai die kode op
Laai die kode op
Laai die kode op
Laai die kode op
Laai die kode op
Laai die kode op
Laai die kode op

Kom ons programmeer

Gebruik die Arduino IDE om die kode in die Arduino nano op te laai. Plaas al die lêers in 'n gids genaamd "Horloge_LED3_nano_BTOK" in u Arduino -lêergids. Maak die IDE oop, kies die regte parameters (bordtipe, COM -poort, ens) en klik op die oplaai -knoppie.

Beeld
Beeld

Installeer die Bluetooth Electronics -toepassing op u Android -slimfoon; u kan dit maklik op Google Play vind. Laai die lêer "BluetoothElectronicsCode.txt" van hierdie instruksies af en verander die uitbreiding na zip: u kry 'n zip -argief met die kode vir die slimfoon -koppelvlak om met Bluetooth Electronics te werk.

As u gereed is, moet u die toevoer aansluit. Die LED's sal brand, die HC-05-module blokkeer ook om na die verbinding te soek. Begin die Android -app en volg die instruksies om die Bluetooth -module met u slimfoon te koppel. As u gereed is, begin die HMI: u is gereed om te speel!

Let daarop dat…

Die eerste LED van die strook moet bo -op die horlosie geplaas word. As u dit nie daar geplaas het nie, kan u die waarde van die offsetparameter in die kode (reël 65 van die ino -lêer) verander. Dit sorg daarvoor.

As u die LED-strook in die vlak silinder vasgeplak het, was daar 2 opsies: óf die strook draai met die kloksgewys, óf teen die kloksgewys. As u dit op die verkeerde manier gedoen het, draai die klok se hande in die verkeerde rigting! Geen probleem. Verander net die waarde van die Booleaanse veranderlike sens_horaire na true (reël 77 van die ino -lêer)

Beeld
Beeld

Stap 4: Geniet dit

Geniet dit!
Geniet dit!
Geniet dit!
Geniet dit!
Geniet dit!
Geniet dit!

'N Laaste instelling …

Stel nou die tyd in. Dit kan gedoen word met behulp van eenvoudige opdragte wat u in die klein konsole in die onderste linker gedeelte van die HMI tik.

  • Hxx: stel die ure in op xx (byvoorbeeld: H4)
  • Myy: stel die minute in (byvoorbeeld: M15)
  • Szz: stel die sekondes in (byvoorbeeld: S30)

Die opdragte kan vasgeketting word deur 'n ster tussen hulle in te voeg, byvoorbeeld: H4*M15*S35

Deur ure en / of minute in te stel, word die sekondes op nul teruggestel.

U sal dan sien dat die uur gevolg word deur 'n ROOI LED, die minute deur 'n GROEN LED:

Beeld
Beeld

Dit is 9:52:00!

Die kleur van die sekondes kan verander word met die skuifbalk op die HMI

Beeld
Beeld

As u die skuifknop beweeg, toon die klein sirkel aan die regterkant die huidige kleur. As die skuifbalk stop, stuur dit die kleur na die horlosie en die LED van die sekondes verander dienooreenkomstig.

Die animasie- en paletskyfies kan gebruik word om die ligte animasies op die klok te kies en aan te pas. Toets dit en kyk na die video vir 'n paar voorbeelde. As u 'n paar instellings op die HMI verander, toon die klein konsole die antwoord van die Arduino.

Animasies…

  • 0: Gee net die tyd aan; u kan die kleur van die sekondes verander met die skuifbalk.
  • 1: 'n gekleurde agtergrond (u kan die kleur verander) van veranderlike amplitude.
  • 2: Draaiende reënboog
  • 3: 'n gekleurde band (wat verander kan word) wat een draai per sekonde maak.
  • 4: 'n gekleurde streep wat van die tweede hand af weerkaats.
  • 5: 'n gekleurde agtergrond (u kan die palet verander) van ewekansige amplitude.
  • 6: Gee net die tyd aan, die sekondeswyser verander die ligsterkte.
  • 7: Draai vlae (verander die palet om die vlag tussen 4 moontlike te verander)
Beeld
Beeld

Die Franse vlag - dit is 7:11:51

'N Ander animasie is onlangs bygevoeg, wat elke 15 sekondes verander vir 'n lukraak gekose animasie.

Die MINUTES -knoppie skakel elke 5 minute op die klok wit LED's aan.

Beeld
Beeld

Dit is 7:11:25

Let daarop dat die video en foto's met 'n slimfoon gemaak is en dus van 'n swak gehalte is. Die kleure is baie helderder en akkurater op die klok as hoe dit op die video lyk …

Wat nog?

Ek hoop dat u hierdie oneindige klok sal wil doen. Daar is nog baie oor om te doen: u kan die MDF -voorplaat verf om dit mooier te maak, nog 'n ledstrook aan die buitekant van die silinder byvoeg om 'n bietjie geanimeerde lig op die muur te hê, ens.

Beeld
Beeld

Stap 5: Nuwe weergawe om akkurate tyd te hou

Die klok van die Arduino -nano is geneig om mettertyd te dryf, aangesien dit nie 'n akkurate klok het nie. Ek het 'n ander weergawe gemaak met 'n Real Time Clock (RTC) om 'n akkurate tyd te hou.

RTC bestaan in verskillende modelle. Ek beveel aan dat u 'n DS3231 -module gebruik, wat baie akkuraat is (in vergelyking met DS1307). Hierdie nuwe weergawe van die program gebruik die MD-DS3231-biblioteek wat hier beskikbaar is. Skep net 'n nuwe gids genaamd Horloge_LED3_nano_BT_RTC in u Arduino -lêergids en laai al die lêers af.

Koppel die DS3231 as 'n I2C -toestel, dit wil sê SDA na A4 en SCL (of SCK) na A5

Eerstens moet u die tyd van die RTC instel. Sien byvoorbeeld hierdie instruksies of hierdie handleiding.

Laai die Horloge_LED3_nano_BT_RTC.ino -lêer op u Arduino -nano op en voer dit uit. Die tyd word elke 30 minute verfris, dus die klok bly heeltyd akkuraat.

U moet natuurlik die battery op die RTC -module hê, want dit hou die RTC lewendig, selfs al word dit nie deur die Arduino verskaf nie, en dit kan die akkurate tyd behou.

Aanbeveel: