Cov txheej txheem:

UWB Localization Feather: 6 Kauj Ruam
UWB Localization Feather: 6 Kauj Ruam

Video: UWB Localization Feather: 6 Kauj Ruam

Video: UWB Localization Feather: 6 Kauj Ruam
Video: 3D dynamic testing UWB IMU indoor localization performance using robotic arm 2024, Hlis ntuj nqeg
Anonim
UWB Localization Feather
UWB Localization Feather

Ultra-WideBand Feather suav nrog Decawave DWM1000 module thiab ATSAMD21 ARM Cortex M0 rau hauv Adafruit plaub daim foos. DWM1000 tus qauv yog IEEE802.15.4-2011 UWB ua raws cov qauv tsis muaj peev xwm ntawm qhov chaw nyob sab hauv tsev thiab cov ntaub ntawv siab, ua rau lub rooj tsavxwm no zoo tshaj rau cov phiaj xwm neeg hlau uas xav tau kev hloov chaw.

Nta:-Decawave DWM1000 rau kev taug qab qhov tseeb – ARM Cortex M0 kom nrawm & muaj zog thov – Adafruit Feather tau tshaj los koom ua ke nrog cov thoob ntiaj teb uas twb muaj lawm – SWD interface rau kev ua haujlwm thiab debugging daim ntawv thov – USB-C txuas – Sib cuam tshuam LiPo roj teeb

Rau tag nrho txoj haujlwm sau thiab hloov kho tshiab saib qhov haujlwm no ntawm kuv qhov chaw Prototyping Corner ntawm prototypingcorner.io/projects/uwb-feather

Cov khoom siv kho vajtse thiab software rau qhov haujlwm no muaj los ntawm GitHub Repository.

Kauj Ruam 1: Tsim Kho Vajtse

Kho vajtse Tsim
Kho vajtse Tsim
Kho vajtse Tsim
Kho vajtse Tsim
Kho vajtse Tsim
Kho vajtse Tsim

Raws li tau hais hauv kev taw qhia, UWB Feather muaj ATSAMD21 ARM Cortext M0+ rau lub paj hlwb thiab Decawave DWM1000 tus qauv rau lub dav hlau dav tshaj plaws, hauv plaub daim ntawv-yam. Kev tsim qauv yog qhov yooj yim suav nrog 20 BoM cov khoom ntawm 2-txheej PCB. Pinout yog Adafruit M0 Feather tau tshaj

Kev them nyiaj LiPo yog tswj hwm los ntawm MCP73831 ib leeg-tes, suav nrog kev tswj tus nqi tswj. Roj teeb hluav taws xob tuaj yeem saib xyuas ntawm D9, txawm li cas los xij yog nkag mus rau txhua qhov IO xav tau, JP1 tuaj yeem txiav kom tsis txhob rub tus pin no. Kev tswj hwm 3.3 volt tau npaj ua ntej los ntawm AP2112K-3.3 qhov kev tso tawm qis qis qis, muab txog li 600mA.

Pinout tau ua tiav nrog Adafruit M0 plaub kab kom yooj yim nqa tau cov cai. DWM1000 IO kab txuas nrog SPI tsheb npav thiab cov lej digital 2, 3 & 4 rau RST, IRQ & SPI_CS hwm (uas tsis nthuav tawm ntawm lub taub hau). D13 tseem txuas nrog lub onboard LED, raws li tus qauv ntawm ntau pawg Arduino-tau tshaj.

Qhov kev zov me nyuam tuaj yeem ua ntej dhau ntawm SWD lub taub hau lossis ntawm USB yog thauj nrog lub bootloader sib xws xws li uf2-samdx1 los ntawm Microsoft. Saib firmware rau ntxiv.

Nco ntsoov ntawm V1.0

Muaj qhov teeb meem nrog USB-C txuas ntawm version 1 ntawm pawg thawj coj no. Cov hneev taw uas kuv siv tsis suav nrog qhov txiav tawm uas xav tau rau kev txiav tawm txoj hauv kev ntawm cov khoom siv no.

Version 1.1 yuav suav nrog kho qhov no ntxiv rau ntxiv rau micro-b txuas rau cov uas xav tau. Saib version 1.1 kev txiav txim siab hauv qab no.

Txog Cov Nqi Ntawm Cov Khoom Siv thiab Kho Vajtse Version 1.1 kev txiav txim siab saib pom qhov haujlwm sau.

Kauj ruam 2: Sib dhos

Los ua ke
Los ua ke
Los ua ke
Los ua ke
Los ua ke
Los ua ke
Los ua ke
Los ua ke

Nrog tsuas yog 20 BoM cov khoom thiab cov khoom siv feem ntau tsis pub tsawg dua 0603 (2x siv lub tshuab ua kua siv lead ua kua yog 0402), kev sib dhos ntawm lub rooj tsavxwm no yooj yim. Kuv muaj PCB thiab cov ntawv nplaum uas tsim los ntawm JLCPCB hauv cov xim dub nrog ENIG nto tiav.

Tag nrho tus nqi rau 5 cov laug cam (txawm hais tias 10 tsis muaj tus nqi sib txawv) thiab stencil yog $ 68 AUD, txawm li cas los $ 42 ntawm qhov uas tau xa khoom. Thawj zaug xaj los ntawm JLCPCB thiab cov laug cam tau zoo heev nrog kev ua tiav.

Kauj ruam 3: Firmware: Programming Bootloader

Firmware: Programming Bootloader
Firmware: Programming Bootloader
Firmware: Programming Bootloader
Firmware: Programming Bootloader
Firmware: Programming Bootloader
Firmware: Programming Bootloader

Firmware tuaj yeem thauj khoom hla tus SWD txuas siv tus programmer xws li J-Txuas los ntawm Segger. Qhia saum toj no yog J-Link EDU Mini. Txhawm rau pib tsim lub rooj tsavxwm, peb yuav tsum thauj peb lub bootloader tom qab teeb tsa peb cov cuab yeej saw.

Kuv yuav siv Atmel Studio rau kev ua kom pom lub bootloader. Txhawm rau ua li ntawd, ntsaws rau hauv J-Txuas thiab qhib Atmel Studio. Tom qab ntawv xaiv Cov Cuab Yeej> Ntaus Ntawv Sau Npe. Hauv Cov Cuab Yeej xaiv J-Txuas thiab teeb tsa Device rau ATSAMD21G18A tom qab ntawv nyem Thov.

Txuas J-Txuas mus rau plaub SWD lub taub hau thiab siv lub zog los ntawm USB lossis ntawm lub roj teeb. Thaum txuas nrog, hauv qab Ntaus Npe Kos Npe nyem Nyeem. Cov cuab yeej kos npe thiab Lub Hom Phiaj Cov Hluav Taws Xob cov ntawv yuav tsum nthuav tawm raws li. Yog tias lawv tsis tshuaj xyuas qhov txuas thiab sim dua.

Txhawm rau nyem lub bootloader peb thawj zaug yuav tsum tau lov tes taw BOOTPROT fuse. Txhawm rau ua qhov no xaiv Fuses> USER_WORD_0. NVMCTRL_BOOTPROT thiab hloov mus rau 0 Bytes. Nyem qhov program txhawm rau rub cov kev hloov pauv.

Tam sim no peb tuaj yeem nyem lub bootloader los ntawm kev xaiv Memories> Flash thiab teeb tsa qhov chaw ntawm bootloader. Xyuas kom Erase Flash ua ntej xaiv lub program thiab nyem rau Program. Yog tias txhua yam mus tau zoo D13 ntawm lub rooj tsavxwm yuav tsum pib ua pa.

Tam sim no koj yuav tsum teeb tsa BOOTPROT fuse rau 8kB bootloader loj. Txhawm rau ua qhov no xaiv Fuses> USER_WORD_0. NVMCTRL_BOOTPROT thiab hloov mus rau 8192 Bytes. Nyem qhov program rub tawm qhov hloov pauv.

Tam sim no hais tias lub bootloader tau flashed D13 yuav tsum tau pulsing thiab yog tias ntsaws rau hauv USB, cov khoom ntim loj yuav tsum tshwm sim. Nov yog qhov uas UF2 cov ntaub ntawv tuaj yeem rub tawm rau kev teeb tsa lub rooj tsavxwm.

Kauj ruam 4: Firmware: Flashing Code With PlatformIO

Firmware: Flashing Code With PlatformIO
Firmware: Flashing Code With PlatformIO
Firmware: Flashing Code With PlatformIO
Firmware: Flashing Code With PlatformIO

Firmware tuaj yeem tso rau hauv UF2 raws tu qauv lossis ncaj qha los ntawm SWD interface. Ntawm no peb yuav siv PlatformIO rau nws qhov yooj yim thiab yooj yim. Txhawm rau pib tsim qhov phiaj xwm PIO tshiab thiab xaiv Adafruit Feather M0 ua pawg phiaj xwm. Thaum rub tawm hla SWD nrog J-Link teeb tsa upload_protocol hauv platformio.ini raws li qhia hauv qab no.

[env: adafruit_feather_m0] platform = atmelsam board = adafruit_feather_m0 moj khaum = arduino upload_protocol = jlink

Tam sim no koj tuaj yeem tsim cov phiaj xwm nrog kev yooj yim ntawm Arduino lub moj khaum.

Kauj ruam 5: Firmware: Flashing Anchor

Firmware: Flashing Anchor
Firmware: Flashing Anchor
Firmware: Flashing Anchor
Firmware: Flashing Anchor

DWM1000 tus qauv tuaj yeem teeb tsa los ua tus thauj tog rau nkoj lossis cim npe. Feem ntau cov thauj tog rau nkoj tau khaws cia ntawm qhov chaw zoo li qub thiab cov cim npe siv cov thauj tog rau nkoj kom tau txais txoj haujlwm txheeb ze rau lawv. Txhawm rau sim DWM1000 tus qauv koj tuaj yeem tso DW1000-Anchor piv txwv los ntawm GitHub chaw cia khoom.

Txhawm rau teeb tsa txoj haujlwm no nrog PlatformIO, los ntawm PIO Tsev, xaiv Qhib Txoj Haujlwm ces nrhiav qhov chaw ntawm DW1000-Thauj tog rau nkoj nplaub tshev hauv GitHub chaw cia khoom. Tom qab ntawd nyem rau PIO upload khawm thiab nws yuav siv lub tshuab nrhiav pom qhov kev debug txuas txuas ntxiv (xyuas kom nws tau txuas nrog thiab lub rooj tsavxwm tau siv zog).

Cov ntawv cim npe yuav tsum tau muab xa mus rau lwm lub rooj tsavxwm. Tom qab ntawd cov txiaj ntsig tuaj yeem pom hauv lub davhlau ya nyob twg.

Kauj Ruam 6: Mus Ntxiv

Mus Ntxiv
Mus Ntxiv

Kev txhim kho ntxiv rau txoj haujlwm no yuav suav nrog kev txhim kho ntawm DW1000 lub tsev qiv ntawv tshiab, V1.1 pawg thawj coj hloov lwm txoj haujlwm uas siv cov thev naus laus zis no. Yog tias muaj kev txaus txaus kuv yuav txiav txim siab tsim thiab muag cov laug cam no.

Ua tsaug rau kev nyeem ntawv. Tawm ib qho kev xav lossis kev thuam hauv cov lus hauv qab no thiab nco ntsoov txheeb xyuas qhov phiaj xwm ntawm Prototyping Corner

Pom zoo: