Cov txheej txheem:

XYZ Point Scanner Siv Salvaged Rotary Encoders: 5 Kauj Ruam
XYZ Point Scanner Siv Salvaged Rotary Encoders: 5 Kauj Ruam

Video: XYZ Point Scanner Siv Salvaged Rotary Encoders: 5 Kauj Ruam

Video: XYZ Point Scanner Siv Salvaged Rotary Encoders: 5 Kauj Ruam
Video: Using Point Cloud data in SolidWorks: Scan to 3D 2024, Hlis ntuj nqeg
Anonim
XYZ Point Scanner Siv Salvaged Rotary Encoders
XYZ Point Scanner Siv Salvaged Rotary Encoders

Thaum tau txais ntau tus lej ntawm cov khoom siv kho qhov muag hloov pauv hloov pauv los ntawm kuv qhov chaw ua haujlwm, thaum kawg kuv txiav txim siab ua qee yam lom zem/muaj txiaj ntsig nrog lawv.

Kuv nyuam qhuav yuav lub tshuab luam ntawv 3D tshiab rau kuv lub tsev thiab dab tsi tuaj yeem qhuas nws zoo dua li lub tshuab luam ntawv 3D! Txoj haujlwm no tseem muab sijhawm zoo rau kuv siv kuv lub tshuab luam ntawv 3D los tsim cov khoom uas xav tau.

Khoom siv

Cov khoos phis tawm kho qhov muag thiab cov kho qhov muag sib xws

Arduino UAS

yeem tiv thaiv tsab ntawv tiv thaiv

steel-kab ntsia

nkag mus rau lub tshuab luam ntawv 3D

Kauj Ruam 1: Cov khoos phis tawm kho qhov muag

Cov khoos kas kho qhov muag
Cov khoos kas kho qhov muag
Cov khoos kas kho qhov muag
Cov khoos kas kho qhov muag
Cov khoos kas kho qhov muag
Cov khoos kas kho qhov muag

Yuav luag txhua tus lej nkag teb chaws tuaj yeem siv rau txoj haujlwm no, tsuav nws muab koj nrog tus lej siab ntawm 'nyem' ib lub hli. Pom tseeb qhov sib txawv encoders yuav xav tau kev tsim kho kom haum.

Kuv siv lub ntsuas ntsuas txuas mus txhawm rau txheeb xyuas daim duab kab hluav taws xob rau cov duab-ntsuas.

Kauj Ruam 2: 3D Luam Qhov Chaw

3D Luam Tshooj
3D Luam Tshooj
3D Luam Tshooj
3D Luam Tshooj

Cov ntu no yog lub tsev kho mob thiab muab cov kab xev rau txoj kab tsheb nqaj hlau. Cov tsev nyob ib leeg muaj ob lub qhov nyob tom qab rau txoj kab hla hla kom nce mus. Cov tsev nyob hauv ob lub encoder tsuas yog ob lub tsev sib txuas ua ke ntawm cov ces kaum uas raug.

Kuv tsim cov mounts no ntawm fusion360 kom haum rau kuv xaiv cov encoders thiab cov ntsia, cov ncej ntawm tus lej nkag muaj qhov luv luv ntawm slingshot roj hmab sheath, los pab nws tuav cov hlau tsis muaj ncej zoo dua.

Koj xav kom tus ncej kom swb dawb thiab poob los ntawm lub tsev thaum tuav ntsug, tsis tau nws yuav tsum siv lub zog txaus ntawm tus encoder kom tsis txhob plam. Dab tsi ua haujlwm rau kuv yog tso cai rau swb rau lub taub hau kom sib tshooj nrog lub cav nkag los ntawm 0.5mm. Cov roj hmab slingshot yog mos txaus kom deform los ntawm tus nqi ntawd thiab muab lub zog zoo.

Kauj Ruam 3: Daim Kab Xev

Daim duab thaiv
Daim duab thaiv

Lub voj voog yog yooj yim heev. Opto-sensors xav tau qee qhov tam sim no rau IR emitter diodes, hauv av thiab rub tawm cov tshuaj tiv thaiv rau cov duab-diodes.

Kuv txiav txim siab ntawm 5mA rau hauv-series emitter diodes, hauv qhov tshwj xeeb encoder qhov hluav taws xob poob thoob plaws diodes yog 3.65V. Kuv siv 5V muab los ntawm Arduino, uas tawm 1.35V rau tus tiv thaiv, ntawm 5mA qhov no ua haujlwm kom tau 270 ohm.

10k ohm tau raug xaiv rau rub-ups raws li daim duab-diodes tsuas tuaj yeem tso dej me me tam sim no, 10k ohm kuj tseem siv rau lub laub khawm. Muaj lub pob muaj rau siv rau ntawm pawg thawj coj uas twb tau txuas nrog hauv av, tsuas yog muab nws nrog rub tawm tus tiv thaiv thiab xaim nws mus rau qhov xav tau tus pin.

Kauj ruam 4: Arduino Code

Arduino Txoj Cai
Arduino Txoj Cai
Arduino Txoj Cai
Arduino Txoj Cai
Arduino Txoj Cai
Arduino Txoj Cai

Txoj cai xav tau kev piav qhia me ntsis vim tias nws txoj haujlwm yuav tsis pom meej tam sim, tab sis nws yuav tsum tau ua kom zoo li no kom muaj peev xwm ua tau 3 tus lej nkag sai sai.

Ua ntej peb tsuas yog xav ua cov ntaub ntawv qhia yog tias muaj kev hloov pauv hauv txoj haujlwm encoder.

hloov = new_value ^ khaws tus nqi;

Txhawm rau kom tau txais kev daws teeb meem ntau dua los ntawm kuv cov encoders Kuv yuav tsum tau ua ob qho tib si nce thiab nqis.

Ntawm kuv teeb kuv qhov kev daws teeb meem yog 24 nyem rau 1cm.

Qhov no tawm peb nrog qee qhov xwm txheej.

S1 tsis tu ncua 0 thiab S2 hloov pauv los ntawm 0 txog 1

S1 tsis tu ncua 0 thiab S2 hloov pauv los ntawm 1 txog 0

S1 tsis tu ncua 1 thiab S2 toggles ntawm 0 txog 1

S1 tsis tu ncua 1 thiab S2 toggles ntawm 1 txog 0

S2 yog 0 thiab S1 toggled ntawm 0 rau 1

S2 yog 0 thiab S1 toggled ntawm 1 txog 0

S2 tsis tu ncua 1 thiab S1 toggles ntawm 0 txog 1

S2 tsis tu ncua 1 thiab S1 toggles ntawm 1 txog 0

Cov xwm txheej no tau nkag siab zoo dua hauv qhov tseeb-cov lus saum toj no, tseem txhua qhov xwm txheej ua rau 'kev coj ua', xaiv yam tsis raug npe 0 lossis 1.

Cov kab ntawv muab rau peb ob lub ntsiab lus tseem ceeb:

1) ib daim ntawv yog qhov ua tiav ntawm lwm qhov, yog li yog peb muaj ib qho, peb tuaj yeem suav tau yooj yim dua lwm qhov los ntawm kev hloov pauv qhov tso tawm. Peb hloov qhov tso tawm tsuas yog ib tus pin hloov pauv thiab tsis yog lwm qhov, peb tuaj yeem xaiv ib qho raws li xav tau.

2) daim duab nws tus kheej tsuas yog XOR ntawm S1 thiab S2 cov cim. (lwm daim duab tsis yog qhov no).

Tam sim no nkag siab cov cai yog yooj yim.

// nyeem hauv PORT hauv kev sib luag // nco qab cov khub uas nyob nrog tib lub xeev encoder = PINB & 0x3f; // dab tsi pins tau hloov pauv yog tias muaj qhov txawv = tuav ^ xeev; // XOR nyob ib sab S1 thiab S2 cov cim kom tau txais lub rooj tseeb // txoj kev yooj yim tshaj plaws yog ua daim ntawv theej ntawm lub xeev tam sim no // thiab hloov nws mus rau sab xis los ntawm ib qho me ntsis saib = xeev >> 1; // tam sim no cov khoom tau sib dhos rau XOR dir = nrhiav ^ lub xeev; // nco ntsoov, lub rooj xav tau hloov pauv yog tias ib qho // ntawm cov tswv yim tseem nyob tas li, peb tsis xav tau IF // nqe lus rau qhov no. Tam sim no qhov xav tau me ntsis // yog sab tes xis me ntsis ntawm txhua khub hauv 'dir' sib txawv // sab laug tes me ntsis tsis muaj qab hau // qhov 'sib txawv' sib txawv muaj qhov hloov pauv me me 'teeb tsa' // yog li peb ib txwm muaj '01' lossis '10' // XOR qhov no nrog 'dir' byte yuav yog // thim rov qab lossis tsis yog lub ntsiab lus me ntsis. dir ^= sib; // tam sim no hloov tshiab tuav tuav sib txawv tuav = xeev; // yog ob qho me me tau hloov pauv rau tus lej ntsuas no yog (sib txawv & 0x03) {// txiav txim siab kev taw qhia yog (dir & 0x01) {// raws li koj li hadware thiab thaiv ob qho ++ lossis ---z; } lwm {++ z; }} // ditto rau tus so yog (diff & 0x0c) {yog (dir & 0x04) {++ y; } lwm {--y; }} yog (sib txawv & 0x30) {yog (dir & 0x10) {--x; } lwm {++ x; }}

Thaum lub pob nyem peb xa tus nqi XYZ tam sim no mus rau qhov kev pabcuam dav dav.

Cov ntaub ntawv xov xwm tau qeeb, tab sis thaum lub sijhawm ua haujlwm ib txwm ua txoj haujlwm ntawm tus lej nkag yuav tsis hloov pauv nyob rau lub sijhawm no lawm.

Cov ntaub ntawv raug xa raws li cov ntaub ntawv raw. Koj tuaj yeem ua lej thiab xa cov ntaub ntawv hauv mm lossis ntiv tes thiab lwm yam. Kuv pom cov txiaj ntsig nyoos tsuas yog qhov zoo vim tias peb tuaj yeem ntsuas qhov khoom tom qab hauv software.

Kauj ruam 5: Thawj Scan

Thawj Scan
Thawj Scan
Thawj Scan
Thawj Scan
Thawj Scan
Thawj Scan
Thawj Scan
Thawj Scan

Kev sib sau cov ntsiab lus yog txheej txheem qeeb, kuv ua lub hauv paus sojntsuam ntawm lub ces kaum sab saud thiab rov pib dua Arduino.

Qhov xoom no txoj haujlwm zoo li tsev.

Tom qab ntawd txav tus sojntsuam mus rau qhov chaw ntawm lub hom phiaj, tuav nws khov kho thiab nias lub pob 'snapshot'.

Txog qhov piv txwv qhov loj me no kuv tsuas yog siv ~ 140 cov ntsiab lus, yog li nthuav dav tsis zoo ntawm qhov khoom kawg.

Txuag cov ntaub ntawv rau hauv. PCD cov ntaub ntawv, thiab ntxiv lub taub hau

#. PCD v.7 - Point Cloud Data file formatVERSION.7 FIELDS x y z SIZE 4 4 4 HOM FF F COUNT 1 1 1 WIDTH (koj cov ntsiab lus suav) Qhov siab 1 VIEWPOINT 0 0 0 0 0 0 0 0 POINTS (koj cov ntsiab lus suav)

Muab koj cov ntsiab lus suav rau hauv lub taub hau, qhov no yooj yim ntawm txhua tus kws kho mob uas muab koj nrog kab lej.

Saum toj no cov dots tuaj yeem pom hauv freeCad, tom qab ntawd lawv tau xa tawm los ntawm freeCad li. PLY cov ntaub ntawv.

Qhib lub. PLY ntawm MeshLab thiab ntov cov khoom. Ua !!

Pom zoo: