Cuprins:

Microscop de lipit Raspberry Pi Zero HDMI / WiFi: 12 pași (cu imagini)
Microscop de lipit Raspberry Pi Zero HDMI / WiFi: 12 pași (cu imagini)

Video: Microscop de lipit Raspberry Pi Zero HDMI / WiFi: 12 pași (cu imagini)

Video: Microscop de lipit Raspberry Pi Zero HDMI / WiFi: 12 pași (cu imagini)
Video: Unboxing mai multe statii de lipit + review microscop Eakins 2024, Iulie
Anonim
Image
Image
Microscop de lipit Raspberry Pi Zero HDMI / WiFi
Microscop de lipit Raspberry Pi Zero HDMI / WiFi
Microscop de lipit Raspberry Pi Zero HDMI / WiFi
Microscop de lipit Raspberry Pi Zero HDMI / WiFi

Componentele SMD de lipit pot fi uneori o provocare, mai ales atunci când vine vorba de lucruri precum cipuri TQFP de 0,4 mm cu pini cu 100 sau mai mulți pini. În astfel de cazuri, accesul la un fel de mărire ar putea fi foarte util.

În încercarea de a aborda această problemă, am decis să-mi construiesc propriul microscop de lipit pe baza unui Raspberry Pi Zero W și a unui modul de cameră. Microscopul este capabil să transmită video Full HD direct pe un monitor HDMI practic fără latență, ceea ce este perfect pentru lipire. Dar și prin WiFi cu o latență mai mică de jumătate de secundă, ceea ce este destul de bun pentru inspecția bordului.

Opțional, cu un pic de cost suplimentar, microscopul poate fi, de asemenea, portabil, care, combinat cu capacitățile sale de streaming video WiFi, deschide o dimensiune suplimentară a cazurilor de utilizare potențiale.

Dacă se întâmplă să aveți o imprimantă 3D, asigurați-vă că verificați și proiectul uimitor al RichW36 pe Thingiverse pentru o versiune a microscopului folosind piese imprimate 3D!

Pasul 1: Instrumente și piese

Unelte și piese
Unelte și piese
Unelte și piese
Unelte și piese
Unelte și piese
Unelte și piese
Unelte și piese
Unelte și piese

Pentru a construi microscopul, veți avea nevoie de următoarele părți:

1 x Raspberry Pi Zero W [10 €]

1 x Raspberry Pi Camera Module [8 €] - Va trebui să-l piratezi pentru a-i schimba distanța focală și a face posibilă focalizarea pe obiecte foarte apropiate. Nu știu dacă aceeași procedură este posibilă și cu noul modul de cameră de 8MP, așa că aș recomanda să obțineți unul original de 5MP.

1 x cablu pentru cameră Raspberry Pi Zero [2 €] - După cum probabil știți deja, Raspberry Pi Zero are un conector de cameră mai mic decât celelalte plăci Raspberry Pi, deci veți avea nevoie și de un cablu adaptor special pentru a conecta modulul camerei la acesta.

1 x Micrometru cu etrier din plastic - Cu cât găsești mai ieftin, cu atât am folosit unul analog din plastic vechi pe care îl aveam în jur.

1 x bucată de riglă - lățimea riglei trebuie să fie mai mică decât lungimea maxilarului în mișcare al etrierului. În ceea ce privește lungimea, aproximativ 10cm până la 15cm ar trebui să fie bine.

1x Cutie de proiectare din aluminiu [4 €] - Aceasta va fi folosită ca bază a ansamblului și trebuie să fie din metal, deci va fi, de asemenea, rezistentă la căldură. Motivul pentru care este nevoie de o cutie este astfel încât să puteți pune o greutate în interior, pentru a fi mai stabil în timpul lipirii.

1 x cablu HDMI și un adaptor HDMI HDMI la masculin Mini HDMI - De asemenea, puteți achiziționa cabluri HDMI la Mini HDMI, dacă doriți, dar aveam deja un cablu HDMI obișnuit.

1 x sursă de alimentare Micro USB - Conform măsurătorilor mele, curentul tras de Pi nu depășește niciodată 400mA, chiar și în timp ce transmiteți video 1080p pe WiFi și HDMI în același timp. Deci, chiar și o sursă de alimentare de 500 mA ar trebui să fie suficientă. Doar pentru a fi în siguranță, deși vă recomand să obțineți unul 1A, mai ales dacă intenționați să construiți versiunea portabilă, care va avea, de asemenea, pierderi pe convertorul boost.

1 x card MicroSD [5 €] - Chiar și unul de 4 GB va fi suficient, asigurați-vă că este o clasă 10 de înaltă calitate.

4 x Șuruburi și piulițe M2 [mai puțin de 1 €] - Șuruburi cu diametru mai mare ar putea fi, de asemenea, utilizate. Cu toate acestea, cu cât șurubul este mai mare, cu atât mai mare trebuie să fie gaura, iar răzătoarea riscul de rupere a plasticului.

1 x Hot Glue Stick [1 €]

Cravate cu fermoar prin cablu [mai puțin de 1 €] - Acestea vor fi utilizate pentru a atașa Pi pe partea mobilă a etrierului.

Și următoarele instrumente:

O pistol de lipici fierbinte

Un Dremel - Cu un disc care poate tăia plasticul, plus burghiele pentru plastic și aluminiu la dimensiunea șuruburilor.

Un clește lung pentru nas plat

Un clește de tăiere cu șurub - Veți avea nevoie de un mod de tăiere a șuruburilor pe lungimea corespunzătoare. Am folosit o pereche de clești de tăiat șuruburi, deși sunt sigur că există și alte instrumente care pot face treaba.

Șurubelniță Philips

Opțional, dacă doriți să îl faceți portabil, veți avea nevoie de următoarele piese suplimentare:

1 x baterie LiPo [8 €] - a cărei capacitate va depinde de durata de viață a bateriei pe care o doriți, de eficiența convertorului boost și de consumul mediu de energie.

1 x încărcător de baterii LiPo / convertor Boost 5V [20 €] - Pentru acest proiect aleg PowerBoost 1000C de la Adafruit. Alternative mult mai ieftine sunt, de asemenea, disponibile pe eBay, deși am decis să merg cu acea anume din cauza unei caracteristici frumoase pe care o avea, despre care voi vorbi mai multe mai târziu.

1 x antet cu pin cu două rânduri, cu 40 de pini, pentru bărbați [mai puțin de 1 €]

1 x antet pin feminin cu două rânduri cu 40 de pini [mai puțin de 1 €]

1 x antet pin masculin cu 8 pini [mai puțin de 1 €]

1 x antet pin feminin cu 8 pini [mai puțin de 1 €]

1 x bucată de placă de prototipare [1 €] - Deoarece va trebui să lipiți anteturile de pin pe ambele părți ale plăcii, vă recomand să obțineți una cu două fețe. Alternativ, puteți obține o placă de prototipare concepută special pentru Pi Zero, cum ar fi aceasta de la MakerSpot.

1 x rezistoare 1K [mai puțin de 1 €]

1 rezistor 10K [mai puțin de 1 €]

1 x BC547 [mai puțin de 1 €] - Orice tranzistor NPN cu scop general va face, tocmai asta am folosit.

1 x Comutator momentan DPST [1 €] - În mod ideal, doriți un comutator DPST, astfel încât să puteți porni și opri Pi folosind același buton. Din păcate, nu aveam unul în jur, așa că a trebuit să folosesc două comutatoare de moment SPST separate.

Cravate prin cablu [mai puțin de 1 €] - Este nevoie de încă unul pentru versiunea portabilă, pentru atașarea bateriei pe partea din spate a plăcii de prototipare.

Sârmă de lipit

Și următoarele instrumente suplimentare:

Un fier de lipit

O pereche de freze de sârmă

Costul total pentru versiunea non-portabilă, cu excepția sursei de alimentare, a cablului HDMI și a adaptorului la mini HDMI, a fost de aproximativ 30 €. Și costul suplimentar pentru a-l face portabil a fost, de asemenea, de aproximativ 30 €. Majoritatea pieselor au fost achiziționate de pe eBay.

Pasul 2: Pregătirea MicroSD

Înregistrarea imaginii pe cardul microSD

Ca bază pentru sistem, am decis să merg cu imaginea oficială Raspbian Lite și să instalez doar exact ceea ce aveam nevoie. Pentru a începe, descărcați mai întâi cea mai recentă imagine Raspbian Lite de pe site-ul web raspberrypi.org și ardeți-o pe cardul dvs. microSD.

Dacă rulați Linux, după ce îl dezarhivați, îl puteți arde executând următoarea comandă ca root, dd if = / path / to / -raspbian-jessie-lite.img of = / dev / sdX bs = 4M

Unde X este litera dispozitivului care corespunde microSD-ului dvs. de ex. c. Înainte de a rula comanda, asigurați-vă că nu există partiții montate care să aparțină cardului microSD. În cazul în care există utilizați următoarea comandă pentru a demonta fiecare dintre ele, umount / dev / sdXY

Dar fii extrem de atent aici, folosirea unei litere greșite în locul lui X poate afecta sistemul ireversibil și îți poate strica ziua. Înainte de a rula comanda dd verificați de două ori dacă litera pe care ați introdus-o în locul lui X este într-adevăr cea care corespunde dispozitivului microSD.

Dacă utilizați Windows, după descărcarea imaginii Raspbian Lite și dezarhivarea acesteia, puteți utiliza Win32DiskImager pentru ao arde pe cardul microSD. Mai multe informații pot fi găsite în documentația oficială Raspberry Pi.

Pe MacOS există o aplicație grafică numită Etcher disponibilă, care poate fi utilizată pentru a arde imaginea de pe cardul microSD. Alternativ, puteți utiliza și dd în mod similar cu Linux, dar procesul este puțin diferit. Din nou, puteți verifica documentația oficială pentru mai multe informații.

Configurarea WiFi-ului

După arderea imaginii pe cardul microSD, va trebui să configurați WiFi-ul înainte de prima pornire și, de asemenea, să activați SSH.

Primul lucru pe care trebuie să-l faceți este să creați un fișier gol numit SSH în partiția de boot a cardului microSD. Dacă sunteți pe Windows, partiția de boot va fi cel mai probabil singura partiție pe care ați putea să o vedeți, deoarece Windows nu poate citi sau scrie în mod nativ partiții ext4. Dacă partițiile cardului microSD nu sunt montate în prezent, deconectați și reconectați cardul la computer.

Apoi, din nou în interiorul partiției de boot, creați un fișier numit wpa_supplicant.conf cu setările wireless. Conținutul fișierului ar trebui să arate similar cu acesta, tara =

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

proto poate fi RSN pentru WPA2 sau WPA pentru WPA1.key_mgmt poate fi fie WPA-PSK, fie WPA-EAP pentru rețele de întreprindere. în același timp poate fi CCMP pentru WPA2 sau TKIP pentru WPA1.auth_alg va fi probabil DESCHIS, în timp ce LEAP și SHARED sunt celelalte opțiuni. În ceea ce privește țara, ssid și psk, acestea ar trebui să fie destul de explicative.

Gata, acum demontați cardul microSD de pe computer și puneți-l pe Pi. Apoi, conectați dispozitivul Pi la un monitor HDMI, conectați modulul camerei foto utilizând cablul special cu bandă și, în cele din urmă, alimentați-l. După câteva secunde, Pi-ul tău ar fi trebuit să pornească și să se conecteze automat la rețeaua WiFi. Pe ecran, ar trebui să puteți vedea și adresa IP pe care a primit-o de la serverul DHCP al routerului.

Actualizare 06.04.2018:

În cazul în care, dintr-un anumit motiv, Pi-ul dvs. nu se poate conecta la WiFi în timpul pornirii, încercați în schimb următorul wpa_supplicant.conf, tara =

ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "" psk = ""}

Recent am încercat să configurez un Pi Zero W fără cap cu cea mai recentă versiune de Raspbian și nu am reușit să-l fac să funcționeze până nu am folosit wpa_supplicant.conf furnizat mai sus. Deci, dacă pareți să aveți aceeași problemă, acest lucru vă poate ajuta.

Pasul 3: Stabilirea unei conexiuni SSH

În cazul în care nu ați conectat încă un monitor la Pi și nu puteți vedea ce adresă IP a primit, există mai multe moduri de a-l descoperi. O modalitate este verificarea jurnalelor serverului DHCP al routerului. Fiecare router este diferit, deci nu voi descrie acest proces.

Pe Linux, un alt mod ușor este de a rula următoarea comandă nmap ca root, nmap -sn x.x.x.x / y

Unde x.x.x.x este adresa IP a rețelei dvs. private, de ex. 192.168.1.0 și y este numărul de unități (în binar) ale măștii de rețea, de ex. pentru masca de rețea 255.255.255.0 numărul acestora este 24. Deci, pentru acea rețea pe care ați rula-o, nmap -sn 192.168.1.0/24

Un exemplu de ieșire pentru această comandă este următorul, Începând cu Nmap 6.47 (https://nmap.org) la 16.04.2017 12:34 EEST

Raportul de scanare Nmap pentru gazda 192.168.1.1 este activat (latență 0.00044s). Adresă MAC: 12: 95: B9: 47: 25: 4B (Intracom S. A.) Raport de scanare Nmap pentru 192.168.1.2 Gazda este activată (latență 0.0076s). Adresă MAC: 1D: B8: 77: A2: 58: 1F (HTC) Raport de scanare Nmap pentru 192.168.1.4 Gazda este activată (latență 0.00067s). Adresă MAC: 88: 27: F9: 43: 11: EF (Raspberry Pi Foundation) Raport de scanare Nmap pentru 192.168.1.180 Host este activat. Nmap realizat: 256 de adrese IP (4 gazde în sus) scanate în 2,13 secunde

După cum puteți vedea în cazul meu, Pi are adresa IP 192.168.1.4.

Dacă sunteți pe Windows, există și o versiune de nmap disponibilă pe care o puteți încerca, pentru care puteți găsi mai multe informații aici. După obținerea adresei IP a dispozitivului Pi, puteți trimite SSH la aceasta folosind următoarea comandă pe Linux, precum și pe MacOS, ssh pi @

Sau pe Windows utilizând PuTTY.

Parola implicită pentru utilizatorul pi este raspberry.

Pasul 4: Configurarea sistemului

Configurare generală

La prima încărcare, sistemul este aproape complet neconfigurat, deci trebuie să faceți mai întâi câteva sarcini.

Primul lucru pe care trebuie să-l faceți este să schimbați parola implicită pentru utilizatorul pi, passwd

Apoi, va trebui să configurați localizările. Puteți face acest lucru executând următoarea comandă, sudo dpkg-reconfigure locale

Continuați și selectați toate localizările en_US utilizând bara de spațiu plus orice alte localizări dorite. Când ați terminat, apăsați Enter. În cele din urmă, selectați en_US. UTF-8 ca locație implicită și apăsați Enter.

Apoi va trebui să configurați fusul orar, sudo dpkg-reconfigure tzdata

În acest moment este probabil o idee bună să actualizați sistemul, sudo apt-get update

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

Apoi, trebuie să activați modulul camerei foto utilizând comanda raspi-config, sudo raspi-config

Selectați Opțiunile de interfață din meniu, apoi selectați opțiunea Cameră foto. Răspundeți la întrebarea care vă cere să activați camera și apoi selectați OK. În cele din urmă, selectați finisare și răspundeți da la întrebarea dacă doriți să reporniți Raspberry Pi acum. După repornire, reconectați-vă la Pi prin SSH în același mod ca înainte.

Pentru a testa dacă camera funcționează corect, puteți rula următoarea comandă, raspivid -t 0

Ar trebui să puteți vedea fluxul video pe monitorul dvs. HDMI, îl puteți opri oricând doriți apăsând Ctrl-C. De asemenea, puteți utiliza semnalizatoarele -vf și -hf pentru a răsturna imaginea pe verticală și / sau orizontal, dacă aveți nevoie.

Setarea unei adrese IP statice

Următorul lucru pe care trebuie să-l faceți este să setați o adresă IP statică pentru Pi. Pentru a face acest lucru, utilizați nano editați /etc/dhcpcd.conf, sudo nano /etc/dhcpcd.conf

și adăugați următoarele rânduri la final, interfață wlan0

static ip_address = static routers = static domain_name_servers =

În setarea domain_name_servers puteți adăuga mai multe servere de nume împărțite la spații dacă doriți, de ex. puteți adăuga, de asemenea, IP-ul DNS-ului Google, care este 8.8.8.8, pentru a fi folosit ca server de rezervă. Apăsați Ctrl-X pentru a ieși, tastați y și, în cele din urmă, apăsați Enter pentru a salva modificările.

Apoi reporniți dhcpcd și serviciile de rețea executând următoarele două comenzi, sudo systemctl reporniți dhcpcd.service

sudo systemctl reporniți networking.service

În acest moment, sesiunea SSH ar trebui să se blocheze. Nu vă faceți griji, deși acest lucru este de așteptat, deoarece tocmai ați schimbat adresa IP a dispozitivului Pi, trebuie doar să vă reconectați la acesta prin SSH, dar de data aceasta folosind adresa IP pe care ați atribuit-o.

Pasul 5: Instalarea GStreamer

Există mai multe moduri de a transmite în flux video de pe un Raspberry Pi prin rețea, dar cea care oferă cea mai mică latență este folosind GStreamer. Pentru a instala GStreamer, puteți rula pur și simplu următoarele comenzi, sudo apt-get update

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

GStreamer are destul de multe dependențe, așa că va dura ceva timp. După instalare, puteți transmite fluxul video al camerei prin rețea și HDMI în același timp, folosind următoarea comandă, 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 = port = 5000

Acest lucru va crea un flux RTP pe portul 5000 care poate fi primit de orice mașină din rețeaua dvs. locală utilizând GStreamer, gst-launch-1.0 -v tcpclientsrc host = port = 5000! gdpdepay! rtph264depay! avdec_h264! videoconvert! sincronizare autovideosink = fals

Instalarea GStreamer pe orice mașină care rulează o distribuție Linux bazată pe Debian se face exact în același mod ca pe Pi. Majoritatea distribuțiilor majore non-Debian ar trebui să aibă, de asemenea, GStreamer în depozitele lor.

GStreamer este disponibil și pe Windows și MacOS, informații detaliate despre modul de instalare pot fi găsite aici și aici.

Pasul 6: Configurați fluxul pentru a porni automat la pornire

Desigur, folosind comanda anterioară puteți începe streamingul oricând doriți, deși acest lucru necesită conectarea mai întâi la Pi prin SSH, ceea ce nu este foarte convenabil. Ceea ce doriți să faceți în schimb este să creați un script care să ruleze automat la pornire ca serviciu și să înceapă streamingul.

Deci, pentru a face acest lucru, creați mai întâi un fișier folosind nano, sudo nano /usr/local/bin/network-streaming.sh

iar în interior lipiți următoarele două linii, #! / 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 = port = 5000

Steagurile -vf și -hf sunt folosite pentru a răsuci imaginea pe verticală și orizontală. În funcție de orientarea camerei după ce o instalați, este posibil să aveți nevoie sau nu de ele.

Apăsați Ctrl-X pentru a ieși, tastați y și, în cele din urmă, apăsați Enter pentru a salva modificările. Apoi faceți scriptul executabil executând, sudo chmod + x /usr/local/bin/network-streaming.sh

Apoi, trebuie să creați un fișier de servicii systemd, sudo nano /etc/systemd/system/network-streaming.service

Și lipiți în rândurile următoare, [Unitate]

Descriere = Streaming video în rețea după = network-online.target Vreau = network-online.target [Service] ExecStart = / usr / local / bin / network-streaming.sh StandardOutput = jurnal + consolă User = pi Restart = on-failure [Instalare] WantedBy = multi-user.target

Salvați fișierul și ieșiți din nano și rulați următoarea comandă pentru a vă testa serviciul, sudo systemctl pornește network-streaming.service

Dacă totul funcționează conform așteptărilor, puteți rula următoarea comandă pentru ca serviciul să înceapă automat la pornire, sudo systemctl activează rețeaua-streaming.service

Pasul 7: Realizarea sistemului de fișiere numai în citire

Una dintre marile probleme ale cardurilor SD și stocării flash în general este că acestea sunt foarte predispuse la corupție.

Cea mai bună modalitate de a combate acest lucru este prin montarea tuturor partițiilor cardului microSD ca numai în citire. Acest lucru vă va permite, de asemenea, să deconectați puterea de la Pi oricând doriți fără a fi nevoie să inițiați o oprire adecvată, ceea ce este foarte util mai ales pentru o astfel de aplicație.

Primul lucru pe care trebuie să-l faceți este să eliminați unele pachete executând următoarea comandă, sudo apt-get purge triggerhappy logrotate dphys-swapfile

Apoi, trebuie să înlocuiți rsyslog cu daemon-ul syslogd al busybox, care vă va permite să păstrați jurnalele de sistem în memorie, sudo apt-get install busybox-syslogd

sudo apt-get purge rsyslog

și fugi, sudo apt-get autoremove

pentru a elimina orice pachete care nu mai sunt necesare.

După aceea, veți putea vizualiza jurnalele de sistem în orice moment folosind comanda logread.

Apoi, trebuie să mutați /etc/resolv.conf în / tmp, care va fi montat pe memorie, deoarece trebuie să rămână înscriibil.

sudo rm /etc/resolv.conf

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

Un alt fișier care trebuie să poată fi scris este / var / lib / systemd / random-seed, deci în mod similar, 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

Deoarece fișierul seed-random nu este creat în mod normal la pornire și conținutul / tmp este volatil, va trebui să schimbați acest lucru modificând fișierul de serviciu al fișierului de service systemd-random-seed. Deci, folosind nano, sudo nano /lib/systemd/system/systemd-random-seed.service

și doar adăugați linia la sfârșitul secțiunii de servicii, ExecStartPre = / bin / echo ""> / tmp / random-seed

așa că va arăta așa, [Serviciu]

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

și fugi, sudo systemctl daemon-reload

pentru a reîncărca fișierele de servicii systemd.

Apoi va trebui să editați fișierul / etc / fstab, sudo nano / etc / fstab

Și adăugați opțiunea ro pe partițiile / dev / mmcblk0p1 și / dev / mmcblk0p2 pentru ca acestea să poată fi montate doar în citire la boot. Și adăugați câteva linii, astfel încât / tmp, / var / log și / var / tmp să fie montate pe memorie. După efectuarea acestor modificări, fișierul dvs. / etc / fstab ar trebui să arate similar cu acesta, proc / proc proc implicit 0 0

/ dev / mmcblk0p1 / boot vfat implicit, ro 0 2 / dev / mmcblk0p2 / ext4 implicit, noatime, ro 0 1 # un swapfile nu este o partiție swap, aici nu există linie # utilizați dphys-swapfile swap [on | off] pentru asta tmpfs / tmp tmpfs nosuid, nodev 0 0 tmpfs / var / log tmpfs nosuid, nodev 0 0 tmpfs / var / tmp tmpfs nosuid, nodev 0 0

În cele din urmă, modificați cmdline.txt, sudo nano /boot/cmdline.txt

și la sfârșitul liniei adăugați opțiunile fastboot noswap ro pentru a dezactiva verificarea sistemului de fișiere, dezactivați swap-ul și forțați sistemul de fișiere să fie montat doar în citire. După aceea, /boot/cmdline.txt ar trebui să arate similar cu acesta, dwc_otg.lpm_enable = 0 console = serial0, 115200 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 elevator = deadline fsck.repair = yes rootwait fastboot noswap ro

În cele din urmă, reporniți sistemul pentru ca modificările să aibă efect. După repornire, dacă totul a decurs așa cum era de așteptat, sudo touch / boot / test

sudo touch / test

ar trebui să vă dea în ambele cazuri o eroare „Sistem de fișiere numai în citire”. Acum puteți deconecta alimentarea de la Pi oricând doriți, fără a risca ca sistemul de fișiere de pe cardul microSD să se corupă.

Dacă aveți nevoie dintr-un anumit motiv pentru a face ca sistemul de fișiere rădăcină să citească-scrie temporar, de ex. pentru instalarea unor pachete, puteți face acest lucru utilizând următoarea comandă, sudo mount -o remonta, rw /

Și după ce ați terminat, rulați următoarea comandă pentru ao face din nou numai în citire, sudo mount -o remonta, ro /

În cazul în care doriți să faceți actualizări, asigurați-vă că montați ambele / boot și / ca citire-scriere, deoarece actualizările pentru kernel și firmware scriu și partiția / boot.

În acest moment am terminat cu partea software, așa că vă recomand să închideți Pi-ul, să scoateți microSD-ul și să faceți o copie de rezervă a imaginii cardului microSD.

Pasul 8: piratarea modulului camerei

Hacking modulul camerei
Hacking modulul camerei
Hacking modulul camerei
Hacking modulul camerei

Pentru ca modulul camerei să poată focaliza pe obiecte aflate în imediata apropiere și să vă ofere mărire, va trebui să-l pirati pentru a-i modifica distanța focală.

Obiectivul care este atașat deasupra senzorului este de fapt înșurubat și fixat cu o cantitate foarte mică de adeziv. Folosind o pereche de clești lungi cu nas plat, rotiți lent lentilele înainte și înapoi pentru a sparge legătura de lipici, apoi deșurubați complet cu atenție lentila.

După aceea, puneți obiectivul înapoi pe modul și înșurubați-l puțin, astfel încât să nu cadă când întoarceți placa cu capul în jos. Apoi, atașați Pi la monitor dacă nu ați făcut-o deja, conectați alimentarea și uitați-vă la fluxul video.

Ce va trebui să faceți este să reglați cât de mult obiectivul este înșurubat pe bază, pentru a face camera să poată focaliza obiectele la aproximativ 10 cm de obiectiv. Încercați să nu coborâți mult mai jos, pentru că trebuie să aveți o distanță de lucru relativ bună pentru a putea lipi sub ea. Nu vă faceți griji prea mult pentru a-l face perfect, puteți face întotdeauna ajustări fine după ce ați terminat cu ansamblul microscopului.

Pasul 9: Asamblarea microscopului

Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului
Asamblarea microscopului

Acum este timpul pentru partea distractivă, care nu este alta decât asamblarea microscopului.

În primul rând, va trebui să faceți două găuri cu diametrul șuruburilor de pe maxilarul superior al etrierului și două pe o parte a carcasei din aluminiu pentru a o monta.

Apoi, va trebui să deschideți un slot de dimensiunea adecvată pentru a se potrivi piesei de riglă. Luați-vă timp cu acesta, pentru că dacă mergeți prea repede s-ar putea să rupeți plasticul sau să faceți gaura prea mare. După ce ați terminat, introduceți rigla pentru a vă asigura că se potrivește frumos în interior.

Acum trebuie să faceți câteva găuri pe margine pentru riglă pentru a monta modulul camerei. Când ați terminat, înșurubați modulul camerei în loc și tăiați partea rămasă a șuruburilor.

După aceea, montați etrierul pe partea laterală a carcasei din aluminiu cu șuruburi, treceți rigla cu modulul camerei atașat la ea prin gaură și fixați-o în poziție cu adeziv fierbinte. Asigurați-vă că adăugați adeziv fierbinte pe ambele părți și din partea de sus și de jos.

În cele din urmă, atașați placa Raspberry Pi pe partea mobilă a etrierului folosind cravate cu fermoar, așa cum puteți vedea pe imagine și conectați cablul camerei.

Și asta a fost, acum puteți regla cu ușurință focalizarea camerei mișcând etrierul în sus și în jos și, dacă doriți să reglați și distanța focală a obiectivului, pentru a atinge distanța de lucru optimă pentru dvs.

Dacă doriți, de asemenea, să aflați cum îl puteți face portabil, puteți continua cu pasul următor.

Pasul 10: transformarea în portabilitate: software

PowerBoost 1000C are o caracteristică mică la îndemână. Are un pin de activare care, atunci când este ridicat, activează convertorul de impuls și începe să furnizeze energie la ieșirea sa, iar în timp ce este scăzut, puterea este întreruptă.

Raspberry Pi are, de asemenea, o caracteristică plăcută, care ne permite să configurăm un pin GPIO ca o ieșire care va fi la o stare înaltă în timp ce Pi este pornit și la o stare scăzută după o oprire cu succes. Combinând aceste două caracteristici, este posibil să creați un comutator de pornire / oprire software pentru microscop.

Să începem de la partea software, primul lucru pe care trebuie să-l faceți este să activați această caracteristică a dispozitivului Pi și să-l scoateți într-o logică înaltă pe un pin GPIO din momentul în care începe să pornească și o logică scăzută după o oprire reușită.

Faceți acest lucru este foarte simplu, tot ce trebuie să faceți este să vă editați fișierul /etc/config.txt, sudo mount -o remontați, rw / boot

sudo nano /boot/config.txt

și adăugați următoarea linie la sfârșitul acesteia, dtoverlay = gpio-poweroff, gpiopin = 26, active_low

Acum, dacă reporniți Raspberry și măsurați tensiunea la pinul GPIO26 (pinul 37 de pe antetul GPIO) în raport cu solul, ar trebui să vedeți 3,3V din momentul în care Pi începe să pornească. Și după ce ați făcut o oprire completă, care ar trebui să devină 0V.

Acum, după ce ați făcut acest lucru, trebuie să scrieți un script simplu care să monitorizeze starea unui al doilea pin GPIO și când devine scăzut, declanșează o oprire. În acest scop, va trebui să instalați pachetul wiringpi, care vine împreună cu comanda gpio.

sudo mount -o remontați, rw /

sudo apt-get update sudo apt-get install wiringpi

Acum folosind nano creați scriptul, sudo nano /usr/local/sbin/power-button.sh

și lipiți în rândurile următoare, #! / bin / bash

în timp ce este adevărat faceți dacă (($ (gpio read 24) == 0)) atunci systemctl poweroff fi sleep 1 done

și după salvare și ieșire, de asemenea, faceți executabil, sudo chmod + x /usr/local/sbin/power-button.sh

Este important să menționăm că pinul 24 al cablajului corespunde pinului GPIO19, care este pinul 35 de pe antetul GPIO. Dacă sună confuz, puteți arunca o privire la pinout-ul Raspberry Pi de pe site-ul pinout.xyz și pagina web despre pinii de pe wiringpi.com. Rularea comenzii gpio readall poate fi de asemenea utilă pentru a determina care pin este care.

Apoi, trebuie să creați un fișier de serviciu systemd, sudo nano /etc/systemd/system/power-button.service

cu următorul conținut, [Unitate]

Descriere = Monitorizarea butonului de alimentare după = network-online.target Wants = network-online.target [Service] ExecStart = / usr / local / sbin / power-button.sh StandardOutput = jurnal + consolă Restart = on-failure [Install] WantedBy = multi-user.target

În cele din urmă, pentru a porni serviciul și a-l face să ruleze la pornire, sudo systemctl start power-button.service

sudo systemctl activate power-button.service

și montați din nou sistemul de fișiere ca numai în citire cu, sudo mount -o remonta, ro /

Pasul 11: Făcând-o portabilă: Hardware

Făcându-l portabil: Hardware
Făcându-l portabil: Hardware
Făcând-o portabilă: Hardware
Făcând-o portabilă: Hardware
Făcându-l portabil: Hardware
Făcându-l portabil: Hardware
Făcându-l portabil: Hardware
Făcându-l portabil: Hardware

Acum este timpul pentru partea hardware. În primul rând, trebuie să construiți un circuit foarte simplu care constă dintr-un tranzistor NPN, două rezistențe și un comutator momentan DPST. Puteți privi imaginea schemei circuitului pentru mai multe detalii.

De asemenea, va trebui să lipiți un antet pin masculin pe GPIO al Raspberry Pi și, de asemenea, unul feminin pe PowerBoost, astfel încât să puteți atașa cu ușurință acest lucru și Pi pe placa pe care urmează să o construiți. În esență, placa dvs. va fi atașată deasupra Pi Zero ca un HAT, iar PowerBoost deasupra plăcii. De asemenea, Pi va fi alimentat direct din antetul GPIO folosind pinul + 5V al PowerBoost.

După ce ați terminat lipirea, este timpul să puneți totul împreună. Mai întâi, montați Pi pe partea mobilă a etrierului utilizând legături cu fermoar. Apoi montați bateria pe partea din spate a plăcii pe care ați construit-o din nou cu o cravată cu fermoar și atașați-o pe Pi, aveți grijă să nu o strângeți prea mult sau s-ar putea să deteriorați bateria. Atașați placa PowerBoost deasupra și conectați bateria la conector. Nu în ultimul rând, conectați cablul camerei și conectați Pi la modulul camerei și, bineînțeles, nu uitați să conectați microSD-ul.

Și am terminat în sfârșit! Dacă apăsați acum butonul de alimentare și continuați să-l apăsați timp de aproximativ 8 secunde, procesul de pornire al Pi ar trebui să înceapă și, după eliberare, ar trebui să continue. Din păcate, Pi nu începe imediat să scoată logica pe GPIO26, așa că dacă opriți apăsarea butonului prea curând, alimentarea va fi întreruptă.

După finalizarea procesului de pornire, apăsarea din nou a butonului de pornire timp de aproximativ o secundă ar trebui să provoace oprirea dispozitivului Pi și întreruperea alimentării.

Pasul 12: Idei de îmbunătățire

Idei pentru îmbunătățire
Idei pentru îmbunătățire
Idei pentru îmbunătățire
Idei pentru îmbunătățire
Idei pentru îmbunătățire
Idei pentru îmbunătățire

A scăpa de sursele de lumină nedorite

Acest lucru nu ar trebui să conteze prea mult dacă intenționați să utilizați microscopul doar pentru lipire și inspecție la bord, dar dacă doriți să faceți și câteva fotografii cu el, este posibil să găsiți o pată roșie enervantă care apare în fotografiile dvs. Acest lucru este cauzat de LED-ul modulului camerei, care este întotdeauna aprins în timp ce camera funcționează.

Dacă doriți să o opriți din fericire, este destul de simplu de făcut. După ce ați făcut scrierea partiției / boot, sudo mount -o remontați, rw / boot

editați /boot/config.txt folosind nano, sudo nano /boot/config.txt

și adăugați următoarea linie la sfârșit, disable_camera_led = 1

Dacă faceți acest lucru, LED-ul camerei va rămâne stins, după repornirea sistemului.

Acum, dacă ați făcut versiunea portabilă, PowerBoost 1000C are, din păcate, un LED albastru ridicol de strălucitor pentru a indica faptul că alimentarea este pornită. Că, în afară de ruinarea expunerii imaginilor, s-ar putea să vă fie extrem de enervant pentru ochi în timp ce lipiți, doar din cauza cât de strălucitoare este.

Din acest motiv, poate doriți să luați în considerare îndepărtarea completă a LED-ului de alimentare sau a rezistorului care este în serie cu acesta. Alternativ, poate doriți să înlocuiți rezistorul 1K care este în serie cu acesta cu unul mai mare, astfel încât LED-ul să devină mai slab.

Mărire reglabilă

În loc să obțineți un modul de cameră Raspberry Pi obișnuit și să-l hackerați pentru a-i schimba distanța focală, dacă nu vă deranjează să economisiți câțiva bani în plus, puteți obține și un modul de cameră cu o distanță focală reglabilă, pentru puțin peste 20 € de la eBay.

Un astfel de modul de cameră vă va permite să reglați cu ușurință nivelul de mărire, deoarece pe măsură ce mișcați camera mai jos, tot ce trebuie să faceți este să deșurubați puțin obiectivul pentru a focaliza. Acest lucru vă va permite, de asemenea, să atingeți cu ușurință niveluri destul de mari de mărire. Rețineți însă că, după un punct, adâncimea câmpului va deveni atât de înghițită încât va face microscopul aproape inutilizabil, așa cum puteți vedea și în imaginea atașată.

Așadar, pentru a rezuma, dacă vă permiteți, vă recomand să obțineți în schimb unul dintre aceste module de cameră, deoarece vă va oferi o cantitate incredibilă de flexibilitate.

Concurs de microcontrolere 2017
Concurs de microcontrolere 2017
Concurs de microcontrolere 2017
Concurs de microcontrolere 2017

Premiul II la concursul de microcontrolere 2017

Recomandat: