Sommario:

Microscopio per saldatura HDMI / WiFi Raspberry Pi Zero: 12 passaggi (con immagini)
Microscopio per saldatura HDMI / WiFi Raspberry Pi Zero: 12 passaggi (con immagini)

Video: Microscopio per saldatura HDMI / WiFi Raspberry Pi Zero: 12 passaggi (con immagini)

Video: Microscopio per saldatura HDMI / WiFi Raspberry Pi Zero: 12 passaggi (con immagini)
Video: Ho trovato un impianto Hi-Fi alla Munnizza - Tecniche di riparazione elettronica! 2024, Dicembre
Anonim
Image
Image
Microscopio per saldatura HDMI/WiFi Raspberry Pi Zero
Microscopio per saldatura HDMI/WiFi Raspberry Pi Zero
Microscopio per saldatura HDMI/WiFi Raspberry Pi Zero
Microscopio per saldatura HDMI/WiFi Raspberry Pi Zero

La saldatura di componenti SMD a volte può essere un po' una sfida, soprattutto quando si tratta di cose come i chip TQFP con passo pin da 0,4 mm con 100 o più pin. In questi casi, avere accesso a un qualche tipo di ingrandimento potrebbe essere davvero utile.

Nel tentativo di risolvere questo problema, ho deciso di costruire il mio microscopio per saldatura basato su un Raspberry Pi Zero W e un modulo fotocamera. Il microscopio è in grado di trasmettere video Full HD direttamente a un monitor HDMI praticamente senza latenza, il che è perfetto per la saldatura. Ma anche tramite WiFi con una latenza inferiore a mezzo secondo, il che è abbastanza buono per l'ispezione della scheda.

Facoltativamente, con un piccolo costo aggiuntivo, il microscopio può anche essere reso portatile, il che, combinato con le sue capacità di streaming video WiFi, apre una dimensione extra di potenziali casi d'uso.

Se ti capita di avere una stampante 3D, assicurati di dare un'occhiata anche al fantastico progetto di RichW36 su Thingiverse per una versione del microscopio che utilizza parti stampate in 3D!

Passaggio 1: strumenti e parti

Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti

Per costruire il microscopio avrai bisogno delle seguenti parti:

1 x Raspberry Pi Zero W [10€]

1 x Modulo fotocamera Raspberry Pi [8€] - Dovrai hackerarlo per cambiarne la lunghezza focale e rendere possibile mettere a fuoco oggetti molto vicini ad esso. Non so se la stessa procedura è possibile anche con il nuovo modulo fotocamera da 8 MP, quindi consiglierei di prendere invece quello originale da 5 MP.

1 x cavo per fotocamera Raspberry Pi Zero [2€] - Come forse già saprai, il Raspberry Pi Zero ha un connettore per fotocamera più piccolo rispetto alle altre schede Raspberry Pi, quindi avrai anche bisogno di un cavo adattatore speciale per collegare il modulo della fotocamera ad esso.

1 x micrometro a pinza in plastica - Più economico puoi trovare, meglio è, ho appena usato un vecchio analogico di plastica che avevo in giro.

1 x pezzo di righello - La larghezza del righello deve essere inferiore alla lunghezza della ganascia mobile del calibro. Per quanto riguarda la lunghezza, dai 10 ai 15 cm dovrebbe andare bene.

1x Scatola per progetti in alluminio [4€] - Questa verrà utilizzata come base dell'assieme e deve essere realizzata in metallo, quindi sarà anche resistente al calore. Il motivo per cui è necessaria una scatola è che puoi mettere un peso al suo interno, in modo da essere più stabile durante la saldatura.

1 x cavo HDMI e un adattatore HDMI femmina a Mini HDMI maschio - Puoi anche acquistare cavi da HDMI a Mini HDMI se lo desideri, ma avevo già un normale cavo HDMI in giro.

1 x Alimentatore Micro USB - Secondo le mie misurazioni, la corrente assorbita dal Pi non supera mai i 400 mA anche durante lo streaming di video 1080p tramite WiFi e HDMI contemporaneamente. Quindi, anche un alimentatore da 500 mA dovrebbe essere sufficiente. Giusto per sicurezza, ti consiglio di prenderne uno da 1A, specialmente se prevedi di costruire la versione portatile che avrà anche perdite sul convertitore boost.

1 x MicroSD Card [5€] - Anche una da 4GB sarà sufficiente, assicurati solo che sia di classe 10 di alta qualità.

4 viti e dadi M2 [meno di 1€] - Possono essere utilizzate anche viti di diametro maggiore. Tuttavia, più grande è la vite, più ampio deve essere il foro e maggiore è il rischio di rottura della plastica.

1 x stick di colla a caldo [1€]

Fascette per cavi [meno di 1€] - Verranno utilizzate per fissare il Pi sulla parte mobile della pinza.

E i seguenti strumenti:

Una pistola per colla a caldo

Un Dremel - Con un disco che può tagliare la plastica, più punte per trapano per plastica e alluminio delle dimensioni delle viti.

Una pinza a becchi lunghi e piatti

Una pinza tagliabulloni - Avrai bisogno di un modo per tagliare le viti alla lunghezza appropriata. Ho usato un paio di pinze tagliabulloni, anche se sono sicuro che ci sono anche altri strumenti che possono fare il lavoro.

Cacciavite Philips

Facoltativamente, se desideri renderlo portatile, avrai bisogno delle seguenti parti aggiuntive:

1 x LiPo Battery [8€] - La cui capacità dipenderà dalla durata della batteria desiderata, dall'efficienza del convertitore boost e dal consumo energetico medio.

1 x Caricabatteria LiPo / Convertitore Boost 5V [20€] - Per questo progetto ho scelto il PowerBoost 1000C di Adafruit. Su eBay sono disponibili anche alternative molto più economiche, anche se ho deciso di optare per quella in particolare a causa di una bella caratteristica che aveva, di cui parlerò più avanti.

1 x connettore maschio a doppia fila a 40 pin [meno di 1€]

1 x Connettore femmina a doppia fila a 40 pin [meno di 1€]

1 x Pin Header maschio a 8 pin [meno di 1€]

1 x Pin Header femmina a 8 pin [meno di 1€]

1 x pezzo di scheda di prototipazione [1€] - Poiché dovrai saldare le intestazioni dei pin su entrambi i lati della scheda, ti consiglio di prenderne una a doppia faccia. In alternativa, puoi ottenere una scheda di prototipazione progettata specificamente per il Pi Zero, come questa da MakerSpot.

1 x 1K Resistenze [meno di 1€]

1 x Resistenza 10K [meno di 1€]

1 x BC547 [meno di 1€] - Va bene qualsiasi transistor NPN generico, questo è proprio quello che ho usato.

1 x interruttore momentaneo DPST [1€] - Idealmente, si desidera un interruttore DPST, in modo da poter accendere e spegnere il Pi utilizzando lo stesso pulsante. Sfortunatamente, non ne avevo uno in giro, quindi ho dovuto usare invece due interruttori momentanei SPST separati.

Fascette per cavi [meno di 1€] - Ne serve una in più per la versione portatile, per attaccare la batteria sul retro della scheda di prototipazione.

Filo di saldatura

E i seguenti strumenti aggiuntivi:

Un saldatore

Un paio di tronchesi

Il costo totale per la versione non portatile, escludendo l'alimentatore, il cavo HDMI e l'adattatore per mini HDMI, è stato di circa 30€. E anche il costo aggiuntivo per renderlo portatile era di circa 30€. La maggior parte delle parti è stata acquistata su eBay.

Passaggio 2: preparazione della MicroSD

Masterizzare l'immagine sulla scheda microSD

Come base per il sistema ho deciso di utilizzare l'immagine ufficiale di Raspbian Lite e installare solo esattamente ciò di cui avevo bisogno. Per iniziare, scarica prima l'ultima immagine di Raspbian Lite dal sito Web raspberrypi.org e masterizzala sulla tua scheda microSD.

Se stai eseguendo Linux, dopo averlo decompresso puoi masterizzarlo eseguendo il seguente comando come root, dd if=/path/to/-raspbian-jessie-lite.img of=/dev/sdX bs=4M

Dove X è la lettera del dispositivo che corrisponde alla tua microSD ad es. C. Prima di eseguire il comando assicurati che non ci siano partizioni montate che appartengono alla scheda microSD. Nel caso in cui ci siano utilizzare il seguente comando per smontare ciascuno di essi, umount /dev/sdXY

Ma fai molta attenzione qui, usare la lettera sbagliata al posto di X potrebbe causare danni irreversibili al tuo sistema e rovinarti la giornata. Prima di eseguire il comando dd ricontrolla che la lettera che hai digitato al posto di X sia davvero quella che corrisponde al dispositivo microSD.

Se stai usando Windows, dopo aver scaricato l'immagine Raspbian Lite e averla decompressa, puoi usare Win32DiskImager per masterizzarla sulla scheda microSD. Ulteriori informazioni sono disponibili nella documentazione ufficiale di Raspberry Pi.

Su MacOS è disponibile un'applicazione grafica chiamata Etcher, che può essere utilizzata per masterizzare l'immagine sulla scheda microSD. In alternativa, puoi anche usare dd in modo simile a Linux, ma il processo è leggermente diverso. Ancora una volta, puoi controllare la documentazione ufficiale per ulteriori informazioni.

Configurazione del WiFi

Dopo aver masterizzato l'immagine sulla scheda microSD dovrai configurare il WiFi prima del primo avvio e abilitare anche SSH.

La prima cosa che devi fare è creare un file vuoto chiamato SSH all'interno della partizione di avvio della scheda microSD. Se sei su Windows, la partizione di avvio sarà molto probabilmente l'unica partizione che potresti vedere, poiché Windows non può leggere o scrivere in modo nativo le partizioni ext4. Se le partizioni della scheda microSD non sono attualmente montate, è sufficiente scollegare e ricollegare la scheda al computer.

Quindi, sempre all'interno della partizione di avvio, crea un file chiamato wpa_supplicant.conf con le tue impostazioni wireless. Il contenuto del file dovrebbe essere simile a questo, paese=

network={ ssid= psk= proto=RSN key_mgmt=WPA-PSK pairwise=CCMP auth_alg=OPEN }

proto può essere RSN per WPA2 o WPA per WPA1.key_mgmt può essere WPA-PSK o WPA-EAP per reti aziendali.pairwise può essere CCMP per WPA2 o TKIP per WPA1.auth_alg sarà probabilmente OPEN, mentre LEAP e SHARED sono le altre opzioni. Per quanto riguarda country, ssid e psk, dovrebbero essere più o meno autoesplicativi.

Ecco fatto, ora smonta la scheda microSD dal tuo computer e mettila sul tuo Pi. Quindi, collega il tuo Pi a un monitor HDMI, collega il modulo della fotocamera utilizzando lo speciale cavo a nastro e infine accendi. Dopo alcuni secondi il tuo Pi dovrebbe essersi avviato e connesso automaticamente alla tua rete WiFi. Sullo schermo, dovresti anche essere in grado di vedere l'indirizzo IP che ha ottenuto dal server DHCP del tuo router.

Aggiornamento 4/6/2018:

Nel caso in cui per qualche motivo il tuo Pi non sia in grado di connettersi al WiFi durante l'avvio, prova invece il seguente wpa_supplicant.conf, paese=

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 rete={ }

Di recente stavo provando a configurare un Pi Zero W senza testa con l'ultima versione di Raspbian e non sono riuscito a farlo funzionare finché non ho usato il wpa_supplicant.conf fornito sopra. Quindi, se anche tu sembri avere lo stesso problema, questo potrebbe essere d'aiuto.

Passaggio 3: stabilire una connessione SSH

Nel caso in cui non hai ancora collegato un monitor al tuo Pi e non riesci a vedere quale indirizzo IP ha ottenuto, ci sono diversi modi per scoprirlo. Un modo è controllare i registri del server DHCP del router. Ogni router è diverso, quindi non descriverò questo processo.

Su Linux un altro modo semplice è eseguire il seguente comando nmap come root, nmap -sn x.x.x.x/y

Dove x.x.x.x è l'indirizzo IP della tua rete privata, ad es. 192.168.1.0 e la y è il numero di unità (in binario) della maschera di rete es. per la maschera di rete 255.255.255.0 il numero di unità è 24. Quindi, per quella particolare rete che eseguiresti, nmap -sn 192.168.1.0/24

Un esempio di output per questo comando è il seguente, Avvio di Nmap 6.47 (https://nmap.org) al 2017-04-16 12:34 EEST

Il report di scansione Nmap per 192.168.1.1 Host è attivo (latenza 0.00044s). Indirizzo MAC: 12:95:B9:47:25:4B (Intracom S. A.) Rapporto di scansione Nmap per 192.168.1.2 L'host è attivo (latenza 0,0076 s). Indirizzo MAC: 1D:B8:77:A2:58:1F (HTC) Rapporto di scansione Nmap per 192.168.1.4 L'host è attivo (latenza 0.00067). Indirizzo MAC: 88:27:F9:43:11:EF (Raspberry Pi Foundation) Rapporto di scansione Nmap per 192.168.1.180 L'host è attivo. Nmap completato: 256 indirizzi IP (4 host attivi) scansionati in 2,13 secondi

Come puoi vedere nel mio caso il Pi ha l'indirizzo IP 192.168.1.4.

Se sei su Windows, è disponibile anche una versione di nmap che puoi provare, per la quale puoi trovare maggiori informazioni qui. Dopo aver ottenuto l'indirizzo IP del Pi, puoi utilizzarlo tramite SSH utilizzando il seguente comando su Linux e MacOS, ssh pi@

O su Windows usando PuTTY.

La password predefinita per l'utente pi è lampone.

Passaggio 4: configurazione del sistema

Configurazione generale

Al primo avvio il sistema è quasi completamente deconfigurato, quindi ci sono alcune attività che dovrai eseguire prima.

La prima cosa che devi fare è cambiare la password predefinita per l'utente pi, passwd

Quindi, dovrai configurare le impostazioni locali. Puoi farlo eseguendo il seguente comando, sudo dpkg-reconfigure locali

Vai avanti e seleziona tutte le impostazioni internazionali en_US utilizzando la barra spaziatrice più tutte le altre impostazioni internazionali che desideri. Quando hai finito premi Invio. Infine, seleziona en_US. UTF-8 come locale predefinito e premi Invio.

Successivamente dovrai configurare il fuso orario, sudo dpkg-reconfigure tzdata

A questo punto è probabilmente una buona idea aggiornare il sistema, sudo apt-get update

sudo apt-get upgrade sudo apt-get dist-upgrade

Successivamente, è necessario abilitare il modulo della fotocamera utilizzando il comando raspi-config, sudo raspi-config

Seleziona le Opzioni di interfaccia dal menu, quindi seleziona l'opzione Fotocamera. Rispondi sì alla domanda che ti chiede di abilitare la fotocamera, quindi seleziona OK. Infine, seleziona Fine e rispondi sì alla domanda se vuoi riavviare il Raspberry Pi ora. Dopo il riavvio, riconnettiti al tuo Pi tramite SSH allo stesso modo di prima.

Per verificare che la fotocamera funzioni correttamente è possibile eseguire il seguente comando, raspivid -t 0

Dovresti essere in grado di vedere il feed video sul tuo monitor HDMI, puoi fermarlo ogni volta che vuoi premendo Ctrl-C. Puoi anche usare i flag -vf e -hf per capovolgere l'immagine verticalmente e/o orizzontalmente, se necessario.

Impostazione di un indirizzo IP statico

La prossima cosa che devi fare è impostare un indirizzo IP statico per il tuo Pi. Per farlo usando nano, modifica il tuo /etc/dhcpcd.conf, sudo nano /etc/dhcpcd.conf

e aggiungi le seguenti righe alla fine, interfaccia wlan0

static ip_address= router statici= domain_name_servers= statici

Nell'impostazione domain_name_servers puoi aggiungere più nameserver divisi da spazi se lo desideri, ad es. potresti anche aggiungere l'IP del DNS di Google che è 8.8.8.8 da utilizzare come server di backup. Premi Ctrl-X per uscire, digita y e infine premi Invio per salvare le modifiche.

Quindi riavvia il dhcpcd e i servizi di rete eseguendo i seguenti due comandi, sudo systemctl riavvia dhcpcd.service

sudo systemctl riavvia networking.service

A questo punto la sessione SSH dovrebbe bloccarsi. Non preoccuparti, però, dato che hai appena cambiato l'IP del Pi, riconnettiti ad esso tramite SSH ma questa volta usando l'IP che hai assegnato.

Passaggio 5: installazione di GStreamer

Esistono diversi modi per trasmettere video da un Raspberry Pi sulla rete, ma quello che fornisce la minor quantità di latenza è utilizzando GStreamer. Per installare GStreamer puoi semplicemente eseguire i seguenti comandi, sudo apt-get update

sudo apt-get install gstreamer1.0-tools gstreamer1.0-plugins-good gstreamer1.0-plugins-bad

GStreamer ha alcune dipendenze, quindi ci vorrà del tempo. Al termine dell'installazione, è possibile trasmettere in streaming il feed video della telecamera sulla rete e HDMI allo stesso tempo, utilizzando il seguente comando, raspivid -t 0 -w 1920 -h 1080 -fps 30 -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay! tcpserversink host= porta=5000

Questo creerà un flusso RTP sulla porta 5000 che può essere ricevuto da qualsiasi macchina sulla rete locale utilizzando GStreamer, gst-launch-1.0 -v tcpclientsrc host= porta=5000 ! gdpdepay! rtph264depay! avdec_h264 ! videoconvertire! autovideosink sync=false

L'installazione di GStreamer su qualsiasi macchina che esegue una distribuzione Linux basata su Debian viene eseguita esattamente allo stesso modo del Pi. La maggior parte delle distro non basate su Debian dovrebbe avere anche GStreamer nei propri repository.

GStreamer è disponibile anche su Windows e MacOS, informazioni dettagliate su come installarlo possono essere trovate qui e qui.

Passaggio 6: configurare lo streaming per l'avvio automatico all'avvio

Ovviamente usando il comando precedente puoi avviare lo streaming ogni volta che vuoi, anche se ciò richiede la connessione prima al Pi tramite SSH, il che non è molto conveniente. Quello che vuoi fare invece è creare uno script che verrà eseguito automaticamente all'avvio come servizio e avvierà lo streaming.

Quindi, per farlo prima crea un file usando nano, sudo nano /usr/local/bin/network-streaming.sh

e all'interno incolla le seguenti due righe, #!/bin/bash

raspivid -t 0 -w 1920 -h 1080 -fps 30 -vf -hf -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay! tcpserversink host= porta=5000

I flag -vf e -hf vengono utilizzati per capovolgere l'immagine verticalmente e orizzontalmente. A seconda dell'orientamento della fotocamera dopo averla installata, potresti averne bisogno o meno.

Premi Ctrl-X per uscire, digita y e infine premi Invio per salvare le modifiche. Quindi rendere eseguibile lo script eseguendo, sudo chmod +x /usr/local/bin/network-streaming.sh

Successivamente è necessario creare un file di servizio systemd, sudo nano /etc/systemd/system/network-streaming.service

E incolla all'interno delle seguenti righe, [Unità]

Description=Streaming video di rete After=network-online.target Wants=network-online.target [Service] ExecStart=/usr/local/bin/network-streaming.sh StandardOutput=journal+console User=pi Restart=on-failure [Installa] WantedBy=multi-user.target

Salva il file ed esci da nano ed esegui il seguente comando per testare il tuo servizio, sudo systemctl start network-streaming.service

Se tutto funziona come previsto, puoi eseguire il seguente comando per avviare automaticamente il servizio all'avvio, sudo systemctl enable network-streaming.service

Passaggio 7: rendere il file system di sola lettura

Uno dei grandi problemi delle schede SD e della memoria flash in generale è che sono molto inclini alla corruzione.

Il modo migliore per combatterlo è montare tutte le partizioni della scheda microSD come di sola lettura. Ciò ti consentirà anche di scollegare l'alimentazione dal Pi ogni volta che vuoi senza dover avviare un corretto spegnimento, il che è molto utile soprattutto per un'applicazione del genere.

La prima cosa che devi fare è rimuovere alcuni pacchetti eseguendo il seguente comando, sudo apt-get purge triggerhappy logrotate dphys-swapfile

Successivamente, è necessario sostituire rsyslog con il demone syslogd di busybox che consentirà di mantenere i registri di sistema in memoria, sudo apt-get install busybox-syslogd

sudo apt-get purge rsyslog

e corri, sudo apt-get autoremove

per rimuovere eventuali pacchetti che non sono più necessari.

Successivamente, sarai in grado di visualizzare i registri di sistema in qualsiasi momento utilizzando il comando logread.

Successivamente, devi spostare /etc/resolv.conf in /tmp, che verrà montato in memoria, perché deve rimanere scrivibile.

sudo rm /etc/resolv.conf

sudo touch /tmp/resolv.conf sudo ln -s /tmp/resolv.conf /etc/resolv.conf

Un altro file che deve essere scrivibile è /var/lib/systemd/random-seed, quindi allo stesso modo, sudo rm /var/lib/systemd/random-seed

sudo touch /tmp/random-seed sudo chmod 600 /tmp/random-seed sudo ln -s /tmp/random-seed /var/lib/systemd/random-seed

Poiché il file random-seed non viene normalmente creato all'avvio e il contenuto di /tmp è volatile, sarà necessario cambiarlo modificando il file di servizio del file di servizio systemd-random-seed. Quindi, usando nano, sudo nano /lib/systemd/system/systemd-random-seed.service

e aggiungi semplicemente la riga alla fine della sezione del servizio, ExecStartPre=/bin/echo "" > /tmp/seme-casuale

quindi sarà simile a questo, [Servizio]

Type=oneshot RemainAfterExit=yes ExecStart=/lib/systemd/systemd-random-seed load ExecStop=/lib/systemd/systemd-random-seed save ExecStartPre=/bin/echo "" > /tmp/random-seed

e corri, sudo systemctl demone-reload

per ricaricare i file del servizio systemd.

Successivamente dovrai modificare il file /etc/fstab, sudo nano /etc/fstab

E aggiungi l'opzione ro sulle partizioni /dev/mmcblk0p1 e /dev/mmcblk0p2 in modo che possano essere montate in sola lettura all'avvio. E aggiungi qualche riga in più in modo che /tmp, /var/log e /var/tmp vengano montati in memoria. Dopo aver apportato tali modifiche, il file /etc/fstab dovrebbe essere simile a questo, proc /proc proc default 0 0

/dev/mmcblk0p1 /boot vfat defaults, ro 0 2 /dev/mmcblk0p2 / ext4 defaults, noatime, ro 0 1 # un file di scambio non è una partizione di scambio, nessuna riga qui # usa dphys-swapfile swap[on|off] per quello tmpfs /tmp tmpfs nosuid, nodev 0 0 tmpfs /var/log tmpfs nosuid, nodev 0 0 tmpfs /var/tmp tmpfs nosuid, nodev 0 0

Infine, modifica il tuo cmdline.txt, sudo nano /boot/cmdline.txt

e alla fine della riga aggiungi le opzioni fastboot noswap ro per disabilitare il controllo del filesystem, disabilitare lo swap e forzare il montaggio del filesystem in sola lettura. Dopodiché il tuo /boot/cmdline.txt dovrebbe essere simile a questo, dwc_otg.lpm_enable=0 console=serial0, 115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait fastboot noswap ro

Infine, riavvia il sistema per rendere effettive le modifiche. Dopo il riavvio se tutto è andato come previsto in esecuzione, sudo touch /boot/test

sudo touch /test

dovrebbe darti in entrambi i casi un errore "File system di sola lettura". Ora puoi scollegare l'alimentazione dal tuo Pi ogni volta che vuoi senza rischiare che il filesystem sulla scheda microSD venga danneggiato.

Se hai bisogno per qualche motivo di rendere il filesystem di root temporaneamente in lettura-scrittura, ad es. per installare alcuni pacchetti, puoi farlo usando il seguente comando, sudo mount -o remount, rw /

E dopo aver finito, esegui il seguente comando per renderlo di nuovo di sola lettura, sudo mount -o remount, ro /

Nel caso in cui desideri eseguire gli aggiornamenti, assicurati di montare sia /boot che / come read-write, poiché gli aggiornamenti per il kernel e il firmware scrivono anche la partizione /boot.

A questo punto abbiamo finito con la parte software, quindi consiglio vivamente di spegnere il Pi, rimuovere la microSD e fare un backup dell'immagine della scheda microSD.

Passaggio 8: hackerare il modulo della fotocamera

Hackerare il modulo della fotocamera
Hackerare il modulo della fotocamera
Hackerare il modulo della fotocamera
Hackerare il modulo della fotocamera

Affinché il modulo della fotocamera sia in grado di mettere a fuoco oggetti molto vicini e fornirti un ingrandimento, dovrai modificarlo per modificarne la lunghezza focale.

L'obiettivo fissato sulla parte superiore del sensore è effettivamente avvitato in posizione e fissato con una piccolissima quantità di colla. Usando un paio di pinze a becco lungo e piatto, gira delicatamente la lente avanti e indietro per rompere il legame di colla, quindi svita completamente la lente con molta attenzione.

Dopodiché, rimetti l'obiettivo sul modulo e avvitalo solo un po' in modo che non cada quando capovolgi la scheda. Quindi, collega il tuo Pi al monitor se non lo hai già fatto, collega l'alimentazione e guarda il flusso video.

Quello che dovrai fare è regolare quanto l'obiettivo è avvitato sulla base, in modo che la fotocamera sia in grado di mettere a fuoco oggetti a circa 10 cm dall'obiettivo. Cerca di non scendere molto più in basso, perché devi avere una distanza di lavoro relativamente buona per poter saldare sotto di essa. Non preoccuparti troppo di renderlo perfetto, puoi sempre fare regolazioni fini dopo aver finito con il gruppo del microscopio.

Passaggio 9: assemblaggio del microscopio

Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio
Assemblaggio del microscopio

Ora è il momento della parte divertente, che non è altro che assemblare il microscopio.

Per prima cosa dovrai fare due fori del diametro delle viti sulla ganascia superiore della pinza e due su un lato della cassa in alluminio per poterlo montare.

Successivamente, dovrai aprire uno slot della dimensione appropriata per adattarlo al pezzo del righello. Prenditi il tuo tempo con questo, perché se vai troppo veloce potresti rompere la plastica o rendere il buco troppo grande. Al termine, inserisci il righello per assicurarti che si adatti bene all'interno.

Ora devi fare un paio di fori sul bordo per il righello per montare il modulo della fotocamera. Al termine, avvitare il modulo della telecamera in posizione e tagliare la parte restante delle viti.

Successivamente, monta il calibro sul lato della custodia in alluminio con le viti, passa il righello con il modulo della fotocamera attaccato ad esso attraverso il foro e fissalo in posizione con la colla a caldo. Assicurati di aggiungere la colla a caldo su entrambi i lati e sia dalla parte superiore che da quella inferiore.

Infine, collega la scheda Raspberry Pi sulla parte mobile della pinza utilizzando fascette come puoi vedere nell'immagine e collega il cavo della fotocamera.

E così è stato, ora puoi regolare facilmente la messa a fuoco della fotocamera spostando il calibro su e giù e, se vuoi, regolare anche la lunghezza focale dell'obiettivo, al fine di ottenere la distanza di lavoro ottimale per te.

Se vuoi anche imparare come renderlo portatile, puoi procedere al passaggio successivo.

Passaggio 10: renderlo portatile: software

Il PowerBoost 1000C ha una piccola funzione molto utile. Ha un pin di abilitazione che quando viene tirato in alto attiva il convertitore boost e inizia a fornire potenza sulla sua uscita, e mentre viene abbassato l'alimentazione viene interrotta.

Il Raspberry Pi ha anche una bella funzione, che ci consente di configurare un pin GPIO come uscita che sarà a uno stato alto mentre il Pi è acceso e a uno stato basso dopo uno spegnimento riuscito. Combinando queste due funzionalità, è possibile creare un interruttore software on/off per il microscopio.

Partiamo dalla parte software, la prima cosa che devi fare è abilitare questa funzione del Pi e fargli emettere una logica alta su un pin GPIO dal momento in cui inizia l'avvio e una logica bassa dopo uno spegnimento riuscito.

Farlo è davvero semplice, tutto ciò che devi fare è modificare il tuo file /etc/config.txt, sudo mount -o remount, rw /boot

sudo nano /boot/config.txt

e aggiungi la seguente riga alla fine, dtoverlay=gpio-poweroff, gpiopin=26, active_low

Ora, se riavvii il tuo Raspberry e misuri la tensione sul pin GPIO26 (pin 37 sull'intestazione GPIO) rispetto a terra, dovresti vedere 3,3 V dal momento in cui il Pi inizia ad avviarsi. E dopo aver eseguito uno spegnimento completo, dovrebbe diventare 0V.

Ora che questo è fatto, devi scrivere un semplice script che monitorerà lo stato di un secondo pin GPIO e quando diventa basso attiverà un arresto. A questo scopo sarà necessario installare il pacchetto wirepi, che viene fornito insieme al comando gpio.

sudo mount -o remount, rw /

sudo apt-get update sudo apt-get install cablaggio

Ora usando nano crea lo script, sudo nano /usr/local/sbin/power-button.sh

e incolla all'interno delle seguenti righe, #!/bin/bash

mentre true do if (($(gpio read 24) == 0)) then systemctl poweroff fi sleep 1 done

e dopo aver salvato ed esci lo rendi anche eseguibile, sudo chmod +x /usr/local/sbin/power-button.sh

È importante ricordare che il pin 24 del cablaggiopi corrisponde al pin GPIO19, che è il pin 35 sull'intestazione GPIO. Se questo suona confuso, puoi dare un'occhiata al pinout del Raspberry Pi sul sito web pinout.xyz e alla pagina web sui pin su cablaggiopi.com. L'esecuzione del comando gpio readall può anche essere utile per determinare quale pin è quale.

Successivamente, è necessario creare un file di servizio systemd, sudo nano /etc/systemd/system/power-button.service

con i seguenti contenuti, [Unità]

Description=Monitoraggio pulsante di accensione After=network-online.target Wants=network-online.target [Service] ExecStart=/usr/local/sbin/power-button.sh StandardOutput=journal+console Restart=on-failure [Install] WantedBy =destinazione multiutente

Infine, per avviare il servizio e farlo funzionare all'avvio, sudo systemctl start power-button.service

sudo systemctl enable power-button.service

e rimontare il filesystem in sola lettura con, sudo mount -o remount, ro /

Passaggio 11: renderlo portatile: hardware

Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware
Renderlo portatile: hardware

Ora è il momento per la parte hardware. Innanzitutto, è necessario costruire un circuito molto semplice composto da un transistor NPN, due resistori e un interruttore momentaneo DPST. Puoi guardare l'immagine dello schema elettrico per maggiori dettagli.

Dovrai anche saldare un'intestazione pin maschio sul GPIO del Raspberry Pi e anche una femmina sul PowerBoost, in modo da poter facilmente collegare questo e il Pi sulla scheda che stai per costruire. La tua scheda essenzialmente sarà attaccata sopra il Pi Zero come un HAT e il PowerBoost sopra la scheda. Il Pi verrà anche alimentato direttamente dall'intestazione GPIO utilizzando il pin +5V del PowerBoost.

Dopo aver finito con la saldatura, è il momento di mettere tutto insieme. Innanzitutto, monta il Pi sulla parte mobile della pinza usando le fascette. Quindi monta la batteria sul retro della scheda che hai ricostruito con una fascetta e attaccala sul Pi, fai attenzione a non stringerla troppo o potresti danneggiare la batteria. Attaccaci sopra la scheda PowerBoost e collega la batteria al connettore. Ultimo ma non meno importante, collega il cavo della fotocamera e collega il Pi al modulo della fotocamera e, naturalmente, non dimenticare di collegare la microSD.

E finalmente abbiamo finito! Se ora premi il pulsante di accensione e continui a premerlo per circa 8 secondi, il processo di avvio del Pi dovrebbe iniziare e dopo averlo rilasciato, dovrebbe continuare ad andare. Sfortunatamente, il Pi non inizia immediatamente a emettere la logica alta su GPIO26, quindi se smetti di premere il pulsante troppo presto l'alimentazione verrà interrotta.

Al termine del processo di avvio, premendo nuovamente il pulsante di accensione per circa un secondo, il Pi si spegne e l'alimentazione viene interrotta.

Passaggio 12: idee per il miglioramento

Idee per il miglioramento
Idee per il miglioramento
Idee per il miglioramento
Idee per il miglioramento
Idee per il miglioramento
Idee per il miglioramento

Sbarazzarsi di fonti di luce indesiderate

Questo non dovrebbe importare molto se prevedi di utilizzare il microscopio solo per la saldatura e l'ispezione della scheda, ma se volessi anche scattare alcune foto con esso, potresti trovare una fastidiosa macchia rossa che appare nelle tue foto. Ciò è causato dal LED del modulo della fotocamera che è sempre acceso mentre la fotocamera è in funzione.

Se vuoi disattivarlo fortunatamente è abbastanza semplice da fare. Dopo aver reso scrivibile la partizione /boot, sudo mount -o remount, rw /boot

modifica il tuo /boot/config.txt usando nano, sudo nano /boot/config.txt

e aggiungi la seguente riga alla fine, disable_camera_led=1

In questo modo il LED della fotocamera dovrebbe rimanere spento, dopo aver riavviato il sistema.

Ora, se hai realizzato la versione portatile, il PowerBoost 1000C ha sfortunatamente un LED blu ridicolmente luminoso per indicare che l'alimentazione è accesa. Che oltre a rovinare l'esposizione delle tue immagini, potresti anche trovarlo estremamente fastidioso per i tuoi occhi durante la saldatura, proprio per la sua luminosità.

Per questo motivo, potresti prendere in considerazione la possibilità di rimuovere completamente dalla scheda il LED di alimentazione o il resistore che è in serie con esso. In alternativa, potresti voler sostituire invece il resistore da 1K che è in serie con esso con uno più grande, in modo che il LED diventi più fioco.

Ingrandimento regolabile

Invece di prendere un normale modulo fotocamera Raspberry Pi e hackerarlo per cambiarne la lunghezza focale, se non ti dispiace risparmiare qualche soldo in più potresti anche ottenere un modulo fotocamera con una lunghezza focale regolabile, per poco più di 20 € da eBay.

Un tale modulo fotocamera ti consentirà di regolare facilmente il livello di ingrandimento, perché quando abbassi la fotocamera tutto ciò che devi fare è svitare un po' l'obiettivo per mettere a fuoco. Ciò ti consentirà anche di ottenere facilmente livelli di ingrandimento abbastanza grandi. Tieni presente però che dopo un certo punto, la profondità di campo diventerà così inghiottita che renderà il microscopio quasi inutilizzabile come puoi vedere anche nell'immagine allegata.

Quindi, per riassumere, se te lo puoi permettere, ti consiglio vivamente di acquistare uno di questi moduli della fotocamera, in quanto ti darà un'incredibile flessibilità.

Concorso Microcontrollori 2017
Concorso Microcontrollori 2017
Concorso Microcontrollori 2017
Concorso Microcontrollori 2017

Secondo Premio al Concorso Microcontrollori 2017

Consigliato: