Talaan ng mga Nilalaman:

High-speed Clock para sa Mabagal na paggalaw ng Mga Video: 4 na Hakbang
High-speed Clock para sa Mabagal na paggalaw ng Mga Video: 4 na Hakbang

Video: High-speed Clock para sa Mabagal na paggalaw ng Mga Video: 4 na Hakbang

Video: High-speed Clock para sa Mabagal na paggalaw ng Mga Video: 4 na Hakbang
Video: How to Speed Up Windows 10 Performance (Tagalog) Paano Pabilisin ang mabagal na PC Settings Solution 2024, Nobyembre
Anonim
Image
Image
Mga Kagamitan
Mga Kagamitan

Halos lahat na may isang modernong smartphone ay may isang high-speed camera na maaaring magamit para sa paggawa ng mga kamangha-manghang mga video na mabagal ang paggalaw. Ngunit kung nais mong sukatin kung gaano katagal bago mag-burst ang sabon-bubble o ang pakwan na iyon ay sumabog, maaari kang nahihirapan na ipakita ang oras sa iyong mga video: ang isang stopwatch ay may napakaliit na display at may eksaktong katumpakan lamang. 1 / 100th ng isang segundo. Kung nais mong gumawa ng mga pagsukat sa dami, nalaman ko na ang nai-publish na frame-rate ng isang camera ay hindi isang bagay na maaari mong umasa!

Sa kasamaang palad, talagang madali itong bumuo ng isang orasan na may katumpakan ng ms at maliwanag na malalaking digit gamit ang isang Arduino at isang 4-digit na 7-segment na display. Bukod dito, ang 12 mga pin mula sa isang karaniwang 0.56 na display na eksaktong tumutugma sa pin-layout ng Arduino Nano, at maaaring direktang solder dito.

Walang pagsisimula / paghinto / pag-reset sa timer na ito. Nagsisimula lamang itong tumakbo kapag binago mo ito at umaapaw pagkalipas ng 10 segundo. Ang ideya ay upang sukatin ang tagal ng isang tiyak na proseso, sinusukat pa rin namin ang pagkakaiba ng oras sa pagitan ng pagtatapos at ang simula.

Hakbang 1: Mga Kagamitan

  • Isang Arduino Nano, nang walang mga header na solder dito.
  • Isang 0.56 "4-digit na 7segment display. Ang parehong karaniwang-anode o karaniwang-cathode ay OK

Kung sakaling nais mong ilagay ito sa isang matibay na kahon, at patakbuhin ng baterya sa 2 baterya ng AA, idagdag ang:

  • Isang 60x100x25 elektronikong kahon ng proyekto
  • Isang may hawak ng baterya ng 2xAA
  • Isang hakbang-hakbang na module
  • Isang 10x15mm on / off rocker switch

Kailangan ng mga tool

Panghinang

Upang mai-mount ito sa isang kahon:

  • Isang rotary tool upang i-cut-cut ang mga butas para sa display at sa switch
  • Mga hand-file upang gupitin ang mga butas
  • Isang hot-glue gun upang ayusin ang mga sangkap sa lugar.

Hakbang 2: Pagkonekta sa Arduino sa Display

Pagkonekta sa Arduino sa Display
Pagkonekta sa Arduino sa Display

Kahanga-hanga, ang mga pin ng isang karaniwang 4-digit na 7-segment na display ay tumutugma sa layout ng isang Arduino Nano sa isang paraan na ang lahat ng 12 mga pin ng display ay kumonekta sa mga IO pin ng Arduino. Pinapayagan nitong solder ang display nang direkta sa Arduino nang hindi nangangailangan ng PCB, mga konektor o kable.

Paghinang sa ilalim na mga pin ng display (makikilala mula sa decimal dots at ang print) sa mga analog pin na A0-A5. Paghinang sa tuktok na mga pin ng display sa mga digital na pin na D4-D9.

Ang Red LED's ay may drop ng boltahe na 2V lamang, kaya ang pagkonekta sa kanila sa isang 5V ay karaniwang hindi magandang ideya, at isang serye ng risistor ay karaniwang inilalapat upang limitahan ang kasalukuyang. Gayunpaman, marahil dahil sa interleaving, nalaman kong gumagana itong OK nang walang resistors ng serye. Kung hindi, narito ang isang detalyadong itinuturo sa kung paano direktang magdagdag ng mga resistors ng serye sa Arduino Nano

Hakbang 3: Ang Code

Ang Code
Ang Code

I-upload ang naka-attach na sketch sa Arduino Nano. Ang kasalukuyang code ay para sa isang karaniwang pagpapakita ng anode, ngunit ang mga linya para sa common-cathode ay maaaring hindi ma-kompromiso.

Kapag na-upload na ang code, dapat na magsimulang tumakbo ang timer sa tuwing masisimulan ang Arduino. Maaari kang tumigil dito o makita sa susunod na seksyon ng isang halimbawa kung paano i-mount ito sa isang matibay na kahon at gawin itong pinapatakbo ng baterya.

Ang ilang mga komento tungkol sa code:

Ang oras ay kinuha mula sa mga pagpapaandar ng micro (), sa halip na paggana ng millis (), para sa dalawang mabubuting kadahilanan: Ang pagpapatupad ng Arduino ng millis () ay kahila-hilakbot: nagdaragdag sila bawat 1.024 ms, at pagkatapos ay minsan sa isang millisecond ay nilaktawan upang mabayaran! Hindi lahat ng mga Arduino ay may mga kristal na mataas ang katumpakan. Kung napag-alaman na nasa off ka ng higit sa isang permille, maaari mong ayusin ang divider sa linya na "unsigned long t = micros () / 1000;" upang gawing mas mabilis o mabagal ang orasan.

Ang mga digit ay interleaved, nangangahulugang isang digit lamang ang naiilawan sa isang tiyak na oras. Kapag binabago ang mga segment ng isang digit, lahat ng mga digit ay naka-off, nang sa gayon ay walang basurang digit ang ipinapakita sa anumang sandali. Sinukat ko ang dalas ng pag-update ng mga digit na 750 microseconds, kaya't ang bawat digit ay nai-update kahit minsan sa bawat millisecond!

Hindi ko seryosong na-optimize ang orasan para sa bilis, dahil ang kasalukuyang bilis ay sapat na mabuti para sa pagpapakita ng mga millisecond. Sa palagay ko ang Arduino ay maaaring gawin upang maipakita ang dalawang digit pa (naaayon sa 100 at 10 microseconds), ngunit mangangailangan ito

  • Ang hindi pagpapagana ng mga nakakagambala at direktang gamitin ang mga timer
  • Direktang pagmamanipula ng port
  • Pagkonekta sa lahat ng mga segment sa isang solong port at ang mga digit sa isa pang port
  • Iwasan ang detalyadong pagkalkula ng mga halagang digit, ngunit gumamit ng mga karagdagan sa halip (mabagal ang mga pagpapatakbo ng dibisyon at modulus)

Kung makakakuha ako ng isang kamay sa isang mabagal na kamera na may> 1000 fps maaari kong subukan, sa ngayon masaya ako sa katumpakan ng ms.

Hakbang 4: Pag-mount Ito sa isang Kahon

Pag-mount Ito sa isang Kahon
Pag-mount Ito sa isang Kahon
Pag-mount Ito sa isang Kahon
Pag-mount Ito sa isang Kahon
Pag-mount Ito sa isang Kahon
Pag-mount Ito sa isang Kahon

Ang isang murang 100x60x25mm electronic project box, hindi tinatablan ng tubig, madaling umaangkop sa timer na ito, kasama ang mga baterya, isang step-up module at isang on / off switch. Para sa pagpapatakbo ng baterya, isang kumbinasyon ng 2 baterya ng AA na may isang step-up na module ay magbibigay ng isang ligtas at matatag na 5V boltahe sa Arduino. Sa pamamagitan ng paglalagay ng isang on / off switch nang direkta sa baterya (sa halip na sa output ng step-up), ang mga baterya ay hindi apektado ng pagtagas mula sa stup-up module, at maaaring magtagal ng taon, kung gagamitin nang paunti-unti.

Ang step-up module na ginamit ko ay may isang babaeng konektor ng USB, na inalis ko sa mga pliers, upang makapag-solder ng mga wire sa output. Bilang kahalili, maaari kang gumamit ng isang nasasaayos na pag-step-up, at itakda ito sa 5V output.

Magsimula sa pamamagitan ng paggupit ng dalawang butas na tumutugma sa display at ang on / off switch. Ginuhit ko gamit ang isang lapis ang tinatayang mga butas, pagkatapos ay gupitin ang mga butas nang medyo masyadong maliit na may isang umiinog na tool, at pagkatapos ay isinampa ito sa mga hand-file sa eksaktong laki ng pagtutugma.

Gupitin ang ilan sa mga multi-strand na may kakayahang pula at itim na cable mula sa kahon ng baterya, at ikonekta ang mga ito sa step-up module, na may positibo o negatibong nagambala ng isang on / off switch. Pagkatapos mula sa step-up module diretso sa GND at sa + 5V o sa Arduino.

Gumamit ako ng hot-glue upang mapanatili ang lahat ng mga elemento sa lugar: ang kahon ng baterya, ang module ng step-up, at sa paligid ng mga gilid ng display.

Ang huling resulta ay isang timer sa isang matibay na kahon na may isang patay-simpleng operasyon!

Inirerekumendang: