Kazalo:
- 1. korak: Ampak.. Kako?
- 2. korak: Naučite se sprožiti kamero
- 3. korak: Načini sprožitve
- 4. korak: Pisanje kode za sprožitev
- 5. korak: Interval razreda {};
- 6. korak: Upravljanje intervala prek Arduina
- 7. korak: Prikaz intervala
- 8. korak: Združite vse skupaj
- 9. korak: Dodajte še zadnjo stvar
- 10. korak: Zadrževanje nereda
- 11. korak: Sens0rs
- 12. korak: PoweeEeEer
- 13. korak: Priloga. Nekako
- 14. korak: Fin
Video: Pimp My Cam: 14 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:09
Od tod prihaja ta projekt.
Nekaj časa nazaj sem razmišljal o snemanju časovnih zamikov. "Kako?" Sem se vprašal? Prvi odgovor je bil "No.. samo nekaj posnameš in pospešiš in to je to". Toda ali je res tako preprosto? Najprej želim za to uporabiti svoj DSLR, moj Nikon D3100 pa ima 10 -minutno časovno omejitev za snemanje videa. Drugič, tudi če bi imel kamero brez časovne omejitve pri snemanju videa, kaj, če želim narediti resnično dolg časovni zamik, na primer 12 ur? Posnamem 12 urni video 1080p. Dvomim, da bi baterija zdržala tako dolgo in ni zelo praktična, kajne? V redu, prečkam "idejo za snemanje videa". No, potem so slike. Fotografiranje na fotoaparatu v določenem intervalu in na koncu več sto slik, ki jih nato obdelam s programsko opremo za snemanje videa..?
Zdelo se mi je kot dobra ideja, zato sem se odločil poskusiti. Tako sem si želel narediti napravo, v katero lahko vnesem časovno obdobje, in na podlagi tega obdobja bi neprestano sprožil mojo kamero. In ko smo že pri tem, zakaj ne bi dodali še nekaterih drugih stvari, kot je sprožilec gibanja itd.?
1. korak: Ampak.. Kako?
KAKO? je naše naslednje vprašanje, na katerega manjka odgovor. Zaradi časovnega razporeda, sprožilcev, senzorjev in podobnih stvari ne bo presenečenje, da je prvi, ki mi je padel na pamet, seveda Arduino. V redu, a kljub temu se moramo naučiti sprožiti zaklop na fotoaparatu. Hm.. servo vroče prilepljen na telesno kamero? Vsekakor ne, želimo, da je to tiho in energetsko učinkovito. Energijsko učinkovit - zakaj? Ker ga želim narediti prenosnega in vanj vstaviti baterijo, ne bom vedno blizu vtiča. Kako ga potem sprožimo.. pravzaprav je precej preprosto.
Nikon je že vedel, da si boste želeli daljinskega upravljalnika in druge dodatne opreme, in rekli so: "V redu, vse jim bomo dali, vendar bomo naredili posebno pristanišče, da bomo lahko s temi dodatki zaslužili več", sram te bilo, Nikon. Ta vrata se (v mojem primeru) imenujejo MC-DC2 in najcenejši način, da jih dobimo v roke, je, da za 2-3 USD kupite daljinsko sprostitev zaklopa na eBayu in uporabite samo kabel.
*Nekatere druge kamere, na primer Canon, imajo preprost 3,5 -milimetrski priključek za slušalke, narejen za isto uporabo, tako da lahko uporabite nekaj kabla iz starih zvočnikov/slušalk.
2. korak: Naučite se sprožiti kamero
Kakorkoli, tukaj je dogovor, vrata bodo imela tri povezave, ki nas bodo zanimale (zemlja, ostrenje in zaklop), vi pa jih boste imeli na koncu kabla na novo kupljenega daljinskega zaklopa, ki ste ga pravkar uničili. Te tri povezave so za nas pomembne, ker če fotoaparat skrajšamo na ozemljitev in ostrenje, se bo fotoaparat izostril tako, kot pritisnete gumb za ostrenje, nato pa, medtem ko ta povezava ostane, lahko skrajšate ozemljitev in zaklop in fotoaparat bo posnel sliko tako, kot če bi pritisnili sprožilec na fotoaparatu.
To lahko preizkusite tako, da dobesedno skrajšate žice pod napetostjo na koncu kabla, da ugotovite, katera žica je katera. Ko boste to storili, jih bomo zaradi lažje identifikacije obarvali tako:
Ozemljitev = ČRNA; Osredotočenost = BELA; Zaklop = RDEČA.
V redu, zdaj moramo naučiti Arduino, da to počne namesto nas.
3. korak: Načini sprožitve
Najpreprostejša stvar, ki jo lahko rečemo Arduinu, da jo pošlje v zunanji svet, je digitalni izhodni signal. Ta signal je lahko VISOK (logičen '1') ali NIZK (logičen '0'), od tod tudi ime "digitalni", ali ko se pretvori v njegov osnovni pomen: 5 V za logično VISINO in 0 V za logično NIZKO.
Kaj naj storimo s temi digitalnimi signali? Ne moremo jih preprosto povezati s kamero in pričakovati, da bo kamera vedela, kaj želimo. Kot smo videli, moramo prekiniti povezave na kameri, da lahko reagira, zato moramo uporabiti digitalne signale Arduina za pogon nekaterih komponent, ki lahko skrajšajo svoje sponke, odvisno od tega električnega signala, ki ga pošljemo. *Tako, kot sem opisal, si morda mislite "Ah, releji!" ampak ne ne. Rele bi delo opravil, vendar imamo opravka s tako majhnimi tokovi, da lahko preprosto uporabimo črno magijo polprevodnikov.
Prva komponenta, ki jo bom preizkusil, je optični sklopnik. Največ sem jih videl pri tem in je verjetno najboljša rešitev. Optoelement je električna komponenta, s katero upravljate izhodno vezje, medtem ko je vhodno vezje od njega popolnoma izolirano. To dosežemo s prenosom informacij s svetlobo, vhodno vezje prižge LED, fototranzistor na izhodu pa se ustrezno preklopi.
Zato bomo optični sklopnik uporabili na ta način: našemu Arduinu povemo, naj na enega pošlje digitalno HIGH, če gre za digitalne zatiče, ta signal je praktično 5V, ki bo LED v optičnem sklopniku poganjal, fototranzistor v njem pa bo "kratek" to je izhodni priključek, ko zazna to svetlobo, in obratno, "loči" njegove sponke, saj od LED -ja ni svetlobe, ko pošiljamo digitalno NIZKO preko Arduina.
Praktično to pomeni: eden od digitalnih nožic Arduina je pritrjen na ANODE pin optičnega sklopnika, Arduino GND je pritrjen na KATODO, GND fotoaparata je pritrjen na EMITTER in FOCUS (ali ZAPISK) na ZBIRALNIK. Če želite poiskati te zatiče na svojem, si oglejte podatkovni list optičnega sklopnika, ki ga uporabljate. Uporabljam 4N35, tako da lahko slepo sledite mojim shemam, če vam ni vseeno, kaj se dogaja znotraj optičnega sklopnika. Ni treba posebej poudarjati, da bomo potrebovali dva od teh, saj moramo nadzorovati tako FOKUS fotoaparata kot zaklop.
Ker smo videli, kako to deluje, s fototranzistorjem na izhodu, zakaj ne bi poskusili le s preprostim tranzistorjem NPN. Tokrat bomo digitalni signal pripeljali neposredno (preko upora) na podnožje tranzistorja in tako GAMO kamere kot Arduino priključili na oddajnik in fokus/zaklop fotoaparata na zbiralnik tranzistorja.
Spet bomo potrebovali dva od teh, saj nadzorujemo dva signala. Uporabljam BC547B in za to lahko v bistvu uporabite kateri koli NPN, saj je tok, ki ga nadzorujemo, en sam miliamper.
Obe komponenti bosta delovali, vendar je izbira optičnega sklopnika verjetno boljša ideja, ker je varnejša. Tranzistorje izberite le, če veste, kaj počnete.
4. korak: Pisanje kode za sprožitev
Kot smo že povedali, bomo za signalizacijo uporabili digitalne zatiče Arduina. Arduino jih lahko uporabi tako za branje podatkov iz njega kot za pisanje vanj, zato moramo najprej v funkciji setup () določiti, da bomo za izhod uporabili dva digitalna zatiča Arduino:
pinMode (FOCUS_PIN, OUTPUT);
pinMode (SHUTTER_PIN, OUTPUT);
kjer lahko FOCUS_PIN in SHUTTER_PIN določite z "#define NAME value" ali kot int pred funkcijo setup (), ker lahko spremenite pin, tako da je lažje spremeniti vrednost samo na enem mestu in ne za celotno kodo pozneje.
Naslednja stvar, ki jo bomo naredili, je, da napišemo funkcijo trigger (), ki bo naredila ravno to, ko se zažene. Priložim samo sliko s kodo. Vse, kar morate vedeti, je, da najprej držimo FOCUS_PIN na HIGH za določen čas, ker moramo počakati, da se fotoaparat osredotoči na motiv, na katerega ga usmerimo, nato pa le za trenutek (medtem ko je FOCUS_PIN še vedno VISOK) postavite SHUTTER_PIN na HIGH samo za fotografiranje.
Vključil sem tudi možnost preskakovanja ostrenja, ker to ne bo potrebno, če snemamo časovni zamik nečesa, kar se s časom ne spreminja na razdalji od fotoaparata.
5. korak: Interval razreda {};
Zdaj, ko smo kamero sprožili, moramo to narediti v intervalometer z dodajanjem funkcionalnosti upravljanja časovnega obdobja med dvema posnetkoma. Da bi dobili sliko o tem, kaj počnemo, je tukaj nekaj primitivne kode, ki dokazuje želeno funkcionalnost:
void loop () {
zamuda (interval); sprožilec (); }
Želim spremeniti ta interval od, recimo, 5 sekund pa vse do morda 20-30 minut. In tu je problem, če ga želim spremeniti s 5s na 16s ali karkoli vmes, bom uporabil prirastek 1s, kjer bi se za vsako mojo zahtevo za povečanje intervala interval povečal za 1s. To je super, kaj pa, če želim preiti s 5s na 5min? Za to bi mi porabil 295 zahtev v korakih po 1 s, zato moram očitno povečati vrednost prirastka na nekaj večjega in določiti, na kateri natančni vrednosti intervala (prag) spremeniti prirastek. To sem uresničil:
5s-60s: prirastek 1s; 60s-300s: prirastek 10s; 300–3600: prirastek 60 s;
vendar sem napisal, da je ta razred nastavljiv, tako da lahko določite svoje pragove in prirastke (vse je komentirano v datoteki.h, da lahko veste, kje spremeniti katere vrednosti).
Primer, ki sem ga navedel pri manipulaciji intervala, je očitno narejen na osebnem računalniku, zdaj ga moramo premakniti na Arduino. Celoten ta razred, Interval, je postavljen v eno datoteko z glavo, ki se uporablja za shranjevanje deklaracij in definicij (v resnici ni, vendar je v tem primeru mogoče storiti brez škode) našega razreda/funkcij. Za uvedbo te datoteke z glavo v našo kodo arduino uporabljamo "#include" Interval.h "" (datoteke morajo biti v istem imeniku), kar zagotavlja, da lahko uporabimo funkcije, določene v datoteki glave v naši glavni kodi.
6. korak: Upravljanje intervala prek Arduina
Zdaj želimo spremeniti vrednost intervala, ga povečati ali zmanjšati. To sta torej dve stvari, zato bomo uporabili dva digitalna signala, ki ju bosta upravljala dva gumba. Večkrat bomo prebrali vrednosti na digitalnih zatičih, ki smo jih dodelili gumbom, in jih razčlenili na funkcijo checkButtons (int, int); ki poveča interval, če pritisnete gumb "navzgor" in zmanjša interval, če gumb "navzdol". Če pritisnete oba gumba, se spremeni vrednost spremenljivega ostrenja, ki nadzoruje, ali se pri sprožitvi izostri.
Del kode ((millis () - prevBtnPress)> = debounceTime) se uporablja za odstranjevanje. Način, kako sem to napisal, pomeni, da prvi pritisk gumba registriram z logično spremenljivko btnPressed in se spomnim časa, ko se je to zgodilo. Potem čakam na določen čas (debounceTime) in če gumb še vedno pritisnem, se odzovem. Prav tako naredi "premor" med vsakim drugim pritiskom na gumb, da se izogne večkratnim pritiskom, kjer jih ni.
In na koncu z:
if ((millis () - prevTrigger) / 1000> = interval.getVal ()) {
prevTrigger = millis (); sprožilec (); }
najprej preverimo, ali je čas med zadnjim sprožanjem (prevTrigger) in trenutnim časom (millis ()) (vse je deljeno s 1000, ker je v milisekundah in je interval v sekundah) enak ali večji od intervala želimo in če je tako, se spomnimo trenutnega časa kot zadnjega, ko smo kamero sprožili in nato sprožili.
S tem kompletom smo v bistvu naredili intervalometer, vendar še zdaleč nismo končali. Vrednosti intervalometra še vedno ne vidimo. Prikazan je samo na serijskem monitorju in ne bomo vedno blizu računalnika, zato bomo zdaj uvedli nekaj, kar nam bo pokazalo interval, ko ga spremenimo.
7. korak: Prikaz intervala
Tu predstavljamo zaslon. Uporabil sem 4 -mestni modul, ki ga poganja TM1637, ker ga moram uporabiti samo za prikaz časa in nič drugega. Te module za Arduino najlažje uporabite tako, da zanje uporabite že izdelane knjižnice. Na spletnem mestu Arduino je stran z opisom čipa TM1673 in povezavo do predlagane knjižnice. Prenesel sem to knjižnico in te knjižnice lahko predstavite na Arduino IDE na dva načina:
- v programski opremi Arduino pojdite na Sketch> Include Library> Add. ZIP library in poiščite datoteko.zip, ki ste jo pravkar prenesli
- lahko naredite, kar Arduino počne ročno, in samo razpakirate knjižnico v mapi, v kateri Arduino shranjuje knjižnice, v sistemu Windows: C: / Users / Uporabniško ime / Documents / Arduino / libraries \.
Ko vključite knjižnico, preberite datoteko "ReadMe", v kateri boste našli povzetek, kaj različne funkcije počnejo. Včasih to ni dovolj, zato se boste želeli poglobiti in raziskati datoteke z glavo, v katerih si lahko ogledate, kako se funkcije izvajajo in kaj potrebujejo kot vhodni argumenti. In seveda najboljši način, da začutite, kaj knjižnica zmore, ponavadi ponuja primer, ki ga lahko zaženete iz programske opreme Arduino prek Datoteka> Primeri> Ime knjižnice> Primer imena. Ta knjižnica ponuja en primer, ki vam ga priporočam, da ga zaženete na zaslonu samo zato, da preverite, ali zaslon pravilno deluje, nato pa vas spodbujam, da prilagodite kodo, ki jo vidite v primeru, in se sami prepričate, kaj počne vsaka funkcija in kako se zaslon odziva to. Tako sem naredil in to sem ugotovil:
uporablja 4 nepodpisana cela števila po 8 bitov za vsako številko (0bB7, B6, B5, B4, B3, B2, B1, B0). Vsak od teh bitov B6-B0 se uporablja za vsak segment določene števke in če je bit 1, se prižge segment, ki ga nadzoruje. Ta cela števila so shranjena v matriki, imenovani data . Nastavitev teh bitov na zaslon se izvede z display.setSegments (podatki); ali pa lahko naravno dostopate do katere koli številke, zlasti pa jih nastavite ročno (podatki [0] = 0b01111001) ali pa uporabite funkcijo encodeDigit (int); in številko, ki jo pošljete, pretvorite v ustrezne bite (podatki [0] = display.encodeDigit (3));. Bit B7 uporablja samo druga številka ali podatek [1] za aktiviranje debelega črevesa.
Ker sem napisal funkcije v razredu INTERVAL, za katere lahko dobim določene števke intervala v obliki M1M0: S1S0, kjer M pomeni minute in S sekunde, je naravno, da uporabljam encodeDigitFunction (int); za prikaz intervala tako:
displayInterval () {
podatki [0] = display.encodeDigit (interval.getM1 ()); podatki [1] = 0x80 | display.encodeDigit (interval.getM0 ()); podatki [2] = display.encodeDigit (interval.getS1 ()); podatki [3] = display.encodeDigit (interval.getS0 ()); display.setSegments (podatki); }
Zdaj, ko moram prikazati interval na zaslonu, lahko pokličem funkcijo displayInterval ().
*Upoštevajte "0x80 | …" pri podatkih [1]. Uporablja se za zagotovitev, da je bit B7 podatkov [1] vedno 1, zato se dvopičje zasveti.
Zadnja stvar pri zaslonu, poraba energije. Morda ni zelo pomemben, saj ga dolgo ne bomo držali, če pa želite, da bo ta še bolj prijazen do baterij, razmislite o zmanjšanju svetlosti zaslona, saj pri največji svetlosti potegne 3 -krat večji tok kot na najnižji.
8. korak: Združite vse skupaj
Vemo, kako sprožiti kamero, kako upravljati interval in kako isti interval prikazati na zaslonu. Zdaj moramo samo združiti vse te stvari skupaj. Seveda bomo začeli s funkcijo loop (). Nenehno bomo preverjali pritiske gumbov in se ustrezno odzvali s kontrolnimi gumbi (int, int) ter ustrezno spremenili interval in prikazali spremenjeni interval. Tudi v zanki () bomo nenehno preverjali, ali je od zadnjega sprožitve ali pritiska na gumb minilo dovolj časa in po potrebi poklicali funkcijo trigger (). Zaradi manjše porabe energije bomo čez nekaj časa zaslon izklopili.
Dodal sem dvobarvno LED (rdeča in zelena, skupna katoda), ki bo zasvetila zeleno, medtem ko bo sprožilec () zasvetil rdeče skupaj z zaslonom, če je ostrenje vklopljeno, in bo ostalo izklopljeno, če je ostrenje izklopljeno.
Prav tako se bomo preselili na še manjši Arduino, Pro Mini.
9. korak: Dodajte še zadnjo stvar
Doslej smo ustvarili samo Intervalometer. Koristno, vendar lahko naredimo bolje.
Tukaj sem imel v mislih: Intervalometer to počne privzeto, RAZEN, ko priključimo nekakšno zunanje stikalo/senzor, ki nato zaustavi intervalometer in se odzove na vhod stikala/senzorja. Recimo temu senzor, ne bo nujno, da je priključen senzor, vendar se bom nanj nanašal tako.
Prvič, kako zaznamo, da smo pritrdili senzor?
Senzorji, ki jih bomo uporabili/izdelali, bodo potrebovali tri žice, ki jih povezujejo z arduinom (Vcc, GND, Signal). To pomeni, da lahko kot vhodni priključek za senzor uporabimo 3,5 -milimetrski avdio priključek. In kako to rešuje naš problem? No, obstajajo vrste 3,5 mm vtičnice "s stikalom", ki imajo zatiče, ki so v kratkem stiku z zatiči priključka, če v njih ni moškega priključka, in se odklopijo, ko je priključek prisoten. To pomeni, da imamo informacije, ki temeljijo na prisotnosti senzorja. Uporabil bom izvlečni upor, kot je prikazano (digitalni zatič se bo brez senzorja odčitaval VISOKO, s pritrjenim senzorjem pa NIZKO), lahko pa tudi digitalni zatič pritrdite na zatič priključka, ki je običajno priključen na ozemljitev in definirajte ta digitalni zatič kot INPUT_PULLUP, bo deloval tako ali drugače. Zdaj moramo prilagoditi svojo kodo, tako da naredi vse, kar smo doslej zapisali, le če senzor ni prisoten, ali ko digitalni pin preveri, da je VISOK. Prav tako sem ga prilagodil, tako da na zaslonu prikaže "SENS" namesto intervala, ki je v tem načinu neuporaben, vendar je ostrenje za nas še vedno pomembno, zato bomo obdržali funkcionalnost izmeničnega ostrenja s pritiskom na oba gumba in prikazuje stanje ostrenja skozi rdečo LED.
Kaj senzor dejansko počne?
Vse, kar morate storiti, je, da na svoj signalni zatič vklopite 5V, ko želimo sprožiti kamero. To pomeni, da bomo potrebovali še en digitalni zatič Arduina, ki bo preveril stanje tega zatiča, in ko bo registriral HIGH, bo potrebno le poklicati funkcijo trigger () in kamera bo posnela sliko. Najlažji primer in tisti, ki ga bomo uporabili za preverjanje, ali to deluje, je preprost gumb z izvlečnim uporom. Pritrdite gumb med Vcc senzorja in signalnim zatičem ter dodajte upor med signalnim zatičem in GND, tako da bo signalni zatič na GND, ko gumb ne pritisnete, ker skozi upor ne teče tok, in ko ko pritisnemo gumb, signalni zatič postavimo neposredno na HIGH in Arduino to prebere in sproži kamero.
S tem smo zaključili s pisanjem kode.
*Rad bi opozoril na nekatere težave, ki sem jih imel pri avdio priključkih, ki sem jih uporabljal. Med vstavljanjem moškega vtiča v konektor bi se GND in kateri koli od drugih dveh nožic včasih kratki. To se zgodi takoj in le med vstavljanjem priključka, vendar je še vedno dovolj dolgo, da Arduino registrira kratek čas, da bi se Arduino znova zagnal. To se ne zgodi tako pogosto, vendar je še vedno lahko nevarno in obstaja možnost uničenja Arduina, zato se izogibajte priključkom, ki sem jih uporabil.
10. korak: Zadrževanje nereda
Na slikah je razvidno, da je plošča v neredu in končali smo, zato moramo vse prenesti na ploščo/tiskano vezje. Odločil sem se za PCB, ker mislim, da jih bom naredil več, da jih bom na ta način zlahka reproduciral.
Za oblikovanje tiskanega vezja sem uporabil Eagle in našel modele za vse dele, ki sem jih uporabil. V svoji zasnovi bi si želel nekaj malega, kar bi rad naredil, in to je žičnata blazinica za Vcc zaslona. To sem videl prepozno in nisem hotel uničiti tistega, kar sem prej načrtoval, in sem lenobno dodal žične blazinice in pozneje je bilo treba tem povezavam dodati žico namesto bakrenih sledi, zato upoštevajte, da če uporabljate moj dizajn.
Arduino plošča in zaslon sta iz očitnih razlogov povezana s tiskanim vezjem prek ženskih zatičev, namesto da bi bila spajkana neposredno na tiskano vezje. Tako je pod zaslonom dovolj prostora za druge komponente za druge komponente, kot so upori, tranzistorji in celo avdio priključek.
Vstavil sem mikro potisne gumbe, ki bi morali biti po zasnovi neposredno spajkani, lahko pa uporabite tudi luknje za ženske zatiče in povežete gumbe z žico, če želite, da so nameščeni na ohišju in ne na tiskanem vezju.
Za priključitev kabla, ki se poveže s kamero, bomo namestili še en ženski avdio priključek. Tako postane plošča vsestranskejša, saj se bomo tako lahko povezali z drugimi kamerami z drugimi priključki.
11. korak: Sens0rs
Poglejmo načine za uporabo senzorja.
Tako bo imel senzor napajalno napetost 5 V in bo moral omogočiti digitalno HIGH na svojem signalnem zatiču, ko želimo sprožiti kamero. Prva stvar, ki mi je padla na pamet, je senzor gibanja, natančneje PIR. Za Arduino se prodajajo moduli, ki imajo na sebi ta senzor in delajo kar želimo. Napajajo se na 5V in imajo izhodni zatič, na katerega vklopijo 5V, ko se sprožijo, le priključke moramo priključiti na 3,5 -milimetrski avdio priključek in ga lahko priključimo kar na ploščo. Opozoriti pa je treba, da ta senzor potrebuje čas, da se segreje in začne pravilno delovati, zato ne pričakujte, da bo deloval pravilno, takoj ko ga priključite, mu dajte nekaj časa in ga nato nastavite in vse živo vstopi v njegovo doseg sproži kamero.
Ker razmišljamo v smeri že izdelanih senzorskih plošč Arduino, pride na misel še ena, zvok. Te plošče so običajno narejene tako, da imajo en zatič, ki oddaja analogno vrednost sprejetega zvoka, in drugega, digitalnega, ki oddaja logično VISOKO, če zvok, ki ga pobere, preseže določeno raven. To raven lahko nastavimo tako, da senzor prezre naš glas, vendar registrira ploskanje. Tako boste ob vsakem ploskanju sprožili kamero.
12. korak: PoweeEeEer
Mislim, da je to stvar najlažje napajati z banko moči, in ne od zunaj. Ohranili bomo funkcionalnost polnjenja telefona ali česar koli drugega in s stikalom nadzirali tok toka na ploščo. Zatiče izhodnega priključka USB bomo našli na vezju v napajalniku, ki sta GND in Vcc (5V) in žice za spajkanje neposredno na njih in od tam na našo ploščo.
13. korak: Priloga. Nekako
S tem sem se res boril. Ko sem kupil škatlo, v katero sem želel vstaviti obstoječe tiskano vezje, sem spoznal, da ni lepega načina, da bi vse opremil tako, kot sem želel, nato pa sem se odločil oblikovati novo tiskano vezje, tokrat z optičnimi sklopkami. Želel sem postaviti tiskano vezje tik pod stran, na kateri bi vrtal luknje za določene komponente, ki jih je treba videti/se jih dotakniti. Da bi to delovalo, bi moral spajati zaslon in Arduino neposredno na ploščo, brez vtičnic ali glav, in v tem je prva težava. Odpraviti težave je bilo zelo grozno, ker nisem bil pripravljen takoj spajkati, dokler ne preizkusim, da vse deluje, in nisem mogel ničesar preizkusiti, ker ga nisem mogel spajkati itd. ne delaj tega. Težava s številkami, luknjami na ohišju. Mislim, da sem napačno opravil meritve, ker nobena luknja na ohišju ni bila poravnana s komponentami na tiskanem vezju, zato sem jih moral povečati, gumbi pa so bili na tiskanem vezju previsoki in bi jih vedno pritisnili, ko bi ploščo postavili na svoje mesto aa in ker sem želel avdio priključke na strani, sem moral povečati tudi te luknje, da so se najprej prilegale vtičnice, nato pa spustiti ploščo, da so lahko prikazovalnik in gumbi prišli skozi … rezultat je grozen.
Grozne luknje sem nekako naredil manj grozne, tako da sem vrh položil s tankim kartonom, v katerem sem izrezal bolj razumne luknje za komponente in.. še vedno je grozno, a mislim, da je na pogled lažje.
Razsodba, predlagam, da to storite tako, da kupite komponente, ki se pritrdijo na ohišje in ne neposredno na tiskano vezje. Tako imate več svobode pri nameščanju komponent in manj mest za napake.
14. korak: Fin
Končal sem, vendar bi nekaj naredil drugače:
Uporabite kakovostnejše 3,5 mm avdio priključke. Tisti, ki sem jih uporabil, ponavadi skrajšajo sponke med vstavljanjem ali izvlečenjem vtičnice, kar povzroči bodisi prekinitev napajanja in s tem ponastavitev Arduina ali pa samo proizvaja ponarejene sprožilce. To sem rekel v prejšnjem koraku, vendar bom ponovil.. ne spajkajte plošče Arduino brez glav/vtičnice, samo otežuje kakršno koli odpravljanje težav ali nalaganje nove kode itd. Menim tudi, da bi bilo koristno, če bi signalizirali, da je stvar vklopljena, saj pogosto ne morem povedati brez pritiska na gumb, ker se zaslon izklopi. In zadnja stvar, funkcija premora. Predstavljam si, da je to koristno, ko na primer priključite senzor PIR, ker potrebuje čas, da se segreje, ali pa samo, ko ga premikate, ne želite, da se sproži, tako da lahko vse preprosto ustavite, lahko pa tudi preprosto vklopite izklopi kamero, tako da … karkoli.
Še ena lepa stvar je, da jo na trinožnik pritrdite z ježkom, saj se bo tam najverjetneje uporabljal.
V komentarjih lahko vprašate kar koli o tem projektu in z veseljem bi vedel, če ga zgradite in kako se je za vas izkazalo.
Priporočena:
Kako uporabljati zatiče GPIO Raspberry Pi in Avrdude za Bit-bang program DIMP 2 ali DA PIMP 2: 9 korakov
Kako uporabljati zatiče GPIO Raspberry Pi in Avrdude za program Bit-bang DIMP 2 ali DA PIMP 2: To so navodila po korakih za uporabo Raspberry Pi in brezplačnega odprtokodnega ukaza avrdude za bit-bang -programirajte DIMP 2 ali DA PIMP 2. Predvidevam, da poznate vašo Raspberry Pi in ukazno vrstico LINUX. Vam ni treba
Interaktivni Minecraft Ne vnesite meča/znaka (ESP32-CAM): 15 korakov (s slikami)
Interaktivni Minecraft ne vpišite meča/znaka (ESP32-CAM): Res je več razlogov, zakaj je ta projekt nastal: 1. Kot avtor zadružne knjižnice za več opravil TaskScheduler me je vedno zanimalo, kako združiti prednosti sodelovanja pri večopravilnosti skupaj s prednostmi predhodnega
Pimp My Wreck: 9 korakov
Pimp My Wreck: Uvod Pozdravljeni, vsi smo študentje računalništva iz IDC -ja in kot študentje se zadovoljimo z povprečnimi vozili (vsaj dokler se ne zaposlimo). Do takrat imamo strast nadgraditi svoje razbitine, da se vsaj počutimo kul s tem, kar imamo
ESP32-CAM ohišje in kamera 3D tiskalnika: 10 korakov (s slikami)
ESP32-CAM sistem ohišja in 3D tiskalnik Cam: Razmišljal sem o tem, da bi kamero na svojem 3-D tiskalniku zamenjal z nečim majhnim, preprostim in funkcionalnim …. in poceni. Nekaj iskanj v Googlu me je pripeljalo do modula ESP32-Cam. Najdete jih za manj kot 10 USD, na primer manj in zelo dobro delujejo
Kako začeti z ESP32 CAM - Pretakanje videa z uporabo ESP CAM prek Wi -Fi - Projekt varnostne kamere ESP32: 8 korakov
Kako začeti z ESP32 CAM | Pretakanje videa z uporabo ESP CAM prek Wi -Fi | Projekt varnostne kamere ESP32: Danes se bomo naučili, kako uporabljati to novo ploščo ESP32 CAM in kako jo lahko kodiramo ter uporabimo kot varnostno kamero in dobimo pretočni video prek WiFi