Turinys:

„Arduino“valdiklis, skirtas automatinei 360 ° produkto fotografijai: 5 žingsniai (su nuotraukomis)
„Arduino“valdiklis, skirtas automatinei 360 ° produkto fotografijai: 5 žingsniai (su nuotraukomis)

Video: „Arduino“valdiklis, skirtas automatinei 360 ° produkto fotografijai: 5 žingsniai (su nuotraukomis)

Video: „Arduino“valdiklis, skirtas automatinei 360 ° produkto fotografijai: 5 žingsniai (su nuotraukomis)
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Lapkritis
Anonim
Image
Image
Surinkite dalis ir failus
Surinkite dalis ir failus

Sukurkime arduino pagrįstą valdiklį, valdantį žingsninį variklį ir fotoaparato užraktą. Kartu su žingsniniu varikliu valdomu patefonu tai galinga ir nebrangi sistema, skirta automatinei 360 ° produkto fotografavimui ar fotogrametrijai. Automatinis fotoaparato užraktas sukurtas remiantis puikia „Sebastian Setz“biblioteka ir tinka infraraudonųjų spindulių suaktyvinamoms „Nikon“, „Canon“, „Minolta“, „Olympus“, „Pentax“, „Sony“kameroms.

Aš paruošiau dvi valdiklio versijas:

  • Pagrindinė versija, valdoma paprastu mygtuku ir būsenos indikatoriumi.
  • Išplėstinė versija, kuri naudoja 16x2 LCD + klaviatūros ekraną ir turi meniu, skirtą keisti kintamuosius „skrendant“, o ne tik šaltinio kode.

Ką veikia valdiklis?

Jei paspausdami mygtuką suaktyvinsite „fotografavimą“, patefonas atliks visą apsisukimą, padalytą į iš anksto nustatytą žingsnių skaičių. Po kiekvieno sukimosi žingsnio valdiklis padaro trumpą pertrauką ir tada suaktyvina fotoaparatą. Galėsite pakeisti sukimosi greičio, vėlavimo laiko ir žingsnių skaičiaus kintamuosius šaltinio kode (paprastos valdiklio versijos atveju) arba ekrano meniu (išplėstinė valdiklio versija).

1 veiksmas: surinkite dalis ir failus

Surinkite dalis ir failus
Surinkite dalis ir failus
Surinkite dalis ir failus
Surinkite dalis ir failus

Dalys:

  • „Arduino Uno“(ar panašiai)
  • Duonos lenta (tinka pusės dydžio duonos lenta)
  • „Easydriver“žingsninio variklio tvarkyklė
  • 2X radiatorius, skirtas „Easydriver“(pasirenkama, bet labai rekomenduojama) Jei užsisakote radiatorių, įsitikinkite, kad termo juosta yra įtraukta arba ją galima užsisakyti atskirai.
  • Infraraudonųjų spindulių šviesos diodas 950 nm (IR kameros gaidukui)
  • Rezistorius 220 omų (infraraudonųjų spindulių šviesos diodų išankstiniai rezistoriai)
  • Pjezo garso elementas (neprivaloma, jei norite gauti grįžtamąjį garsą)
  • Kai kurie trumpieji laidai
  • Išorinis „Steppermotor“maitinimo šaltinis Aš patyriau gerą patirtį su 12V 1A maitinimo adapteriu, kad galėčiau valdyti 1A „NEMA 17“žingsninį variklį iš „Trinamic“. Taip pat naudoju 24V 3A maitinimo adapterį. „Easydriver“plokštė palaiko iki 30 V ir 750 mA fazę. Daugiau apie „easydriver“specifikacijas rasite čia:
  • Lizdas, skirtas išoriniam žingsninio variklio maitinimo šaltiniui
  • Bipolinis NEMA 17 žingsninis variklis ir patefonas pvz. „FluxGarage“„Automatinis patefonas su žingsniniu varikliu“Nuoroda:

Pridėti prie pagrindinio mygtuko valdiklio …

  • Mygtukas
  • Rezistorius 10k omų (mygtukui)
  • Šviesos diodas (pagal būseną)
  • Rezistorius 220 omų (išankstiniai rezistoriai būsenos LED)

… ARBA pridėti papildomam valdikliui su ekranu+klaviatūros meniu:

„Adafruit“LCD skydo rinkinys su 16x2 simbolių ekranu, pvz

Atsisiųskite pagrindinio ir išplėstinio valdiklio „Arduino“kodus ir „Fritzing“diagramas:

Jei norite atidaryti „Fritzing“dokumentą išplėstiniam valdikliui, būtinai atsisiųskite ir įdiekite „adafruit“elementus:

Atkreipkite dėmesį: nuotraukose naudoju „FluxGarage“„Tinkerer's Baseplate“ir „FluxGarage“„priekinę plokštę 16x2 LCD + klaviatūros skydui“. Šių elementų naudojimas yra neprivalomas, jei taip pat norite juos naudoti, spustelėkite atitinkamų nurodymų nuorodas.

2 žingsnis: Surinkite grandinę

Surinkite grandinę
Surinkite grandinę
Surinkite grandinę
Surinkite grandinę
Surinkite grandinę
Surinkite grandinę

Lydmetalis „Easydriver“plokštė, skirta naudoti duonos plokštėje: Norėdami naudoti „easydriver“ant duonos lentos, turite lituoti kai kurias antgalių kaiščius ant plokštės. Geriausias būdas yra įdėti kaiščio galvutes į duonos lentą, ant viršaus uždėti paprastąjį vairuotoją ir tada lituoti kaiščius.

Prijungimas: prijunkite dalis, kaip parodyta pagrindinio arba išplėstinio valdiklio Fritzing grafikoje. Atsisiųskite „Firtzing“diagramas „github“, raskite nuorodas 1 veiksme.

Dar kartą patikrinkite, ar viskas prijungta taip:

  • „Arduino“skaitmeninis kaištis 02 = „Easydriver“diržas
  • „Arduino“skaitmeninis kaištis 03 = „Easydriver“žingsnis
  • „Arduino“skaitmeninis kaištis 09 = pjezo išėjimas
  • „Arduino“skaitmeninis kaištis 12 = infraraudonųjų spindulių šviesos diodo išėjimas (prieš LED padėkite 220 omų prieš rezistorių)

+ pagrindiniam valdikliui:

  • „Arduino“skaitmeninis kaištis 04 = mygtuko įvestis (uždėkite 10 kΩ rezistorių prieš mygtuko įžeminimą)
  • „Arduino“skaitmeninis kaištis 13 = būsenos šviesos diodo išėjimas (įdėkite 220 omų prieš rezistorių prieš LED)

+ išplėstiniam valdikliui:

Uždėkite ekraną+klaviatūros skydą ant arduino, iš tikrųjų naudojami tie kaiščiai: „Arduino“analoginis kaištis A4+A5 ir 5V+GND

Prijunkite žingsninį variklį: prijungus bipolinius žingsninius variklius (4 laidai), reikia prijungti dvi variklio rites (A ir B) prie dešiniųjų „easydriver“plokštės kaiščių. Pažvelkite į grafiką šio puslapio viduryje ir specifinio žingsninio variklio specifikacijos:

Taip pat daugiau informacijos apie žingsninio variklio ir „Easydriver“prijungimą rasite čia:

Prijunkite išorinį maitinimo šaltinį „Easydriver“plokštėje yra du atskiri maitinimo kaiščiai viršutinėje dešinėje pusėje (M+ ir įžeminimas). Nors pati plokštė gauna energijos iš „Arduino“, atskiras įėjimas suteikia energijos žingsniniam varikliui. Jei naudojate įprastą „iš dėžutės“maitinimo adapterį ir lizdą, „+“laidą prijunkite prie „easydriver“„M+“kaiščio, o „-“laidą prie „easnriver“kištuko „GND“. Paprastai „+“yra vidinėje pusėje, o „-“yra išorinėje kištuko pusėje. Tačiau būkite atsargūs, kai kurie maitinimo adapteriai leidžia pakeisti poliškumą! Jei neteisingai prijungsite „easydriver“laidą, jis gali ir gali būti pažeistas, turėkite tai omenyje.

3 veiksmas: įkelkite šaltinio kodą į „Arduino“

Įkelkite šaltinio kodą į „Arduino“
Įkelkite šaltinio kodą į „Arduino“

Atsisiųskite „Arduino“kodą iš „Github“:

Atsisiųskite „Arduino IDE“:

www.arduino.cc/en/Main/Software

Atsisiųskite trečiųjų šalių bibliotekas ir nukopijuokite jas į savo IDE bibliotekos aplanką:… fotoaparato užraktui: https://github.com/dharmapurikar/Arduino/tree/mast*, skirtas „Adafruit 16x2 Display+Keypad Shield“: https:// github.com/adafruit/Adafruit-RGB-LCD-Shiel…

Kodas yra išbandytas ir puikiai veikia su naujausia „Arduino IDE“(1.8.7 „Windows“) ir „Arduino Uno + Easydriver“žingsninio variklio tvarkyklė + „Adafruit 16x2“ekranas + klaviatūros skydas, + „Trinamic“žingsninis variklis ir „Nikon D60“kamera.

Sureguliuokite kodą, kad jis veiktų su konkrečia kamera: Kaip minėta, naudojau Sebastiano Setzo biblioteką „multiCameraIrControl.h“. Kad jis veiktų jūsų fotoaparate, prieš kameros gamintojo pavadinimą turite ištrinti brūkšnius ir, žinoma, prieš visus kitus gamintojo pavadinimus pridėti brūkšnius:

// Nustatykite fotoaparato tipą: „Nikon D5000“(12); „Canon D5“(12); „Minolta A900“(12); // „Olympus E5“(12); // „Pentax K7“(12); // „Sony A900“(12);

Panašiai sureguliuokite funkciją „Snap“:

// Fotografuokite neužfiksuotą momentą () {D5000.shotNow (); // D5.shotNow (); // A900.shotNow (); // E5.shotNow (); // K7.shotNow (); // A900.shotNow ();}

Atkreipkite dėmesį: Deja, aš dar negalėjau išbandyti kitų IR suaktyvintų fotoaparatų, išskyrus savo „Nikon D60“. Fotoaparato užrakto biblioteka turėtų veikti su keliomis skirtingų gamintojų kameromis, o ne tik su konkrečiais kodų paminėtais fotoaparatų modeliais. Būtų puiku, jei paskelbtumėte komentarą apie savo patirtį naudojant „Canon“, „Minolta“, „Olympus“, „Pentax“ar „Sony“fotoaparatą.

4 žingsnis: valdykite valdiklį

Valdykite valdiklį
Valdykite valdiklį
Valdykite valdiklį
Valdykite valdiklį

Ką veikia atitinkamai valdiklis? Jei paspausite mygtuką, bus įjungtas „fotografavimas“. Kiekvienas fotografavimas yra baigtas šios sekos ciklas:

  1. Fotoaparatas suaktyvinamas
  2. Trumpas delsimas
  3. „Steppermotor“pasuks iš anksto nustatytą laipsnių skaičių
  4. Trumpas delsimas

Fotografavimas yra pagrįstas kintamųjų rinkiniu, kurie lemia tikslų jo veikimą. Šiuos kintamuosius galite pakeisti šaltinio kode (paprasta valdiklio versija) arba ekrano meniu (išplėstinė valdiklio versija).

Pagrindinio valdiklio valdymas:

Pagrindiniame valdiklyje būsenos šviesos diodas rodo, kada sistema yra pasirengusi veikti. Šviesos diodas užgęsta, kai pradedate fotografuoti. Fotografavimą galite nutraukti laikydami nuspaudę mygtuką, kol pasirodys „pertraukimo garsas“ir sukamasis diskas sustos. Žiūrėkite vaizdo įrašą šios instrukcijos viršutinėje dalyje, kad pamatytumėte tai „realiame gyvenime“.

Fotosesijos kintamuosius rasite kodo viršutinėje skiltyje ir galite pakeisti, kad pakeistumėte fotosesiją. Žemiau galite pamatyti pradines vertes:

int šaudymo žingsniai = 20; // žingsnių skaičius visiškam apsisukimui, turėtų būti 10, 20 arba 40 plaukimo šaudymo greitis = 0,01; // sukimosi greitis: bet koks skaičius nuo.01 -> 1, kai 1 yra greičiausias - lėtesnis yra stipresnis (lėtesnis = geresnis „sunkiems“objektams) int shootingdelay = 1000; // pertrauka milisekundėmis prieš ir po kiekvieno sukimosi

Išplėstinio valdiklio valdymas:

Įjungus išplėstinį valdiklį, 4 sekundes rodomas „FluxGarage“logosplash. Po to valdiklis yra pasirengęs veikti ir parodo reguliuojamo kintamųjų rinkinio sąrašą:

  • ST = žingsnių skaičius gali būti 10, 20 arba 40
  • SP = sukimosi greitis, gali būti 1–5, o 1-lėčiausias
  • DE = vėlavimas prieš ir po kiekvieno žingsnio dešimtąją sekundės dalį gali būti 5, 10, 25, 50
  • LI = nustato, ar ekrano foninė šviesa yra įjungta ar išjungta fotografuojant. Gali būti 1 = įjungta arba 0 = išjungta

Galite naršyti kintamųjų tipus kairiuoju ir dešiniuoju mygtukais ir keisti vertes aukštyn ir žemyn mygtukais. Pradėkite fotografavimą paspausdami pasirinkimo mygtuką ir nutraukite fotografavimą laikydami pasirinkimo mygtuką, kol pasirodys „pertraukimo garsas“. Žiūrėkite vaizdo įrašą šios instrukcijos viršutinėje dalyje, kad pamatytumėte tai „realiame gyvenime“.

5 veiksmas: pradėkite fotografuoti

Pradėkite šaudyti
Pradėkite šaudyti

Jei sukūrėte savo valdiklį ir patefoną, o jūsų fotoaparatas yra vietoje, galite pradėti fotografuoti … beveik. Leiskite pasidalinti keletu savo eksperimentų pamokų:

  • Norėdami tolygiai apšviesti savo objektus, naudokite lengvą palapinę. Čia galite rasti daug gerų vadovėlių instrukcijose.com, kurie parodo, kaip sukurti „pasidaryk pats“šviesos dėžutę. Taip pat yra nebrangių tekstilinių lengvų palapinių, kurias galima nusipirkti daugelyje internetinių parduotuvių.
  • Naudokite tos pačios spalvos temperatūros lemputes (Kelvino)
  • Rankiniu būdu sufokusuokite objektą ant disko, išjunkite fotoaparato automatinį fokusavimą
  • Jei dirbate su trikoju, išjunkite fotoaparato vaizdo stabilizatorių
  • Fone pasirinkite matavimo diapazoną, kuriame fotografuojamas objektas nebus rodomas. Taip išvengsite mirgėjimo savo vaizdų seka. Kitas būdas yra rankiniu būdu nustatyti fotoaparato ekspozicijos laiką ir pan.
  • Jei norite įtraukti 360 laipsnių vaizdus į savo svetainę, naudokite „JavaScript“papildinius, tokius kaip „Jquery Reel Plugin“, kurį sukūrė Petras Vostřelis, dar vadinamas „PISI“→ „https://jquery.vostrel.cz/reel millised360 Degrees Product Viewer“pagal „Codyhouse“„→

Tai vieno mano fotografavimo rezultatas (sukurtas naudojant aukščiau pateiktą nustatymą):

Rekomenduojamas: