Përmbajtje:
- Hapi 1: Lista e materialeve
- Hapi 2: Ndërtimi i një shtrëngimi me lazer dhe kamera
- Hapi 3: Drejtimi i Laser dhe LCD
- Hapi 4: Zbulimi i lazerit duke përdorur OpenCV
- Hapi 5: Kalibrimi i Range Finder
- Hapi 6: Matja e Distancave
Video: Bërja e Rangefinder duke përdorur një lazer dhe një aparat fotografik: 6 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:22
Aktualisht jam duke planifikuar disa punë të brendshme për pranverën e ardhshme, por pasi sapo bleva një shtëpi të vjetër nuk kam ndonjë plan shtëpie. Fillova të mas distancat mur me mur duke përdorur një vizore, por është i ngadalshëm dhe i prirur ndaj gabimeve. Mendova për të blerë një distancë për të lehtësuar procesin, por më pas gjeta një artikull të vjetër në lidhje me ndërtimin e distancuesit të tij duke përdorur një lazer dhe një aparat fotografik. Siç doli, unë i kam ato përbërës në punëtorinë time.
Projekti bazohet në këtë artikull:
Dallimi i vetëm është se unë do të ndërtoj distancën duke përdorur një Raspberry Pi Zero W, një LCD dhe modulin Raspberry Pi Camera. Unë gjithashtu do të përdor OpenCV për të gjetur lazer.
Unë do të supozoj se ju jeni një specialist i teknologjisë dhe se jeni të kënaqur duke përdorur Python dhe vijën e komandës. Në këtë projekt unë jam duke përdorur Pi në mënyrë pa kokë.
Le të fillojmë!
Hapi 1: Lista e materialeve
Për këtë projekt, do t'ju duhet:
- një lazer i lirë 6mm 5mW
- një rezistencë 220 Ω
- një transistor 2N2222A ose diçka ekuivalente
- një Raspberry Pi Zero W
- një Kamera Raspberry Pi v2
- një ekran Nokia 5110 LCD ose ekuivalent
- disa tela kërcyes dhe një dërrasë e vogël buke
Kam përdorur printerin tim 3d për të shtypur një pjesë që më ndihmoi gjatë eksperimenteve. Unë gjithashtu planifikoj të përdor printerin 3d për të ndërtuar një mbyllje të plotë për gjetësin e diapazonit. Ju mund të bëni plotësisht pa.
Hapi 2: Ndërtimi i një shtrëngimi me lazer dhe kamera
Sistemi supozon një distancë fikse midis lenteve të kamerës dhe daljes së lazerit. Për të lehtësuar testet, unë printova një kompresë në të cilën mund të montoja kamerën, lazerin dhe një qark të vogël drejtimi për lazerin.
Kam përdorur dimensionet e modulit të kamerës për të ndërtuar bazën për kamerën. Kam përdorur kryesisht një caliper dixhital dhe një vizore precize për të bërë matjet. Për lazer, krijova një vrimë 6 mm me pak përforcim për të siguruar që lazeri nuk do të lëvizë. Unë u përpoqa të mbaja hapësirë të mjaftueshme për të rregulluar një dërrasë të vogël buke në pjesën e prapme të figurës.
Kam përdorur Tinkercad për ndërtimin, modelin mund ta gjeni këtu:
Ekziston një distancë prej 3.75 cm midis qendrës së lentes lazer dhe qendrës së lenteve të kamerës.
Hapi 3: Drejtimi i Laser dhe LCD
Ndoqa këtë tutorial https://www.algissalys.com/how-to/nokia-5110-lcd-on-raspberry-pi për të drejtuar ekranin LCD me Raspberry Pi Zero. Në vend që të redaktoni skedarin /boot/config.txt, mund të aktivizoni ndërfaqen SPI duke përdorur sudo raspi-config përmes vijës së komandës.
Unë jam duke përdorur Raspberry Pi Zero në mënyrë pa kokë duke përdorur më të fundit, në datën, Raspbian Stretch. Unë nuk do të mbuloj instalimin në këtë Instructable, por ju mund të ndiqni këtë udhëzues: https://medium.com/@danidudas/install-raspbian-jessie-lite-and-setup-wi-fi-without-access-to- linja e komandës-ose-përdorimi-i-rrjetit-97f065af722e
Për të pasur një pikë lazeri të ndritshme, unë jam duke përdorur binarët 5V të Pi. Për këtë, unë do të përdor një transistor (2N2222a ose ekuivalent) për të drejtuar lazerin duke përdorur GPIO. Një rezistencë 220 Ω në bazën e tranzistorit lejon rrymë të mjaftueshme përmes lazerit. Unë jam duke përdorur RPi. GPIO për të manipuluar Pi GPIO. Unë e lidha bazën e tranzistorit me kunjin GPIO22 (kunja e 15 -të), emetuesin në tokë dhe kolektorin me diodën lazer.
Mos harroni të aktivizoni ndërfaqen e kamerës duke përdorur sudo raspi-config përmes vijës së komandës.
Ju mund ta përdorni këtë kod për të testuar konfigurimin tuaj:
Nëse gjithçka shkoi mirë, duhet të keni një skedar dot-j.webp
Në kod, ne konfigurojmë kamerën dhe GPIO, pastaj aktivizojmë lazerin, kapim imazhin dhe çaktivizojmë lazerin. Ndërsa jam duke punuar me Pi në mënyrë pa kokë, më duhet të kopjoj imazhet nga Pi im në kompjuterin tim para se t'i shfaq ato.
Në këtë pikë, pajisja juaj duhet të konfigurohet.
Hapi 4: Zbulimi i lazerit duke përdorur OpenCV
Së pari, ne duhet të instalojmë OpenCV në Pi. Në thelb keni tre mënyra për ta bërë atë. Ju ose mund të instaloni versionin e vjetër të paketuar me apt. Ju mund të përpiloni versionin që dëshironi, por në këtë rast koha e instalimit mund të shkojë deri në 15 orë dhe shumica e tij për përpilimin aktual. Ose, qasja ime e preferuar, mund të përdorni një version të përpiluar paraprakisht për Pi Zero që ofrohet nga një palë e tretë.
Për shkak se është më e thjeshtë dhe më e shpejtë, kam përdorur një paketë të palëve të treta. Ju mund të gjeni hapat e instalimit në këtë artikull: https://yoursunny.com/t/2018/install-OpenCV3-PiZero/ Provova shumë burime të tjera, por paketat e tyre nuk ishin të përditësuara.
Për të gjurmuar një tregues lazer, azhurnova kodin nga https://github.com/bradmontgomery/python-laser-tracker për të përdorur modulin e kamerës Pi në vend të një pajisjeje USB. Ju mund të përdorni drejtpërdrejt kodin nëse nuk keni një modul kamera Pi dhe dëshironi të përdorni një aparat USB.
Kodin e plotë mund ta gjeni këtu:
Për të ekzekutuar këtë kod do t'ju duhet të instaloni paketat Python: jastëk dhe picamera (sudo pip3 instaloni jastëk picamera).
Hapi 5: Kalibrimi i Range Finder
Në artikullin origjinal, autori hartoi një procedurë kalibrimi për të marrë parametrat e kërkuar për të transformuar koordinatat y në një distancë aktuale. Kam përdorur tryezën e dhomës time të jetesës për kalibrimet dhe një copë të vjetër kraft. Çdo 10 cm ose më shumë vura re koordinatat x dhe y në një spreadsheet: https://docs.google.com/spreadsheets/d/1OTGu09GLAt… Për të siguruar që gjithçka ka funksionuar si duhet, në çdo hap, kam kontrolluar imazhet e kapura për të parë nëse lazeri u gjurmua saktë. Nëse përdorni një lazer të gjelbër ose nëse lazeri juaj nuk është gjurmuar saktë, do t'ju duhet të rregulloni ngjyrën, ngopjen dhe pragun e vlerës së programit në përputhje me rrethanat.
Pasi të bëhet faza e matjes, është koha për të llogaritur në fakt parametrat. Ashtu si autori kam përdorur një regresion linear; në fakt Google Spreadsheet bëri punën për mua. Pastaj i ripërdori ato parametra për të llogaritur një distancë të vlerësuar dhe për ta kontrolluar atë me distancën aktuale.
Tani është koha për të injektuar parametrat në programin e distancës për të matur distancat.
Hapi 6: Matja e Distancave
Në kodin: https://gist.github.com/kevinlebrun/e767a46855e5fd501d820e1c5fcc527c I përditësova variablat HEIGHT, GAIN dhe OFFSET sipas matjeve të kalibrimit. Kam përdorur formulën e distancës në artikullin origjinal për të vlerësuar distancën dhe kam shtypur distancën duke përdorur ekranin LCD.
Kodi së pari do të konfigurojë kamerën dhe GPIO, pastaj ne duam të ndezim dritën e pasme të LCD për të parë më mirë matjet. Hyrja LCD është e kyçur në GPIO14. Çdo 5 sekonda ose më shumë, ne do të:
- aktivizoni diodën lazer
- kapni imazhin në kujtesë
- çaktivizoni diodën lazer
- gjurmoni lazerin duke përdorur filtrat e gamës HSV
- shkruani imazhin që rezulton në disk për qëllim të korrigjimit
- njehsoni distancën bazuar në koordinatën y
- shkruani distancën në ekranin LCD.
Sidoqoftë, masat janë shumë të sakta dhe mjaft të sakta për rastin tim të përdorimit, ka shumë vend për përmirësime. Për shembull, pika lazer është e një cilësie shumë të dobët dhe linja lazer nuk është me të vërtetë e përqendruar. Me një lazer të cilësisë më të mirë, hapat e kalibrimit do të jenë më të saktë. Edhe kamera nuk është vërtet e pozicionuar mirë në kompresën time, ajo anon në fund.
Unë gjithashtu mund të rris rezolucionin e distancuesit duke e rrotulluar kamerën me 90º duke përdorur të plotë me dhe për të rritur rezolucionin në maksimumin e mbështetur nga kamera. Me zbatimin aktual ne jemi të kufizuar në një gamë 0 deri në 384 piksele, ne mund të rrisim kufirin e sipërm në 1640, 4 herë më shumë se rezolucioni aktual. Distanca do të jetë edhe më e saktë.
Si vazhdime, do të më duhet të punoj në përmirësimet e sakta që përmenda më lart dhe të ndërtoj një rrethim për distancuesin. Rrethimi do të duhet të jetë i një thellësie të saktë për të lehtësuar matjet nga muri në mur.
Në tërësi sistemi aktual është i mjaftueshëm për mua dhe do të më kursejë disa dollarë duke bërë planin e shtëpisë time!
Recommended:
Një makinë për frikësimin e Halloween -it duke përdorur një PIR, një kungull të printuar në 3D dhe një Pranker audio të pajtueshme me Troll Arduino/Bordi praktik i Shakasë.: 5 Hapa
Një makinë për frikësimin e Halloween -it duke përdorur një PIR, një kungull të printuar në 3D dhe Tran Arduino Compatible Audio Pranker/Joke Board praktike .: Bordi Troll i krijuar nga Patrick Thomas Mitchell i EngineeringShock Electronics, dhe u financua plotësisht në Kickstarter jo shumë kohë më parë. Unë mora shpërblimin disa javë më parë për të ndihmuar në shkrimin e disa shembujve të përdorimit dhe ndërtimin e një biblioteke Arduino në një përpjekje
Si të bëni një dron duke përdorur Arduino UNO - Bëni një kuadopter duke përdorur mikrokontrollues: 8 hapa (me fotografi)
Si të bëni një dron duke përdorur Arduino UNO | Bëni një Quadcopter Duke përdorur Mikrokontrolluesin: HyrjeVizitoni Kanalin Tim në YoutubeNjë drone është një vegël (produkt) shumë e shtrenjtë për të blerë. Në këtë postim do të diskutoj, si ta bëj me çmim të ulët ?? Dhe si mund ta bëni tuajin si ky me çmim të lirë … Epo në Indi të gjitha materialet (motorët, ESC -të
Kontrolli i radios RF 433MHZ duke përdorur HT12D HT12E - Bërja e një telekomande Rf duke përdorur HT12E & HT12D Me 433mhz: 5 hapa
Kontrolli i radios RF 433MHZ duke përdorur HT12D HT12E | Bërja e një telekomande Rf duke përdorur HT12E & HT12D Me 433mhz: Në këtë udhëzues do t'ju tregoj se si të bëni një telekomandë RADIO duke përdorur modulin e marrësit të transmetuesit 433mhz me kodim HT12E & IC decoder HT12D. Në këtë udhëzues ju mund të dërgoni dhe merrni të dhëna duke përdorur KOMPONENTE shumë të lirë SI: HT
Bëni bazën e montimit DSLR për më pak se 6 $ duke përdorur tuba PVC (Monopod/Tripod për çdo aparat fotografik): 6 hapa
Bëni DSLR Mount Stand për më pak se 6 $ duke përdorur tuba PVC (Monopod/Tripod për çdo aparat fotografik): Po …. Ju mund ta bëni vetë me vetëm disa tuba PVC dhe T's weightshtë i lehtë … balancedshtë i balancuar në mënyrë të përkryer … shtë i fortë … friendlyshtë personalizues miqësor … Unë jam Sooraj Bagal dhe do të ndaj përvojën time në lidhje me këtë montim të kamerës që kam krijuar për
Si të bëni një aparat fotografik nga një xhirim i pikës së vjetër: 5 hapa (me fotografi)
Si të bëni një aparat fotografik nga një shkrepje e vjetër: Një aparat fotografik është një lloj kthimi romantik i kamerave më themelore të bëra ndonjëherë. Ju mund të bëni një aparat fotografik nga çdo gjë e lehtë, por nëse nuk keni qasje në një dhomë të errët ose kimikate, do t'ju duhet të përdorni një aparat fotografik që merr disa standarde