Innholdsfortegnelse:

Smarttelefonstyrt uendelig klokke: 5 trinn (med bilder)
Smarttelefonstyrt uendelig klokke: 5 trinn (med bilder)

Video: Smarttelefonstyrt uendelig klokke: 5 trinn (med bilder)

Video: Smarttelefonstyrt uendelig klokke: 5 trinn (med bilder)
Video: Стабилизация биохимических показателей крови. Большой восстановительный рефлекторный каскад 2024, Juli
Anonim
Image
Image
Smarttelefonstyrt uendelig klokke
Smarttelefonstyrt uendelig klokke
Smarttelefonstyrt uendelig klokke
Smarttelefonstyrt uendelig klokke

Jeg har sett mange prosjekter med Infinity Mirrors og Infinity Clocks on Instructables, så jeg bestemte meg for å lage mine. Det er kanskje ikke veldig annerledes enn de andre … men jeg gjorde det selv, så det er det!

Bilde
Bilde

I tilfelle du ikke vet det allerede:

Hva er en uendelig klokke?

En uendelig klokke bruker flere refleksjoner mellom et speil og et halvreflekterende speil for å gi en illusjon av stor dybde mens den bare er en centimeter dyp!

Tiden indikeres med lysdioder som gjenspeiler mange ganger mellom disse grensesnittene og gir dette inntrykket av dybde.

Bilde
Bilde

Flere refleksjoner gir inntrykk av dybde

Lysdiodene er adresserbare og flerfargede, så det er enkelt å bruke dem til å lage lette animasjoner.

Jeg ønsket å gjøre det interaktivt og forandrende, så jeg la til en smarttelefonkontroll ved hjelp av Bluetooth -kommunikasjon. Det er en ekte toveis kommunikasjon mellom klokken og smarttelefonen. Brukeren kan bruke HMI (Human Machine Interface) til å endre de forskjellige parameterne, for eksempel animasjoner, farger. Men hun kan også sende direkte kommandoer for eksempel for å endre tiden, og klokken svarer for å si at kommandoen er akseptert eller ikke.

HMI ble gjort ved hjelp av en programmerbar Android -app, så jeg måtte bare designe den og kode kommunikasjonen på Arduino -siden.

Bilde
Bilde

La oss begynne nå …

Trinn 1: Hva trenger du?

Hva trenger du?
Hva trenger du?
Hva trenger du?
Hva trenger du?
Hva trenger du?
Hva trenger du?
Hva trenger du?
Hva trenger du?

Her er det du trenger for å bygge denne uendelige klokken (prisene er veiledende):

  • En Arduino nano (2 USD)
  • En adresserbar LED -stripe, for eksempel WS2812 -lysdioder, 60 lysdioder per meter (6 USD)
  • En Bluetooth-modul, for eksempel HC-05 (3 USD)
  • Et brødbrett (1,5 USD)
  • En 5V forsyning, i stand til å levere 4A eller mer
  • Noen få elektriske ledninger
  • En smarttelefon som kjører Android, og Bluetooth Electronics -appen, fra KeuwlSoft
  • Noen biter av medium-density fiberboard (MDF, en 3 mm tykk og en 10 mm tykk)
  • En gjennomsiktig pleksiglas- eller perspexplate (ca. 15 til 20 USD)
  • Speil og halvreflekterende speil klebende filmer (fra 4 til 15 USD)
  • Koblinger, motstander og en 1000µF kapasitans
  • Litt lim og tape.
Bilde
Bilde

Prinsippdiagram for klokkens geometri

Plexi -platen skal være 2 til 3 mm tykk, slik at den sitter godt på plass når den er i bruk.

Diagrammet ovenfor forklarer klokkens geometri. Ledlisten er plassert mellom de to speilene. Selvfølgelig trenger du 60 av disse lysdiodene på stripen. Du kan finne ledede strips på nettet med 60 lysdioder per meter, så en av dem er bra. Deretter er omkretsen til den ledde sirkelen 1 m, dens diameter er 100/PI = 31,8 cm (ca. 12,53 tommer).

Forbered komponentene

Skjær en sirkel med denne diameteren i 3 mm MDF -brettet. For å gjøre dette gikk jeg til den lokale fablab og ba om å bruke laserskjæreren. De kan til og med gjøre det for deg, hvis du spør vennlig og du kommer med brettet: det tar bare noen få sekunder. Mens du er der, kutter du den samme platen i plexiglassplaten.

Fra MDF -platen har du nå en plate og platen med det sirkulære hullet. Behold dem begge til senere.

For å holde lysdiodene på plass, kutt du også i den 1 cm tykke MDF en tynn sylinder med samme diameter. Tykkelsen er ikke viktig så lenge den ikke er for skjør. LED -stripen vil bli plassert inne i denne sylinderen, så det er viktig at den indre omkretsen er den samme som lengden på stripen. For lang eller for kort, og noen lysdioder kan ha uregelmessig avstand, så vær veldig nøyaktig her.

Å kutte en så tykk tallerken kan ta litt lengre tid enn å kutte den tynne. Spør fablab -eieren om laserskjæreren deres er kraftig nok til å kutte den tykkelsen. For meg måtte laseren passere mer enn ti ganger for den delen, sammenlignet med bare to for den andre platen.

Du kan også…

Det er også mulig å bruke gjennomsiktige eller fargede plexiglassplater her i stedet for MDF. Plexiglas finnes i forskjellige farger, fra svart til gult til grønt og lilla, så ikke nøl med å prøve dem.

Bilde
Bilde

Fablab vet hvordan de skal kuttes, og kutting av plexiglass er veldig "rent" sammenlignet med treverk som kan "brenne" (jeg mener endre farge på grunn av laserenergien) ved laserbanen. Speilplexiglass finnes også, noe som kan spare deg for å kjøpe speilfilmen. Bare husk å sende laseren på baksiden av speilet mens du skjærer det …

Nedenfor er geometri -filene for laserskåret.

Trinn 2: Monter klokken

Sett sammen klokken
Sett sammen klokken
Sett sammen klokken
Sett sammen klokken
Sett sammen klokken
Sett sammen klokken
Sett sammen klokken
Sett sammen klokken

For å lage klokken trenger du bare å montere delene, ifølge skjemaet.

Forbered saken

Lim først speilfilmen på MDF -platen. Det blir bunnen av klokken.

For det andre, fest den halvgjennomsiktige filmen på plexiglasplaten. Dette danner frontglasset på klokken. Denne platen settes inn i MDF -platen, i sirkelhullet: lim den med trelim om nødvendig, eller bruk silikongummi.

Til slutt forbereder du lysdiodene. WS2812 lysdioder bruker 3 tilkoblingsputer: spenningsforsyning, jord og kommando. Hvis det allerede er 3 elektriske ledninger tilkoblet, bare bruk dem. Ellers loddes 3 ledninger til tilkoblingsputene. Husk at lysdioder er polariserte enheter: dette betyr at strømmen flyter i bare en retning. Denne retningen er angitt på stripen med en pil. Deretter bør du lodde ledningene på enden av stripen der pilene kommer (ikke slutten som pilene peker til).

Fest lysdiodene inne i den tykke MDF -sylinderen og sett sammen de tre delene med lim og / eller tape.

Bilde
Bilde

Deretter den elektroniske delen

Sett Arduino i brødbrettet og lag kretsen som vist ovenfor. Sørg for at alle grunner (GND) er tilkoblet (GND fra Arduino, HC-05-modul, LED-stripe og forsyning).

  • RX- og TX-pinnene på HC-05 Bluetooth-modulen er koblet til pinnene D3 og D2 på Arduino
  • Datalinjen til LED -stripen er koblet til pinnen D12, du kan sette inn en 300 Ohm motstand i mellom hvis du har en.

Hvis du vil endre pinnene, må du endre definisjonene i koden tilsvarende (linje 7 og 13 i ino -filen).

Vær oppmerksom på at HC-05-modulen krever en spenningsdeler for RX-pinnen, som vist nedenfor. Så du trenger en 1000 ohm og en 2000 ohm motstander.

Bilde
Bilde

Forsyningen brukes både til Arduino og LED -stripen. Koble først 1000µF kondensatoren til en skrueterminal (domino). Du kan bruke hurtigkontakt hvis du har noen. Se her for mer informasjon.

Bilde
Bilde

Denne kondensatoren kan også være polarisert: sørg for at + og - benene er koblet til + og - på forsyningen. Som det kan sees på bildet av kondensatoren, er benet merket med et stort minustegn.

Bilde
Bilde

Koble deretter fra elektriske ledninger for å koble LED -stripen og Arduino -kortet. Som sagt ovenfor, bør all GND kobles sammen. Fra det positive potensialet i forsyningen, koble 5V -ledningen til stripen og trekk en ledning til 5V -pinnen på Arduino: la den være koblet til for øyeblikket, du vil koble den til på slutten.

Sjekk alt … to ganger

Kontroller alle tilkoblinger to ganger … Bruk et multimeter hvis du har en for å kontrollere elektrisk kontinuitet.

Hvis alt er riktig, er klokken nesten klar. Ikke lever den for nå.

Trinn 3: Last opp koden

Last opp koden
Last opp koden
Last opp koden
Last opp koden
Last opp koden
Last opp koden
Last opp koden
Last opp koden

La oss programmere

For å laste opp koden i Arduino nano, bruk Arduino IDE. Legg alle filene i en mappe som heter "Horloge_LED3_nano_BTOK" i Arduino -mappen. Åpne IDE, velg riktige parametere (brettype, COM -port, osv.) Og klikk på opplastingsknappen.

Bilde
Bilde

Installer Bluetooth Electronics -appen på din Android -smarttelefon, du finner den enkelt på Google Play. Last ned filen "BluetoothElectronicsCode.txt" fra denne instruksjonsboken, og endre utvidelsen til zip: du får et zip -arkiv med koden for smarttelefongrensesnittet for å kjøre med Bluetooth Electronics.

Når du er klar, kobler du til strømforsyningen. Lysdiodene lyser, HC-05-modulen blinker også for å søke etter tilkoblingen. Start Android -appen og følg instruksjonene for å koble Bluetooth -modulen til smarttelefonen din. Når du er klar, start HMI: du er klar til å spille!

Noter det…

Den første lysdioden på stripen skal plasseres på toppen av klokken. Hvis du ikke plasserte den der, kan du endre verdien for forskyvningsparameteren i koden (linje 65 i ino -filen). Det tar seg av det.

Når du limte LED-stripen inne i den grunne sylinderen, var det to alternativer: enten stripen sving med klokken eller mot klokken. Hvis du gjorde det på feil måte, vil klokkens hender snu i feil retning! Ingen bekymringer. Bare endre verdien av den boolske variabelen sens_horaire til true (linje 77 i ino -filen)

Bilde
Bilde

Trinn 4: Kos deg

Nyt!
Nyt!
Nyt!
Nyt!
Nyt!
Nyt!

En siste innstilling …

Nå, sett tiden. Dette kan gjøres ved å bruke enkle kommandoer du skriver inn i den lille konsollen i nedre venstre del av HMI.

  • Hxx: sett timene til xx (eks: H4)
  • Myy: angi minutter (eks: M15)
  • Szz: angi sekundene (eks: S30)

Kommandoene kan lenkes ved å sette inn en stjerne mellom dem, for eksempel: H4*M15*S35

Angi timer og / eller minutter vil nullstille sekundene til null.

Du vil da se at timen spores av en RØD LED, minuttene av en GRØNN LED:

Bilde
Bilde

Klokken er 9:52:00!

Fargen på sekundene kan endres med glidebryteren på HMI

Bilde
Bilde

Når du flytter glidebryteren, viser den lille sirkelen på høyre side gjeldende farge. Når glidebryteren stopper, sender den fargen til klokken og LED -en for sekundene endres tilsvarende.

ANIMATION- og PALETTE -glidebryterne kan brukes til å velge og tilpasse lysanimasjonene på klokken. Test dem, og se på videoen for noen eksempler. Når du endrer noen innstillinger på HMI, viser den lille konsollen svaret fra Arduino.

Animasjoner …

  • 0: Bare viser tiden, du kan endre fargen på sekundene ved hjelp av glidebryteren.
  • 1: En farget bakgrunn (du kan endre fargen) med variabel amplitude.
  • 2: Roterende regnbue
  • 3: Et farget bånd (som kan endres) som gjør en sving per sekund.
  • 4: En farget stripe som spretter av den andre hånden.
  • 5: En farget bakgrunn (du kan endre paletten) med tilfeldig amplitude.
  • 6: Bare viser tiden, sekundviseren endrer lysstyrken.
  • 7: Roterende flagg (endre paletten for å endre flagget blant 4 mulige)
Bilde
Bilde

Det franske flagget - klokken er 7:11:51

En annen animasjon ble nylig lagt til, som endres hvert 15. sekund for en tilfeldig valgt animasjon.

MINUTES -knappen slår på og av hvite lysdioder hvert 5. minutt på klokken.

Bilde
Bilde

Det er 7:11:25

Vær oppmerksom på at videoen og bildene ble laget med en smarttelefon og derfor er av dårlig kvalitet. Fargene er mye lysere og mer nøyaktige på klokken enn hva de ser ut på videoen …

Hva annet?

Jeg håper du vil like å gjøre denne uendelige klokken. Det er mye igjen å gjøre: du kan male MDF -frontplaten for å gjøre den finere, legge til en annen LED -stripe på utsiden av sylinderen for å få litt animert lysbelysning på veggen, etc.

Bilde
Bilde

Trinn 5: Ny versjon for å holde nøyaktig tid

Arduino nanos klokke har en tendens til å drive i tid, siden den ikke har en nøyaktig klokke. Jeg lagde en annen versjon ved hjelp av en sanntidsklokke (RTC) for å holde en nøyaktig tid.

RTC finnes i forskjellige modeller, jeg anbefaler å bruke en DS3231 -modul, som er veldig nøyaktig (sammenlignet med DS1307). Denne nye versjonen av programmet bruker MD-DS3231-biblioteket, tilgjengelig her. Bare opprett en ny mappe som heter Horloge_LED3_nano_BT_RTC i Arduino -mappen, og last ned alle filene.

Koble DS3231 som en I2C -enhet, dvs. SDA til A4 og SCL (eller SCK) til A5

Først må du angi tidspunktet for RTC. Se for eksempel denne instruksjonsboken eller denne opplæringen.

Last opp Horloge_LED3_nano_BT_RTC.ino -filen på Arduino nano og kjør den. Tiden oppdateres hvert 30. minutt, så klokken forblir nøyaktig hele tiden.

Selvfølgelig må du ha batteriet på RTC -modulen, fordi den holder RTC i live, selv om den ikke leveres av Arduino, og den kan beholde nøyaktig tid.

Anbefalt: