Cov txheej txheem:

Suab Localizing Mannequin Lub Taub Hau Nrog Kinect: 9 Kauj Ruam (nrog Duab)
Suab Localizing Mannequin Lub Taub Hau Nrog Kinect: 9 Kauj Ruam (nrog Duab)

Video: Suab Localizing Mannequin Lub Taub Hau Nrog Kinect: 9 Kauj Ruam (nrog Duab)

Video: Suab Localizing Mannequin Lub Taub Hau Nrog Kinect: 9 Kauj Ruam (nrog Duab)
Video: Critical Inductions | ABCs of Anaesthesia Boot Camp Series 2024, Lub Xya hli ntuj
Anonim
Suab Localizing Mannequin Lub Taub Hau Nrog Kinect
Suab Localizing Mannequin Lub Taub Hau Nrog Kinect

Ntsib Margaret, kev sim dummy rau tus tsav tsheb qaug zog saib xyuas qhov system. Tsis ntev los no nws tau so los ntawm nws txoj haujlwm thiab pom nws txoj hauv kev mus rau peb chaw ua haujlwm, thiab txij li ntawd tau ua rau cov neeg xav tias nws 'txaus ntshai.' Hauv kev txaus siab rau kev ncaj ncees, Kuv tau muab nws lub peev xwm los fim nws cov neeg liam lub taub hau; es tsis zoo li ua raws koj nrog nws qhov muag tsis pom, tam sim no nws yeej ua tau li ntawd. Lub kaw lus siv lub microphone microphone ntawm Microsoft Kinect thiab servo kom coj nws mus rau qhov kev coj ntawm cov neeg tham ze nws.

Kauj ruam 1: Txoj kev xav

Txoj kev xav
Txoj kev xav

Xam Lub Npe

Thaum peb hnov ib yam dab tsi, tshwj tsis yog lub suab nrov ntawd nyob ntawm peb xub ntiag nws mus txog ib lub pob ntseg ua ntej lwm yam. Peb lub hlwb pom tias tuaj txog qeeb thiab hloov pauv mus rau hauv cov lus qhia dav dav uas lub suab nrov tau los ntawm, tso cai rau peb nrhiav qhov chaw. Peb tuaj yeem ua tiav ib yam zoo ib yam ntawm kev siv hauv ib cheeb tsam siv ob lub microphones. Xav txog daim duab qhia chaw, uas muaj lub khub microphone thiab lub suab los. Yog tias peb tab tom saib saum toj saud, suab tsis yog ncig, tab sis yog tias qhov deb mus rau qhov chaw yog qhov txheeb ze loj rau qhov sib nrug nruab nrab ntawm lub microphones, tom qab ntawd los ntawm qhov pom-ntawm-pom ntawm peb cov sensors lub nthwv dej yog kwv yees li phiaj xwm. Qhov no yog paub tias yog qhov kev xav deb thiab teb cov lej ntawm peb qhov teeb meem.

Yog li xav tias lub wavefront yog txoj kab ncaj. Yog tias lub suab tuaj ntawm sab xis, nws yuav ntaus lub microphone #2 thaum lub sijhawm t2 thiab lub microphone #1 thaum lub sijhawm t1. Qhov deb d lub suab tau mus los ntawm kev ntaus lub microphone #2 thiab lub microphone #1 yog lub sijhawm sib txawv hauv kev txheeb xyuas lub suab sib tw los ntawm kev nrawm ntawm lub suab v:

d = v s *(t1-t2) = vs *Δt

Peb tuaj yeem txheeb qhov kev nrug no mus rau qhov deb d 12 nruab nrab ntawm lub microphone thiab lub kaum sab xis θ los ntawm khub mus rau lub suab qhov chaw nrog kev sib raug zoo:

cos (θ) = d /d 12 = vs*/t /d12

Vim tias peb tsuas muaj ob lub microphones, yuav muaj qhov tsis meej pem hauv peb qhov kev xam xyuas seb lub suab qhov twg yog nyob rau pem hauv ntej lossis tom qab peb. Hauv cov kab ke no, peb yuav xav tias lub suab los ntawm lub hauv ntej ntawm tus khub thiab kaw lub kaum sab xis ntawm 0 degrees (tag nrho rau sab xis ntawm tus khub) txog 180 degrees (tag nrho rau sab laug).

Thaum kawg, peb tuaj yeem daws rau theta los ntawm kev siv cov inverse cosine:

θ = acos (vs*Δt/d12), 0 <= θ <= π

Txhawm rau ua kom lub kaum me ntsis zoo dua qub, peb tuaj yeem rho tawm 90 degrees los ntawm theta, yog li 0 degrees ncaj qha rau ntawm xub ntiag thiab +/- 90 degrees yog sab laug lossis tag nrho txoj cai. Qhov no hloov peb qhov kev nthuav qhia los ntawm qhov rov qab cosine mus rau qhov ntxeev sine.

  • cos (θ-π/2) = sin (θ) = d/d12 = vs*/t/d12
  • θ = asin (vs*Δt/d12), -π/2 <= θ <= π/2

Nrhiav Qhov Ncua Sijhawm

Raws li koj tuaj yeem pom los ntawm kab zauv saum toj no, txhua yam peb yuav tsum tau daws rau lub kaum ntse ntse yog qhov ncua hauv lub suab yoj mus txog ntawm lub microphone ib qho piv rau microphone ob; qhov nrawm ntawm lub suab thiab qhov nrug nruab nrab ntawm lub microphones yog ob qho tib si tsau thiab paub. Txhawm rau ua tiav qhov no, peb xub ua piv txwv lub suab cim ntawm qhov zaus fs, hloov pauv lawv los ntawm analog mus rau digital thiab khaws cov ntaub ntawv rau tom qab siv. Peb coj mus kuaj rau ib lub sijhawm uas hu ua sampling window, uas yog lub sijhawm ntev txaus los ntes qhov sib txawv ntawm peb lub suab yoj. Piv txwv li, peb lub qhov rais tuaj yeem yog qhov kawg ib nrab thib ob tus nqi ntawm cov ntaub ntawv suab.

Tom qab tau txais lub qhov rais qhib lub teeb liab, peb pom qhov ncua sijhawm ntawm ob los ntawm kev suav lawv cov kev sib cuam tshuam. Txhawm rau suav qhov kev sib cuam tshuam sib luag, peb tuav lub qhov rai teeb liab los ntawm ib lub microphone ruaj khov, thiab xaub lub teeb liab thib ob raws lub sijhawm axis los ntawm txhua txoj hauv kev tom qab thawj zaug mus rau txhua txoj hauv kev ua ntej ntawm thawj. Ntawm txhua kauj ruam raws peb swb peb sib tw txhua qhov taw tes hauv peb lub teeb liab ruaj khov los ntawm nws cov ntsiab lus sib xws hauv peb lub teeb liab zawv zawg, tom qab ntawd suav ua ke tag nrho cov txiaj ntsig los suav peb qhov sib piv sib piv rau cov kauj ruam ntawd. Tom qab ua tiav peb cov swb, cov kauj ruam uas muaj qhov sib txuam sib luag zoo tshaj sib haum rau lub ntsiab lus uas ob lub cim qhia zoo tshaj plaws, thiab cov kauj ruam peb tab tom qhia rau peb pes tsawg tus qauv n teeb liab ob yog offset los ntawm teeb liab 1. Yog n tsis zoo, tom qab ntawv teeb liab ob lub lag luam qis dua ib qho, yog tias nws zoo ces teeb liab ob yog ua ntej, thiab yog tias nws yog xoom ces ob qho twb tau ua tiav lawm. Peb hloov qhov piv txwv piv txwv no mus rau ncua sijhawm siv peb qhov piv txwv piv nrog kev sib piv Δt = n/fs, yog li:

θ = asin (vs*n/(d12*fs)), -π/2 <= θ <= π/2

Kauj ruam 2: Cheebtsam

Qhov

  • Microsoft Kinect rau Xbox 360, tus qauv 1414 lossis 1473. Kinect muaj plaub lub microphones tau teeb tsa nyob rau hauv kab ncaj qha peb yuav siv.
  • Kev hloov pauv los hloov Kinect tus tswv cuab txuas rau USB + AC lub zog zoo li qhov no.
  • Raspberry Pi 2 lossis 3 khiav Raspbian Stretch. Kuv xub sim siv Pi 1 Qauv B+, tab sis nws tsis muaj zog txaus. Kuv khaws muaj teeb meem txuas nrog Kinect.
  • Lub taub hau zoo nkauj tshaj plaws uas koj tuaj yeem pom
  • Ib qho analog servo muaj zog txaus los tig koj lub taub hau mannequin
  • Lub 5V USB phab ntsa them nrog lub zog txaus kom muaj zog rau Pi thiab servo thiab tsawg kawg yog ob lub chaw nres nkoj. (Kuv siv 5A 3-chaw nres nkoj ntsaws zoo ib yam li qhov no
  • Ib txoj hlua txuas nrog ob lub qhov hluav taws xob (Ib qho rau USB phab ntsa them nyiaj thiab lwm qhov rau Kinect AC adapter.
  • Ob lub xov tooj USB: ib hom-A rau micro-USB cable txhawm rau lub zog Pi thiab lwm lub zog rau servo uas koj tsis xav txiav
  • Lub platform rau txhua yam los zaum thiab lwm lub platform me rau lub taub hau taub hau. Kuv siv lub tais yas ua lub hauv paus thiab phaj yas ua lub taub hau platform. Ob leeg tau los ntawm Walmart thiab tsuas yog them nqi ob peb duas las
  • 4x #8-32 1/2 "ntsia liaj qhov rooj thiab txiv ntseej los txuas koj cov servo rau lub platform loj dua
  • 2x M3 8mm ntsia liaj qhov rooj nrog lub tshuab ntxhua khaub ncaws (lossis qhov loj me me uas koj xav tau los txuas koj lub tshuab raj rau lub platform me)
  • Ob tug txiv neej-rau-txiv neej jumper xov hlau, ib qho liab thiab ib qho dub, thiab ib tug poj niam-rau-txiv neej jumper xaim
  • Adhesive backed Velcro strips
  • Daim kab xev hluav taws xob
  • Cov kab xev rau kev tswj kab hlau

Cov cuab yeej

  • Dremel nrog txiav log
  • Laum
  • 7/64 ", 11/16", thiab 5/16 "laum ntsis
  • M3 kais (Tsis teb los tau, nyob ntawm koj lub tshuab raj servo)
  • Ntsia Hlau
  • Soldering hlau nrog solder
  • Pab txhais tes (tsis teb los tau)
  • Cim
  • Compass
  • Cov hlua hlau
  • Multimeter (Tsis teb los tau)

PPE

  • Tsom iav kev nyab xeeb
  • Lub ntsej muag lub ntsej muag (rau dremmel-ed cov khoom yas).

Kauj Ruam 3: Qhib Platform Los Ua Ke

Txo Cov Rooj Sib Tham
Txo Cov Rooj Sib Tham
Txo Cov Rooj Sib Tham
Txo Cov Rooj Sib Tham
Txo Cov Rooj Sib Tham
Txo Cov Rooj Sib Tham

Thawj ntu peb yuav ua yog lub platform qis, uas yuav tuav peb Kinect, servo, thiab tag nrho peb cov khoom siv hluav taws xob. Txhawm rau ua lub platform koj yuav xav tau:

  • Yas Pab Tais
  • Servo
  • 4x #8-32 1/2 "ntsia liaj qhov rooj nrog txiv ntoo
  • Dremel nrog Txiav Log
  • Ntsia Hlau
  • Laum
  • 11/16 "Laum Ntsis
  • Cim

Yuav Ua Li Cas

  1. Tig koj lub tais rov qab.
  2. Muab koj cov servo ib sab ze rau tom qab ntawm lub tais, xyuas kom cov iav tso tawm ntawm servo dag raws txoj kab nruab nrab ntawm lub tais, tom qab ntawd kos ib ncig ntawm lub hauv paus ntawm servo.
  3. Siv koj lub dremel thiab txiav lub log, txiav tawm thaj chaw uas koj tau cim, tom qab ntawv xaub koj lub servo rau hauv nws lub qhov.
  4. Kos cov chaw nruab nrab ntawm cov servo vaj tse mounting qhov ntawm lub tais, tom qab ntawd tshem tawm cov servo thiab laum tawm cov qhov nrog koj li 11/16 "laum ntsis. Nws yooj yim heev rau tawg cov yas zoo li qhov no thaum drilling qhov, yog li kuv pom nws muaj kev nyab xeeb dua kom siv lub laum rov qab thiab maj mam muab cov khoom tshem tawm.
  5. Muab koj lub servo rov qab rau hauv lub qhov, tom qab ntawd rub nws mus rau lub tais nrog #8-32 ntsia liaj qhov rooj thiab txiv ntseej.

Kauj Ruam 4: Lub Rooj Sib Tham Lub Taub Hau

Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau
Lub Rooj Sib Tham Lub Taub Hau

Tshooj tom ntej peb yuav ua yuav yog lub platform txhawm rau txuas tus txiv neej lub taub hau rau servo. Txhawm rau ua lub taub hau platform koj yuav xav tau:

  • Yas phaj
  • Servo kub
  • 2x M3 8mm ntsia liaj qhov rooj nrog lub tshuab ntxhua khaub ncaws
  • Ntsia Hlau
  • Laum
  • 7/64 "thiab 5/16" laum ntsis
  • Compass
  • Dremel nrog txiav log

Yuav Ua Li Cas

  1. Teem koj lub ntsuas hluav taws xob rau lub vojvoog ntawm lub hauv paus ntawm koj lub taub hau mannequin.
  2. Siv koj tus ntiv tes los cim lub voj voog nyob rau nruab nrab ntawm phaj. Qhov no yuav yog qhov loj me ntawm peb lub taub hau platform.
  3. Siv koj lub dremel thiab txiav lub log los txiav lub platform me dua ntawm lub phaj.
  4. Laum tawm qhov nruab nrab ntawm koj lub platform tshiab nrog 5/16 "laum me ntsis. Qhov no yuav ua rau peb nkag mus rau cov ntsia hlau uas nce peb lub tog raj servo rau peb lub servo. Txhawm rau muab lub platform ruaj khov raws li kuv drilled lub qhov, Kuv muab tus spool ntawm xaim hauv qab nws thiab drilled los ntawm qhov nruab nrab ntawm tus xov.
  5. Kab koj lub suab servo nrog nruab nrab ntawm lub platform thiab kos ob lub qhov kom txuas lub suab raj mus rau lub platform. Xyuas kom tseeb tias cov qhov sib dhos no nyob deb txaus kom muaj chaw rau koj M3 ntsia liaj qhov rooj taub hau thiab tshuab ntxhua khaub ncaws.
  6. Laum tawm cov cim no nrog 7/64 "laum ntsis.
  7. Qhov qis ntawm kuv lub tshuab raj tshuab raj tau zoo, piv txwv li nws tsis muaj xov rau M3 ntsia liaj qhov rooj. Yog li, Kuv tau siv kuv lub laum thiab M3 kais los ua cov xov.
  8. Siv cov ntsia hlau thiab tshuab ntxhua khaub ncaws txhawm rau txuas lub tshuab raj rau lub taub hau.

Kauj Ruam 5: Servo Fais Fab Cable

Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable
Servo Fais Fab Cable

Analog servos feem ntau yog siv nrog 4.8-6V. Txij li Raspberry Pi twb yuav dhau los ntawm 5V los ntawm USB, peb yuav ua kom yooj yim rau peb cov kab ke los ntawm kev siv lub zog los ntawm USB. Txhawm rau ua qhov no peb yuav tsum hloov kho USB cable. Txhawm rau ua kom lub zog siv hluav taws xob servo koj yuav xav tau:

  • Spare USB cable nrog hom-A kawg (yam uas ntsaws rau hauv koj lub computer)
  • Ib qho liab thiab ib qho dub jumper hlau
  • Soldering hlau
  • Solder
  • Cov hlua hlau
  • Daim kab xev hluav taws xob
  • Pab txhais tes (tsis teb los tau)
  • Multimeter (yeem)

Yuav Ua Li Cas

  1. Txiav qhov tsis yog USB hom-A txuas tawm ntawm koj lub xov tooj, tom qab ntawd tshem tawm me ntsis ntawm rwb thaiv tsev kom pom plaub lub xov hlau sab hauv. Txiav tawm daim thaiv thaiv ib puag ncig cov xov hlau uas nthuav tawm.
  2. Feem ntau USB cable yuav muaj plaub lub xov hlau: ob qho rau xa cov ntaub ntawv thiab txais tos thiab ob qho rau lub zog thiab hauv av. Peb txaus siab rau lub zog thiab av, uas feem ntau liab thiab dub, feem. Seem qee qhov rwb thaiv tsev tawm ntawm cov xov hlau liab thiab dub thiab txiav cov xov hlau ntsuab thiab dawb. Yog tias koj txhawj xeeb tias koj tsis muaj lub hwj chim raug thiab cov xov hluav taws xob hauv av, koj tuaj yeem ntsaws koj lub xov tooj rau hauv koj lub USB txuas hluav taws xob thiab tshawb xyuas qhov hluav taws xob tso tawm nrog lub ntsuas hluav taws xob.
  3. Tom ntej no, txiav ib kawg ntawm koj cov hlua liab thiab dub jumper thiab hle ib co ntawm cov rwb thaiv tsev tawm.
  4. Tam sim no, ntswj ua ke cov xov dub uas nthuav tawm ntawm koj lub jumper thiab USB cable. Hla hla cov chaw nruab nrab ntawm cov xov hlau uas nthuav tawm thiab ntswj lawv ib ncig. Tom qab ntawd, siv cov laug txuas rau cov xov hlau sib txuas los tuav lawv ua ke. Kev pab txhais tes yuav ua qhov no yooj yim dua los ntawm kev tuav koj cov xaim hluav taws xob nyob hauv qhov chaw.
  5. Rov ua cov kauj ruam 4 rau cov xov hlau liab.
  6. Npog qhov thaiv qhov hluav taws xob nrog daim kab xev hluav taws xob, lossis cua sov ntsws tubing yog tias koj nyob nraum zoo nkauj. Cov pob qij txha no yuav tawg yooj yim vim tias cov xov hlau me me, yog li ntxiv txheej thib ob ntawm daim kab xev tuav cov hlua txuas txuas mus rau sab nrauv ntawm USB cable. Qhov no yuav ua rau lub rooj sib txig nruj dua thiab yog li yuav tsis tawg los ntawm kev khoov.

Kauj Ruam 6: Kev Siv Hluav Taws Xob

Electronics Mounting
Electronics Mounting
Electronics Mounting
Electronics Mounting
Electronics Mounting
Electronics Mounting

Thaum kawg, peb yuav coj txhua yam ua ke, txhim kho peb cov khoom siv hluav taws xob thiab txhua yam ntxiv mus rau lub platform qis. Koj yuav xav tau:

  • Qaum platform
  • Lub taub hau platform
  • Mannequin taub hau
  • Kinect nrog USB+AC adapter
  • USB zog adapter
  • Qaum txuas ntxiv
  • Micro USB kab
  • Servo zog cable
  • Raspberry Pi
  • Txiv neej-rau-Poj niam jumper cable
  • Adhesive Velcro
  • Txiab

Yuav Ua Li Cas

  1. Mount Pi mus rau hauv qab ntawm lub tais nrog Velcro.
  2. Txuas lub USB fais fab txuas nrog Velcro.
  3. Plug servo thiab Pi rau hauv USB lub zog hloov pauv.
  4. Txuas tus pin 12 (GPIO18) ntawm Pi rau lub teeb liab cable ntawm servo. Nws yog tus lej thib 6 ntawm sab xis.
  5. Nteg koj cov hlua txuas dhau los ntawm sab nraub qaum ntawm lub tais thiab ntsaws USB lub zog hloov pauv rau ib sab.
  6. Coj lub Kinect USB+AC adapter thiab ntsaws lub hwj chim hloov mus rau lwm sab ntawm txoj hlua txuas txuas thiab USB rau hauv Pi.
  7. Nab qaum ntawm Kinect hla lub hauv ntej ntawm lub tais thiab ntsaws rau hauv Kinect adapter.
  8. Kuv siv cov kab xev los tuav cov hlua txuas rau sab hauv qab ntawm lub platform. Qhov no tsis zoo li ntxim nyiam tshaj, tab sis hmoov zoo txhua qhov no tau muab zais.
  9. Tig lub platform sab xis mus thiab siv Velcro txhawm rau teeb tsa Kinect rau pem hauv ntej ntawm lub platform.
  10. Siv Velcro txhawm rau txhim kho lub taub hau zoo nkauj mus rau lub taub hau platform. Thaum txhua yam tau kab, txawm li cas los xij, cais ob daim kom peb tuaj yeem nkag mus rau servo horn mounting screw. Tsis txhob ntsia hlau rau lub servo tsis tau, txawm li cas los xij, raws li peb xav tau kom ntseeg tau tias servo nyob hauv nws qhov chaw nruab nrab ua ntej yog li peb tuaj yeem ua kab txhua yam. Peb yuav ua qhov no hauv qib tom ntej.

Kauj Ruam 7: Software thiab Algorithm

Software thiab Algorithm
Software thiab Algorithm

Txheej txheem cej luam

Cov software rau txoj haujlwm no tau sau ua C ++ thiab tau koom ua ke nrog Robot Operating System (ROS), lub hauv paus rau kev sau software neeg hlau. Hauv ROS, software rau lub kaw lus tau tawg mus rau hauv cov npe ntawm cov kev pab cuam hu ua nodes, qhov twg txhua lub node siv cov ntu tshwj xeeb ntawm cov kab ke ua haujlwm. Cov ntaub ntawv dhau los ntawm cov nodes siv kev tshaj tawm/sau npe yuav ua, qhov twg ntawm cov uas tsim cov ntaub ntawv tshaj tawm nws thiab cov nodes uas haus cov ntaub ntawv sau npe rau nws. Kev txiav tawm cov cai hauv qhov no tso cai rau kev ua haujlwm kom yooj yim nthuav dav, thiab tso cai rau sib koom ntawm cov kab ke rau kev txhim kho sai dua.

Hauv cov kab ke no, ROS feem ntau yog siv los cais cov lej xam cov lus qhia txog kev tuaj txog (DOA) ntawm lub suab los ntawm cov cai tswj hwm servo, tso cai rau lwm txoj haujlwm kom suav nrog Kinect DOA kwv yees yam tsis suav nrog servo code lawv yuav tsis xav tau lossis xav tau. Yog tias koj xav saib tus lej nws tus kheej, nws tuaj yeem pom ntawm GitHub:

github.com/raikaDial/kinect_doa

Kinect DOA Node

Lub kinect_doa node yog nqaij thiab pob txha ntawm cov kab ke no, ua qhov tseem ceeb txhua yam. Thaum pib, nws pib ROS node, ua rau txhua qhov ROS khawv koob ua tau, tom qab ntawd rub tawm cov firmware rau Kinect kom cov kwj suab tau dhau los. Tom qab ntawd nws spawns xov tshiab uas qhib lub suab ntws thiab pib nyeem hauv cov ntaub ntawv microphone. Kinect kuaj nws plaub lub microphones ntawm qhov ntau ntawm 16 kHz txhua, yog li nws yog qhov zoo kom muaj kev sib cuam tshuam sib cuam tshuam thiab kev khaws cov ntaub ntawv hauv cov xov sib cais kom tsis txhob ploj cov ntaub ntawv vim kev suav suav. Kev cuam tshuam nrog Kinect tau ua tiav siv libfreenect, tus neeg tsav tsheb qhib qhov nrov.

Cov xov xov sau ua haujlwm rov qab hu thaum twg tau txais cov ntaub ntawv tshiab, thiab ob qho tib si khaws cov ntaub ntawv thiab txiav txim siab thaum yuav kwv yees DOA. Cov ntaub ntawv los ntawm txhua lub microphone tau khaws cia hauv yob tsis sib npaug hauv qhov ntev rau peb lub qhov rai piv txwv, uas ntawm no yog 8192 cov qauv. Qhov no txhais ua kom suav daws kev sib cuam tshuam nrog txog yav dhau los ib nrab thib ob tus nqi ntawm cov ntaub ntawv, qhov kuv pom los ntawm kev sim ua kom muaj qhov sib npaug zoo ntawm kev ua tau zoo thiab kev suav suav. Kev kwv yees DOA tau ua rau txhua 4096 cov qauv los ntawm kev qhia lub ntsiab xov, yog li kev sib cuam tshuam sib cuam tshuam sib tshooj sib tshooj los ntawm 50%. Xav txog qhov xwm txheej uas tsis muaj kev sib tshooj, thiab koj ua suab nrov nrawm heev uas tau txiav ib nrab los ntawm lub qhov rai piv txwv. Ua ntej thiab tom qab koj lub suab sib txawv yuav zoo li suab nrov dawb, uas tuaj yeem nyuaj rau kab nrog kev sib tshuam sib cuam tshuam. Lub qhov rais sib tshooj muab rau peb ua piv txwv ntau dua ntawm lub suab, ua kom muaj kev ntseeg siab ntawm peb kev sib cuam tshuam los ntawm kev muab peb cov yam ntxwv sib txawv rau kab.

Cov xov tseem ceeb tos rau lub teeb liab los ntawm cov xov sau, tom qab ntawd suav DOA kwv yees. Ua ntej tshaj plaws, txawm li cas los xij, nws kuaj xyuas seb puas yog los yog tsis pom cov nthwv dej sib txawv ntawm cov suab nrov dawb. Yog tsis muaj daim tshev no, peb yuav suav peb qhov kwv yees plaub zaug ib pluas tsis hais seb puas muaj suab nrov nrov lossis tsis yog, thiab peb lub taub hau lub cev yuav ua rau tsis zoo. Kev ntsuas lub suab nrov dawb siv nyob rau hauv cov kab ke no yog thawj ntawm ob qho uas tau teev tseg ntawm no. Peb suav qhov sib piv ntawm qhov tsis sib xws ntawm cov txiaj ntsig ntawm peb qhov kev hloov pauv mus rau nws qhov tsis suav nrog; rau cov cim qhia nrog cov ntsiab lus dawb-suab nrov qhov sib piv no siab dua rau cov suab nrov qis dua. Los ntawm kev teeb tsa tus lej rau qhov piv txwv no cais cov suab nrov los ntawm qhov tsis muaj suab nrov, peb tuaj yeem ua rau muaj kev sib tshuam sib cuam tshuam tsuas yog thaum tsim nyog. Tau kawg, qhov piv txwv no yog qee yam uas yuav tsum tau rov kho dua txhua lub sijhawm uas lub kaw lus tau hloov mus rau ib puag ncig tshiab.

Thaum txiav txim siab tias cov nthwv dej muaj cov ntsiab lus tseem ceeb uas tsis yog lub suab nrov, txoj haujlwm tau ua nrog kev sib cuam tshuam sib cuam tshuam. Txawm li cas los xij muaj peb qhov tseem ceeb ua kom zoo los ua cov lej no:

  1. Muaj plaub lub microphones ntawm Kinect, txhais tau tias muaj rau tag nrho ob peb khub ntawm cov qauv uas peb tuaj yeem hla sib cuam tshuam. Txawm li cas los xij, yog tias koj saib ntawm thaj chaw ntawm lub microphone array, koj tuaj yeem pom tias microphones 2, 3, thiab 4 nyob ze rau ib leeg. Qhov tseeb, lawv nyob ze heev vim yog lub suab nrawm thiab peb qhov piv txwv cov zaus tau txais ntawm 2, 3, thiab 4 yuav raug cais los ntawm feem ntau ib qho piv txwv ua ntej lossis tom qab, uas peb tuaj yeem txheeb xyuas nrog kev suav maxlag = Δd *fs/vs, qhov twg isd yog kev sib cais ntawm lub microphone, fs yog qhov piv txwv zaus, thiab vs yog qhov nrawm ntawm lub suab. Yog li, kev sib txheeb ntawm ob peb yam no tsis muaj txiaj ntsig, thiab peb tsuas yog xav tau kev sib cuam tshuam sib txuas microphone 1 nrog 2, 3, thiab 4.
  2. Tus qauv hla-kev sib txheeb ntawm cov cim qhia tau paub tias ua tsis tau zoo nyob rau qhov muaj qhov rov ua dua tshiab (echos). Lwm txoj hauv kev muaj zog yog lub npe hu ua kev hla kev sib cuam tshuam nrog theem hloov pauv (GCC-PHAT). Txoj hauv kev no txhawm rau txhawm rau txhawm rau ua haujlwm hnyav uas ua kom muaj qhov siab tshaj plaws hauv kev sib tshuam sib cuam tshuam, ua kom yooj yim dua qhov txawv qhov qub ntawm lub teeb liab los ntawm echos. Kuv piv qhov kev ua tau zoo ntawm GCC-PHAT mus rau qhov yooj yim hla kev sib cuam tshuam hauv chav rov ua dua tshiab (nyeem: chav dej ua vaj tsev raug kho dua tshiab), thiab pom GCC-PHAT yog 7 npaug zoo dua ntawm kev kwv yees lub kaum ntse ntse.
  3. Thaum ua qhov kev sib tshuam sib cuam tshuam, peb tab tom ua ob lub cim, swb ib sab mus rau lwm qhov, thiab ntawm txhua kauj ruam sib npaug txhua qhov taw tes hauv peb lub teeb liab ruaj khov los ntawm txhua kis hauv peb lub teeb liab. Rau ob lub cim ntawm qhov ntev n, qhov no ua rau n^2 suav. Peb tuaj yeem txhim kho qhov no los ntawm kev ua kom muaj kev sib cuam tshuam sib cuam tshuam hauv qhov zaus hloov pauv, uas cuam tshuam nrog kev hloov pauv nrawm dua (nlogn laij lej), sib npaug txhua lub ntsiab lus hauv ib qho hloov pauv teeb liab los ntawm cov ntsiab lus sib xws hauv lwm qhov (n suav), tom qab ntawd ua qhov hloov pauv Fourier hloov pauv kom rov qab mus rau lub sijhawm sau (nlogn laij lej), ua rau n+2*nlogn laij lej, tsawg dua n^2. Txawm li cas los xij, qhov no yog txoj hauv kev tsis paub. Lub microphones hauv peb cov array tau nyob ze ua ke thiab qhov nrawm ntawm lub suab yog li kuj qeeb uas lub suab waveforms yuav twb tau feem ntau ua raws. Yog li, peb tuaj yeem qhib peb txoj kev sib cuam tshuam los tsuas yog txiav txim siab ua ntej lossis tom qab. Rau microphones 1 thiab 4, kev lag luam yuav tsum poob nruab nrab ntawm +/- 12 qhov piv txwv, lub ntsiab lus rau txhua qhov kev sib tshuam sib cuam tshuam peb tsuas yog yuav tsum tau ua 24*n kev suav, ua rau muaj kev suav suav thaum peb cov nthwv dej ntev dua 2900 tus qauv.

Cov kab ke no siv lub tsev qiv ntawv minidsp, uas ua raws li GCC-PHAT cov txheej txheem nrog kev ua kom zoo dua 3.

Thaum pom qhov lag nyob hauv cov cim los ntawm txhua tus khub microphone, qhov kev zov me nyuam xaiv tus nqi nruab nrab rau lag, siv nws los xam qhov kwv yees kwv yees, thiab tshaj tawm cov txiaj ntsig yog li nws tuaj yeem siv los tswj cov servo.

Servo Tswj ntawm

Piv rau kinect_doa node, servo node yog qhov yooj yim. Nws txoj haujlwm tsuas yog siv qhov kwv yees DOA thiab txav cov servo mus rau lub kaum sab xis ntawd. Nws siv wiringPi lub tsev qiv ntawv nkag mus rau kho vajtse PWM module ntawm Raspberry Pi, siv nws los teeb lub kaum sab xis ntawm servo. Feem ntau cov analog servos raug tswj los ntawm PWM teeb liab nrog qhov dav dav ntawm qhov sib txawv ntawm 1000 µs txog 2000 µs, sib haum rau lub kaum sab xis 0 ° txog 180 °, tab sis servo kuv siv tau tswj nrog 500 µs txog 2500 µs, sib haum rau lub kaum ntse ntse ntawm 0 ° txog 270 °. Yog li, lub node yog teeb tsa tau rau sib txawv servo kho vajtse los ntawm kev teeb tsa tsis rau qhov siab tshaj plaws mem tes dav, siab dav mem tes dav, thiab qhov sib txawv ntawm qhov siab tshaj plaws thiab yam tsawg kawg nkaus. Ib qho ntxiv, servo tsis txav mus rau lub hom phiaj tam sim ntawd, tab sis theej txav mus rau lub kaum sab xis ntawm qhov nrawm teeb tsa, muab Margaret maj mam ntau dua, ua rau muaj kev txaus ntshai (ntxiv rau, lub suab ntawm servo txav nrawm rov qab thiab tawm mus tau txais kev thab plaub tiag tiag).

Kauj Ruam 8: Tsim thiab Txhim Kho

Txhim Kho Kev Ntseeg Siab:

Ua ntej tshaj, nruab libfreenect. Peb yuav tsum tsim nws los ntawm qhov chaw vim tias cov ntawv koj tuaj yeem tau txais nrog tus thawj tswj hwm pob tsis suav nrog kev txhawb nqa suab. Qhov no vim tias peb yuav tsum tso cov firmware rau Kinect kom muaj suab, thiab rov faib cov khoom siv no tsis raug cai hauv qee thaj chaw. Ib qho ntxiv, peb tuaj yeem zam kev tsim cov piv txwv uas xav tau OpenGL thiab glut, tsis tsim nyog rau lub taub hau Raspbian teeb tsa.

sudo apt-tau nruab git cmake tsim-qhov tseem ceeb libusb-1.0-0-dev

cd git clone https://github.com/OpenKinect/libfreenect cd libfreenect mkdir tsim cd tsim cmake.. -DCMAKE_BUILD_REDIST_PACKAGE = OFF -DCMAKE_BUILD_EXAMPLES = OFF ua sudo ua nruab sudo cp ~/libfreenect/platform/linux/udev.rules /etc/udev/rules.d udevadm tswj-rov tso cai-& udevadm txhais

Tom ntej no, peb yuav tsum teeb tsa wiringPi pob, uas tso cai rau peb tswj hwm GPIO tus pin ntawm Pi:

ua cd

git clone git: //git.drogon.net/wiringPi cd ~/wiringPi./build

Txuas Mannequin Lub taub hau:

Nrog wiringPi teeb tsa tam sim no peb tuaj yeem taug kev nrawm rov qab mus rau kho vajtse-av txhawm rau txuas lub taub hau taub hau mus rau hauv lub platform qis. Txhawm rau nruab nrab servo ntawm kab hais kom ua, nkag mus rau cov lus txib hauv qab no:

gpio pwm

gpio pwmc 192 gpio pwmr 2000 gpio -g pwm 18 150

Yog tias tsis muaj kev txav chaw, tom qab ntawd koj lub servo yog tej zaum twb tau nyob hauv nruab nrab. Txhawm rau kom ntseeg tau, txawm li cas los xij, koj tuaj yeem teeb tsa servo rau tus nqi tsis nyob hauv nruab nrab, piv txwv li. gpio -g pwm 18 200, then set it back to 150.

Thaum koj paub tseeb tias servo yog nyob hauv nruab nrab, txuas lub servo horn ntawm lub taub hau platform rau servo xws li koj lub taub hau taub hau yuav saib ncaj nraim rau pem hauv ntej. Tom qab ntawd, ntsia hlau ntsia hlau mus rau servo thiab txuas koj lub taub hau ntawm cov khoom siv Velcro.

Nruab ROS:

Tom ntej no, teeb tsa ROS ntawm koj tus Pi. Ib phau ntawv qhia kev txhim kho zoo tuaj yeem pom ntawm no; rau peb cov kab ke peb tsis xav tau OpenCV, yog li koj tuaj yeem hla kauj ruam 3. Qhov kev tsim no yuav siv sijhawm ntau teev los ua kom tiav. Thaum ua tiav raws li cov lus qhia teeb tsa, ntxiv nrhiav qhov teeb tsa rau koj bashrc kom peb tuaj yeem siv peb cov pob ROS tshiab uas tau teeb tsa:

ncha "qhov chaw /opt/ros/kinetic/setup.bash" >> ~/.bashrc

Tsim Kinect DOA Pob:

Tom qab txhua qhov uas ua tiav, ua ib qho chaw ua haujlwm catkin rau peb txoj haujlwm thiab nkag mus rau src cov npe:

mkdir -p ~/kinect_doa_ws/src

cd ~/kinect_doa_ws/src

Cov cai rau txoj haujlwm no muaj nyob hauv pob kinect_doa, yog li clone nws rau hauv src cov npe ntawm koj qhov chaw ua haujlwm tshiab:

git clone

Robot_upstart pob muab cov khoom siv yooj yim rau kev txhim kho cov ntaub ntawv tso tawm kom lawv ua haujlwm thaum pib, yog li kuj tseem clone qhov no rau hauv koj qhov chaw ua haujlwm:

git clone

Tam sim no, peb tuaj yeem tsim qhov phiaj xwm phiaj xwm los ntawm kev hu rau catkin_make los ntawm cov npe saum toj kawg nkaus ntawm peb thaj chaw ua haujlwm, tom qab ntawv muab peb tsim kom peb cov pob khoom muaj:

cd ~/kinect_doa_ws

catkin_make ncha "qhov chaw /home/pi/kinect_doa_ws/devel/setup.bash" >> ~/.bashrc

Khiav thiab Kho:

Piv txwv tias txhua yam tau ntsaws thiab txuas rau, koj yuav tsum tam sim no tuaj yeem tsim lub kaw lus thiab muaj Kinect taug qab koj lub suab! Txawm li cas los xij, yog tias koj muaj Kinect 1473, ua ntej qhib cov ntawv ~/kinect_doa_ws/src/kinect_doa/tso tawm/kinect_doa.launch hauv cov ntawv sau thiab teeb tsa qhov ntsuas siv_kinect_1473 rau qhov tseeb. Ib qho ntxiv, yog tias koj siv qhov sib txawv servo dua li kuv tau ua nws yog tej zaum tus qauv sib piv servo, Yog li thaum nyob hauv daim ntawv tso tawm, hloov qhov ntsuas min_us rau 1000, max_us txog 2000, thiab max_deg txog 180.

roslaunch kinect_doa kinect_doa.launch

Ua si nrog nws ib pliag. Yog tias koj xav tias lub kaw lus nkag siab dhau (saib hauv cov lus qhia tsis sib xws uas tsis cuam tshuam rau lub suab lossis lub suab nrov sib txawv), sim hloov qhov white_noise_ratio qhov ntsuas hauv cov ntawv tso tawm thiab rov pib dua lub kaw lus kom txog thaum kev teb tau zoo nyob ntawm qib uas koj nyiam nrog. Kev nce tus lej piv yuav ua rau lub kaw lus tsis ua haujlwm zoo dua qub thiab rov ua dua. Koj yuav zoo li yuav tsum ua qhov hloov kho no thaum twg koj txav lub system mus rau lwm qhov chaw kom tau txais kev ua tau zoo raws li koj xav tau.

Txhawm rau pib qhov haujlwm thaum peb ua zog ntawm Pi, peb siv cov neeg hlau_upstart pob los teeb tsa peb cov ntawv tso tawm. Yog tias ROS tsis tam sim no khiav, pib nws nrog cov lus txib roscore. Tom qab ntawd, qhib lub davhlau ya nyob twg tshiab thiab teeb tsa lub community launch nrog:

rosrun robot_upstart nruab kinect_doa/tso tawm/kinect_doa.launch --user hauv paus --symlink

Peb tsim cov cim sib txuas mus rau cov ntawv tso tawm es tsis txhob theej nws kom peb tuaj yeem hloov pauv tsis tau los ntawm kev kho ~/kinect_doa_ws/src/kinect_doa/launch/kinect_doa.launch.

Kauj Ruam 9: Nkaum Nws ntawm Chaw Haujlwm

Nkaum Nws ntawm Chaw Haujlwm
Nkaum Nws ntawm Chaw Haujlwm

Tam sim no rau qhov lom zem. Lub taub hau mus rau tom haujlwm tom qab teev thiab teeb tsa koj lub taub hau mannequin hauv qhov tsis pub leej twg paub. Tom qab ntawd tsuas yog zaum rov qab thiab pom tias nws yuav siv sijhawm ntev npaum li cas rau koj cov neeg ua haujlwm sib tham! Koj qhov kev tsim tshiab tau lees tias yuav tig ob peb lub taub hau…

Pom zoo: