[elektro] irany meghatarozas

Balázs Bámer bamerbalazs at gmail.com
Mon Jul 20 22:41:22 CEST 2009


Szervusz Vili!

> Kellene egy kis segitseg. A feladat az, hogy van 4 mikrofon a kor 4 pontjan 90 fokra. A vett jelek idokulonbsege alapjan kellene meghataroznom a hangforras iranyat. Erre kellene valami

Tudni kellene, hogy minek a hangját kell követni, milyen jellegű a
spektruma, milyen a környezet zaja, milyenek a visszaverő felületek,
milyen gyorsan mozog a tárgy.

Gondolkoztam a dolgon, várhatóan csak hangerő- és fáziskülönbséget
lehet használni. A hangszín csekély torzulása szerintem igen nehezen
számszerűsíthető. A fáziskülönbség meghatározása nem tűnik
egyszerűnek, ezért első körben a következőt csinálnám: jellemző
hangforrással és kellően irányított mikrofonokkal (hátra lehetőleg
semmit ne halljanak) különböző irányokból (két mikrofon 90 fokos köze
elég) följegyezném a mért értékek arányát egyre normálva. Táblázatba
raknám ezeket és megfelelően sűrűn fölvett értékek esetén már egyszerű
az irány meghatározása:

Arány-négyesek vannak ugye a táblázatban, és egy pillanatnyi mérés is
egy ilyet ad (szintén egyre normálva). A táblázat összes négyesére
rendre négyzetes eltérést számolnék négyszer: a mért értékeket körbe
léptetni kell egymás között a négy mikrofonköz közül a valódi
kiválasztására. A két legkisebb szomszédos négyzetösszeg adja a
körülbelüli irányt.

Ha pontosabb irány kell, meg lehet próbálkozni a két kapott irány
közti interpolációval. A nekik megfelelő két pont egy négydimenziós
szakaszt határoz meg, és ennek keressük azt a pontját, ami a mérésnek
megfelelő ponthoz legközelebb van. Lehet közelítőleg bináris
kereséssel, és akkor nem kell gondolkodni (-: én sem fogok). Vagy a
mérés pontjából merőlegest állítasz a szakasznak megfelelő egyenesre
és annak talppontja. De nem hiszem, hogy ki kell ezt törpölni, mert az
egész mérés nem lesz olyan pontos, hogy a bináris keresés pár
iterációja ne legyen jó. A bináris kereséssel kijött
szakaszfél-arányok adják a két szomszédos szög közelítő fölosztását.

Ha nincs agyonterhelve mással a mikrokontroller (meg remélhetőleg nem
túl gyorsan mozgó cuccot kell követni), ezt játszva elvégzi. Ha
valamiért nem pontos, érdemes lehet egy keskenyebb frekisávra (talán
magasabb hangokra - még analóg áramkörrel) szűrni, és arra végezni a
mérést.

szia: Balázs



More information about the Elektro mailing list