INHOUDSOPGAWE:

Snelsnelhorlosie vir slow-motion-video's: 4 stappe
Snelsnelhorlosie vir slow-motion-video's: 4 stappe

Video: Snelsnelhorlosie vir slow-motion-video's: 4 stappe

Video: Snelsnelhorlosie vir slow-motion-video's: 4 stappe
Video: Stick Figure – "Angels Above Me" (Official Music Video) 2024, November
Anonim
Image
Image
Materiaal
Materiaal

Byna almal met 'n moderne slimfoon het 'n hoëspoedkamera wat gebruik kan word vir die maak van skouspelagtige slow-motion-video's. Maar as u wil meet hoe lank dit eintlik neem voordat die seepborrel bars of die waatlemoen ontplof, kan dit moeilik wees om die tyd op u video's te wys: 'n stophorlosie het 'n baie klein skerm en 'n presisie van slegs 1/100 sekonde. As u kwantitatiewe metings wil doen, het ek uitgevind dat die gepubliseerde raamkoers van 'n kamera nie iets is waarop u kan staatmaak nie!

Gelukkig is dit baie maklik om 'n klok met presisie en helder groot syfers te bou met 'n Arduino en 'n 4-syfer-7-segment-skerm. Boonop pas die 12 penne van 'n standaard 0,56”-skerm presies by die pen-uitleg van die Arduino Nano, en kan dit direk gesoldeer word.

Daar is geen begin/stop/herstel op hierdie timer nie. Dit begin net loop as u dit aanskakel en na 10 sekondes oorloop. Die idee is dat ons die tydsverskil tussen die einde en die begin in elk geval meet om die duur van 'n sekere proses te meet.

Stap 1: materiaal

  • 'N Arduino Nano, sonder dat die koppe daarop gesoldeer is.
  • 'N 0,56 "-siffer-7-segment-skerm. Beide gewone anode of gewone katode is OK

As u dit in 'n stewige boks wil plaas en 2 AA-batterye wil gebruik, voeg dan by:

  • 'N Elektroniese projekkas van 60x100x25
  • 'N 2xAA batteryhouer
  • 'N Opstapmodule
  • 'N 10x15mm aan/af -wipskakelaar

Gereedskap benodig

Soldeerbout

Om dit in 'n boks te monteer:

  • 'N Roterende hulpmiddel om die gate vir die skerm en die skakelaar grof te sny
  • Handlêers om die gate fyn te maak
  • 'N Warmlijmpistool om die komponente vas te maak.

Stap 2: Koppel die Arduino aan die skerm

Koppel die Arduino aan die skerm
Koppel die Arduino aan die skerm

Verbasend genoeg pas die penne van 'n standaard 4-syfer-7-segment-skerm op die uitleg van 'n Arduino Nano op so 'n manier dat al 12 penne van die skerm aansluit by IO-penne van die Arduino. Hiermee kan u die skerm direk op die Arduino soldeer sonder om 'n PCB, verbindings of kabels nodig te hê.

Soldeer die onderste penne van die skerm (herkenbaar aan die desimale kolletjies en die afdruk) aan die analoog penne A0-A5. Soldeer die boonste penne van die skerm aan die digitale penne D4-D9.

Rooi LED's het 'n spanningsval van slegs 2V, dus dit is gewoonlik nie 'n goeie idee om dit aan 'n 5V te koppel nie, en 'n reeksweerstand word gewoonlik toegepas om die stroom te beperk. Miskien as gevolg van die ineenstorting, het ek egter gevind dat dit goed werk sonder reeksweerstands. Indien nie, is hier 'n gedetailleerde instruksie oor hoe u reeksweerstands direk op die Arduino Nano kan byvoeg

Stap 3: Die kode

Die kode
Die kode

Laai die aangehegte skets op na die Arduino Nano. Die huidige kode is vir 'n gemeenskaplike-anode-vertoning, maar die lyne vir die gewone katode kan nie kommentaar lewer nie.

Sodra die kode opgelaai is, moet die timer begin loop elke keer as die Arduino begin word. U kan hier stop of in die volgende afdeling 'n voorbeeld sien van hoe u dit in 'n stewige boks kan monteer en dit op 'n battery kan laat werk.

Enkele opmerkings oor die kode:

Die tyd word geneem om die mikro () -funksies, in plaas van die millis () -funksie, om twee goeie redes: die Arduino -implementering van millis () is verskriklik: hulle styg elke 1,024 ms, en dan word daar af en toe 'n millisekonde oorgeslaan te vergoed! Nie alle Arduino's het kristalle met 'n hoë presisie nie. As u agterkom dat u meer as 'n permille afskakel, kan u die verdeler in die reël 'ongetekende lang t = micros ()/1000;' om die klok vinniger of stadiger te laat gaan.

Die syfers word ingevleg, wat beteken dat slegs een syfer op 'n sekere tyd aangesteek word. As u die segmente van 'n syfer verander, is alle syfers af, sodat geen vullissyfer op enige oomblik verskyn nie. Ek het die opdateringsfrekwensie van die syfers gemeet tot 750 mikrosekondes, sodat elke syfer minstens een keer per millisekonde bygewerk word!

Ek het die klok nie ernstig geoptimaliseer vir spoed nie, aangesien die huidige snelheid goed genoeg is om millisekondes te vertoon. Ek dink dat die Arduino twee syfers meer (wat ooreenstem met die 100 en 10 mikrosekondes) kan wys, maar dit sal nodig wees

  • Onderbrekings uitskakel en die tydtellers direk gebruik
  • Direkte poortmanipulasie
  • Verbind alle segmente met 'n enkele poort en die syfers met 'n ander poort
  • Vermy eksplisiete berekening van syferwaardes, maar gebruik eerder inkremente (deling en modulusbewerkings is stadig)

As ek 'n slow-motion-kamera met meer as 1000 fps in die hand kan kry, kan ek dit probeer, maar ek is nou tevrede met die presisie van ms.

Stap 4: Monteer dit in 'n boks

Monteer dit in 'n boks
Monteer dit in 'n boks
Monteer dit in 'n boks
Monteer dit in 'n boks
Monteer dit in 'n boks
Monteer dit in 'n boks

'N Goedkoop elektroniese projekkas van 100x60x25mm, nie waterdig nie, pas maklik by hierdie timer, tesame met batterye, 'n opstapmodule en 'n aan/uit-skakelaar. Vir die werking van die battery, bied 'n kombinasie van 2 AA-batterye met 'n opstapmodule 'n veilige en stabiele 5V-spanning aan die Arduino. Deur 'n aan/uit-skakelaar direk op die battery te plaas (in plaas van op die uitgang van die opstart), word die batterye nie beïnvloed deur lekkasie uit die dompelmodule nie, en kan dit jare duur as dit sporadies gebruik word.

Die opstartmodule wat ek gebruik het, het 'n vroulike USB-aansluiting wat ek met 'n tang verwyder het om drade aan die uitgang te kan soldeer. Alternatiewelik kan u 'n reguleerbare stap-up gebruik en dit op 5V-uitset stel.

Begin deur die twee gate wat ooreenstem met die skerm en die aan/uit -skakelaar uit te sny. Ek teken die benaderde gate met 'n potlood, sny die gate 'n bietjie te klein met 'n draaibare gereedskap en plaas dit dan met handvylers in die presies ooreenstemmende grootte.

Sny 'n paar van die buigsame rooi en swart kabel van die veelstrengs uit die batterykas en koppel dit aan die opstartmodule, óf die positiewe óf die negatiewe onderbreek deur 'n aan/uit-skakelaar. Dan vanaf die opstapmodule direk na die GND en die +5V of die Arduino.

Ek het warm gom gebruik om alle elemente op hul plek te hou: die batterykas, die opstapmodule en om die kante van die skerm.

Die eindresultaat is 'n timer in 'n stewige boks met 'n dooie eenvoudige werking!

Aanbeveel: