Kazalo:

Ura za visoke hitrosti za upočasnjene videoposnetke: 4 koraki
Ura za visoke hitrosti za upočasnjene videoposnetke: 4 koraki

Video: Ura za visoke hitrosti za upočasnjene videoposnetke: 4 koraki

Video: Ura za visoke hitrosti za upočasnjene videoposnetke: 4 koraki
Video: Long Distance Carp Fishing Masterclass | Darrell Peck & Terry Edmonds 2024, November
Anonim
Image
Image
Materiali
Materiali

Skoraj vsi s sodobnim pametnim telefonom imajo visokohitrostno kamero, ki jo lahko uporabite za snemanje spektakularnih počasnih video posnetkov. Če pa želite izmeriti, kako dolgo dejansko traja, da ta milni mehurček poči ali da lubenica eksplodira, boste morda težko prikazali čas na svojih videoposnetkih: štoparica ima zelo majhen zaslon in ima natančnost le 1/100 sekunde. Če želite narediti kvantitativne meritve, sem ugotovil, da objavljena hitrost sličic fotoaparata ni nekaj, na kar se lahko zanesete!

Na srečo je z Arduinom in 4-mestnim 7-segmentnim zaslonom zelo enostavno sestaviti uro z ms natančnostjo in svetlimi velikimi številkami. Poleg tega se 12 zatičev s standardnega 0,56-palčnega zaslona natančno ujema s postavitvijo zatičev Arduino Nano in ga je mogoče neposredno spajkati nanj.

Na tem časovniku ni zagona/ustavitve/ponastavitve. Začne se izvajati, ko ga vklopite, in se po 10 sekundah prelije. Ideja je, da za merjenje trajanja določenega procesa vseeno izmerimo časovno razliko med koncem in začetkom.

1. korak: Materiali

  • Arduino Nano, brez nalepljenih glav.
  • 0,56-palčni 4-mestni 7-segmentni zaslon. Tako skupna anoda kot skupna katoda sta v redu

Če ga želite dati v trdno škatlo in se napajati z dvema baterijama AA, dodajte:

  • Elektronska škatla za projekt 60x100x25
  • Nosilec baterije 2xAA
  • Modul za povečanje
  • Stikalo za vklop/izklop 10x15 mm

Potrebna orodja

Spajkalnik

Če ga želite namestiti v škatlo:

  • Rotacijsko orodje za grobo rezanje lukenj za zaslon in stikalo
  • Ročne datoteke za fino izrezovanje lukenj
  • Pištola za vroče lepilo za pritrditev sestavnih delov.

2. korak: Arduino priključite na zaslon

Priključitev Arduina na zaslon
Priključitev Arduina na zaslon

Presenetljivo je, da se nožice standardnega 4-mestnega 7-segmentnega zaslona ujemajo s postavitvijo Arduino Nano tako, da se vseh 12 nožic zaslona poveže z IO zatiči Arduina. To omogoča spajkanje zaslona neposredno na Arduino, ne da bi potrebovali tiskano vezje, priključke ali kable.

Spodnje nožice zaslona (prepoznavne po decimalnih pikah in tiskanju) spajkajte na analogne nožice A0-A5. Zgornje nožice zaslona spajkajte z digitalnimi zatiči D4-D9.

Rdeče LED imajo padec napetosti le 2 V, zato njihova priključitev na 5 V običajno ni dobra ideja, za omejitev toka pa se običajno uporablja serijski upor. Morda pa sem zaradi prepletanja ugotovil, da brez serijskih uporov deluje v redu. Če ne, tukaj je podrobno navodilo, kako dodati serijske upore neposredno na Arduino Nano

3. korak: Koda

Kodeks
Kodeks

Priloženo skico naložite v Arduino Nano. Sedanja koda je za prikaz s skupno anodo, vendar je mogoče vrstice za skupno katodo razkomentirati.

Ko je koda naložena, se mora časovnik zagnati ob vsakem zagonu Arduina. Tu se lahko ustavite ali si v naslednjem razdelku ogledate primer, kako ga vgraditi v trdno škatlo in ga poganjati na baterije.

Nekaj komentarjev o kodi:

Čas se vzame iz funkcij micro (), namesto funkcije millis (), iz dveh dobrih razlogov: Arduino implementacija millis () je grozna: povečujejo se vsakih 1.024 ms, nato pa včasih preskočijo milisekundo za kompenzacijo! Vsi Arduino nimajo visoko natančnih kristalov. Če ugotovite, da ste za več kot permil, lahko razdelitelnik prilagodite v vrstici »unsigned long t = micros ()/1000;« da ura teče hitreje ali počasneje.

Številke se prepletajo, kar pomeni, da v določenem času sveti samo ena številka. Pri spreminjanju segmentov števk so vse številke izklopljene, tako da v nobenem trenutku ni prikazana nobena številka smeti. Izmeril sem, da je frekvenca posodabljanja števk 750 mikrosekund, zato se vsaka številka vsaj enkrat posodobi v vsaki milisekundi!

Nisem resno optimiziral ure za hitrost, saj je trenutna hitrost dovolj dobra za prikaz milisekund. Mislim, da bi lahko Arduino prikazal dve števki več (kar ustreza 100 in 10 mikrosekund), vendar bi to zahtevalo

  • Onemogočite prekinitve in neposredno uporabite časovnike
  • Neposredna manipulacija vrat
  • Povezovanje vseh segmentov v ena vrata in števk v druga vrata
  • Izogibajte se izrecnemu izračunu številskih vrednosti, vendar namesto tega uporabite prirastek (deljenje in modularne operacije so počasne)

Če bi dobil roko pri počasni kameri s> 1000 fps, bi lahko poskusil, zaenkrat sem zadovoljen z ms natančnostjo.

4. korak: Namestitev v škatlo

Namestitev v škatlo
Namestitev v škatlo
Namestitev v škatlo
Namestitev v škatlo
Namestitev v škatlo
Namestitev v škatlo

Poceni elektronska škatla velikosti 100 x 60 x 25 mm, ki ni vodotesna, se enostavno prilega temu časovniku skupaj z baterijami, povečevalnim modulom in stikalom za vklop/izklop. Za delovanje z baterijo bo kombinacija 2 AA baterij s povečevalnim modulom zagotovila varno in stabilno napetost 5 V Arduinu. Če stikalo za vklop/izklop namestite neposredno na baterijo (namesto na izhod povečanja), na baterije ne vpliva uhajanje iz modula za zapiranje in lahko ob občasni uporabi trajajo leta.

Povečalni modul, ki sem ga uporabil, je imel ženski priključek USB, ki sem ga odstranil s kleščami, da sem lahko spajal žice na izhod. Druga možnost je, da uporabite regulirano stopnjevanje in ga nastavite na 5V izhod.

Začnite tako, da izrežete dve luknji, ki ustrezata zaslonu in stikalu za vklop/izklop. S svinčnikom sem narisal približne luknje, nato pa z vrtljivim orodjem izrezal luknje, ki so bile premajhne, nato pa jih vložil z ročnimi datotekami natančno ustrezne velikosti.

Odrežite nekaj večžičnega fleksibilnega rdeče-črnega kabla iz škatle za baterije in jih povežite s povečevalnim modulom, pri čemer bodite pozitivni ali negativni prekinjeni s stikalom za vklop/izklop. Nato od povečevalnega modula naravnost do GND in +5V ali Arduina.

Uporabil sem vroče lepilo, da sem ohranil vse elemente: škatlo za baterije, povečevalni modul in okoli strani zaslona.

Končni rezultat je merilnik časa v trdni škatli z mrtvo preprosto uporabo!

Priporočena: