Kazalo:
- Korak: Zberite dele in datoteke
- 2. korak: Sestavite vezje
- Korak: Naložite izvorno kodo v Arduino
- 4. korak: Upravljajte krmilnik
- 5. korak: Začnite snemati
Video: Arduino krmilnik za avtomatizirano 360 ° fotografiranje izdelka: 5 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Zgradimo krmilnik na osnovi arduina, ki nadzoruje koračni motor in zaklop kamere. Skupaj z gramofonom, ki ga poganja koračni motor, je to zmogljiv in poceni sistem za avtomatizirano 360 ° fotografiranje ali fotogrametrijo izdelkov. Samodejni zaklop fotoaparata temelji na odlični knjižnici „Sebastian Setz“in deluje za infrardeče sprožilne fotoaparate Nikon, Canon, Minolta, Olympus, Pentax, Sony.
Pripravil sem dve različici krmilnika:
- Osnovna različica, ki se upravlja s preprostim gumbom in statusno lučko.
- Napredna različica, ki uporablja 16x2 LCD + ščit za tipkovnico in ima tako meni za spreminjanje spremenljivk "na letenje" in ne samo v izvorni kodi.
Kaj počne krmilnik?
Če sprožite "fotografiranje" s pritiskom na gumb, gramofon izvede popoln obrat, razdeljen na vnaprej določeno število korakov. Po vsakem koraku vrtenja krmilnik naredi kratek odmor in nato sproži kamero. Spremenljivke hitrosti vrtenja, zakasnitve in števila korakov boste lahko spremenili v izvorni kodi (za preprosto različico krmilnika) ali v meniju zaslona (napredna različica krmilnika).
Korak: Zberite dele in datoteke
Deli:
- Arduino Uno (ali podobno)
- Ogledna plošča (primeren za majhno ploščo)
- Gonilnik koračnega motorja Easydriver
- 2X hladilnik za Easydriver (neobvezno, vendar zelo priporočljivo) https://www.sparkfun.com/products/11510 Za pritrditev hladilnika na čip boste potrebovali termični trak. Če naročite hladilnik, se prepričajte, da je termalni trak priložen ali pa ga lahko naročite ločeno.
- Infrardeča LED 950nm (za sprožilec IR kamere)
- Upor 220 ohmov (pred-upori za infrardečo LED)
- Piezo zvočni element (neobvezno, če želite imeti povratne zvoke)
- Nekaj premostitvenih žic
- Zunanji napajalnik za koračni motor Imam dobre izkušnje z 12V 1A napajalnikom za pogon 1A NEMA 17 koračnega motorja iz Trinamic. Uporabljal sem tudi napajalnik 24V 3A. Plošča Easydriver podpira do 30 V in 750 mA na fazo. Več o specifikacijah easydriverja tukaj:
- Vtičnica za zunanje napajanje koračnega motorja
- Bipolarni NEMA 17 koračni motor in gramofon npr. povezava FluxGarage „Avtomatizirana gramofona s koračnim motorjem“:
Dodaj za osnovni krmilnik tipk…
- Pritisni gumb
- Upor 10k ohmov (za gumb)
- LED (s stanjem)
- Upor 220 ohmov (pred-upori za statusno LED)
… ALI dodaj za napredni krmilnik z menijem zaslona+tipkovnice:
Adafruit LCD ščitni komplet s prikazom znakov 16x2, npr
Prenesite kode Arduino in diagrame Fritzing za osnovni in napredni krmilnik:
Če želite odpreti dokument Fritzing za napredni krmilnik, prenesite in namestite elemente adafruit:
Opomba: Na slikah uporabljam FluxGarage „Tinkerer's Baseplate“in FluxGarage „Sprednja plošča za 16x2 LCD + ščit tipkovnice“. Uporaba teh elementov ni obvezna, če jih tudi želite uporabiti, kliknite povezave za ustrezna navodila.
2. korak: Sestavite vezje
Spajkajte ploščo Easydriver za uporabo na plošči: Če želite easydriver uporabiti na plošči, morate na ploščo spajkati nekaj moških zatičev. Najboljši način je, da vtaknete glave moških zatičev v mizo, položite easydriver nanj in nato spajkate zatiče.
Ožičenje: Povežite dele, kot je prikazano na ustrezni sliki Fritzing za osnovni ali napredni krmilnik. Prenesite Firtzingove diagrame na github, poiščite povezave v prvem koraku.
Dvakrat preverite, ali je vse povezano, kot sledi:
- Arduino digitalni pin 02 = dir pin Easydriverja
- Arduino digitalni zatič 03 = koračni zatič Easydriverja
- Arduino digitalni pin 09 = izhod za piezo
- Arduino digitalni pin 12 = izhod za infrardečo LED (pred upor 220 ohmov postavite pred LED)
+ za osnovni krmilnik:
- Arduino digitalni pin 04 = vhod za gumb (upor 10k ohmov postavite pred ozemljitev gumba)
- Arduino digitalni pin 13 = izhod za statusno LED (postavite 220 ohmov pred upor pred LED)
+ za napredni krmilnik:
Zaslon+ščit tipkovnice zložite na arduino, pravzaprav se uporabljajo ti zatiči: analogni zatič Arduino A4+A5 in 5V+GND
Priključite koračni motor: Pri ožičenju bipolarnih koračnih motorjev (4 žice) gre za povezavo dveh tuljav (A in B) motorja z desnimi zatiči plošče easydriver. Oglejte si grafiko na sredini te strani in specifikacije vašega posebnega koračnega motorja:
Več informacij o ožičenju koračnega motorja in Easydriverja najdete tudi tukaj:
Priključite zunanji napajalnik Plošča Easydriver ima dva ločena napajalna zatiča na zgornji desni strani (M+ in ozemljitev). Medtem ko plošča sama pridobiva moč od Arduina, ločen vhod zagotavlja napajanje koračnega motorja. Če uporabljate tipičen napajalni adapter in vtičnico „out of the box“, priključite žico „+“na zatič „M+“easydriverja in žico „-“na pin „GND“easydriverja. Običajno je „+“na notranji strani, medtem ko je „-“na zunanji strani vtiča. Vendar bodite previdni, nekateri napajalniki omogočajo preklop polarnosti! Če napajalnik Easydriver povežete napačno, se lahko poškoduje in bo verjetno poškodovan, upoštevajte to.
Korak: Naložite izvorno kodo v Arduino
Prenesite izvorno kodo Arduino na Github:
Prenesite Arduino IDE:
www.arduino.cc/en/Main/Software
Prenesite knjižnice drugih proizvajalcev in jih kopirajte v mapo knjižnice svojega IDE:… za zaslonko kamere: https://github.com/dharmapurikar/Arduino/tree/mast_ za zaslon Adafruit 16x2+ščit tipkovnice: https:// github.com/adafruit/Adafruit-RGB-LCD-Shiel…
Koda je preizkušena in deluje odlično z najnovejšo različico Arduino IDE (1.8.7 na oknih) in gonilnikom koračnega motorja Arduino Uno + Easydriver + Adafruit 16x2 zaslonom + ščitom tipkovnice, + trinamičnim koračnim motorjem in fotoaparatom Nikon D60.
Prilagodite kodo, da bo delovala z vašo posebno kamero: Kot sem že omenil, sem uporabil knjižnico „multiCameraIrControl.h“Sebastiana Setza. Če želite, da vaš fotoaparat deluje, morate pred imenom proizvajalca fotoaparata izbrisati poševnice komentarjev in seveda dodati poševnice pred vsemi drugimi imeni proizvajalca:
// Nastavitev vrste fotoaparata Nikon D5000 (12); // Canon D5 (12); // Minolta A900 (12); // Olympus E5 (12); // Pentax K7 (12); // Sony A900 (12);
Podobno prilagodite v funkciji "snap":
// Posnemite slikoven posnetek () {D5000.shotNow (); // D5.shotNow (); // A900.shotNow (); // E5.shotNow (); // K7.shotNow (); // A900.shotNow ();}
Prosimo, upoštevajte: Na žalost še nisem mogel preizkusiti drugih fotoaparatov, ki jih sproži IR, razen mojega Nikona D60. Knjižnica zaklopov fotoaparatov bi morala delovati z več kamerami različnih proizvajalcev, ne le z določenimi modeli kamer, ki so omenjene v kodi. Lepo bi bilo, če napišete svoje izkušnje s fotoaparatom Canon, Minolta, Olympus, Pentax ali Sony.
4. korak: Upravljajte krmilnik
Kaj naredi koda oziroma krmilnik? Če pritisnete gumb, se sproži „fotografiranje“. Vsako fotografiranje je končna zanka naslednjega zaporedja:
- Kamera se sproži
- Kratka zamuda
- Steppermotor bo zavrtel vnaprej določeno stopinjo
- Kratka zamuda
Fotografiranje temelji na nizu spremenljivk, ki določajo njegovo natančno vedenje. Te spremenljivke lahko spremenite v izvorni kodi (za preprosto različico krmilnika) ali v meniju zaslona (napredna različica krmilnika).
Upravljanje osnovnega krmilnika:
Na osnovnem krmilniku statusna lučka prikazuje, kdaj je sistem pripravljen za delovanje. Ko začnete fotografirati, se LED izklopi. Fotografiranje lahko prekinete tako, da držite gumb, dokler se ne prikaže „zvok prekinitve“in se gramofon ustavi. Oglejte si videoposnetek v zgornjem razdelku tega navodila, če želite to videti v "resničnem življenju".
Spremenljivke fotografiranja najdete v zgornjem razdelku kode in jih lahko spremenite tako, da spremenite fotografiranje. Spodaj si lahko ogledate začetne vrednosti:
int strelski koraki = 20; // število korakov za popoln obrat, naj bo 10, 20 ali 40 float hitrost streljanja = 0,01; // hitrost vrtenja: poljubno število od.01 -> 1, pri čemer je 1 najhitrejša - počasnejša je močnejša (počasnejša = boljša za »težke« predmete) int shootingdelay = 1000; // prekinitev v milisekundah pred in po vsakem vrtenju
Upravljanje naprednega krmilnika:
Ko vklopite napredni krmilnik, se za 4 sekunde prikaže logotip FluxGarage. Po tem je krmilnik pripravljen za izvajanje in prikaže seznam nastavljivega niza spremenljivk:
- ST = število korakov, lahko 10, 20 ali 40
- SP = Hitrost vrtenja, lahko je 1-5, medtem ko je 1 najhitrejša
- DE = Zamuda pred in po vsakem koraku v desetinki sekunde je lahko 5, 10, 25, 50
- LI = Določa, ali je osvetlitev ozadja zaslona vklopljena ali izklopljena med fotografiranjem. Lahko je 1 = vklopljeno ali 0 = izklopljeno
Po vrstah spremenljivk se lahko premikate z levim in desnim gumbom ter spreminjate vrednosti z gumboma gor in dol. Začnite fotografiranje s pritiskom na gumb za izbiro in prekinite fotografiranje tako, da držite gumb za izbiro, dokler se ne prikaže „prekinitev zvoka“. Oglejte si videoposnetek v zgornjem razdelku tega navodila, če želite to videti v "resničnem življenju".
5. korak: Začnite snemati
Če ste zgradili lasten krmilnik + gramofon in je fotoaparat na mestu, ste pripravljeni za začetek fotografiranja … skoraj. Naj delim nekaj spoznanj iz lastnih poskusov:
- S svetlobnim šotorom enakomerno osvetlite svoje predmete. Na spletnem mestu instructables.com lahko najdete veliko dobrih vadnic, ki prikazujejo, kako ustvariti svetlobno polje »naredi sam«. Obstajajo tudi poceni tekstilni svetlobni šotori, ki jih je mogoče kupiti v številnih spletnih trgovinah.
- Uporabite žarnice z enako barvno temperaturo (Kelvin)
- Ročno izostrite predmet na gramofonu, deaktivirajte samodejno ostrenje fotoaparata
- Če delate s stojalom, izklopite stabilizator slike fotoaparata
- Izberite merilno območje v ozadju, kjer posneti predmet ne bo prikazan. S tem se boste izognili utripanju v zaporedju slik. Drug način je, da ročno nastavite čas osvetlitve fotoaparata itd.
- Če želite na svoje spletno mesto vključiti svoje 360-slike, uporabite vtičnike javascript, kot je „Jquery Reel Plugin“avtorja Petra Vostřela alias „PISI“→ https://jquery.vostrel.cz/reel med360 Degrees Product Viewer “avtorja„ Codyhouse “→
To je rezultat enega mojih posnetkov (ustvarjenih z zgornjo nastavitvijo):
Priporočena:
VentMan II. Del: Arduino-avtomatizirano zaznavanje peči za ojačevalce: 6 korakov
VentMan II. Del: Arduino-avtomatizirano odkrivanje peči za ojačevalce: Glavne točke: To je bil začasen kramp, ki je odkril, kdaj deluje moj motor ventilatorja AC/peči, tako da sta se lahko vklopila moja dva ventilatorja. Potrebujem dva ojačevalna ventilatorja v kanalu, da potisnem več toplega/hladnega zraka v dve izolirani spalnici. Ampak jaz
Konfigurator izdelka Inventor: 11 korakov
Konfigurator izdelka Inventor: Ta navodila kažejo, kako z Inventorjem 2019 sestaviti preprost konfigurator izdelka. Kaj potrebujete? Inventor professional 2019Osnovni Inventor je znan o: Parametrično oblikovanje Izvedeni deli Sestavljanje
Arduino DIY krmilnik za igre - Arduino PS2 krmilnik iger - Predvajanje Tekkena z igralno ploščo Arduino DIY: 7 korakov
Arduino DIY krmilnik za igre | Arduino PS2 krmilnik iger | Igranje Tekken z igralno ploščo DIY Arduino: Pozdravljeni, igranje iger je vedno zabavno, vendar je igranje s svojim lastnim krmilnikom iger po meri bolj zabavno. Zato bomo v tem navodilu naredili krmilnik za igre z uporabo arduino pro micro
DIY 360 'vrtljivo stojalo za fotografiranje / videografijo: 21 korakov (s slikami)
DIY 360 'vrtljivo stojalo za fotografiranje / videografijo: Naučite se izdelati DIY 360 vrtljivo stojalo za prikazovanje iz kartona doma, ki je opremljeno z enostavnimi znanstvenimi projekti za otroke z USB pogonom, ki jih lahko uporabite tudi za fotografiranje izdelkov in 360 -predogled tega izdelka za objavo na vaših spletnih mestih ali celo na Amazu
Predstavitev izdelka razširjene resničnosti (TfCD): 11 korakov (s slikami)
Predstavitev izdelkov z razširjeno resničnostjo (TfCD): Prodaja izdelkov med letom postaja danes vse bolj priljubljena. Vendar pa je prva in skoraj edina informacija, ki jo potnik (možni kupec) vidi na letalu, tiskana brošura. Ta pouk bo pokazal način za inovacije v airpu