Taula de continguts:

Pimp My Cam: 14 passos (amb imatges)
Pimp My Cam: 14 passos (amb imatges)

Vídeo: Pimp My Cam: 14 passos (amb imatges)

Vídeo: Pimp My Cam: 14 passos (amb imatges)
Vídeo: АБСОЛЮТНОЕ ЗЛО НАХОДИТСЯ В СТЕНАХ ЭТОГО СТРАШНОГО ДОМА /С ДЕМОНОМ ОДИН НА ОДИН/ ABSOLUTE EVIL 2024, Desembre
Anonim
Pimp My Cam
Pimp My Cam

D'aquí ve aquest projecte.

Fa un temps vaig pensar en filmar alguns lapses de temps. "Com?" Em vaig preguntar? La primera resposta va ser "Bé.. només has de filmar alguna cosa i accelerar-ho i ja està". Però, és realment tan senzill? En primer lloc, vull utilitzar la meva càmera DSLR per a això i la meva Nikon D3100 té un límit de temps de 10 minuts per filmar vídeo. En segon lloc, fins i tot si tingués una càmera sense límit de temps per filmar vídeo, i si vull fer un lapse de temps realment llarg, com ara 12 hores? Faig un vídeo 1080p de 12 hores. Dubto que la bateria duraria tant i, no és molt pràctic, oi? Molt bé, creuant la "idea de vídeo de rodatge". Doncs hi ha imatges. Fer una foto a la càmera a un interval determinat i acabar amb centenars d’imatges que processo a través d’un programari per fer un vídeo..?

Em va semblar una bona idea, així que vaig decidir donar-li una oportunitat. Així que vaig acabar volent crear un dispositiu en què puc introduir un període de temps i, en funció d’aquest període, activaria la meva càmera constantment. I mentre hi estem, per què no afegir altres coses com el disparador de moviment, etc.

Pas 1: Però.. Com?

Però com?
Però com?

COM? és la nostra següent pregunta a la qual no hi ha resposta. A causa del temps, de l’activació, dels sensors i d’aquestes coses, no serà d’estranyar que el primer que se’m vingués a la ment fos, per descomptat, un Arduino. Molt bé, però, hem d’aprendre a activar l’obturador de la càmera. Hm.. servo calent enganxat a la càmera del cos? Absolutament no, volem que això sigui silenciós i que sigui eficient en termes de potència. Eficiència energètica: per què? Com que vull fer-lo portàtil i posar-hi una bateria, no estaré a prop d'un endoll cada vegada. Llavors, com ho desencadenem … en realitat és bastant senzill.

Nikon ja sabia que voldríeu un comandament a distància i altres accessoris i van dir "d'acord, els donarem tot això, però farem un port especial perquè puguem guanyar més diners amb aquests accessoris", vergonya Nikon. Aquest port es diu (en el meu cas) MC-DC2, i la forma més barata d’aconseguir-ho és comprar un obturador remot a eBay per 2-3 $ i simplement utilitzar el cable.

* Algunes altres càmeres, com Canon, tenen una presa senzilla per a auriculars de 3,5 mm dissenyada per al mateix ús, de manera que podeu utilitzar alguns cables d’altaveus / auriculars antics.

Pas 2: Aprendre a activar la càmera

Image
Image
Maneres de desencadenar
Maneres de desencadenar

De totes maneres, aquí teniu l’acord, el port tindrà 3 connexions que seran del nostre interès (terra, focus i obturador) i les tindreu a l’extrem del cable del nou obturador remot que acabeu de destruir. Aquestes tres connexions són importants per a nosaltres, ja que si reduïm a terra i enfocem la càmera enfocarà igual que prement el botó d’enfocament i, mentre es mantingui aquesta connexió, podeu reduir el terra i l’obturador i la càmera farà una foto. igual que si premés el botó de l'obturador de la càmera.

Podeu provar-ho mitjançant un curtcircuit literal dels cables actius a l'extrem del cable per identificar quin filferro és quin. Un cop ho hàgiu fet, per tal de facilitar-ne la identificació, els pintarem així:

Terra = NEGRE; Enfocament = BLANC; Obturador = VERMELL.

Molt bé, ara hem d’ensenyar a l’Arduino a fer-ho per nosaltres.

Pas 3: maneres de disparar

Image
Image

El més senzill que podem dir a un Arduino per enviar-lo al món exterior és que és un senyal de sortida digital. Aquest senyal pot ser ALT (lògic '1') o BAIX (lògic '0'), d'aquí el nom de "digital", o bé quan es converteix en el seu significat bàsic: 5V per a un HIGH lògic i 0V per a un LOW lògic.

Què hem de fer amb aquests senyals digitals? No podem simplement connectar-los a la càmera i esperar que la càmera sàpiga el que volem. Com hem vist, hem de reduir les connexions de la càmera perquè reaccioni, de manera que hem d’utilitzar els senyals digitals de l’Arduino per accionar alguns components que puguin reduir els seus terminals en funció d’aquest senyal elèctric que l’enviem.. * Tal com ho he descrit, potser estareu pensant "Ah, relés!" però no no. El relé faria la feina, però estem davant de corrents tan petites que podem utilitzar fàcilment la màgia negra dels semiconductors.

El primer component que provaré és un optoacoplador. Els he vist implementats més per això i probablement sigui la millor solució. L'optocoplador és un component elèctric amb el qual es controla el circuit de sortida mentre el circuit d'entrada està completament aïllat. Això s'aconsegueix mitjançant la transmissió d'informació per la llum, el circuit d'entrada il·lumina un LED i el fototransistor de la sortida canvia en conseqüència.

Així doncs, utilitzarem l’optocoplador d’aquesta manera: li diem al nostre Arduino que enviï un HIGH digital a un si es tracta de pins digitals, aquest senyal és pràcticament de 5V que conduirà el LED a l’interior de l’optocoplador i el fototransistor que hi ha al seu interior serà “curt” es tracta de terminals de sortida quan detecta aquesta llum, i viceversa, "separarà" els seus terminals, ja que no hi ha llum del LED quan enviem un LOW digital a través de l'Arduino.

Pràcticament, això vol dir que un dels pins digitals de l’Arduino està connectat al pin ANODE de l’optocoplador, el GND d’Arduino està connectat al CATHODE, el GND de la càmera està connectat a l’EMISSOR i l’enfocament (o OBTURADOR) al COL·LECTOR. Consulteu el full de dades de l’optocoplador que utilitzeu per trobar aquests pins. Estic fent servir el 4N35 perquè pugueu seguir el meu esquema a cegues si realment no us interessa què passa dins de l’optocoplador. No cal dir que en necessitarem dos, ja que hem de controlar tant el FOCUS de la càmera com l’OBTURADOR.

Com que hem vist com funciona això, amb un fototransistor a la sortida, per què no ho provem únicament amb un simple transistor NPN. Aquesta vegada, portarem el senyal digital directament (a través d’una resistència) a la base del transistor i connectarem la càmera i el GND d’Arduino a l’emissor i el focus / obturador de la càmera al col·lector del transistor.

De nou, en necessitarem dos, ja que controlem dos senyals. Estic fent servir el BC547B i bàsicament podeu utilitzar qualsevol NPN, ja que el corrent que controlem és d’un sol miliamp.

Tots dos components funcionaran, però triar l’optocoplador probablement és la millor idea perquè és més segur. Trieu els transistors només si sabeu què feu.

Pas 4: escriure el codi per activar

Image
Image
Escriptura del codi per al desencadenament
Escriptura del codi per al desencadenament

Com hem dit abans, utilitzarem els pins digitals de l’Arduino per a la senyalització. L'Arduino pot utilitzar-los tant per llegir-ne dades com per escriure-hi, de manera que el primer que hem de fer és especificar a la funció setup () que utilitzarem dos pins digitals d'Arduino per a la sortida:

pinMode (FOCUS_PIN, OUTPUT);

pinMode (SHUTTER_PIN, OUTPUT);

on FOCUS_PIN i SHUTTER_PIN es poden definir amb "#define NAME value" o com a int abans de la funció setup () perquè podeu canviar el pin, de manera que és més fàcil canviar el valor en un sol lloc en lloc de tot el codi després.

El següent que farem és escriure una funció trigger () que farà exactament això quan s’executi. Només inclouré una imatge amb el codi. Tot el que heu de saber és que primer mantenim el FOCUS_PIN a HIGH durant un període de temps determinat perquè hem d’esperar a que la càmera se centri en el tema que estem apuntant i després només un moment (mentre que FOCUS_PIN encara sigui HIGH)) poseu el SHUTTER_PIN a HIGH només per fer la foto.

També he inclòs la possibilitat de saltar l’enfocament perquè no hi haurà necessitat si estem disparant un lapse de temps d’alguna cosa que no canvia la distància de la càmera a través del temps.

Pas 5: Interval de classe {};

Image
Image
Manipulant l'interval a través d'Arduino
Manipulant l'interval a través d'Arduino

Ara que hem desencadenat la càmera, hem de convertir-la en un intervalòmetre afegint la funcionalitat de manipular el període de temps entre dos plans. Per obtenir la imatge del que estem fent, aquí teniu un codi primitiu per demostrar la funcionalitat que volem:

bucle buit () {

retard (interval); trigger (); }

Vull poder canviar aquest interval de, diguem-ne, de 5 segons fins a 20-30 minuts. I aquí teniu el problema, si vull canviar-lo de 5s a 16s o qualsevol cosa entremig, faré servir increments d'1s, en què per a cada sol·licitud de la meva per augmentar l'interval, l'interval s'incrementaria per 1s. Està molt bé, però i si vull passar de 5 a 5 minuts? Em trigaria 295 sol·licituds en increments d'1 s, de manera que, òbviament, necessito augmentar el valor de l'increment a alguna cosa més gran i he de definir en quin valor d'interval exacte (llindar) canviar l'increment. He implementat això:

5s-60s: increment d'1s; 60s-300s: increment de 10 s; 300s-3600s: increment dels 60s;

però he escrit que aquesta classe es pot ajustar perquè pugueu definir els vostres propis llindars i increments (tot es comenta al fitxer.h perquè pugueu saber on canviar quins valors).

L’exemple que he posat de manipular l’interval es fa òbviament en un PC, ara hem de moure’l a l’Arduino. Tota aquesta classe, Interval, es posa dins d’un fitxer de capçalera que s’utilitza per emmagatzemar declaracions i definicions (no realment, però es pot fer en aquest exemple sense fer cap mal) de la nostra classe / funcions. Per introduir aquest fitxer de capçalera al nostre codi arduino, fem servir el fitxer "#include" Interval.h "(els fitxers han d'estar al mateix directori), que ens assegura que puguem utilitzar les funcions definides al fitxer de capçalera del nostre codi principal.

Pas 6: Manipulació de l'interval mitjançant Arduino

Image
Image
Manipulant l'interval a través d'Arduino
Manipulant l'interval a través d'Arduino
Manipulant l'interval a través d'Arduino
Manipulant l'interval a través d'Arduino

Ara volem poder canviar el valor de l'interval, ja sigui augmentar-lo o disminuir-lo. Així que això és dues coses, així que utilitzarem dos senyals digitals que seran controlats per dos botons. Llegirem repetidament els valors dels pins digitals que hem assignat als botons i analitzarem aquests valors a la funció checkButtons (int, int); que augmentarà l'interval si es prem el botó "amunt" i disminuirà l'interval si el botó "avall". A més, si es premen els dos botons, canviarà el valor de l'enfocament variable que controla si s'ha d'enfocar o no quan s'activa.

Part del codi ((millis () - prevBtnPress)> = debounceTime) s'utilitza per a la descàrrega. La forma en què l’he escrit, vol dir que registro el primer botó premut amb la variable booleana btnPressed i recordo el moment en què va passar. Espero un cert temps (debounceTime) i si el botó encara es prem, reacciono. També fa una "pausa" entre totes les altres pulsacions del botó, de manera que evita diverses pulsacions on no n'hi ha.

I, finalment, amb:

if ((millis () - prevTrigger) / 1000> = interval.getVal ()) {

prevTrigger = millis (); trigger (); }

primer comprovem si la quantitat de temps entre l'últim activador (prevTrigger) i el temps actual (millis ()) (tot està dividit per un 1000 perquè està en mil·lisegons i l'interval és en segons) és igual o superior a l'interval volem i, si és així, recordem l’hora actual com l’última vegada que vam activar la càmera i després la vam activar.

Amb aquest complet, bàsicament vam fer un intervalòmetre, però estem lluny d’acabar. Encara no veiem el valor de l'intervalòmetre. Només es mostra al monitor de sèrie i no estarem a prop d’un ordinador sempre, de manera que ara implementarem alguna cosa que ens mostri l’interval a mesura que el canviem.

Pas 7: mostrar l'interval

Image
Image
Visualització de l'interval
Visualització de l'interval
Visualització de l'interval
Visualització de l'interval
Visualització de l'interval
Visualització de l'interval

Aquí és on presentem la pantalla. He utilitzat el mòdul de 4 dígits que és impulsat per TM1637 perquè només he d’utilitzar-lo per mostrar el temps i res més. La manera més senzilla d’utilitzar aquests mòduls fets per a un Arduino és utilitzar llibreries ja fetes per a ells. Al lloc Arduino hi ha una pàgina que descriu el xip TM1673 i un enllaç a una biblioteca suggerida. He descarregat aquesta biblioteca i hi ha dues maneres d'introduir aquestes biblioteques a l'IDE Arduino:

  1. des del programari Arduino, aneu a Sketch> Inclou biblioteca> Afegeix biblioteca. ZIP i localitzeu el fitxer.zip que acabeu de descarregar
  2. podeu fer el que fa l’Arduino manualment i descomprimir la biblioteca de la carpeta on Arduino emmagatzema les biblioteques al Windows: C: / Usuaris / Nom d’usuari / Documents / Arduino / biblioteques \.

Un cop inclosa la biblioteca, heu de llegir el fitxer "ReadMe" on trobareu el resum del que fan les diverses funcions. De vegades, això no és suficient, així que voldreu aprofundir una mica i explorar els fitxers de capçalera en què podeu veure com s’implementen les funcions i què requereixen com a arguments d’entrada. I, per descomptat, la millor manera d’obtenir una idea de què és capaç d’una biblioteca en general ofereix un exemple que podeu executar des del programari Arduino mitjançant Fitxer> Exemples> Nom de biblioteca> Nom d’exemple. Aquesta biblioteca ofereix un exemple que us recomano que executeu a la pantalla només per veure si la pantalla funciona correctament i que us recomano que modifiqueu el codi que veieu a l'exemple i que vegeu vosaltres mateixos què fa cada funció i com reacciona la pantalla. això. Ho he fet i això és el que vaig descobrir:

utilitza 4 enters sense signar de 8 bits per a cada dígit (0bB7, B6, B5, B4, B3, B2, B1, B0). I cadascun d'aquests bits B6-B0 s'utilitzen per a cada segment d'un determinat dígit i, si el bit és 1, el segment controlat per ell s'encén. Aquests enters s’emmagatzemen en una matriu anomenada data . La configuració d’aquests bits a la pantalla s’aconsegueix mitjançant display.setSegments (data); o, naturalment, podeu accedir a qualsevol dels dígits en particular i configurar-los manualment (dades [0] = 0b01111001) o podeu utilitzar la funció encodeDigit (int); i converteix el dígit que l’envieu en bits (dades [0] = display.encodeDigit (3));. El bit B7 només és utilitzat pel segon dígit, o dades [1], per activar els dos punts.

Com que vaig escriure les funcions a la bruixa de la classe INTERVAL, que puc obtenir certs dígits de l'interval en forma de M1M0: S1S0, on M significa minuts i S durant segons, és natural que utilitzeu encodeDigitFunction (int); per mostrar l'interval així:

displayInterval () {

dades [0] = display.encodeDigit (interval.getM1 ()); dades [1] = 0x80 | display.encodeDigit (interval.getM0 ()); dades [2] = display.encodeDigit (interval.getS1 ()); dades [3] = display.encodeDigit (interval.getS0 ()); display.setSegments (dades); }

Ara, cada cop que necessiti mostrar l'interval a la pantalla, puc trucar a la funció displayInterval ().

* Tingueu en compte el "0x80 | …" de les dades [1]. S'utilitza per assegurar que el bit B7 de les dades [1] sempre és 1, de manera que els dos punts s'il·luminen.

L'últim aspecte de la pantalla, el consum d'energia. Pot ser que no tingui una gran importància, ja que no ho mantindrem durant molt de temps, però si esteu interessats en fer-ho encara més compatible amb la bateria, penseu a baixar la brillantor de la pantalla, ja que atrau 3 vegades més intensitat de la brillantor màxima que a la més baixa.

Pas 8: ajuntar-ho tot

Posant-ho tot junt
Posant-ho tot junt

Sabem com activar la càmera, com manipular l'interval i com mostrar aquest mateix interval en una pantalla. Ara només hem de fusionar totes aquestes coses. Començarem, per descomptat, des de la funció loop (). Comprovarem constantment si hi ha prems de botons i reaccionarem en conseqüència amb els checkButtons (int, int) i canviarem l'interval en conseqüència i mostrarem l'interval canviat. També al bucle () comprovarem constantment si ha passat prou temps des del darrer activador o premem el botó i trucarem a la funció trigger () si cal. Per tal de reduir el consum d’energia, apagarem la pantalla al cap d’un temps.

He afegit un led bicolor (vermell i verd, càtode comú) que s’encendrà de color verd mentre es dispara () i s’encendrà de vermell juntament amb la pantalla si la focalització està activada i es mantindrà apagada si la focalització està activada apagat.

A més, migrarem a un Arduino encara més petit, Pro Mini.

Pas 9: afegir una última cosa

Afegint una última cosa
Afegint una última cosa
Afegint una última cosa
Afegint una última cosa
Afegint una última cosa
Afegint una última cosa

Fins ara.. només hem creat un Intervalòmetre. Útil, però ho podem fer millor.

Això és el que tenia en ment: l’intervalòmetre ho fa per defecte EXCEPTE quan connectem algun tipus d’interruptor / sensor extern que després atura l’intervalòmetre i respon a l’entrada del commutador / sensor. Anomenem-lo sensor, no necessàriament serà un sensor connectat, però m'hi referiré així.

En primer lloc, com detectem que hem connectat el sensor?

Els sensors que farem / fabricarem necessitaran tres cables que els connectin a l’arduino (Vcc, GND, Signal). Això vol dir que podem utilitzar una presa d’àudio de 3,5 mm com a presa d’entrada per al sensor. I com soluciona això el nostre problema? Bé, hi ha tipus de jack de 3,5 mm "amb un commutador" que tenen pins connectats als pins del connector si no hi ha cap connector masculí i es desprenen quan hi ha un connector present. Això significa que tenim la informació basada en la presència del sensor. Utilitzaré la resistència desplegable tal com es mostra (el pin digital es llegeix ALTA sense el sensor i BAIX amb el sensor connectat) a la imatge o també es podria connectar al pin digital al pin del connector que normalment és connectat a terra i definiu aquest pin digital com INPUT_PULLUP, funcionarà de qualsevol manera. Per tant, ara hem de modificar el nostre codi perquè faci tot el que hem escrit fins ara només si el sensor no està present o quan el pin digital comprova que és ALT. També el vaig ajustar perquè es mostri "SENS" a la pantalla en lloc de l'interval que no serveix per a res en aquest mode, però l'enfocament continua sent rellevant per a nosaltres. Mantindrem la funcionalitat d'alternar l'enfocament amb la pressió dels dos botons i mostrant l'estat d'enfocament a través del led vermell.

Què fa realment el sensor?

Tot el que cal fer és posar 5V al pin de senyal quan vulguem activar la càmera. Això vol dir que necessitarem un altre pin digital de l’Arduino que comprovi l’estat d’aquest pin i, quan es registri HIGH, tot el que ha de fer és trucar a la funció trigger () i la càmera farà una fotografia. L'exemple més senzill i el que farem servir per provar si funciona funciona és un simple botó amb una resistència desplegable. Connecteu el botó entre el Vcc del sensor i el pin de senyal i afegiu una resistència entre el pin de senyal i GND, d'aquesta manera el pin de senyal estarà en GND quan no es prem el botó, ja que no hi ha corrent que circula per la resistència i quan en prémer el botó posem el pin de senyal directament a HIGH i l'Arduino ho llegeix i activa la càmera.

Amb això vam concloure escrivint el codi.

* M'agradaria constatar alguns problemes que he tingut amb les preses d'àudio que he utilitzat. Mentre s’insereix la presa macho al connector, el GND i qualsevol dels altres dos pins de vegades es curten. Això passa a l'instant i només mentre es posa el connector, però encara és prou llarg perquè Arduino enregistri un curt perquè l'Arduino només es reiniciï. Això no passa sovint, però pot ser un perill i hi ha el potencial de destruir l'Arduino, així que eviteu els connectors que he utilitzat.

Pas 10: contenir el desordre

Que conté l'embolic
Que conté l'embolic
Que conté l'embolic
Que conté l'embolic
Que conté l'embolic
Que conté l'embolic
Que conté l'embolic
Que conté l'embolic

A les imatges es pot veure que el tauler de difusió es torna desordenat i ja hem acabat, de manera que hem de transferir-ho tot a un tauler de perfecció / PCB. Vaig anar al PCB perquè crec que en faré més, de manera que puc reproduir-los fàcilment.

He utilitzat Eagle per dissenyar el PCB i he trobat dissenys de totes les parts que he utilitzat. Hi ha una cosa petita en el meu disseny que m’agradaria no haver fet i que és un coixinet de filferro per al Vcc de la pantalla. Ho he vist massa tard i no volia arruïnar el que vaig dissenyar anteriorment i vaig seguir la manera mandrosa d’afegir coixinets de filferro i després d’haver d’afegir filferro a aquestes connexions en lloc de traces de coure, així que tingueu en compte que si utilitzeu el disseny meu.

La placa Arduino i la pantalla es connecten al PCB mitjançant capçaleres de pin femella en lloc de soldar-les directament al PCB, per motius aparents. D'aquesta manera, hi ha molt espai per a altres components a la pantalla per a altres components com ara resistències, transistors i fins i tot la presa d'àudio.

He posat els micro botons que, segons el disseny, haurien de soldar-se directament, però també podríeu utilitzar els forats per a capçaleres de pins femelles i connectar els botons amb filferro si voleu que es muntin a la carcassa i no a la PCB.

També posarem un altre connector d’àudio femení per endollar el cable que es connecta a la càmera. D'aquesta manera, la placa esdevé més versàtil, ja que d'aquesta manera podrem connectar-nos a altres càmeres amb altres connectors.

Pas 11: Sens0rs

Image
Image
Sens0rs
Sens0rs

Considerem maneres d'implementar el sensor.

Per tant, el sensor tindrà una tensió d’alimentació de 5 V i haurà de poder proporcionar un HIGH digital al pin de senyal quan vulguem activar la càmera. El primer que em va venir al cap va ser un sensor de moviment, concretament el PIR. Hi ha mòduls venuts per a Arduino que tenen aquest sensor i fan exactament el que volem. S’alimenten de 5V i tenen un pin de sortida en què posen 5V quan s’activen, només hem de connectar els pins a una presa d’àudio de 3,5 mm i podem connectar-la directament a la placa. Una cosa a tenir en compte, però, és que aquest sensor necessita temps per escalfar-se i començar a funcionar correctament, així que no espereu que funcioni correctament tan bon punt el connecteu, doneu-li una mica de temps i, a continuació, configureu-lo i tot el que sigui viu entra a la seva abast activarà la càmera.

Com que estem pensant en la direcció de les ja fetes plaques de sensors Arduino, se'ns ve al cap una altra, sonora. Aquestes plaques es fabriquen generalment de manera que tenen un pin que emet un valor analògic del so que capta i un altre, digital, que emet un HIGH lògic si el so que capta creua un nivell determinat. Podem establir aquest nivell de manera que el sensor ignori la nostra veu, però registri una palma. D’aquesta manera, cada cop que aplaudeu, activeu la càmera.

Pas 12: PoweeEeEer

PoweeEeEer
PoweeEeEer
PoweeEeEer
PoweeEeEer

Crec que la manera més senzilla d’alimentar aquesta cosa és amb un banc d’energia i no externament. Mantindrem la funcionalitat de carregar el nostre telèfon o qualsevol cosa i controlarem el flux actual a la placa mitjançant un commutador. Localitzarem els pins del connector USB de sortida a la placa de circuits del banc d’alimentació que són els cables GND i Vcc (5V) i Solder directament sobre ells i des d’aquí a la nostra placa.

Pas 13: recinte.. Una mica

Recinte.. Una mica
Recinte.. Una mica
Recinte.. Una mica
Recinte.. Una mica
Recinte.. Una mica
Recinte.. Una mica

Realment vaig lluitar amb això. Quan vaig llançar la caixa, volia posar el PCB existent, em vaig adonar que no hi havia cap manera d’adaptar-ho tot com volia i vaig decidir dissenyar un nou PCB, aquesta vegada amb optoacopladors. Volia col·locar el PCB just a sota del costat on perforaria alguns components que cal veure / tocar. Perquè això funcionés, hauria de soldar la pantalla i Arduino directament a la placa, sense endolls ni capçaleres, i aquí és on resideix el primer problema. Va ser absolutament horrible resoldre problemes, ja que no estava preparat per soldar-lo de seguida fins que vaig comprovar que tot funcionava i no podia provar res, ja que no podia soldar-lo, etc. no ho facis. Problema número dos, fent forats a la caixa. Suposo que he pres mesures equivocades perquè cap dels forats de la caixa estava alineat amb els components de la PCB i els vaig haver d’ampliar i els botons eren massa alts a la PCB i sempre es pressionarien quan posés la placa al seu lloc i ja que volia les preses d'àudio al costat, també vaig haver d'ampliar aquests forats per adaptar-les a les preses i després baixar el tauler perquè la pantalla i els botons passessin … el resultat és terrible.

Vaig fer que els terribles forats fossin menys terribles recobrint la part superior amb una cartolina fina en què vaig retallar forats més raonables per als components i … encara és terrible, però crec que és més fàcil.

Veredicte, us suggereixo fer-ho comprant components que es muntin al recinte i no directament al PCB. D’aquesta manera tindreu més llibertat en la col·locació dels components i menys llocs on cometre errors.

Pas 14: Fin

Image
Image
Fin
Fin

He acabat, però heus aquí algunes coses que hauria fet de manera diferent:

Utilitzeu preses d'àudio de 3,5 mm de millor qualitat. Els que he utilitzat tendeixen a curtcircuitar els terminals mentre insereix o treu el connector, cosa que resulta en un curtcircuit del subministrament, restablint l’Arduino o simplement produeix disparadors falsos. Ho he dit al pas anterior, però ho tornaré a dir … no soldeu la placa Arduino sense capçaleres / sòcol, només fa que sigui molt més difícil solucionar problemes o carregar un codi nou, etc. També crec que haver tingut un senyal de led que indica que està activat hauria estat útil perquè sovint no ho sé sense prémer el botó ja que la pantalla s’apaga. I l’últim, una funció de pausa. M’imagino que sigui útil quan, per exemple, quan connecteu el sensor PIR, perquè necessita temps per escalfar-se o simplement quan el moveu, no voleu que s’activi, de manera que podeu posar-ho en pausa tot, però també podeu girar-lo fora de la càmera així.. el que sigui.

Una altra cosa interessant és fer-lo amb velcro al trípode, ja que és probable que s’utilitzi allà.

No dubteu a preguntar res sobre aquest projecte als comentaris i m'agradaria saber si el construïu i com us va resultar.

Recomanat: